首页
学习
活动
专区
工具
TVP
发布

数据产品权限设计逻辑

权限管理是数据产品必备的要素,尤其是对于数据可视化决策分析等基于数据要素加工形成的数据产品,没有权限控制,就无法让业务使用。...在数据产品权限设计逻辑中,RBAC的原则是一个典型的权限管理的方法论,来源于B端后台工具产品,即:Role-Based Access Control),基于角色的访问控制。...一、数据产品权限管控的需求 数据产品除了页面、功能权限外,还要多一层数据权限权限粒度经常会到指标和维度,比如针对销售人员设计的销售业绩统计报表,系统层面会把不同销售的数据在一个页面内展示,通过权限管理来控制能看到负责区域或者商家的数据...权限设计要求 足够精细化,可以满足不同岗位、不同人员查看自己责任范围内数据 权限调整方便,组织架构调整是非常频繁的事情,架构调整权限如何快速随之变动(自动或者手动批量) 二、权限设计原则 1.传统权限管理方法...三、数据产品权限设计思路 基于RBAC原则设计权限管理,主要会包括用户管理、角色管理、资源管理、平台管理等主要功能模块: 用户管理:包括用户列表和部门列表,提供用户查询和权限操作功能,一般是从企业内部

37420

权限设计(下) - 细说权限设计

什么是权限管理 一般来说,只要有用户参与的系统,那么都要有权限管理,尤其是一些后台的管理系统, 权限管理可以实现对用户访问系统的控制,按照安全规则或者相关策略的控制,可以使用户访问到只属于自己被授权的相关...用户授权 用户授权,浅白点讲就是权限访问控制,在用户认证通过后,系统对用户访问资源进行控制,用户具有资源的访问权限方可访问对于的资源 数据库模型 上篇文章中讲到了5张表,其实是由6张表而来,但是由于第六章表资源是可以整合的...,所以可以避免冗余而采用了5张表,最简单的权限控制是至少由5张表来构成的 主体(账号、密码) 权限权限名称、资源名称、资源访问地址) 角色(角色名称) 角色和权限关系(角色id、权限id) 主体和角色关系...分配权限 用户需要被分配到相应的权限才可访问相应的资源,这些权限信息需要保存 把用户信息、权限管理、用户分配的权限信息写到数据库(权限数据模型) 基于角色的访问控制 就是判断用户是否是项目经理还是普通员工...拦截到的list必须进行验证, 进入拦截器验证后查看是否存在token信息,如果不存在,拦截返回到web登录页面,或者json错误信息给手机端 同时验证的时候针对资源,需要判断是否能够访问,可以第一次查询数据库的资源信息缓存到

3.3K60
您找到你想要的搜索结果了吗?
是的
没有找到

数据权限通用设计方案

问题引出 最近,许多学员反馈项目中需要处理数据权限,但是不知道怎么处理比较合适。这篇文章将针对这个问题,给出一种比较通用且容易扩展的数据权限设计方案。...很容易想到的就是:将数据权限的控制放到数据库里存储,在权限拦截时先判断接口是否有权访问,在接口有权访问后,接下来根据配置的条件判断是否有权使用指定的参数值。...数据设计 先从数据库表设计说起,首先定义一个数据权限控制表结构: 具体介绍一下每个字段含义: 主键 id; acl_id 映射权限点表主键,代表每行记录是针对哪个权限点的; status 代表当前这条配置是否有效...,比如:1 next_param_op 字段根据需要使用,如果一个权限点支持多条数据规则时,连接两个规则之间的操作, 还是 && seq 字段用于某个权限点包含多条数据权限规则时的顺序 假设有这么一条数据...,这里重点说一下如何在已有的权限上进行数据权限的扩展。

2.8K50

rbac权限管理设计 7表_数据库角色权限设计

