PowerShell ile login olan veya hiç login olmayan kullancı raporu (tr-TR)

Steel Contributor

Active Directory bulunan yapılarınızda login olan kullanıcılarınızın en son ne zaman login olduğunu yada hiç login olmayan kullanıcılarınızın raprou için PowerShell ile bir kaç komut yapısını syntaxlarını kullanarak erişebilir ve raprolayabilrisiniz.

 

Bu raporları görevlendirilmiş zamanlar tanımlayıp komutları geliştirip standart haline getirebilisiniz.

 

Temel komutumuz "Get-ADUser" ve syntaxına belirleyeceğimiz komut bütünleri ile sağlayacağız.

 

İlk olarak belli bir kullanıcı için login olduğu zamanı kontrol edelim. Örneğin AD DS yapımızda bulunan "emre ozan memis" kullanıcı için işlem gerçekleştirelim.

 

Komut bütünümüz aşağıdaki gibidir. (username yazan bölüme ilgili kullanıcı ismini yazarak o kullanıcını en zaman login olduğunu görebilirsiniz.)

 

 

Get-ADUser -Identity "username" -Properties "LastLogonDate"

 

 

Örnek Komut ve çıktısı:

 

 

PS C:\Users\emreozanmemis> Get-ADUser -Identity "emreozanmemis" -Properties "LastLogonDate"


DistinguishedName : CN=emreozanmemis,CN=Users,DC=1web1medya,DC=com
Enabled           : True
GivenName         :
LastLogonDate     : 11/29/2021 7:07:40 AM
Name              : emreozanmemis
ObjectClass       : user
ObjectGUID        : 170c2ded-c737-4457-87e6-37f282c53eb4
SamAccountName    : emreozanmemis
SID               : S-1-5-21-1346884540-3007984453-3019941278-500
Surname           :
UserPrincipalName :

 

 

emre ozan memis kullanıcısı 29/11/2021 tarihinde login olduğunu görüntülüyorum.

 

Başka bir kullanıcı için daha deneyelim. örneğin "emre" kullanıcısı için ne zaman login olmuş bakalım.

 

 

 

PS C:\Users\emreozanmemis> Get-ADUser -Identity "emre" -Properties "LastLogonDate"


DistinguishedName : CN=testemre,CN=Users,DC=1web1medya,DC=com
Enabled           : True
GivenName         : testemre
LastLogonDate     :
Name              : testemre
ObjectClass       : user
ObjectGUID        : 26e11b8f-ee01-4983-ace7-2879de3af9ea
SamAccountName    : emre
SID               : S-1-5-21-1346884540-3007984453-3019941278-1107
Surname           :
UserPrincipalName : emre@1web1medya.com

 

 

emre kullanıcısı last logon bölümü boş geldi muhtemelen bu kullanıcı hiç login olmamış demektir. Doğrulamak için hiç login olmayan kullanıcıların bir listesini çekelim. Bu rapor için yine "Get-ADUser" komutunun syntax kullanarak  komut bütünü hazılıyoruz. kullancıları ve  son login bilgisine sahip olacak komutumuz aşağıdaki gibidir.

 

 

 

Get-ADUser -LDAPFilter "(&(&(objectCategory=person)(objectClass=user)(!isCriticalSystemObject=TRUE))(|(lastLogon=0)(!(lastLogon=*))))"

 

 

Örnek Komut ve çıktısı:

 

 

PS C:\Users\emreozanmemis> Get-ADUser -LDAPFilter "(&(&(objectCategory=person)(objectClass=user)(!isCriticalSystemObject=TRUE))(|(lastLogon=0)(!(lastLogon=*))))"


DistinguishedName : CN=testemre,CN=Users,DC=1web1medya,DC=com
Enabled           : True
GivenName         : testemre
Name              : testemre
ObjectClass       : user
ObjectGUID        : 26e11b8f-ee01-4983-ace7-2879de3af9ea
SamAccountName    : emre
SID               : S-1-5-21-1346884540-3007984453-3019941278-1107
Surname           :
UserPrincipalName : emre@1web1medya.com

DistinguishedName : CN=test2,CN=Users,DC=1web1medya,DC=com
Enabled           : True
GivenName         : test2
Name              : test2
ObjectClass       : user
ObjectGUID        : a3853bd3-a800-40cf-b7aa-8537c78e62b4
SamAccountName    : test2
SID               : S-1-5-21-1346884540-3007984453-3019941278-1112
Surname           :
UserPrincipalName : test2@1web1medya.com



PS C:\Users\emreozanmemis>

 

 

emre kullanıcısının hiç login olmadığını görüyorum ayrıca test2 kullanıcı adına sahip kullanıcımız da hiç login olmadığı bilgisini bu rapor ile almış oluyoruz.

 

Bu raporları export edebilir yada üst bölümde de belirttiğim üzere düzenli hale getirip zamanlanmış görev olarak tanımlayabilrisiniz.Export etmek yada işi bir tık daha ileri taşıyarak mail attırmak için aşağıdaki makaleler komutu geliştirmeniz için faydalı olabilir.

 

PowerShell ile CSV, HTML veya XML olarak cikti almak (tr-TR)

target=_blanktarget=_blankhttps://social.technet.microsoft.com/wiki/contents/articles/52944.powershe...

 

PowerShell ile Outlook APP kullanarak mail gonderme (tr-TR)

target=_blanktarget=_blankhttps://social.technet.microsoft.com/wiki/contents/articles/53973.powershe...

 

0 Replies