структура PRIVILEGE_SET (wdm.h)

Структура PRIVILEGE_SET определяет набор привилегий безопасности. Он также используется, чтобы указать, какие привилегии, если таковые имеются, имеются у пользователя или группы, запрашивающей доступ к объекту.

Синтаксис

typedef struct _PRIVILEGE_SET {
  ULONG               PrivilegeCount;
  ULONG               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 Привилегия использовалась для получения доступа к объекту или службе. Этот флаг используется для идентификации соответствующих привилегий в наборе, переданном клиентским приложением, который может содержать ненужные привилегии.

Комментарии

Привилегия используется для более строгого управления доступом к объекту или службе, чем обычно с дискреционным контролем доступа. Системный менеджер использует привилегии для управления тем, какие пользователи могут управлять системными ресурсами. Приложение использует привилегии при изменении ресурса всей системы, например при изменении системного времени или завершении работы системы.

Требования

Требование Значение
Заголовок wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h)

См. также раздел

SeAccessCheck

структура PRIVILEGE_SET (winnt.h)