Zmień uprawnienia do klucza rejestru za pomocą wiersza polecenia

11

Próbuję edytować ten klucz rejestru za pomocą wiersza polecenia - szukam od wieków, ale nic nie mogę znaleźć.

Naprawdę utknąłem w tej chwili, więc każda pomoc byłaby bardzo doceniana. Nie mam nic przeciwko korzystaniu z programu PowerShell lub czegokolwiek, co wywołuje narzędzie innej firmy - po prostu chcę to zmienić za pomocą wiersza polecenia.

Powodem jest to, że lokalni administratorzy mają domyślnie uprawnienia tylko do odczytu. Chcę to zmienić na Pełna kontrola. Mogę to zrobić w GUI w 2 sekundy, ale wiersz poleceń to inna sprawa.

HKEY_CLASSES_ROOT\CLSID\{323CA680-C24D-4099-B94D-446DD2D7249E}\ShellFolder
lara400
źródło

Odpowiedzi:

7

Jest doskonały wybiegiem, jak to zrobić w PowerShell tutaj .

Zasadniczo, można użyć Get-Acli Set-Aclw PowerShell tak jak w wypadku każdej innej ścieżce.

$acl = Get-Acl HKLM:\SOFTWARE\stuff
$rule = New-Object System.Security.AccessControl.RegistryAccessRule ("Domain\user","FullControl","Allow")
$acl.SetAccessRule($rule)
$acl |Set-Acl -Path HKLM:\SOFTWARE\stuff
MDMarra
źródło
dziękuję za to - problem, z którym się zmagam, polega na tym, że jeśli jestem administratorem i chcę zmienić uprawnienia do klucza, który ma Administrators jako CZYTANIE - powiedzą, że odmowa dostępu ... naprawdę denerwująca. Wypróbuję PowerShell i wrócę. System jest również czytany, więc nie można do tego użyć psexec.
lara400
1
@ lara400 Następnie musisz przejąć klucz na własność, zanim będziesz mógł przypisać writeuprawnienia. Nic na świecie nie pozwoli komuś, kto readdokonuje tylko modyfikacji. To przeczy celowi readACE. Sugeruję, aby otworzyć nowe pytanie z prośbą o przejęcie na własność klucza rejestru w PowerShell.
MDMarra,
4

Czy RegIni.exe spełnia twoje potrzeby? Możesz napisać skrypt RegIni, który zmienia uprawnienia, a następnie wywołać RegIni ze skryptem jako parametrem.

Na przykład, jeśli chcesz, aby tylko administratorzy mieli pełny dostęp do tego klucza, skrypt wyglądałby następująco:

HKEY_CLASSES_ROOT\CLSID{323CA680-C24D-4099-B94D-446DD2D7249E}\ShellFolder [1]

Chociaż prawdopodobnie chcesz również przyznać systemowi dostęp do klucza, a być może dostęp tylko do odczytu dla wszystkich innych, w takim przypadku sufiks bezpieczeństwa byłby

[1 8 17]

Numery sufiksów zabezpieczeń można znaleźć w tej tabeli:

1  - Administrators Full Access
2  - Administrators Read Access
3  - Administrators Read and Write Access
4  - Administrators Read, Write and Delete Access
5  - Creator Full Access
6  - Creator Read and Write Access
7  - World Full Access
8  - World Read Access
9  - World Read and Write Access
10 - World Read, Write and Delete Access
11 - Power Users Full Access
12 - Power Users Read and Write Access
13 - Power Users Read, Write and Delete Access
14 - System Operators Full Access
15 - System Operators Read and Write Access
16 - System Operators Read, Write and Delete Access
17 - System Full Access
18 - System Read and Write Access
19 - System Read Access
20 - Administrators Read, Write and Execute Access
21 - Interactive User Full Access
22 - Interactive User Read and Write Access
23 - Interactive User Read, Write and Delete Access

Jest rzeczą oczywistą, że powinieneś mieć dobrą kopię zapasową przed grą po raz pierwszy i być może ćwiczyć na fałszywym kluczu rejestru, aby uniknąć niefortunnych wypadków.

dsolimano
źródło