Dsquery Kullanıcının Son Oturum Açmasını Al
dsquery komut satırı aracı, LDAP sorgusunu kullanarak, belirtilen arama kriterlerine göre aktif dizindeki nesneleri bulmak için kullanılır.
Kullanıcının aktif dizindeki bilgisayarda son oturum açmasını sağlamak için dsquery'yi filter parametresiyle birlikte kullanın.
Son oturum açma zaman damgası, kullanıcının etki alanında en son oturum açtığı zamandır. Kullanıcının son oturum açma zaman damgası değeri, Etki Alanı denetleyicisinde (DC) büyük bir tamsayı olarak depolanır. Bu tarih zaman damgası değeri, 1 Ocak 1601'den (UTC) bu yana 100 nanosaniyelik aralıkların sayısını temsil eder.
Kullanıcının son oturum açma ve son oturum açma zaman damgasını almak üzere -filter parametresini belirtmek için LDAP arama filtresi biçimindeki LDAP sorgusunu kullanın.
Bu eğitimde, PowerShell'de kullanıcının son oturum açma ve son oturum açma zaman damgasını almak için dsquery'yi nasıl kullanacağımızı öğreneceğiz.
Kullanıcının son oturum açmasını sağlamak için dsquery kullanma
Arama kriterlerine göre aktif dizindeki nesneleri ve bunların lastlogon ve lastlogontimestamp gibi niteliklerini bulmak için dsquery komut satırı aracını kullanın.
dsquery * -filter "samaccountname=admin" -attr samaccountname lastlogonYukarıdaki sorguda kullanıcının bilgisayara son oturum açmasını sağlamak için filtre parametresinde arama kriterlerini "samaccountname=admin" olarak belirledik.
dsquery * komutunu kullanarak, lastlogon kullanıcısını bulur ve öznitelik adını görüntülemek için -attr parametresini kullanarak, samaccountname ve user lastlogon özniteliklerini görüntüler.
Kullanıcının son oturum açma bilgisini almak için yukarıdaki dsquery'nin çıktısı şöyledir:
Kullanıcı etki alanına giriş yaptığında, son oturum açma değerini insanların okuyabileceği bir formatta değil, büyük bir tamsayı olarak saklıyordu.
Lastlogon'u tarihe dönüştürmek için, Ağ Zaman Protokolü (NTP) saatini okunabilir bir biçime dönüştüren /ntte ile w32tm.exe aracını kullandık.
Harika İpucu: Active Directory'de lastlogon ve lastlogontimestamp arasındaki fark!
Dsquery'yi kullanarak kullanıcı lastlogontimestamp'ı bulun
Etki Alanı Denetleyicisi (DC), kullanıcı etki alanında oturum açtığında kullanıcının lastlogontimestamp öznitelik değerini kontrol eder. LastLogonTimestamp değeri, değeri önceki değerden 14 gün veya daha eskiyse varsayılan olarak çoğaltılır.
Dsquery komut satırı aracını kullanarak kullanıcının lastlogontimestamp niteliğini alabiliriz.
dsquery * -filter "samaccountname=admin" -attr samaccountname lastlogon lastlogontimestamp
Yukarıdaki PowerShell betiğinde dsquery, kullanıcıyı aramak ve samaccountname, lastlogon ve user lastlogontimestamp gibi öznitelik listelerini almak için arama kriterlerini belirtmek üzere bir filtre parametresi kullanır.
Dsquery'yi kullanarak lastlogontimestamp kullanıcısını bulmak için yukarıdaki sorgunun çıktısı şöyledir:
PS C:\Windows\system32> dsquery * -filter "samaccountname=admin" -attr samaccountname lastlogon lastlogontimestamp
samaccountname lastlogon lastlogontimestamp
admin 132970610281096251 132968489843663168Lastlogontimestamp kullanıcısını DateTime'a (insan tarafından okunabilir biçim) dönüştürmek için w32tm.exe komut satırı aracını /ntte parametresiyle birlikte kullanın.
PS C:\Windows\system32> w32tm.exe /ntte 132970610281096251
153901 04:03:48.1096251 - 5/15/2022 4:03:48 AM
PS C:\Windows\system32> w32tm.exe /ntte 132968489843663168
153898 17:09:44.3663168 - 5/12/2022 5:09:44 PMÇözüm
Kullanıcının lastlogon'unu ve user lastlogontimestamp'ını almak için dsquery'nin nasıl kullanılacağına ilişkin yukarıdaki makalenin size yardımcı olacağını umuyorum.
Lastlogon ve lastlogontimestamp'ı tarih biçimine (insan tarafından okunabilir biçim) dönüştürmek için w32tm.exe /ntte komut satırı aracını kullanın.
PowerShell Active Directory komutları ve PowerShell temelleri hakkında daha fazla konuyu ShellGeek ana sayfasında bulabilirsiniz.
