Benutzer warnen, wenn er versucht, sich abzumelden

10

Ich möchte, dass sich ein bestimmter lokaler Benutzer nicht abmeldet. je. Es ist dieser dummen Frage sehr ähnlich , aber es ist mir nicht unbedingt wichtig, ob die Schaltflächen vorhanden sind. Ich möchte eine Meldungsbox mit der Aufschrift "Bitte nicht von der Konsole abmelden" mit einer Schaltfläche "OK" öffnen, die die Abmeldung dann abbricht Versuch. Kann dies in einem Abmeldeskript erfolgen?

Es gibt Gruppenrichtlinien zum Deaktivieren der Abmeldeschaltfläche im Startmenü und im Dialogfeld STRG-ALT-ENTF. Was ich jedoch möchte, ist eher http://msdn.microsoft.com/en-us/library/ms811998.aspx , das anscheinend nicht in Server 2008 R2 enthalten ist? Oder vermisse ich es?

Ich habe sogar versucht , die Abmeldeschaltfläche beim Start zu deaktivieren , aber es funktioniert nicht, wie Matt bei dieser ähnlichen Frage betont hat

Ist es möglich, ein Abmeldeskript zu erstellen, das einen Dialog anzeigt, in dem der Benutzer gewarnt wird, sich nicht abzumelden, und dann die Abmeldung abbricht?

Ich verstehe, dass dies ein dummes Bedürfnis ist - leider liegt es nicht in meiner Macht, es zu ändern oder zurückzudrängen. Ich habe diese Möglichkeiten ausgeschöpft. Fühlen Sie sich frei, eine Menge positive Stimmen zu einem Kommentar zu erhalten, der erklärt, dass dies wirklich ein dummer Plan ist, der offensichtlich ein Symptom vieler systemischer Probleme mildert, anstatt irgendetwas zu lösen. Ich verstehe voll und ganz, dass diese Vorgehensweise tatsächlich Probleme verursacht. Ich möchte, dass dies getan wird, damit ich mit diesem Vertrag fertig werde und nie wieder mit ihnen arbeiten kann.

dfstandish
quelle
18
Dies ist wirklich ein dummer Plan, der offensichtlich ein Symptom vieler systemischer Probleme mildert, anstatt irgendetwas zu lösen. Diese Vorgehensweise schafft tatsächlich Probleme. Seien Sie mit diesem Vertrag fertig und arbeiten Sie nie wieder mit ihnen.
Michael Hampton
1
Abgesehen davon, dass es eine dumme Sache ist, es zu versuchen und zu tun, ist es auch etwas, von dem andere Menschen nicht profitieren würden, wenn sie wissen, wie es geht. Es wird nur Probleme verursachen, also stimmen Sie ab, um zu schließen.
HostBits
3
Obwohl ich zustimme, dass es ein dummer Plan ist und ich das Motiv nicht kenne, kann ich sagen, dass ich von einer ähnlichen Lösung profitieren könnte. Wir müssen uns alle mit dummer Legacy-Software wie einem "Deamon" auseinandersetzen, der ein @ # $ @ # $ @ -Fenster in VB6 hat und nicht als Dienst ausgeführt wird, weil er alle Arten von Popup-Nachrichten enthält und Sie am Ende landen mit einem AuthoHotKey-Skript, das auf OK klickt, wenn sie auftauchen ... also wäre es nützlich, das Abmelden zu verhindern ...
ETL
1
@ MichaelHampton, Sie Sir, sind absolut richtig. Ich hätte hinzufügen sollen: "Ich möchte dies tun, damit ich bezahlt werde und dann nie wieder für sie arbeiten kann." Wie ETL betonte, gibt es da draußen alle Arten von Legacy-Bösartigkeit ... und wie Cheekaleak betonte, wird jede Antwort auf diese Frage zur Schlechtigkeit in der Welt beitragen. Trotzdem möchte ich das immer noch hacken und fertig sein.
dfstandish
Wo ist der Grundbedarf? Wenn es wie ich war und Sie einen Prozess / eine App benötigen, um als dieser Benutzer mit einer interaktiven Desktopsitzung ausgeführt zu werden, können Sie Firedaemon herunterladen und einen Dienst einrichten, der als dieser Benutzer für diese App mit Sitzung 0 ausgeführt wird.
TheCleaner

Antworten:

14

