Es gibt für diesen Zweck im AD ein Attribut namens „lastLogon“, in dem die Zeit des letzten erfolgreichen Anmeldevorgangs gespeichert ist. Leider allerdings wird dieses Attribut nicht zwischen den Domänencontrollern repliziert. Man muss es also auf allen DCs einer Domäne prüfen.
Um diesen Vorgang zu erleichtern, gibt es eine ganze Reihe von Werkzeugen. Beispielhaft seien hier vier genannt:
- http://www.rlmueller.net/Last%20Logon.htm – unkommerziell, ein VBS-Script (*)
- http://www.tools4ever.com/products/utilities/reallastlogon/ – performanter, dafür aber auch nicht ganz kostenlos
- DumpSec von SystemTools (Achtung – hier weiß ich nicht, ob der „real last logon“ ausgelesen wird!)
- PasswordAge von SystemTools (Achtung – hier weiß ich nicht, ob der „real last logon“ ausgelesen wird!)
… und wenn jemand das letzte Anmeldedatum eines Computers herausfinden will: Dazu muss man in dem o.g. Skript von R. L. Mueller nur die Objektklasse ändern. Man ersetze diese Zeile:
strFilter = "(&(objectCategory=person)(objectClass=user))"
durch diese:
strFilter = "(&(objectCategory=computer)(objectClass=user))"
Leichter mit Windows 2003
Wie so viele Dinge ist auch dieses Problem mit Windows 2003 leichter zu lösen. Die Scripting Guys (von Microsofts TechNet) haben eine ausführliche (und unterhaltsame) Kolumne dazu geschrieben:
http://www.microsoft.com/technet/scriptcenter/topics/win2003/lastlogon.mspx
http://faq-o-matic.net/?p=508