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清除分葉物件 ACL 中所有 ACL 上的 、NoPropagateInheritContainerInherit、 和 ObjectInherit 旗標。
在沒有 ContainerInherit 或 ObjectInherit 旗標的情況下具有InheritOnly旗標的 ACE 是無意義的;它們會被移除。
NoPropagateInherit如果沒有 或 ObjectInherit 旗標,ContainerInherit即可移除 旗標。
移除 ACL (DACL) 值或Failure任意存取控制清單的 ACE。AuditFlagsSuccess
在 DACL 上,系統會移除 SystemAudit 和 SystemAlarm ACE。
在系統訪問控制清單中, (SCL) ,會移除 AccessAllowed 和 AccessDenied ACE。
標準順序會根據下列演演算法來維護:
明確 ACE 的優先順序高於繼承的 ACE;此規則同時適用於 DACL 和 SCL。
在 DACL 中,在明確 ACE 中,拒絕存取的 ACE 優先於允許存取的 ACE。 針對目錄物件 ACL,非物件 ACE 會位於物件 ACE 之前。
所有常見的 ACE 優先於非通用 ACE。
繼承的 ACE 會在標準之後維持其相對順序。
在 DACL 和 SCL 中不允許無法辨識和自訂 ACL。
在連續範圍內, (DACL 上的明確 AccessDenied 和 AccessAllowed AES,SACL 上的所有明確 ACE) ,ACE 都會使用 CompareTo 與 ACE 相關聯的物件方法 SecurityIdentifier 來排序。
如果適當,則會合併相鄰 ACE。 這可減少 ACL 的大小,而不會影響它授與的訪問控制語意。
屬性
BinaryLength |
取得目前 CommonAcl 物件的二進位表示長度 (以位元組為單位)。 使用 GetBinaryForm(Byte[], Int32) 方法,將存取控制清單 (ACL) 封送處理至二進位陣列之前,應使用這個長度。 |
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) |
移除與指定 SecurityIdentifier 物件相關聯之這個 CommonAcl 物件中包含的所有存取控制項目 (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。 |