【HZERO】权限管理
Hzero数据权限介绍
https://open.hand-china.com/community/detail/625872021372407808#3.4 开发建议
Permission注解属性介绍
Hzero的整体权限风格都是遵循RBAC,包括接口的权限也是遵循RBAC风格,因此在Hzero项目中提供了一个猪齿鱼的注解@Permission对接口权限进行权限注册的操作,该注解可以指定接口API的层级,访问类型等(登录即可访问,公开接口,需分配权限)。
| 参数名 | 说明 |
|---|---|
| level | 接口层级,ResourceLevel.SITE和ResourceLevel.ORGANIZATION两种 |
| permissionLogin | 登陆后即可拥有的权限,default false |
| permissionPublic | 公共权限,不需要登录即可访问,default false |
| permissionWithin | 是否只允许内部调用, default false |
| code | 权限编码,默认取方法名 |
| tags | 权限标签 |
API权限类别



属性简介
Level:
其中在Hzero项目中,我们通常用到的API层级分为两种,即SITE层级和ORGANIZATION层级,分别对应平台级和租户级的接口。开发者可根据自身接口的要求判断其需要设置为哪一个层级的,然后进行层级设置。
permissionLogin:
此属性的作用为设置该接口的访问权限是否为登录即可访问,设置值为true/false,此类接口一般应用在无需进行角色权限控制的接口上,比如查询导航栏、公告、个人中心信息等等。此类接口在网关服务里进行鉴权过滤的过程中,只要识别调用该接口的用户已登录则鉴权通过允许访问。
permissionPublic:
此属性的作用为设置该接口的访问权限是否为公开权限即可随意调用。设置值为true/false,此类接口一般应用于用户登录,发送验证码等等的接口,注意,此类型的接口无法获取用户信息,也就是说在此类型接口下是无法获取到相关的用户信息的,因此,请结合接口方案设计,谨慎使用该接口,避免出现用户数据缺失的情况。
permissionWithin:
此属性的作用为设置该接口的访问权限是否为内部访问,设置值为true/false,如果设置了该属性为true的话,那么此接口就只能被其它服务通过feign或者ribbon进行调用,而无法被外部系统进行调用,如果外部系统调用此类型接口的话,在网关服务鉴权过程中会鉴权失败并返回状态码:PERMISSION_WITH_IN
权限层级的使用
SITE级别

ORGANIZATION级别

基础服务调用链路


