Aktif Dizin (Active Directory)

Eyl 06, 2013

Aktif dizin hizmeti; ağ (network) üzerindeki nesnelerin, kullanıcı ve bilgisayar hesaplarının bilgilerini tutmayı, bu kaynakları yönetmeyi ve kullanmayı sağlayan hizmettir. Genel olarak, ağın çeşitli etki alanlarına ayrılmasını, kullanıcı ve grupların hesaplarının tek bir listede tutularak ancak gerekli izinlere sahip olmaları durumunda kaynaklara ulaşmasını sağlar. Böylece, yönetimi merkezileştirir ve kolaylaştırır.

Aktif dizinin, organizasyonun gereksinimlerini ve nesneleri içinde bulundurduğu yapısı kendi içerisinde ikiye ayrılır:

  • Mantıksal Yapı
  • Fiziksel Yapı

Aktif dizinin mantıksal yapısı hiyerarşik bir yapıdır ve bu yapı içerisinde; etki alanları, etki alanı ağaçları, ormanlar,nesneler ve yapısal birimler bulunur.

  • Etki alanı (Domain): Aktif dizinin mantıksal yapısının temel bileşenidir. Genel olarak, ortak bir dizin veritabanını, yönetimi ve güvenlik ilişkilerini paylaşan, belirli bir ismi ve sınırı olan ağ olarak da tanımlanabilir. Her etki alanının kendi güvenlik sınırı vardır ve kendi yöneticisi tarafından yönetilir. Birden fazla etki alanına sahip sistemlerde, bu etki alanlarını birbirine bağlayacak etki alanı ağaçları (domain trees) oluşturulur.
     
  • Etki alanı ağaçları: Aynı isim alanına sahip etki alanlarını içeren yapıdır. Bir ağaç içerisinde “parent” ve “child” etki alanlarını bulundurur. Bir etki alanından alt etki alanı oluşturulursa o etki alanı “parent”, alt etki alanı da “child” olarak adlandırılır. Ağaca ilk eklenen etki alanı kök (root) etki alanı olarak adlandırılır.
     
  • Ormanlar (Forests): Aynı ardışık isim aralığına sahip olmayan birden çok ağacın biraraya gelmesiyle oluşan yapıdır. Oluşturulan ilk ağaç “Forest Root” olarak adlandırılır ve diğer tüm ağaçlar bu kök altında toplanır. Bir orman içerisindeki ağaçlar aynı isim aralığını paylaşmasalar bile aynı şemayı ve genel kataloğu paylaşırlar.
     
  • Nesneler (Objects): Mantıksal yapı içerisindeki en basit bileşendir. Kullanıcı ya da grup hesapları, yazıcılar örnek olarak gösterilebilir. Bir kullanıcının adı, soyadı, telefon numarası gibi bilgileri de o nesnenin özellikleri (attributes) olarak örneklendirilebilir.
     
  • Yapısal Birimler (Organizational Units): Yönetimsel kolaylık sağlamak için kullanılan, içerisinde nesneleri ya da farklı yapısal birimleri barındırabilen yapıdır. Bu yapı ile nesneler gerekliliklere göre sınıflandırılır ve bu sınıflar üzerinde istenilen grup ilkesi (group policy) uygulanabilir.
     

Genel Katalog (Global Catalog): Birden çok etki alanına sahip bir ormanda tüm etki alanları ile ilgili sorgu yapabilmek için kullanılan, üzerinde objelerin bazı özelliklerinin tutulduğu veri deposudur. Bu özellikler varsayılan olarak sorgulama sırasında en çok kullanılan özelliklerdir. Genel katalog, bir ağa giriş yapmak için Universal Group Membership (Genel Grup Üyeliği) bilgisini kullanır; böylece, farklı etki alanlarındaki kullanıcıların bulundukları etki alanlarına giriş yapmasını sağlar. Ayrıca genel katalog, kullanıcılara nesnenin bulunduğu konumdan bağımsız olarak nesneler hakkında bilgi sunar.

