Batch Programm als Admin installieren
#1
geschrieben 07. August 2014 - 09:12
ich würde gerne mit einer Batch ein MSI File als Administrator starten.
Die Batch soll allerdings nur als Hauptbenutzer aufgerufen werden (keine Adminrechte).
Gibt es also eine Möglichkeit irgendwie das Admin Passwort in der Batch zu hinterlegen?
Anzeige
#2
geschrieben 07. August 2014 - 11:28
runas /user:[domäne oder Computername]/[benutzer mit adminrechten] [passwort im klartext][laufwerk]:\[Pfad]\[Dateiname].msi
Prozessor: AMD Phenom FX 8350
RAM: 2x 8GB GEIL (1600 MHz)
Board: ASUS CROSSHAIR V FORMULA-Z
Grafik: ASUS ROG MATRIX-R9290X-P-4GD5
Soundkarte: ASUS ROG Xonar Phoebus
Netzteil: BeQuiet Dark Power 750W 80+ Gold
Gehäuse: BitFinex Ghost
Eingabe: Logitech G19, Logitech G700, XBox 360 Wireless Controller
Sound: Logitech Z-5500, Logitech G930
#3
geschrieben 09. August 2014 - 19:38
Zitat (lingo: 07. August 2014 - 11:28)
Das wird nicht funktionieren, Runas fragt immer nach einem Passwort. (Siehe hier)
Du kannst in der Batch Datei den Benutzer überprüfen und bei ungenügend Rechten einfach beenden, aber sonst glaube ich nicht dass du irgendwas tun kannst ausser sie manuell als Administrator auszuführen.
#4 _d4rkn3ss4ev3r_
geschrieben 09. August 2014 - 21:07
Der "Hauptbenutzer" hat Adminrechte - ab Vista per UAC Bestätigung.
@aeris: Das ist falsch. Man kann sehr wohl eine CMD als Admin per Befehl ausführen. Meine CMD kann das auch.
Edit: Wenn der TE nun sagt mit welchen Rechten er genau das Script starten soll, kann man ihn weiterhelfen.
Dieser Beitrag wurde von d4rkn3ss4ev3r bearbeitet: 09. August 2014 - 21:08
#5
geschrieben 09. August 2014 - 21:21
Außerdem möchte ich meinen findet sich in der MSI-Dokumentation bestimmt etwas, was man msiexec mitgeben kann, damit der mit dem Analog von INSTALLELEVATED=TRUE werkeln kann.
Wobei sich mir das, um das einfach mal nur anzumerken, nicht gänzlich erschließt (außer natürlich, man möchte es bequem haben). Denn wenn man das Admin-PW hinterlegt, kann man es natürlich auch in der Batchdatei auslesen - wenn man die Leseberechtigung hat. Ist also ein Sicherheitsrisiko.
(Für die Powershell müßt ich grad passen - der PW-String ist dort standardmäßig unumkehrbar verschlüsselt, sodaß man diesen also problemlos irgendwo speichern und wieder einlesen KÖNNTE; aber ich bin grad nicht sicher, ob das überhaupt geht und wie man das ggf. bewerkstelligen könnte.)
Dieser Beitrag wurde von RalphS bearbeitet: 09. August 2014 - 21:23
#6
geschrieben 09. August 2014 - 21:34
erst mal danke für die Antworten
kurze Erklärung was ich machen will:
Auf ca. 1000 PCs fehlt ein Programm das nachinstalliert werden muss. (Keine Domäne)
(Ich möchte es aber nicht Manuel nachinstallieren.)
Wenn sich ein Teilnehmer auf dem PC anmeldet (Nur Hauptbenutzerrechte) wird die Verknüpfung einer Batch ausgeführt die auf einem Samba Server liegt. (Für die Verbindung von Netzlaufwerken).
Jetzt würde ich gerne die Installation von dem Programm mit dieser Batch erledigen.
Habe ein MSI File erstellt das nur ausgeführt gehört das ist also kein Problem.
Allerdings braucht man eben Admin Rechte das heißt das MSI File muss mit Armenrechte ausgeführt werden.
#7 _d4rkn3ss4ev3r_
geschrieben 09. August 2014 - 23:13
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs" echo UAC.ShellExecute "%~s0", "admin", "", "runas", 1 >> "%temp%\getadmin.vbs" "%temp%\getadmin.vbs"
#8
geschrieben 09. August 2014 - 23:37
Mh.
Wenn man die MSI ohne GUI installieren kann, also vollautomatisch und ohne Benutzerinteraktion, müßte das doch *eigentlich* im Computer-Kontext gehen?
Wobei sich da die Katze in den Schwanz beißt. Du müßtest Adminrechte haben, um dem System zu erklären, daß es mit Adminrechten was installieren soll.
In der Workgroup...
... Um ehrlich zu sein, was groß anderes als "jeden Benutzer das lokale Adminpaßwort eingeben lassen" fällt mir da grad auch nicht ein.
Immerhin ist das eine einfache Workgroup. Da ist A != A.
Okay, in eine Batchdatei stecken würde zumindest potentiell gehen. Dann müßte diese aber sofort nach Ausführung wieder gelöscht werden - am besten ohne auf ein Return von MSIEXEC zu warten.
... Ganz ehrlich? 1000 PCs in der Workgroup würde ich jetzt nicht freiwillig administrieren wollen...
Dieser Beitrag wurde von RalphS bearbeitet: 09. August 2014 - 23:40
#9
geschrieben 10. August 2014 - 07:15
Zitat (RalphS: 09. August 2014 - 23:37)
Jopp da ist Chaos vorprogrammiert...
Aber einen Ansatz hätten mer da noch. Man bräuchte im Grunde "nur" herausfinden was genau der Windows-Server bei "verteilten Installationen" macht und dies Nachbilden. wobei "nur" absichtlich mit Anführungszeichen geschrieben wurde.
#10
geschrieben 10. August 2014 - 08:14
#11
geschrieben 10. August 2014 - 08:26
Also betrifft das Problem "nur" 400 PCs
Das die User das Admin PW ganz einfach auslesen können ist mir schon klar.
Aber wenn ich die Batch in eine exe umwandle ist das schon nicht mehr so einfach
#12
geschrieben 10. August 2014 - 09:20
#13
geschrieben 10. August 2014 - 11:06
Falls ja, einfach abwarten bis die alle drin sind. Dann via GPO im Computer-Kontext ausrollen. NB - die MSI *darf* dann keine Benutzerinteraktion erfordern, sonst funktioniert das nicht.
Alles andere... erfordert Turnschuhadministration - oder das (potentielle) Bekanntmachen des Admin-PW. Ohne Domain kann man da ja ohne Turnschuhing auch kein dediziertes Installkonto anlegen...