структура ACCESS_DENIED_CALLBACK_OBJECT_ACE (winnt.h)
Структура ACCESS_DENIED_CALLBACK_OBJECT_ACE определяет запись управления доступом (ACE), которая управляет запрещенным доступом к объекту, набору свойств или свойству. ACE содержит набор прав доступа, идентификатор GUID
При вызове функции AuthzAccessCheck каждая ACCESS_DENIED_CALLBACK_OBJECT_ACE структура, содержащаяся в DACL SECURITY_DESCRIPTOR структуры, передаваемой через указатель на функцию AuthzAccessCheck вызывает вызов определяемой приложением функции AuthzAccessCheckCallback, в которой указатель на структуру ACCESS_DENIED_CALLBACK_OBJECT_ACE передается в параметре pAce.
Синтаксис
typedef struct _ACCESS_DENIED_CALLBACK_OBJECT_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD Flags;
GUID ObjectType;
GUID InheritedObjectType;
DWORD SidStart;
} ACCESS_DENIED_CALLBACK_OBJECT_ACE, *PACCESS_DENIED_CALLBACK_OBJECT_ACE;
Члены
Header
ACE_HEADER структура, указывающая размер и тип ACE. Он содержит флаги, управляющие наследованием ACE дочерними объектами.
Mask
ACCESS_MASK, указывающее права доступа, которые система отклонит доверенному лицу.
Flags
Набор битовых флагов, указывающих, присутствуют ли элементы ObjectType
ObjectType
Этот элемент существует только в том случае, если ACE_OBJECT_TYPE_PRESENT бит установлен в элементе Flags. В противном случае элемент следуют
Если этот элемент существует, это структура guid
InheritedObjectType
Этот элемент существует только в том случае, если ACE_INHERITED_OBJECT_TYPE_PRESENT бит задан в элементе Flags.
Если этот элемент существует, это структура GUID GUID, которая определяет тип дочернего объекта, который может наследовать ACE. Наследование также контролируется флагами наследования в ACE_HEADER, а также любой защитой от наследования, размещенной на дочерних объектах.
Смещение этого элемента может отличаться. Если элемент флагов
SidStart
Первый DWORD безопасности доверенного лица. Оставшиеся байты идентификатора безопасности хранятся в непрерывной памяти после члена SidStart. Этот идентификатор безопасности можно добавить с данными приложения.
Замечания
Если ни objectType
ACL, содержащий ACCESS_DENIED_CALLBACK_OBJECT_ACE, должен указать номер ACL_REVISION_DS редакции в заголовке ACL.
Права доступа, указанные членом маски
При создании структуры ACCESS_DENIED_CALLBACK_OBJECT_ACE необходимо выделить достаточную память для размещения структур GUID в ObjectType и членов InheritedObjectType, если один или оба из них существуют, а также для размещения полного идентификатора безопасности доверенного лица в члене SidStart и непрерывной памяти, следующей за ней.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows XP [только классические приложения] |
минимальный поддерживаемый сервер | Windows Server 2003 [только классические приложения] |
заголовка | winnt.h (включая Windows.h) |