Wenn ich Gelegenheit dazu hatte, habe ich die Abmeldung (und das Herunterfahren / Neustarten) effektiv deaktiviert, indem ich drei Dinge getan habe.

  1. Verwenden Sie Gruppenrichtlinienobjekte oder lokale Sicherheitsrichtlinien (oder eine Registrierungseinstellung), um die über das Menü Ctrl+ Alt+ verfügbare Abmeldeoption zu entfernen Del.

    • Um die Option aus dem Menü Ctrl+ Alt+ zu entfernen Del, müssen Sie zu User Configuration-> Administrative Templates-> System-> navigieren Ctrl+Alt+Del Optionsund die Remove LogoffRichtlinie aktivieren .

  2. Verwenden Sie Gruppenrichtlinienobjekte oder lokale Sicherheitsrichtlinien (oder eine Registrierungseinstellung), um die verfügbaren Optionen für Abmeldung, Neustart und Herunterfahren zu konfigurieren, die über das Startmenü verfügbar sind.

    • Um das Standardverhalten von "Power Button" zu ändern, navigieren Sie zu User Configuration-> Administrative Templates-> Start Menu and Taskbarund aktivieren Sie die Change Start Menu power buttonRichtlinie.
      • Das Einstellen Lockist wahrscheinlich das, wonach Sie suchen.
    • Um die Schaltflächen Herunterfahren / Neustart / Ruhezustand / Ruhezustand aus dem Startmenü zu entfernen, müssen Sie zu User Configuration-> Administrative Templates-> navigieren Start Menu and Taskbarund die Option aktivierenRemove and prevent access to the Shut Down, Restart, Sleep and Hibernate command
    • Navigieren Sie zum Entfernen der Abmeldeoption zu User Configuration-> Administrative Templates-> Start Menu and Taskbarund aktivieren Sie die Remove Logoff on the Start MenuRichtlinie

  3. Ändern Sie die Berechtigungen für shutdown.exeund logoff.exe(danke, Ryan!), Damit kein Benutzerkonto sie ausführen kann. (Wenn Sie sich keine Sorgen über Benutzer machen müssen, die über shutdown.exeeine Befehlszeile ausgeführt werden, können Sie dies überspringen.)

    • (Normalerweise lasse ich ein Dienstkonto oder mein Backup-Administratorkonto mit Berechtigungen, damit ich es bei Bedarf mit minimalem Aufwand zurücksetzen kann.)
    • Standardmäßig ist es aktiviert, C:\Windows\systm32\und die Berechtigungen ermöglichen Benutzern und Administratoren das Lesen und Ausführen, behalten sich jedoch die volle Kontrolle für SYSTEMund vor Trusted Installer.
    • Trusted Installer ist auch der Eigentümer. Um die Berechtigungen zu ändern, müssen Sie den Eigentümer mit einem Administratorkonto übernehmen.

Sobald Sie mit all dem fertig sind, können Sie den Computer nicht mehr abmelden, neu starten, herunterfahren, in den Ruhezustand versetzen oder in den Ruhezustand versetzen, ohne sich ein wenig anstrengen zu müssen ... oder das Netzkabel abziehen zu müssen.

Jetzt sieht das Startmenü meines Servers wie im folgenden Bild aus (und beim Wechseln des Benutzers kann sich nur ein anderer Benutzer anmelden):

Geben Sie hier die Bildbeschreibung ein

Und das Ctrl+ Alt+ DelMenü sieht aus wie:

Geben Sie hier die Bildbeschreibung ein

HopelessN00b
quelle
3
Die geheime Sauce hier ist, dass Sie das Verhalten des "Netzschalters" ändern müssen - wenn Sie die Abmeldung nicht deaktivieren, hat dies keine Auswirkungen.
Thekbb
1
logoff.exe .....
Ryan Ries
4

Ich hätte es vorgezogen, dies als Kommentar hinzuzufügen, aber dank der Site-Richtlinien darf ich keinen Kommentar abgeben ...

In Bezug auf Abmeldeskripte weiß ich nicht, was getan werden kann. In einer C # Windows Forms-Anwendung können Sie sich jedoch für SystemEvents wie SessionSwitch und SessionEnding registrieren. Der letzte bietet sogar eine Cancel-Eigenschaft in den EventArgs. Eine solche .Net-Anwendung könnte in Ihrem Fall hilfreich sein, aber natürlich kann der Benutzer diese Anwendung zuerst schließen (oder über den TaskManager beenden) und sich dann trotzdem abmelden.

Übrigens: Ja, ich weiß, dass manchmal so dumme Dinge getan werden müssen: Es gibt Softwarefirmen, die Programme schreiben, die Windows-Dienste sein sollten, aber in einer interaktiven Sitzung mit einer grafischen Benutzeroberfläche ausgeführt werden ...

Bernhard Hiller
quelle
2
Ein kurzes Programm, das einen Dialog anzeigt und dann das Herunterfahren abbricht, würde funktionieren, aber es könnte auch vom Task-Manager beendet werden, was den Zweck zunichte machen könnte.
Michael Hampton