AccessControlList 类

定义

包含访问控制条目的列表,指定一个或多个受托人的访问权限。

public ref class AccessControlList : System::Collections::CollectionBase
public class AccessControlList : System.Collections.CollectionBase
type AccessControlList = class
    inherit CollectionBase
Public Class AccessControlList
Inherits CollectionBase
继承
AccessControlList

注解

使用 AccessControlList 类指定多个受托方和访问权限,以在设置权限时添加单个调用。 通过为每个受托方和访问权限组合添加访问控制项来构造访问控制列表。

标识 AccessControlList 允许或拒绝访问安全对象的受托人。 当进程尝试访问安全对象时,系统将检查对象的访问控制条目,以确定是否向其授予访问权限。 如果对象没有访问控制列表,则系统将授予对所有内容的完全访问权限。 如果对象的访问控制列表没有条目,系统将拒绝所有尝试访问该对象。

系统会按顺序检查访问控制条目,直到找到一个或多个允许所有请求的访问权限,或者直到任何请求的访问权限被拒绝为止。

系统按顺序检查每个事件 AccessControlEntry ,直到发生以下事件之一:

  • 拒绝 AccessControlEntry 访问显式拒绝了对线程访问令牌中列出的任一受托人的任何请求访问权限。

  • 线程访问令牌中列出的受托人允许的一个或多个访问 AccessControlEntry 项显式授予所有请求的访问权限。

  • 已检查所有 AccessControlEntry 项,并且仍有至少一个请求的访问权限未显式允许,在这种情况下,将隐式拒绝访问。

构造函数

名称 说明
AccessControlList()

初始化 AccessControlList 类的新实例。

属性

名称 说明
Capacity

获取或设置可包含的元素 CollectionBase 数。

(继承自 CollectionBase)
Count

获取实例中包含的 CollectionBase 元素数。 无法重写此属性。

(继承自 CollectionBase)
InnerList

获取包含 ArrayList 实例中 CollectionBase 元素的列表。

(继承自 CollectionBase)
List

获取包含 IList 实例中 CollectionBase 元素的列表。

(继承自 CollectionBase)

方法

名称 说明
Add(AccessControlEntry)

将访问控制项追加到访问控制列表。

Clear()

CollectionBase 实例中删除所有对象。 此方法不可重写。

(继承自 CollectionBase)
Contains(AccessControlEntry)

确定访问控制列表是否包含特定的访问控制项。

CopyTo(AccessControlEntry[], Int32)

从目标数组的指定索引开始,将整个访问控制列表复制到兼容的一维访问控制项数组。

Equals(Object)

确定指定的对象是否等于当前对象。

(继承自 Object)
GetEnumerator()

返回循环访问实例的 CollectionBase 枚举数。

(继承自 CollectionBase)
GetHashCode()

用作默认哈希函数。

(继承自 Object)
GetType()

获取当前实例的 Type

(继承自 Object)
IndexOf(AccessControlEntry)

确定访问控制列表中的访问控制项的特定索引。

Insert(Int32, AccessControlEntry)

将访问控制项插入到位于指定位置的访问控制列表中。

MemberwiseClone()

创建当前 Object的浅表副本。

(继承自 Object)
OnClear()

清除实例的内容 CollectionBase 时执行其他自定义进程。

(继承自 CollectionBase)
OnClearComplete()

清除实例的内容 CollectionBase 后,执行其他自定义进程。

(继承自 CollectionBase)
OnInsert(Int32, Object)

在将新元素 CollectionBase 插入实例之前执行其他自定义过程。

(继承自 CollectionBase)
OnInsertComplete(Int32, Object)

在将新元素 CollectionBase 插入实例后执行其他自定义进程。

(继承自 CollectionBase)
OnRemove(Int32, Object)

CollectionBase 实例中删除元素时执行其他自定义进程。

(继承自 CollectionBase)
OnRemoveComplete(Int32, Object)

CollectionBase 实例中删除元素后执行其他自定义进程。

(继承自 CollectionBase)
OnSet(Int32, Object, Object)

在实例中 CollectionBase 设置值之前执行其他自定义过程。

(继承自 CollectionBase)
OnSetComplete(Int32, Object, Object)

在实例中 CollectionBase 设置值后执行其他自定义进程。

(继承自 CollectionBase)
OnValidate(Object)

验证值时执行其他自定义进程。

(继承自 CollectionBase)
Remove(AccessControlEntry)

从访问控制列表中删除特定访问控制项的第一个匹配项。

RemoveAt(Int32)

删除实例的指定索引处的 CollectionBase 元素。 此方法不可重写。

(继承自 CollectionBase)
ToString()

返回一个表示当前对象的字符串。

(继承自 Object)

显式接口实现

名称 说明
ICollection.CopyTo(Array, Int32)

将整个 CollectionBase 复制到兼容的一维 Array,从目标数组的指定索引处开始。

(继承自 CollectionBase)
ICollection.IsSynchronized

获取一个值,该值指示对 CollectionBase 同步的访问是否同步(线程安全)。

(继承自 CollectionBase)
ICollection.SyncRoot

获取可用于同步对 . CollectionBase的访问的对象。

(继承自 CollectionBase)
IList.Add(Object)

将对象添加到该 CollectionBase对象的末尾。

(继承自 CollectionBase)
IList.Contains(Object)

确定该元素是否 CollectionBase 包含特定元素。

(继承自 CollectionBase)
IList.IndexOf(Object)

搜索指定的 Object 并返回整个 CollectionBase匹配项中第一个匹配项的从零开始的索引。

(继承自 CollectionBase)
IList.Insert(Int32, Object)

将元素 CollectionBase 插入指定索引处。

(继承自 CollectionBase)
IList.IsFixedSize

获取一个值,该值指示是否 CollectionBase 具有固定大小。

(继承自 CollectionBase)
IList.IsReadOnly

获取一个值,该值指示是否 CollectionBase 为只读。

(继承自 CollectionBase)
IList.Item[Int32]

获取或设置指定索引处的元素。

(继承自 CollectionBase)
IList.Remove(Object)

CollectionBase中删除特定对象的第一个匹配项。

(继承自 CollectionBase)

扩展方法

名称 说明
AsParallel(IEnumerable)

启用查询的并行化。

AsQueryable(IEnumerable)

IEnumerable 转换为 IQueryable

Cast<TResult>(IEnumerable)

IEnumerable 的元素强制转换为指定类型。

OfType<TResult>(IEnumerable)

根据指定类型筛选 IEnumerable 的元素。

适用于

另请参阅