مفاهیم Trust در Active Directory قسمت دوم – معرفی انواع Trust های، یک طرفه و دو طرفه

در قسمت قبل به توضیح و تشریح مفاهیم تئوری پرداخته شد. در این قسمت به معرفی انواع Trust ها خواهیم پرداخت. در حالت کلی همه Trust ها می توانند به صورت One Way Trust یا Two Way Trust طراحی شوند. هر کدام از این مکانیزم ها، دارای Level های امنیتی منحصر به فرد خودشان هستند که با توجه به ضرورت ها و نیاز یک سازمان پیاده سازی می شوند. این گونه Trust ها اغلب برای Domain هایی که دارای Windows NT 4 هستند و قصد Trust زدن به دامین هایی که دارای Windows server 2008 هستند استفاده می شود. یا اینکه با یک Domain که در یک Forest جداگانه که با آن Forest هیچ Trust ای برقرار نکرده است، استفاده می شود.

اما نکته مهمی که در ساختار External Trust ها وجود دارد، وابستگی این مکانیزم به سرویس Domain Naming Server یا DNS است. علت نیازمند بودن این سرویس در این ساختار بحث Namespace کاربرانی است که از Forest دیگری قصد دستیابی به منابع را دارند. در صورتی که در این ساختار Root DNS  نداشته باشیم، حتماً و حتماً (الزاماً) باید در DNS Server خودمان Conditional Forwarder تعریف کرده باشیم.

trust-in-active-directory-concepts-part-ii-technet24-00

One Way Trust -1:

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

trust-in-active-directory-concepts-part-ii-technet24-01

Trust های One Way (یک طرفه) می توانند به دوقسمت Incoming و Outgoing تقسیم شوند و همچنین One Way Trust ها می توانند Transitive و Non transitive باشند. به عنوان مثال Trust از نوع One Way ای که از دامین A به دامین B بر قرار است، در واقع مسیر ارتباطی است که فقط با یک جهت بین دو دامین A و B ایجاد شده است. این مورد بدین معناست که تمامی کاربران دامین A توانایی دسترسی به منابع مورد نظر خود در دامین B را دارند.

trust-in-active-directory-concepts-part-ii-technet24-02

Incoming Trust:

Trustهای از نوع Incoming فقط و فقط دارای قابلیت وارد شدن به فصای یک DC دیگر را دارند و این اعتماد حتی علیرغم وجود سایر روابط موجود در سطح یک Forest، تنها و تنها مختص به همان DC می شود. درواقع دامین اولی که Trust زده به همه منابع موجود دسترسی خواهد داشت، اما عکس این فرایند امکان پذیر نخواهد بود. برای درک بهتر این مورد به مثال ساده ای اشاره خواهم کرد. فرض کنید که شرکت B از زیر مجموعه شرکت های تابعه شرکت A است و دامین کنترلر مربوط به شرکت A با شرکت B دارای یک  Trustیک طرفه است. در این حالات کلیه کاربران شرکت A قادر به Log in کردن نام کاربری خود در فضای کاری شرکت B خواهد بود و حتی قابلیت مشاهده Rooming Profile و سایر اطلاعات شخصی خودشان در این فضا را خواهند داشت، اما از آنجایی که شرکت B جزء شرکت های زیر مجموعه A بوده، بنابراین کاربران این شرکت (شرکت B) حق Log in کردن در دامین کنترلر اصلی که همان شرکت A است را نخواهند داشت.

trust-in-active-directory-concepts-part-ii-technet24-04

Outgoing trust:

در این نوع از Trust یک DC را در نظر می گیریم که فقط اجازه Trust برقرار کردن با یک DC خاص را دارد. برقراری ارتباط بین این دو DC فقط در شرایطی انجام می شود که DC اولی فقط اجازه خارج شدن را دارد. برای درک بهتر این مسئله به این مثال توجه کنید. فرض کنید که ما 3  دامین کنترلر با نام های Sadeghpour.local و Tehran.co و Test.pro داریم.

trust-in-active-directory-concepts-part-ii-technet24-05

