__SystemSecurity 类的 GetCallerAccessRights 方法
__SystemSecurity::GetCallerAccessRights 方法将 rights 参数设置为位图,每个位对应一个访问权限。 任何客户端都可调用此方法来确定客户端拥有哪些权限。 此方法对于启用或禁用功能的客户端很有用。 例如,如果当前登录的用户没有方法执行权限,GUI 应用程序可能会禁用按钮。
任何已启用的客户端都有权调用 GetCallerAccessRights,即使该客户端没有常规的方法执行权限。
语法
HRESULT GetCallerAccessRights(
[out] sint32 rights
);
parameters
-
rights [out]
-
客户端的访问权限。 有关详细信息,请参阅 __SystemSecurity 和 WMI 安全常量。
-
WBEM_ENABLE (1 (0x1))
-
启用帐户并向用户授予读取权限。 这是所有用户的默认访问权限。
-
WBEM_METHOD_EXECUTE (2 (0x2))
-
允许执行方法。
注意
提供程序可能会执行更多访问权限检查。
-
WBEM_FULL_WRITE_REP (4 (0x4))
-
允许调用方、安全上下文或用户写入除系统类之外的类和实例。
-
WBEM_PARTIAL_WRITE_REP (8 (0x8))
-
允许调用方、安全上下文或用户将提供程序实例写入存储库,但不允许将静态类或静态实例写入存储库。
-
WBEM_WRITE_PROVIDER (16 (0x10))
-
允许调用方、安全上下文或用户将类和实例写入提供程序。
注意
模拟提供程序可能会执行更多访问权限检查。
-
WBEM_REMOTE_ACCESS (32 (0x20))
-
允许用户帐户远程执行任何由其他位设置的权限允许的操作。
-
READ_CONTROL (131072 (0x20000))
-
允许对安全描述符进行读取访问。
-
WRITE_DAC (262144 (0x40000))
-
允许对自定义访问控制列表 (DACL) 进行写入访问。
返回值
此方法返回指示方法调用状态的 HRESULT。 下表列出了对 Set9XUserList 至关重要的返回值。 对于脚本和 Visual Basic 应用程序,可从 OutParameters.ReturnValue 获得结果。 有关详细信息,请参阅构造 InParameters 对象和分析 OutParameters 对象。
-
WBEM_E_METHOD_DISABLED
-
受支持的 Windows 版本不支持此方法。
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows Vista |
最低受支持的服务器 |
Windows Server 2008 |
命名空间 |
所有 WMI 命名空间 |