Mit icacls Vollzugriff vererben

Das Kommandozeilen-Tool icacls zum Vergeben und Vererben von NTFS-Berechtigungen ist nicht so vollständig wie wünschenswert dokumentiert. Beisoielsweise vergibt der Parameter /grant:r (Benutzer):F zwar für den Benutzer Vollzugriff, jedoch nur als „spezielle“ Berechtigung.

Lösung:

Als Beispiel wollen wir den Vollzugriff für einen Ordner und alle enthaltenen Objekte vererben.

icacls <ordner>/inheritance:r /grant:r "<domaene>Gruppe":(OI)(CI)F /T
  • /inheritance:r – Entfernt alle vererbten ACEs in diesem Ordner
  • /grant:r „<domaene>Gruppe“:(OI)(CI)F – „Echter“ Vollzugriff für die Gruppe setzen
  • /T – Rekursiv durch Unterordner und Dateien

Ein weiteres Beispiel aus der Praxis: Auf einem Zielordner muss ich ab und an mal alle wild gewuchterten (oder vom System beim Kopieren hinzugefügten) Rechte entfernen und eine saubere Rechtestruktur von oben nach unten vererben. Natürlich sollen dabei auch Besitzer-Rechte keine Rolle spielen und der Besitz durch den Admin (der ausführende) übernommen werden. Das Script wird mit dem Zielordner als Parameter gestartet (nimmrechte.cmd <ziel>). Achtung: Das ä ist schon ein ANSI-Ä, also Kommandozeilen-Kompatibel.

REM --- Besitz uebernehmen
takeown /F %1 /R /D J

REM --- Rechte korrekt setzen
icacls %1 /inheritance:r /grant:r "<domaene>Dom„nen-Admins":(OI)(CI)F /T /grant "<domaene>%1":(OI)(CI)F /T /remove "benutzer" /t /remove "Ersteller-Besitzer" /remove "system"

REM --- Vererbung innerhalb des Ordners wieder aktivieren
icacls %1* /inheritance:e /T

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.