【HZERO】权限管理的更多相关文章
- Android权限管理之RxPermission解决Android 6.0 适配问题
前言: 上篇重点学习了Android 6.0的运行时权限,今天还是围绕着Android 6.0权限适配来总结学习,这里主要介绍一下我们公司解决Android 6.0权限适配的方案:RxJava+RxP ...
- Android权限管理之Android 6.0运行时权限及解决办法
前言: 今天还是围绕着最近面试的一个热门话题Android 6.0权限适配来总结学习,其实Android 6.0权限适配我们公司是在今年5月份才开始做,算是比较晚的吧,不过现在Android 6.0以 ...
- Android权限管理之Permission权限机制及使用
前言: 最近突然喜欢上一句诗:"宠辱不惊,看庭前花开花落:去留无意,望天空云卷云舒." 哈哈~,这个和今天的主题无关,最近只要不学习总觉得生活中少了点什么,所以想着围绕着最近面试过 ...
- SpringMVC+Shiro权限管理【转】
1.权限的简单描述 2.实例表结构及内容及POJO 3.Shiro-pom.xml 4.Shiro-web.xml 5.Shiro-MyShiro-权限认证,登录认证层 6.Shiro-applica ...
- Android6.0运行时权限管理
自从Android6.0发布以来,在权限上做出了很大的变动,不再是之前的只要在manifest设置就可以任意获取权限,而是更加的注重用户的隐私和体验,不会再强迫用户因拒绝不该拥有的权限而导致的无法安装 ...
- Oracle 表空间和用户权限管理
一. 表空间 Oracle数据库包含逻辑结构和物理结构. 数据库的物理结构指的是构成数据库的一组操作系统文件. 数据库的逻辑结构是指描述数据组织方式的一组逻辑概念以及它们之间的关系. 表空间是数据库逻 ...
- [Django]用户权限学习系列之权限管理界面实现
本系列前三章: http://www.cnblogs.com/CQ-LQJ/p/5604331.htmlPermission权限基本操作指令 http://www.cnblogs.com/CQ-LQJ ...
- [Django]用户权限学习系列之设计自有权限管理系统设计思路
若在阅读本片文章遇到权限操作问题,请查看本系列的前两章! http://www.cnblogs.com/CQ-LQJ/p/5609690.html和http://www.cnblogs.com/CQ- ...
- 我的MYSQL学习心得(十三) 权限管理
我的MYSQL学习心得(十三) 权限管理 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) ...
- 基于DDDLite的权限管理OpenAuth.net 1.0版正式发布
距离上一篇OpenAuth.net的文章已经有5个多月了,在这段时间里项目得到了很多朋友的认可,开源中国上面的Star数接近300,于是坚定了我做下去的信心.最近稍微清闲点,正式推出1.0版,并在阿里 ...
随机推荐
- Educational Codeforces Round 102 (Rated for Div. 2) A~D题
写在前边 链接:Educational Codeforces Round 102 (Rated for Div. 2) 第一场打CF,过了AB两题,不过速度挺慢,C题属实没看懂,D题写了个常规做法之后 ...
- centos7安装MySQL—以MySQL5.7.30为例
centos7安装MySQL-以MySQL5.7.30为例 本文以MySQL5.7.30为例. 官网下载 进入MySQL官网:https://www.mysql.com/ 点击DOWNLOADS 点击 ...
- Excel做数据分析?是真的很强!
当涉及到数据分析时,Excel无疑是一个功能强大且广泛应用的工具.它提供了丰富的功能和灵活性,使得用户可以进行各种复杂的数据处理和分析.在本文中, 我将详细介绍Excel在数据分析领域的强大功能,包括 ...
- 2024年 Kubernetes 四大趋势预测
Kubernetes 在生产环境中的复杂性已经成为常态,在2023年这个平台工程盛行的时代,容器管理的最大亮点可能在于其灵活性,然而在运维政策和治理等方面仍然存在诸多挑战.Kubernetes 最大的 ...
- ElasticSearch之Exists API
检查指定名称的索引是否存在. 命令样例如下: curl -I "https://localhost:9200/testindex_002?pretty" --cacert $ES_ ...
- 在 Walrus 上轻松集成 OpenTofu
OpenTofu 是什么? OpenTofu 是一个开源的基础设施即代码(IaC)框架,被提出作为 Terraform 的替代方案,并由 Linux 基金会管理.OpenTofu 的问世为应对 Has ...
- Java NIO 简介
NIO 简介 自 JDK 1.4 以来,引入了一个被称为 NIO(New IO) 的 IO 操作,是标准 IO 一个替代品.Java 的 NIO 提供了一种与传统意义上的 IO 不同的编程模型.有 ...
- Javac多模块化编译
转载:原文链接 从SDK9开始,Java支持多模块编译.那么,怎么用javac实现多模块编译呢? 项目介绍 先来看看我们的项目. 首先lib文件夹下是依赖模块,有一个hello模块.hello模块包含 ...
- 文心一言 VS 讯飞星火 VS chatgpt (55)-- 算法导论6.3 1题
文心一言 VS 讯飞星火 VS chatgpt (55)-- 算法导论6.3 1题 一.参照图6-3 的方法,说明 BUILD-MAX-HEAP在数组 A=(5,3,17,10,84,19,6,22, ...
- Java 将PDF转为OFD
OFD格式一种国产文件格式,在一些对文档格式有着严格的企业中用得比较多.下面,通过Java程序展示如何将PDF文件转为OFD格式. 代码思路:加载PDF源文档,调用Spire.Pdf.jar提供的sa ...