PowerShell ile Active Directory de Olusturulan Kullanıcı Sayısı ve Detay Raporu (tr-TR)

%3CLINGO-SUB%20id%3D%22%5C%26quot%3Blingo-sub-3032414%5C%26quot%3B%22%20slang%3D%22%5C%26quot%3Ben-US%5C%26quot%3B%22%3EPowerShell%20ile%20Active%20Directory%20de%20Olusturulan%20Kullan%C4%B1c%C4%B1%20Say%C4%B1s%C4%B1%20ve%20Detay%20Raporu%20(tr-TR)%26lt%3B%5C%2Flingo-sub%26gt%3B%3CLINGO-BODY%20id%3D%22%5C%26quot%3Blingo-body-3032414%5C%26quot%3B%22%20slang%3D%22%5C%26quot%3Ben-US%5C%26quot%3B%22%3E%3CP%3EActive%20Directory%20Domain%20Services%20kullanan%20yap%C4%B1lar%C4%B1n%C4%B1z%20i%C3%A7in%20mevcut%20yap%C4%B1n%C4%B1zda%20bir%20SIEM%20sistemi%20kullanm%C4%B1yorsan%C4%B1z%20kendi%20raprolar%C4%B1n%C4%B1z%C4%B1%20PowerShell%20temelinde%20olu%C5%9Fturulan%20komut%20b%C3%BCt%C3%BCnleri%20yada%20scriptlerle%20i%C5%9F%20s%C3%BCre%C3%A7lerinizi%20raporlayabilirsiniz.%20Hatta%20ilgili%20komutlar%20i%C3%A7in%20g%C3%B6revler%20olu%C5%9Fturup%20raporlar%C4%B1%20d%C3%BCzenli%20olarak%20%C3%A7ekebilirsiniz.%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3EE%C4%9Fer%20bu%20makaleyi%20arama%20motorlar%C4%B1nda%20yapt%C4%B1%C4%9F%C4%B1n%C4%B1z%20taramalar%20sonucu%20bulduysan%C4%B1z%20i%C5%9Finizi%20%C3%A7%C3%B6zecek%20bir%20yaz%C4%B1%20olabilir.%20Bu%20makalenin%20temel%20amac%C4%B1%20AD%20DS%20%C3%BCzerine%20ekledi%C4%9Finiz%20yeni%20kullan%C4%B1c%C4%B1lar%C4%B1%20ve%20detaylar%C4%B1na%20ula%C5%9Fmak%20i%C3%A7in%20haz%C4%B1rlanm%C4%B1%C5%9Ft%C4%B1r.%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3ETemel%20komutumuz%20%22Get-ADUser%22%20komuta%20ait%20syntax%20alt%20yap%C4%B1s%C4%B1n%C4%B1n%20pratik%20kullan%C4%B1m%C4%B1%20i%C3%A7in%20a%C5%9Fa%C4%9F%C4%B1daki%20ad%C4%B1mlar%20amac%C4%B1n%C4%B1za%20ula%C5%9Ft%C4%B1racakt%C4%B1r.%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3E%C4%B0lk%20olarak%20AD%20DS%20yap%C4%B1m%C4%B1zda%20ka%C3%A7%20kullan%C4%B1c%C4%B1%20var%20onu%20%C3%B6%C4%9Frenelim.%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3CPRE%20class%3D%22%5C%26quot%3Blia-code-sample%22%20language-powershell%3D%22%22%3E%3CCODE%3E(get-aduser%20-filter%20*).count%26lt%3B%5C%2Fcode%26gt%3B%26lt%3B%5C%2Fpre%26gt%3B%3C%2FCODE%3E%3C%2FPRE%3E%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3EBu%20komutumuz%20%C3%A7%C4%B1kt%C4%B1s%C4%B1%20a%C5%9Fa%C4%9F%C4%B1daki%20gibi%20oalcakt%C4%B1r.%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3CPRE%20class%3D%22%5C%26quot%3Blia-code-sample%22%20language-powershell%3D%22%22%3E%3CCODE%3EPS%20C%3A%5C%5CUsers%5C%5Cemreozanmemis%26gt%3B%20(get-aduser%20-filter%20*).count%5Cn6%26lt%3B%5C%2Fcode%26gt%3B%26lt%3B%5C%2Fpre%26gt%3B%3C%2FCODE%3E%3C%2FPRE%3E%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3EAD%20DS%20%C3%BCzerinde%206%20adet%20kullan%C4%B1c%C4%B1m%C4%B1z%20oldu%C4%9Funu%20g%C3%B6r%C3%BCnt%C3%BCl%C3%BCyorum.%20Biraz%20daha%20detay%20ihtiyac%C4%B1nz%C4%B1%20var%20ise%20mesala%20kullan%C4%B1c%C4%B1n%C4%B1n%20aktiflik%20durumunu%20g%C3%B6r%C3%BCnt%C3%BClemek%20istersek%20filter%20olarak%20enabled%20opsiyonunu%20kullanal%C4%B1m.%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3CPRE%20class%3D%22%5C%26quot%3Blia-code-sample%22%20language-powershell%3D%22%22%3E%3CCODE%3EGet-ADUser%20-Filter%20*%20%7C%20fl%20name%2Cenabled%26lt%3B%5C%2Fcode%26gt%3B%26lt%3B%5C%2Fpre%26gt%3B%3C%2FCODE%3E%3C%2FPRE%3E%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3EKomut%20%C3%87%C4%B1kt%C4%B1s%C4%B1%3A%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3CPRE%20class%3D%22%5C%26quot%3Blia-code-sample%22%20language-powershell%3D%22%22%3E%3CCODE%3EPS%20C%3A%5C%5CUsers%5C%5Cemreozanmemis%26gt%3B%20Get-ADUser%20-Filter%20*%20%7C%20fl%20name%2Cenabled%5Cn%20%5Cn%20%5Cnname%20%20%20%20%3A%20emreozanmemis%5Cnenabled%20%3A%20True%5Cn%20%5Cnname%20%20%20%20%3A%20Guest%5Cnenabled%20%3A%20False%5Cn%20%5Cnname%20%20%20%20%3A%20krbtgt%5Cnenabled%20%3A%20False%5Cn%20%5Cnname%20%20%20%20%3A%20test%5Cnenabled%20%3A%20False%5Cn%20%5Cnname%20%20%20%20%3A%20testemre%5Cnenabled%20%3A%20True%5Cn%20%5Cnname%20%20%20%20%3A%20test2%5Cnenabled%20%3A%20True%26lt%3B%5C%2Fcode%26gt%3B%26lt%3B%5C%2Fpre%26gt%3B%3C%2FCODE%3E%3C%2FPRE%3E%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3E%C3%87%C4%B1kt%C4%B1m%C4%B1za%20g%C3%B6re%203%20kullan%C4%B1c%C4%B1m%C4%B1z%20aktif%2C%203%20kullan%C4%B1c%C4%B1m%C4%B1z%20ise%20aktif%20de%C4%9Fil%20%C5%9Feklinde%20g%C3%B6r%C3%BCnt%C3%BCl%C3%BCyorum.%20Bu%20tabi%20sizin%20AD%20DS%20yap%C4%B1n%C4%B1za%20g%C3%B6re%20ki%C5%9Fi%20say%C4%B1s%C4%B1na%20g%C3%B6re%20de%C4%9Fi%C5%9Fiklik%20g%C3%B6sterecektir.%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3EKomutumuzu%20biraz%20daha%20ileriye%20ta%C5%9F%C4%B1yal%C4%B1m%20ve%20bu%20%C3%A7%C4%B1kt%C4%B1r%C4%B1y%C4%B1%2030%20g%C3%BCn%20ile%20s%C4%B1n%C4%B1rl%C4%B1yal%C4%B1m.%20%C3%96rne%C4%9Fin%2030%20g%C3%BCn%20geriye%20d%C3%B6n%C3%BCk%20olu%C5%9Fturulan%20kullan%C4%B1c%C4%B1lar%C4%B1n%20listesini%20%C3%A7ekelim.%20Bunu%20ni%C3%A7in%20sadece%20bir%20zaman%20de%C4%9Fi%C5%9Fkeni%20tan%C4%B1mlay%C4%B1p%20bu%20de%C4%9Fi%C5%9Fkene%20geriye%20d%C3%B6n%C3%BCk%2030%20g%C3%BCn%20%C5%9Feklinde%20bir%20d%C3%BCzenleme%20yap%C4%B1yorum.%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3EZaman%20de%C4%9Fi%C5%9Fkeni%20tan%C4%B1mlamas%C4%B1%20i%C3%A7in%20a%C5%9Fa%C4%9F%C4%B1daki%20%C5%9Fekilde%20bir%20komut%20d%C3%BCzenliyorum.%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3CPRE%20class%3D%22%5C%26quot%3Blia-code-sample%22%20language-powershell%3D%22%22%3E%3CCODE%3E%24When%20%3D%20((Get-Date).AddDays(-30)).Date%26lt%3B%5C%2Fcode%26gt%3B%26lt%3B%5C%2Fpre%26gt%3B%3C%2FCODE%3E%3C%2FPRE%3E%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3EBu%20de%C4%9Fi%C5%9Fkeni%20%C5%9Fimdi%20%22Get-ADUser%22%20komutumuz%20ile%20birle%C5%9Ftirelim.%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3EKomut%20d%C3%BCzenimiz%20a%C5%9Fa%C4%9F%C4%B1daki%20%C5%9Fekilde%20haz%C4%B1r.%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3CPRE%20class%3D%22%5C%26quot%3Blia-code-sample%22%20language-powershell%3D%22%22%3E%3CCODE%3E%24When%20%3D%20((Get-Date).AddDays(-30)).Date%5CnGet-ADUser%20-Filter%20%7BwhenCreated%20-ge%20%24When%7D%20-Properties%20whenCreated%26lt%3B%5C%2Fcode%26gt%3B%26lt%3B%5C%2Fpre%26gt%3B%3C%2FCODE%3E%3C%2FPRE%3E%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3EKomut%20%C3%87%C4%B1kt%C4%B1s%C4%B1%3A%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3CPRE%20class%3D%22%5C%26quot%3Blia-code-sample%22%20language-powershell%3D%22%22%3E%3CCODE%3EPS%20C%3A%5C%5CUsers%5C%5Cemreozanmemis%26gt%3B%20Get-ADUser%20-Filter%20%7BwhenCreated%20-ge%20%24When%7D%20-Properties%20whenCreated%5Cn%20%5Cn%20%5CnDistinguishedName%20%3A%20CN%3Dtest2%2CCN%3DUsers%2CDC%3D1web1medya%2CDC%3Dcom%5CnEnabled%20%20%20%20%20%20%20%20%20%20%20%3A%20True%5CnGivenName%20%20%20%20%20%20%20%20%20%3A%20test2%5CnName%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3A%20test2%5CnObjectClass%20%20%20%20%20%20%20%3A%20user%5CnObjectGUID%20%20%20%20%20%20%20%20%3A%20a3853bd3-a800-40cf-b7aa-8537c78e62b4%5CnSamAccountName%20%20%20%20%3A%20test2%5CnSID%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3A%20S-1-5-21-1346884540-3007984453-3019941278-1112%5CnSurname%20%20%20%20%20%20%20%20%20%20%20%3A%5CnUserPrincipalName%20%3A%20test2%401web1medya.com%5CnwhenCreated%20%20%20%20%20%20%20%3A%2011%2F29%2F2021%207%3A11%3A08%20AM%26lt%3B%5C%2Fcode%26gt%3B%26lt%3B%5C%2Fpre%26gt%3B%3C%2FCODE%3E%3C%2FPRE%3E%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3E30%20g%C3%BCn%20i%C3%A7inde%20hangi%20kullanc%C4%B1lar%20a%C3%A7%C4%B1lm%C4%B1%C5%9F%2C%20hangi%20tarihde%20olu%C5%9Fturulmu%C5%9F%2C%20SAM%20bilgisi%20gibi%20%C3%B6zet%20bilgiyi%20g%C3%B6r%C3%BCnt%C3%BCl%C3%BCyoruz.%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3EAD%20DS%20y%C3%B6neticileri%20i%C3%A7in%20elinde%20olmas%C4%B1%20gereken%20bir%20komut%20b%C3%BCt%C3%BCn%C3%BC%20oldu%C4%9Funu%20d%C3%BC%C5%9F%C3%BCn%C3%BCyorum.%20Keyifli%20denemeler.%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%26lt%3B%5C%2FP%26gt%3B%26lt%3B%5C%2Flingo-body%26gt%3B%3CLINGO-LABS%20id%3D%22%5C%26quot%3Blingo-labs-3032414%5C%26quot%3B%22%20slang%3D%22%5C%26quot%3Ben-US%5C%26quot%3B%22%3E%3CLINGO-LABEL%3EPowerShell%26lt%3B%5C%2Flingo-label%26gt%3B%26lt%3B%5C%2Flingo-labs%26gt%3B%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3C%2FLINGO-SUB%3E
Contributor

Active Directory Domain Services kullanan yapılarınız için mevcut yapınızda bir SIEM sistemi kullanmıyorsanız kendi raprolarınızı PowerShell temelinde oluşturulan komut bütünleri yada scriptlerle iş süreçlerinizi raporlayabilirsiniz. Hatta ilgili komutlar için görevler oluşturup raporları düzenli olarak çekebilirsiniz.

 

Eğer bu makaleyi arama motorlarında yaptığınız taramalar sonucu bulduysanız işinizi çözecek bir yazı olabilir. Bu makalenin temel amacı AD DS üzerine eklediğiniz yeni kullanıcıları ve detaylarına ulaşmak için hazırlanmıştır.

 

Temel komutumuz "Get-ADUser" komuta ait syntax alt yapısının pratik kullanımı için aşağıdaki adımlar amacınıza ulaştıracaktır.

 

İlk olarak AD DS yapımızda kaç kullanıcı var onu öğrenelim.

 

 

(get-aduser -filter *).count

 

Bu komutumuz çıktısı aşağıdaki gibi oalcaktır.

 

PS C:\Users\emreozanmemis> (get-aduser -filter *).count
6

 

AD DS üzerinde 6 adet kullanıcımız olduğunu görüntülüyorum. Biraz daha detay ihtiyacınzı var ise mesala kullanıcının aktiflik durumunu görüntülemek istersek filter olarak enabled opsiyonunu kullanalım.

 

Get-ADUser -Filter * | fl name,enabled

 

Komut Çıktısı:

 

PS C:\Users\emreozanmemis> Get-ADUser -Filter * | fl name,enabled
 
 
name    : emreozanmemis
enabled : True
 
name    : Guest
enabled : False
 
name    : krbtgt
enabled : False
 
name    : test
enabled : False
 
name    : testemre
enabled : True
 
name    : test2
enabled : True

 

Çıktımıza göre 3 kullanıcımız aktif, 3 kullanıcımız ise aktif değil şeklinde görüntülüyorum. Bu tabi sizin AD DS yapınıza göre kişi sayısına göre değişiklik gösterecektir.

 

Komutumuzu biraz daha ileriye taşıyalım ve bu çıktırıyı 30 gün ile sınırlıyalım. Örneğin 30 gün geriye dönük oluşturulan kullanıcıların listesini çekelim. Bunu niçin sadece bir zaman değişkeni tanımlayıp bu değişkene geriye dönük 30 gün şeklinde bir düzenleme yapıyorum.

 

Zaman değişkeni tanımlaması için aşağıdaki şekilde bir komut düzenliyorum.

 

$When = ((Get-Date).AddDays(-30)).Date

 

Bu değişkeni şimdi "Get-ADUser" komutumuz ile birleştirelim.

Komut düzenimiz aşağıdaki şekilde hazır.

 

$When = ((Get-Date).AddDays(-30)).Date
Get-ADUser -Filter {whenCreated -ge $When} -Properties whenCreated

 

Komut Çıktısı:

 

PS C:\Users\emreozanmemis> Get-ADUser -Filter {whenCreated -ge $When} -Properties whenCreated
 
 
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
whenCreated       : 11/29/2021 7:11:08 AM

 

 

30 gün içinde hangi kullancılar açılmış, hangi tarihde oluşturulmuş, SAM bilgisi gibi özet bilgiyi görüntülüyoruz.

 

AD DS yöneticileri için elinde olması gereken bir komut bütünü olduğunu düşünüyorum. Keyifli denemeler.

 

 

 

0 Replies