stollex

Benutzername des Users, der den shutdown (reboot) eines Servers initialisiert

Hallo,

ich suche nach einer Möglichkeit ein Script bei den
Gruppenrichtlinien->Computerkonfiguration->Windows-Einstellungen->Herunterfahren (w2k3) auszuführen,
welches mir den Benutzer angibt, der das Herunterfahren ( speziell den Reboot ) initiert hat.
Dieser Benutzername soll dann von einer anderen Anwendung weitevearbeitet werden.
Es sollte so funktionieren, das selbst wenn der reboot über einen Task ausgeführt wird, der Benutzer ausgegeben wird, unter dessen Rechten der Task gestartet wurde.

Ich hatte mir das mit einem einfachen Script vorgestellt.

echo %username% | anwendung.exe

Leider bekomme ich bei diesem Vorgehen nur "SYSTEM" als User.

Eine andere Herangehensweise war, bei Serverstart das komplette Ereignissprotokoll nach dem Wort "Neustart" zu scannen, allerdings führt dies zu einer Startverzögerung von 2-3 Minuten und war somit unpraktikabel.

Weitere Experimente mit dem "last logged on User" per WMI (Win32_LogonSession) brachten keine Lösung.

Hat noch jemand eine Idee?
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 185938

Url: https://administrator.de/forum/benutzername-des-users-der-den-shutdown-reboot-eines-servers-initialisiert-185938.html

Ausgedruckt am: 26.04.2025 um 16:04 Uhr

baldur
baldur 05.06.2012 um 10:10:22 Uhr
Goto Top
Hi.

Unter der EventID 1074 sieht man den User, der den Shutdown/Reboot tatsächlich durchführt.
Ist aber meist der SYSTEM-User...

Tip:
Um die Zeit der Herunterfahrens genauer zu finden (wenn Du kein Monitoring hast), suche nach EventID 6006. Die beschreibt das Herunterfahren des Eventlogs. Einer der letzten Dienste, die vor den Shutdown heruntergefahren werden

Gruss
stollex
stollex 05.06.2012 um 11:20:32 Uhr
Goto Top
Thx,
für die manuellen Reboots klappt das mit der Event ID super. Es erscheint tatsächlich der "echte" Nutzer.

Die Anwendung,die aufgerufen werden soll, soll unter anderem eine Datenbankverbindung herstellen (nicht lokal) und eine Mail auslösen. Bestehen zu diesem Zeitpunkt noch alle Netzverbindungen oder ist nur noch "lokales Arbeiten" möglich?
baldur
baldur 05.06.2012 um 13:29:45 Uhr
Goto Top
Ich meine, dass dort noch Netverbindung besteht.
Bei ID 6006 ist nur noch 'lokales' Arbeiten (und das nur ganz kurz face-smile möglich, da der Shutdown des Event-Dienstes so ziemlich der letzte Schritt ist.
stollex
stollex 05.06.2012 um 13:43:45 Uhr
Goto Top
Supi, dann werd ich meiner Anwendung beibringen, das sie Windows zwingen soll, auf ihre Abarbeitung zu warten :D
DerWoWusste
DerWoWusste 07.06.2012 um 00:39:54 Uhr
Goto Top
Hallo.
Eine andere Herangehensweise war, bei Serverstart das komplette Ereignissprotokoll nach dem Wort "Neustart" zu scannen, allerdings führt dies zu einer Startverzögerung von 2-3 Minuten und war somit unpraktikabel.
Nun, Du kannst die Suche ja auf die letzten Stunden oder den letzten Tag beschränken. Je nachdem, womit Du suchst, geht das per Parameter mit Sicherheit. dumpel.exe kann das beispielsweise.
stollex
stollex 07.06.2012 um 14:14:41 Uhr
Goto Top
Ich hatte meine Anfragen über WMI gemacht und dabei schon die Zeit beschränkt. Die Dauer kam von der reinen Abfrage des Ereignissprotokolls nicht aus dem eigentlichen Scanvorgang.

Ich werd's jetzt so versuchen, das mir bei jeder Abmeldung am Server der Benutzername in einer txt vermerkt wird.

Wenn es dann zum Event des Herunterfahrens kommt, wird einfach der Name aus der txt genommen und verarbeitet.

Mal schauen wies klappt.