很可惜 T 。T 您现在还不是作者身份,不能自主发稿哦~
如有投稿需求,请把文章发送到邮箱tougao@appcpx.com,一经录用会有专人和您联系
咨询如何成为春羽作者请联系:鸟哥笔记小羽毛(ngbjxym)
本文针对初阶的产品经理、产品体验设计师,以及承担部分产品边界工作的交互设计师,较为系统地介绍了中后台权限系统的模型组成以及元素梳理、流程界面设计的诸多要点,读者可以以此来自查梳理内容是否充分以及获取权限界面设计中的要点干货。
“权限设计”是中后台的底层设计,用于明确操作人员可在平台内能做什么;即什么样的人,可以做什么样的事。
让使用者在有效的限制范围内访问被授权的资源。
让管理者基于系统的安全规则与策略,控制不同用户合理访问对应资源。
正是有了权限系统,才可以让工作群组内不同人员、不同组织的分工,让不同角色专注于自己的工作范围,也可以降低操作风险发生概率,也便于管理。
权限设计的应用主要有两种场景,分别是版本切割、角色权限管理:
角色权限管理:角色权限管理顾名思义是根据用户角色类型进行权限分配;一个角色对应一组权限组,一个用户可能有多个角色。适用于中后台逻辑复杂功能模块繁多,需要对系统按权限进行切割的应用场景。
版本管理:部分中后台存在商业化诉求,基于前者的角色权限分配(也有可能不存在角色区分),再将完整的系统进行功能切割,将整个系统按功能切割为普通版、进阶版,甚至更多版本;这些版本功能范围基本处于一个包含关系。
在B端中后台的设计中,最常见的应用场景为“角色权限管理”,角色权限管理涉及的维度也会比“版本切割”更为复杂,本指南会着重介绍角色权限管理场景下的设计。
好的权限设计,需要达到以下三方面要求:
系统安全:基于系统的安全规则和策略进行设计,同时需要降低用户操作错误导致的风险概率。
关系明确:需要界定权限的边界与关系,遵循一定的规则与用户进行关联。
拓展性高:需要确保权限管理的拓展性,系统的能力建设是持续的,用户也是不断流动的;保持高拓展性以此降低变更对安全性、稳定性的影响。
界面设计:权限查询、管理与授权等一系列页面设计。
业务梳理:权限构成、赋予以及行使的逻辑、元素的梳理。
数据验证&管理:数据管理层面,最终目标是可被表达成一个运算则式,体验方案的合理性与拓展性,验证设计的有效性。
底层架构开发:偏向于开发层面的系统底层架构设计与研发。
权限系统的复杂度决定设计需要介入的层级深度;一般设计师在权限设计中的范畴包括厘清权限的业务逻辑、关注页面本身的设计,其他的数据层面和实现层面即可交由产品和开发。
在业界有很多关于权限系统的技术模型,常见的有ACL、ABAC、DAC、RBAC等等,不同体量的权限系统,我们可以参考不同的权限模型进行梳理和设计。
RBAC0的基础理念是将“角色”这个概念赋予用户,在用户与权限之间通过角色进行关联,实现灵活配置。
RBAC模型的三要素为:用户、角色、权限。
用户:是发起操作的主体,例如:后台管理系统的用户、OA系统的内部员工、面向C端的用户。
角色:用于连接了用户和权限的桥梁,每个角色可以关联多个权限,同时一个用户也可以关联多个角色,那么这个用户就有了多个角色的多个权限。
权限:用户可以访问的资源,包括:页面权限、操作权限、数据权限。
ACL为查询操作对象的权限控制列表。当权限系统体量小,用户直接对应具体功能点即可满足系统诉求时,可以考虑使用ACL模型作为参考。
ACL权限中,只有用户、权限这两个要素:
RBAC1模型是在RBAC0模型基础上,引入了角色继承的概念,即角色具有上下级的关系,每个等级权限不同,从而实现更细粒度的权限管理。
RBAC2模型是在RBAC0模型基础上,对角色进行约束控制。RBAC2模型中添加了责任分离关系,规定了权限被赋予角色时或角色被赋予用户时,以及当用户在某一时刻激活一个角色时所应遵循的强制性规则。主要包括以下约束:
互斥关系角色: 同一用户只能分配到一组互斥角色集合中至多一个角色,互斥角色是指各自权限互相制约的两个角色。例如:设计部有交互设计师和视觉设计师两个角色,他们如果在系统中为互斥角色,那么用户不能同时拥有这两个角色,体现了职责分离原则。
基数约束: a.一个角色被分配的用户数量受限;b.一个用户可拥有的角色数目受限;c.同一个角色对应的访问权限数目受限;以此控制高级权限在系统中的分配。
先决条件角色: 简单理解即如果某用户想获得上级角色,必须得先获得其下一级的角色,以此为一个先决条件。
RBAC0在实际工作中用得较为频繁,且对应初阶的设计师对于权限的理解也较为有帮助,所以本文接下来会基于RBAC模型来介绍权限系统的梳理及设计。
角色是连接用户和权限的桥梁,在这一步对参与系统的角色进行穷举,需要保证系统的运作能否绝对闭环,所以明确系统中的角色至关重要。
如何进行角色盘点,主要有以下两种方式:
参考组织本身的岗位划分:绝大多数情况下,系统中的工作职责与实际工作岗位有较为紧密的相关性,我们可以参考已有的岗位来盘点系统中的角色。
?举例,研发运维工具中的角色定义,不同的岗位对应不同的角色拥有不同工具的使用权。
根据任务流盘点:根据系统任务流对角色进行穷举,即盘点需要创建哪些角色进行任务闭关。
?举例,支撑A平台的智能客服知识库,角色是我们在产品规划过程中为其定义产生的。
本步骤产出物:「角色列表」
权限是用户能够访问的资源,本步骤需要将系统中所有权限点按照类型进行整理归类,最终成表。权限点主要有以下几种类型需要盘点:
通俗讲即用户在系统内可见的页面,由导航/菜单来控制,包括一级导航/菜单、二级导航/菜单,甚至三级导航/菜单;只要用户有对应导航/菜单的权限即可访问页面。
?举例,智能客服知识库系统的页面权限:
通俗讲即页面的功能按钮,包括查看、新增、修改、删除、审核等等。
?举例,智能客服知识库系统-敏感词管理-黑名单页面的操作权限:新增黑名单、修改、删除
在实际操作场景中,部分操作权限会因状态而发生变化,在盘点操作权限时,需要使用状态流转化图来检查是否有缺漏。
数据权限就是用户在同一页面看到的数据是不同的,比如:A部门只能看到其部门下的数据,B部门只看B部门的数据。数据权限分割的解决方案为:创建用户组——将相同属性或相同数据范围诉求的用户进行编组,不同的用户组则享有不同的数据权限。
根据用户组是否有上下级的关系,可将用户组分为:具上下级关系用户组、普通用户组。
具上下级关系用户组:最典型的例子就是部门组织。
?举例:
针对事项的受理审批有较为严谨的流程,各个单位需要各司其职,且公众办理的事项隶属于各级层级区域,所以平台权限系统需要形成较为严谨的区域结构和部门组织。例如,市公安局、民政局、水利局的办事数据是对立的,我们可通过部门组织建立的用户组来隔离数据权限。
普通用户组: 没有上下级关系的用户分组。在日常系统最常见的普通用户组为“项目组”,按项目组来划分用户的数据权限。
?举例,以应用项目的纬度控制用户可访问的数据范围。
本步骤产出物:「权限点列表」
本步骤主要工作在于连接权限点与角色的关系,最终整理出一张完整的角色权限表。在梳理角色和权限的关系时,可以借助设计分析方法“角色任务行为穷举”来进行权限点转化和连接。
通常情况下,用户为达成目标而需完成某些任务,这些任务以及任务的聚合往往会影响我们对于整个系统信息架构的设计考量。所以各个角色的任务经常与我们的页面一一对应,从而产生页面权限。而又因为完成任务需要进行一些特定的行为,而这些行为又与操作按钮一一对应,从而产生了操作权限。
?举例:
本步骤产出物:「角色权限总表」
在建立了角色与权限的关系后,需要去明确用户授权/导入的方式,并给导入的用户赋予角色权限。
明确账号体系
有部分公司域下的中后台,用户已有有统一的验证方式,例如:腾讯OA身份验证;也有部分中后台需要用户创建独立的ID账号密码作为身份验证。我们首先需要去明确我们设计的中后台是以上哪种方式作为身份验证,这将影响用户导入流程的设计。
初始用户授权流程
已有账号:如为公司域下中后台的用户导入,用户账号为现成的我们不需要考虑用户的账号。可直接为用户赋予权限,授权分为两种方式:为用户选择角色、为角色添加用户。
为用户选择角色可用在单个授权的场景,以下为授权流程可供参考:
为角色添加用户可用在批量授权的场景,以下为授权流程可供参考:
为丰富场景,提升体验,建议两种方式共存。
无账号:如需要用户创建ID的用户导入,则适用于以下流程:
为保障安全,邀请码需具有时效性。
授权申请流程
在实际工作中,用户为完成某项任务却无权限时,需要为用户提供清晰的申请流程。申请权限有两种场景。
场景一:权限存在岗位身份之分,身份与某组权限进行绑定,用户主动申请岗位身份并获得审批通过后,即可获得该组权限,流程参考下图:
场景二:用户在访问系统时,系统页面提示用户无访问/操作权限,用户针对该页面/操作进行权限申请,通过后即可获得该页面/操作权限,流程参考下图:
绘制状态转换图
如果需要展示状态转换关系,关注状态变化过程,甚至是检测流程是否存在缺陷,我们可以通过绘制状态转换图来梳理流转状态。使用状态图的过程中,设计师可以清晰的了解同一界面的各种状态,便于对设计方案系统化的进行设计。在同一界面中,可以模块化对比设计差异内容。
导入/授权后的消息通知
消息通知可以及时地将状态、内容的更新触达到用户。在权限系统中,导入用户环节或者是审批用户权限环节,都离不开及时的消息通知。特别是导入用户环节,为了确保安全性,邀请码具有一定的时效性,所以消息的及时传递非常重要,务必需要对用户进行及时的消息推送。
在2.2.4章节中,我们提到用户在实际工作中为完成某项任务,对无权限页面/操作会存在申请的场景诉求,我们除了要为用户提供清晰的申请流程,也需要有清晰的指引,实际上也是针对空状态的设计。
线上申请:用户通过触发申请按钮,发起申请,并在线上填写表单完成申请。在此场景下,除了申请按钮,我们需要也很明确的告知用户当前为无权限的状态,甚至将原因也给予简单说明;同时建议告知用户申请的审批人是谁,需要审批多久。
?举例:无权限页面
线下申请:页面仅告诉用户申请方式,一般为授权人的联系方式。
?举例:无权限页面
在2.2.2章节中,数据权限的不同导致用户在同一页面看到的数据是不同的,数据权限的范围可由具有层级关系的组织架构划分,也可由普通用户组进行划分。通常,系统允许用户拥有单个或多个数据权限;所以在我们的系统界面中,需要有承载数据权限范围展示和切换的设计。
由于数据权限的展示和切换控制着用户对于整个系统的数据范围,故需要存在于系统架构的第一层级,一般可独立放置于一级菜单之上。
? 举例:项目切换
可申请
对于开放申请的操作权限的展示,可将操作权限点置灰,表示用户当前不可操作;在用户hover置灰权限点时,提供气泡提示置灰原因为无操作权限并提供申请权限入口。
不可申请
有些系统要求用户可见操作全貌,即所有操作无论是否有权限都为可见的;若无权限则且不可申请,则直接置灰操作
有些系统要求"可见即可操作",即为有权限的操作则显示,无权限的操作则隐藏,这里就需要前端来配合,前端开发把用户的权限信息缓存,在页面判断用户是否包含此权限。
站在用户体验角度,更建议用后者这种方式进行权限隔离。
在中后台中,权限系统或许不像业务模块一样备受重视,仅仅只是中后台背后默默支撑的功能,但却是必不可忽视的,正是有了权限系统,才可以让工作群组内不同人员、不同组织的分工,让不同角色专注于自己的工作范围,降低操作风险发生概率,便于管理。
在实际项目中,会遇到多个系统、多个用户类型、多个使用场景,这需要具体问题具体分析;但万变不离其宗,不管多么复杂,逻辑如何变化,最核心的RBAC模型还是一样适用。
本文为作者独立观点,不代表鸟哥笔记立场,未经允许不得转载。
《鸟哥笔记版权及免责申明》 如对文章、图片、字体等版权有疑问,请点击 反馈举报
Powered by QINGMOB PTE. LTD. © 2010-2022 上海青墨信息科技有限公司 沪ICP备2021034055号-6
我们致力于提供一个高质量内容的交流平台。为落实国家互联网信息办公室“依法管网、依法办网、依法上网”的要求,为完善跟帖评论自律管理,为了保护用户创造的内容、维护开放、真实、专业的平台氛围,我们团队将依据本公约中的条款对注册用户和发布在本平台的内容进行管理。平台鼓励用户创作、发布优质内容,同时也将采取必要措施管理违法、侵权或有其他不良影响的网络信息。
一、根据《网络信息内容生态治理规定》《中华人民共和国未成年人保护法》等法律法规,对以下违法、不良信息或存在危害的行为进行处理。
1. 违反法律法规的信息,主要表现为:
1)反对宪法所确定的基本原则;
2)危害国家安全,泄露国家秘密,颠覆国家政权,破坏国家统一,损害国家荣誉和利益;
3)侮辱、滥用英烈形象,歪曲、丑化、亵渎、否定英雄烈士事迹和精神,以侮辱、诽谤或者其他方式侵害英雄烈士的姓名、肖像、名誉、荣誉;
4)宣扬恐怖主义、极端主义或者煽动实施恐怖活动、极端主义活动;
5)煽动民族仇恨、民族歧视,破坏民族团结;
6)破坏国家宗教政策,宣扬邪教和封建迷信;
7)散布谣言,扰乱社会秩序,破坏社会稳定;
8)宣扬淫秽、色情、赌博、暴力、凶杀、恐怖或者教唆犯罪;
9)煽动非法集会、结社、游行、示威、聚众扰乱社会秩序;
10)侮辱或者诽谤他人,侵害他人名誉、隐私和其他合法权益;
11)通过网络以文字、图片、音视频等形式,对未成年人实施侮辱、诽谤、威胁或者恶意损害未成年人形象进行网络欺凌的;
12)危害未成年人身心健康的;
13)含有法律、行政法规禁止的其他内容;
2. 不友善:不尊重用户及其所贡献内容的信息或行为。主要表现为:
1)轻蔑:贬低、轻视他人及其劳动成果;
2)诽谤:捏造、散布虚假事实,损害他人名誉;
3)嘲讽:以比喻、夸张、侮辱性的手法对他人或其行为进行揭露或描述,以此来激怒他人;
4)挑衅:以不友好的方式激怒他人,意图使对方对自己的言论作出回应,蓄意制造事端;
5)羞辱:贬低他人的能力、行为、生理或身份特征,让对方难堪;
6)谩骂:以不文明的语言对他人进行负面评价;
7)歧视:煽动人群歧视、地域歧视等,针对他人的民族、种族、宗教、性取向、性别、年龄、地域、生理特征等身份或者归类的攻击;
8)威胁:许诺以不良的后果来迫使他人服从自己的意志;
3. 发布垃圾广告信息:以推广曝光为目的,发布影响用户体验、扰乱本网站秩序的内容,或进行相关行为。主要表现为:
1)多次发布包含售卖产品、提供服务、宣传推广内容的垃圾广告。包括但不限于以下几种形式:
2)单个帐号多次发布包含垃圾广告的内容;
3)多个广告帐号互相配合发布、传播包含垃圾广告的内容;
4)多次发布包含欺骗性外链的内容,如未注明的淘宝客链接、跳转网站等,诱骗用户点击链接
5)发布大量包含推广链接、产品、品牌等内容获取搜索引擎中的不正当曝光;
6)购买或出售帐号之间虚假地互动,发布干扰网站秩序的推广内容及相关交易。
7)发布包含欺骗性的恶意营销内容,如通过伪造经历、冒充他人等方式进行恶意营销;
8)使用特殊符号、图片等方式规避垃圾广告内容审核的广告内容。
4. 色情低俗信息,主要表现为:
1)包含自己或他人性经验的细节描述或露骨的感受描述;
2)涉及色情段子、两性笑话的低俗内容;
3)配图、头图中包含庸俗或挑逗性图片的内容;
4)带有性暗示、性挑逗等易使人产生性联想;
5)展现血腥、惊悚、残忍等致人身心不适;
6)炒作绯闻、丑闻、劣迹等;
7)宣扬低俗、庸俗、媚俗内容。
5. 不实信息,主要表现为:
1)可能存在事实性错误或者造谣等内容;
2)存在事实夸大、伪造虚假经历等误导他人的内容;
3)伪造身份、冒充他人,通过头像、用户名等个人信息暗示自己具有特定身份,或与特定机构或个人存在关联。
6. 传播封建迷信,主要表现为:
1)找人算命、测字、占卜、解梦、化解厄运、使用迷信方式治病;
2)求推荐算命看相大师;
3)针对具体风水等问题进行求助或咨询;
4)问自己或他人的八字、六爻、星盘、手相、面相、五行缺失,包括通过占卜方法问婚姻、前程、运势,东西宠物丢了能不能找回、取名改名等;
7. 文章标题党,主要表现为:
1)以各种夸张、猎奇、不合常理的表现手法等行为来诱导用户;
2)内容与标题之间存在严重不实或者原意扭曲;
3)使用夸张标题,内容与标题严重不符的。
8.「饭圈」乱象行为,主要表现为:
1)诱导未成年人应援集资、高额消费、投票打榜
2)粉丝互撕谩骂、拉踩引战、造谣攻击、人肉搜索、侵犯隐私
3)鼓动「饭圈」粉丝攀比炫富、奢靡享乐等行为
4)以号召粉丝、雇用网络水军、「养号」形式刷量控评等行为
5)通过「蹭热点」、制造话题等形式干扰舆论,影响传播秩序
9. 其他危害行为或内容,主要表现为:
1)可能引发未成年人模仿不安全行为和违反社会公德行为、诱导未成年人不良嗜好影响未成年人身心健康的;
2)不当评述自然灾害、重大事故等灾难的;
3)美化、粉饰侵略战争行为的;
4)法律、行政法规禁止,或可能对网络生态造成不良影响的其他内容。
二、违规处罚
本网站通过主动发现和接受用户举报两种方式收集违规行为信息。所有有意的降低内容质量、伤害平台氛围及欺凌未成年人或危害未成年人身心健康的行为都是不能容忍的。
当一个用户发布违规内容时,本网站将依据相关用户违规情节严重程度,对帐号进行禁言 1 天、7 天、15 天直至永久禁言或封停账号的处罚。当涉及欺凌未成年人、危害未成年人身心健康、通过作弊手段注册、使用帐号,或者滥用多个帐号发布违规内容时,本网站将加重处罚。
三、申诉
随着平台管理经验的不断丰富,本网站出于维护本网站氛围和秩序的目的,将不断完善本公约。
如果本网站用户对本网站基于本公约规定做出的处理有异议,可以通过「建议反馈」功能向本网站进行反馈。
(规则的最终解释权归属本网站所有)