用户拥有的所有权限,就是用户个人拥有的权限与该用户所在用户组拥有的权限之和。 OK,用户到角色的好理解,接下来看权限 权限表现成什么?...有些权限设计,会把功能操作作为一类,而把文件、菜单、页面元素等作为另一类,这样构成“用户-角色-权限-资源”的授权模型。...powerdesigen设计图如下: 权限表与权限菜单关联表、权限菜单关联表与菜单表都是一对一的关系。(文件、页面权限点、功能操作等同理)。...这样,可以不需要权限菜单关联表,让权限表与菜单表直接关联,此时,须在权限表中新增一列用来保存菜单的ID,权限表通过“权限类型”和这个ID来区分是种类型下的哪条记录。 权限表和功能操作表多对多的关系。...总的设计图: 实际项目中我们涉及到的权限

2.9K20

数据平台数据权限管理设计

,主要通过分配IAM控制AWS的操作权限;对于team的所有人都是通过分配aws的ak,sk在本地进行操作赋权;随着数据平台的不断的丰富和完善,需要在各组件之上做认证,鉴权和审计等管理,数据权限管理平台主要是为了统一所有人的操作权限设计...开源权限组件apache ranger和apache sentry存在以下问题: 如在命令行中或脚本中,使用export HADOOP_USER_NAME=hadoop方式或使用对应java api方式传入...,只专注数据权限 数据侧的api未来可能作为一个候选权限管理加入 概要设计 整体结构 模块交互 管理后台从云端获取使用管理后台的user接口得到所有使用系统的用户列表 在管理后台里对用户列表中指定的用户进行授权...数据查询,元数据等系统涉及到的资源都只会依赖数据权限管理系统里的权限,不受其他约束 执行引擎先查询该用户提交的任务里的资源是否拥有权限,如果有,则检查权限是否符合期望,如果符合,则执行其他操作,会进一步将权限更新到权限配置里...详细设计 实体模型 考虑到鉴权是一个高频操作,而赋权是一个低频操作,因此尽可能的减少表关联,所以使用了简化的RBAC模式 user表里的admin是数据平台系统级别,拥有admin权限的用户将不需要任何验证

1.5K30

通用数据权限的思考与设计

1、数据权限概述 1.1、什么是数据权限? 如果想学习Java工程化、高性能及分布式、深入浅出。...微服务、Spring,MyBatis,Netty源码分析的朋友可以加我的Java高级交流:787707172,群里有阿里大牛直播讲解技术,以及Java大型互联网技术的视频免费分享给大家。...1.2、要素分析 从当前登录用户的角度来说,数据权限的定义可以解释为:当前登录的用户只能看到该用户权限范围内的数据资源。由此可以分析出数据权限控制中几个关键要素: 主体,即当前登录用户。...2、数据权限设计 理论上来说,用户在访问受控的系统数据时,获取用户对该数据资源适用的条件规则,并将该条件规则解析为SQL查询语句即可实现对数据权限控制。...两种情况下获取的数据规则如何兼容?规则合并后成为一个复杂的查询条件应该如何设计

2.9K01

MySQL数据克隆的用户权限设计

1.产品定位: 数据克隆是高效,安全的从通过从线上指定数据库/表克隆数据,从而快速构建虚拟环境,提供更高效的数据交付服务。...SQL优化,压测等 5)指定大表的变更和数据操作影响评估 6)数据补丁合并,基于业务逻辑的数据操作和数据补丁整理 整个实现的过程有很多考虑的细节,不过还是在设计和实现中由同事和我一并解决了...到了交付的时机了,我们想到还有一个关键的地方需要补充,那就是数据库和用户的权限关联,也就意味着每个人可以看到和使用的数据库应该是不大一样的,因为做一些权限隔离,所以接下来我会说说数据克隆方向的用户权限设计...数据克隆的用户权限设计是面向业务使用的基础功能,目前对于用户权限设计可以基于数据库级别。...权限的实现可以分两个阶段来完成: 1)数据初始化阶段,可以使用用户组批量初始化的方式,部分数据可以从工单历史中获取 2)定制化配置阶段,根据业务需求变更和组织架构调整进行数据库和用户映射关系的微调 ?

