Caspol.exe (Narzędzie zasad zabezpieczeń dostępu kodu)

Narzędzie (Caspol.exe) sprawdzania zabezpieczeń dostępu kodu (CAS) pozwala użytkownikom i administratorom na modyfikowanie zasad bezpieczeństwa na poziomie zasad komputera, na poziomie zasad użytkownika i na poziomie zasad przedsiębiorstwa.

Ważne

Począwszy od .NET Framework 4, Caspol.exe nie ma wpływu na zasady CAS, chyba że <starszy elementCasPolicy> ma ustawioną wartość true. Wszelkie ustawienia pokazywane lub modyfikowane przez narzędzie CasPol.exe wpływają tylko na aplikacje, w których są stosowane zasady CAS.

Uwaga

Zabezpieczenia dostępu kodu (CAS) zostały uznane za przestarzałe we wszystkich wersjach .NET Framework i .NET. Najnowsze wersje platformy .NET nie honorują adnotacji CAS i generują błędy, jeśli są używane interfejsy API związane z usługą CAS. Deweloperzy powinni szukać alternatywnych sposobów wykonywania zadań zabezpieczeń.

Uwaga

Na komputerach 64-bitowych dostępne są obie, 32-bitowa i 64-bitowa, wersje zasad zabezpieczeń. Aby upewnić się, że zmiany zasad mają zastosowanie do obu, 32-bitowych i 64-bitowych aplikacji, należy uruchomić obie, 32-bitową i 64-bitową, wersję Caspol.exe.

Narzędzie Zasady zabezpieczeń dostępu do kodu jest automatycznie instalowane przy użyciu .NET Framework i programu Visual Studio. Caspol.exe można znaleźć w folderze %windir%\Microsoft.NET\Framework\version w systemach 32-bitowych lub %windir%\Microsoft.NET\Framework64\version w systemach 64-bitowych. (Na przykład lokalizacja to %windir%\Microsoft.NET\Framework64\v4.030319\caspol.exe dla .NET Framework 4 w systemie 64-bitowym). Wiele wersji narzędzia może być zainstalowanych, jeśli na komputerze jest uruchomionych wiele wersji .NET Framework obok siebie. Narzędzie można uruchomić z katalogu instalacji. Zalecamy jednak użycie wiersza polecenia dla deweloperów programu Visual Studio lub programu Visual Studio Developer PowerShell, co nie wymaga przejścia do folderu instalacyjnego.

W wierszu polecenia wpisz następujące polecenie:

Składnia

caspol [options]

Parametry

Opcja Opis
-addfulltrustassembly_file

lub

-afassembly_file
Dodaje zestaw, który implementuje niestandardowy obiekt zabezpieczeń (taki jak niestandardowe uprawnienia lub niestandardowe warunki członkostwa), do listy zestawów o pełnym zaufaniu dla specyficznego poziomu zasad. Argument assembly_file określa zestaw do dodania. Ten plik musi być podpisany przy użyciu silnej nazwy. Zestaw można podpisać za pomocą silnej nazwy przy użyciu narzędzia Strong Name Tool (Sn.exe).

Za każdym razem, gdy zestaw uprawnień zawierający niestandardowe uprawnienia jest dodawany do zasad, zestaw implementujący niestandardowe uprawnienia musi zostać dodany do listy zestawów o pełnym zaufaniu dla danego poziomu zasad. Zestawy, które implementują niestandardowe obiekty zabezpieczeń (takie jak niestandardowe grupy kodu lub warunki członkostwa) używane w zasadach zabezpieczeń (takich jak zasady komputera) powinny być zawsze dodawane do listy zestawów pełnego zaufania. Ostrożność: Jeśli zestaw implementuje niestandardowy obiekt zabezpieczeń odwołuje się do innych zestawów, należy najpierw dodać zestawy, do których istnieją odwołania, do listy zestawów pełnego zaufania. Niestandardowe obiekty zabezpieczeń stworzone za pomocą języków Visual Basic, C++ i JScript odwołują się odpowiednio do Microsoft.VisualBasic.dll, Microsoft.VisualC.dll lub Microsoft.JScript.dll. Te zestawy nie znajdują się domyślnie na liście zestawów pełnego zaufania. Należy dodać odpowiedni zestaw do listy o pełnym zaufaniu przed dodaniem niestandardowego obiektu zabezpieczeń. Niewykonanie tej czynności spowoduje awarię systemu zabezpieczeń, powodując niepowodzenie ładowania zestawów. W takiej sytuacji opcja Caspol.exe -all -reset nie naprawi zabezpieczeń. W celu naprawienia zabezpieczeń należy ręcznie wyedytować pliki zabezpieczeń, aby usunąć niestandardowy obiekt zabezpieczeń.
-addgroup {parent_label | parent_name} mship pset_name [flagi]

