Active Directory Grup Üyeleri Export İşlemi
- Samet Eroğlu
- 19 Nis 2020
- 1 dakikada okunur
Aşağıda ki script ile AD üzerinde ki gruplarda tanımlı kullanıcılar CSV dosyasına export edilebilir ve grup üye takibi daha sağlıklı gerçekleştirilebilir.
#// Script'i başlatalım #// Dışa aktarılacak Csv için Yıl ve Ay baz alınabilir $DateTime = Get-Date -f "yyyy-MM" #// Oluşturulacak CSV için kayıt edilecek dizin ve dosya adı belirtilir $CSVFile = "C:\AD_Groups"+$DateTime+".csv" #// CSV verileri için emy dizini oluşturma $CSVOutput = @() #// Tüm AD Grup üyelerini getir $ADGroups = Get-ADGroup -Filter * #// İlerleme çubuğu değişkenleri ayarlama $i=0 $tot = $ADGroups.count foreach ($ADGroup in $ADGroups) { #// Set up progress bar $i++ $status = "{0:N0}" -f ($i / $tot * 100) Write-Progress -Activity "Exporting AD Groups" -status "Processing Group $i of $tot : $status% Completed" -PercentComplete ($i / $tot * 100) #// Members seçeneğinin boş olduğundan emin olun $Members = "" #// Aynı zamanda grup olan grup üyelerini alın ve dizeye ekleyin $MembersArr = Get-ADGroup -filter {Name -eq $ADGroup.Name} | Get-ADGroupMember | select Name if ($MembersArr) { foreach ($Member in $MembersArr) { $Members = $Members + "," + $Member.Name } $Members = $Members.Substring(1,($Members.Length) -1) } #// Karma tabloyu ayarlama ve değer ekleme $HashTab = $NULL $HashTab = [ordered]@{ "Name" = $ADGroup.Name "Category" = $ADGroup.GroupCategory "Scope" = $ADGroup.GroupScope "Members" = $Members } #// CSV veri dizisine karma tablosu ekleme $CSVOutput += New-Object PSObject -Property $HashTab } #// CSV dosyasına export etme $CSVOutput | Sort-Object Name | Export-Csv $CSVFile -NoTypeInformation #// Script Sonu
Comments