Önemli Active Directory Gruplarında Yapılan Değişikliklerden Nasıl Haberdar Olunur?


Bir Active Directory yöneticisi olarak muhtemelen Etki Alanı Yöneticileri, Şema Yöneticileri ve Kurumsal Yöneticiler gibi önemli gruplara aşinasınızdır. Bir hesap bu gruplardan bir veya daha fazlasının üyesi olduğunda, bu hesabın AD ortamınızda önemli bir gücü vardır. Tıpkı "Büyük güç, büyük sorumluluk getirir" şeklindeki eski deyiş gibi, bu grupların üyelerine güvenilmelidir. Davetsiz misafir veya hoşnutsuz bir çalışanın bunun gibi önemli bir grubun üyesi olması durumunda kötü bir gün geçirmiş olursunuz. Önemli grupları şahin gibi takip etmek size düşüyor. Ama nasıl? Sorduğuna sevindim.

Önemli Active Directory gruplarını izlemenin bir yolu, zamanlanmış bir görev ve bir Windows PowerShell betiğidir. Uzak Sunucu Yönetim Araçları (RSAT) paketindeki Active Directory modülünü kullanarak herhangi bir AD grubunun üyelerini uzaktan sorgulayabilirsiniz. Bu yeteneği, zamanlanmış bir görev aracılığıyla yinelenen bir programla çalıştırmayla birleştirirseniz, kendinize güzel, ev yapımı bir denetim çözümü elde edersiniz.

Bunu yapmak için komut dosyasının grup üyeliği sorgularını çalıştırmasının yanı sıra, benim de bir komut dosyası aracılığıyla oluşturacağım zamanlanmış görevin kendisinin oluşturulması gerekir. Başlayalım.

Değişikliklerden haberdar olabilmemiz için öncelikle grup üyeliğini sorgulamamız gerekiyor. Get-AdGroupMember PowerShell cmdlet'i ile bu çok kolaydır. Bu cmdlet'i kullanarak Identity parametresini kullanabilir ve bir grup adı belirleyebilirsiniz; bu, o grubun içindeki tüm üyeleri anında döndürecektir.

Örneğimde gördüğünüz gibi TestGroup adında bir grubum ve içinde iki üyem var; Misafir ve Yönetici. Şimdi Misafir hesabını test amaçlı kaldırıp tekrar çalıştıracağım.

Bu gruptaki tek üye artık Yönetici'dir. Harika! Artık bir üyeyi çıkarma senaryosunu test ettik. Şimdi üye eklersem üyelik değişikliğini alıp alamayacağımı test edelim.

Başarı! Artık bir hesabın bir AD grubuna eklendiğini veya kaldırıldığını tespit edebildiğimi doğruladım. Her şey yolunda ve güzel ama sırf bir şeylerin değişip değişmediğini görmek için bunu gün boyunca kendi başıma tekrar tekrar yürütmeyeceğim. Otomasyon günü kurtarır!

Şimdi tekrar bir grup üyesi ekleyelim ve bu sefer sadece farklara göz atmak yerine PowerShell'in farkı tespit etmesi için oraya bazı kodlar ekleyelim. Bu örnekte, Misafir hesabını tekrar TestGroup'a ekledim ancak bu kez grubun değişkenlerdeki değişiklikten önceki ve sonraki durumunu yakaladım. Bunu yaparak artık basit bir karşılaştırma yapma olanağına sahip oluyorum ve Misafir hesabının eklendiğini kolayca görebiliyorum.

Aynı taktik kaldırılan herhangi bir üye için de kullanılabilir.

İki farklı eyaletteki grup üyeliğini toplamak için kod oluşturduk ve artık ikisini grup üyeliği değişiklikleri için de karşılaştırabiliyoruz. Sırada ne var?

Bir sonraki adım, bu kodu bir sonraki seviyeye taşınabilecek bir komut dosyasına dönüştürmektir. Bu konsepti göstermek için örnek bir komut dosyası oluşturdum. Senaryo bu konsepti alır ve onunla çalışır. Betik bu kodla neler yapılabileceğinin sadece bir örneğidir. Yalnızca değişikliği algılamakla kalmaz, aynı zamanda bunu birden fazla grup için de yapabilir, durum bilgilerini içeren bir günlük dosyası yazar ve ayrıca yeniden başlatmalarda kaydedilmek üzere grup üyeliğini içeren bir CSV dosyasını diske kaydedilmek üzere saklar.

Son olarak, bir kullanıcıyı alan adı yöneticileri grubuna kimin eklediğinin tespit edilmesine ilişkin kısa bir sayfa bulunmaktadır. Bu, konsepti bir kez daha tamamen farklı bir seviyeye taşıyor çünkü burada sunduğum senaryo, bunu gerçekte kimin yaptığını değil, yalnızca değişikliği tespit ediyor. Netwrix Auditor, bugün tartıştığımız tüm bu yeteneğe zaten yerleşik olarak sahiptir. Gerçekten istemediğiniz sürece senaryolarla uğraşmanıza gerek yok. Netwrix Auditor yazılımıyla, bir kullanıcı bir AD grubuna eklendiğinde veya gruptan çıkarıldığında ürün denetimi önemsizdir. Bunu ve çok daha gelişmiş denetim özelliklerini seviyorsanız göz atmanızı öneririm.

İlgili makaleler