【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版,并在阿里 ...
随机推荐
- Kafka 如何保证消息消费的全局顺序性
哈喽大家好,我是咸鱼 今天我们继续来讲一讲 Kafka 当有消息被生产出来的时候,如果没有指定分区或者指定 key ,那么消费会按照[轮询]的方式均匀地分配到所有可用分区中,但不一定按照分区顺序来分配 ...
- 【生活技巧记录】歌词Lyric生成及音乐标签嵌入
前置工具准备: BesLyric:一款专门制作 网易云音乐 LRC 滚动歌词的软件! 搜索.下载.制作 歌词更方便! Foobar 2000:一款适用于 Windows 平台的高级免费软件音频播放器 ...
- JavaWeb开发-CSS基础
2.CSS层叠样式表基本语法 层叠样式表,用来控制页面的样式 (1)CSS的三种引入方式 内部样式表:适合学习使用,将CSS代码写在style标签里面,style标签嵌套在title里 外部样式表:开 ...
- Windows服务器,通过Nginx部署VUE+Django前后端分离项目
目录 基本说明 安装 Nginx 部署 VUE 前端 部署 Django 后端 Django admin 静态文件(CSS,JS等)丢失的问题 1. 基本说明 本文介绍了在 windows 服务器下, ...
- [Python急救站]文件管理工具
对于一个程序员,有时候文件太多,忘记放哪里了,那有没有一个可以帮你定位到文件的文件管理工具呢,抱着这样的想法,我做了以下这个代码,可以快速定位找到文件所在位置. import os import tk ...
- SpringBoot整合Swagger3
1.导入相关依赖 <!--swagger--> <dependency> <groupId>io.springfox</groupId> <art ...
- 华企盾DSC无缝替换亿赛通案例
第一种方法无缝替换亿赛通案例 1. 把DSCClient.exe和DSCService.exe添加到亿赛通的加密控制策略中,关联类型设置为*.*|,配置为落地自动解密,包括其它程序也配置成落地自动解密 ...
- 数字孪生和GIS结合将会为智慧园区带来怎样的改变?
数字孪生和地理信息系统(GIS)是当今智慧园区发展中的两个重要技术,它们的结合将为智慧园区带来根本性的改变和巨大的发展机遇.这种结合将深刻影响园区的规划.建设.运营和管理,为人们创造更智能.高效.可持 ...
- 【Python】【OpenCV】定位条形码(二)moments和HuMoments
根据上一篇博客可知,单纯的通过求取最大面积而进行定位的局限性,因此我们接下来将通过cv2.moments()和cv2.HuMoments()这两个方法来在更复杂的环境中去找到我们的目标区域. cv2. ...
- 面试官:说说JVM内存整体结构?
Java JVM内存结构的面试常问知识 说说JVM内存整体的结构?线程私有还是共享的? JVM 整体架构,中间部分就是 Java 虚拟机定义的各种运行时数据区域. Java 虚拟机定义了若干种程序运行 ...