lub

-ag {parent_label | parent_name} mship pset_name [flagi]
Dodaje nową grupę kodu do hierarchii grup kodu. Można określić parent_label lub parent_name. Argument parent_label określa etykietę (na przykład 1. lub 1.1.) grupy kodu, która jest elementem nadrzędnym dodawanej grupy kodu. Argument parent_name określa nazwę grupy kodu, która jest elementem nadrzędnym dodawanej grupy kodu. Ponieważ parent_label i parent_name mogą być używane zamiennie, Caspol.exe muszą być w stanie je odróżnić. W związku z tym parent_name nie może zaczynać się od liczby. Ponadto parent_name mogą zawierać tylko znaki A-Z, 0–9 i podkreślenia.

Argument mship określa warunek członkostwa dla nowej grupy kodu. Aby uzyskać więcej informacji, zobacz tabelę argumentów mship w dalszej części tej sekcji.

Argument pset_name jest nazwą zestawu uprawnień, który zostanie skojarzony z nową grupą kodu. Można również ustawić co najmniej jedną flagę dla nowej grupy. Aby uzyskać więcej informacji, zobacz tabelę argumentów flag w dalszej części tej sekcji.
-addpset {psfile psfile | pset_name}

lub

-ap {named_psfile psfile | pset_name}
Dodaje nowy, nazwany zestaw uprawnień do zasad. Zestaw uprawnień musi być w formacie XML i być zapisany w pliku xml. Jeśli plik XML zawiera nazwę zestawu uprawnień, zostanie określony tylko ten plik (psfile). Jeśli plik XML nie zawiera nazwy zestawu uprawnień, musisz określić zarówno nazwę pliku XML (psfile), jak i nazwę zestawu uprawnień (pset_name).

Wszystkie uprawnienia używane w zestawie uprawnień muszą być zdefiniowane w zestawach zawartych w globalnej pamięci podręcznej zestawów.
-a[ll] Wskazuje, że wszystkie opcje następujące po niej mają zastosowanie do zasad komputera, użytkownika i przedsiębiorstwa. Opcja -all zawsze odwołuje się do zasad aktualnie zalogowanego użytkownika. Zobacz opcję -customall , aby odwołać się do zasad użytkownika innego niż bieżący użytkownik.
-chggroup {label |name} {mship | pset_name |

Flagi}

lub

-cg {label |name} {mship | pset_name |

Flagi}
Zmienia warunek członkostwa grupy kodu, zestaw uprawnień lub ustawienia flag wyłączności, zakończenia poziomu, nazwy lub opisu . Możesz określić etykietę lub nazwę. Argument etykiety określa etykietę (na przykład 1. lub 1.1.) grupy kodu. Argument name określa nazwę grupy kodu do zmiany. Ponieważ etykieta i nazwa mogą być używane zamiennie, Caspol.exe musi być w stanie je odróżnić. W związku z tym nazwa nie może zaczynać się od liczby. Ponadto nazwa może zawierać tylko znaki A-Z, 0–9 i podkreślenia.

