美文网首页1
权限设计:数据权限实战篇

权限设计:数据权限实战篇

作者: 产品大宝看世界 | 来源:发表于2020-04-05 16:54 被阅读0次

           之前写了一篇权限设计的整理思路的文章,权限设计的难点其实是在数据管理这一块,最近刚好实战了一个项目,刚好可以将数据权限的设计经验分享给大家,希望能给大家有所帮助

数据权限的使用场景分析    

       所有的产品工作都是基于实际的使用场景,没有场景的支撑的设计方案肯定是毫无依据的;功能权限大家都容易比较理解,功能权限将页面增删改查的操作功能进行分配;数据权限就有些不好理解;还是拿上次的组织结构图来讲,如下图图一,一般大型集团公司组织结构纵深比较长,有平级的部门,有上下的部门,员工也有上下级的关系,往往会出现大家都在操作一样的事情,但事情的范围不一致,我们可以以财务这个这个职能举例子;会出现集团财务部-各城市财务部-各校区财务组 三层关系,我们以财务数据来分析

以组织机构纬度来讲各平行纬度有这样的需求;

1:集团财务总监需求能看到集团的财务数据

2:各城市财务职能需求能看到城市的财务数据

3.各校区财务需求能看到校区的财务数据

若出现各平行纬度有小组情况,如财务组里面有多个组员,各成员只想看到自己的数据,组长能看到全部组员的数据,同时也会遇到非财务职能的管理职能人员也有看财务数据需求

1:本人数据,财务成员只能看到自己关联的数据

2:小组内数据,能查看自己负责小组内成员的所有数据;

3:区域负责人能看到整个区域的数据

图一 图二

所以综合来讲,数据权限要既要满足组织结构各平行纬度的的数据权限需求,也需要解决各平行纬度成员的数据权限需求;用户的群体数量进行划分:校区用户》城市中台用户〉集团用户

数据权限的设计方案

          用户数量的背景是校区用户》城市中台用户〉集团用户,所以我们可以先考虑校区用户,对平台的用户进行的背景说明:如下图

平台用户说明(第一期没有考虑集团用户)

A:在创建用户时对用户进行数据权限授权

穿件用户

B:用户登录系统所展示的操纵数据范围不一样

1:机构内(城市)用户在登录系统时会根据用户的数据权限,右边增加数据筛选,优先满足校区内的用户的使用

机构内账户

2:拥有跨机构内的账户我们则在操纵数据上进行这样的设置;

跨城市账户

3:小组内的数据实现比较简单,这里就不在这里累赘说明;

4:这样我们可以整体平台页面进行了分类,如下,这样数据权限和页面能有对应关系,用户在使用的时候只考虑自己的场景即可

页面分类

数据权限设计的反思

1:数据权限具体跟账户绑定,还是给角色绑定,这里做了简单分析

和账户直接绑定 基于角色间接绑定账户

         两张图我们能很好的看出,和账户直接绑定相比基于角色间接绑定账户造成的影响页面比较广,这样的话其实不符合我们的使用场景,如某一用户来讲他只负责该集团内的某一业务模块,同时他又只负责某一城市的其它业务模块,这样的直接和账户绑定满足不了其需求,数据权限来将和角色绑定,我们就能实现点对点的权限赋予,手术般的灵活;

2:数据权限能否和用户类型绑定

和用户类型

这是我目前发现表糟糕的数据权限设计方案,与用户类型绑定会导致单个用户来讲在系统只能是一种用户类型,实际来将用户的类型可能是多个,如有的销售可能既是市场又是销售,用户类型绑定导致数据权限不能灵活配置,也增加了代码实现的难度。

 以上就是本人对如何做数据权限设计的总结分析,仅供大家参考,希望在工作中能够帮助到大家,也希望大家一起多提意见,指出不足,感谢阅读!

相关文章

  • 权限设计:数据权限实战篇

    之前写了一篇权限设计的整理思路的文章,权限设计的难点其实是在数据管理这一块,最近刚好实战了一个项目,刚好...

  • 权限设计合集

    1.《数据权限设计思路_权限设计数据权限》摘要:方案一:按照岗位体系建立数据权限方案二:针对角色设置数据权限方案三...

  • 数据库 权限设计

    数据库 权限设计 -系统权限管理设计-通用权限管理设计 之 数据库结构设计 权限 用户 角色 组 用户表

  • 权限系统设计方案

    1权限模型 1.1 权限设计 从业务分类上来讲权限可以分为数据查看权限,数据修改权限等,对应到系统设计中有页面权限...

  • 权限管理

    权限管理分为 功能权限和数据权限 功能权限: 哪些人可以做什么操作数据权限: 哪些人可以看哪些数据 数据库表设计 ...

  • 产品 | 权限设计=功能权限+数据权限

    权限设计=功能权限+数据权限 权限管理 Authority Management 目前主要是通过用户、角色、资源三...

  • 2、用户权限管理,数据库表设计

    一、权限设计 网上资料说权限设计 = 功能权限 + 数据权限,我认为还是很有道理的。之前项目中只涉及到功能权限,没...

  • laravel 权限管理系统 --- 2021-09-26

    数据表设计: 角色表权限表用户角色表角色权限表

  • 如何设计权限系统

    # 权限系统的数据模型 常用的数据模型如图,设计角色的目的是为了方便批量管理用户的权限;设计权限码的目的是避免角色...

  • 通用数据级别权限的框架设计与实现(5)-总结与延伸思考

    继上篇文章通用数据级别权限的框架设计与实现(4)-单条记录的权限控制后,通用数据级别权限的框架设计已经实现,但我们...

网友评论

    本文标题:权限设计:数据权限实战篇

    本文链接:https://www.haomeiwen.com/subject/qxsephtx.html