Windows 2000 User Accounts & Groups

Windows 2000 işletim sistemlerinde grupların ve kullanıcı hesaplarının sistem yönetimi ve kaynak erişiminde nasıl kullanıldığını anlayabilmek için Workgroup ve Domain çalışma modellerinde nasıl kullanıldıklarının anlaşılması gerekir. Ama bundan da önce NT tabanlı bir işletim sistemi olan Windows 2000 deki security modeli nasıl çalışır ona bakalım.

Windows 2000 Security modeli

Windows 2000 security modeli üzerinde erişim kontrol izinleri belirlenebilen kaynaklar (NTFS partition üzerinde dosyalar, klasörler, paylaştırılmış klasörler, printerlar, DNS zone ları ... ) ile bu kaynaklara erişecek security principal lardan (kullanıcı, grup ve makinalar) oluşur. Her kaynak kendisi üzerinde bir Access control list (ACL) tutar. Bu liste kaynağa kimlerin hangi izinlerle erişeceğini belirleyen listedir. Windows 2000 de ACL lar ikiye ayrılır. DACL lar ve SACL lar. Discretionary ACL lar kaynak üzerinde kimlerin erişim hangi seviyede erişime sahip olduğunu gösterir listedir. System ACL ya da SACL lar ise kaynak üzerinde Auditing yapmak için kullanılırlar. (Auditing kullanıcı ya da grupların kaynaklar üzerindeki hareketlerini Security loglarından izlemek için kullanılan işlemdir.)
Kullanıcılar ise sisteme login olurken Access token denilen ve kullanıcının Security Identifier numarasını ve bağlı bulunduğu tüm grupların SID numaralarını da içeren bir erişim jetonu(Access Token) ile login olurlar.  SID numarası her dizin servisleri nesnesi ilk oluşturulduğunda bu nesneye atanan bir numaradır. Bu numara dizin servisleri nesnesi (ilgili kullanıcı, grup ya da makina hesabı) silinene kadar geçerliliğini korur.
ACL listeleri, kaynağa kimlerin hangi hakla erişeceğini belirler demiştik, bunu açıklamak için örnek bir durum ele alalım:
 
Şekil 1

Yukarıdaki örnekteki user5 isimli kullanıcı ipconfig.com domainine login olmuş durumdadır.  Kullanıcı daha sonra kendi makinasından yine ipconfig.com etki alanının üyesi olan makinada paylaştırılmış olarak bulunan klasöre erişmek istiyor. Bu noktada ortya şunlar çıkar:
Kullanıcı login olurken kendisine bir Access Token atanır. Bu jeton sayesinde sistem login olmuş olan kullanıcının bağlı bulunduğu grupları ve kullanıcının SID numarasını bilir.

Kullanıcı daha sonra paylaşımın adresini girip erişmek istediği anda bu isteği yakalayan makina Paylaştırılmış klasör üzerindeki ACL listesini kontrol eder. Eğer kullanıcının hesabına ya da kullanıcının bağlı bulunduğu gruplardan herhangi bir tanesine ACL listesinde izin verilmişse kullanıcının kaynağa erişmesi sağlanır.
Bu konuda daha fazla detaya girmeden şimdi workgroup ve domain modellerinde kullanıcı hesaplarının ve grupların kullanımına bakalım.

Workgroup modelinde grupların kullanılması

Windows 2000 işletim sisteminde işletim sisteminin kurulu olduğu makina eğer herhangi bir domain ‘in üyesi değil ise, bir workgroup içerisinde çalışıyorsa o zaman bu makina üzerinde kaynaklara erişecek ve sistem üzerinde önceden belirlenmiş belirli işlemleri yapcak olan kullanıcılar Security Accounts Manager database adı verilen veritabanı içinde tutulurlar. Workgroup modelinde tüm makinalar kendi güvenlik veritabanlarından sorumludurlar ve herhangi bir makinanın üzerinde tanımlanmış kullanıc ya da grup kesinlikle başka bir makinadaki kaynakları kullanmak üzere atanamaz.
Şekil 2 de gösterilen üç makina da kendi güvenlik veritabanını tutmaktadır. Bu yüzden makina1 üzerinde tanımlanmış olan Ali kullanıcısı kesinlikle makina2 üzerinde sisteme login olup çalışamaz. Ali kullanıcısını makina2 üzerindeki herhangi bir kaynağa erişmek istemesi durumunda yapılması gereken Ali kullanıcısının makina2 üzerinde tanımlanmış bir kullanıcı ismi ve şifresine sahip olmasıdır.
 
Şekil 2 -Workgroup modelinde kullanıcılar, gruplar ve makinalar

