enableLUA: Windows Script -Benutzerkontensteuerung

Unterschied Windows 2000 / XP zu Windows Vista / 7 / 8 / 10

Ein Administrator Benutzer unter Windows Vista / 7 / 8 / 10 hat bei eingeschalteter Benutzerkontensteuerung nur normale Benutzerrechte, der Benutzer hat aber die Möglichkeit mehr Rechte von einem Programm anzufordern.
Programme verhalten sich mit eingeschalteter Benutzerkontensteuerung so, als w√ľrden sie unter einem normalen Benutzer-Kontext ausgef√ľhrt werden. Programme k√∂nnen sich, wenn vorgesehen, selbst mehr Rechte verschaffen, sie m√ľssen den Benutzer allerdings um Erlaubnis fragen:

Download
Der Vorgang bei dem einem Skript bzw. Programm mehr Rechte verliehen werden nennt man "Elevation". 
Das Skript / Programm bekommt durch diesen Vorgang wirkliche Administratorrechte verliehen, dabei ist kein Kennwort erforderlich: Der Benutzer muss die Warnung nur bestätigen.

Um ein Skript / Programm mit wirklichen Administratorrechten ausf√ľhren zu k√∂nnen, gibt es mehrere M√∂glichkeiten:
Bei .exe Dateien gen√ľgt ein einfacher "Rechtsklick" auf die Datei und:
"Als Administrator ausf√ľhren"¬†¬†¬† Download
Hintergrund:
Mit Hilfe des cmd-Befehles whoami /ALL /FO List
wird ersichtlich, dass bei einem richtigen Administratoruser (cmd wurde mit "Als Administrator ausf√ľhren" gestartet) s√§mtliche Berechtigungsinformationen deaktiviert sind, bei normalem Aufruf des Befehles in der cmd sind diese Einschr√§nkungen aktiv.

Skripts mit Zugriff auf ein Netzlaufwerk:

Mal angenommen ein Skript greift auf ein Netzlaufwerk zu und das Netzlaufwerk wurde mit eingeschalteter UAC vom Benutzer verbunden.
Wird das Skript jetzt mit "Als Administrator ausf√ľhren" gestartet, kann es nicht mehr auf die Netzwerkressource zugreifen, da das Netzlaufwerk ja unter dem normalen Benutzerkontext verbunden wurde.¬†

Elevation PowerToys for Windows Vista / 7

Bei VBScripts geht "Elevation" beispielsweise nur √ľber Umwege ("Als Administrator ausf√ľhren" ist nicht verf√ľgbar)
Eine Möglichkeit VBSkript Dateien oder andere Skripts mit eingeschalteter UAC mehr Rechte zu verleihen, bieten die Elevation PowerToys for Windows Vista:
technet.microsoft.com/en-us/magazine/2008.06.elevation.aspx 
Durch das Installieren der Elevation PowerToys for Windows Vista erscheint beim Rechtsklick auf die vbscript-Datei ein neuer Eintrag: "Run as Administrator"    Download

UAC deaktivieren

Eine andere Möglichkeit ist es die Benutzerkontensteuerung (UAC) einfach abzuschalten:
Entweder in "Systemsteuerung", "Benutzerkonten", "Einstellungen der Benutzerkontensteuerung ändern" den Schieber auf "Nie benachrichtigen",Download
oder in der Registrierung: regedit:
unter HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableLUA auf 0 (im Suchfeld: regedit eingeben, zu dem gew√ľnschten Key navigieren und die √Ąnderung eintragen)
Der Wert kann auch mit einem cmd-Befehl gesetzt werden:
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v "EnableLUA" /t "REG_DWORD" /d "0" /f
(kann in einer Batch Datei verwendet werden, alles zum Thema Batch / cmd findest du hier:  Windows Batch )
Bei dem "reg add" Befehl ist wieder zu beachten, dass die Batchdatei von Haus aus nicht die Rechte hat um den Wert in die Registrierung zu schreiben.
Eine M√∂glichkeit der Datei die Rechte zu verleihen ist wieder: "Als Administrator ausf√ľhren". Dies kann direkt auf die .cmd Datei gemacht werden, oder die Eingabeaufforderung wird mit "Als Administrator ausf√ľhren" gestartet und anschlie√üend der Befehl eingegeben.

