مدیریت گروه ها

به دلیل تعدد تعداد User ها مدیریت آن ها عملا غیر ممکن است. به همین دلیل از گروه هایی استفاده می کنیم تا مدیریت ها در محیط اکتیو دایرکتوری ساده تر صورت گیرد. از طرف دیگر، با گذر زمان، کاربران، کامپیوتر ها و سرویس ها در محیط اکتیو دایرکتوری تغییر می کنند و در صورت مدیریت مستقیم روی کاربران، سبب دوباره کاری می شود. به عنوان مثال ممکن است در سازمان، حتی تنها یک کاربر خاص به دسترسی هایی که سایر کاربران ندارند لازم داشته باشد. در این شرایط هم حتی باید از یک Group که تنها همان یک کاربر عضو آن است استفاده شود. دلیل این امر آن است که در صورت تغییر کاربر با شخص دیگری، از دوباره کاری و پیچیده شدن تعیین دسترسی ها جلوگیری به عمل آید. از طرف دیگر، تصور کنید در دپارتمان فروش، ۱۰۰ کاربر باید به ۱۰ Shared Folder مختلف در سه سرور مختلف دسترسی داشته باشند. ضمن آنکه تعیین دسترسی کاربر و تغییرات احتمالی بدون استفاده از گروه ها، عملیات طاقت فرسایی است، با توجه به آنکه هر تغییر در ACL فایل ها، سبب می شود Archive Flag فایل ۱ شود، سبب خواهد شد که عملیات Backup با چالش جدی رو به رو شود.

اکنون تصور کنید که علاوه بر کاربران دپارتمان فروش، که آن ها را یک گروه در نظر می گیریم، کاربران گروه های مشاوران فروش و بخش بازاریابی هم لازم است به همان Shared Folder ها دسترسی داشته باشند. بنابراین این باید در هر Shared Folder سه مجوز دسترسی مختلف تعیین کرد. اکنون اگر لازم باشد هشت مشاور ارشد که در گروه های متمایزی عضو هستند، نیز به همان Shared Folder ها دسترسی داشته باشند لازم است مجددا ACL تغییر کند. در اینجا به راحتی حدس زده اید که گروه ها تنها نباید شامل کاربران باشند و در دو مرحله باید طراحی صورت گیرد تا مدیریت موثر تر باشد. ابتدا کاربران را بر اساس وظیفه سازمانی در گروه های معین قرار می گیرند و سپس گروه دیگری که شامل گروه هایی باشد که لازم است به آن ۱۰ Shared Folder دسترسی داشته باشند. این گروه را در تعیین ACL روی Shared Folder ها استفاده می کنیم. به عبارت دیگر، دلیل وجود گروه اول، تعدد کاربران بود، اما دلیل وجود گروه دوم، نا متمرکز بودن و تعدد ACL ها بود. معمولا گروه های این چنینی را با پسوند ACL_ نمایش می دهیم تا از سایر گروه ها متمایز باشد. گفتی است در سناریوی فوق می توان از راهکارهای مدیریت فایل نیز استفاده کرد که در اینجا مورد بحث نیست.

انواع گروه ها

گروه ها شامل دو نوع مختلف هستند:

الف: Security Group: به گروه هایی گفته می شود که برای مدیریت دسترسی ها استفاده می شود.

ب: Distribution Group: این گروه ها نمی توانند برای تعیین دسترسی استفاده قرار گیرند. بیشترین کاربرد این گروه در Microsoft Exchange برای تعیین گروه های ارسال دسته جمعی است.

Security Group ها دارای یک SID هستند که در Token کاربر اضافه می شوند. برخی از سازمان ها به دلیل آنکه Security Groups می توانند به جای Distirution Group استفاده شود، صرفا از آن استفاده می کنند. این امر توصیه نمی شود زیرا یک SID در Token اضافه می شود که سبب بادکنکی شدن حجم Token می شود. امکان تبدیل نوع گروه پس از ساخت وجود دارد.

*. Authorization Manager Application Groups: این گروه برای تعیین دسترسی توسط برنامه نویسان به کار می رود و مدیران شبکه برای تعیین سطح دسترسی از آن استفاده نمی کنند. این گروه شامل دو لیست Member List و NonMember List است. Authrization Manager Applications برای ذخیره سازی اطلاعات از AD DS ، AD LDS یا یک فایل XML استفاده می کنند.

حوزه گروه ها

برای تعیین حوزه گروه ها از سه فاکتور زیر استفاده می شود:

۱) Replication: گروه کجا معین شده و در کجا Replicate می شود؟

۲) Membership: چه اشیایی می توانند در گروه عضو شوند؟

۳) Availability: در کجا گروه می تواند مورد استفاده قرار گیرد؟

