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】权限管理的更多相关文章

  1. Android权限管理之RxPermission解决Android 6.0 适配问题

    前言: 上篇重点学习了Android 6.0的运行时权限,今天还是围绕着Android 6.0权限适配来总结学习,这里主要介绍一下我们公司解决Android 6.0权限适配的方案:RxJava+RxP ...

  2. Android权限管理之Android 6.0运行时权限及解决办法

    前言: 今天还是围绕着最近面试的一个热门话题Android 6.0权限适配来总结学习,其实Android 6.0权限适配我们公司是在今年5月份才开始做,算是比较晚的吧,不过现在Android 6.0以 ...

  3. Android权限管理之Permission权限机制及使用

    前言: 最近突然喜欢上一句诗:"宠辱不惊,看庭前花开花落:去留无意,望天空云卷云舒." 哈哈~,这个和今天的主题无关,最近只要不学习总觉得生活中少了点什么,所以想着围绕着最近面试过 ...

  4. SpringMVC+Shiro权限管理【转】

    1.权限的简单描述 2.实例表结构及内容及POJO 3.Shiro-pom.xml 4.Shiro-web.xml 5.Shiro-MyShiro-权限认证,登录认证层 6.Shiro-applica ...

  5. Android6.0运行时权限管理

    自从Android6.0发布以来,在权限上做出了很大的变动,不再是之前的只要在manifest设置就可以任意获取权限,而是更加的注重用户的隐私和体验,不会再强迫用户因拒绝不该拥有的权限而导致的无法安装 ...

  6. Oracle 表空间和用户权限管理

    一. 表空间 Oracle数据库包含逻辑结构和物理结构. 数据库的物理结构指的是构成数据库的一组操作系统文件. 数据库的逻辑结构是指描述数据组织方式的一组逻辑概念以及它们之间的关系. 表空间是数据库逻 ...

  7. [Django]用户权限学习系列之权限管理界面实现

    本系列前三章: http://www.cnblogs.com/CQ-LQJ/p/5604331.htmlPermission权限基本操作指令 http://www.cnblogs.com/CQ-LQJ ...

  8. [Django]用户权限学习系列之设计自有权限管理系统设计思路

    若在阅读本片文章遇到权限操作问题,请查看本系列的前两章! http://www.cnblogs.com/CQ-LQJ/p/5609690.html和http://www.cnblogs.com/CQ- ...

  9. 我的MYSQL学习心得(十三) 权限管理

    我的MYSQL学习心得(十三) 权限管理 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) ...

  10. 基于DDDLite的权限管理OpenAuth.net 1.0版正式发布

    距离上一篇OpenAuth.net的文章已经有5个多月了,在这段时间里项目得到了很多朋友的认可,开源中国上面的Star数接近300,于是坚定了我做下去的信心.最近稍微清闲点,正式推出1.0版,并在阿里 ...

随机推荐

  1. 通过计算巢轻松部署Salt服务

    SaltStack服务实例部署 概述 Salt基于Python构建,是一个事件驱动的自动化工具和框架,用于部署.配置和管理复杂的IT系统.使用Salt来自动化公共基础设施管理任务,并确保基础设施的所有 ...

  2. 最小生成树(Prim、Kruskal)

    MST 引入 现在有一个连通图,他有\(N\)个节点,\(M\)条边 当我们砍掉一些边时,它会变成一棵树,其剩下的边权之和即为这棵树的权,当剩下的权值最小时,称这棵树为此图的最小生成树,即MST 模版 ...

  3. Hive架构组件

    架构图 Hive组件

  4. MySQL运维8-Mycat范围分表

    一.范围分片 根据指定的字段及其配置的范围与数据节点的对应情况,来决定该数据属于哪一个分片. 说明1:范围分片会提前提供一个分片的范围默认是0-500万是一个分片,500万-1000万是一个分片,10 ...

  5. 丝丝入扣,毫不违和,AI一键换脸和微调,基于Rope-Ruby,2024最新整合包

    AI换脸已经不是什么时新的技术了,从DeepFace到Facesweap,再到Roop.AI换脸技术中出现了一种名为"一键换脸"的方法,它不需要训练模型.这种方法利用了名为&quo ...

  6. aspnetcore使用websocket实时更新商品信息

    先演示一下效果,再展示代码逻辑. 中间几次调用过程省略... 暂时只用到了下面四个项目 1.产品展示页面中第一次通过接口去获取数据库的列表数据 /// <summary> /// 获取指定 ...

  7. Spring Boot入坑-2-第一个Spring Boot项目

    Spring Boot简介 自从2014年4月Pivotal团队推出以来,作为一个基于Spring的开源轻量级框架,备受企业级应用喜爱 简化Spring应用的搭建与开发过程 是对Spring缺点进行的 ...

  8. 基于 Docker 打造前端持续集成开发环境

    基于 Docker 打造前端持续集成开发环境 写在前面: 这不是一篇有新意的文章,因为这篇文章半年前我就发布在其他平台上过,为什么在知乎上旧文新发? 除了想要把发布在其他地方的文章统一放到知乎上之外, ...

  9. Spring系列:基于注解的方式构建IOC

    目录 一.搭建子模块spring6-ioc-annotation 二.添加配置类 三.使用注解定义 Bean 四.@Autowired注入 五.@Resource注入 六.全部代码 从 Java 5 ...

  10. WMTS地图服务每一层级分辨率

    目录 1. 概述 2. 详论 2.1. Web墨卡托 2.2. 大地经纬度 3. 参考 1. 概述 WMTS地图服务每一层级的分辨率是多少?关于这个问题以前推算过,但总是忘记了.网上查询又是一堆废话, ...