winnt.h) (ACCESS_DENIED_CALLBACK_ACE 结构

ACCESS_DENIED_CALLBACK_ACE 结构定义访问控制 (ACE) ,用于控制对对象的访问的任意访问控制列表 (DACL) 。 拒绝访问的 ACE 拒绝访问由安全标识符 (SID) 所标识的特定受信人的对象。

调用 AuthzAccessCheck 函数时,通过指向 AuthzAccessCheck 函数的指针传递SECURITY_DESCRIPTOR结构的 DACL 中包含的每个ACCESS_DENIED_CALLBACK_ACE结构都会调用对应用程序定义的 AuthzAccessCheckCallback 函数的调用,其中找到的ACCESS_DENIED_CALLBACK_ACE结构的指针在 pAce 参数中传递。

语法

typedef struct _ACCESS_DENIED_CALLBACK_ACE {
  ACE_HEADER  Header;
  ACCESS_MASK Mask;
  DWORD       SidStart;
} ACCESS_DENIED_CALLBACK_ACE, *PACCESS_DENIED_CALLBACK_ACE;

成员

Header

ACE_HEADER 结构,用于指定 ACE 的大小和类型。 它还包含一些标志,这些标志控制子对象对 ACE 的继承。 ACE_HEADER 结构的 AceType 成员应设置为 ACCESS_DENIED_CALLBACK_ACE_TYPE,AceSize 成员应设置为为 ACCESS_DENIED_CALLBACK_ACE 结构分配的总字节数。

Mask

指定 ACCESS_MASK 结构,该结构指定此 ACE 显式拒绝的访问权限。

SidStart

受托人的 SID 的第一个 DWORD 。 SID 的剩余字节存储在 SidStart 成员之后的连续内存中。 此 SID 可以追加应用程序数据。

注解

ACE 结构 必须在 DWORD 边界上对齐。 所有 Windows 内存管理功能将 DWORD 对齐的句柄返回到内存。

Mask 成员指定的访问权限将授予拥有与 SidStart 成员中存储的 SID 匹配的已启用 SID 的任何受信人

创建 ACCESS_DENIED_CALLBACK_ACE 结构时,必须分配足够的内存,以容纳 SidStart 成员中受信人的完整 SID 及其后面的连续内存。

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
标头 winnt.h (包括 Windows.h)

另请参阅

Ace

ACL

AddAuditAccessObjectAce

GUID

SID