Active Directory Domain yapısı içerisindeki her bir obje, benzersiz bir kimlik numarasıyla tanımlanır. Bu benzersiz kimlik numaraları, Active Directory nesnesi oluşturulduğunda sistem tarafından otomatik olarak atanır ve bu numaralara Relative Identifier (RID) adı verilir. RID, nesnenin Domain içerisindeki benzersizliğini sağlayan bir bileşendir ve nesneye atanan Security Identifier (SID) numarasının bir parçası olarak kullanılır. Her Domain'in kendine ait sabit bir SID bilgisi vardır, bu SID, Domain içerisindeki tüm nesnelerin kimliğini oluştururken temel alınır. RID ise, bu sabit SID'nin sonuna eklenen ve nesnenin Domain içinde benzersiz olmasını sağlayan numaradır.
RID Master FSMO rolü, Domain içerisindeki her Domain Controller'a belirli bir miktarda RID havuzu tahsis etmekle görevlidir. Bu havuzlar, Domain Controller'ların yeni nesneler oluştururken kullanacakları RID numaralarını içerir. Domain Controller'lar, tahsis edilen bu havuzlardan yeni nesnelere RID ataması yapar. Ancak, bir Domain Controller'ın RID havuzu tükenirse, yeni bir RID havuzu almak için RID Master'a başvurması gerekir. Bu talep üzerine RID Master, ilgili Domain Controller'a yeni bir RID havuzu tahsis eder. Bu işlem, Domain içerisindeki SID'lerin benzersizliğini ve çakışma yaşanmamasını garanti altına alır.
RID Master rolü, sadece RID havuzlarının dağıtımından sorumlu olmakla kalmaz, aynı zamanda Domain'ler arası nesne taşımalarında da kritik bir görev üstlenir. Bir nesne, bir Domain'den başka bir Domain'e taşındığında, eski Domain’deki RID bileşeni geçersiz hale gelir ve yeni Domain'de bu nesneye yeni bir RID atanır. Bu süreç, RID Master tarafından yönetilir ve Domain'ler arası güvenli ve tutarlı bir kimlik yönetimi sağlanmış olur.
Bu rolün sorunsuz çalışmaması, Domain içerisinde ciddi operasyonel aksaklıklara neden olabilir. Örneğin, Domain Controller'lar yeni nesneler oluşturamaz hale gelebilir veya mevcut nesneler üzerinde gerekli işlemler yapılamayabilir. Bu da Domain içerisindeki tüm operasyonları durma noktasına getirebilir ve sistemin güvenliği açısından ciddi zafiyetlere yol açabilir. RID Master'ın sürekli erişilebilir ve işlevsel olması, Active Directory yapısının stabilitesi ve güvenliği için kritik öneme sahiptir.
RID Master FSMO rolü, Domain içerisindeki diğer tüm Domain Controller'larla uyumlu bir şekilde çalışmalı ve her zaman erişilebilir olmalıdır. Erişimde yaşanacak herhangi bir kesinti, Domain'deki kimlik yönetim süreçlerini olumsuz yönde etkileyebilir. Bu yüzden, bu rolü barındıran sunucunun performansı ve güvenliği, Active Directory'nin genel sağlığı açısından büyük bir öneme sahiptir.
Active Directory Domain yapımın Domain SID bilgisini öğrenmek için PowerShell üzerinden sırayla aşağıdaki komutları çalıştırıyorum.
Import-Module ActiveDirectory |
(Get-ADForest).Domains | %{Get-ADDomain -Server $_} | select name, domainsid |
Komut çıktısında karşıma,
Domain SID bilgisi çıkıyor.
name |
domainsid |
firatboyan |
S-1-5-21-2239823876-3844753369-1393557922 |
Security Identifier (SID) Yapısı
Prefix |
Domain SID (Security Identifier) |
RID (Relative Identifier) |
S-1-5-21 |
2239823876-3844753369-1393557922 |
3618 |
1- S-1-5-21: standart bir ön ektir.
» 1: versiyon numarasıdır ve Windows NT 3.1 versiyondan bu yana hiç değişmeyen bir bildiri.
» 5: SID'nin NT tarafından atandığını gösteren tanımlamadır.
» 21: yine aynı şekilde NT tarafından atanan bir ön ektir.
2- 2239823876-3844753369-1393557922: Domain'e özgü 32 Bit'lik bir kimlik numarasıdır ve Domain'i temsil eder. Domain ortamı kurulduğunda otomatik olarak oluşur ve her ve Domain'deki tüm nesneler için aynı numara geçerlidir.
3- 3618: Domain içindeki her nesnenin değişken kimlik numarasıdır. İşte RID-Relative Identifier de budur. Buradaki 1105 RID numarası ise örnektir ve RID-Relative Identifier numaraları hiçbir zaman aynı olmaz ve kullanılan bir RID numarası, bir daha asla kullanılmaz.
Active Directory içindeki nesnelerinin SID numaralarını ve dolayı ile RID numaralarını görebilmek için PowerShell üzerinde aşağıdaki cmdlet'i yazmanız yeterlidir. Bu cmdlet, Active Directory üzerindeki tüm nesnelerinin SID numaralarını listeleyecektir.
Get-ADUser -Filter * -Properties * | Select SamAccountName, ObjectSID |
Active Directory üzerinden, kullanıcısının özelliklerinden Attribute Editor tab'ı üzerinde objectSid bilgisini görüntülediğimde de aynı sonucu görebilmekteyim.
RID Master FSMO rolü, varsayılan olarak Domain yapısının ilk kurulduğu Primary Domain Controller üzerindedir. RID Master FSMO rolünü tutan Domain Controller, kendi üzerindeki RID havuzunda 1,073,741,823 (1 milyar 73 milyon 741 bin 823) adet RID numarası barındırır ki bu rakam, 2,147,483,647 (2 milyar 147 milyon 483 bin 647) üst sırınına kadar artırılabilmektedir.
Domain ya da Forest ortamındaki RID Master FSMO rolünü tutmayan diğer Domain Controller'lar kendilerine tahsis edilen RID havuzunda 500 adet RID numarası bulundurular ve bu havuzun %50'si tükendiğinde RID master FSMO rolünü tutan Domain Controller ile iletişime geçerek, RID havuzunun tekrar 500 seviyesine gelmesi için RID talebinde bulunurlar. Tüm bu işlemleri yerine getiren RID Master FSMO rolüdür.
RID Matser'ı barındıran Domain Controller'ın işlevsiz kalması ve yapınızdaki herhangi bir diğer Domain Controller'ın da barındırdığı bu sınırlı RID numarasının tükenmesi durumunda, RID numarasının tükendiği Domain Controller üzerinde yeni Active Directory nesneleri oluşturulamayacaktır ve the directory service has exhausted the pool of relative identifiers hatası oluşacaktır.
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.
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 onlarca 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 önde gelen entegratör firmalarından olan Data Market bünyesinde Senior Cloud Engineer olarak çalışıyorum.
Ek olarak, 2015 yılında Network Akademi bünyesinde Microsoft Certified Trainer (MCT) ünvanı ile Sistem ve Network Uzmanlık eğitimleri vermeye başladım. Sistem ve Network Uzmanlığı alanındaki eğitmenlik serüvenime Network Akademi bünyesinde devam etmekteyim.