Freigeben über


CommonAcl Klasse

Definition

Stellt eine Zugriffssteuerungsliste (ACL) dar und ist die Basisklasse für die DiscretionaryAcl-Klasse und die SystemAcl-Klasse.

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
Vererbung
CommonAcl
Abgeleitet

Hinweise

  • Bestimmte Kombinationen von Vererbungs- und Zugriffsmaskenflags sind bedeutungslos:

  • Alle Zugriffssteuerungseingaben (Access Control Entry, ACE) mit einer Maske ohne Zugriff werden entfernt.

  • Nur vererbte ACEs innerhalb von Objekt-ACLs werden entfernt.

  • InheritOnly, NoPropagateInherit, ContainerInherit- und ObjectInherit -Flags für alle ACEs in AcLs von Blattobjekten werden gelöscht.

  • ACEs, die ein InheritOnly Flag in Abwesenheit oder ContainerInheritObjectInherit aufweisen, sind bedeutungslos. Sie werden entfernt.

  • Das NoPropagateInherit Flag kann entfernt werden, wenn das ContainerInherit - oder ObjectInherit -Flag fehlt.

  • ACEs, die den AuditFlags Wert Success oder Failure in diskretionären Zugriffssteuerungslisten (DACLs) aufweisen, werden entfernt.

  • Alle Überwachungs-ACE, die weder angegeben noch SuccessFailure entfernt werden.

  • Bei DACLs werden SystemAudit- und SystemAlarm-ACEs entfernt.

  • In Systemzugriffssteuerungslisten (SACLs) werden AccessAllowed- und AccessDenied-ACEs entfernt.

Die kanonische Reihenfolge wird gemäß dem folgenden Algorithmus beibehalten:

  • Explizite ACEs haben Vorrang vor geerbten ACEs. Diese Regel gilt sowohl für DACLs als auch für SACLs.

  • In DACLs haben unter den expliziten ACEs, die den Zugriff verweigern, Vorrang vor ACEs, die den Zugriff zulassen. Bei Verzeichnisobjekt-ACLs kommen die Nichtobjekt-ACEs vor Objekt-ACEs.

  • Alle gängigen ACEs haben Vorrang vor nicht gemeinsamen ACEs.

  • Geerbte ACEs behalten ihre relative Reihenfolge nach der Canonicity bei.

  • Nicht erkannte und benutzerdefinierte ACEs sind in DACLs und SACLs nicht zulässig.

  • Innerhalb zusammenhängender Bereiche (explizite AccessDenied- und AccessAllowed-ACEs auf DACLs, alle expliziten ACEs auf SACLs) werden die ACEs mithilfe der CompareTo Methoden der SecurityIdentifier den ACEs zugeordneten Objekte sortiert.

Benachbarte ACEs werden ggf. kombiniert. Dadurch wird die Größe der Zugriffssteuerungsliste reduziert, ohne dass die Zugriffssteuerungssemantik beeinträchtigt wird, die sie gewährt.

Eigenschaften

BinaryLength

Ruft die Länge der binären Darstellung des aktuellen CommonAcl-Objekts (in Bytes) ab. Diese Länge muss verwendet werden, bevor die Zugriffssteuerungsliste (ACL) mithilfe der GetBinaryForm(Byte[], Int32)-Methode in ein binäres Array gemarshallt wird.

Count

Ruft die Anzahl der ACEs im aktuellen CommonAcl-Objekt ab.

IsCanonical

Ruft einen booleschen Wert ab, der angibt, ob sich die Zugriffssteuerungseinträge (ACEs) im aktuellen CommonAcl-Objekt in kanonischer Reihenfolge befinden.

IsContainer

Legt fest, ob das CommonAcl-Objekt ein Container ist.

IsDS

Legt fest, ob das aktuelle CommonAcl-Objekt eine Zugriffssteuerungsliste (ACL) für ein Verzeichnisobjekt ist.

IsSynchronized

Diese Eigenschaft ist immer auf false festgelegt. Sie wird nur implementiert, weil sie für die Implementierung der ICollection-Schnittstelle erforderlich ist.

(Geerbt von GenericAcl)
Item[Int32]

Ruft die CommonAce-Klasse am angegebenen Index ab oder legt diese fest.

Revision

Ruft die Revisionsebene der CommonAcl ab.

SyncRoot

Diese Eigenschaft gibt immer null zurück. Sie wird nur implementiert, weil sie für die Implementierung der ICollection-Schnittstelle erforderlich ist.

(Geerbt von GenericAcl)

Methoden

CopyTo(GenericAce[], Int32)

Kopiert jeden GenericAce der aktuellen GenericAcl in das angegebene Array.

(Geerbt von GenericAcl)
Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetBinaryForm(Byte[], Int32)

Marshallt den Inhalt des CommonAcl-Objekts in das angegebene Bytearray, wobei beim angegebenen Offset begonnen wird.

GetEnumerator()

Ruft ein Objekt ab, das Sie verwenden können, um die Zugriffssteuerungseinträge (ACEs) in einer Zugriffssteuerungsliste (ACL) zu durchlaufen.

(Geerbt von GenericAcl)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
Purge(SecurityIdentifier)

Entfernt alle Zugriffssteuerungseinträge (ACEs) in diesem CommonAcl-Objekt, die dem angegebenen SecurityIdentifier-Objekt zugeordnet sind.

RemoveInheritedAces()

Entfernt alle geerbten Zugriffssteuerungseinträge (ACEs) aus diesem CommonAcl-Objekt.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

ICollection.CopyTo(Array, Int32)

Kopiert jeden GenericAce der aktuellen GenericAcl in das angegebene Array.

(Geerbt von GenericAcl)
IEnumerable.GetEnumerator()

Gibt eine neue Instanz der AceEnumerator-Klasse zurück, die als Instanz der IEnumerator-Schnittstelle umgewandelt wurde.

(Geerbt von GenericAcl)

Erweiterungsmethoden

Cast<TResult>(IEnumerable)

Wandelt die Elemente eines IEnumerable in den angegebenen Typ um

OfType<TResult>(IEnumerable)

Filtert die Elemente eines IEnumerable anhand eines angegebenen Typs

AsParallel(IEnumerable)

Ermöglicht die Parallelisierung einer Abfrage.

AsQueryable(IEnumerable)

Konvertiert einen IEnumerable in einen IQueryable.

Gilt für: