PowerShell Kullanarak AD'de Süresi Dolmuş Kullanıcı Hesaplarının Listesini Alın


İlk olarak Temmuz 2017'de yayınlandı ve Ağustos 2019'da güncellendi

PowerShell ile Süresi Dolmuş Kullanıcı Hesaplarının Listesini Alma

Bir Active Directory yöneticisinin gerçekleştirdiği en önemli görevlerden biri, süresi dolmuş kullanıcı hesaplarının zamanında rapor edilmesini ve bunların derhal kaldırılması veya devre dışı bırakılması için gerekli önlemlerin alınmasını sağlamaktır. Son kullanma tarihi belirlediğiniz kullanıcı hesaplarının yalnızca geçici olarak oluşturulduğunu unutmayın. Örneğin, satıcıların Active Directory'de oturum açmasına izin vermek için birkaç kullanıcı hesabı oluşturmuş olabilirsiniz. Benzer şekilde yükleniciler için kullanıcı hesapları oluşturmuş olabilirsiniz. Hangi hesapların süresinin dolduğunu görmek istiyorsanız aşağıdaki PowerShell komutunu yürütün:

Search-ADAccount -Server $ThisDomain -Credential $Creds -AccountExpired -UsersOnly -ResultPageSize 2000 -resultSetSize $null| Select-Object Name, SamAccountName, DistinguishedName

Search-ADAccount PowerShell cmdlet'inin bu kez farklı bir anahtarla tekrar kullanıldığına dikkat edin. Kullandığımız anahtar Hesabın Süresi Doldu. Adından da anlaşılacağı gibi Hesabın Süresi Doldu anahtarı, süresi dolmuş kullanıcı hesaplarını toplamanıza yardımcı olur.

PowerShell Kullanarak Hesabın Son Kullanma Tarihini Alma

Active Directory'nizdeki tüm etkin kullanıcılar için AD hesabının son kullanma tarihini almak üzere -AccountExpirationDate özelliğine sahip Get-ADUser cmdlet'ini kullanabilirsiniz. Windows Sunucunuzdaki PowerShell ISE'de aşağıdaki betiği çalıştırın:

Get-ADUser -Filter 'enabled -eq $true' -Properties AccountExpirationDate | Select sAMAccountName, distinguishedName, AccountExpirationDate

AD kullanıcılarınızın tam listesi için son kullanma tarihi ve saatini alacaksınız.

Belirli bir grup için özete ihtiyacınız varsa -SearchBase parametresini ekleyerek komut dosyasını değiştirmeniz gerekir. |export-csv -NoTypeInformation ekleyerek verileri .csv dosyasına aktarabilirsiniz (örneğin, Excel'e aktarmak veya metin düzenleyicide açmak için).

Enterprise.com etki alanının “BT” organizasyon birimi için hesap son kullanma tarihlerinin listesini dışa aktarmamız gerektiğini varsayalım, DC'de uygulayacağımız ifade aşağıdaki gibi olacaktır:

Get-ADUser -Filter 'enabled -eq $true' -Searchbase "OU=IT,DC=enterprise,DC=com" -Properties AccountExpirationDate | Select SAMAccountName, distinguishedName, AccountExpirationDate |export-csv C:TempExpiryDate.csv -NoTypeInformation

Özetlemek gerekirse, minimum düzeyde Microsoft Powershell komut dosyası yazma becerisiyle Search-ADAaccount, Get-ADUser ile birleştiğinde birçok geçici AD temizleme ve analiz görevini çözmenize yardımcı olabilir.

Active Directory için daha fazla PowerShell betiğine mi ihtiyacınız var? Active Directory için en çok aranan PowerShell komutlarının tümünü tek bir blog yayınında bulun.

İlgili makaleler