Argument pset_name określa nazwę zestawu uprawnień do skojarzenia z grupą kodu. Zobacz tabele w dalszej części tej sekcji, aby uzyskać informacje na temat argumentówmship i flags.
-chgpsetpsfile pset_name

lub

-cppsfile pset_name
Zmienia nazwany zestaw uprawnień. Argument psfile dostarcza nową definicję zestawu uprawnień; jest to serializowany plik zestawu uprawnień w formacie XML. Argument pset_name określa nazwę zestawu uprawnień, który chcesz zmienić.
-customallścieżka

lub

-caścieżka
Wskazuje, że wszystkie opcje następujące po niej, mają zastosowanie do zasad komputera, przedsiębiorstwa i określonych niestandardowych zasad użytkownika. Należy określić lokalizację pliku konfiguracji zabezpieczeń niestandardowego użytkownika z argumentem path .
-cu[stomuser] ścieżka Umożliwia administrowanie niestandardowymi zasadami użytkownika, które nie należą do użytkownika w jego imieniu Caspol.exe jest obecnie uruchomione. Należy określić lokalizację pliku konfiguracji zabezpieczeń niestandardowego użytkownika z argumentem path .
-Przedsiębiorstwo

lub

-En
Wskazuje, że wszystkie opcje następujące po niej, mają zastosowanie do poziomu zasad przedsiębiorstwa. Użytkownicy, którzy nie są administratorami przedsiębiorstwa, nie mają wystarczających uprawnień do modyfikowania zasad przedsiębiorstwa, chociaż mogą je wyświetlać. W scenariuszach nienależących do przedsiębiorstwa te zasady domyślnie nie kolidują z zasadami komputera i użytkownika.
-e[xecution] {on | off} Włącza lub wyłącza mechanizm sprawdzający uprawnienia uruchamiania przed rozpoczęciem wykonywania kodu. Uwaga: Ten przełącznik jest usuwany w .NET Framework 4 i nowszych wersjach.
-f[orce] Pomija test samolikwidacji narzędzia i zmienia zasady określone przez użytkownika. Zwykle Caspol.exe sprawdza, czy jakiekolwiek zmiany zasad uniemożliwiłyby prawidłowe działanie Caspol.exe samego siebie; Jeśli tak, Caspol.exe nie zapisuje zmiany zasad i wyświetla komunikat o błędzie. Aby wymusić Caspol.exe zmiany zasad, nawet jeśli uniemożliwia to uruchomienie Caspol.exe się, użyj opcji –force .
-h[elp] Wyświetla składnię polecenia i opcje programu Caspol.exe.
-l[ist] Wypisuje hierarchię grup kodu i zestawy uprawnień dla określonego komputera, użytkownika, przedsiębiorstwa lub wszystkich poziomów zasad. Caspol.exe wyświetla najpierw etykietę grupy kodu, a następnie nazwę, jeśli nie ma wartości null.
-listdescription

lub

-Ld
Wypisuje opisy wszystkich grup kodu dla określonego poziomu zasad.
-listfulltrust

lub

-lf
Wypisuje zawartość listy zestawów o pełnym zaufaniu dla określonego poziomu zasad.
-listgroups

lub

-Lg
Wypisuje grupy kodu dla określonego poziomu zasad lud dla wszystkich poziomów zasad. Caspol.exe wyświetla najpierw etykietę grupy kodu, a następnie nazwę, jeśli nie ma wartości null.
-listpset lub -lp Wyświetla zestawy uprawnień dla określonego poziomu zasad lub poziomów zasad.
-m[achine] Wskazuje, że wszystkie opcje następujące po niej, mają zastosowanie do poziomu zasad komputera. Użytkownicy, którzy nie są administratorami, nie mają wystarczających uprawnień do modyfikowania zasad komputera, chociaż mogą je wyświetlać. W przypadku administratorów parametr -machine jest domyślny.
-polchgprompt {on | off}

lub

-pp {on | off}
Włącza lub wyłącza monit, który jest wyświetlany zawsze, gdy Caspol.exe jest uruchamiany z opcją powodującą zmianę zasad.
-quiet