Scope Replication Membership Availability
Domain Local تمام دامین کنترلر ها در دامین – هر User، Computer ، Global Group ، Domain Local Group دیگر از هر Trusted Domain یا هر دامین در Forest یا خود دامین

– Universal Group های تعیین شده در هر دامین در Forest

– Nested Domain Local Group از Local Domain

– در هر عضو دامین
Global تمام دامین کنترلر ها در دامین – اکانت های Users و Computers از همان دامین

– Nested Global Group از همان دامین

– هر عضو Forest یا Trustung Domain
Universal با GC – Users و Global Groups از هر دامینی در Forest

– Nested Universal Groups از هر دامینی در Forest

– هر عضو در Forest

Domain Local: معمولا برای تعیین مجوز های دسترسی به کار می روند. همانند گروه های ACL_ که اشاره شد.

Global: معمولا برای تعیین عضویت کاربران و کامپیوتر ها استفاده می شود. همانند گروه های دپارتمان فروش و دپارتمان بازاریابی در مثال فوق.

Universal: معمولا برای تعیین دسترسی های لازم برای چند گروه Global در دامین های مختلف به کار می رود. به عنوان مثال یک سازمان شامل سه دامین Asia ، America و ٍ Europe است و هر دامین شامل گروه  local Managers در حوزه Global است. برای دسترسی مدیران به منابع معینی در تمام جنگل گروه Regional Manager را در حوزه Universal ساخته می شود.

در جدول زیر باری دیگر Membership گروه ها در حوزه های مختلف بررسی می شود.

Group Scope

همان Domain

Domain دیگر در Forest

از Trusted External Domain

Domain Local Users
Computers
Global Groups
Domain Local Groups
Universal Groups
Users
Computers
Global Groups
Universal Groups
Users
Computers
Global Groups
Global Users
Computers
Global Groups
NA NA
Universal Users
Computers
Global Groups
Universal Groups
Users
Computers
Global Groups
Universal Groups
NA

 

امکان تبدیل مستقیم حوزه گروه ها به صورت زیر وجود دارد:

  • Global به Universal
  • Domain Local به Universal
  • Universal به Global
  • Universal به Domain Local

*. برای تبدیل هایی که به صورت مستقیم انجام نمی شود، می توان ابتدا به حوزه قابل تبدیل تبدیل گردد و سپس به حوزه مطلوب تبدیل شود. توجه شود که با آنکه امکان تبدیل وجود دارد اما اگر عضویت هایی بر خلاف عضویت های حوزه مطلوب وجود داشته باشد، امکان تبدیل وجود نخواهد داشت. بنابراین لازم است پیش از تبدیل، عضویت ها اصلاح شود.

گروه Universal منعطف ترین حوزه است اما با یک هزینه. از آنجایی که در GC اطلاعات اعضا ذخیره می شود، اگر Functional Level (حوزه عملکرد دامین) Windows Server 2000 باشد تمام Member List باید Replicate شود. البته در Windows Server 2003 به دلیل استفاده از linked-Value Replication فقط تغییرات منتقل می شود. اگر DC دارای Windows Server 2003 / 2008 باشد، دارای Universal Group Membership Caching است. اگر Universal Group Membership Caching فعال باشد، SID های گروه های Universal و Global در خصیصه ی MSDS-Cached-Membership اشیاء User و Computer نگه داری می شود. عمل Cache در اولین logon صورت می گیرد، بنابراین اگر اولین logon کاربر در زمان down بودن GC باشد، کاربر نمی تواند logon کند. این ویژگی به Functional Level وابسته نیست و باید برای هر Site در اکتیودایرکتوری فعال باشد. اطلاعات Cache شده هر هشت ساعت یک بار به صورت پیش فرض به روز می شوند. برای یک کاربر منحصر به فرد امکان Force کردن به روز رسانی از طریق ADSI Edit وجود دارد. اگر اطلاعات برای هفت روز نتواند به روز شود، اطلاعات قدیمی در نظر گرفته شده و discard می شود. بنابراین برای Logon به GC نیاز است.

Restart کردن یک DC باعث Refresh شدن تمام اطلاعات می شود. برای Refresh شدن اطلاعات بدون Restart شدن DC در تمام DC ها مقدار updateCachedMembership در RootDSE را به ۱ باید تغییر داد. (با استفاده از LDP.EXE) هر دو متد باید روی تمام DC های یک سایت صورت گیرد.

استراتژی مدیریت گروه ها

