Dieser Artikel wurde manuell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. |
Übersetzung
Original
|
FileSystemSecurity-Klasse
Stellt die Zugriffssteuerung und die Überwachungssicherheit für eine Datei oder ein Verzeichnis dar.
System.Security.AccessControl.ObjectSecurity
System.Security.AccessControl.CommonObjectSecurity
System.Security.AccessControl.NativeObjectSecurity
System.Security.AccessControl.FileSystemSecurity
System.Security.AccessControl.DirectorySecurity
System.Security.AccessControl.FileSecurity
Assembly: mscorlib (in mscorlib.dll)
Der FileSystemSecurity-Typ macht die folgenden Member verfügbar.
| Name | Beschreibung | |
|---|---|---|
|
AccessRightType | Ruft die Enumeration ab, mit deren Hilfe die FileSystemSecurity-Klasse Zugriffsrechte darstellt. (Überschreibt ObjectSecurity.AccessRightType.) |
|
AccessRulesModified | Ruft einen booleschen Wert ab, der angibt, ob die diesem ObjectSecurity-Objekt zugeordneten Zugriffsregeln geändert wurden, oder legt diesen Wert fest. (Von ObjectSecurity geerbt.) |
|
AccessRuleType | Ruft die Enumeration ab, mit deren Hilfe die FileSystemSecurity-Klasse Zugriffsregeln darstellt. (Überschreibt ObjectSecurity.AccessRuleType.) |
|
AreAccessRulesCanonical | Ruft einen booleschen Wert ab, der angibt, ob die diesem ObjectSecurity-Objekt zugeordneten Zugriffsregeln in kanonischer Reihenfolge vorliegen. (Von ObjectSecurity geerbt.) |
|
AreAccessRulesProtected | Ruft einen booleschen Wert ab, der angibt, ob die freigegebene Zugriffssteuerungsliste (DACL – Discretionary Access Control List), die diesem ObjectSecurity-Objekt zugeordnet ist, geschützt ist. (Von ObjectSecurity geerbt.) |
|
AreAuditRulesCanonical | Ruft einen booleschen Wert ab, der angibt, ob die diesem ObjectSecurity-Objekt zugeordneten Überwachungsregeln in kanonischer Reihenfolge vorliegen. (Von ObjectSecurity geerbt.) |
|
AreAuditRulesProtected | Ruft einen booleschen Wert ab, der angibt, ob die Systemzugriffssteuerungsliste (SACL – System Access Control List), die diesem ObjectSecurity-Objekt zugeordnet ist, geschützt ist. (Von ObjectSecurity geerbt.) |
|
AuditRulesModified | Ruft einen booleschen Wert ab, der angibt, ob die diesem ObjectSecurity-Objekt zugeordneten Überwachungsregeln geändert wurden, oder legt diesen Wert fest. (Von ObjectSecurity geerbt.) |
|
AuditRuleType | Ruft den Typ ab, mit dessen Hilfe die FileSystemSecurity-Klasse Überwachungsregeln darstellt. (Überschreibt ObjectSecurity.AuditRuleType.) |
|
GroupModified | Ruft einen booleschen Wert ab, der angibt, ob die dem sicherungsfähigen Objekt zugeordnete Gruppe geändert wurde, oder legt diesen fest. (Von ObjectSecurity geerbt.) |
|
IsContainer | Ruft einen booleschen Wert ab, der angibt, ob dieses ObjectSecurity-Objekt ein Containerobjekt ist. (Von ObjectSecurity geerbt.) |
|
IsDS | Ruft einen booleschen Wert ab, der angibt, ob dieses ObjectSecurity-Objekt ein Verzeichnisobjekt ist. (Von ObjectSecurity geerbt.) |
|
OwnerModified | Ruft einen booleschen Wert ab, der angibt, ob der Besitzer des sicherungsfähigen Objekts geändert wurde, oder legt diesen Wert fest. (Von ObjectSecurity geerbt.) |
| Name | Beschreibung | |
|---|---|---|
|
AccessRuleFactory | Initialisiert eine neue Instanz der FileSystemAccessRule-Klasse, die eine neue Zugriffssteuerungsregel für den angegebenen Benutzer mit den angegebenen Zugriffsrechten und Flags sowie der angegebenen Zugriffssteuerung darstellt. (Überschreibt ObjectSecurity.AccessRuleFactory(IdentityReference, Int32, Boolean, InheritanceFlags, PropagationFlags, AccessControlType).) |
|
AddAccessRule(AccessRule) | Fügt der DACL (Discretionary Access Control List), die diesem CommonObjectSecurity-Objekt zugeordnet ist, die angegebene Zugriffsregel hinzu. (Von CommonObjectSecurity geerbt.) |
|
AddAccessRule(FileSystemAccessRule) | Fügt der aktuellen Datei bzw. dem aktuellen Verzeichnis die angegebene ACL-Berechtigung hinzu. |
|
AddAuditRule(AuditRule) | Fügt der SACL (System Access Control List), die diesem CommonObjectSecurity-Objekt zugeordnet ist, die angegebene Überwachungsregel hinzu. (Von CommonObjectSecurity geerbt.) |
|
AddAuditRule(FileSystemAuditRule) | Fügt der aktuellen Datei bzw. dem aktuellen Verzeichnis die angegebene Überwachungsregel hinzu. |
|
AuditRuleFactory | Initialisiert eine neue Instanz der FileSystemAuditRule-Klasse, die die angegebene Überwachungsregel für den angegebenen Benutzer darstellt. (Überschreibt ObjectSecurity.AuditRuleFactory(IdentityReference, Int32, Boolean, InheritanceFlags, PropagationFlags, AuditFlags).) |
|
Equals(Object) | Bestimmt, ob das angegebene Object und das aktuelle Object gleich sind. (Von Object geerbt.) |
|
Finalize | Gibt einem Objekt Gelegenheit zu dem Versuch, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der automatische Speicherbereinigung freigegeben wird. (Von Object geerbt.) |
|
GetAccessRules | Ruft eine Auflistung der Zugriffsregeln ab, die der angegebenen Sicherheits-ID zugeordnet sind. (Von CommonObjectSecurity geerbt.) |
|
GetAuditRules | Ruft eine Auflistung der Überwachungsregeln ab, die der angegebenen Sicherheits-ID zugeordnet sind. (Von CommonObjectSecurity geerbt.) |
|
GetGroup | Ruft die primäre Gruppe ab, die dem angegebenen Besitzer zugeordnet ist. (Von ObjectSecurity geerbt.) |
|
GetHashCode | Fungiert als Hashfunktion für einen bestimmten Typ. (Von Object geerbt.) |
|
GetOwner | Ruft den Benutzer ab, der der angegebenen primären Gruppe zugeordnet ist. (Von ObjectSecurity geerbt.) |
|
GetSecurityDescriptorBinaryForm | Gibt ein Array von Bytewerten zurück, das die Sicherheitsbeschreibungsinformationen für dieses ObjectSecurity-Objekt darstellt. (Von ObjectSecurity geerbt.) |
|
GetSecurityDescriptorSddlForm | Gibt die SDDL-Darstellung (Security Descriptor Definition Language) der angegebenen Abschnitte der von diesem ObjectSecurity-Objekt dargestellten Sicherheitsbeschreibung zurück. (Von ObjectSecurity geerbt.) |
|
GetType | Ruft den Type der aktuellen Instanz ab. (Von Object geerbt.) |
|
MemberwiseClone | Erstellt eine flache Kopie des aktuellen Object. (Von Object geerbt.) |
|
ModifyAccess | Wendet die angegebene Änderung auf die DACL an, die diesem CommonObjectSecurity-Objekt zugeordnet ist. (Von CommonObjectSecurity geerbt.) |
|
ModifyAccessRule | Wendet die angegebene Änderung auf die freigegebene Zugriffssteuerungsliste (DACL – Discretionary Access Control List) an, die diesem ObjectSecurity-Objekt zugeordnet ist. (Von ObjectSecurity geerbt.) |
|
ModifyAudit | Wendet die angegebene Änderung auf die SACL (System Access Control List) an, die diesem CommonObjectSecurity-Objekt zugeordnet ist. (Von CommonObjectSecurity geerbt.) |
|
ModifyAuditRule | Wendet die angegebene Änderung auf die Systemzugriffssteuerungsliste (SACL – System Access Control List) an, die diesem ObjectSecurity-Objekt zugeordnet ist. (Von ObjectSecurity geerbt.) |
|
Persist(SafeHandle, AccessControlSections) | Führt eine dauerhafte Speicherung der angegebenen Abschnitte der Sicherheitsbeschreibung aus, die diesem NativeObjectSecurity-Objekt zugeordnet sind. Es wird empfohlen, dass die Werte der includeSections-Parameter, die an den Konstruktor übergeben werden, und die Persist-Methoden identisch sind. Weitere Informationen finden Sie in den Hinweisen. (Von NativeObjectSecurity geerbt.) |
|
Persist(String, AccessControlSections) | Führt eine dauerhafte Speicherung der angegebenen Abschnitte der Sicherheitsbeschreibung aus, die diesem NativeObjectSecurity-Objekt zugeordnet sind. Es wird empfohlen, dass die Werte der includeSections-Parameter, die an den Konstruktor übergeben werden, und die Persist-Methoden identisch sind. Weitere Informationen finden Sie in den Hinweisen. (Von NativeObjectSecurity geerbt.) |
|
Persist(Boolean, String, AccessControlSections) | Führt eine dauerhafte Speicherung der angegebenen Abschnitte der Sicherheitsbeschreibung aus, die diesem ObjectSecurity-Objekt zugeordnet sind. Es wird empfohlen, dass die Werte der includeSections-Parameter, die an den Konstruktor übergeben werden, und die Persist-Methoden identisch sind. Weitere Informationen finden Sie in den Hinweisen. (Von ObjectSecurity geerbt.) |
|
Persist(SafeHandle, AccessControlSections, Object) | Führt eine dauerhafte Speicherung der angegebenen Abschnitte der Sicherheitsbeschreibung aus, die diesem NativeObjectSecurity-Objekt zugeordnet sind. Es wird empfohlen, dass die Werte der includeSections-Parameter, die an den Konstruktor übergeben werden, und die Persist-Methoden identisch sind. Weitere Informationen finden Sie in den Hinweisen. (Von NativeObjectSecurity geerbt.) |
|
Persist(String, AccessControlSections, Object) | Führt eine dauerhafte Speicherung der angegebenen Abschnitte der Sicherheitsbeschreibung aus, die diesem NativeObjectSecurity-Objekt zugeordnet sind. Es wird empfohlen, dass die Werte der includeSections-Parameter, die an den Konstruktor übergeben werden, und die Persist-Methoden identisch sind. Weitere Informationen finden Sie in den Hinweisen. (Von NativeObjectSecurity geerbt.) |
|
PurgeAccessRules | Entfernt alle der angegebenen IdentityReference zugeordneten Zugriffsregeln. (Von ObjectSecurity geerbt.) |
|
PurgeAuditRules | Entfernt alle der angegebenen IdentityReference zugeordneten Überwachungsregeln. (Von ObjectSecurity geerbt.) |
|
ReadLock | Sperrt dieses ObjectSecurity-Objekt für Lesezugriff. (Von ObjectSecurity geerbt.) |
|
ReadUnlock | Entsperrt dieses ObjectSecurity-Objekt für Lesezugriff. (Von ObjectSecurity geerbt.) |
|
RemoveAccessRule(AccessRule) | Entfernt Zugriffsregeln, die dieselbe Sicherheits-ID und dieselbe Zugriffsmaske wie die angegebene Zugriffsregel enthalten, aus der DACL (Discretionary Access Control List), die diesem CommonObjectSecurity-Objekt zugeordnet ist. (Von CommonObjectSecurity geerbt.) |
|
RemoveAccessRule(FileSystemAccessRule) | Entfernt alle entsprechenden Allow- oder Deny-ACL-Berechtigungen aus der aktuellen Datei bzw. dem aktuellen Verzeichnis. |
|
RemoveAccessRuleAll(AccessRule) | Entfernt alle Zugriffsregeln, die dieselbe Sicherheits-ID wie die angegebene Zugriffsregel enthalten, aus der DACL (Discretionary Access Control List), die diesem CommonObjectSecurity-Objekt zugeordnet ist. (Von CommonObjectSecurity geerbt.) |
|
RemoveAccessRuleAll(FileSystemAccessRule) | Entfernt alle ACL-Berechtigungen für den angegebenen Benutzer aus der aktuellen Datei bzw. dem aktuellen Verzeichnis. |
|
RemoveAccessRuleSpecific(AccessRule) | Entfernt alle Zugriffsregeln, die der angegebenen Zugriffsregel genau entsprechen, aus der DACL (Discretionary Access Control List), die diesem CommonObjectSecurity-Objekt zugeordnet ist. (Von CommonObjectSecurity geerbt.) |
|
RemoveAccessRuleSpecific(FileSystemAccessRule) | Entfernt eine einzelne entsprechende Allow- oder Deny-ACL-Berechtigung aus der aktuellen Datei bzw. dem aktuellen Verzeichnis. |
|
RemoveAuditRule(AuditRule) | Entfernt Überwachungsregeln, die dieselbe Sicherheits-ID und dieselbe Zugriffsmaske wie die angegebene Überwachungsregel enthalten, aus der SACL (System Access Control List), die diesem CommonObjectSecurity-Objekt zugeordnet ist. (Von CommonObjectSecurity geerbt.) |
|
RemoveAuditRule(FileSystemAuditRule) | Entfernt alle entsprechenden Allow- oder Deny-Überwachungsregeln aus der aktuellen Datei bzw. dem aktuellen Verzeichnis. |
|
RemoveAuditRuleAll(AuditRule) | Entfernt alle Überwachungsregeln, die dieselbe Sicherheits-ID wie die angegebene Überwachungsregel enthalten, aus der SACL (System Access Control List), die diesem CommonObjectSecurity-Objekt zugeordnet ist. (Von CommonObjectSecurity geerbt.) |
|
RemoveAuditRuleAll(FileSystemAuditRule) | Entfernt alle Überwachungsregeln für den angegebenen Benutzer aus der aktuellen Datei bzw. dem aktuellen Verzeichnis. |
|
RemoveAuditRuleSpecific(AuditRule) | Entfernt alle Überwachungsregeln, die der angegebenen Überwachungsregel genau entsprechen, aus der SACL, die diesem CommonObjectSecurity-Objekt zugeordnet ist. (Von CommonObjectSecurity geerbt.) |
|
RemoveAuditRuleSpecific(FileSystemAuditRule) | Entfernt eine einzelne entsprechende Allow- oder Deny-Überwachungsregel aus der aktuellen Datei bzw. dem aktuellen Verzeichnis. |
|
ResetAccessRule(AccessRule) | Entfernt alle Zugriffsregeln in der DACL, die diesem CommonObjectSecurity-Objekt zugeordnet ist, und fügt anschließend die angegebene Zugriffsregel hinzu. (Von CommonObjectSecurity geerbt.) |
|
ResetAccessRule(FileSystemAccessRule) | Fügt der aktuellen Datei bzw. dem aktuellen Verzeichnis die angegebene ACL-Berechtigung hinzu und entfernt alle entsprechenden ACL-Berechtigungen. |
|
SetAccessRule(AccessRule) | Entfernt alle Zugriffsregeln, die dieselbe Sicherheits-ID und denselben Qualifizierer wie die angegebene Zugriffsregel in der DACL (Discretionary Access Control List) enthalten, die diesem CommonObjectSecurity-Objekt zugeordnet ist, und fügt anschließend die angegebene Zugriffsregel hinzu. (Von CommonObjectSecurity geerbt.) |
|
SetAccessRule(FileSystemAccessRule) | Legt die angegebene ACL-Berechtigung für die aktuelle Datei bzw. das aktuelle Verzeichnis fest. |
|
SetAccessRuleProtection | Legt den Schutz der Zugriffsregeln fest, die diesem ObjectSecurity-Objekt zugeordnet sind, oder entfernt diesen. Geschützte Zugriffsregeln können von übergeordneten Objekten nicht durch Vererbung geändert werden. (Von ObjectSecurity geerbt.) |
|
SetAuditRule(AuditRule) | Entfernt alle Überwachungsregeln, die dieselbe Sicherheits-ID und denselben Qualifizierer wie die angegebene Überwachungsregel in der SACL (System Access Control List) enthalten, die diesem CommonObjectSecurity-Objekt zugeordnet ist, und fügt anschließend die angegebene Überwachungsregel hinzu. (Von CommonObjectSecurity geerbt.) |
|
SetAuditRule(FileSystemAuditRule) | Legt die angegebene Überwachungsregel für die aktuelle Datei bzw. das aktuelle Verzeichnis fest. |
|
SetAuditRuleProtection | Legt den Schutz der Überwachungsregeln fest, die diesem ObjectSecurity-Objekt zugeordnet sind, oder entfernt diesen. Geschützte Überwachungsregeln können von übergeordneten Objekten nicht durch Vererbung geändert werden. (Von ObjectSecurity geerbt.) |
|
SetGroup | Legt die primäre Gruppe für die Sicherheitsbeschreibung fest, die diesem ObjectSecurity-Objekt zugeordnet ist. (Von ObjectSecurity geerbt.) |
|
SetOwner | Legt den Besitzer der Sicherheitsbeschreibung fest, die diesem ObjectSecurity-Objekt zugeordnet ist. (Von ObjectSecurity geerbt.) |
|
SetSecurityDescriptorBinaryForm(Byte[]) | Legt die Sicherheitsbeschreibung für dieses ObjectSecurity-Objekt durch das angegebene Array von Bytewerten fest. (Von ObjectSecurity geerbt.) |
|
SetSecurityDescriptorBinaryForm(Byte[], AccessControlSections) | Legt die angegebenen Abschnitte der Sicherheitsbeschreibung für dieses ObjectSecurity-Objekt durch das angegebene Array von Bytewerten fest. (Von ObjectSecurity geerbt.) |
|
SetSecurityDescriptorSddlForm(String) | Legt die Sicherheitsbeschreibung für dieses ObjectSecurity-Objekt durch die angegebene SDDL-Zeichenfolge (Security Descriptor Definition Language) fest. (Von ObjectSecurity geerbt.) |
|
SetSecurityDescriptorSddlForm(String, AccessControlSections) | Legt die angegebenen Abschnitte der Sicherheitsbeschreibung für dieses ObjectSecurity-Objekt durch die angegebene SDDL-Zeichenfolge (Security Descriptor Definition Language) fest. (Von ObjectSecurity geerbt.) |
|
ToString | Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Von Object geerbt.) |
|
WriteLock | Sperrt dieses ObjectSecurity-Objekt für den Schreibzugriff. (Von ObjectSecurity geerbt.) |
|
WriteUnlock | Entsperrt dieses ObjectSecurity-Objekt für Schreibzugriff. (Von ObjectSecurity geerbt.) |
Die FileSystemSecurity-Klasse ist die Basisklasse für die FileSecurity-Klasse und die DirectorySecurity-Klasse. Mit diesen Klassen werden alle Zugriffsrechte für eine Systemdatei oder ein -verzeichnis dargestellt, und es wird definiert, wie Zugriffsversuche überwacht werden.
Die FileSystemSecurity-Klasse stellt Zugriffs- und Überwachungsrechte als Regeln dar. Jede Zugriffsregel wird durch ein FileSystemAccessRule-Objekt dargestellt, und jede Überwachungsregel wird durch ein FileSystemAuditRule-Objekt dargestellt.
Die FileSystemSecurity-Klasse ist eine Abstraktion des zugrunde liegenden Dateisicherheitssystems von Microsoft Windows. In diesem System verfügt jede Datei bzw. jedes Verzeichnis über eine freigegebene Zugriffssteuerungsliste (DACL – Discretionary Access Control List), mit der der Zugriff auf die Datei oder das Verzeichnis gesteuert wird, sowie über eine Systemzugriffssteuerungsliste (SACL – System Access Control List), mit der die überwachten Zugriffssteuerungsversuche angegeben werden. Die FileSystemAccessRule-Klasse und die FileSystemAuditRule-Klasse sind Abstraktionen von Zugriffssteuerungseinträgen (ACEs – Access Control Entries), zu denen DACLs und SACLs gehören.
Die FileSystemSecurity-Klasse blendet viele Details von DACLs und SACLs aus. Es sind keine Überlegungen zur ACE-Reihenfolge und zu NULL-DACLs notwendig.
Behalten Sie neue oder geänderte ACL-Informationen in einer Datei mithilfe der SetAccessControl-Methode oder der SetAccessControl-Methode bei. Behalten Sie neue oder geänderte ACL-Informationen für ein Verzeichnis mithilfe der SetAccessControl-Methode oder der SetAccessControl-Methode bei.
Rufen Sie ACL-Informationen mithilfe der GetAccessControl-Methode oder der GetAccessControl-Methode aus einer Datei ab. Rufen Sie ACL-Informationen mithilfe der GetAccessControl-Methode oder der GetAccessControl-Methode aus einem Verzeichnis ab.
Im folgenden Codebeispiel wird die FileSecurity-Klasse verwendet, um einer Datei einen ACL-Eintrag hinzuzufügen und diesen dann wieder aus der Datei zu entfernen. Sie müssen ein gültiges Benutzer- oder Gruppenkonto angeben, um dieses Beispiel auszuführen.
using System; using System.IO; using System.Security.AccessControl; namespace FileSystemExample { class FileExample { public static void Main() { try { string fileName = "test.xml"; Console.WriteLine("Adding access control entry for " + fileName); // Add the access control entry to the file. AddFileSecurity(fileName, @"DomainName\AccountName", FileSystemRights.ReadData, AccessControlType.Allow); Console.WriteLine("Removing access control entry from " + fileName); // Remove the access control entry from the file. RemoveFileSecurity(fileName, @"DomainName\AccountName", FileSystemRights.ReadData, AccessControlType.Allow); Console.WriteLine("Done."); } catch (Exception e) { Console.WriteLine(e); } } // Adds an ACL entry on the specified file for the specified account. public static void AddFileSecurity(string fileName, string account, FileSystemRights rights, AccessControlType controlType) { // Get a FileSecurity object that represents the // current security settings. FileSecurity fSecurity = File.GetAccessControl(fileName); // Add the FileSystemAccessRule to the security settings. fSecurity.AddAccessRule(new FileSystemAccessRule(account, rights, controlType)); // Set the new access settings. File.SetAccessControl(fileName, fSecurity); } // Removes an ACL entry on the specified file for the specified account. public static void RemoveFileSecurity(string fileName, string account, FileSystemRights rights, AccessControlType controlType) { // Get a FileSecurity object that represents the // current security settings. FileSecurity fSecurity = File.GetAccessControl(fileName); // Remove the FileSystemAccessRule from the security settings. fSecurity.RemoveAccessRule(new FileSystemAccessRule(account, rights, controlType)); // Set the new access settings. File.SetAccessControl(fileName, fSecurity); } } }
Windows 7, Windows Vista SP1 oder höher, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core wird nicht unterstützt), Windows Server 2008 R2 (Server Core wird mit SP1 oder höher unterstützt), Windows Server 2003 SP2
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.