Workgroup modelinde lokal makinada tanımlanan gruplar ise Local Group olarak adlandırılır. Bunun sebebi grubun kaynak ve haklara erişim için tanımlanabildiği alandan kaynaklarnır. Workgroup modelinde lokal makinada tanımlanan kullanıcılar sadece lokal makinadaki kaynaklara erişimde tanımlanmak üzere kullanılırlar. Şekil 1 de de görüldüğü gibi makina 1 de tanımlanan Local Group1 makina2de de hiçbir çakışma olmadan tanımlanabilir.
Önemli noktalar:
Lokal kullanıcı hesapları ve gruplar sadece lokal makinadaik kaynklara erişimi düzenlemek için kullanılır.Lokal gruplar domainden ve domainin güvendiği diğer domainlarden kullanıcı ve grupları içerebilir.

Domain modelinde grupların kullanılması

Domainler Windows 2000 işletim sisteminde Active Directory dizin servisleri yönetimi kurulduktan sonra etkinleşen ve bir güvenlik sınırını sanal olarak temsil edenm kümlerdir. Bu etki alanı içerisinde tanımlana kullanıcı, grup ve makinalar birbirleri arasındaki erişim kontrol parametrelerini domain katmanından alırlar. Tüm kullanıcılar bir defaya mahsus oalrak Domain Controller denilen makinalarda tanımlanırlar. Bu tanımlamanın bir defa yapılması domian modelinin workgroup modeline olan üstünlüklerinden bir tanesidir. Single Sign-on olarak da tanımlanan bu durum domain katmanında tanımlanan herhangi bir dizin servisleri nesnesinin tüm domain üyesi makinalarda geçerli olması anlamına gelir.
Windows 2000 ile beraber yeni gelen bir tasarım öğesi de grupların iki ana kategoride incelenmesidir. Group type, yani grubun Distribution ya da Security grubu olarak tanımlanması ve Group Scope, grubun geçerli olduğu alan; Domain Local, Global ve Universal. Grupları bu iki ana kategoride incelemeden önce Windows 2000 domainlerine özgü Domain modunun da gruplar üzerinde etkili olduğu belirtmek gerekir. Bu modlar Mixed ve Native modlardır.
Öncelikle domain modundan bağımsız olarak varolan Group Type a baktıktan sonra Mixed ve Native modların ne olduğuna ve bu modların grupları ve kullanımlarını nasıl etkilediğine bakıcaz.

Group Type

Grup tipleri grupların ne için kullanılacağını belirler. İki tane grup tipi vardır: Security ve Distribution.

Security grupları

Security grupları Windows 2000 de üzerinde erişim kontrol izinleri tanımlanabilen kaynaklar üzerinde erişim izinleri vermek için kullanılır. Security grupları kaynaklar üzerinde erişim kontrol listelerinde security principal lar tanımlarken karşımıza çıkarken distribution grupları bu listelerde gözükmez. Security grupları Exchange 2000 gibi Windows 2000 Active Directory dizin servislerini kullanan uygulamalar tarafından e – mail dağıtım listeleri gibi kullanılabilir.

Distribution grupları

Security gruplarından farklı olarak distribution grupları sadece üyelerin toplu şekilde bir takım directory services enabled application lardan faydalanmalarını sağlamak üzere vardır. Distribution grupları üzerinde hiçbir şekilde security permission tanımlamak mümkün değildir. Aynı security grupları gibi distribution grupları da e – mail dağıtım listeleri gibi kullanılabilirler, aslında distribution grupları da bu iş için tasarlanmıştır zaten.
Group scope ya da Türkçe karşılığıyla grubun çalışma alanı ya da kapsamı olarak da tanımalayabileceğimiz bu kriter grupların etki alanları ya da domainler içinde ve arasında nasıl çalışacağını, nerelerden üyeler alabileceklerini ve hangi gruplar ile içiçe geçebileceklerini belirler.
Windows 2000 domain leri kurulumları ile birlikte default olarak mixed mode da çalışmaya başlarlar. Mixed mode domainler için eğer hala Windows NT den kalan Backup Domain Controller makinalar domain içerisinde çalışmaya devam ediyorsa onları desteklemek için vardır. BDC makinaların directory database replication a hala daha katılabildiği bu modda belli bazı uyumluluk için alınmış tedbirler vardır. Mixed mode da çalışan bir Windows 2000 Active Directory domaini eski BDC makinalara da domain database i gönderdiği için bu makinalara onların yönetemeyeceği ve yeni bir grup olan Universal grupları göndermez. Bununla bilikte grupların birbirleri arasındaki ilişkiler de mixed mode domainlerde aynı Windows NT tabanlı domain lerde olduğu gibi kalır. Dolayısıyla mixed mode domainlerde kesinlikle universal gruplar ve gruplar arası sadece Windows 2000 Active Directory domainlerine özgü bir takım işlemler yoktur. Şimdi Windows 2000 Active Directory gruplarına mixed ve Native mode olmak üzere iki ana başlık altında bakalım.