1.3K10

数据产品权限管理设计原则(一)

,那么,作为数据产品经理,如何设计数据产品的权限控制模块,来保证数据安全呢。...一、数据产品权限管控的需求 数据产品除了页面、功能权限外,还要多一层数据权限权限粒度经常会到指标和维度,比如针对销售人员设计的销售业绩统计报表,系统层面会把不同销售的数据在一个页面内展示,通过权限管理来控制能看到负责区域或者商家的数据...总体来说,数据产品权限管控需求如下: 平台权限:对于有页面、数据权限管控的,一般默认开通平台使用权限,只可以看到自己有权限的即可,需要申请管理权限,单独申请,遇到过一个BI产品,设计权限的时候用户需要先找产品经理开通一下平台使用权限才可以创建看板...,只能针对一个角色下的一类用户操作,想单独操作时,需要专门创建一个角色 对于UGC内容多的场景,适用度低,因为资源由用户生产,权限管控在平台侧就非常不便 三、数据产品权限设计思路 结合数据产品PGC和UGC...四、总结 数据产品因为涉及非常细粒度的数据权限,因此在权限设计过程要建立清晰的管控主线,否则多种资源管控逻辑交织在一起,系统实现和维护成本会非常高,剪不断,理还乱!

1.4K10

权限设计-系统登录用户权限设计

需求分析—场景 ---- 假设需要为公司设计一个人员管理系统,并为各级领导及全体员工分配系统登录账号。有如下几个要求: 1....数据设计 ---- 总体模型: ---- 1.模块定义表: 模块是分层级的,如:信息管理–>联系方式管理; 每个模块都有上级模块。 ---- 2....角色定义表: 含有角色权限等级,用于为角色分配权限等级; 角色权限等级:是一个菜单选项,包括公司领导、部门领导、普通员工; ---- 3.授权定义表: 用于给角色分配访问权限以及为每个模块分配操作权限...系统用户表: 该表中“角色权限等级”—>应与“所属角色”中的权限等级保持一致,之所以该表中重复该字段,是为了方便查询。 角色权限等级取值: 1....确定 操作权限 : 3.1 在2.2步骤中查询到的每个模块都有相应的操作权限,即构成了每个模块的操作权限; 4.

1.2K30

通用数据权限的思考与设计

数据权限概 1.1、什么是数据权限数据权限是指对系统用户进行数据资源可见性的控制,通俗的解释就是:符合某条件的用户只能看到该条件下对应的数据资源。...1.2、要素分析 从当前登录用户的角度来说,数据权限的定义可以解释为:当前登录的用户只能看到该用户权限范围内的数据资源。由此可以分析出数据权限控制中几个关键要素: 主体,即当前登录用户。...数据资源。即受管控系统数据。 条件规则。即当前登录用户对于某特定的数据资源适用的条件。 ---- ? 数据权限设计 ?...数据表简单设计如下图: ? 2.3、数据规则的配置 有了规则元信息,管理人员即可在系统中针对不同用户(角色)设置规则元Value,该值作为数据查询时的筛选条件。...两种情况下获取的数据规则如何兼容?规则合并后成为一个复杂的查询条件应该如何设计

3.5K21

通用数据级别权限的框架设计与实现(3)-数据列表的权限过滤

