Udostępnij za pośrednictwem


icacls

Wyświetla lub modyfikuje uznaniowe listy kontroli dostępu (DACLs) dla określonych plików i stosuje przechowywane listy kontroli dostępu do plików w określonych katalogach.

Uwaga

To polecenie zastępuje przestarzałe polecenie cacls.

Składnia

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]]

Parametry

Parametr Opis
> nazwy pliku < Określa plik, dla którego mają być wyświetlane lub modyfikowane listy DACL.
> katalogu < Określa katalog, dla którego mają być wyświetlane lub modyfikowane listy DACLs.
/t Wykonuje operację na wszystkich określonych plikach w bieżącym katalogu i jego podkatalogach.
/c Kontynuuje operację pomimo błędów pliku. Komunikaty o błędach będą nadal wyświetlane.
/l Wykonuje operację na linku symbolicznym zamiast miejsca docelowego.
/q Pomija komunikaty o powodzeniu.
[/save <ACLfile> [/t] [/c] [/l] [/q]] Przechowuje listy kontroli dostępu dla wszystkich pasujących plików do pliku listy kontroli dostępu (ACL) do późniejszego użycia z /restore.
[/setowner <nazwa użytkownika> [/t] [/c] [/l] [/q]] Zmienia właściciela wszystkich pasujących plików do określonego użytkownika.
[/findsid <sid> [/t] [/c] [/l] [/q]] Znajduje wszystkie pasujące pliki, które zawierają jawnie listę DACL wskazującą określony identyfikator zabezpieczeń (SID).
[/verify [/t] [/c] [/l] [/q]] Znajduje wszystkie pliki z listami ACL, które nie są kanoniczne lub mają długość niespójną z liczbą wpisów kontroli dostępu (ACE).
[/reset [/t] [/c] [/l] [/q]] Zamienia listy ACL na domyślne dziedziczone listy ACL dla wszystkich pasujących plików.
[/grant[:r] <sid>:<perm>[...]] Przyznaje określone prawa dostępu użytkownika. Uprawnienia zastępują wcześniej przyznane jawne uprawnienia.

Nie dodaje :r, oznacza, że uprawnienia są dodawane do wszystkich wcześniej przyznanych jawnych uprawnień.

[/deny <sid>:<perm>[...]] Jawnie odrzuca określone prawa dostępu użytkownika. Jawna odmowa ACE jest dodawana dla określonych uprawnień i te same uprawnienia w każdym jawnym przyznaniu są usuwane.
[/remove[:g | :d]] <sid>[...] [/t] [/c] [/l] [/q] Usuwa wszystkie wystąpienia określonego identyfikatora SID z listy DACL. To polecenie może również użyć:
  • :g — usuwa wszystkie wystąpienia przyznanych praw do określonego identyfikatora SID.
  • :d — usuwa wszystkie wystąpienia niedozwolonych praw do określonego identyfikatora SID.
[/setintegritylevel [(CI)(OI)] <poziom>:<>zasad [...]] Jawnie dodaje integralność ACE do wszystkich pasujących plików. Poziom można określić jako:
  • l — niska
  • m— średni rozmiar
  • h — wysoka
Opcje dziedziczenia integralności ACE mogą poprzedzać poziom i są stosowane tylko do katalogów.
[/substitute <sidold><sidnew> [...]] Zastępuje istniejący identyfikator SID (sidold) nowym identyfikatorem SID (sidnew). Wymaga użycia z parametrem <directory>.
/restore <ACLfile> [/c] [/l] [/q] Stosuje przechowywane listy DACL z <ACLfile> do plików w określonym katalogu. Wymaga użycia z parametrem <directory>.
/inheritancelevel: [e | d | r] Ustawia poziom dziedziczenia, który może być:
  • e — włącza dziedziczenie
  • d — wyłącza dziedziczenie i kopiuje acEs
  • r — wyłącza dziedziczenie i usuwa tylko dziedziczone jednostki ACL

Uwagi

  • Identyfikatory SID mogą być w postaci numerycznej lub przyjaznej nazwy. Jeśli używasz formularza liczbowego, umieść symbol wieloznaczny * na początku identyfikatora SID.

  • To polecenie zachowuje kanoniczną kolejność wpisów ACE jako:

    • Jawne odmowy

    • Jawne dotacje

    • Dziedziczone odmowy

    • Dziedziczone dotacje

  • Opcja <perm> to maska uprawnień, którą można określić w jednej z następujących form:

    • Sekwencja praw prostych (podstawowe uprawnienia):

      • F — pełny dostęp

      • M— modyfikowanie dostępu

      • RX — odczyt i wykonywanie dostępu

      • R — dostęp tylko do odczytu

      • W — dostęp tylko do zapisu

    • Lista rozdzielona przecinkami w nawiasach określonych praw (uprawnienia zaawansowane):

      • D — usuwanie

      • RC — kontrola odczytu (uprawnienia do odczytu)

      • WDAC — zapis DAC (zmienianie uprawnień)

      • WO — właściciel zapisu (przejęcie własności)

      • S — synchronizacja

      • AS — zabezpieczenia systemu dostępu

      • ma — maksymalna dozwolona

      • GR — odczyt ogólny

      • GW — ogólny zapis

      • GE — wykonywanie ogólne

      • ogólnie dostępne — wszystkie ogólne

      • rd — odczyt danych/katalogu listy

      • WD — zapisywanie danych/dodawanie pliku

      • ad — dołączanie danych/dodawanie podkatalogu

      • REA — odczyt atrybutów rozszerzonych

      • WEA — zapisywanie atrybutów rozszerzonych

      • X — wykonywanie/przechodzenie

      • dc — usuwanie elementu podrzędnego

      • RA — atrybuty odczytu

      • WA — atrybuty zapisu

    • Prawa dziedziczenia mogą poprzedzać dowolny formularz <perm>:

      • (I) — dziedzicz. Usługa ACE dziedziczyła z kontenera nadrzędnego.

      • (OI) — dziedziczy obiekt. Obiekty w tym kontenerze będą dziedziczyć tę ACE. Dotyczy tylko katalogów.

      • (CI) — dziedziczenie kontenera. Kontenery w tym kontenerze nadrzędnym będą dziedziczyć tę ACE. Dotyczy tylko katalogów.

      • (we/wy) — dziedzicz tylko. Usługa ACE dziedziczona z kontenera nadrzędnego, ale nie ma zastosowania do samego obiektu. Dotyczy tylko katalogów.

      • (NP) — nie propaguj dziedziczenia. Usługa ACE dziedziczona przez kontenery i obiekty z kontenera nadrzędnego, ale nie jest propagowana do zagnieżdżonych kontenerów. Dotyczy tylko katalogów.

Przykłady

Aby zapisać listy DACLs dla wszystkich plików w katalogu C:\Windows i jego podkatalogach do pliku ACLFile, wpisz:

icacls c:\windows\* /save aclfile /t

Aby przywrócić listy DACLs dla każdego pliku w pliku ACLFile, który istnieje w katalogu C:\Windows i jego podkatalogach, wpisz:

icacls c:\windows\ /restore aclfile

Aby przyznać użytkownikowi uprawnienia User1 Delete and Write DAC do pliku o nazwie Test1, wpisz:

icacls test1 /grant User1:(d,wdac)

Aby przyznać użytkownikowi zdefiniowane przez identyfikator SID S-1-1-0 Uprawnienia usuwania i zapisu DAC do pliku o nazwie Test2, wpisz:

icacls test2 /grant *S-1-1-0:(d,wdac)