Global gruplar

Global gruplar mixed mode da çalışırken aynı domain içerisinden kullanıcı hesaplarını üye olarak kabul ederler ve sadece (herhangi bir domaindeki) domain local grupların üyesi olabilirler. Native mode a geçildiğinde ise global gruplar aynı domain içerisinde birbirlerinin üyesi olabilirler ve universal grupların aynı domain deki diğer global grupların üyesi olabilirler.
Global grupların Windows NT 4.0 dan beri kullanılan ve tasarımından kaynaklanan en büyük özelliği her zaman sadece kullanıcı hesaplarını belli bir grup adı ve kapsamı altında toplayıp onları domainler arası etkileşim sırasında gruplayabilmek ve ortak erişim desenlerine sahip kullanıcıları toıplamaktır. Aslında bu noktada sorun ne NT 4.0 ne de Windows 2000 de herhangi bir kullanıcı hesabının domain ler arası yolculuk yapamaması ya da bir kullanıcı hesabına başka bir domain de erişim izni verilememesi değildir. Tüm bunlar yapılabilir. Burada tasarımdaki amaç global gruplar gibi üyelerini sadece oluştuğu ya da ortaya çıktığı domainden alan gruplar ile domainler arası kaynak erişimine bir düzen ve sistem sağlamaktır .
Global gruplar oluştuktan sonra tüm Active Directory forest domainleri içerisinde kullanılabilir. Security grubu olarak tanımlandıktan sonra bu kapsam dahilinde kalan tüm domain lerde tanınıp üzerlerinde erişim izinleri tanımlanıp çalışmaları sağlanabilir.

Domain Local gruplar

Domain local gruplar oluşturuldukları domainin sınırları ile kısıtlı bir kapsama sahip olan gruplardır. Sadece native mode da diğer domain lokal grupların üyesi olan bu gruplar domain içindeki kaynklara erişimi kontrol etmek için kullanılırlar. Buna örnek olması açısından şunu düşünelim. Kaynakların sabit kaldığı yani server lar ve üzerlerindeki paylaşımların değişmediği fakat kullanıcı grupların domain yapılarının dinamik olarak sürekli değiştiği bir network yapısı olsun. Böyle bir yapı içinde satış isminde paylaştırılmış bir klasörü ele alalım. Çoklu domain yapısında kullanıcıların bir çok domain den bu kaynağa erişmek üzere geldiklerini düşünelim. Bu noktada eğer her domainin admin i bu kaynak üzerinde kullanıcılara tek tek erişim izinleri tanımlamaya kalkarsa gerçek esnek ve değişime ayak uydurabilen bir erişim kontrol sistemi elde etmiş olmayız.

 
Şekil 4
X1 X2 ve X3 adminleri kendi domainlerinden  bu kaynağa erişmesi gereken kullanıcıları sabit ve kullanıcılardan bağımsız olan bir global grup altında toplaması ve değişken kullanıcıların gerektiğinde bu gruba üye edilmesi AGLP diye de geçen kuralın ilk adımıdır. Satış paylaşımına erişecek olan kullanıcıları içerecek ve her domainde oluşturulacak global grupların X4 domainindeki domain local gruba üye edilmesi ve kaynak üzerinde sadece bu domain local gruba erişim izni verilmesi sonucu (değişken olan) kullanıcılardan bağımsız çalışan bir erişim kontrol sistemi elde edilmiş olur.
Domain local gruplara sadece oluştukları domain içerisinde erişim izinleri verilebilir ve sadece kendi domain lerinde görülebilirdirler. Başka bir domain de herhangi bir ACL listesine security principal eklemek üzere add düğmesine basıldığında seçilen uzaktaki domaindeki domain local gruplar kesinlikle görülmezler.

Universal gruplar

Windows 2000 ile beraber gelen universal grupları diğer grup tiplerinden ayıran en önemli özelliği üye olarak herhangi bir domain den kullanıcı hesapları, global gruplar ve universal grupları içerebilmesidir. Böylece ortak bir işlevi yürütmek üzere toplanması gereken security principalları toplamak için universal gruplar ı kullanmak en mantıklı iş oalcaktır. Bu noktada bu işi yapmak için domain local grupları da kullanabiliriz sorusu aklınza gelirse onun cevabı domain local grupların sadece kendi domain leri içinde gözüktükleridir. Halbuki universal gruplar forest içindeki tüm domainlerde üzerinde erişim izni tanımlamak üzere görülebilir durumdadırlar.

xxxxxx