کنترل دسترسی اختیاری (DAC) نوعی سیستم کنترل دسترسی است که یک خط مشی دسترسی تعیین شده توسط صاحب داده یا منبع را ارائه می دهد. مالک این اختیار را دارد که به سایر کاربران یا فرآیندها دسترسی یا رد کند.
پیدایش و تکامل کنترل دسترسی اختیاری
مفهوم کنترل دسترسی اختیاری به اولین روزهای سیستم های محاسباتی مشترک، به ویژه در سیستم Multics (اطلاعات چندگانه و خدمات محاسباتی) که در دهه 1960 توسعه یافت، برمی گردد. سیستم Multics شامل یک شکل ابتدایی از DAC بود که بعداً الهامبخش سیستمهای کنترل دسترسی مدرن شد. DAC با انتشار "کتاب نارنجی" وزارت دفاع ایالات متحده در دهه 1980 به مفهومی رسمی تبدیل شد که سطوح مختلفی از کنترل های امنیتی از جمله DAC را تعریف می کرد.
گسترش درک کنترل دسترسی اختیاری
کنترل دسترسی اختیاری بر اساس اصول امتیازات اختیاری است. این بدان معناست که فرد یا نهادی که دارای داده یا منبع است، این قدرت را دارد که تصمیم بگیرد چه کسی می تواند به آن داده یا منبع دسترسی داشته باشد. این کنترل می تواند به مجوزهای خواندن و نوشتن هم گسترش یابد. تحت DAC، یک لیست کنترل دسترسی (ACL) نگهداری می شود که نوع دسترسی یک کاربر یا یک گروه کاربری به یک منبع خاص را مشخص می کند.
ساختار داخلی و عملکرد کنترل دسترسی اختیاری
مدل DAC اساساً بر دو جزء کلیدی متکی است: لیست های کنترل دسترسی (ACL) و جداول قابلیت. ACLها با هر منبع یا شی مرتبط هستند و حاوی لیستی از موضوعات (کاربران یا فرآیندها) به همراه مجوزهای اعطایی آنها هستند. از سوی دیگر، جداول قابلیت فهرستی از اشیاء را که یک موضوع خاص می تواند به آنها دسترسی داشته باشد، حفظ می کند.
هنگامی که درخواست دسترسی انجام می شود، سیستم DAC ACL یا جدول قابلیت را بررسی می کند تا تعیین کند که آیا درخواست کننده اجازه دسترسی به منبع را دارد یا خیر. اگر ACL یا جدول قابلیت دسترسی را اعطا کند، درخواست تأیید می شود. در غیر این صورت تکذیب می شود.
ویژگی های کلیدی کنترل دسترسی اختیاری
- دسترسی تعیین شده توسط مالک: صاحب داده یا منبع تعیین می کند که چه کسی می تواند به آن دسترسی داشته باشد.
- لیست های کنترل دسترسی: ACL تعیین می کند که هر کاربر یا گروه کاربری چه نوع دسترسی دارد.
- جداول قابلیت: این جداول منابعی را که یک کاربر یا گروه کاربری می تواند به آن دسترسی داشته باشد فهرست می کند.
- انعطاف پذیری: مالکان می توانند به راحتی مجوزها را در صورت لزوم تغییر دهند.
- کنترل دسترسی انتقالی: اگر کاربر به منبعی دسترسی داشته باشد، به طور بالقوه می تواند به کاربر دیگری اجازه دسترسی بدهد.
انواع کنترل دسترسی اختیاری
در حالی که DAC را می توان به روش های مختلف پیاده سازی کرد، دو روش رایج ACL و لیست قابلیت ها هستند.
رویکرد | شرح |
---|---|
لیست های کنترل دسترسی (ACL) | ACL ها به یک شی (به عنوان مثال یک فایل) گره خورده اند و مشخص می کنند که کدام کاربران می توانند به شی دسترسی داشته باشند و چه عملیاتی را می توانند روی آن انجام دهند. |
لیست قابلیت ها | لیست قابلیت ها به یک کاربر گره خورده و مشخص می کند که کاربر به چه اشیایی می تواند دسترسی داشته باشد و چه عملیاتی را می تواند روی آن اشیاء انجام دهد. |
کاربرد، چالش ها و راه حل های کنترل دسترسی اختیاری
DAC به طور گسترده در اکثر سیستم عامل ها و سیستم های فایل مانند ویندوز و یونیکس استفاده می شود و به کاربران اجازه می دهد فایل ها و منابع را با افراد یا گروه های منتخب به اشتراک بگذارند.
یکی از چالشهای اصلی DAC «مشکل معاون گیجشده» است، که در آن یک برنامه میتواند ناخواسته حقوق دسترسی را افشا کند. به عنوان مثال، یک کاربر ممکن است یک برنامه با حقوق دسترسی بیشتر را فریب دهد تا اقدامی را از طرف او انجام دهد. این مشکل را می توان با برنامه نویسی دقیق و استفاده صحیح از امتیازات سیستم کاهش داد.
مشکل دیگر امکان انتشار سریع و کنترل نشده حقوق دسترسی است، زیرا کاربرانی که به یک منبع دسترسی دارند می توانند به طور بالقوه این دسترسی را به دیگران اعطا کنند. این را می توان از طریق آموزش و آموزش مناسب و همچنین کنترل های سطح سیستم برای محدود کردن چنین انتشاری حل کرد.
مقایسه کنترل دسترسی اختیاری با شرایط مشابه
مدت، اصطلاح | شرح |
---|---|
کنترل دسترسی اختیاری (DAC) | مالکان بر داده ها و منابع خود کنترل کامل دارند. |
کنترل دسترسی اجباری (MAC) | یک خط مشی متمرکز دسترسی را بر اساس سطوح طبقه بندی محدود می کند. |
کنترل دسترسی مبتنی بر نقش (RBAC) | دسترسی بر اساس نقش کاربر در سازمان تعیین می شود. |
آینده DAC احتمالاً با افزایش محبوبیت پلتفرمهای مبتنی بر ابر و دستگاههای اینترنت اشیا (IoT) متحول خواهد شد. انتظار میرود که کنترل دسترسی دقیقتر، که کنترل دقیقتری روی مجوزها فراهم میکند، رایجتر شود. علاوه بر این، با پیشرفت فناوریهای یادگیری ماشین و هوش مصنوعی، ممکن است سیستمهای DAC را ببینیم که میتوانند یاد بگیرند و با نیازهای دسترسی در حال تغییر سازگار شوند.
سرورهای پروکسی و کنترل دسترسی اختیاری
سرورهای پروکسی می توانند از اصول DAC برای کنترل دسترسی به منابع وب استفاده کنند. برای مثال، یک شرکت ممکن است یک سرور پروکسی راهاندازی کند که هویت و نقش کاربر را قبل از اجازه دسترسی به وبسایتها یا سرویسهای مبتنی بر وب خاص بررسی میکند. این تضمین می کند که فقط پرسنل مجاز می توانند به منابع آنلاین خاصی دسترسی داشته باشند و یک لایه امنیتی اضافی را فراهم می کند.
لینک های مربوطه
- امنیت کامپیوتر: هنر و علم توسط مت بیشاپ: یک منبع جامع در مورد امنیت کامپیوتر، از جمله کنترل دسترسی.
- درک و استفاده از کنترل دسترسی اختیاری: مقاله ای از CSO که DAC را با جزئیات بررسی می کند.
- انتشارات ویژه NIST 800-12: راهنمای مؤسسه ملی استانداردها و فناوری ایالات متحده برای امنیت رایانه، شامل بحث در مورد DAC.
- مدل های کنترل دسترسی: راهنمای دقیق مدل های مختلف کنترل دسترسی توسط O'Reilly Media.
- DAC، MAC و RBAC: مقاله ای علمی در مورد مقایسه مدل های DAC، MAC و RBAC.