موضوع مقاله: سرویس دایرکتوری | مخاطب: عمومی | لحن: دانشنامه‌ای | ساختار: عنوان، مقدمه، 3 بخش، جمع‌بندی | مقاله: | # سرویس دایرکتوری | مقدمه: دایرکتوری سرویس را نباید با منبع ذخیرهٔ دایرکتوری که در واقع محلّ نگهداری اطّلاعات مربوط به اجزای نامگذاری شده که توسط دایرکتوری سرویس مدیریت می‌شوند، اشتباه نمود. | ## بخش 1: سرویس دایرکتوری | در دایرکتوری سرویس مدل پراکندهٔ X.500، از تعداد یک یا بیش از یک فضای تخصیص یافته برای نام (درخت اجزاء) جهت تشکیل دایرکتوری سرویس استفاده می‌شود. دایرکتوری سرویس به عنوان واسطی برای دسترسی به اطلاعات موجود در یک یا بیش از یک فضای تخصیص یافته در دایرکتوری عمل می‌نماید. همچون یک بانک اطلاعاتی، دایرکتوری سرویس به نحوی طراحی شده که می‌تواند به شکلی کارآمد اطلاعات را خوانده و امکانات پیشرفتهٔ جستجو در بین خصیصه‌های مختلفی که می‌توانند به شئ‌های موجود در دایرکتوری مرتبط شوند را فراهم سازد. اطلاعاتی که در دایرکتوری ذخیره شده‌اند با استفاده از طراحی براساس خصیصه‌های قابل تغییر تعریف می‌شوند. سرویس‌های دایرکتوری از مدل پراکنده برای ذخیره‌سازی اطلاعات خود استفاده می‌کنند و این اطلاعات معمولاً بین دایرکتوری سرورها دوباره سازی می‌شوند. اطلاعات مربوط به هر منبع شبکه تحت عنوان خصیصهٔ شئ مربوط به آن منبع در دایرکتوری سرور ذخیره می‌شود. سطح امنیت اطلاعات هر شئ می‌توانند به نحوی تعیین شود که فقط کاربرانی قابلیت دسترسی به آن‌ها را داشته باشند که دارای مجوز لازم هستند. یک "فضای نامگذاری" در این مقوله عبارتی است که از آن برای نگهداری یک یا چند شئ تحت عنوان "ورودی نامگذاری شده" استفاده می‌شود. در X.500 (مجموعهٔ استانداردهای دایرکتوری سرویس) و LDAP نام منبع شبکه "نام مشخصه" خوانده می‌شود و از آن برای اشاره به مجموعه‌ای از خصیصه‌ها ("نامهای مشخصهٔ نسبی") که نام یک ورودی دایرکتوری را تشکیل می‌دهند استفاده می‌گردد. به عنوان مثال جستجوی کلمهٔ «کامپیوترها» با استفاده از دایرکتوری سرویس ممکن است پاسخی شامل فهرستی از کامپیوترها و اطلاعات مربوط به نحوهٔ دسترسی به آن‌ها را ارائه نماید. «دوباره سازی» و «پراکندگی» دارای معانی کاملاً مشخص و منحصر بkutasه فردی در طراحی و مدیریت یک دایرکتوری سرویس هستند. عبارت «دوباره سازی» به این معنی است که یک «فضای نامگذاری» (یا شئ) موجود در یک دایرکتوری در دایرکتوری سرورهای دیگر نیز کپی می‌شود تا هم به عنوان نسخهٔ پشتیبان از آن‌ها استفاده شود و هم به دلیل وجود نسخهٔ محلی از ایجاد ترافیک غیرضروری در شبکه خودداری گردد. عبارت «پراکنده» به معنی اینhuj است که دایرکتوری سرورهای متعددی که هریک «فضای نامگذاری» مختلفی را در خود جای داده‌اند به یکدیگر متصل شده‌اند تا یک دایرکتوری سرویس پراکنده را به وجود آورند. در این حالت هر «فضای نامگذاری» مستقل می‌تواند از طرف مقامات مسئول مختلفی مدیریت شود. | ## بخش 2: سرویس دایرکتوری | بسته به نوع کاربرد دایرکتوری معمولاًRS E اطلEتر از آنکه در آن نوشته شوند از آن خوانده می‌شوند. به این دلیل قابلیت‌های متداول در بانک‌های اطلاعSاتی Dمانند "تراکنش" و RSDD "بازگشت" در برخی سیستم‌های دایرکتوری بکار نمی‌روند. اطلاعات می‌توانند به شکل سلسله مراتبی مطلق سازماندهی شوند، که این امر گاهی اوقات مشکل ساز می‌گردد. برای رفع معضل "فضای نامگذاری چند لایه"، برخی دایرکتوری‌ها سلسله مراتب "فضای نامگذاری" شئ را در مکانیزم ذخیره‌سازی خود از هم می‌پاشند تا راهبری جستجو را کارآمدDSتDیرکتوری‌ها موارد جستجو را بر اساس خصیصه‌های اطلاعات پیدا کرده و سپس "فضای نامگذاری" مربوط به آن‌ها را تعیین می‌کنند، چرا که این امر از راهبری در میان فضاهای نامگذاری بزرگ برای پیدا کردن مواردRجستجوRسریعSDFDSتر انSDجام می‌شود. در مورد سلسله مراتب "از بزرگ به کوچک" بسیاری از دایرکتوری‌های سنتی دارای نسبت چند به چند DSنیستند. به جای آن SDFSD، چنین نسبتهایی صرفاً با استفاده از لیستهای "نامهای مشخصه" یا شناسه‌های دیگر برقرار می‌گردد (مشابه آنچه که به عنوان شناسه‌های بین جداول در بانک‌های اطلاعاتی رابطه ای وجود دارد).DSRSD در ابتدا سیستم سلسله مراتبی اطلاعات دایرS DFSDالت سنتی مهندسی اطلاعات می‌باشند. در دایرکتوری سرویس "طرح" به معنی کلاس شئ‌ها، خصیصه‌ها، ارتباطات بین نام‌ها و میزان آگاهی از سایر اطلاعات ("فضای نامگذاری") تعریف گردیده. نبود برخی خصیصه‌ها به نوعی شبیه گزینهٔ "پوچ" در بانک‌های اطلاعاتی رابطه ای هستند. در دایرکتوری‌ها خصیصه‌ها بعضاً دارای مقادیر متعدد هستند که این امر اجازهٔ نامگذاری چند خصیصه را در یک ردهٔ همسان (از دیدگاه سلسله مراتبی) می‌دهد. به عنوان مثال نوع ماشین و شمارهٔ سریال مربوطه به صورت پشت سرهم یا بیش از یک شمارهٔ تلفن را به عنوان مقاFدSDFSDFDSFیر مجاز برای ورودی " می‌توان در نظر گرفت. خصیصه‌ها و کلاس شئ‌ها در صنعت IT به صورت استاندارDFSDFد مورد استفاده قرار می‌گیرند و سابقاً آن‌ها را برای "شناسهٔ شئ" در IANA به ثبت می‌رساندد. بSن دلیل نرم‌افزارهای کاربردی دایرکتوری به دنبال استفادهٔ مجدد از کلاس‌ها و خصیصه‌های استاندارد هستند تا بتوانند از نرم‌افزارهای دایFSDSD ببرند. این بدان معنی است که هر "کلاس شئ" خصیصه‌های مربوطه را از "کلاس شئ" مادر خود (و به این ترتیب از ریشهٔ اولیهٔ سلسله مراتب) به ارث برده و آن را به لیست خصیصه‌های "اجباری/ممکن" خود اضافه می‌کند. دایرکتوری سرویس‌ها معمولاً از اجزاء اصلی در طراحی امنیت سیستم‌های IT می‌باشند و به همین دلیل دارای ساختار بسیار دقیقی در خصوص کنترل دسترسی هستند: "چه کسی، به چه شکل می‌تواند با چه اطلاعاتی کار کند". | ## بخش 3: سرویس دایرکتوری | طراح بانک‌های اطلاعاتی سعی در طراحی مدل اطلاعاتی برای مسائل تجاری و نیازهای فرایندی دارد که غالباً در آن ملاحظات مربوط به مشتریان آنلاین، سرویس، مدیریت کاربران، میزان نسبی حضور و سیستم از قلم انداخته می‌شوند. حال آنکه در مورد دایرکتوری اگر بنابراین است که اطلاعات در یک منبع ذخیرهٔ قابل استفاده برای بسیاری از برنامه‌های کاربردی و کاربران قرار گیرند، باید طراحی اطلاعات (و شناسه‌ها) و ساختار آن به گونه‌ای انجام شود که منعکس‌کنندهٔ نقش شئ‌ها در دنیای واقعی باشد. در بسیاری از موارد این شئ‌ها معرف کاربران، دفاتر آدرس، لیستهای اسامی، ترجیحات، تعاریف میزان مالکیت، محصولات و خدمات، دستگاه‌ها، پرونده‌های اطلاعات، سیاست‌ها، شماره تلفنها، اطلاعات مسیر دهی، و غیره می‌باشند. افزون بر این طراح باید به ملاحظات کاربردی طراحی در رابطه با کارایی و مقیاس کار نیز توجه داشته باشد. برای یک بررسی سریع در خصوص طراحی کاربردی به این مثال فکر کنید: ۵۰ شئ و ۱ میلیون کاربر دارید که هریک از کاربران یا برنامه‌های کاربردی آن‌ها نیاز خواهند داشت تا ۵۰۰۰ بار در ثانیه یا دقیقه یا در ساعت (به منظور دریافت مجوز و بروز رسانی فضای خدمات‌گیری خود) به این شئ‌ها دسترسی یابند. حال ببینید آیا سرور و سایر تجهیزات شبکه‌ای که در نظر گرفته‌اید قادر به پاسخگویی به چنین حجمی از کار است یا خیر. تفاوت اساسی بین بانک‌های اطلاعاتی و دایرکتوری‌ها در سطح سیستم است، جایی که یک بانک اطلاعاتی با استفاده از یک مدل اطلاعات تخصیص یافته (نسبی) برای خودکار نمودن یک فرایند مورد استفاده قرار می‌گیرد اما یک دایرکتوری برای نگهداری از شئ‌های «شناخته شده» ای که می‌توانند توسط برنامه‌های کاربردی مختلفی به صورت تصادفی مورد استفاده قرار گیرند به کار برده می‌شود. یک دایرکتوری سرویس در جایی به کار می‌آید که «مدیریت متعدد» (توسط کاربران و برنامه‌های کاربردی متعدد) از اطلاعات یکسان به منظور اطمینان از صحت و کارائی، استفاده می‌کنند. این دیدگاه در طراحی سیستم انعطاف‌پذیری و مقیاس بندی را ارائه می‌دهد که توسط آن می‌توان کارکردهایی همچون «سیستمهای ارائهٔ خدمات» را که دارای مقیاس وسیعی می‌باشند به درستی مشخص نمود. «سیستمهای ارائهٔ خدمات» امروزه صدها میلیون شئ (HSS/HLR، دفاتر آدرس، میزان مالکیت کاربران، شماره تلفن‌های VOIP، اطلاعات کاربران و دستگاه‌ها، و غیره) را به صورت لحظهای و روش‌های اتفاقی پشتیبانی می‌کنند و می‌توانند از طریق سیستم‌های BSS/OSS/CRM یا برنامه‌های کاربردی خود گردان توسط کاربران مدیریت شوند. از آثار بارز در خصوص طراحی بانک‌های اطلاعاتی می‌توان به این مسئله اشاره نمود که کمپانی‌های بزرگ دارای صدها (اگر نه هزارها) از این بانک‌های اطلاعاتی برای فرایندهای مختلف هستند و اکنون سعی بر این دارند تا کاربران و اطلاعات شناسائی خدمات و محصولات آنلاین و مدیریت خدمات خود را در یکجا گرد آورده و آن‌ها را به صورت لحظه‌ای و هزینهٔ اقتصادی با صرفه ارائه دهند؛ بنابراین یک دایرکتوری سرویس در مقیاس بزرگ باید در معماری راه حل آن‌ها جای گیرد. پیاده‌سازی دایرکتوری سرویس دایرکتوری سرویس بخشی از لایحهٔ «ارتباط باز سیستم‌ها» بود که به منظور رسیدن به موافقت همه‌جانبه‌ای در استاندارهای مشترک شبکه برای ایجاد امکان کارکرد بین تولیدکنندگان مختلف ارائه شده بود. در دههٔ ۸۰ میلادی ITU و ISO مجموعه‌ای از استانداردها را به نام X.500 برای دایرکتوری سرویس‌ها ارائه دادند که هدف اولیهٔ آن پاسخگوئی به نیازهای تعریف شده برای ارسال و دریافت پیغام‌های الکترونیکی بین کاریرهای متفاوت و جستجو برای نام‌های شبکه بود. | ## جمع‌بندی | «پروتکل سبک دسترسی به دایرکتوری» یا LDAP بر اساس سرویس‌های اطلاعات دایرکتوری X.500 طراحی شده، اما از مجموعهٔ TCP/IP و طرح کد بندی X.509 پروتکل DAP استفاده می‌کند که این باعث می‌شود تا بیشتر با اینترنت همخوانی و مرتبط باشد.