TweakUAC

UAC kann auch mit dem Tool TweakUAC ausgeschaltet werden:
TweakUAC macht genau das Selbe wie die Windows interne Funktion: "Einstellungen f√ľr Benutzerkontensteuerung"¬†¬†¬† Download
siehe:  www.tweak-uac.com

Damit der Computer √Ąnderungen an der UAC √ľbernimmt (egal mit welchem Tool diese¬†¬†gesetzt wurden), muss er neu gestartet werden.
Ist die UAC einmal deaktiviert, k√∂nnen Dateien und Skripte wieder wie von Windows 2000 / XP gewohnt ausgef√ľhrt werden. (ist nat√ľrlich ein Sicherheitsrisiko, deshalb sollte die UAC normalerweise nicht ausgeschaltet werden)

AutoIt

AutoIt Skripts k√∂nnen dazu gezwungen werden den wirklichen Administrator zu laden (sieht dann √§hnlich wie das oben angef√ľhrte Beispiel mit "regedit" aus: der Benutzer wird um Erlaubnis gefragt ("Run as Administrator" kann also nicht vergessen werden)
Befehlszeile: #RequireAdmin
Bespielsweise Abschalten der UAC per AutoIt:
#RequireAdmin
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System", "EnableLUA", "REG_DWORD", "0")
mehr zum Thema AutoIt:  AutoIt3 , hilfreich ev. auch der  AutoIT Online Compiler

Unattended oder Silent Installation bei eingeschalteter UAC mittels Gruppenrichtlinie

Aufgaben bei denen der Benutzer nicht merken soll, dass an seinem Rechner per Skript √Ąnderungen vorgenommen werden, gestalten sich mit eingeschalteter UAC f√ľrs¬†Erste¬†eher schwierig.
Ein möglicher Ansatz ist folgender:
Mittels gpedit.msc kann beim Starten des Rechners ein Skript ausgef√ľhrt werden, welche die UAC komplett ignorieren (das Skript wird dann beim Hochfahren des Rechners gestartet und l√§uft im Hintergrund, auch wenn sich der Benutzer bereits angemeldet hat)
Einzustellen unter: "Computerkonfiguration" "Windows-Einstellungen" "Skripts" "Starten":    Download
Das Starten des Skriptes ist dann in der Registrierung unter: HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\Scripts\Startup\x\x\ ... hinterlegt.
Um in diesen Teil der Registrierung schreiben zu können, benötigen wir aber wieder die Zustimmung des Benutzers (bei eingeschalteter UAC).
Ohne Zustimmung geht es, wenn wir die Gruppenrichtlinie am Domaincontroller eintragen. (Gruppenrichtlinienverwaltung)
Zu ber√ľcksichtigen: wenn das Skript auf einem Netzlaufwerk liegt, muss der Computer auch ohne Authentifizierung Zugriff auf den Share (Netzwerkfreigabe) haben. M√∂glich w√§re auch ein am Rechner abgelegtes Skript (c: ..) welches mit Hilfe von net use eine Freigabe verbindet und dann das Skript auf dem Share startet. (Grunds√§tzlich ist das Netzwerk beim Starten des Rechners schon verf√ľgbar; Freigaberechte in einer Dom√§ne beispielsweise: lesen f√ľr Domain Computers, dann k√∂nnen User mit dem Share f√ľrs 1te so ohne weiteres nichts anfangen)

UAC f√ľr bestimmte Anwendungen deaktivieren

Mit Hilfe der "Microsoft Application Compatibility Toolkits"

ist es auch möglich bestimmten Anwendungen die Erlaubnis zu erteilen ohne UAC zu laufen.  

  Download  

Au√üerdem kann mit Hilfe des "Microsoft Application Compatibility Toolkits" f√ľr bestimmte Programme der Kompatiblit√§tsmodus voreingestellt werden
siehe auch: www.microsoft.com/Downloads/details.aspx?familyid=24DA89E9-B581-47B0-B45E-492DD6DA2971&displaylang=en 

positive Bewertung({{pro_count}})
Beitrag bewerten:
{{percentage}} % positiv
negative Bewertung({{con_count}})

DANKE f√ľr deine Bewertung!

Aktualisiert: 28.07.2020 von Bernhard |ūüĒĒ


Top-Artikel in diesem Bereich


MS-SQL Joins erklärt: Inner-, Outer-, Left-, Right- Join; Union

Mit Hilfe von Joins k√∂nnen Daten in SQL von einer oder mehrer Tabellen zusammengef√ľgt werden. Joins werden in der Praxis oft mit anderen Abfragen (Queries) kombiniert: Zum Beispiel werden meist f√ľr die Auswahl von Daten nicht, wie hier verwendet, ein "select * from", sondern die jeweiligen Spalten ausgew√§hlt: "select spalte1,spalte2 from", bzw. k√∂nnen die Joins nat√ľrlich mit "where" oder anderen Queries kombiniert oder verschachtelt werden,¬† siehe¬†SQL Quer...



msi-Pakete erstellen Freeware MakeMsi How To

schnell mal ein msi-Paket selbst gebaut: in diesem Beispiel zeigen wir anhand von makemsi und einem sehr einfachen Beispiel, wie schnell und ohne Vorkenntnisse ein msi Paket erstellt werden kann.


Fragen / Kommentare


(sortiert nach Bewertung / Datum) [alle Kommentare(neueste zuerst)]

‚úćanonym
21.03.2020 15:45
User: Fragensteller 
Gut erklärt, aber was passiert wenn man enableLUA aus regedit löscht ?

‚úćanonym
03.07.2012 06:29
User: Raymond 
@Pe:
  F√ľr deine Zwecke solltest du eher ein Windows Installation Image (WIM) erstellen. Dazu installierst du EIN mal das Betriebssystem inklusive aller Treiber, Programme, Einstellungen und allem, was du gern immer so h√§ttest. Wenn du davon dann das Image abziehst (geht √ľbrigens auch mit FOG), kannst du dieses Image an alle kompatiblen Rechner verteilen und hast dann sofort alles wie gew√ľnscht. Eine vollst√§ndig unbeaufsichtigte (unattended) Installation ben√∂tigt dann noch eine autounattend.xml
  
  Gruß
  Ray

‚úćanonym
02.05.2012 10:20
User: Pe 
Ist schon älter ich weiss..
  Ich m√∂chte eine unbeaufsichtigte Win7 Installations-CD erstellen, wo direkt nach dem Win Setup einige Programme die man ja immer ben√∂tigt installiert werden sollen. Z.B. Firefox. Das klappt soweit auch ganz gut. Habe die Firefox-Installationsdatei auf "ff.exe" umbenannt und dann folgenden Befehl eingegeben: "ff.exe /s" die Installation vom Feuerfuchs klappt einwandfrei, nur muss ich vorab die UAC(?) bejahen. Dat nervt nat√ľrlich bei einer unbeaufsichtigten Installation von Windows....
  habt ihr da eine Idee?

‚úćanonym
19.11.2010 14:20
User: Horst Schlmer 
Test unter Windows 7: Das Skript funktioniert aber vergesst nicht das #RequireAdmin ;). Windows fragt dann aber nach dem Benutzernamen bzw. Passwort. F√ľr euer Skript solltet Ihr noch eine Pr√ľfung einbauen, ob der Rechner tats√§chlich nach der Deaktivierung neugestartet wurde! (Vollst√§ndige Deaktivieurng = Nach Reboot).

‚úćanonym
18.11.2010 13:01
User: Horst Schlmer 
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System", "EnableLUA", "REG_DWORD", "1")
  
  Soll wohl 0 heißen ;)
↳
‚úćBernhard
gepostet am 18.11.2010 13:01
danke, hab ich ausgebessert

Beitrag erstellt von Bernhard

‚úćanonym
04.05.2010 12:38
User: alf 
√ɬľbersichtlich und einpr√ɬ§gsam dargestellt

‚úćanonym
09.11.2009 06:17
User: hans 
typo: der Befehl muß "whoami" heißen, nicht whiami :)
↳
‚úćBernhard
gepostet am 09.11.2009 06:17
danke hab ich ausgebessert

Beitrag erstellt von Bernhard

‚úćanonym
15.10.2009 18:25
User: theo 
sehr gute Zusammenfassung, leicht verständlich.