структура ACCESS_ALLOWED_ACE (winnt.h)
Структура ACCESS_ALLOWED_ACE определяет запись управления доступом (ACE) для списка управления доступом (DACL), который управляет доступом к объекту. ACE, разрешенный доступ, разрешает доступ к объекту для определенного доверенного лица , определяемого идентификатором безопасности (SID).
Синтаксис
typedef struct _ACCESS_ALLOWED_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD SidStart;
} ACCESS_ALLOWED_ACE;
Члены
Header
ACE_HEADER структура, указывающая размер и тип ACE. Он также содержит флаги, управляющие наследованием ACE дочерними объектами. Элемент AceType структуры ACE_HEADER должен иметь значение ACCESS_ALLOWED_ACE_TYPE, а член AceSize — общее количество байтов, выделенных для структуры ACCESS_ALLOWED_ACE .
Mask
Указывает структуру ACCESS_MASK , указывающую права доступа, предоставляемые этим ACE.
SidStart
Первое DWORD идентификатора безопасности доверенного лица. Оставшиеся байты идентификатора безопасности хранятся в непрерывной памяти после элемента SidStart . Этот идентификатор безопасности можно добавить с данными приложения.
Комментарии
Структуры ACE должны быть выровнены по границам DWORD . Все функции управления памятью Windows возвращают в память дескрипторы, выровненные по DWORD.
Права доступа, указанные участником Mask , предоставляются любому доверенному лицу , обладающему включенным идентификатором безопасности, который соответствует идентификатору безопасности, хранящейся в элементе SidStart .
Структуру ACCESS_ALLOWED_ACE можно создать в списке управления доступом (ACL) путем вызова функции AddAccessAllowedAce или AddAccessAllowedAceEx . При использовании этих функций выделяется правильный объем памяти, необходимый для размещения идентификатора безопасности доверенного лица, а значения элементов Header.AceType и Header.AceSize задаются автоматически. Если используется функция AddAccessAllowedAceEx , также задается элемент Header.AceFlags . При создании структуры ACCESS_ALLOWED_ACE вне ACL необходимо выделить достаточно памяти для размещения полного идентификатора безопасности доверенного лица в члене SidStart и непрерывной памяти после него, а значения элементов Header.AceType, Header.AceFlags и Header.AceSize должны быть явно заданы приложением.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Верхняя часть | winnt.h (включая Windows.h) |