winnt.h) (PRIVILEGE_SET 结构

PRIVILEGE_SET 结构指定一组特权。 它还用于指示请求访问对象的用户或组拥有哪些权限(如果有)。

语法

typedef struct _PRIVILEGE_SET {
  DWORD               PrivilegeCount;
  DWORD               Control;
  LUID_AND_ATTRIBUTES Privilege[ANYSIZE_ARRAY];
} PRIVILEGE_SET, *PPRIVILEGE_SET;

成员

PrivilegeCount

指定权限集中的特权数。

Control

指定与特权相关的控制标志。 当前定义了PRIVILEGE_SET_ALL_NECESSARY控件标志。 它指示请求访问 的进程 必须持有所有指定的特权。 如果未设置此标志,则用户 访问令牌 中存在任何权限会授予该访问权限。

Privilege[ANYSIZE_ARRAY]

指定描述集特权的 LUID_AND_ATTRIBUTES 结构的数组。 为特权定义了以下属性。

含义
SE_PRIVILEGE_ENABLED_BY_DEFAULT
默认情况下,权限处于启用状态。
SE_PRIVILEGE_ENABLED
权限已启用。
SE_PRIVILEGE_USED_FOR_ACCESS
该权限用于获取对对象或服务的访问权限。 此标志用于标识客户端应用程序传递的集中的相关特权,这些权限可能包含不必要的特权。

注解

与自由访问控制相比,特权用于更严格地控制对对象或服务的访问。 系统管理器使用特权来控制哪些用户能够操作系统资源。 应用程序在更改系统范围资源(例如更改系统时间或关闭系统时)时使用特权。

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
标头 winnt.h (包括 Windows.h)

另请参阅

LUID

LUID_AND_ATTRIBUTES

PrivilegeCheck