Mantıksal yapı ağ üzerindeki kaynakları organize etmek için kullanılırken; fiziksel yapı, ağ trafiğinin yapılandırılması ve yönetimi için kullanılır. Bileşenleri, etki alanı denetleyicileri (domain controllers) ve bölgelerdir (sites).
 

  • Etki Alanı Denetleyicileri: Bir etki alanı denetleyicisi, üzerinde aktif dizin veritabanının bir kopyasını (replica) bulunduran sunucudur. Etki alanı üzerindeki değişiklikler bir etki alanı denetleyicisi üzerinde gerçekleştirilir ve daha sonra o etki alanı üzerindeki tüm denetleyiciler kopyalama (replication) yöntemi ile yapılan değişiklikleri kopyalarlar. Etki alanı denetleyicileri, üzerinde bulundurdukları dizin bilgisi ile kimlik doğrulama, giriş, güncelleme ve dizin arama işlemlerini gerçekleştirirler.

    Bir etki alanında birden fazla etki alanı denetleyicisi olabilir. Bunun amacı, sistemin devamlılığını garanti altına almak ve denetleyiciler arasında yük paylaşımını sağlamaktır.
     
  • Bölgeler: Aralarında yüksek bant genişliğine sahip bağlantılar bulunan bir veya daha fazla TCP/IP alt ağlarını temsil ederler. Kullanıcı giriş işlemlerindeki trafiği yönetmek ve kopyalama işlemleri süresince oluşacak yoğunluğu giderebilmek amacıyla bölgeleri doğru yapılandırmak önemlidir. Örneğin, fiziksel konum olarak birbirine uzak birden çok bölgeye sahip bir etki alanına giriş yapmak isteyen kullanıcı, giriş işlemini en çabuk yapabilmesi için bulunduğu bölgedeki bir etki alanı denetleyicisine ulaşabilmelidir. Çünkü, bir etki alanındaki bölgelerin her biri kendi içerisinde hızlı bir ağa sahip olsa da bölgeler arası fiziksel bağlantılar yeterince hızlı olmayabilir. Dolayısıyla giriş işleminin, bulunan bölgeden farklı bir bölgedeki etki alanı denetleyicisi tarafından gerçekleştirilmesi işlemi yavaşlatır. Bunları önlemek ve ağ trafiğini daha etkili kullanabilmek için bölgeler doğru yapılandırılmalıdır.

       

Aktif Dizin ve DNS İlişkisi

Farklı amaçlar doğrultusunda kullanılmasına rağmen, aktif dizin hizmeti ve DNS aynı hiyerarşik yapıya sahiptirler ve özdeş bir isim alanı kullanırlar. Böylece, DNS bölgeleri aktif dizinde depolanabilir ve nesneler hem aktif dizin nesnesi olarak hem de DNS etki alanı ya da kaynak kayıtları olarak kullanılabilir.
Aktif dizin hizmetinin kullanılabilmesi için DNS yapısının var olması gereklidir. Çünkü bir istemcinin, bir aktif dizin etki alanında oturum açabilmesi ya da o etki alanındaki bir kaynağa ulaşabilmesi için hangi etki alanı denetleyicisine ulaşması gerektiği bilinmelidir. Bunu öğrenebilmek için de, DNS sunucularındaki SRV (Service Records) kayıtları kullanılır. Aktif dizin hizmetinin problemsiz çalışabilmesi için bu kayıtların eksiksiz olarak tutulması gerekmektedir. Aksi takdirde, etki alanı denetleyicilerinin yeri belirlenemez ve etki alanına giriş yapılamaz.

Dizin Bölümleri (Directory Partitions)

Aktif dizin yapısı içerisinde, her bir etki alanı denetleyicisi üzerinde, kullanıcılar, gruplar, kaynaklar vb. nesnelerin bilgisinin tutulduğu dizin bölümleri olarak adlandırılan veri depoları vardır. Bu bilgiler, istenildiği zaman yöneticiler veya kullanıcılar tarafından paylaştırılabilir ve bu bilgilere ağ hizmetleri ile erişilebilir. Bir etki alanında bir veya daha fazla etki alanı denetleyicisi olabilir ve her etki alanı denetleyicisi bulunduğu etki alanındaki dizinin bir kopyasını (replica) barındırır. Bu bölümlerde yapılan her değişiklik, orman içerisindeki diğer etki alanı denetleyicilerine kopyalama (replication) yöntemi ile paylaştırılır.
Aktif dizin yapısı içerisinde farklı veri türlerini depolayabilmek için, her etki alanı denetleyicisi üzerinde dört farklı dizin bölümü vardır:

  • Etki Alanı Bölümü (Domain Partition): Etki alanı içerisindeki tüm nesnelerle ilgili bilgileri saklar. Bu bölüm sadece aynı etki alanı üzerindeki etki alanı denetleyicileri ile eşitlenebilir.
  • Yapılandırma Bölümü (Configuration Partition): İçerisinde bütün etki alanları, ağaçlar ve ormanların listesi ile etki alanı denetleyicileri ve genel kataloğun konumlarının, kendi aralarındaki bağlantı bilgilerinin tutulduğu topolojinin saklandığı bölümdür.
  • Şema Bölümü (Schema Partiton) : Orman içerisindeki belirli nesne sınıflarının özelliklerini tanımlamaya yarayan şema yapısının tutulduğu bölümdür. Orman içerisindeki her etki alanı denetleyicisi ile eşitlenebilir.
  • Uygulama Bölümü (Application Partition): Çeşitli uygulamalarda kullanılmak üzere sistem yöneticisi tarafından oluşturulup yapılandırılan ve yönetilen, varsayılan olarak gelmeyen dizin bölümüdür.

