你是怎么设计权限系统的?

作者: Q_misky | 来源:发表于2017-08-20 17:49 被阅读387次

凡事都要先问一句:为什么?了解了背景,更容易理解为什么要做这件事。

Q:我们的系统为什么要设计权限系统呢?
A:因为在这个系统中,不同的用户要做的事情不一样。权限的分离可以更好的保证每个用户只做好自己的事情、管好自己的一亩三分地。

Q:那不做权限管理也没有关系啊?让每个用户看到的东西都一样,不是更有利于了解事情的全貌,对这个事情了解地更加深刻吗?何况,就算所有的用户看到的都一样,每个用户还是只点击属于自己的按钮啊,并不会影响什么?
A:首先,没法保证不会有个别用户因为“好奇”不小心在系统里做了别人的事情。其次,不是每个人都愿意了解事情的全貌,很多人都是做好份内之事。最后,不是每个人都有权力知道事情的全貌,作为一个螺丝钉,干好螺丝钉的事情就好,没必要担忧一些莫须有的事情。所以,为了尽量少地污染用户的眼睛,就让每个用户在系统里看到自己该做的事情就好。

Q:我可以理解为:权限系统就是让每个用户做自己的事情吗?
A:Bingo,理解的很到位。

Q:那有那么多用户,一个一个设置权限岂不是要累死了。是不是有个用户分类啥的会好一点。
A:对的。如果系统只有5个用户,一个一个设置权限工作量不大,没啥大问题。但若是有500个用户,还要一个一个设置权限,估计要奔溃了。研发同学不是有一句话嘛,重复性超过10次的工作还是写个脚本吧。所以,存在用户账号的系统,从一开始就考虑是否需要权限管理,后面可以少踩很多坑哦。

在系统里,用户的分类至少要考虑两件事:

  • 用户可以分为哪几类?
  • 每类用户之间有什么联系。
    可以联系公司的组织结构框架理解,可能会更方便一点哦。

Q:那同理,要做的事情是不是也可以这么思考?事情分为哪几类?每类事情之间有什么联系?
A:越来越聪明啦,我再补充一下。

要做的事情至少要考虑三件事:

  • 事情分为哪几类?
  • 每类事情之间有什么联系?
  • 怎么做每类事情?

用户能做什么事情,这个“事情”大多是从业务层面上谈的。在产品设计过程中,我们要把业务流程转化为系统流程。换句话说,在系统里:

  • 用户能做什么事情?就可以翻译为:用户能看到哪些按钮或者用户能看到哪些数据。至于究竟是按钮还是数据,是根据产品的类型决定的。
  • 事情分为哪几类?就可以翻译为:这些功能之间是否有层级关系,比如一级功能和二级功能等。
  • 每类事情之间有什么联系?可以翻译为:每个功能之间的关联关系是什么?
  • 怎么做每类事情,可以翻译为:对能看到的按钮或者数据执行什么操作。

Q:是不是还有“用户类型”和“功能/数据”的对应关系啊?不然这独立的两部分也没发用啊。。。
A:是的,必须要有这种对应关系的。


总结一下,权限系统就是解决了用户(who)有权对哪些功能(what)执行哪些(how)操作。

更多请移步RBAC权限管理

— end —

相关文章

  • 你是怎么设计权限系统的?

    凡事都要先问一句:为什么?了解了背景,更容易理解为什么要做这件事。 Q:我们的系统为什么要设计权限系统呢?A:因为...

  • 缓存知识

    权限系统是管理类系统中必不可少的一个模块,一个好的缓存设计更是权限系统的重中之重,今天来聊下如何更好设计权限系统的...

  • 数据库 权限设计

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

  • JavaWeb权限设计原理

    每个系统都有权限设计,本篇主要将初始的权限设计的原理,不依赖任何框架,以直观的角度剖析web的权限设计。 权限设计...

  • ssh项目实战----java监听器实现权限控制系统和资源获取优

    一、权限控制系统 权限控制系统即用户登录后,如果操作了不能访问的操作,系统将其拦截。权限控制系统设计需求: 系统功...

  • 权限系统设计方案

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

  • B端系统权限设计

    做过企业端或者后台产品的童鞋,对权限设计不会陌生。权限设计是所有企业系统的基础。 企业系统中所有的功能模块都需要考...

  • 后台系统:基于RBAC模型的权限设计

    对于业务复杂或数据庞大的系统,为了方便管理,一定要做权限设计。 权限设计是后台系统要考虑的一个授权策略问题。直白的...

  • 如何设计权限系统

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

  • SaaS知识体系

    技术 SaaS系统用户权限设计 有赞权限系统 剖析SalesForce的多租户架构(PAAS\SAAS\云计算) ...

网友评论

    本文标题:你是怎么设计权限系统的?

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