İçerikleri sosyal medya üzerinden paylaşarak daha fazla kişiye ulaşmasına yardımcı olabilirsiniz.



Fırat Boyan 15.01.2023 1

Active Directory'de PowerShell Script İle Toplu Kullanıcı Nesneleri Oluşturma

Active Directory ortamınızda kullanıcı nesneleri oluşturmak için Wizard kullanmak, tüm sistem yöneticilerinin tercih ettiği en pratik yöntemdir. Peki, sizden Active Directory ortamınızda 100, 200 ya da 500 kullanıcı nesenesi oluşturmanız istenseydi ne olurdu? Böyle bir işlemi Wizard ile gerçekleştirmek, çok yorucu ve çok ciddi zaman alacak bir işlemdir. Bu sebeple, zamandan tasarruf edebilmek için, bu makalemde sizlere bir script yardımıyla önceden İnsan Kaynakları departmanınız tarafından hazırlanacak bir CSV dosyası içindeki bilgilerin okunması suretiyle nasıl toplu bir şekilde kullanıcı nesneleri oluşturabileceğinizden bahsediyor olacağım.

1- Toplu bir şekilde kullanıcı nesneleri oluşturmak için kullanacağım ve adını Import-Bulk-Users.csv olarak isimlendirdiğim CVS dosyam aşağıdaki şekilde olacaktır.

Active Directory Toplu Kullanıcı Nesneleri Oluşturma

2- Yukarıdaki CSV uzantılı dosyayı referans alacak olan Import-Bulk-Users.ps1 isimli script dosyasında CSV dosyasındaki başlık alanlarına karşılık gelecek değişkenler atanmıştır. CSV ya da script dosyasında bir değişiklik yapacağınız zaman, her iki dosya içinde de tutarlı bir şekilde birbirlerine karşılık gelecek şekilde yapmanız gerekmektedir.

Active Directory Toplu Kullanıcı Nesneleri Oluşturma

4- CSV dosyası içindeki bir diğer önemli nokta ise, kullanıcı nesnelerini Active Directory içinde hangi Organization Unit içinde oluşturacağınızdır. Kullanıcı nesnelerini hangi Organization Unit içinde oluşturacaksanız, CSV dosyasındaki Path alanına iligi Organization Unit'in Distinguished Name (DN) bilgisini yazmanız gerekmektedir. Konu ile ilgili Active Directory Organization Unit Distinguished Name Listeleme makalemi okumanızı tavsiye ederim.

Active Directory Toplu Kullanıcı Nesneleri Oluşturma

5- Active Directory'deki ilgili Organization Unit'in Distinguished Name bilgisini Properties > Attribute Editor altındaki distinguishedName Attribute'ünden de edinebilirsiniz. Ben, kullanıcı nesnelerimi IT Organization Unit'i altındaki Users Organization Unit'i içinde oluşturacağım için her bir kullanıcı için bu Organization Unit'in Distinguished Name (DN) bilgisini yazdım.

Active Directory Toplu Kullanıcı Nesneleri Oluşturma

Active Directory Toplu Kullanıcı Nesneleri Oluşturma

6- Gerekli hazırlıklar tamamlandıktan sonra sıra, CSV ve PS1 uzantlı dosyaların Domain Controller manikamızda ugun bir dizine konumlandırılmasına geldi. Ben, elimdeki CSV ve PS1 uzantlı dosyaları C:\ dizini altında PS adında bir klasöre kaydettim.

Active Directory Toplu Kullanıcı Nesneleri Oluşturma

7- İlgili dosyaları dilediğiniz bir dizine kopyaladıktans sonra ilgili script dosyası içinde dikkat edilmesi gereken önemli bir nokta, CSV dosyasını kopyaladığınız dizini, script dosya adı ve uzantısı ile tam olarak Script dosyasında da belirtmeniz gerekmektedir.

Active Directory Toplu Kullanıcı Nesneleri Oluşturma

8- Son işlem olarak, PowerShell konsolundan CSV ve PS1 uzantlı dosyaların bulunduğu dizine geçiş yaparak, ilgili PowerShell Script'i çağırmak olacaktır. Eğer CSV dosyasındaki kullanıcı(lar) daha önceden oluşturulmamışsa, oluşturma işlemi tamamlandığında The user account firat.boyan is created yani firat.boyan kullanıcı oluşturulmuştur şeklinbir bir bildirim yazısı çıkacaktır. Dilerseniz bu bildirim yazılarını Türkçeleştirebilirsiniz.

Active Directory Toplu Kullanıcı Nesneleri Oluşturma