lub

-q
Tymczasowo wyłącza monit, który jest normalnie wyświetlany dla opcji powodującej zmianę zasad. Globalne ustawienie monitu nie jest zmieniane. Należy użyć tej opcji w pojedynczym poleceniu, aby uniknąć wyłączenia monitu dla wszystkich poleceń Caspol.exe.
-r[ecover] Odzyskuje zasady z pliku kopii zapasowej. Zawsze, gdy zmieniane są zasady, Caspol.exe zapisuje stare zasady w pliku kopii zapasowej.
-remfulltrustassembly_file

lub

-rfassembly_file
Usuwa zestaw z listy zestawów o pełnym zaufaniu poziomu zasad. Ta operacja powinna być wykonana, jeśli zestaw uprawnień, który zawiera niestandardowe uprawnienie, nie jest już dłużej używany przez zasady. Należy jednak usunąć zestaw, który implementuje uprawnienia niestandardowe z listy pełnego zaufania tylko wtedy, gdy zestaw nie implementuje żadnych innych uprawnień niestandardowych, które są nadal używane. Po usunięciu zestawu z listy, należy także usunąć wszystkie inne zależne zestawy.
-remgroup {label |name}

lub

-rg {label | name}
Usuwa grupę kodu określoną za pomocą nazwy lub etykiety. Jeżeli określona grupa kodu posiada podrzędne grupy kodu, Caspol.exe usunie także wszystkie podrzędne grupy kodu.
-rempsetpset_name

lub

-rppset_name
Usuwa określony zestaw uprawnień z zasad. Argument pset_name wskazuje, które uprawnienia mają zostać usunięte. Caspol.exe usuwa zestaw uprawnień tylko wtedy, gdy nie jest skojarzony z żadną grupą kodu. Nie można usunąć domyślnych (wbudowanych) zestawów uprawnień.
-Zresetować

lub

-rs
Przywraca zasadom domyślny stan i zapisuje je na dysku. Jest to użyteczne, gdy zmienione zasady są nie do naprawienia i trzeba rozpocząć od nowa, z domyślnymi ustawieniami instalacji. Resetowanie może być również wygodne, gdy zachodzi potrzeba użycia domyślnych zasad jako punktu początkowego do modyfikacji określonych plików konfiguracji zabezpieczeń. Aby uzyskać więcej informacji, zobacz Ręczne edytowanie plików konfiguracji zabezpieczeń.
-resetlockdown

lub

-rsld
Zwraca zasady do bardziej restrykcyjnej wersji stanu domyślnego i utrwala je na dysku; Tworzy kopię zapasową poprzednich zasad maszyny i utrwala ją w pliku o nazwie security.config.bac. Zasady zablokowane są podobne do zasad domyślnych, z tą różnicą, że zasady nie udzielają żadnych uprawnień do kodu z Local Intranetstref , Trusted Sitesi i Internet odpowiednich grup kodu nie mają podrzędnych grup kodu.
-resolvegroupassembly_file

lub

-rsgassembly_file
Pokazuje grupy kodu, do których należy określony zestaw (assembly_file). Domyślnie ta opcja wyświetla poziomy zasad komputera, użytkownika i przedsiębiorstwa, do których należy zestaw. Aby wyświetlić tylko jeden poziom zasad, użyj tej opcji z opcją -machine, -user lub -enterprise .
-resolvepermassembly_file

lub

