أمان قائم على الصلاحيات
الأمان القائم على الصلاحيات هو مصطلح يُستخدم في تصميم أنظمة الحوسبة الآمنة، وهو أحد نماذج الأمان الحالية، حيث تكون الصلاحية (ويُشار إليها في بعض الأنظمة بمفتاح الوصول) عبارة عن رمز صلاحية قابل للتواصل وغير قابل للتزييف، ويُشير إلى قيمة تُحيل إلى عنصر أو كائن مع مجموعة من الأذونات المرتبطة به. يجب على برنامج المستخدم على نظام تشغيل قائم على الصلاحية استخدام صلاحية للوصول إلى كائن. يُشير مفهوم الأمان القائم على الصلاحية أيضًا إلى مبدأ تصميم برامج المستخدم بحيث تتشارك الصلاحيات مع بعضها البعض مباشرةً وفقًا لمبدأ الحد الأدنى من الامتيازات، وإلى البنية التحتية لنظام التشغيل اللازمة لجعل هذه المعاملات فعالة وآمنة. يُمكن مُقارنة الأمان القائم على الصلاحيات بالنهج الذي يستخدم أذونات يونكس التقليدية وقوائم التحكم في الوصول. وعلى الرغم من أن معظم أنظمة التشغيل تُطبّق آلية مشابهة لآلية عمل النظام القائم على الصلاحيات، فإنها عادةً لا تُوفر دعمًا كافيًا للسماح بتبادل الصلاحيات بين كيانات قد لا تثق ببعضها البعض، ليكون الوسيلة الأساسية لمنح وتوزيع صلاحيات الوصول في جميع أنحاء النظام. على النقيض من ذلك، يُصمّم النظام القائم على الصلاحيات مع وضع هذا الهدف في الاعتبار.
مقدمة
تحقق الصلاحيات أو المفاتيح هدفها المتمثل في تحسين أمان النظام من خلال استخدامها بدلاً من المراجع القابلة للتزوير. يُمكن للمرجع القابل للتزوير (مثل اسم المسار) أن يُعرّف كائنًا، ولكنه لا يُحدد صلاحيات الوصول المناسبة لذلك الكائن وبرنامج المستخدم الذي يحمل هذا المرجع. وبالتالي، يجب على نظام التشغيل التحقق من صحة أي محاولة للوصول إلى الكائن المُشار إليه بناءً على الصلاحية المُعطاة للبرنامج، ويتم هذا عادةً من خلال استخدام قائمة التحكم في الوصول. أما في النظام القائم على الصلاحيات، فبمجرد امتلاك برنامج المستخدم لتلك الصلاحية يُصبح مؤهلا لاستخدام الكائن المُشار إليه وفقًا للحقوق التي تُحددها تلك الصلاحية. نظريًا، يُلغي النظام القائم على الصلاحيات الحاجة إلى قوائم التحكم في الوصول أو أي آلية مُماثلة من خلال منح جميع الكيانات جميع الصلاحيات التي ستحتاجها فعليا فقط.
تُستخدم الصلاحية أو مفتاح الوصول عادةً كبنية بيانات فريدة تتكون من قسم يُحدد الأذونات وحقوق الوصول، وقسم يُعرّف الكائن المراد الوصول إليه بشكل فريد. ولا يصل المستخدم إلى بنية البيانات أو الكائن مُباشرةً، بل عبر مُعرِّف. يختزن نظام التشغيل عادةً مفاتيح الوصول في قائمة، ويكون لديه آلية لمنع البرنامج من تعديل محتويات مفاتيح الوصول مباشرةً (لتفادي تزوير حقوق الوصول أو تغيير الكائنات الذي تُشير إليها الصلاحيات). كما تعتمد بعض الأنظمة على العنونة القائمة على الصلاحيات (دعم الأجهزة لمفاتيح الوصول)، مثل نظام بليسي 250.
يمكن للبرامج التي تمتلك صلاحيات تنفيذ وظائف عليها، مثل تمريرها إلى برامج أخرى، أو تحويلها إلى إصدار ذي امتيازات أقل، أو حذفها، لذلك يجب أن يضمن نظام التشغيل إجراء عمليات محددة فقط على الصلاحيات المختزنة في النظام، وذلك للحفاظ على سلامة سياسة الأمان. لا ينبغي الخلط بين مفهوم الصلاحيات المذكورة في هذه المقالة ومفهوم الصلاحيات التي ترتبط بواجهة أنظمة التشغيل المحمولة 1e/2c، إذ تتمتع الصلاحيات المرتبطة بواجهة أنظمة التشغيل المحمولة بامتيازات غير محددة لا يمكن نقلها بين العمليات.