Situation
Ein Windows Dienst läuft als SYSTEM im Hintergrund.
Der Dienst soll in einer aktiven Benutzersitzung eine Applikation starten.
Diese Applikation soll mit den Rechten eines dritten Benutzers gestartet werden.
Beteiligte
SYSTEM: Der Dienst ist standardmässig installiert ohne jegliche Spezialkonfiguration
Benutzer A: Angemeldet mit einer eigenen Windows Sitzung. Seine SessionID wird verwendet um darin eine Applikation unter dem Benutzer B zu starten.
Benutzer B: Wird mit
LogonUser
CreateProcessAsUser
Aktueller Stand
Ich habe eine Funktion geschrieben welche eine Applikation in der Benutzersitzung starten kann.
Diese erwartet Parameter wie: applicationName, commandline und die impersonation Informationen.
Was läuft?
Der Start einer Applikation aus einem Dienst heraus in eine laufende Benutzersitzung. Die Applikation läuft unter dem SYSTEM Konto oder unter dem gleichen Konto wie der angemeldete Benutzer.
Was geht nicht?
Der Start einer Applikation aus einem Dienst heraus in eine laufende Benutzersitzung. Die Applikation läuft unter einem weiteren Benutzerkonto.
Der aktuelle Code liegt im Anhang.
Vielen Dank für Eure Hilfe!