-rspassembly_file
Wyświetla wszystkie uprawnienia, które zostaną przydzielone zestawowi, przez określony (lub domyślny) poziom zasad bezpieczeństwa, gdyby zestaw mógł być uruchomiony. Argument assembly_file określa zestaw. Jeśli określisz opcję -all , Caspol.exe oblicza uprawnienia dla zestawu na podstawie zasad użytkownika, komputera i przedsiębiorstwa; w przeciwnym razie mają zastosowanie domyślne reguły zachowania.
-s[ecurity] {on | off} Włącza lub wyłącza zabezpieczenia dostępu kodu. Określenie opcji -s off nie powoduje wyłączenia zabezpieczeń opartych na rolach. Uwaga: Ten przełącznik jest usuwany w .NET Framework 4 i nowszych wersjach. Ostrożność: Po wyłączeniu zabezpieczeń dostępu kodu wszystkie żądania dostępu kodu kończą się powodzeniem. Wyłączenie zabezpieczeń dostępu kodu sprawia, że system staje się podatny na ataki złośliwego kodu, takiego jak wirusy i robaki. Wyłączenie zabezpieczeń zapewnia dodatkową wydajność, ale powinno być wykonywane tylko wtedy, gdy podjęto inne środki bezpieczeństwa, aby upewnić się, że ogólne zabezpieczenia systemu nie zostały naruszone. Przykłady innych środków ostrożności to: odłączenie od sieci publicznych, fizyczne zabezpieczanie komputerów i tak dalej.
-u[ser] Wskazuje, że wszystkie opcje następujące po niej, mają zastosowanie do poziomu zasad użytkownika, w którego imieniu Caspol.exe jest uruchomiony. W przypadku użytkowników niebędących administratorami parametr -user jest domyślny.
-? Wyświetla składnię polecenia i opcje programu Caspol.exe.

Argument mship , który określa warunek członkostwa dla grupy kodu, może być używany z opcjami -addgroup i -chggroup . Każdy argument mship jest implementowany jako klasa .NET Framework. Aby określić mship, użyj jednego z następujących elementów.

Argument Opis
-allcode Określa cały kod. Aby uzyskać więcej informacji na temat tego warunku członkostwa, zobacz System.Security.Policy.AllMembershipCondition.
-appdir Określa katalog aplikacji. Jeśli określisz parametr –appdir jako warunek członkostwa, dowody adresu URL kodu są porównywane z dowodami katalogu aplikacji tego kodu. Jeśli obie wartości są takie same, warunek członkostwa jest spełniony. Aby uzyskać więcej informacji na temat tego warunku członkostwa, zobacz System.Security.Policy.ApplicationDirectoryMembershipCondition.
-customxmlfile Dodaje niestandardowy warunek członkostwa. Obowiązkowy argument xmlfile określa plik .xml, który zawiera serializacji XML warunku członkostwa niestandardowego.
-hashhashAlg {-hexhashValue-file | assembly_file } Określa kod, który posiada podany skrót zestawu. Aby użyć skrótu jako warunku członkostwa grupy kodu, należy określić wartość skrótu lub plik zestawu. Aby uzyskać więcej informacji na temat tego warunku członkostwa, zobacz System.Security.Policy.HashMembershipCondition.
-pub { -certcert_file_name |

-filesigned_file_name-hexhex_string | }
Określa kod, który posiada podanego wydawcę oprogramowania wskazanego przez plik certyfikatu, sygnaturę pliku lub reprezentację szesnastkową certyfikatu X509. Aby uzyskać więcej informacji na temat tego warunku członkostwa, zobacz System.Security.Policy.PublisherMembershipCondition.
-sitewebsite Określa kod, który posiada określoną witrynę pochodzenia. Na przykład:

-site** www.proseware.com

Aby uzyskać więcej informacji na temat tego warunku członkostwa, zobacz System.Security.Policy.SiteMembershipCondition.
-strong -filefile_name {name-noname | } {version-noversion | } Określa kod, który ma określoną silną nazwę, wyznaczoną przez nazwę pliku, nazwę zestawu jako ciąg i wersję zestawu w formacie głównym. drobne. kompilacja. poprawka. Na przykład:

-strong -file myAssembly.exe myAssembly 1.2.3.4

