Prawa dostępu

Jak z poziomu linii poleceń trybu tekstowego w Windows 2000 i Windows XP zarządzać prawami dostępu do zasobów?

Sterowanie prawami dostępu jest możliwe przy użyciu narzędzia CACLS.EXE. W Windows XP Home Edition można go używać bez przechodzenia do trybu awaryjnego.

CACLS.EXE działa, co prawda, w trybie tekstowym, jednak pozwala szybciej uzyskiwać żądany efekt niż poprzez okna i karty w graficznym interfejsie Windows. Jego obsługa nie jest wcale skomplikowana. Weźmy za przykład proste zdefiniowanie praw dostępu, jakim jest odebranie wszystkim użytkownikom praw odczytu i zapisu określonego pliku lub w określonym folderze tak, aby stać się jedyną osobą dysponującą wymienionymi uprawnieniami. Na karcie Zabezpieczenia trzeba usunąć wszystkich użytkowników i wszystkie grupy z listy i przydzielić sobie atrybut Pełna kontrola. Tymczasem CACLS.EXE załatwi to jednym poleceniem:

cacls <folder> /g %username%:f

Jeśli chcemy umieścić takie polecenie w pliku wsadowym, aby szybko i wygodnie zmieniać prawa dostępu, uzupełniamy zbiór potwierdzeniem. Tworzymy plik wsadowy z dwoma poniższymi poleceniami:

@echo off

echo t|cacls %1 /g %username%:f

Ten plik wsadowy - nazwijmy go ZABIERZ_PRAWA.BAT - przejmuje podaną nazwę pliku lub folderu za pomocą parametru %1 i zapewnia bieżącemu użytkownikowi jako jedynemu pełny dostęp do określonego zasobu. Nie musimy nawet wprowadzać zmian w powyższych poleceniach, bo zmiennej środowiskowej %username% jest zawsze przyporządkowana nazwa użytkownika w danej chwili zalogowanego w systemie.

Sporządzony plik wsadowy zapisujemy w folderze %userprofile%\SENDTO. Od tej pory będzie dostępny z poziomu polecenia Wyślij do w menu podręcznym wszystkich folderów i plików. Gdy klikniemy dowolny plik lub folder prawym przyciskiem myszy i wskażemy polecenie Wyślij do | zabierz_prawa.bat, będziemy mieli jako jedyni dostęp do tego zasobu.

Możemy jednak utworzyć plik wsadowy do przydzielania wszystkim użytkownikom praw dostępu do danego zasobu. Uzyskamy ten efekt za pomocą poleceń:

@echo off

echo t|cacls %1 /g wszyscy:f

Gotowy plik kopiujemy najlepiej do folderu %userprofile%\SENDTO. Wówczas będziemy mogli przywoływać go równie wygodnie, jak poprzedni.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200