مفهوم Active Directory Partitions

مفهوم Active Directory Partitions

گروه آموزشی مجموعه تدبیر

همانطور که می دانید، AD DS شامل محلی به نام Ntds.dit بوده که اطلاعات را برای تشخیص ، مدیریت و بخصوص پایگاه داده (database) ذخیره می کند. Ntds.dit به تنهایی یک فایل بوده که چندین directory partitions در آن وجود دارد. به هر directory partitions یک naming context یا NC گفته می شود که هر یک شامل object های خاصی بوده و در زمینه های مختلف کاربرد دارند. هر partition یک واحد replication است و توپولوژی replication خود را دارد . حداقل 2 تا directory partition بین DC ها در یک forest مشترک هستند : Schema partition و Configuration partition .

در ضمن تمام DC های موجود در یک دامین ، یک domain partition مشترک دارند .هر domain controller شامل پارتیشن های زیر می باشند:

Domain ممکن است تعداد زیادی domain partition  در هر forest وجود داشته باشد.domain partition ها در هر DC در دامین مربوطه ذخیره می شوند.domain partition  شامل اطلاعاتی در مورد users، groups، computers، organizational unit و Policy containers می باشد. domain partition با تمام DC های آن دامین replicate می شود. تمام object ها در هر domain partition در یک forest در GC با فقط یک زیرمجموعه از attribute value هایشان ذخیره می شوند. این موارد فقط با domain controller های درون domain و Global Catalog سرورها replicate می شوند.

Configuration فقط یک configuration partition در هر forest وجود دارد. configuration partition شامل اطلاعات ساختار forest-wide active directory می باشد . این اطلاعات عبارتند از : چه دامین ها و سایت هایی وجود دارند ، چه DC هایی در هر forest وجود دارد و چه سرویس هایی در دسترس هستند. اطلاعات configuration با تمام DC های یک replicate، forest می شود. شما می توانید محتوای این container را با استفاده از ADSI edit مشاهده کنید.

Schema فقط یک Schema partition در هر forest وجود دارد و این Schema partition در تمام DC های یک forest ذخیره می شود. Schema partition شامل تعاریف تمام object ها و attribute هایی که می توان در directory ساخت و توسعه داد، می شود. اطلاعات Schema با attribute های تمام DC ها replicate می شود. این موارد به همه domain controller های موجود در replicate، forest می شوند که می توانید از طریق کنسول schema آن را مشاهده کنید.

Application Directory این پارتیشن ها اطلاعات application در active directory را ذخیره می کنند. هرapplicatio تعیین می کند که چگونه اطلاعات مخصوص application را ذخیره ، مرتب و استفاده می کند. برای جلوگیری از replication غیر ضروری بین application partition های خاص ، می توان طراحی کرد که کدام DC درforest  میزبان application partition های مخصوص باشد . بر خلاف domain partition و application partition  که نمی تواند security principal object ها را ذخیره کنند. به علاوه ، دیتا در یک application partition در GC ذخیره نمی شود .

به عنوان مثالی از application partition، اگر از یک DNS یکپارچه با active directory یا integrated استفاده کنیم، 2 تا application partition برای zone های DNS داریم:ForestDNSZones   و  DomainDNSZones

ForestDNSZones قسمتی از forest است. تمام DC ها و DNS Server ها در یک forest ، اطلاعات replication این partition را دریافت می کنند. یک forest-wide application partition ، اطلاعات forest zone را ذخیره می کند. DomainDNSZones برای هر دامین منحصر به فرد است. تمام DC هایی که در آن دامین، DNS Server هم هستند، replication این partition را دریافت می کنند. هر دامین یک DomainDNSZones partition دارد ولی فقط یک ForestDNSZones partition وجود دارد . اطلاعات DNS به GC ها replicate نمی شود. هرکدام از این application directory partition ها به وسیله ی یک DNS subdomain و یک FQDN طراحی شده اند . برای مثال در یک active directory با نام abc.msn.com که root domain آن در active directory ، msn.com می باشد، built-in DNS application directory partition ها با FQDN های زیر مشخص میشوند :

ForestDNSZones.msn.com

DomainDNSZones.abc.msn.com

اما اگر بخواهیم عملیات replication  فقط بین چند DC خاص انجام شود، باید خودمان یک directory partition جدید ایجاد کنیم، مثل DP.msn.net و داخل آن، سرور های مورد نظر را add کنیم. حال در قسمت zone replication در zone مربوطه ، باید directory partition مورد نظر را انتخاب کنیم .

ساخت directory partition :

dnscmd [servername] /createdirectorypartition FQDN

اضافه کردن DNS Server های دیگر :

dnscmd servername /enlistdirectorypartition FQDN

برای ساخت application directory partition باید عضو Enterprise admins group باشیم.

هر domain controller یک کپی (replica) از این پارتیشن ها را در خود نگه داری می کنند. همانطور که گفته شد، پارتیشن configuration همانند schema، به همه domain controller ها در replicate، forest می شوند، در صورتی که domain NC برای یک دامین ، به همه domain controller های درون یک دامین replicate شده و نه به DC های دامین های دیگر!

بنابراین هر domain controller حداقل این سه replica را خواهد داشت. بطور معمول، این replica ها که شامل هر attribute یک object در active directory هستند، روی همه DC ها قابل ویرایش هستند و با هر تغییر در active directory ، این موارد نیز تغییر می کنند. اما در read-only domain controllers یا RODC کمی متفاوت خواهد بود. یک RODC همیشه یک نسخه غیرقابل ویراش (read-only replica) از همه objectهای موجود در پارتیشن های configuration، Schema و Domain را در دامین خود نگهداری می کند. البته برخی از این attribute ها با یک replicate، forest نمی شوند، مانند پسورد کاربران، مگر اینکه در password policy آن RODC اجازه replication را بدهید. برخی دیگر از attribute ها نیز وجود داشته که جزو موارد امنیتی domain و forest بوده و هرگز با یک replicate، forest نمی شوند.