اگر بخواهیم که User های دامین Sadeghpour.local به منابع دامین Test.pro دسترسی داشته باشند، از آنجایی که این دو DC هیچ گونه روابط مستقیمی با هم ندارند، و قابلیت ایجاد Trust مستقیم هم بین آنها نیست، بنابر این از Trust های Outgoing باید بهره جست. در این فرایند چون دامین Sadeghpour.local  فقط به دامین Tehran.co اعتماد یا Trust دارد و از طرفی هم این اعتماد یک طرفه است، بنابراین با ایجاد یک Trust، یکطرفه Outgoing  به دامین  Tehran.coرا برقرار خواهیم کرد. و از طرف دیگر هم بکمک  Trustموجود بین دامین Tehran.co و Test.pro دسترسی به منابع اشتراکی چون فایل ها و فولدرها، پرینتر ها و سایر منابع اشتراکی موجود در دامین Test.pro برای کاربران Sadeghpour.local بکمک Outgoing Trust  فراهم خواهد شد.

Two Way Trust -2:

در این حالت اگر DC بنام Sadeghpour.local با DC دیگری بنام Tehran.co از Two Way Trust  استفاده کنند در واقع یک Trust به طور مستقیم از Tehran.co  به Sadeghpour.local ایجاد می شود و تمام User های هر دو دامین می توانند از منابع یکدیگر استفاده کنند. به عنوان مثال وقتی که محمدصادق صادقپور دوست آرش ولدبیگی است خب طبعاً آرش ولدبیگی هم دوست محمدصادق صادقپور بوده و این نوع Trust یا ارتباط به صورت دوطرفه خواهد بود.

trust-in-active-directory-concepts-part-ii-technet24-06

Two way Transitive :

اما  Trustدو طرفه ای که از نوع Transitive هست چطور؟ تمامی دامین های موجود در یک Forest که دارای روابط Trust Tow Way هستند به صورت خودکار در قالب Transitive  طراحی می شوند. در این نوع ساختار، زمانی که یک Child DC دیگر در همان Forest ایجاد می شوند به صورت اتوماتیک یک نوع Trust  از نوع Transitive بین Parent و Child همان Forest ایجاد می کند. در حالت پیش فرض Trust بین Parent ها و Child  ها همیشه به صورت Two Way Transitive  می باشد. به عنوان مثال اگر دامینی بنام Tehran.co به دامین دیگری بنام Sadeghpour.local  بخواهد Two way Transitive  بزند و از طرفی، دامین Sadeghpour.local هم به دامین سوم دیگری بنام Test.pro هم Two way Transitive بزند، پس یک Two way Transitive به طور خودکار بین Tehran.co و Test.pro ایجاد می شود. در واقع تمامی دامین های دیگر در این شرایط و در صورت وجود Two way Transitive  می توانند از تمامی منابع یکدیگر استفاده کنند. با کمی دقت می توانید متوجه شوید که همیشه بین ریشه یک Forest و Child هایش، در سطح Forest یک Two way Transitive ایجاد می شود چرا که ریشه Forest  پدر است و یک سطح بعد از آن Child هایش به حساب می آیند. پس با این اوصاف تمامی Child هایش هم می توانند از منابع هم استفاده کنند. البته این بحث فقط در سطح اول Forest که اصطلاحاً به آن Top Level می گویند اتفاق می افتد.

trust-in-active-directory-concepts-part-ii-technet24-07

توجه داشته باید که، مفایم Trust بسیار نزدیک به هم بوده و شاید تا به صورت عملی پیاده سازی نشود کاملاً قابل درک و تفهیم نباشد. اما نگران نباشید، چرا که در ادامه با پیاده سازی یک سناریو جامع و کامل این موارد برایتان به راحتی قابل درک خواهد بود. اما دو نوع اصطلاح دیگر هم که در مفاهیم Trust ها وجود دارد Trust های از نوع Implicit و Explicit است.

  1. Implicit
    به Trust هایی گفته می شود که به صورت اتوماتیک ایجاد خواهند شد. مانند Trust  ای که بین Parent و Child ایجاد می شود که به صورت اتوماتیک است.
  2. Explicit
    به Trust هایی که خودمان به صورت دستی ایجادشان می کنیم، گفته می شود.

دسته بندی انواع Trust ها در سطح یک Forest :

Trust های درون یک Forest را می توان به 4 دسته کلی تقسیم کرد. فقط توجه داشته باشید که تا به اینجا انواع تقسیم بندی هایی که عرض کردم، از نظر فضای کاری که مورد استفاده قرار می گرفتند، متفاوتبودند. و در این قسمت ما فقط به بررسی روابط Trust های موجود در سطح یک Forest خواهیم پرداخت.

Trust بین Parent و Child:

