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