Oktober 10 2012

Vererbung bei allen Unterordnern aktivieren

Denn sie wissen nicht, was sie tun… Könnte man meinen.
Gerade stolpere ich wieder über einen File Server wo auf tiefster Ebene noch, scheinbar wahllos, bei Unterordnern die NTFS-ACL Vererbung deaktiviert ist. Ich predige hier ja massiv „keep it simple“ um genau solche Probleme im Vorfeld schon durch ein durchdachtes Berechtigungssystem zu verhindern – das deaktivieren der Vererbung sollte die letzte Lösung für ein Problem sein.

Für die aktuelle Situation hilft das jedoch nicht, ich habe mehrere tausend Ordner mit unklaren NTFS ACEs und die einzige sinnvolle Lösung ist über alle hinweg die Vererbung wieder zu aktivieren und die explizit vergebenen Berechtigungen zu löschen.

Die Lösung (bzw. eine) für dieses Problem liegt in dem Kommandozeilentool icacls.exe.

/inheritance:e|d|r
  e - enables inheritance
  d - disables inheritance and copy the ACEs
  r - remove all inherited ACEs

/t indicates that this operation is performed on all matching files/directories below the directories specified in the name

icacls.exe %folder% /inheritance:e /t

Quellen:

Glossar:

  • ACL – Access Control List
  • ACE – Account Control Entries