TL; DR - Jika Anda menginginkan waktu masuk yang paling akurat, Anda harus menanyakan lastLogon
atribut dari semua pengontrol domain. Jika toleransi ± 19 hari dapat diterima, maka Anda cukup membaca lastLogonTimestamp
dari pengontrol domain terdekat.
lastLogon
Atribut ini tidak direplikasi dan dikelola secara terpisah pada setiap pengontrol domain di domain. Untuk mendapatkan nilai yang akurat untuk logon terakhir pengguna di domain, atribut Log-Terakhir untuk pengguna harus diambil dari setiap pengontrol domain di domain. Nilai terbesar yang diambil adalah waktu masuk terakhir yang sebenarnya untuk pengguna itu.
https://docs.microsoft.com/en-us/windows/desktop/adschema/a-lastlogon#remarks
lastLogonTimestamp
Setiap kali pengguna log on, nilai atribut ini dibaca dari DC. Jika nilainya lebih lama [current_time - msDS-LogonTimeSyncInterval
], nilainya diperbarui. Pembaruan awal setelah kenaikan tingkat fungsional domain dihitung sebagai 14 hari dikurangi persentase acak 5 hari.
https://docs.microsoft.com/en-us/windows/desktop/adschema/a-lastlogontimestamp
Catatan:
- Kedua tanggal disimpan sebagai
FILETIME
( Int64
dalam. Net / PowerShell) jika Anda mengambilnya secara programatik.
- PowerShell juga menyediakan
LastLogonDate
properti. Saya lebih suka menyediakan dokumentasi khusus Microsoft untuk mengonfirmasi hal ini, tetapi sebagian besar sumber mengatakan dan pengujian saya mengonfirmasi bahwa itu lastLogonTimestamp
dikonversi ke DateTime
nilai l̲o̲c̲a̲l̲ .