ABP 极简入门教程(三 权限)

此处演示为MVC项目,同样权限定义需要到Application中才能在获取API时进行权限验证

一、打开Sample.Core\Authorization\PermissionNames.cs增加授权名称

代码

        //Controller权限名称
        public const string Pages_Address = "Pages.Address";
        //Action权限名称
        public const string Pages_Address_Delete = "Pages.Address_Delete";

二、打开Sample.Core\Authorization\BlogsAuthorizationProvider.cs创建权限

代码

context.CreatePermission(PermissionNames.Pages_Address, L("Address"))    //增加Controller权限
.CreateChildPermission(PermissionNames.Pages_Address_Delete,L("AddressDelete"));  //增加Action子权限

三、Controller授权

四、增加新角色并取消联系人及删除权限

五、增加新用户,并授权

七、新用户登录Controller权限测试,菜单不显示

八、重新Controller授权,只取消删除权限,登录测试删除权限默认权限不足会跳转登录页

 九、权限不足会跳转登录页,也可在Action内部判断是否有权限

        //Action权限
        //[AbpMvcAuthorize(PermissionNames.Pages_Address_Delete)]
        public async Task<IActionResult> Delete(int i)
        {
            //判断是否有action权限
            if (await PermissionChecker.IsGrantedAsync(PermissionNames.Pages_Address_Delete))
            {
                return Content("执行完毕");
            }

            return Content("权限不足");
        }

 

posted @ 2020-06-13 09:07  liessay  阅读(655)  评论(0编辑  收藏  举报