Aby uzyskać więcej informacji na temat tego warunku członkostwa, zobacz System.Security.Policy.StrongNameMembershipCondition.
-URL adresu URL Określa kod, który pochodzi z określonego adresu URL. Adres URL musi zawierać protokół, taki jak http:// lub ftp://. Ponadto symbol wieloznaczny (*) może służyć do określania wielu zestawów z określonego adresu URL. Uwaga: Ponieważ adres URL można zidentyfikować przy użyciu wielu nazw, użycie adresu URL jako warunku członkostwa nie jest bezpiecznym sposobem ustalenia tożsamości kodu. Gdy jest to możliwe, należy używać silnej nazwy jako warunku członkostwa, wydawcy jako warunku członkostwa lub skrótu jako warunku członkostwa.

Aby uzyskać więcej informacji na temat tego warunku członkostwa, zobacz System.Security.Policy.UrlMembershipCondition.
-zone zonename Określa kod, który pochodzi z określonej strefy. Argument zonename może być jedną z następujących wartości: MyComputer, Intranet, Trusted, Internet lub Untrusted. Aby uzyskać więcej informacji na temat tego warunku członkostwa, zobacz Klasę ZoneMembershipCondition .

Argument flagi , który może być używany z opcjami –addgroup i –chggroup , jest określony przy użyciu jednej z następujących opcji.

Argument Opis
-Opis "description" Jeśli jest używana z opcją –addgroup , określa opis grupy kodu do dodania. Jeśli jest używana z opcją –chggroup , określa opis grupy kodu do edycji. Argument opisu musi być ujęta w cudzysłowy.
-exclusive {on|off} Po ustawieniu wartości włączonej wskazuje, że tylko zestaw uprawnień skojarzony z dodaną lub modyfikującą grupę kodu jest uwzględniany, gdy jakiś kod pasuje do warunku członkostwa grupy kodu. Gdy ta opcja zostanie wyłączona, Caspol.exe uwzględnia zestawy uprawnień wszystkich pasujących grup kodu na poziomie zasad.
-levelfinal {on|off} Po ustawieniu wartości włączonej wskazuje, że nie jest uwzględniany żaden poziom zasad poniżej poziomu, na którym jest uwzględniana dodana lub zmodyfikowana grupa kodu. Ta opcja jest typowo używana na poziomie zasad komputera. Na przykład, jeśli flaga grupy kodu ustawiona będzie na poziom komputera i jakiś kod odpowiada warunkowi członkostwa grupy kodu, Caspol.exe nie oblicza ani nie stosuje zasad poziomu użytkownika dla tego kodu.
-Nazwa "name" Jeśli jest używana z opcją –addgroup , określa nazwę skryptu dla grupy kodu do dodania. Jeśli jest używana z opcją -chggroup , określa nazwę skryptu grupy kodu do edycji. Argument nazwy musi być ujęta w cudzysłowy. Argument nazwy nie może zaczynać się od liczby i może zawierać tylko znak A-Z, 0-9 i znak podkreślenia. Grupy kodu można odwoływać się do tej nazwy zamiast przez ich etykietę liczbową. Nazwa jest również bardzo przydatna do obsługi skryptów.

Uwagi

Zasady zabezpieczeń są wyrażone za pomocą trzech poziomów zasad: zasady komputera, zasady użytkownika i zasady przedsiębiorstwa. Zestaw uprawnień otrzymanych przez zestaw jest określony przez przecięcie zestawów uprawnień dopuszczonych przez trzy poziomy zasad. Każdy poziom zasad jest reprezentowany przez hierarchiczną strukturę grup kodu. Każda grupa kodu posiada warunek członkostwa, który określa, jaki kod jest członkiem tej grupy. Nazwany zestaw uprawnień jest również skojarzony z każdą grupą kodu. Ten zestaw uprawnień określa uprawnienia, które spełniają warunek członkostwa, jakie środowisko uruchomieniowe przydziela kodowi. Hierarchia grup kodu ze skojarzonymi nazwanymi zestawami uprawnień definiuje i utrzymuje każdy poziom zasad zabezpieczeń. Możesz użyć opcji -user, -customuser, -machine i -enterprise , aby ustawić poziom zasad zabezpieczeń.

