PowerShell kullanarak Active Directory gruplarına CSV dosyasından kullanıcı import işlemini kolayca yapabilirsiniz.
Öncelikle bir CSV dosyası hazırlayın. CSV dosyası iki sütundan oluşmalıdır:
- SamAccountName: AD kullanıcı adı
- GroupName: Eklenecek grup adı
- SamAccountName: AD kullanıcı adı
- GroupName: Eklenecek grup adı
Script içindeki $CSVPath değişkenini kendi CSV dosyanızın yoluna göre güncelleyin.
$CSVPath
PowerShell’i yönetici olarak çalıştırın ve scripti çalıştırın.
Script şunları yapar:
- Her bir kullanıcı için hata kontrolü yapar
- Kullanıcının ve grubun var olduğunu kontrol eder
- Kullanıcının zaten grupta olup olmadığını kontrol eder
- Başarılı ve başarısız işlemleri renkli olarak raporlar
- Her bir kullanıcı için hata kontrolü yapar
- Kullanıcının ve grubun var olduğunu kontrol eder
- Kullanıcının zaten grupta olup olmadığını kontrol eder
- Başarılı ve başarısız işlemleri renkli olarak raporlar
Özellikle dikkat edilmesi gerekenler:
- CSV dosyasının doğru formatta olduğundan emin olun
- PowerShell’i yönetici olarak çalıştırın
- Active Directory modülünün yüklü olduğundan emin olun
- CSV dosyasının doğru formatta olduğundan emin olun
- PowerShell’i yönetici olarak çalıştırın
- Active Directory modülünün yüklü olduğundan emin olun
Örnek CSV:
SamAccountName,GroupName
john.doe,IT_Department
jane.smith,HR_Department
mike.wilson,Finance_Group
sarah.jones,Marketing_Team
robert.brown,Sales_Department# CSV dosya yolunu
$CSVPath = “C:\bulk_group\test_bulk.csv”
$Users = Import-CSV $CSVPath
foreach ($User in $Users) {
if ([string]::IsNullOrEmpty($User.SamAccountName) -or [string]::IsNullOrEmpty($User.GroupName)) {
Write-Host “Hata: Boş kullanıcı adı veya grup adı tespit edildi.” -ForegroundColor Red
continue
}
try {
# Önce kullanıcının varlığını kontrol et
$ADUser = Get-ADUser -Identity $User.SamAccountName
if ($ADUser) {
# Sonra grubun varlığını kontrol et
$ADGroup = Get-ADGroup -Identity $User.GroupName
if ($ADGroup) {
# Kullanıcının zaten grupta olup olmadığını kontrol et
$IsMember = Get-ADGroupMember -Identity $User.GroupName |
Where-Object {$_.SamAccountName -eq $User.SamAccountName}
if (-not $IsMember) {
# Kullanıcıyı gruba ekle
Add-ADGroupMember -Identity $User.GroupName -Members $User.SamAccountName
Write-Host “Başarılı: $($User.SamAccountName) kullanıcısı $($User.GroupName) grubuna eklendi.” -ForegroundColor Green
} else {
Write-Host “Bilgi: $($User.SamAccountName) kullanıcısı zaten $($User.GroupName) grubunda mevcut.” -ForegroundColor Yellow
}
}
}
}
catch {
Write-Host “Hata: $($User.SamAccountName) için işlem başarısız: $($_.Exception.Message)” -ForegroundColor Red
}
}
Bir yanıt bırakın