城市直播房产教育博客汽车
投稿投诉
汽车报价
买车新车
博客专栏
专题精品
教育留学
高考读书
房产家居
彩票视频
直播黑猫
投资微博
城市上海
政务旅游

后台基于模型的用户与权限设计

1月1日 星宿房投稿
  本文作者结合实际经验,跟大家谈谈后台基于RBAC模型的用户与权限是如何设计的,一起来看看
  一、项目背景
  1。1需求来源
  前段时间,笔者所在公司收到了多个客户对后台权限和角色的需求。讨论发现,现有的产品后台架构并不能很好的满足用户需求,所以为了满足这些客户的需求并为之后可能存在的业务拓展打下基础,我们决定对现有产品的后台用户体系进行迭代。
  1。2需求的拆解
  通过过滤需求,我们发现其实用户的需求主要是两类:
  是要求我们的用户体系可以承载用户多级分销的业务模式并满足各级分销之间数据权限的要求;
  是要求我们完善对用户权限的控制。
  二、理论依据
  涉及到后台用户管理系统,绕不开的概念就是权限,任何一个账号都会有自己的用例。但是多数情况下,我们对部分账号的用例会做一些限制,如果直接将这种限制加在账号上,就会产生二个问题:
  每个账号都要配置很麻烦;
  无法批量修改一类用户的权限。
  所以角色的诞生就呼之欲出了,我们通过对权限集的抽象,创立了角色,通过修改角色,来达到控制拥有该角色的账号的权限修改的目的。
  权限可以分为数据权限和功能权限两大类:
  数据权限顾名思义,就是账号能查看多少数据,如何实现A部门与B部门之间相互不能查看业务数据,这个就涉及到数据权限;
  功能权限按照范围以大致菜单权限和按钮权限,按照操作可以大致分为查看和编辑权限。
  2。1RBAC0模型
  2。1。1简述
  RBAC0模型的特点就是用户和角色是多对多的关系,同一个用户拥有多个角色的属性,我们通过组织这个概念来构建组织架构,从而实现对角色数据权限的分配。这样单个用户账号拥有的全部权限就是他所在组织的权限的累加。
  2。1。2举例
  在RBAC0模型中,A用户负责X组织的业务,B用户负责Y组织的财务工作。正常情况下,A和B自然不能查看对方的数据,但是如果有天,B由于业务需要需要协助处理X组织的财务,那我们就可以通过为B用户添加X组织的财务角色来实现这种需求。在业务结束后,也可以通过暂停删除操作来管理B在X组织下的权限。
  2。2RBAC1模型
  基于RBAC0模型,针对角色引人继承的概念,子角色可以对父角色的权限进行继承,但是子角色的权限一定小于父角色。
  2。3RBAC2模型
  相较RBAC0系统,RBAC2系统在用户与角色间和角色与角色之间加入了一些规则。
  单个角色允许分配的用户数限制,例如一个公司不可能有多无限个董事会角色;
  单个用户允许授予的角色数限制,例如单个用户不允许在一个公组织或多个组织担任无限多个职务;
  角色与角色有层级关系,例如想新增一个部门经理,不能用一个部门职员的账号去创建吧?
  角色与角色存在互斥关系,这个根据实际业务需要来做限制,例如销售不能兼任会计。
  2。4RBAC3模型
  RBAC3模型也叫统一模型,它基于了RBAC0,并包含了RBAC1和RBAC2模型的全部特点。
  三、设计过程
  3。1新增账号的属性
  新增账号是用户体系的最基本的功能,新增账号时需要获取账号的哪些参数决定了整个用户体系的数据维度。
  这里不得不提的就是USERID,登录账号,昵称的概念。
  USERID:对应的是账号在系统中唯一标识,可以不展示给用户,例如微信的openid和unionid,一般在新增账号时由系统生成,且不可修改;
  登陆账号:登录账号和USERID在有的系统并不一致,同一个USERID可能对应着多个登录账号,例如微信可以通过微信号,手机号,邮箱去登录,这里的不同登陆方式都对应这一个登陆账号,一般在新增账号时,由用户输入,且不可修改;
  昵称:昵称是用户可以自由编辑操作的,由用户输入,且允许修改。
  3。2功能权限的处理方式
  功能权限通过对角色的权限树进行修改来实现。在权限树种我们可以将页面权限,菜单权限和按钮权限罗列,通过筛选对应权限完成对角色功能权限的控制。
  需要注意的一个问题是,权限控制的最小粒度。如果要实现每一个权限的控制,相当于每一个权限对应功能都需要做封装。大的页面和菜单权限是必备的,但是哪些按钮权限是可以封装在一起的,(比如启用和暂停一般都是成对出现的),这些是需要产品考虑的。
  3。3数据权限的处理方式
  数据权限其实是角色权限的重要属性,但是由于数据范围太灵活,如果在角色加入数据权限tab,如果账号下的数据量较大,用户编辑数据权限的操作会很繁琐。因此,因此现在主流的后台设计都会使用组织结构来对应数据权限。
  在系统中,我们使用了【新增组织】的方式,来处理数据权限。
  3。4对老用户的兼容
  在做用户体系的重构时,老用户的账号兼容问题是产品必须考虑的部分。兼容问题也是从功能和数据两个维度去验证新的体系是否对老用户是否有影响。
  四、总结
  文章的内容主要是本次迭代中实际的使用场景,抱着他山之石可以攻玉的想法,参考了现有的资料,结合自己系统的实际情况,对用户体系设计做了一次小结。若有不足之处,还请大家多多沟通,共同进步。