9- CSV dosyasındaki kullanıcı nesenelerim, ilgili PowerShell Script ile oluşturulduktan sonra kullanıcı nesnelerinin oluştuğu ilgili Organization Unit'i kontrol ettiğimde, kullanıcı nesnelerimin oluşturulduğunu görebiliyorum.

Active Directory Toplu Kullanıcı Nesneleri Oluşturma

Active Directory Toplu Kullanıcı Nesneleri Oluşturma

10- CSV dosyasında hiçbir değişiklik yapmadan PowerShell Script'i tekrar çalıştırdığımda, ilgili kullanıcıların Active Directory'de zaten mevcut olduğu bilgisini de vermiş oluyorum.

Active Directory Toplu Kullanıcı Nesneleri Oluşturma

11- Mevcut CSV dosyasına ekleme yaptıktan sonra PowerShell Script'i tekrar çalıştırdığımda, Active Directory'de zaten mevcut ilgili kullanıcıların bilgisini vererek, CSV dosyasına sonradan eklediğim yeni kullanıcının da Active Directory'deki ilgili Organization Unit içinde oluşturulduğunu görebiliyorum. Bu sayede zaten mevcut olan kullanıcıların bilgisi edinebildiğim gibi, aynı zamanda yapılan değişiklik sonrasında eklenen yeni kullanıcı nesenesinin de oluşturulduğuna dair bilgi alabiliyorum. Bu sayede CSV dosyasının içini temizlemek ya da farklı CSV dosyaları oluşturmak gibi bir zahmet içine de girmemiş oluyorum.

Active Directory Toplu Kullanıcı Nesneleri Oluşturma

Active Directory Toplu Kullanıcı Nesneleri Oluşturma

Faydalı olması dileğiyle...

TAGs: active directory, bulk user object, toplu kullanıcı nesnesi oluşturma


Her türlü görüş ve önerilerinizi aşağıdaki yorum panelinden bırakabilir, kafanıza takılanları veya merak ettiklerinizi sorabilirsiniz.



Yazar: Fırat Boyan

Adım Fırat Boyan. 1985 yılında Antalya'nın Alanya ilçesinde doğdum. 2008 yılından beri İstanbul'da yaşıyorum. Kıdemli Sistem Mühendisi, Microsft Sertifikalı Eğitmen (MCT) ve İngilizceden Türkçeye ve Türkçeden İngilizceye serbest, Noter Yeminli Tercümanım. 18 yıldır Bilgi Teknolojileri alanında hizmet veriyorum. Şu anda Data Market bünyesinde Senior Cloud Engineer olarak çalışıyorum ve Bilgi Teknolojileri alanında eğitim hizmetleri veren Bilge Adam bünyesinde Microsoft Sertifikalı Eğitmen (MCT) olarak Sistem ve Network Uzmanlığı eğitimleri veriyorum. Bunun yanı sıra, kurumsal firmalara BT danışmanlık hizmetleri de vermekteyim. Hakkımda daha fazla bilgi sahibi olmak ve sahip olduğum Microsoft sertifikalarımı incelemek için Hakkımda sayfasını ziyaret edebilirsiniz.

YORUMLAR
Bu makaleye 1 yorum yapıldı.
Her türlü görüş ve önerilerinizi aşağıdaki yorum panelinden bırakabilir, kafanıza takılanları veya merak ettiklerinizi sorabilirsiniz.

   
   
  750 karakter yazabilirsiniz.
 
Captcha
Güvenlik kodunu BÜYÜK harflerle giriniz.
* Yorumlar, onaylandıktan sonra yayınlanmaktadır.
* E-posta, yorum onay bildirimi için gereklidir. Yayınlanmaz.


30.05.2023 Selami Kizilirmak
merhaba Fırat Hocam, PS E:\dcprog\Kullanici E:\dcprog\Kullanici\Import-Bulk-Users.ps1 Get-ADUser : $Username ifadesinde bulunan Username değişkeni tanımlanmadı. At E:\dcprog\Kullanici\Import-Bulk-Users.ps1:14 char:9 + if (Get-ADUser -F {SamAccountName -eq $Username}) { + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidArgument: (:) Get-ADUser, ArgumentException + FullyQualifiedErrorId : ActiveDirectoryCmdlet:System.ArgumentException,Microsoft.ActiveDirectory.Management.Commands.GetADUser toplu olarak kullanıcıları atarken böyle bir hata alıyorum excell tarafında ve powershell tarafındaki başlıkları birbiriyle eşleştirdim ama yinede aynı hatayı alıyorum. iyi çalışmalar.