ASP.NET MVC إذن
-
11-07-2019 - |
سؤال
كيف يمكنني تحقيق التفويض مع 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/