crischi94
Goto Top

Programm-Instanz von anderen Benutzer übernehmen

Hallo zusammen,

wieder einmal stehe ich vor einer simpel erscheinenden Frage, die aber wahrscheinlich ziemlich schwierig sein wird.

Ich betreibe Zuhause privat einen kleinen Server (Windows Server 2008 R1 Datacenter). Auf diesem läuft unter Anderem auch ein AD (ich weiß, das ist ein bisschen überzogen für ein privates Umfeld, aber es hat sich noch nichts von selbst gelernt ;)
Die Bedienung erfolgt auch per RemoteDesktop, weshalb sich mehrere Familienmitglieder gleichzeitig auf dem Server anmelden können.

Wenn jetzt z.B. mein Bruder ein Programm startet, wird es ja auf seinen Namen ausgeführt. Damit das auch so bleibt, muss er ja auch angemeldet bleiben. Das ist kleines Problem, wenn dieses Programm einen Dienst darstellt, den der Server bereitstellt und andere diesen noch nutzen wollen, wenn er sich abmeldet. Im Nebeneffekt kann ich ja nicht mal das ausgeführte Programm einsehen z.B. die Ausgabe der Log im Konsolenfenster.
Gibt es also eine Möglichkeit, dass in diesem Fall mein Bruder das laufende Programm an mich geben kann, sodass ich es weiter verwalten und die Ausgabe einsehen kann und es weiter läuft, wenn mein Bruder sich abmeldet? Das wäre sehr hilfreich.

Falls es notwendig zu wissen ist:
Mein Bruder hat die Rolle Benutzer
Und ich habe die Rolle Administrator

Mit freundlichen Grüßen
Christian

Content-Key: 301298

Url: https://administrator.de/contentid/301298

Printed on: May 9, 2024 at 18:05 o'clock

Member: agowa338
agowa338 Apr 09, 2016 updated at 01:04:02 (UTC)
Goto Top
wenn dieses Programm einen Dienst darstellt, den der Server bereitstellt und andere diesen noch nutzen wollen, wenn er sich abmeldet
Dann must du das ganze auch als Dienst konfigurieren, nur das Konsolen Fenster wirst du dann nicht mehr sehen...

1. Einen Dienste Benutzer einrichten, der Zugriff auf die Erforderlichen Netzwerk Ressourcen hat.
2. Powershell als Administrator Starten und den Dienst anlegen
New-Service -BinaryPathName "C:\Program Files\Hersteller\Program\service.exe" -Name "Program" -Credential $(Get-Credential) -Description "Dienst für die Benutzung von Program" -DisplayName "Program" -StartType [System.ServiceProcess.ServiceStartMode]"Automatic"  
Nun ist es egal, ob und wenn ja, welcher Benutzer angemeldet ist.
Member: Crischi94
Crischi94 Apr 09, 2016 at 02:24:04 (UTC)
Goto Top
Hallo agowa338,

danke für deine schnelle Antwort!

Vielleicht haben wir ein bisschen aneinander vorbei geredet? (NICHT böse gemeint!) Oder denke ich das nur?
Ich meinte mit Dienst nicht, dass das Programm als Dienst auf dem Server ausgeführt werden soll. Ich wollte damit sagen, dass eine Server-Funktion darstellt, mit der Clients sich verbinden können. Es ist quasi eine Java-Jar, die via Doppelklick auf einer bat gestaret wird. Die Interaktion mit diesem Programm läuft dann in der Kommandozeile (also ich kann dort sehen, was passiert, als auch diverse Befehle eingeben). Dieses Programm hört dann einen bestimmten Port ab und Clients können sich damit verbinden. Das heißt auch, dass ich die Kommandozeile brauche (zum Überwachen und Interagieren).
Nach Möglichkeit sollte das Ganze benutzbar bleiben. Mein Bruder z.B. hat so vel Ahnung von Servern, dass er weiß, dass der Desktop aussieht, wie auf seinem PC und, dass der Startbutton unten links ist (deshalbist er auch nur Benutzer und kein Admin). Außer es geht nicht anders, natürlich.

Mit freundlichen Grüßen
Christian
Member: Lochkartenstanzer
Lochkartenstanzer Apr 09, 2016 at 07:15:38 (UTC)
Goto Top
Moin,

Mach doch einfach eine gemeinsamen Benutzer für diese Programm. dann könnt Ihr euch unter diesem benutzer anmelden udn rtrotzdem muß keiner den Zugriff des anderen auf seinen eigenen Account erlauben.

lks
Member: Crischi94
Crischi94 Apr 11, 2016 at 03:51:10 (UTC)
Goto Top
Hallo Lochkartenstanzer,

danke für diesen Tipp. Klar, einfacher geht es tatsächlich nicht mehr; wieso bin ich da nicht selber drauf gekommen?
Das werde ich wahrscheinlich dann so machen.

Kleine Erweiterung:
Kann ich dann nicht theoretisch eine Verknüpfung erstellen und allen auf den Desktop / ins Startmenü legen, mit der das dann direkt immer als ein anderer Benutzer ausgeführt wird?
Bzw. wenn ich es als anderer Benutzer ausführe, wird dieser dann behalten, wenn es andere öffnet? Also wenn ich mit der Verknüpfung eine BAT starte, die mit call drei weitere starte und diese drei BATs dann jeweils eine Java-Anwendung starten.
Wäre nur eine kleine Schönheits-Sache, aber schön, wenn das so auch ginge.

Mit freundlichen Grüßen
Christian