إنشاء أذونات الوصول للتعليمات البرمجية الخاصة بك.

توفر .NET Framework مجموعة من فئات أذونات الوصول للتعليمات البرمجية و التي تم تصميمها للمساعدة في حماية مجموعة معينة من العمليات و الموارد وذلك بالتركيز على تلك الموارد المكشوفة بواسطة .NET Framework. يتم وصف فئات الإذن هذه باختصار في موضوع الأذونات و بالتفصيل في وثائق المرجع لكل فئة إذن. لمعظم البيئات، تكون أذونات الوصول للتعليمات البرمجية المضمنة كافية. ومع ذلك، في بعض الحالات، فقد يكون تعريف فئة إذن الوصول إلى التعليمات البرمجية الخاصة بك ذو معنى. يتناول هذا الموضوع أين، ولماذا و كيف تقوم بتعريف فئات إذن الوصول للتعليمات البرمجية المخصصة.

إذا كنت تقوم بتعريف مكوّن أو مكتبة فئة يمكنها الوصول إلى مورد ما لم تتم تغطيته بواسطة فئات الإذن المضمنة ولكن يجب أن تكون محمية من التعليمات البرمجية غير المصرح بها، فيجب عليك الأخذ في الاعتبار إنشاء فئة إذن مخصصة للوصول للتعليمات البرمجية. إذا أردت أن تكون قادراً على إجراء المُطالبات التصريحية للأذونات المخصصة الخاصة بك فيجب أيضاً عليك تعريف فئة سمة للإذن. توفير هذه الفئات وإجراء المُطالبات للإذن من مكتبة الفئة، يمكّن بيئة وقت تشغيل من منع التعليمات البرمجية غير المصرح بها من الوصول إلى هذا المورد و تمكين مسؤول ما من تكوين حقوق الوصول.

هناك مواقف أخرى والتي قد لا يكون فيها الإذن المخصص مناسباً. عند ما تقوم فئات أذونات الوصول للتعليمات البرمجية المضمنة بحماية مورد ما ولكن لا يتحكم بشكل كاف بالوصول لذلك المورد، قد تحتاج إذن مخصص للوصول للتعليمات البرمجية. على سبيل المثال، قد يستخدم تطبيق ما سجلات الموظفين حيث يتم تخزين سجل لكل موظف بشكل منفصل; في هذه الحالة، يمكن التحكم في الوصول للقراءة و الكتابة بشكل مستقل للأنواع المختلفة من بيانات الموظفين. قد يكون مصرحاً لأداة إدارة داخلية قراءة مقاطع معينة من ملف موظف ما و لكن ليس تعديل هذه المقاطع. في الحقيقة، فإنه حتى قد لا يتم السماح بقراءة بعض المقاطع.

أذونات الوصول إلى التعليمات البرمجية المخصصة تكون أيضاً مناسبة في الحالات حيث يتواجد إذن مضمن ولكن لا يتم تعريفه بطريقة تمكنه من حماية المورد بشكل مناسب. على سبيل المثال، قد يكون هناك حالة حيث توجد وظائف لواجهة المستخدم، مثل إمكانية إنشاء القوائم، والتي يجب حمايتها ولكنها غير محمية من قِبل فئة UIPermission المضمنة. في هذه الحالة، يمكنك إنشاء إذن مخصص لحماية القدرة على إنشاء القوائم.

و كلما أمكن، يجب ألا تتداخل الأذونات. إن وجود أكثر من إذن لحماية مورد واحد يؤدي إلى مشكلة هامة للمسؤولين، الذين يجب أن يتأكدوا من التعامل بشكل مناسب مع كافة الأذونات المتداخلة في كل مرة يقوموا بتهيئة حقوق الوصول إلى هذا المورد.

إن تطبيق أذونات مخصصة للوصول للتعليمات البرمجية يتضمن الخطوات التالية، والتي يُعد بعضها اختيارياً. يتم وصف كل خطوة في موضوع منفصل.

  1. تصميم فئة الإذن Permission.

  2. قم بتطبيق الواجهات IPermission، و IUnrestrictedPermission.

  3. قم بتطبيق الواجهة ISerializable، و إذا كان ذلك ضرورياً للحصول على الأداء أو دعم أنواع بيانات خاصة.

  4. قم بمعالجة ترميز وفك ترميز XML.

  5. إضافة دعم الأمان التصريحي، عن طريق تطبيق فئة Attribute.

  6. مطالبة الأذونات المخصصة للأذونات الخاصة بك، حين يكون ذلك مناسباً.

راجع أيضًا:

المرجع

FileIOPermission

UIPermission

IPermission

IUnrestrictedPermission

ISerializable

المبادئ

أمان الوصول إلى التعليمات البرمجية

أذونات الأمان

لتوسيع بيانات التعريف باستخدام السمات

تصميم إذن

إضافة دعم الأمان التصريحي

المُطالبة بإذن مخصص