PRIVILEGE_SET结构指定一组权限。它还用于指示请求访问对象的用户或组所持有的任何权限(如果有的话)。
typedef struct _PRIVILEGE_SET { // ps
DWORD PrivilegeCount;
DWORD Control;
LUID_AND_ATTRIBUTES Privilege[ANYSIZE_ARRAY];
} PRIVILEGE_SET;
会员
PrivilegeCount
指定权限集中的权限数。
控制
指定与特权相关的控制标志。当前定义了PRIVILEGE_SET_ALL_NECESSARY控制标志。它表示所有指定的权限必须由请求访问的进程持有。如果未设置此标志,则用户访问令牌中存在任何权限将授予访问权限。
特权
指定描述集合权限的LUID_AND_ATTRIBUTES结构的数组。为特权定义了以下属性:
属性 | 描述 | ||||
SE_PRIVILEGE_ENABLED_BY_DEFAULT | |||||
默认情况下启用该权限。 | |||||
SE_PRIVILEGE_ENABLED | |||||
启用该权限。 | |||||
SE_PRIVILEGE_USED_FOR_ACCESS | |||||
该权限用于访问对象或服务。此标志用于标识可能包含不必要权限的客户端应用程序传递的集合中的相关权限。 |
备注
一个特权用于比任何访问控制的典型更严格的控制对对象或服务的访问。系统管理员使用权限来控制哪些用户能够操纵系统资源。当应用程序更改系统范围的资源时,例如更改系统时间或关闭系统时,应用程序将使用权限。
也可以看看