کنترل دسترسی مبتنی بر نقش (RBAC) چیست؟

کنترل دسترسی مبتنی بر نقش (RBAC) یا دسترسی نقش محور، روشی برای کنترل کارهایی که کاربران می‌توانند در سیستم‌های فناوری اطلاعات یک شرکت انجام دهند ، می باشد. RBAC این کار را با اختصاص یک یا چند “نقش” به هر کاربر و دادن مجوزهای مختلف به هر نقش انجام می دهد. RBAC را می توان برای یک برنامه نرم افزاری واحد یا در چندین برنامه کاربردی اعمال کرد.

    RBAC :Role-Based Access Control

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



در RBAC، نقش ها ثابت هستند. مانند کلیدهای خانه در مثال بالا. آنها برای هر کسی که آنها را دارند یکسان تعریف می شوند . و به هر کاربری که به دسترسی بیشتری نیاز دارد، به جای دریافت مجوزهای سفارشی، یک نقش اضافی (یا یک کلید دوم) اختصاص می یابد.

از لحاظ نظری، این رویکرد مبتنی بر نقش برای کنترل دسترسی، مدیریت مجوزهای کاربر را نسبتاً ساده می‌کند. زیرا مجوزها برای تک تک کاربران طراحی نشده‌اند. با این حال، در شرکت‌های بزرگ با نقش‌ها و برنامه‌های وب متعدد، RBAC گاهی اوقات پیچیده و ردیابی آن سخت می‌شود و در نتیجه کاربران ممکن است مجوزهای بیشتری نسبت به نیاز خود داشته باشند.

کنترل دسترسی چیست؟

در امنیت سایبری، کنترل دسترسی به ابزارهایی برای محدود کردن و کنترل کارهایی که کاربران می‌توانند انجام دهند و داده‌هایی را که می‌توانند ببینند اشاره دارد. وارد کردن رمز عبور برای باز کردن قفل گوشی هوشمند یکی از نمونه‌های ابتدایی کنترل دسترسی است. تنها کسی که رمز عبور را می‌داند می‌تواند به فایل‌ها و اپلیکیشن های موجود در موبایل دسترسی داشته باشد.

نقش چیست؟

موقعیت یک فرد در یک شرکت ، به عنوان نقش یا رول نامیده شود. اما یک نقش در RBAC تعریف فنی تری دارد. نقش مجموعه ای دقیق از توانایی ها یا مجوزها ، برای استفاده در سیستم های شرکت است. هر کاربر داخلی حداقل یک نقش و برخی ممکن است چندین نقش داشته باشند.

نقش‌ها کلی هستند و برای هیچ یک از کارکنان یک سازمان تنظیم نمی‌شوند. به عنوان مثال، یک کارشناس فروش مجوزهای اختصاصی برای حساب کاربری خود را دریافت نمی کند. در عوض، نقش کارشناس فروش و تمام مجوزهای همراه، مانند امکان مشاهده و ویرایش پایگاه داده حساب مشتری به او اختصاص داده می شود. به سایر کارشناسان فروش تیم نیز همین نقش اختصاص داده می شود. اگر یک فروشنده خاص به مجوزهای گسترده نیاز داشت، یک نقش اضافی به او اختصاص داده می شد.

این رویکرد افزودن یا حذف یک کاربر را نسبتاً ساده می‌کند. به جای ویرایش مجوزها برای کاربران به صورت فردی، یک مدیر به سادگی می‌تواند نقش آنها را تغییر دهد.

مجوز کاربر چیست؟

در زمینه کنترل دسترسی، مجوز توانایی انجام یک عمل است. به عنوان مثال امکان آپلود یک فایل در پایگاه داده شرکت نیاز به مجوز دارد. یک کاربر قابل اعتماد ، مثلاً یک کارمند داخلی ، اجازه آپلود فایل ها را خواهد داشت، در حالی که یک پیمانکار خارجی ممکن است این مجوز را نداشته باشد. در RBAC، هر نقش با مجموعه ای از مجوزها همراه است.

کنترل دسترسی مبتنی بر قوانین چیست؟

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