موضوع مقاله: کنترل دسترسی در رایانه | مخاطب: عمومی | لحن: دانشنامه‌ای | ساختار: عنوان، مقدمه، 3 بخش، جمع‌بندی | مقاله: | # کنترل دسترسی در رایانه | مقدمه: در امنیت رایانه‌ای، کنترل دسترسی عمومی شامل، شناسایی، مجوزدهی، احرازهویت، تأیید دسترسی، و حسابرسی می‌باشد. | ## بخش 1: کنترل دسترسی در رایانه | یک تعریف محدودتر از کنترل دسترسی فقط شامل تأیید دسترسی است، که در آن سامانه تصمیم می‌گیرد تا درخواست دسترسی را از یک فاعل از قبل احرازهویت شده، اعطا کند یا رد کند. معمولاً احرازهویت و کنترل دسترسی در یک عملیات منفرد ترکیب می‌شوند، که در نتیجه آن عملیات، دسترسی بر اساس یک احرازهویت موفق، یا براساس توکن دسترسی بی‌نام، تأیید می‌شود. روش‌های احرازهویت و توکن شامل گذرواژه، اسکن زیستی، کلیدهای فیزیکی، کلیدها و وسایل الکترونیکی، مسیرهای پنهان، مانع اجتماعی، و نظارت توسط انسان‌ها و سامانه‌های خودکار می‌شود. هم فاعل و هم مفعول را باید موجودیت نرم‌افزاری درنظر گرفت، و نه کاربر انسانی: یعنی هر کاربر انسانی فقط توسط موجودیت‌های نرم‌افزاری که کنترل می‌کنند، می‌توانند روی سامانه تأثیر بگذارند. اگرچه بعضی از سامانه‌ها فاعل را با شناسه کاربری (user ID) معادل می‌دانند، که در نتیجه آن همه پردازه‌های شروع شده توسط یک کاربر به صورت پیش‌فرض مجوزهای مشابهی دارند، این مرحله کنترل، به اندازه ای خوش دانه نیست که بتواند اصل کمینه‌سازی مجوزها را برآورده سازد، و می‌تواند مسئول شیوع بدافزار در این سامانه‌ها درنظر گرفته شود (ناامنی رایانه‌ای را ببینید). در بعضی از مدل‌ها، مثل مدل مفعول-توانمند، هر موجودیت نرم‌افزاری می‌تواند به صورت بالقوه هم به صورت فاعل و هم به صورت مفعول عمل کند. انواع مدل‌های کنترل دسترسی، تا سال ۲۰۱۴، در یکی از این دو کلاس قرار می‌گیرفتند: آن‌هایی که براساس توانمندی هستند، و آن‌هایی که بر اساس لیست کنترل دسترسی هستند (ACL). در مدل مبتنی بر توانمندی: یک ارجاع غیرقابل جعل‌کردن یا توانمندی را به یک مفعول، نگهداری می‌کند، که این ارجاع، دسترسی به مفعول را ممکن می‌سازد (تقریباً مشابه آنکه مالکیت خانه کسی توسط کلید خانه به او اعطا می‌شود)؛ دسترسی به دیگری با انتقال این توانمندی روی یک کانال امن به دیگری منتقل می‌شود. مدل مبتنی بر ACL: دسترسی یک فاعل به یک مفعول بستگی به آن دارد که آیا هویت او روی لیست همدست با مفعول وجود دارد یا نه (تقریباً شبیه آنکه یک دربان یک جشن، که IDها را چک می‌کند تا ببیند آیا نام او در لیست مهمان‌ها وجود دارد یا نه)؛ در اینجا دسترسی از طریق ویرایش لیست منتقل می‌شود. (سامانه‌های ACL مختلف، انواع مختلفی از روش‌ها در رابطه با اینکه چه کسی یا چه چیزی مسئول ویرایش لیست است و این لیست چگونه ویرایش می‌شود دارند). هر دو این روش‌های مبتنی بر توانمندی و مبتنی بر ACL سازوکارهایی در رابطه با اعطای حق دسترسی به همه اعضای یک گروه از فاعل‌ها ارائه می‌دهند (که معمولاً خود گروه به صورت یک فاعل مدل می‌شود). سرویس‌ها (خدمات) سامانه‌های کنترل دسترسی این خدمات اساسی را ارائه می‌دهند: مجوزدهی، شناسایی و احرازهویت (I&A)، تأیید دسترسی، و حسابرسی؛ که در آن: مجوزدهی: تعیین می‌کند که یک فاعل چه کاری می‌تواند انجام دهد. شناسایی و احرازهویت: اطمینان حاصل می‌کند که تنها «فاعل‌های مشروع» می‌توانند به سامانه وارد شوند. حسابرسی: این موضوع را تعیین می‌کند که یک فاعل (یا همه فاعل‌های مرتبط با یک کاربر) چه کار انجام داده‌اند. یک سیاست مجوزدهی، عملیاتی را که فاعل‌ها اجازه اجرای آن‌ها را در یک سامانه دارند، را تعیین می‌کند. سیستم‌عامل‌های جدید، سیاست‌های مجوزدهی را به صورت مجموعه‌های «صوری» از مجوزها پیاده‌سازی می‌کنند، که این مجوزها انواع یا افزونه‌های سه نوع اصلی دسترسی هستند: خواندن (R): فاعل می‌تواند خواندن محتوای فایل لیست کردن محتوای دایرکتوری نوشتن (W): فاعل از طریق این عمل‌ها می‌تواند محتوای یک فایل یا دایرکتوری را تغییر دهد: اضافه کن Add روزآمد کن Update حذف کن Delete تغییر نام بده Rename اجرا (X): اگر فایل یک برنامه باشد، فاعل می‌تواند باعث اجرای برنامه شود. (در سامانه‌های مشابه Unix، مجوز «اجرا»، اگر در یک دایرکتوری اعطا گردد، مجوز "پیمایش دایرکتوری" را تکرار می‌کند). این حقوق و مجوزها در سامانه‌های مبتنی بر کنترل دسترسی اختیاری (DAC) و کنترل دسترسی اجباری (MAC) به صورت متفاوتی پیاده‌سازی می‌شوند. شناسایی و احرازهویت شناسایی و احرازهویت (I&A) همان فرایند «تصدیق پیوند» یک هویت به موجودیتی است که دربارهٔ هویت ادعایی را مطرح می‌کند. فرایند I&A فرض می‌کند که یک تصدیق اولیه از هویت وجود دارد، که معمولاً به آن «اثبات هویت» گفته می‌شود. انواع متنوعی از اثبات هویت وجود دارد، که از تصدیق بین فردی توسط شناسایی از طریق حکومت، تا روش‌های بدون نام، که به ادعا کننده امکان بی‌نام بودن را می‌دهد، را شامل می‌شود. روش استفاده شده برای اثبات هویت و تصدیق باید «سطح اطمینانی» متناسب با استفاده مورد انتظار هویت در سامانه ارائه کنند. در ادامه، موجودیت، «هویت» را همراه با احرازهویت کننده به عنوان روش تصدیق اعلام می‌کند. | ## بخش 2: کنترل دسترسی در رایانه | احراز هویت‌ کننده‌ها معمولاً بر اساس حداقل یکی از این چهار فاکتور هستند: آنچه می‌دانید: مثل یک گذرواژه یا شماره شناسایی شخصی (PIN). این موضوع فرض می‌کند که تنها مالک حساب، گذرواژه یا PIN لازم برای دسترسی به حساب را می‌داند. در اینجا فرض می‌شود که تنها مالک حساب کارت هوشمند یا توکن مورد نیاز برای بازکردن حساب را دارد. کجا هستید: برای مثال داخل یا بیرون از یک دیوارآتش سازمان، یا نزدیکی محل ورود به یک وسیله GPS شخصی. 387, bottom در مدت تاییدکردن دسترسی، سامانه نمایش صوری «سیاست مجوزدهی» را با «درخواست دسترسی» مقایسه می‌کند، تا تعیین کند که آیا درخواست باید اعطا یا رد گردد. 2014 , bottom حسابرسی حسابرسی از بعضی مولفه سامانه مثل دنباله‌های حسابرسی (رکوردها) و لاگ‌ها استفاده می‌کند تا یک فاعل را به عمل‌هایش مرتبط سازد. «دنباله حسابرسی» و «لاگ‌ها» برای این موارد مهم اند: تشخیص تخلف‌های امنیتی ساخت دوباره وقایع امنیتی اگر کسی نیست که به صورت مرتب لاگ‌هایتان را بازبینی کند، و آن‌ها به صورت امن و سازگار نگهداشته نشده باشند، ممکن است به عنوان یک مدرک پذیرفته نشوند. بیشتر سامانه‌ها می‌توانند گزارش‌های خودکار تولید کنند، این کار براساس ملاک‌ها یا آستانه‌های از قبل تعریف شده و معین انجام می‌شود، که مرحله چیدن (Clipping level) نامیده می‌شود. برای مثال، یک مرحله چیدن را می‌توان تنظیم کرد تا گزارشی را در صورت وقوع این موارد تولید کند: بیشتر از سه تلاش ورود ناموفق در یک بازه داده شده هر تلاش برای استفاده از حساب کاربری غیرفعال این گزارش‌ها به مدیر سامانه یا مدیر امنیتی کمک می‌کند تا به صورت ساده‌تری تلاش‌های نفوذ ممکن را شناسایی کند. تعریف مرحله چیدن: توانایی یک دیسک برای نگهداری از ویژگی‌های مغناطیسی و نگهداری از محتوایش. کنترل‌های دسترسی مدل‌های کنترل دسترسی را گاهی به صورت اختیاری و غیراختیاری رده‌بندی می‌کنند. سه مدل شناخته شده‌تر شامل: کنترل دسترسی اختیاری (DAC)، کنترل دسترسی اجباری (MAC)، و کنترل دسترسی مبتنی بر نقش (RBAC) می‌باشد. کنترل دسترسی اختیاری کنترل دسترسی اختیاری (DAC) سیاستی است که توسط مالک یک مفعول تعیین می‌گردد. مالک تعیین می‌کند که چه کسی اجازه دسترسی به مفعول را دارد، و نیز او چه مجوزهایی دارد. دو مفهوم مهم در DAC این موارد هستند: مالکیت فایل و داده: هر فاعل موجود در سامانه یک مالک دارد. در بیشتر سامانه‌های DAC، هر مالک ابتدایی مفعول همان فاعلی است که منجر به ایجاد آن مفعول شده‌است. کنترل‌های دسترسی در سامانه‌های کنترل دسترسی مبتنی بر توانمندی یا مبتنی بر ACL می‌تواند اختیاری باشد. (در سامانه مرتبط با توانمندی، مفهوم صریح «مالک» وجود ندارد، بلکه سازنده یک مفعول دارای درجه کنترل مشابهی روی سیاست دسترسی اش است). کنترل دسترسی اجباری کنترل دسترسی اجباری به این موضوع اشاره دارد که فقط و فقط در صورتی اجازه دسترسی به یک مفعول داده شود که قواعدی موجود باشد که به یک کاربر خاص اجازه دسترسی به منبع را بدهد. مدیریت این موضوع مشکل است، اما موقعی که برای محافظت از اطلاعات بسیار حساس استفاده می‌شود، استفاده از آن موجه است. مدیریت (روی آنچه لازم است) موقعی ساده است که اطلاعات را بتوان به کمک کنترل دسترسی سلسله‌مراتبی محافظت کرد، یا با اینکه با برچسب‌های حساسیت آن را پیاده‌سازی کرد. برچسب حساسیت: در این سامانه‌ها، فاعل‌ها یا مفعول‌ها باید برچسب‌های مرتبط داشته باشند. برای دسترسی به یک مفعول داده شده، فاعل باید مرحله حساسیتی برابر یا بیشتر از مفعول تقاضاشده داشته باشد. | ## بخش 3: کنترل دسترسی در رایانه | ورود و صدور داده: کنترل ورود اطلاعات از دیگر سامانه‌ها و صدور به دیگر سامانه‌ها (شامل پرینتر) یک تابع حساس برای این سامانه‌ها می‌باشد، که در آن باید اطمینان حاصل شود که برچسب‌های حساسیت به درستی نگهداری و پیاده‌سازی می‌شوند، تا اطلاعات حساس در همه زمان‌ها به صورت مناسبی محافظت می‌گردند. معمولاً از دو روش برای اعمال کنترل دسترسی اجباری استفاده می‌شود: کنترل دسترسی مبتنی بر نقش (مبتنی بر برچسب): این نوع کنترل بیشتر شرایط خاص برای دسترسی به یک مفعول تقاضا شده را تعریف می‌کند. یک سامانهٔ کنترل دسترسی اجباری، یک حالت ساده از کنترل دسترسی مبتنی بر نقش را پیاده‌سازی می‌کنند، تا تعیین کند که آیا دسترسی باید اعطا شود یا رد گردد، این کار از طریق انطباق‌دادن این موارد انجام می‌شود: یک برچسب برای حساسیت مفعول یک برچسب برای حساسیت فاعل کنترل دسترسی مبتنی بر مشبکه: از این مورد می‌توان برای تصمیم‌های کنترل دسترسی پیچیده که شامل چندین مفعول و/یا فاعل است استفاده کرد. یک مدل مشبکه، یک ساختار ریاضیاتی است که برای یک جفت عنصر، مثل یک فاعل و یک مفعول، بیشترین حد پایینی، و کمترین حد پایینی تعریف می‌کند. کنترل دسترسی مبتنی بر نقش کنترل دسترسی مبتنی بر نقش (RBAC) یک سیاست دسترسی است که توسط سامانه تعیین می‌گردد، و نه توسط مالک. از RBAC در کاربردهای تجاری و نیز در سامانه‌های نظامی استفاده می‌شود، که در آن نیازمندی‌های امنیتی چند مرحله ای می‌تواند وجود داشته باشد. اگرچه RBAC غیراختیاری است، در درجه اول، از نظر روشی که مجوزها رسیدگی می‌شوند، از MAC متمایز می‌شود. MAC مجوزهای خواندن و نوشتن را بر اساس مرحله صدور کاربر و دیگر برچسب‌ها کنترل می‌کند. RBAC مجموعه‌ای از مجوزهایی را که می‌تواند شامل عملیات پیچیده‌ای مثل تراکنش‌های تجارت الکترونیکی باشد، و همچنین می‌تواند به اندازه خواندن و نوشتن ساده باشد، کنترل می‌کند. سه قاعده اصلی برای RBAC تعریف شده‌است: انتساب نقش: یک فاعل فقط موقعی یک تراکنش را اجرا می‌کند که فاعل انتخاب شده باشد، یا به او یک نقش مناسب منتسب شود. با قاعده ۱ بالا، این قاعده اطمینان حاصل می‌کند که کاربران فقط نقش‌هایی را می‌توانند بپذیرند که برای آن مجوزدهی شده‌اند. مجوزدهی به تراکنش: یک فاعل فقط موقعی یک تراکنش را می‌تواند اجرا کند که تراکنش برای نقش فعال فاعل مجوزدهی شده باشد. با قواعد ۱ و ۲، این قاعده اطمینان حاصل می‌کند که کاربران تنها تراکنش‌هایی را می‌توانند اجرا کنند که برای آن مجوزدهی شده‌اند. محدودیت‌های اضافی نیز قابل اعمال است، همچنین نقش‌ها را می‌توان به صورت سلسله مراتبی ترکیب کرد، که در آن نقش‌های سطح بالاتر، شامل مجوزهایی است که به زیرنقش‌های سطح پایین‌تر تعلق دارند. بیشتر فروشندگان IT این کنترل RBAC را در یک یا بیشتر از محصولاتشان ارائه کرده‌اند. دسترسی بر اساس حق فاعل مرتبط با یک کاربر بعد از احرازهویت اعطا نمی‌شود، بلکه بر اساس ویژگی‌های کاربر حق اعطا می‌شود. کاربر باید به اصطلاح ادعاها را دربارهٔ ویژگی‌هایش اثبات کند تا به موتور کنترل دسترسی داشته باشد. یک سیاست کنترل دسترسی مبتنی بر ویژگی، ادعاهایی را برای اعطای دسترسی به یک مفعول، باید برآورده‌سازی کند. XACML (زبان نشان‌گذاری کنترل دسترسی گسترش‌پذیر) یک استاندارد برای کنترل دسترسی مبتنی بر ویژگی است. مدل‌های کنترل دسترسی شکستن شیشه به صورت سنتی دسترسی، هدف محدودسازی دسترسی را دارد، بنابراین بیشتر مدل‌های کنترل دسترسی از «اصل انکار پیش‌فرض» پیروی می‌کنند، که این یعنی اگر یک تقاضای دسترسی خاص به صورت صریح اجازه داده نشود، آن دسترسی رد می‌شود. در وضعیت‌های خاص، انسان‌ها باید ریسکی را بپذیرند، که در آن ریسک، یک سیاست کنترل دسترسی نقض می‌شود، این موضوع در صورتی رخ می‌دهد که مزیت‌های بالقوه ای که می‌توان به آن رسید، از آن ریسک مهمتر است. این نیازمندی مخصوصا در دامنه مراقبت‌های سلامتی قابل مشاهده است، که در آن دسترسی‌های رد شده به رکوردهای بیمار می‌تواند منجر به مرگ بیمار شود. «شکستن شیشه» می‌خواهد این موضوع را کاهش دهد این کار از طریق ایجاد امکان رونویسی تصمیم کنترل دسترسی توسط کاربر قابل انجام است. | ## جمع‌بندی | «شکستن شیشه» را می‌توان به روش خاص کنترل دسترسی (مثلاً توسط RBAC) یا به صورت عمومی (یعنی مستقل از مدل کنترل دسترسی زیربنایی) پیاده‌سازی کرد.