查看上篇文章通用数据级别权限的框架设计与实现(2)-数据权限的准备工作,我们开始数据列表的权限过滤....原理:我们在做过滤列表时,根据用户权限自动注入到相关SQL中,实现相关过滤,如果拥有全部权限,则不生成相关SQL片段 首先我们来分析一下数据列表的SQL 能看到所有数据的SQL SELECT role.id...2.我们来生成各种权限校验的规则,Key用类的对象来实现 /** * @description: 权限的全局配置 * @author: starmark * @create: 2018-05-17...,判断拥有角色user1及user2的能看到全部数据,其他要做过滤....欢迎继续查看下篇文章-通用数据级别权限的框架设计与实现(4)-单条记录的权限控制

3K61

用户表的设计_角色和权限管理数据设计

基于角色的访问控制:(java Web 编程口诀) 用户表角色表,用户角色中间表。 角色表权限表,角色权限中间表。 ---- ---- 一个用户可有多个角色,一个角色又可有多个权限。...这就是用户-角色-权限授权的模型。 为何不直接让用户对应权限? 角色=一定数量的权限集合 将特定用户的权限封装到一个角色。 封装,或者面向对象设计的体现。...都属于权限控制范畴。 有些权限设计将功能操作作为一个类型,把文件菜单页面元素等作为另外一个类型,这就是用户-权限-资源的授权模型。...相关sql可参考: 用户、角色、权限表的关系(mysql)_harbor1981的博客-CSDN博客_数据库用户和角色的关系 https://blog.csdn.net/harbor1981/article.../details/78149203 关于各种表的字段可参考: 用户·角色·权限·表的设计 – oo_o – 博客园 (cnblogs.com) https://www.cnblogs.com/oo_o/

1.5K20

数据设计和SQL基础语法】--用户权限管理--用户权限管理

SQL权限通常涉及以下几个方面: 数据库级别权限: 控制用户对整个数据库的访问权限。这包括创建数据库、备份和还原等操作。...权限管理也是数据设计的一部分,应该在数据设计阶段就考虑到不同用户对数据库的访问需求。最小权限原则是权限管理中的一项基本原则,即用户应该被授予完成其工作所需的最小权限,以降低潜在的风险和滥用可能。...这意味着一个角色可以继承另一个角色的权限,从而形成权限的继承链。这样的设计有助于更好地组织和维护权限。 最小权限原则: 角色的使用有助于实施最小权限原则,即用户只被赋予完成其工作所需的最小权限。...2.3 常见的用户角色 数据库用户角色是为了方便权限管理而设计的,不同的数据库管理系统(DBMS)可能有不同的用户角色。...确保角色的成员仍然符合其设计目的,并删除不再需要的成员。 记录审查结果: 记录每次审查的结果,包括发现的问题、已经采取的措施以及可能需要的进一步的行动。这有助于建立审查的持续改进过程。

30310

如何设计权限系统?

userDetailsService 的实现类 编写登录 最后配置 Config 运行,返回 token 重写 UsernamePasswordAnthenticationFilter 配置 SecurityConfig 设计数据表...什么是权限 权限是资源的集合,这里的资源指的是软件中的所有的内容,即,对页面的操作权限,对页面的访问权限,对数据的增删查改的权限。举个栗子。...、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能 项目地址:https://gitee.com/zhijiantianya/ruoyi-vue-pro 视频教程:https://doc.iocoder.cn...、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能 项目地址:https://gitee.com/zhijiantianya/yudao-cloud 视频教程:https://doc.iocoder.cn...这里使用数据库认证 SpringSecurity 设计数据表 这里设计数据表 着重配置 SpringConfig @Configurable public class WebSecurityConfig

64731

权限表的设计

用户拥有的所有权限,就是用户个人拥有的权限与该用户所在用户组拥有的权限之和。 ? OK,用户到角色的好理解,接下来看权限 权限表现成什么?...有些权限设计,会把功能操作作为一类,而把文件、菜单、页面元素等作为另一类,这样构成“用户-角色-权限-资源”的授权模型。...操作的权限: 功能,cred 菜单的访问 页面按钮的点击 内容: 图片的可见性 菜单的可见 按钮的可见 这些都是基本的权限。 powerdesigen设计图如下: ?...这样,可以不需要权限菜单关联表,让权限表与菜单表直接关联,此时,须在权限表中新增一列用来保存菜单的ID,权限表通过“权限类型”和这个ID来区分是种类型下的哪条记录。 权限表和功能操作表多对多的关系。...总的设计图: ? 实际项目中我们涉及到的权限。 菜单权限,按钮操作性等 参考文献: http://blog.csdn.net/painsonline/article/details/7183613/

3K30
领券