CommonAcl 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示访问控制列表 (ACL),并且是 DiscretionaryAcl 和 SystemAcl 类的基类。
public ref class CommonAcl abstract : System::Security::AccessControl::GenericAcl
public abstract class CommonAcl : System.Security.AccessControl.GenericAcl
type CommonAcl = class
inherit GenericAcl
Public MustInherit Class CommonAcl
Inherits GenericAcl
- 继承
- 派生
注解
继承和访问掩码标志的某些组合毫无意义:
已删除具有零访问掩码 (ACE) 的任何访问控制项。
删除对象 ACL 中的仅继承 ACE。
InheritOnly ContainerInherit清除叶对象 ACL 中所有 ACE 上的 、NoPropagateInherit、 和 ObjectInherit 标志。
在没有 或 ObjectInherit 标志的情况下具有InheritOnly标志的 ContainerInherit ACE 毫无意义;它们将被删除。
NoPropagateInherit可以删除缺少 或 ObjectInherit 标志的ContainerInherit标志。
删除值为 Success 或 Failure 的 ACE,这些 ACE AuditFlags 在任意访问控制列表 (DACL) 。
在 DACL 上,将删除 SystemAudit 和 SystemAlarm ACE。
在 (SCL) 的系统访问控制列表中,将删除 AccessAllowed 和 AccessDenied ACE。
规范顺序根据以下算法进行维护:
显式 ACE 优先于继承的 ACE;此规则同时适用于 DACL 和 SACCL。
在 ACL 中,在显式 ACE 中,拒绝访问的 ACE 优先于允许访问的 ACE。 对于目录对象 ACL,非对象 ACE 先于对象 ACE。
所有常见的 ACE 都优先于非常见 ACE。
继承的 ACE 在 canonicity 之后保持其相对顺序。
在 DACL 和 SACCL 中都不允许识别和自定义 ACE。
在连续范围内, (显式 AccessDenied 和 DACL 上的 AccessAllowed ACE,SCL 上的所有显式 ACE) ,ACE 使用 CompareTo 与 ACE 关联的对象的方法 SecurityIdentifier 进行排序。
如果适当,将相邻 ACE 组合在一起。 这可以减少 ACL 的大小,而不会影响它授予的访问控制语义。
属性
BinaryLength |
获取当前 CommonAcl 对象的二进制表示形式的长度(以字节为单位)。 应该在使用 GetBinaryForm(Byte[], Int32) 方法将访问控制列表封送到二进制数组中之前使用此长度。 |
Count |
获取当前 CommonAcl 对象中访问控制项 (ACE) 的数量。 |
IsCanonical |
获取一个布尔值,该值指定当前 CommonAcl 对象中的访问控制项 (ACE) 是否处于规范顺序。 |
IsContainer |
设置 CommonAcl 对象是否为一个容器。 |
IsDS |
设置当前 CommonAcl 对象是否为一个目录对象的访问控制列表 (ACL)。 |
IsSynchronized |
始终将此属性设置为 |
Item[Int32] |
获取或设置指定索引处的 CommonAce。 |
Revision |
获取 CommonAcl 的修订级别。 |
SyncRoot |
此属性始终返回 |
方法
CopyTo(GenericAce[], Int32) |
将当前 GenericAcl 的每个 GenericAce 复制到指定数组。 (继承自 GenericAcl) |
Equals(Object) |
确定指定对象是否等于当前对象。 (继承自 Object) |
GetBinaryForm(Byte[], Int32) |
将 CommonAcl 对象的内容从指定的偏移量开始封送到指定的字节数组中。 |
GetEnumerator() |
检索可用于在访问控制列表 (ACL) 中循环访问访问控制项 (ACE) 的对象。 (继承自 GenericAcl) |
GetHashCode() |
作为默认哈希函数。 (继承自 Object) |
GetType() |
获取当前实例的 Type。 (继承自 Object) |
MemberwiseClone() |
创建当前 Object 的浅表副本。 (继承自 Object) |
Purge(SecurityIdentifier) |
移除被此 CommonAcl 对象包含并且与指定的 SecurityIdentifier 对象关联的所有访问控制项 (ACE)。 |
RemoveInheritedAces() |
从此 CommonAcl 对象移除所有继承的访问控制项 (ACE)。 |
ToString() |
返回表示当前对象的字符串。 (继承自 Object) |
显式接口实现
ICollection.CopyTo(Array, Int32) |
将当前 GenericAcl 的每个 GenericAce 复制到指定数组。 (继承自 GenericAcl) |
IEnumerable.GetEnumerator() |
返回 AceEnumerator 类的新实例,该实例被转换为 IEnumerator 接口的实例。 (继承自 GenericAcl) |
扩展方法
Cast<TResult>(IEnumerable) |
将 IEnumerable 的元素强制转换为指定的类型。 |
OfType<TResult>(IEnumerable) |
根据指定类型筛选 IEnumerable 的元素。 |
AsParallel(IEnumerable) |
启用查询的并行化。 |
AsQueryable(IEnumerable) |
将 IEnumerable 转换为 IQueryable。 |