ACE_HEADER 结构 (ntifs.h)
ACE_HEADER结构描述访问控制项的类型和大小 (ACE) 。
语法
typedef struct _ACE_HEADER {
UCHAR AceType;
UCHAR AceFlags;
USHORT AceSize;
} ACE_HEADER;
成员
AceType
ACE 类型。 此成员可以是以下值之一:
值 | 含义 |
---|---|
ACCESS_ALLOWED_ACE_TYPE | 使用 ACCESS_ALLOWED_ACE 结构的允许访问 ACE。 |
ACCESS_DENIED_ACE_TYPE | 使用 ACCESS_DENIED_ACE 结构的拒绝访问 ACE。 |
SYSTEM_AUDIT_ACE_TYPE | 使用 SYSTEM_AUDIT_ACE 结构的系统审核 ACE。 |
AceFlags
ACE 类型特定的控件标志集。 此成员可以是以下值的组合:
值 | 含义 |
---|---|
CONTAINER_INHERIT_ACE | 作为容器的子对象(如目录)将 ACE 继承为有效的 ACE。 除非还设置了NO_PROPAGATE_INHERIT_ACE位标志,否则继承的 ACE 是可继承的。 |
FAILED_ACCESS_ACE_FLAG | 与 SACL 中的系统审核 ACE 一起使用,为失败的访问尝试生成审核消息。 |
INHERIT_ONLY_ACE |
指示一个仅继承的 ACE,该 ACE 不控制对其所附加到的对象的访问权限。 如果未设置此标志,则 ACE 是一个有效的 ACE,用于控制对其所附加到对象的访问。
有效 ACE 和仅继承 ACE 都可以继承,具体取决于其他继承标志的状态。 |
INHERITED_ACE | Microsoft Windows 2000 或更高版本: 指示 ACE 已继承。 系统在将继承的 ACE 传播到子对象时设置此位。 |
NO_PROPAGATE_INHERIT_ACE | 如果 ACE 由子对象继承,则系统会清除OBJECT_INHERIT_ACE,并在继承的 ACE 中CONTAINER_INHERIT_ACE标志。 这可以防止 ACE 被后续几代对象继承。 |
OBJECT_INHERIT_ACE |
非容器子对象将 ACE 继承为有效的 ACE。
对于作为容器的子对象,除非还设置了NO_PROPAGATE_INHERIT_ACE位标志,否则 ACE 将继承为仅继承 ACE。 |
SUCCESSFUL_ACCESS_ACE_FLAG | 与 SACL 中的系统审核 ACE 一起使用,以生成成功访问尝试的审核消息。 |
AceSize
ACE 的大小(以字节为单位)。
注解
ACE_HEADER 结构是各种类型的 ACE 结构(如 ACCESS_ALLOWED_ACE)的第一个成员。
目前不支持系统警报 ACE。 AceType 成员无法指定SYSTEM_ALARM_ACE_TYPE。 请勿使用 SYSTEM_ALARM_ACE 结构。
要求
要求 | 值 |
---|---|
Header | ntifs.h (包括 Ntifs.h) |