0815newby 0 Geschrieben 29. Juni 2017 Melden Geschrieben 29. Juni 2017 Hallo, ich versuche in einem Powershell-Skript die CMD mit Administratorrechten zu starten. Leider konnte ich bisher keine funktionierenden Lösungen finden. Aktuell rufe ich die cmd, wie folgt auf: $1 ="$PFAD -U USER -P PW -L $PFAD\$DB" $2 = [scriptblock]::Create("cmd /c '$1'") .$3 *> $PFAD/$DB.log Der Befehl benötigt allerdings Admin-Rechte. Jemand ne Idee? LG
BOfH_666 586 Geschrieben 29. Juni 2017 Melden Geschrieben 29. Juni 2017 (bearbeitet) Wozu startest Du denn aus einem Befehlsinterpreter (Powershell-Konsole) einen weiteren Befehlsinterpreter (CMD-Konsole)? Die Powershell-Konsole kann ganz wunderbar andere Tools starten ... da brauchst Du keine CMD mehr. Wenn Du die Powershell dann mit erhöhten Rechten startest, läuft auch das darin gestartete Tool mit Adminrechten. Meines Wissens gibt es aber keine einfache und trotzdem sichere Methode, einem PoweshellSkript oder einer Batch-Datei die nötigen Credentials für eine Rechteerhöhung mitzugeben. bearbeitet 29. Juni 2017 von BOfH_666
mwiederkehr 395 Geschrieben 29. Juni 2017 Melden Geschrieben 29. Juni 2017 Eine Möglichkeit ist AutoIt (https://www.autoitscript.com/site/autoit/downloads/). Dessen Scripte lassen sich mit Aut2Exe kompilieren. Damit kann der Benutzer das Passwort nicht einfach mit einem Texteditor auslesen. Wirklich sicher ist das natürlich trotzdem nicht, da man mit einem Debugger trotzdem an das Passwort kommt. Hier ein Beispielscript: start() Func start() ; diese Werte anpassen Local $sUserName = "administrator" Local $sPassword = "geheim" Local $sDomain = @ComputerName Local $sProgram = "C:\programm.exe" Local $iPID = RunAs($sUserName, $sDomain, $sPassword, 1, $sProgram) EndFunc
daabm 1.428 Geschrieben 30. Juni 2017 Melden Geschrieben 30. Juni 2017 Da braucht man kein AutoIt.... -Verb RunAs geht auch bei PowerShell Start-Process ganz gut :)
Beste Lösung MurdocX 1.002 Geschrieben 1. Juli 2017 Beste Lösung Melden Geschrieben 1. Juli 2017 Hallo, ich versuche in einem Powershell-Skript die CMD mit Administratorrechten zu starten. Leider konnte ich bisher keine funktionierenden Lösungen finden. Aktuell rufe ich die cmd, wie folgt auf: $1 ="$PFAD -U USER -P PW -L $PFAD\$DB" $2 = [scriptblock]::Create("cmd /c '$1'") .$3 *> $PFAD/$DB.log Der Befehl benötigt allerdings Admin-Rechte. Jemand ne Idee? LG Technet | PowerShell: Running Executables https://social.technet.microsoft.com/wiki/contents/articles/7703.powershell-running-executables.aspx Dort sind alle gängigen Wege Anwendungen auszuführen aufgelistet und gut beschrieben.
BOfH_666 586 Geschrieben 3. Juli 2017 Melden Geschrieben 3. Juli 2017 hmmm .... ich hätte es ja jetzt noch interessant gefunden, zu erfahren, für welche Lösung Du Dich entschieden hast .... ;)
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden