«

»

FileSystemRights

Berechnung der NTFS Permissionset Maske

Microsoft unterscheidet zwischen „grundlegenden Berechtigungen“, wie Vollzugriff, Ändern, Lesen, Schreiben, Lesen und Ausführen, Ordnerinhalt anzeigen, Spezielle Berechtigungen, und „erweiterten Berechtigungen“, wie Datei lesen, Datei ausführen, Attribute lesen, Ordner erstellen u.a.

Jede erweiterte Berechtigung hat einen Wert: Read data=1, Create Files=2, Append Data=4, Read Extended Attribures=8, …

Die grundlegenden Berechtigungen setzen sich aus mehreren erweiterten Berechtigungen zusammen, ihr Wert entsprechend ist die Summe der Einzelberechtigungen. Z.B. setzt sich das Write-Recht aus „Create Files“ (2), „Append Data“ (4), Write Extended Attributes (16) und Write Attributes (256) zusammen. Der Wert für die FileSystemRights summiert sich auf 278. Mit „Synchronize“ (1048576) ergibt sich der Wert 1048854.

Die erweiteren Berechtigungen kann man nach Bedarf zusammenklicken. Entsteht dabei ein Recht, das nicht den grundlegenden Rechten entspricht, wird es als „Spezielle Berechtigung“ gekennzeichnet.

Nur das Recht „Synchronize“ kann von uns nicht manuell vergeben werden. Mit Synchronize wird die Warte-Funktion auf dem Datei-Handle für asynchrone Lese- und Schreibvorgänge gesteuert und nur vom System festgelegt.

FileSystemRights

Bild: FileSystemRights – Berechnung der Berechtigungs-ID aus den Einzelberechtigungen.

Erweiterte Berechtigungen

Bild: Bei der Berechtigungsvergabe unter Windows finden wir die oben angegebenen Einzelberechtigungen als „Erweiterte Berechtigungen“ wieder.

Zur Berechtigungsvergabe gehören weitere Parameter:

Der AccessControlType bestimmt, ob die angegebenen Rechte erlaubt oder nicht zugelassen werden. Angezeigt werden die Werte „Allow“ oder „Deny“. Die Werte sind alternativ.

Das PropagationFlag gibt an, wo das Recht gilt. Hier sind drei Werte möglich:

  • nur in desem Ordner,
  • in den Unterordnern und
  • auf Dateien bezogen.

Diese drei Werte können beliebig kombiniert werden.Standardmäßig sind alle drei Werte gesetzt, d.h. das Recht gilt in diesem Ordner, in den Unterordnern und auf die Dateien bezogen.

Bei Listgruppen wird nur der erste Wert gesetzt, d.h. das Listrecht, es entspricht read & execute, gilt nur für den Ordner, auf dem es explizit vergeben wurden. Es gilt nicht für die Unterordner und nicht für die Dateien.