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



Fırat Boyan 16.01.2023 1

PowerShell İle Active Directory Grup Üyelerini Karşılaştırma

Active Directory kullanıcı hesaplarını, bilgisayar hesaplarını ve diğer grup hesaplarını bir arada toplayarak yönetimlerini kolaylaştırmak için kullanılan Active Directory nesnelerine GRUP adı verilmektedir. Grup nesneleri kullanımı; Active Directory kullanıcı, bilgisayar ve diğer grup hesapları için yapılacak toplu işlemlerde çok geniş bir kullanım alanına sahiptir. Bunun en sık kullanılan örneği olarak Active Directory'deki kullanıcıların, Network üzerindeki paylaştırılmış kaynaklara erişimlerini ve bu kaynaklar üzerindeki izinlerini merkezi ve toplu bir şekilde kontrol edebilmenize olanak sağlanması olarak gösterebiliriz. Bu bağlamda, bir Network üzerinde paylaşıma açılmış olan bir kaynağa birden fazla kullanıcının erişmesi söz konusu ise, bu kullanıcılara tek tek izin ataması yapmak yerine bir grup oluşturup, kullanıcıları da ilgili grubun üyesi yaparak kullanıcıların üye olduğu ilgili gruba da NTFS izin ataması yapmak suretiyle izin yönetim işlemlerini kolaylaştırmanız daha pratik hale gelmektedir. Aynı şekilde gruplara başka grupları da üye yaparak, o grupların üyelerini de tek bir grup üzerinden izin atamaları kapsamında yönetmek de pratik bir yöntemdir.

Biz sistem yöneticilerinin Active Directory yönetiminde Active Directory grup hesapları ve yönetimi noktasında kullanıcılarımızın üye olduğu grupları karşılaştırarak, ortak grup üyelikleri bilgisini edinmemiz gerekebiliyor. Bu makalemde sizlere iki farklı Active Directory Group nesnenesinin üyelerini nasıl karşılaştıracağınızı, hangi kullanıcının hangi grupta üye olduğu, hangisinin olmadığı gibi bilgileri karşılaştırmalı olarak nasıl edinebileceğinizden bahsediyor olacağım.

Active Directory Gruplarını Listeleme

Active Directory Group nesnenesinin üyelerini karşılaştırmadan önce, üyelerini karşılaştıracağımız Active Directory Group nesnelerini listeleyelim. Active Directory ortamınızda yüzlerce grup nesenesi olabilir. Karşılaştırma yapacağınız AD gruplarınızın dizin bilgisine sahipseniz, direkt olarak ilgili Organization Unit üzerinden grup isimlerini öğrenebilirsiniz.

Active Directory Gruplarını Listeleme

Değilseniz, hangi Organization Unit altındaki grup nesneleri ile çalışacaksanız, iligli Organization Unit'in Distinguished Name (DM) bilgisi ile filtreleme yapmanızı tavsiye ederim.

1- Aşağıdaki komut yardımıyla ilgili Organization Unit içinde üyesi olsun ya da olmasın tüm Security Grup nesenelerini listeliyorum.

Get-adobject -Filter 'ObjectClass -eq "Group"' -SearchBase "OU=IT,OU=Ist-All-Departments,OU=Istanbul,OU=Turkey,OU=Europe,DC=firatboyan,DC=local" | Select Name | Sort-Object Name

Active Directory Gruplarını Listeleme

2- Bir önceki komuttaki çıktı listesi oldukça uzun olabilir, bu nesnele sorgu filtremi daraltırıp, sonuçların kısalmasını sağlamak amacıyla aşağıdaki komutu kullarak sadece üyesi olan grupların listelenmesini sağlayacağım.

Get-ADGroup -Filter * -Properties Members -searchbase “OU=IT,OU=Ist-All-Departments,OU=Istanbul,OU=Turkey,OU=Europe,DC=firatboyan,DC=local” | where {$_.members} | select Name

Active Directory Gruplarını Listeleme

Buraya kadar olan süreçte öncelikli olarak karşılaştırma yapacağım grupların belirlenmesini sağlayarak, ilgili grupların isimlerini öğrendim. Şimdi sıra, grupların karşılaştırılarak hangi kullanıcının hangi grupta üye olduğu ya da olmadığı bilgisini öğrenmek olacak.

Active Directory Gruplarını Karşılaştırma

3- Karşılaştırma yapmak istediğim Active Directory gruplarının isimleri GRP-IST-IT-USERS-01 ve GRP-IST-IT-USERS-02'dir. PowerShell'de Compare-Object komutu ile bu iki grubun ismini Get-ADGroupMember komutu içinde aşağıdaki şekilde kullanıyorum. Buradaki -Property bilgisinde Name kullanarak kullanıcılarun OU içinde görünen isim bilgilerine göre listeliyorum.

Compare-Object (Get-ADGroupMember "GRP-IST-IT-USERS-01") (Get-ADGroupMember "GRP-IST-IT-USERS-02") -Property "Name" -IncludeEqual | Sort-Object Name

Active Directory Gruplarını Karşılaştırma

Kommut çıktısındaki SideIndicator değerlerinin anlamları şöyledir.

== <= =>
Her iki grupta da üye  Sadece 1. grupta üye  Sadece 2. grupta üye

4- Aşağıdaki komutla, bir önceki önceki komuttan farklı olarak, -Property bilgisinde SamAccountName kullanarak kullanıcı adı bilgisine göre listeliyorum.

Compare-Object (Get-ADGroupMember "GRP-IST-IT-USERS-01") (Get-ADGroupMember "GRP-IST-IT-USERS-02") -Property "SamAccountName" -IncludeEqual | Sort-Object Name

Active Directory Gruplarını Karşılaştırma

Active Directory Gruplarını Listeleme

Bu yöntemle kolay bir şekilde Active Directory grup nesnelerimizi karşılaştırabilir, hangi AD nesnesinin hangi grupta olup olmadığı bilgisini kolaylıkla edilebiliriz.

Faydalı olması dileğiyle...


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



Yazar Hakkında

firatboyan.com


1985 yılında Alanya'da doğdum. İlk, orta ve lise öğrenimimi Alanya'da tamamladım. Liseden mezun olduktan sonra Akdeniz Üniversitesi Bilgisayar Teknolojisi Ön Lisans programına yerleştim ve bu programdan mezun oldum. Ön Lisans programından mezun olduktan bir süre sonra Dikey Geçiş Sınavı (DGS) ile İstanbul Teknik Üniversitesi (İTÜ) Bilgisayar Mühendisliği Lisans programına yerleştim. 2003 yılından beri Bilgi Teknolojileri sektöründe Sistem ve Network alanlarında çalışıyorum. Bir çok firma bünyesinde farklı projelerde yer alarak bu alanda yıllar içinde ciddi bir bilgi birikimi ve deneyimler kazandım. Bilgi Teknolojileri sektöründeki profesyonel çalışma hayatımın uzunca bir dönemini entegratör firma bazında, ağılıklı olarak Microsoft ürünleri üzerine danışman olarak sürdürüyor ve yüksek seviyeli projeler geliştiriyorum. Uzunca bir süredir de Türkiye'nin en önde gelen entegratör firması olan Data Market bünyesinde Senior Cloud Engineer olarak çalışıyorum. Ek olarak, 2015 yılında Network Akademi bünyesinde Sistem ve Network Uzmanlık eğitimleri vermeye başladım ve 2017 yılında da eğitmenlik tecrübemi, Microsft Certified Trainer (MCT) ünvanı ile taçlandırdım. Eğitmenlik serüvenime 2021 yılından beri Bilge Adam bünyesinde MCT ünvanı ile devam etmekteyim.

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.


14.02.2024 Zafer Ertunç
Çok faydalı bir makale. Teşekkürler.