سؤال

كيف يمكنني تحقيق التفويض مع MVC ASP.NET؟

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

المحلول

استخدم سمة التصريح

[Authorize]
public ActionResult MyAction()
{
   //stuff
}

يمكنك أيضا استخدام هذا على وحدة التحكم. يمكن أن تمر في المستخدمين أو الأدوار أيضًا.

إذا كنت تريد شيئًا أكثر تحكمًا ، يمكنك تجربة شيء مثل هذه.

 public class CustomAuthorizeAttribute : AuthorizeAttribute
    {
        protected override bool AuthorizeCore(HttpContextBase httpContext)
        {
            string[] users = Users.Split(',');

            if (!httpContext.User.Identity.IsAuthenticated)
                return false;

            if (users.Length > 0 &&
                !users.Contains(httpContext.User.Identity.Name,
                    StringComparer.OrdinalIgnoreCase))
                return false;

            return true;
        }
    }

نصائح أخرى

هناك ميزة ترخيص مع MVC ، باستخدام ASP.NET MVC Beta وإنشاء مشروع MVC من Visual Studio ، يضيف تلقائيًا وحدة تحكم استخدمت التفويض. شيء واحد من شأنه أن يساعد في بحث Google الخاص بك ، هو أنه "مرشح". لذا حاول البحث على "تصفية التفويض MVC" وسيساعد أي شيء معاينة 4 أو أكثر.

أوصي بإلقاء نظرة على هذه المقالة:http://kbochevski.blogspot.com/2009/11/mvc-forms-authentication-and.html

لقد ساعدني اليوم.

هذه هي الطريقة التي يمكنك بها الحصول على المصادقة افتراضيًا:http://mycodepad.wordpress.com/2014/03/17/mvc-secure-your-web-app/

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