Befehlszeilenargument für die Ausführung als anderer Benutzer unter Windows?

9

Wenn Sie im Windows MSI-Installationsprogramm eine benutzerdefinierte Aktion angeben, die zur Installationszeit einer Anwendung ausgeführt werden soll, wird sie unter dem Benutzer "SYSTEM" ausgeführt. Kann ich es austricksen, indem ich einen Befehlszeilenparameter an die benutzerdefinierte Aktion (EXE-Datei) übergebe und sie unter dem aktuell angemeldeten Benutzer ausführen lasse ?

Kellogs
quelle

Antworten:

14

Suchst du danach?

RUNAS

Execute a program under a different user account.

Syntax
      RUNAS [/profile] [/env] [/netonly] /user:user Program

Key
   /profile   Option to load the user's profile (registry)
   /env       Use current environment instead of user's.
   /netonly   Use the credentials specified only for remote connections.
   /user      Username in form USER@DOMAIN or DOMAIN\USER
              (USER@DOMAIN is not compatible with /netonly)
   Program    The command to execute

Geben Sie das Passwort ein, wenn Sie dazu aufgefordert werden.

Wenn Sie ein Programm mit starten RunAs /netonly, wird das Programm auf Ihrem lokalen Computer als der Benutzer ausgeführt, als den Sie gerade angemeldet sind. Alle Verbindungen zu anderen Computern im Netzwerk werden jedoch über das angegebene Benutzerkonto hergestellt.

Ohne /netonlyalles läuft unter dem angegebenen Benutzerkonto.

Stanley Williams
quelle
Ich glaube, 'Runas' ist ein Shell-Befehl. Ich brauche den Befehl 'myexe.exe', gefolgt von einem Argument, das dazu führen würde, dass er unter verschiedenen Anmeldeinformationen ausgeführt wird. Irgendwelche anderen Hinweise?
Kellogs
1
Jeder Modifikator, der nach dem Befehl kommt, muss in das Programm eingebaut werden. Ein Beispiel ist iexplore.exe / k. Dies öffnet den Internet Explorer im Kioskmodus und ist in die ausführbare Datei integriert. Es sei denn, Sie schreiben ein Skript, das den Shell-Befehl mit dem Programm ausführt, wenn Sie dem Skript einen Modifikator wie myscript.bat übergeben, der myfile.exe normal ausführt, aber myscript.bat / einen anderen, der myfile.exe über den Shell-Befehl als anderen Benutzer ausführt.
Stanley Williams
Du hast recht. Ich denke, es führt kein Weg daran vorbei. Vielen Dank
Kellogs
sehr dumm @kellogs offensichtlich kann man nicht sagen, dass es keinen Weg daran vorbei gibt. In der Tat gibt es definitiv einen Weg, um es zu umgehen. Ich habe einmal ein Skript ausgeführt, das Runas ausgeführt und ein Kennwort geschrieben hat, und es gibt ein Programm, das eine versteckte Cmd-Shell ausführt. Es ist also theoretisch als kombinierte Lösung möglich. Das Programm, das versteckte Dinge ausführt,
barlop
3

Im Verknüpfungszielbereich:

C:\Windows\System32\runas.exe /profile /user:COMPUTERNAME_04\administrator C:\totalcmd\TOTALCMD64.EXE
Robbot
quelle
-2

Wenn Sie eine andere Anwendung als Administrator öffnen möchten, gehen Sie wie folgt vor: Halten Sie die Umschalttaste gedrückt und klicken Sie mit der rechten Maustaste auf die Anwendung. Daraufhin wird die Option "Als anderer Benutzer ausführen" angezeigt.

Navneet
quelle
Ich denke, das OP möchte, dass das Programm als ein anderer Benutzer ausgeführt wird (z. B. der Administrator, dies geschieht wie von Ihnen vorgeschlagen) und dass das Programm dann einen anderen Befehl / ein anderes Programm aufruft, das als der ursprüngliche Benutzer ausgeführt wird. Sie beantworten also eine Frage, die nicht gestellt wird.
Tim