3 Stimmen

Wie verhindert man, dass der Benutzer das Systemdatum/-uhrzeit ändert (unter Windows 7)?

Nachdem ich gegoogelt habe, lautet der allgemeine Rat, ein Standardbenutzerkonto zu erstellen.

Das habe ich gerade versucht. Ich hatte nur ein Konto, meins, das Administratorrechte hatte, und dann ein zweites erstellt (nicht das Gastkonto). Ich habe mich von meinem eigenen Konto abgemeldet und mich in das neue eingeloggt und versucht, die Zeit zu ändern. Windows 7 öffnete ein Dialogfeld, in dem gefragt wurde, ob mein Hauptkonto dies zulassen würde (und nach dem Passwort gefragt wurde).

Mir wurde gesagt, "es soll nicht möglich sein, das Systemdatum/-zeit zu ändern". Ich hatte vor, einen PC nur mit einem Standardkonto und meiner Software zu übergeben, aber kann (glaube ich) nicht verhindern, dass der Benutzer ein Administratorkonto erstellt und das Datum/die Zeit ändert.

Kann ich das programmgesteuert von Delphi aus verhindern, oder muss ich einfach sagen, dass ich es nicht verhindern kann, wenn der Benutzer destruktiv sein möchte?

11voto

RRUZ Punkte 132753

Im Allgemeinen werden diese Arten von Einschränkungen mit der Windows-Gruppenrichtlinie festgelegt

Bildbeschreibung hier eingeben

Von Delphi aus können Sie die Gruppenrichtlinien-API oder die RSoP WMI-Klassen verwenden.

4voto

Justmade Punkte 1496

In Ihrer Anwendung können Sie tatsächlich erkennen, wenn der Benutzer die Systemzeit ändert, während Ihre Anwendung läuft.

Sie erhalten WM_TIMECHANGE, wenn sich die Systemzeit ändert.

Beim Start können Sie den gettickcount (als StartTickCount) und die aktuelle Zeit (als StartTime) speichern. Beim Überprüfen können Sie überprüfen, ob der Unterschied zwischen tickcount und der Differenz zwischen den Zeiten übereinstimmt (eine kleine Abweichung zulassen) und den Unterschied kennen. Wenn der Benutzer jedoch die Systemzeit außerhalb Ihrer Anwendung ändert, funktioniert dieser Trick nicht. Möglicherweise können Sie einen Dienst haben, der automatisch nach diesem überprüft.

Wenn Sie zur ursprünglichen Zeit zurückkehren müssen, hier sind einige Ressourcen: Ändern Sie die Systemzeit

Übrigens kann ein normaler Benutzer auf OS-Ebene keinen Admin-Benutzer erstellen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X