سؤال

وأنا أكتب التطبيق MVC التي لديها فرعين للسفر على طول الحق من البداية. على مسار يخول مع PIN وأستخدمه مصادقة النماذج لتقييد الوصول إلى هذا القسم من التعليمات البرمجية. ومع ذلك، فإن الطريق الآخرين قبول سجل AD في وأحتاج منع الناس من التحرك بين السلطتين استخدام عناوين المواقع. يجب أن يكون باستخدام التوجيه المخصصة أو ينبغي أن إنشاء اثنين تصريح منفصل سمات لتقييد الوصول.

والشكر

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

المحلول

هل يمكن استخدام الأدوار للتعامل مع هذا الأمر مع القائمة <لأ href = "http://msdn.microsoft.com/en-us/library/system.web.mvc.authorizeattribute.aspx" يختلط = "نوفولو noreferrer" > AuthorizeAttribute . ببساطة لديك المستخدمين المصرح AD إلى دور معين، ثم في المسارات التي تتطلب تسجيل الدخول-AD تعيين الأدوار لأن وحدة التحكم / طريقة تتطلب دور AD. ويستتبع ذلك تنفيذ RoleProvider التي يمكن أن تبدو شاقة بعض الشيء، ولكن في الحقيقة ليس كل ما سيئة. تخزين أدوار المستخدم في الكعكة بحيث لا تحتاج إلى البحث عنها في كل مرة. والميزة هنا هي أن هذا سوف النطاق لأدوار إضافية حسب طلبك يحصل أكثر تعقيدا.

وبدلا من ذلك، هل يمكن تمديد AuthorizeAttribute القائمة، تجاوز <لأ href = "http://msdn.microsoft.com/en-us/library/system.web.mvc.authorizeattribute.onauthorization.aspx" يختلط = "نوفولو noreferrer "> OnAuthorization واستخدام النسخة المخصصة الخاصة بك. هذه السمة يمكن أن تحقق للتأكد من أن الطلب أذن فحسب، بل أنه يحتوي على نوع الاعتماد المناسب. نوع بيانات الاعتماد يمكن تخزينها في الدورة على تسجيل الدخول واستردادها من هناك للمستخدمين الموثق. هذا هو أبسط لكتابة، ولكن لا مقياس كذلك.

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