icacls
Zeigt oder ändert DACLs (Discretionary Access Control Lists) für bestimmte Dateien an, und wendet gespeicherte DACLs auf Dateien in angegebenen Verzeichnissen an.
Hinweis
Dieser Befehl ersetzt den veralteten befehl cacls.
Syntax
icacls <filename> [/grant[:r] <sid>:<perm>[...]] [/deny <sid>:<perm>[...]] [/remove[:g|:d]] <sid>[...]] [/t] [/c] [/l] [/q] [/setintegritylevel <Level>:<policy>[...]]
icacls <directory> [/substitute <sidold> <sidnew> [...]] [/restore <aclfile> [/c] [/l] [/q]]
Parameter
Parameter | BESCHREIBUNG |
---|---|
<filename> | Gibt die Datei an, für die DACLs angezeigt oder geändert werden sollen. |
<Verzeichnis> | Gibt das Verzeichnis an, für das DACLs angezeigt oder geändert werden sollen. |
/t | Führt den Vorgang für alle angegebenen Dateien im aktuellen Verzeichnis und seinen Unterverzeichnissen aus. |
/c | Setzt den Vorgang trotz Dateifehlern fort. Fehlermeldungen werden weiterhin angezeigt. |
/l | Führt den Vorgang für einen symbolischen Link anstelle des Ziels aus. |
/q | Unterdrückt Erfolgsmeldungen. |
[/speichern < ACLfile> [/t] [/c] [/l] [/q]] | Speichert DACLs für alle übereinstimmenden Dateien in einer ACL-Datei (Access Control List) zur späteren Verwendung mit /restore. |
[/setowner <benutzername> [/t] [/c] [/l] [/q]] | Ändert den Besitzer aller übereinstimmenden Dateien an den angegebenen Benutzer. |
[/findsid <sid> [/t] [/c] [/l] [/q]] | Sucht alle übereinstimmenden Dateien, die eine DACL enthalten, die den angegebenen Sicherheitsbezeichner (SID) explizit erwähnt. |
[/verify [/t] [/c] [/l] [/q]] | Sucht alle Dateien mit ACLs, die nicht kanonisch sind oder längenkonsistent mit ACE-Werten (Access Control Entry) sind. |
[/reset [/t] [/c] [/l] [/q]] | Ersetzt ACLs durch standardmäßig geerbte ACLs für alle übereinstimmenden Dateien. |
[/grant[:r] <sid>:<perm>[...]] | Gewährt den angegebenen Benutzerzugriffsrechten. Berechtigungen ersetzen zuvor erteilte explizite Berechtigungen. Das Nicht hinzufügen von :r bedeutet, dass Berechtigungen zu allen zuvor erteilten expliziten Berechtigungen hinzugefügt werden. |
[/deny <sid>:<perm>[...]] | Verweigert explizit die angegebenen Benutzerzugriffsrechte. Für die angegebenen Berechtigungen wird ein expliziter Ablehnungs-ACE hinzugefügt, und die gleichen Berechtigungen in jeder expliziten Gewährung werden entfernt. |
[/remove[:g | :d]] <sid>[...] [/t] [/c] [/l] [/q] | Entfernt alle Vorkommen der angegebenen SID aus der DACL. Dieser Befehl kann auch Folgendes verwenden:
|
[/setintegritylevel [(CI)(OI)] < Ebene>:<Richtlinie>[...]] | Fügt allen übereinstimmenden Dateien explizit ein Integritäts-ACE hinzu. Die Ebene kann wie folgt angegeben werden:
|
[/substitute <sidold><sidnew> [...]] | Ersetzt eine vorhandene SID (sidold) durch eine neue SID (sidnew). Erfordert die Verwendung mit dem <directory> -Parameter. |
/restore <ACLfile> [/c] [/l] [/q] | Wendet gespeicherte DACLs von <ACLfile> auf Dateien im angegebenen Verzeichnis an. Erfordert die Verwendung mit dem <directory> -Parameter. |
/inheritancelevel: [e | d | r] | Legt die Vererbungsebene fest, die folgendes sein kann:
|
Hinweise
SIDs können entweder in numerischer oder anzeigerischer Namensform vorliegen. Wenn Sie ein numerisches Formular verwenden, fügen Sie das Feldhalterzeichen * am Anfang der SID an.
Dieser Befehl behält die kanonische Reihenfolge der ACE-Einträge wie folgt bei:
Explizite Denialen
Explizite Zuweisungen
Geerbte Denialen
Geerbte Zuweisungen
Die
<perm>
Option ist eine Berechtigungsmaske, die in einer der folgenden Formen angegeben werden kann:Eine Sequenz einfacher Rechte (Grundberechtigungen):
F – Vollzugriff
M: Ändern des Zugriffs
RX : Lese- und Ausführungszugriff
R – Schreibgeschützter Zugriff
W – Schreibgeschützter Zugriff
Eine durch Trennzeichen getrennte Liste in Klammern bestimmter Rechte (erweiterte Berechtigungen):
D – Löschen
RC – Lesesteuerelement (Leseberechtigungen)
WDAC – Schreiben von DAC (Ändern von Berechtigungen)
WO – Schreibbesitzer (Übernehmen des Besitzes)
S – Synchronisieren
AS – Zugriffssystemsicherheit
MA – Maximal zulässig
GR – Generischer Lesezugriff
GW – Generischer Schreibvorgang
GE – Generische Ausführung
Allgemeine Verfügbarkeit – Generischer All-Typ
RD : Lesen des Daten-/Listenverzeichnisses
WD : Schreiben von Daten/Hinzufügen einer Datei
AD : Anfügen von Daten/Hinzufügen eines Unterverzeichnisses
REA – Lesen erweiterter Attribute
WEA : Schreiben erweiterter Attribute
X : Ausführen/Durchlaufen
DC : Untergeordnetes Element löschen
RA – Leseattribute
WA : Schreibattribute
Erbrechte können vor beiden
<perm>
Formen stehen:(I) – Erben. ACE wurde vom übergeordneten Container geerbt.
(OI): Objekterben. Objekte in diesem Container erben diesen ACE. Gilt nur für Verzeichnisse.
(CI) – Containererben. Container in diesem übergeordneten Container erben diesen ACE. Gilt nur für Verzeichnisse.
(E/A) – Nur erben. ACE wurde vom übergeordneten Container geerbt, gilt aber nicht für das Objekt selbst. Gilt nur für Verzeichnisse.
(NP): Vererben Sie nicht. ACE wird von Containern und Objekten aus dem übergeordneten Container geerbt, aber nicht an geschachtelte Container weitergegeben. Gilt nur für Verzeichnisse.
Beispiele
Geben Sie Folgendes ein, um die DACLs für alle Dateien im Verzeichnis C:\Windows und die zugehörigen Unterverzeichnisse in der ACLFile-Datei zu speichern:
icacls c:\windows\* /save aclfile /t
Geben Sie Folgendes ein, um die DACLs für jede Datei in ACLFile wiederherzustellen, die im Verzeichnis C:\Windows und den zugehörigen Unterverzeichnissen vorhanden ist:
icacls c:\windows\ /restore aclfile
Geben Sie Folgendes ein, um dem Benutzer Benutzer1 die Berechtigungen DAC löschen und schreiben für eine Datei mit dem Namen Test1 zu erteilen:
icacls test1 /grant User1:(d,wdac)
Geben Sie Folgendes ein, um dem benutzerdefiniert von SID S-1-1-0 DAC-Berechtigungen zum Löschen und Schreiben von DAC für eine Datei mit dem Namen Test2 zu erteilen:
icacls test2 /grant *S-1-1-0:(d,wdac)