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

Posted win32pro

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ABP 极简入门教程(三 权限)相关的知识,希望对你有一定的参考价值。

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

一、打开Sample.CoreAuthorizationPermissionNames.cs增加授权名称

技术图片

代码

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

二、打开Sample.CoreAuthorizationBlogsAuthorizationProvider.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("权限不足");
        }

 

以上是关于ABP 极简入门教程(三 权限)的主要内容,如果未能解决你的问题,请参考以下文章

ABP vNext微服务架构详细教程——分布式权限框架(上)

Rust极简教程

Java杂货铺用Security做权限极简入门

ABP vNext微服务架构详细教程——身份管理服务

ABP教程- 开始一个简单的任务管理系统 - 实现UI端的增删改查

kafka极简入门(三)--创建topic