Kopyalama (Replication)

Kopyalama, etki alanı denetleyicileri arasındaki veri paylaşımıdır. Bir organizasyonun ağ yapısı aktif dizinde depolanan veriye bağımlı çalıştığından, sistemin daha verimli, güvenli ve doğru çalışabilmesi, etki alanı denetleyicileri üzerindeki verinin sürekli güncel tutulması ile sağlanır. Aktif dizin hizmeti, çok kaynaklı kopyalama (multimaster replication) olarak adlandırılan kopyalama yapısını kullanır. Bu yapı ile, etki alanı üzerindeki her etki alanı denetleyicisi birbiri üzerinden veri kopyalaması yapabilir.
Bir etki alanı denetleyicisi üzerinde herhangi bir değişiklik olduğunda, aynı etki alanı üzerindeki tüm denetleyicilere varsayılan süre olarak 5 dakika sonra güncelleme yapılır ve bu değişiklik kopyalanır. Böylelikle, etki alanı denetleyicileri üzerindeki etki alanı bölümü sürekli güncel tutulur ve herhangi bir etki alanı denetleyicisinin çökmesi durumunda bile kullanıcıların kimlik kontrolü (authentication) diğer denetleyiciler üzerinden yapılarak sisteme girişleri sağlanabilir. Bu da sistemin devamlılığı açısından önemlidir.
Aktif dizin üzerindeki her bir nesne kendine özgü bir sıra numarası (unique sequence number) taşır ve o nesne üzerinde yapılan her değişiklik ile bu sıra numarası artar. Hangi verinin daha güncel olduğu, etki alanı denetleyicileri arasında bu sıra numarasının sorgulanmasıyla anlaşılır. Bu sorgu ile, tüm nesnelerin sıra numaralarının tutulduğu listeler tüm etki alanı denetleyicileri arasında paylaşılır ve böylece sadece gerekli nesneler üzerinde kopyalama yapılması sağlanır.
Aktif dizin yapısı, kopyalama sırasında oluşabilecek çakışmaları önlemek amacıyla her nesneye ait her bir özellik için ayrı bir özellik sürüm numarası (property version number) depolar. Bu numara o özellik üzerinde yapılan her değişiklik ile değişir. Örneğin, iki farklı etki alanı denetleyicisi üzerinde aynı anda bir nesnenin bir özelliği değiştirilirse, aynı sürüm numarasıyla iki farklı değişiklik algılanarak çakışma saptanabilir. Bu açıdan, aktif dizin yapısını kullanan servislerin zaman senkronizasyonu mutlaka sağlanmalıdır.

Erişim Denetimi ve Güvenlik

Aktif dizin hizmeti ile sistem yöneticileri tarafından istenilen kullanıcı ya da gruplara istenilen yetkiler verilerek erişim denetlenebilir ve sistem yönetimi dağıtılarak kolaylaştırılabilir. Bu denetim, dizin veritabanındaki her bir nesne ve özellik üzerinde oluşturulabilen bir ACL(Access Control List-Erişim Denetim Listesi) ile yapılır. Bu liste ile, verilen izinler dahilinde, yönetici tarafından istenilen nesneye istenilen özellikler eklenebilir ya da belli kullanıcı ya da grupların bazı özellikleri görmeleri engellenebilir.
Birden çok etki alanına sahip bir orman içerisindeki etki alanları arasında çift taraflı güven (trust) ilişkisi vardır. Bu ilişki sayesinde bir etki alanındaki bir kullanıcı, farklı bir etki alanındaki bir gruba üye olabilir ya da farklı bir etki alanındaki kaynakları paylaşabilir.