پیش از این به محدودیت های تکنیکال در گروه ها اشاره شد. اکنون به دنبال یک استراتژی کارا هستیم. همانطور که دیدید، برای مدیریت موثر تر و محدودیت ها لازم است گروه ها عضو گروه های دیگر شوند، به فرآیند اضافه کردن یک گروه به گروه دیگر اصطلاحا Nesting گفته می شود. با متد ساده زیر، می توان به بهترین استراتژی دست یافت: (حهت سهولت در به خاطر سپاری به این شکل نوشته شده است)

  • اکانت ها (Users و Computer) عضو
  • گروه های Global بر اساس نقش سازمانی (Roles) می شوند. این گروه ها عضو
  • گروه های Domain Local می شوند تا قواعد (Rules) و دسترسی ها روی ان گروه ها اعمال شود و یک گروه ها به
  • ACL ها اضافه می شوند.
  • در یک جنگل چند دامینی، گروه های Global عضو یک گروه Universal می شوند و گروه Universal عضو یک گروه Domain Local است تا در ACL قرار گیرد. همچنین کاربران می توانند در گروه Universal قرار گیرند.

همانطور که اشاره شد گروه های Global بر اساس Roles و گروه های Domain Local بر اساس Rules ساخته می شوند. درک تفاوت این دو بسیار مهم و قابل توجه است. به دلیل سطح دسترسی های متفاوت معمولا لازم است که برای یک منبع چند گروه Domain Local ساخته شود. البته بدیهی است در بسیاری از سناریو ها که تنها لازم یک گروه Global به یک منبع دسترسی داشته باشد از ساخت گروه Domain Local صرف نظر می شود. همچنین در منابع موقتی و کاربران کم در سازمان های کوچک، از ساخت Global Group ها صرف نظر می شود.

در تصویر زیر بر اساس بهترین استراتژی ساخت گروه ها و بر اساس Role های سازمانی و Rule های مدیریتی گروه ها ساخته شده است. در ابتدا بدون توجه به Rule های دسترسی، و با توجه به Role سازمانی کاربران هم کار (کاربرانی که در یک دپارتمان کار می کنند) در گروه های Global قرار می گیرند و برای تعیین Rule های دسترسی در گروه های Domain Local با پیشوند ACL_ قرار گرفته اند.

image

اتوماتیک کردن فرآیند ساخت گروه

پیش از این فرآیند اتوماتیک کردن ساخت کاربران مورد بررسی قرار گرفت، زمانی که تعدادی شیئ لازم است ساخته شود، برای سهولت اعمال مدیریتی، از روش های اتوماتیک سازی استفاده می شود. همان روش هایی که در فرآیند اتوماتیک کردن ساخت کاربران انجام شد، می تواند در اتوماتیک کردن فرآیند ساخت گروه ها نیز مورد استفاده قرار گیرد. استفاده از خط فرمان، CSVDE ، LDIFDE ، Windows PowerShell و VB Script می تواند به عنوان روش های بهتر مورد استفاده قرار گیرد.

دستور DSAdd

در خط فرمان برای ساخت اشیاء در اکتیو دایرکتوری می توان از دستور DSAdd استفاده کرد. برای اضافه کردن یک گروه از الگوی DSAdd group GroupDN استفاده می شود. GroupDN باید با DN گروه جایگزین شود. به عنوان مثال “CN=Finance Managers,OU=Groups,DC=Contoso,DC=com”. توجه داشته باشید که DN در کوتیشن (“) قرار گیرد. به عنوان مثال برای ساخت یک گروه Global و Security در DN ذکر شده به صورت زیر عمل می کنیم:

dsadd group “CN=Finance Managers,OU=Groups,DC=Contoso,DC=com”

-dsamid  Finance Managers -secgrp yes -scope g

 

برای تعیین ویژگی های گروه از پارامتر های زیر در دستور dsadd می تواند استفاده کرد:

فرم کلی دستور

dsadd group <GroupDN> [-secgrp {yes | no}] [-scope {l | g | u}] [-samid <SAMName>] [-desc <Description>] [-memberof <Group> …] [-members <Member> …] [{-s Server> | -d <Domain>}] [-u <UserName>] [-p {<Password> | *}] [-q] [{-uc | -uco | -uci}]

پارامتر توضیح
GroupDN الزامی. مشخص کننده نام
Secgrp آیا Security Group است یا نه؟ Yes یا No
Scope معین کننده حوزه گروه. U برای Universal و G برای Global و l برای Local Domain
samid معین کننده یک Security Account Manager Name خاص برای برای گروه.
desc توضیحات گروه (جهت مشاهده سایر مدیران و یادآوری دلیل وجود گروه و…)
memberof گروه های دیگری که این گروه عضو آن است.
members اعضایی که در گروه جدید عضو می شوند.
s اتصال به یک سرور remote. در اینجا می توان از username و password دیگری استفاده کرد. به صورت پیش فرض دامین کنترلر که روی آن logon شده مورد استفاده قرار می گیرد.
? راهنما

 

روش های دیگر در آینده بررسی می گردند.

7 دیدگاه در مدیریت گروه ها

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *