为了账号安全,请及时绑定邮箱和手机立即绑定

ASP.NET MVC 4使用权限代码自定义授权属性(无角色)

ASP.NET MVC 4使用权限代码自定义授权属性(无角色)

慕码人8056858 2019-08-09 15:44:10
ASP.NET MVC 4使用权限代码自定义授权属性(无角色)我需要在我的MVC 4应用程序中根据用户权限级别(没有角色,只分配给用户的CRUD操作级别的权限级别)来控制对视图的访问。举个例子; AuthorizeUser下面将是我的自定义属性,我需要像这样使用它:[AuthorizeUser(AccessLevels="Read Invoice, Update Invoice")]public ActionResult UpdateInvoice(int invoiceId){    // some code...    return View();}[AuthorizeUser(AccessLevels="Create Invoice")]public ActionResult CreateNewInvoice(){   // some code...   return View();}[AuthorizeUser(AccessLevels="Delete Invoice")]public ActionResult DeleteInvoice(int invoiceId){   // some code...   return View();}有可能这样做吗?
查看完整描述

3 回答

?
冉冉说

TA贡献1877条经验 获得超1个赞

这是对prev的修改。回答。主要区别在于用户未经过身份验证时,它使用原始的“HandleUnauthorizedRequest”方法重定向到登录页面:

   protected override void HandleUnauthorizedRequest(AuthorizationContext filterContext)
    {

        if (filterContext.HttpContext.User.Identity.IsAuthenticated) {

            filterContext.Result = new RedirectToRouteResult(
                        new RouteValueDictionary(
                            new
                            {
                                controller = "Account",
                                action = "Unauthorised"
                            })
                        );
        }
        else
        {
             base.HandleUnauthorizedRequest(filterContext);
        }
    }


查看完整回答
反对 回复 2019-08-09
  • 3 回答
  • 0 关注
  • 643 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信