投诉 评论 转载

微信商业化的喜乐与哀愁1月21日晨,微信在6。1版本中推出了一条推广信息,传说中的朋友圈广告终于第一次出现在了公众视野中。一时间,关于微信广告的各种讨论像是一颗深水炸弹,在各大科技网站爆炸开来。同时……618个月宝宝作息时间表,新手爸妈必看很多新手妈妈面对刚出生的小婴儿充满了焦虑,其实在宝宝出生的第1年是比较考验家长们的经验的每天带娃对妈妈来说真的不容易,小孩子的作息跟大人不一样,吃玩睡也并不固定,在宝宝6……鞋子掉色怎么办如何防止鞋子掉色鞋子掉色怎么办磨砂鞋子1、先使用软毛将鞋子上面的灰尘和泥土刷洗干净。2、磨砂鞋子不能在水里泡,需要使用专业的去污清洁剂或者白水醋少量洗涤剂的混合溶液来洗鞋面。……基于Sentry高效治理前端异常一个前端项目上线后的各种指标监控是极其重要的,通过各种指标数据可以知道项目存在的问题及未来优化的方向,在各种维度监控中的异常监控是必不可少的,通过异常数据可以及时发现用户遇到的……40岁以上的中老年人注意这7种水果再贵也要吃,对心血管特别好40岁是人生的一道坎,人上了40岁以后就会发现,生活中各种事情接踵而来,以前可以随便吃的食物突然之间就吃不了了,一吃就各种问题。特别是心血管疾病,到了一定的年纪之后就会很普遍,……斑斑造句用斑斑造句大全211、他的手里握着半截的断箭,箭秆上边还有着斑斑的血渍,在它的后端,刻着段匹??三个细小的柔然文字。212、由于夹棍用的太用力,刚才跪着的地方血迹斑斑的。……乔鸾在2022年国际小姐总决赛中撞衫垂仙穿过的金色长裙2022年11月8日晚上,第六届河内国际电影节在河内举行,许多著名导演和演员将亮相。特别是,乔鸾(huKiuLoan)和梅芳(MaiPhng)以歌手的身份出现。两位美女合……浅谈行政诉讼合法性审查的法律问题摘要:本文采用统计分析、案例分析、文本解释等研究方法,对我国行政诉讼合法性审查制度虚置现象及原因进行分析,提出行政诉讼改革仍须坚持合法性审查,强化监督政府依法行政的功能,完善相……后台基于模型的用户与权限设计本文作者结合实际经验,跟大家谈谈后台基于RBAC模型的用户与权限是如何设计的,一起来看看一、项目背景1。1需求来源前段时间,笔者所在公司收到了多个客户对后台权……订货造句用订货造句大全31、订货时需要交50英镑的订金,货到后余款结清。32、这么大的订货量,你们应该给我们折扣吧。33、如果你们的条件优惠,可望得到我们的大量订货。34、极度负疚……产品数学课如何理解个性化推荐里的数学原理6月份是高考以及毕业的月份,这种时候特别适合老人家怀旧。离开课堂三年,课本上学的知识几乎都还给了老师。写这篇文章即是加深自己对个性化推荐的理解,也想趁着高考时回顾下高(中)数(……公安局党委委员副局长述职述廉述学报告公安局党委委员、副局长述职述廉述学报告我叫,男,汉族,年月出生,文化程度,中共党员,现任市局党委委员、副局长,主管、。2018年度工作中,本人在市委、市政府及局党委……
RedmiK50至尊版对比一加AcePro,价格相近,谁配置四象物语游戏测评被游戏制作耽误的原画师热刺以创俱乐部纪录的6000万英镑,将转会费理查利森国内手机销量创七年新低,苹果未受影响,中低端品牌销量承压严重这些城市,房价开始热了中消协618舆情报告质量配送价格和直播带货频遭吐槽关于不吃晚饭小米12Pro天玑版今日开售全球首发天玑9000,3999元又一款聚合类黑科技工具箱,内含100神器,随开随用五战三分合计30中17,32秒连得8分致敬麦迪!湖人这回终于天热了,这4道汤金不换,鲜美好喝又祛湿消暑,一周喝两次也不够赵霁别人都是一胖毁所有,她长胖却成了女神
关于暑期家乡养鸡社会实践报告女人精致自律生活句子越南购物有什么必买清单吗?有业无业,中秋佳节热闻聚热点网 农村天地广,野生食物多惊险时刻600字作文中国神话中的“雷公”到底是谁?酗酒的危害糖尿病人可以喝酒吗?小型玉米深加工项目设备厂家哪些设备适合农村生产加工使用彭楚粤喝油漆事件(事后替节目组隐瞒真相)热文聚热点网 只限造句用只限造句大全黑坑钓罗非鱼用什么饵料好,用什么小药好

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找江西南阳嘉兴昆明铜陵滨州广东西昌常德梅州兰州阳江运城金华广西萍乡大理重庆诸暨泉州安庆南充武汉辽宁