11 05 2014
Powershell Kullanılarak Active Directory Üzerinde Toplu Kullanıcı Oluşturulması
Merhabalar,
Bu makalemde sizlere ihtiyaç anında bir csv dosyası kullanılarak nasıl toplu bir şekilde kullanıcı oluşturulacağını anlatacağım.
Bazen ihtiyaç anında çok fazla kullanıcıyı oluşturmanız gerekebilir. Eğer kullanıcı sayıları binlerce ise bu işlemi Active Directory üzerinden yapmanız saatlerinizi alacaktır. Bu işlemi Powershell komutu ile kısa bir sürede halledebilirsiniz.
Bunun için önce kullanıcılarınızı oluşturacak olan csv dosyasını hazırlamanız gerekir. Bu işlemi yapmak için Excel kullanabilirsiniz. Excel de aşağıda gördüğünüz gibi her sütuna gerekli bilgi gelecek şekilde dosyanızı oluşturunuz. Ben 2 örnek kullanıcı yazdım. Siz daha fazlasını yazabilirsiniz.
Hazırladığınız dosyayı cvs (virgülle ayrılmış) olarak kaydediniz.
Kaydettiğiniz dosyayı Server 2012 sunucunuza kopyalayınız. Burada dikkat etmeniz gereken en önemli nokta virgül ile noktalı virgül arasındadır. Kullanmış olduğunuz bilgisayarda kaydettiğiniz dosyayı sunucu da açtığınızda araları noktalı virgül ise bunu virgüle çevirmeniz gerekebilir. Bu işlemi yapmak için kolay yol text içeriğini Word’e kopyalayıp “bul ve değiştir” işlemini kullanarak noktalı virgülleri virgüle çevirebilirsiniz.
Öncelikle notepad ile sunucuda dosyanızı açınız.
İçerisindeki veriyi tümünü seçip Word’e yapıştırınız.
Word menüsünde sağ tarafta bulunan Değiştir’i tıklayınız,
Aranan kısma noktalı virgül, Yeni değer kısmına ise virgül yazınız. Tümünü değiştir butonuna basınız.
Değişiklik yapıldı bilgisini göreceksiniz.
Gerekli değişiklikler uygulandıktan sonra text veriyi sunucu üzerindeki csv dosyasının içerisine yapıştırıp dosyayı kaydediniz.
Powershell programını “Run as administrator” ile yönetici olarak çalıştırınız.
Dosyamın bulunduğu yola geçiyorum ve aşağıdaki komutu yapıştırınız.
import-csv .\users.csv | Foreach-Object {New-ADUser -Name $_.Name -Surname $_.Surname -UserPrincipalName $_.Userprincipalname -AccountPassword (ConvertTo-SecureString $_.AccountPassword -AsPlainText -force) -Description $_.Description -DisplayName $_.Displayname -PasswordNeverExpires $True -Enabled $True -Path “OU=test,DC=fatihteke,DC=local”}
Eğer komut hata vermişse yazımı ve sütun dizilimini kontrol ediniz.
Buradaki komutların açıklamaları aşağıdadır.
import-csv .\test.csv | Dosyanın bulunduğu yeri gösteren komut, |
Foreach-Object | Obje için çalıştırılacak komut, |
New-ADUser | Yeni bir kullanıcı oluşturma komutu, |
Name | Kullanıcı Tam Adı (AD ekranında ilk gördüğünüz) |
Surname | Soyadı |
UserPrincipalName | Oturum açma adı |
AccountPassword | Kullanıcı şifresi |
Description | Açıklama |
Displayname | Görünen isim (name kısmından farklı ) |
PasswordNeverExpires | şifre hiç eskimesin |
Enabled | Kullanıcı aktif (kullanmazsanız kullanıcı kapalı gelir) |
Path | Açılacak Organization Unit (kullanmazsanız Users içerisinde açılır) |
İlgili OU içerisinde kullanıcıların oluştuğunu görebilirsiniz.
Kullanıcılarınızı oluşturduktan sonra properties ekranında UPN Suffix’in gelmediğini göreceksiniz.
Bu problemi gidermek için oluşturduğunuz tüm kullanıcıları seçip Properties i tıklayınız. Account tabında bulunan UPN Suffix kutucuğunu işaretledikten sonra ilgili suffix’i seçip tamam butonuna basarak değişiklikleri kaydediniz.
Böylece kullanıcılarınız açılmış bulunmaktadır.
Daha detaylı bilgi ve new-aduser komutunun tüm parametleri için aşağıdaki linki kullanabilirsiniz
http://technet.microsoft.com/en-us/library/ee617253.aspx
Domainler Arası Forest Trust Nasıl Yapılır Lync WebApps e Sertifika Yüklenirken Alınan Office Web Apps was unable to find the specified certificate Hatasının Sebebi ve Çözümü
Teşekkürler Fatih Bey Elinize sağlık güzel çalışma peki aynı şekilde toplu contact oluşturabilirmiyiz
Tabi ki Erhan Bey. İlginize teşekkürler.
Tüm yazılara baktım tam aradığımı burada buldum. Adaaammm
🙂 Estağfurullah. Rica ederim.
Bu kadar anlaşılır bir makale daha göremedim. emeğinize sağlık.