MVC API 权限控制

定义一个类:TestAuthorizeAttributeMVC API 权限控制

 public class TestAuthorizeAttribute : AuthorizeAttribute
{
public string roleName = ""; //权限进入
public override void OnAuthorization(System.Web.Http.Controllers.HttpActionContext actionContext)
{
base.OnAuthorization(actionContext);
}
//判断权限
protected override bool IsAuthorized(System.Web.Http.Controllers.HttpActionContext actionContext)
{ if (roleName == "管理员")
return true;
return false;
} //权限为false执行内容
protected override void HandleUnauthorizedRequest(System.Web.Http.Controllers.HttpActionContext actionContext)
{
base.HandleUnauthorizedRequest(actionContext);
}
}

这里的AuthorizeAttribute引用的命名空间是System.Web.Http;而非是System.Web.Mvc的。

定义一个控制器:TestControlleMVC API 权限控制r

对整个控制器权限控制  

    //判断权限为超级管理员的情况下进入此控制器
[TestAuthorize(roleName="超级管理员")]
public class TestController : ApiController
    {
public string GetIndex()
{
return "";
}
}

对控制器中的某个Action权限控制

MVC API 权限控制
    public class TestController : ApiController
{
    //判断权限为超级管理员的情况下进入此Action
[TestAuthorize(roleName = "超级管理员")]
public string GetIndex()
{
return "";
}
}
上一篇:更换域名后的数据库sql的执行命令


下一篇:Mosquitto搭建Android推送服务(四)Mosquitto服务器用户登录与权限配置