سؤال

من الممكن استخدام الأذونات القائمة على المطالبات لتأمين حقول EF باستخدام Post Sharp.لدينا تطبيق متعدد المستأجرين أننا نتحرك للمطالبات ولديها أيضا قضايا من يستطيع القراءة / الكتابة إلى المجالات.لقد رأيت هذا ولكن يبدو أن دورا يستند إلى الدور http://www.postsharp.net/aspects/examples/security.

بقدر ما أستطيع أن أرى أنه سيكون مجرد حالة لإعادة كتابة الجزء المحدد.

كنا نأمل أن نكون قادرين على تزيين حقل بإذن وتجاهل بصمت أي كتابة إذا لم يكن لدى المستخدم إذن.كنا نقف أيضا أنه إذا قرأوا ذلك، فيمكننا المبادلة في قيمة أخرىقراءة الراتب واسترجع 0 إذا لم يكن لديك readsalary.

هل هذه النوع المعياري من الأشياء التي يجب القيام بها لم أفعل أي AOP خطيرة مطلقا.لذلك أردت فقط تأكيد سريع قبل أن أذكر هذا كخيار.

هل كانت مفيدة؟

المحلول

نعم، من الممكن استخدام Postsharp في هذه الحالة، وينبغي أن يكون من السهل التحويل إلى الأمثلة المنطقية من RBAC للمطالبات القائمة.

شيء واحد يجب مراعاته هو الأداء.عند الوصول إلى الحقول المزخرفة بشكل متكرر أثناء معالجة حالة الاستخدام (E.G. تتم قراءتها داخل حلقة) ثم يضيع الكثير من الوقت في الشيكات الأمنية الزائدة.ستكون تزيين طريقة تمثل حالة استخدام المستخدم النهائي أكثر ملاءمة.

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

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top