در این نوع Trust که به صورت اتوماتیک ایجاد می شود تمام Domain ها باChild  های خودشان که ساختار نام مشابهی دارند به صورت Two Way ارتباط برقرار می کنند و تمام یوزر ها می توانند به منابع یکدیکر در صورت داشتن Permission دسترسی پیدا کنند.

trust-in-active-directory-concepts-part-ii-technet24-08

Tree Root Trust:

توجه داشته باشید که این نوع از Trust ها فقط زمانی قابل پیاده سازی خواهند بود که در فضای کاری شما Trust های از نوع Tow Way Trust و البته Transitive  وجود داشته باشند. این نوع Trust هم، مانند Child به Parent است، فقط با این تفاوت که Domain هایی هم که ساختار نامشان مشابه نیست هم می توانند با هم Two Way Trust  داشته باشند. پس user ها می توانند از منابع هم استفاده کنند مشروط به این که در این حالت هم Permission لازم را داشته باشند. این نوع از Trust ها درواقع Trust هایی هستند که در یک مجموعه گسترده بوجود آمده، و در ریشه مجموعه شکل می گیرند.

trust-in-active-directory-concepts-part-ii-technet24-09

Shortcut Trust .3
Shortcut Trust  ها عمدتاً بین دو DC ای که در یک Forest مشخص قرار دارند ایجاد می شوند Shortcut Trust فرایندی است که بیشتر در بهبود تایم Log in  کردن و مباحث Authentication کاربران و یا دسترسی آنها به منابع موجود در شبکه نقش دارد. وقتی که دو Domain Tree در سطح یک Forest  نیاز به منابع یکدیگر دارند، و از طرفی هم این Trust ، به واسطه یک Parent و Child در این Forest برقرار است، این اعتماد به واسطه Trust موجود در رأس مجموعه در Forest ایجاد شده است. در چنین حالتی، برای کوتاه شدن مسیر و بهبود زمان عملکرد از مکانیزم Shortcut Trust استفاده می کنیم Shortcut Trust ها می توانند هم به صورت دوطرفه (Tow Way) و هم به صورت یک طرفه (One Way) در یک Forest مشخص ایجاد شوند.

trust-in-active-directory-concepts-part-ii-technet24-10

در اینجا بین 2 دامین دلخواه درون یک Forest ما Trust ایجاد می کنیم، که هدفمان از این کار کاهش ترافیک درون شبکه است. ضمن این که در سطح شبکه شما سرویس Kerberos هم باید فعال باشد تا در بحث Authentication کردن User ها یا همان احراز هویت کاربران مشکلی ایجاد نشود. پس در واقع با این کار یک میانبر بین 2 دامین ایجاد می شود که دیگر برای ارتباط با هم نیازی به ارسال اطلاعاتشان بین دامین های مختلف نباشد. درواقع بین دامین Sadeghpour.local  و SEVEN.HA.Sadeghpour.local یک Shortcut Trust ایجاد می کنیم که در صورت لزوم، اگر خواستند با هم ارتباط برقرار کنند نیازی به طی کردن کلیه مسیر موجود در دامین ها را نداشته باشند.

trust-in-active-directory-concepts-part-ii-technet24-11Shortcut Trust  ها عمدتاً بین دو Domain Tree ای که در یک Forest یکسان قرار دارند ایجاد می شوند و همان طور که اشاره شد فلسفه ایجاد آنها عمدتاً جهت افزایش سرعت Authentication کردن کاربران و یا دسترسی به سایر منابع مجاز موجود در بین Domain Tree های یک Forest است.smile icon

مفاهیم Trust در Active Directory قسمت اول
مفاهیم Trust در Active Directory قسمت سوم

8 دیدگاه
  1. Sadeghpour says

    سپاسگزارم.

  2. احسان ملکی says

    عالی بود مهندس صادق پور

    1. Sadeghpour says

      سپاسگزارم جناب آقای ملکی عزیز

  3. milad24 says

    بسیار عالی صادق جان ، همیشه موفق باشی

    1. Sadeghpour says

      زنده باشی میلاد جان

  4. nimool60 says

    مثل هميشه عالي

    1. Sadeghpour says

      محبت دارین ممنونم

  5. nemo58 says

    سلام ممنون از این همه زحمتی که میکشید.قسمت سوم واول این اموزش مشکل داره صفحه باز نمیشه.

دیدگاه

آدرس ایمیل شما منتشر نخواهد شد.