Registry: Berechtigungen per Script manipulieren

Gestern haben wir Berechtigungen von Registry Schlüsseln noch manuell geändert. Heute soll das mit einem Script passieren, da das einige Vorteile hat!

Ich habe dafür als Grundlage ein Script von „Decrypt My World“ genommen:

set-registry-acl.vbs (Rechtsklick -> (Link) Speichern unter) (ggf. Endung von .txt in .vbs umbenennen)
vb“ line=“1″>
‚ Create temp file with the script that regini.exe will use
set oFSO = CreateObject(„Scripting.FileSystemObject“)
strFileName = oFSO.GetTempName
set oFile = oFSO.CreateTextFile(strFileName)
oFile.WriteLine „HKEY_LOCAL_MACHINE\SOFTWARE\der\Pfad\zum\Schlüssel [1 5 7 17 22]“
oFile.Close

‚ Change registry permissions with regini.exe
set oShell = CreateObject(„WScript.Shell“)
oShell.Run „regini “ & strFileName, 8, true

‚ Delete temp file
oFSO.DeleteFile strFileName

WScript.Echo „Done!“

Wichtig ist Zeile 5. An dieser Stelle wird der Schlüssel angegeben und die Rechte, die vergeben werden sollen.
Schlüssel ist klar, einfach in regedit Rechtsklick -> Schlüsselnamen kopieren und hier einfügen.
Die Rechte werden getrennt mit Leerzeichen in eckigen Klammern angegeben, Reihenfolge spielt keine Rolle. Die Zahlenlegende ist folgende:

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

Möglich wären also auch mehrere Zeilen mit unterschiedlichen Rechten in unterschiedlichen Registry Hives:
vb“>
oFile.WriteLine „HKEY_LOCAL_MACHINE\SOFTWARE\7-Zip [1 7 5 17 23]“
oFile.WriteLine „HKEY_LOCAL_MACHINE\SOFTWARE\ATI Technologies\Install [3 8 18 21]“
oFile.WriteLine „HKEY_CURRENT_USER\Software\Dropbox [1 5 7 17 22]“
oFile.WriteLine „HKEY_CURRENT_USER\Software\MAGIX AG\MAGIX Video deluxe 16 Plus [21 8 18]“

Schreibe einen Kommentar