hannibalsmith
Goto Top

LDAP AD Login-Statistik

Hallo zusammen,

gibt es eine Möglichkeit auf Windows Server 2019 die Logins von Nutzern zu tracken?
Ziel:
- Erzeugung einer Anzeige aller aktuell eingeloggten Domänenbenutzer
- Erzeugung einer Statistik von Uhrzeit und Anzahl Nutzer

Am liebsten wäre mir hierbei eine API, auf welche ich via z.B. AJAX zugreifen kann.
Falls das nicht per default möglich ist wäre ich bereit eine entsprechende API zu entwickeln.
Gibt es irgendeinen best practice wie ich am besten auf solche LDAP-Events zugreife um diese dann zu verarbeiten (in diesem Fall in eine Datenbank zu schreiben)?
Danke!

Content-Key: 611187

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

Printed on: April 28, 2024 at 16:04 o'clock

Member: emeriks
emeriks Oct 08, 2020, updated at Oct 09, 2020 at 06:34:00 (UTC)
Goto Top
Hi,
weil es meines Wissens kein Logout-Event gibt, kannst Du das so erstmal vergessen.
Im AD wird zwar gespeichert, wann der Benutzer das letzte Mal irgendwo angemeldet wurde, aber das sagt nicht aus, ob diese Anmeldung interaktiv war oder nicht, ob es eine Desktopsitzung auf einem Client oder z.B. eine SMB-Sitzung auf einem Fileserver war. Usw. Weiterhin kann es sein, dass die Anmeldung am AD auch in einer durchgängig laufenden interaktiven Sitzung immer mal wieder erfolgt, weil z.B. irgendwelche Anwendungen aus dieser Desktopsitzung das immer mal wieder tun.

Was Du machen könntest und kein Hexenwerk ist:
Per GPO Login- und Logout-Scripte laufen lassen, welche irgendwo protokollieren, dass sich ein Benutzer interaktiv an einer Sitzung an- oder abgemeldet hat.
Oder Du könntest permanent von allen laufenden Computern die gerade angemeldeten Sitzungen abfragen und das irgendwo protokollieren. Wenn Du dann eine Sitzung nicht mehr "wiederfindest", dann kannst Du davon ausgehen, dass der Benutzer da abgemeldet wurde. Dafür müsstest Du Dir für jede Sitzung irgendein Flag setzen, damit Du diese zweifelsfrei wiedererkennen kannst.
Oder so ähnlich.

E.

Edit:
Oder Du schreibst Dir in .Net einen Dienst, welchen Du auf allen Computern laufen lässt. Und dieser wertet dann die Sitzungen aus. Aber auch dabei musst Du an alles in Frage kommende denken: Desktopsitzungen, Fileserversitzungen, Exchange, SQL Server, Drittanbieter (z.B. LDAP-Anbindungen der diversen Linux Systeme) und und und

Edit 2:
Ich habe gerade mal geschaut: Es gibt jetzt auch ein AD Attribut "LastSuccessfulInteractiveLogonTime".
z.B. Hier beschrieben: https://www.active-directory-faq.de/2012/01/lastlogontimestamp-vs-msds-l ...
Aber eben kein Logout.
Member: LeeX01
LeeX01 Oct 08, 2020 at 16:14:05 (UTC)
Goto Top
Hi,

wie emeriks schon sagt nicht ganz einfach. Die Logins findest du als Ereignisse in den Security Protokollen der DCs. Um zu wissen ob die Sitzung noch aktiv ist musst du dann die Sessions an den Computern abfragen. Und dann gibts da natürlich noch Unmengen an Sonderfällen, Stolpersteinen usw., zum Beispiel wenn ein Mitarbeiter sein Notebook in den Besprechungsraum mitnimmt und nicht ans Netz verbindet. Und zu guter letzt ist da dann noch der Datenschutz den du klären solltest...

Grüße
Member: Xaero1982
Xaero1982 Oct 08, 2020 at 19:37:13 (UTC)
Goto Top
Nabend,

rechtlich sei noch angemerkt: Wenn es um eine Firma geht ist es schlicht und ergreifend verboten.

Grüße