Windows UAC per Registry/Batch konfigurieren

Das Windows-Feature „User Account Control“ (UAC), im deutschen Windows auch Benutzerkontensteuerung genannt, ist seit Windows Vista verbaut und sorgt für sichereres Rechtehandling beim Ausführen von Programmen. Im Hintergrund steckt außerdem ein Sandboxing-Prinzip, wodurch unterschiedliche Programme in unterschiedlichen Nutzer- und Rechtekontexten auf einem Desktop vereint zusammen arbeiten können.
Das Bild zeigt den Dialog der UAC beim Starten eines Programms mit Adminrechten
Die Benutzerkontensteuerung kann auf eine von vier unterschiedliche Stufen gestellt werden; eine davon entspricht der Deaktivierung, die anderen drei realisieren unterschiedliche Sicherheitsstufen.

Das Bild zeigt die Einstellungen der Benutzerkonstensteuerung (UAC)Im (vertrauensvollen) Unternehmenseinsatz ist eine auf Stufe 1 gestellte UAC sinnvoll, damit administrative Aufgaben auch direkt aus der Anmeldung eines eingeschränkten Nutzers per Eingabe von Admin-Daten möglich ist. Diese lässt sich beispielsweise mit Batch und Registry konfigurieren und im Windows AD verteilen, hier der Code:

@echo off & Color 9f & setlocal

set wd=\\server\Deployment\Sonstiges\activate-uac
set log=%wd%\activate-uac-log.txt
set uacconfig=99

REM Clientfilter: nur die Computer aus der allowedPCs.txt dürfen installieren
::for /f %%f in (%wd%\allowedPCs.txt) do if "%computername%"=="%%f" goto check
::goto end

REM Clientfilter: die Computer aus der deniedPCs.txt dürfen nicht installieren
for /f %%f in (%wd%\deniedPCs.txt) do if "%computername%"=="%%f" goto end

reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v EnableLUA /t REG_DWORD /d 1 /f
set uacconfig=%errorlevel%
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v ConsentPromptBehaviorAdmin /t REG_DWORD /d 5 /f
set uacconfig=%uacconfig%%errorlevel%
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v ConsentPromptBehaviorUser /t REG_DWORD /d 3 /f
set uacconfig=%uacconfig%%errorlevel%
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v PromptOnSecureDesktop /t REG_DWORD /d 0 /f
set uacconfig=%uacconfig%%errorlevel%

echo %date% %time:~0,8% - %computername% hat UAC Settings übernommen: %uacconfig% >> %log%

:end
endlocal

Die unterschiedlichen Werte der einzelnen Registry-Eigenschaften könnt ihr hier übersichtlich nachlesen. Es gibt noch weitere Punkte der UAC, die über die Registry gesteuert werden können.
PS: Das Konzept hinter der UAC ist äußerst komplex und es macht u.U. Spaß, sich als fortgeschrittener Windows-Nutzer darin einzulesen.

via, via

Schreibe einen Kommentar