2017-04-04 2 views
0

Ich versuche, notepad.exe als Benutzer "blain" zu laufen. Daher möchte ich den Befehl runas /u:blain notepad.exe in der Eingabeaufforderung verwenden, die wie erwartet funktioniert und zur Eingabe des Benutzerkennworts auffordert. Ich möchte es automatisieren, also nehme ich an, echo pass| runas /u:blain notepad.exe, angenommen das Passwort von blain ist "pass".echo cmd | Befehl funktioniert nicht richtig

Egal, was ich ersetzen passieren mit dem Befehl immer wieder:

C:\Users\blain>echo pass| runas /u:blain notepad.exe 
Enter the password for blain: 
Attempting to start notepad.exe as user "BLAINE-WIN-10\blain" ... 
RUNAS ERROR: Unable to run - notepad.exe 
1326: The user name or password is incorrect. 

Eine interessante Sache ist zu beachten, dass die Nachricht eingeben sofort nach dem Drücken erscheint. Wenn ich das Passwort falsch manuell eingegeben habe, dauert es ~ 2 Sekunden, um mir zu sagen, dass es falsch ist (mit derselben Fehlermeldung).

Antwort

1

Sie können nicht über die Pipeline zu runas, speziell dies nicht zulassen.

https://blogs.msdn.microsoft.com/oldnewthing/20041129-00/?p=37183

Sie könnten versuchen, wenn etwas ähnliches in VBScript oder Powershell tun, wenn das eine Option?

Ein VBScript Option wäre, die Schlüssel für die Konsolen-Eingabeaufforderung zu senden, würde das Passwort hat, obwohl im Klartext gespeichert werden:

Set WshShell = WScript.CreateObject("WScript.Shell") 
WshShell.Run "cmd /c runas /user:domain\user program.exe" 
WScript.Sleep 500 
WshShell.SendKeys "password" 
WshShell.SendKeys "{ENTER}" 

ein Powershell-Version, wird es hält die Benutzer auffordert, bis sie bekommen es richtig (speichern Sie als .ps1, rechts klicken Sie auf die Datei und klicken Sie auf Run mit Powershell):

+0

bummer ... Mein Anwendungsfall hängt davon ab, in der Lage sein, ein Passwort zu pipen. Es ist eine unsichere Methode, aber was ich tun möchte, ist eine leere Textdatei erstellen, wenn der Benutzer ihr korrektes Passwort eingegeben hat – Blaine

+0

@Blaine Ich werde sehen, ob ich mit einer VB-Lösung kommen kann, geben Sie mir ein paar Minuten ... –

+0

Okay. Ich habe dich zu einem Chat eingeladen, wenn du möchtest, dass ich dir die gesamte Hintergrundgeschichte/Requirements gebe (ein bisschen zu lange, um hier zu posten) – Blaine