Aby uzyskać więcej informacji na temat zasad zabezpieczeń i sposobu określania przez środowisko uruchomieniowe uprawnień do udzielania kodu, zobacz Zarządzanie zasadami zabezpieczeń.

Odwoływanie się do grup kodu i zestawów uprawnień

Aby ułatwić odwołania do grup kodu w hierarchii, opcja -list wyświetla wciętą listę grup kodu wraz z ich etykietami liczbowymi (1, 1.1, 1.1.1 itd.). Inne operacje wiersza polecenia przeznaczone dla grup kodu także używają etykiet liczbowych, aby odwołać się do określonej grupy kodu.

Odwołania do nazwanych zestawów uprawnień możliwe są przy użyciu ich nazw. Opcja –list wyświetla listę grup kodu, po których następuje lista nazwanych zestawów uprawnień dostępnych w tych zasadach.

Zachowanie Caspol.exe

Wszystkie opcje z wyjątkiem -s[ecurity] {on | off} używają wersji .NET Framework, z którą zainstalowano Caspol.exe. Jeśli uruchomisz Caspol.exe, która została zainstalowana z wersją X środowiska uruchomieniowego, zmiany mają zastosowanie tylko do tej wersji. Inne instalacje środowiska uruchomieniowego, jeśli są, nie zostaną uwzględnione. Jeżeli program Caspol.exe jest uruchamiany w wierszu poleceń poza katalogiem określonej wersji środowiska uruchomieniowego, narzędzie jest wykonywane w pierwszym katalogu wersji środowiska uruchomieniowego w ścieżce (zazwyczaj ostatnio zainstalowane środowisko uruchomieniowe).

Opcja -s[ecurity] {on | off} jest operacją całego komputera. Wyłączenie zabezpieczeń dostępu kodu przerywa sprawdzenia zabezpieczeń dla całego kodu zarządzanego i dla wszystkich użytkowników komputera. Jeżeli jest zainstalowanych wiele wersji platformy .NET Framework, to polecenie wyłączy zabezpieczenia dla każdej zainstalowanej wersji na komputerze. Mimo że opcja -list pokazuje, że zabezpieczenia są wyłączone, nic innego wyraźnie nie wskazuje na innych użytkowników, że zabezpieczenia zostały wyłączone.

Gdy użytkownik bez praw administracyjnych jest uruchamiany Caspol.exe, wszystkie opcje odnoszą się do zasad na poziomie użytkownika, chyba że określono opcję –machine . Gdy administrator uruchomi Caspol.exe, wszystkie opcje odwołują się do zasad maszyny, chyba że określono opcję –user .

Caspol.exe musi mieć równoważne uprawnienie Wszystko ustawione na funkcję. Narzędzie posiada mechanizm zabezpieczający, który uniemożliwia modyfikowanie zasad w sposób uniemożliwiający udzielenia Caspol.exe uprawnień, których potrzebuje do uruchomienia. Podczas próby zmiany ustawień program Caspol.exe powiadamia, że żądana zmiana zasad spowoduje awarię narzędzia i zmiana zasad zostanie odrzucona. Ten mechanizm ochronny dla danego polecenia można wyłączyć przy użyciu opcji –force .

Ręczna edycja plików konfiguracji zabezpieczeń

Trzy pliki konfiguracji zabezpieczeń odnoszą się do trzech poziomów zabezpieczeń obsługiwanych przez Caspol.exe: jeden dla zasad komputera, jeden dla podanego użytkownika i jeden dla zasad przedsiębiorstwa. Te trzy pliki są tworzone na dysku tylko wtedy, gdy zasady komputera, użytkownika lub przedsiębiorstwa są zmienione za pomocą Caspol.exe. W Caspol.exe można użyć opcji –reset , aby w razie potrzeby zapisać domyślne zasady zabezpieczeń na dysku.

W większości przypadków ręczne edytowanie plików konfiguracji zabezpieczeń nie jest zalecane. Jednak mogą pojawić się scenariusze, w których modyfikowanie tych plików może być konieczne, na przykład gdy administrator chce edytować konfigurację zabezpieczeń dla określonego użytkownika.

Przykłady

-addfulltrust

Zakłada, że zestaw uprawnień zawierający niestandardowe uprawnienie został dodany do zasad komputera. To uprawnienie niestandardowe jest implementowane w MyPerm.exeklasach , a MyPerm.exe odwołania w programie MyOther.exe. Oba zestawy muszą być dodane do listy zestawów o pełnym zaufaniu. Następujące polecenie dodaje MyPerm.exe zestaw do listy pełnych zaufania zasad maszyny.

caspol -machine -addfulltrust MyPerm.exe

Następujące polecenie dodaje MyOther.exe zestaw do listy pełnych zaufania zasad maszyny.

caspol -machine -addfulltrust MyOther.exe

-addgroup

Następujące polecenie dodaje podrzędną grupę kodu do korzenia hierarchii grup kodu zasad komputera. Nowa grupa kodu jest członkiem strefy internetowej i jest skojarzona z zestawem uprawnień Wykonywanie .

caspol -machine -addgroup 1.  -zone Internet Execution

Następujące polecenie dodaje podrzędną grupę kodu, która daje udział \\netserver\netshare lokalnych uprawnień intranetu.

caspol -machine -addgroup 1. -url \\netserver\netshare\* LocalIntranet

-addpset

Następujące polecenie dodaje Mypset zestaw uprawnień do zasad użytkownika.

caspol -user -addpset Mypset.xml Mypset

-chggroup

Następujące polecenie zmienia zestaw uprawnień w zasadach użytkownika grupy kodu oznaczonej etykietą 1.2. w zestawie uprawnień wykonywanie .

caspol -user -chggroup 1.2. Execution

Następujące polecenie zmienia warunek członkostwa w domyślnych zasadach grupy kodu oznaczonej etykietą 1.2.1. i zmienia ustawienie flagi wyłączności . Warunek członkostwa jest zdefiniowany jako kod pochodzący ze strefy internetowej , a flaga wyłączność jest włączona.

caspol -chggroup 1.2.1. -zone Internet -exclusive on

-chgpset

Następujące polecenie zmienia zestaw uprawnień o nazwie Mypset na zestaw uprawnień zawarty w newpset.xmlpliku . Należy pamiętać, że bieżąca wersja nie obsługuje zmieniania zestawów uprawnień, które są używane przez hierarchię grup kodu.

caspol -chgpset Mypset newpset.xml

-Życie

Następujące polecenie powoduje skojarzenie głównej grupy kodu zasad użytkownika (oznaczonej etykietą 1) z zestawem uprawnień Nic nazwanego. Uniemożliwia to uruchomienie programu Caspol.exe.

caspol -force -user -chggroup 1 Nothing

-Odzyskać

Następujące polecenie odzyskuje ostatnie zapisane zasady komputera.

caspol -machine -recover

-remgroup

Następujące polecenie usuwa grupę kodu z etykietą 1.1. Jeśli grupa kodu posiada węzły podrzędne, te grupy również zostaną usunięte.

caspol -remgroup 1.1.

-rempset

Następujące polecenie usuwa zestaw uprawnień wykonywania z zasad użytkownika.

caspol -user -rempset Execution

Następujące polecenie powoduje usunięcie Mypset z poziomu zasad użytkownika.

caspol -rempset MyPset

-resolvegroup

Poniższe polecenie pokazuje wszystkie grupy kodu zasad maszyny, które myassembly należą do.

caspol -machine -resolvegroup myassembly

Poniższe polecenie pokazuje wszystkie grupy kodu maszyny, przedsiębiorstwa i określone niestandardowe zasady użytkownika, które myassembly należą do.

caspol -customall "c:\config_test\security.config" -resolvegroup myassembly

-resolveperm

Następujące polecenie oblicza uprawnienia na testassembly podstawie poziomów zasad komputera i użytkownika.

caspol -all -resolveperm testassembly

Zobacz też