惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
爱范儿
爱范儿
H
Help Net Security
V
Visual Studio Blog
J
Java Code Geeks
Stack Overflow Blog
Stack Overflow Blog
Microsoft Security Blog
Microsoft Security Blog
Apple Machine Learning Research
Apple Machine Learning Research
MyScale Blog
MyScale Blog
The Cloudflare Blog
Martin Fowler
Martin Fowler
D
Docker
腾讯CDC
F
Fortinet All Blogs
雷峰网
雷峰网
GbyAI
GbyAI
G
Google Developers Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Recent Announcements
Recent Announcements
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Blog — PlanetScale
Blog — PlanetScale
Engineering at Meta
Engineering at Meta
博客园 - 聂微东
博客园 - 叶小钗

人人都是产品经理

为什么你的产品找不到差异化?90%的失败都卡在第一步上(下) – 人人都是产品经理, 3年从30万到1300万用户、获2200万美元融资,这个AI教育产品用“抽卡”破解了获客难题 – 人人都是产品经理, 园区招商系统怎么做才能真正帮到去化?我加了这一个功能,推广链接转发400次阅读过万 – 人人都是产品经理, AI大事件:OpenAI发完网络安全模型又搞药物研发,小鹏汽车要抓”DeepSeek时刻” – 人人都是产品经理, 电商不是卖货,是一场更残酷的产品经理实战 – 人人都是产品经理, 没想到,活动营销又回来了! – 人人都是产品经理, 为何All-in海外KOC:一场关于AI时代窗口期的豪赌 – 人人都是产品经理, 重新理解企业的内部协作 – 人人都是产品经理, 苹果的 AI 战略到底是什么? – 人人都是产品经理, 医疗智能体·第2讲——合规护城河:等保、PIPL与HIPAA的架构实战 – 人人都是产品经理, 向量知识库五步法:从“答非所问”到“精准回复” – 人人都是产品经理, 鸿蒙PC三方库构建总指挥HPKBUILD(sha)库为例 – 人人都是产品经理, 何时该用LLM?AI产品经理的LLM设计指南 – 人人都是产品经理, 医疗信息领域的需求方、决策方、准入方以及关注点(二) – 人人都是产品经理, 即梦涨价:一场被误读的「傲慢」 – 人人都是产品经理, 面试AI PM必答题:Hermes和OpenClaw的区别,如何讲清楚业务价值 – 人人都是产品经理, AI的下一张船票:世界模型——AI产品经理必须理解的技术拐点 – 人人都是产品经理, 小红书做GEO,怎么让AI信你?记住这 3 个重要信息 – 人人都是产品经理, 5 家印度 AI 初创公司,看看印度 AI 再做什么 – 人人都是产品经理, AI项目跨团队协作:产品技术业务如何不打架 – 人人都是产品经理, Agentic Workflow(智能体工作流):让AI从”答案生成器”变成”数字员工” – 人人都是产品经理, lycium_plusplus 项目全景解读:OpenHarmony 三方库构建的“大管家” – 人人都是产品经理, 从爆单救火到前置履约:两套预采策略,把生鲜大促履约效率拉满 – 人人都是产品经理, 什么时候该补货?我用一轮数据做了一个决定 – 人人都是产品经理, 从“机械兜底”到“动态分流”:AI客服重复进线治理的4大底层逻辑 – 人人都是产品经理, 抖音拼效率,红书拼洞察 – 人人都是产品经理, 全民狂欢与退潮——为什么龙虾这波热潮冷却得如此之快? – 人人都是产品经理, Stripe押注!MPP重塑全球支付 – 人人都是产品经理, 小红书GEO:AI引用你的内容,不是因为你对,而是因为你看起来可信 – 人人都是产品经理, 前百度副总裁押注办公Agent,日韩付费爆发,Manus迎来强劲对手 – 人人都是产品经理,
手把手教你做B端的权限设计
WOWDesign · 2022-12-01 · via 人人都是产品经理

权限设计对于大多数产品经理来说都不陌生,属于B端系统设计中一个至关重要的环节。有关权限设计的内容浩如烟海,作者根据平时的项目实践经验,探讨了权限设计的定义、类型,详细介绍了功能权限和数据权限的设计方法。希望能够给你带来帮助。

权限设计是B端系统设计中一个至关重要的环节。有关权限设计的内容浩如烟海,笔者根据平时的项目实践经验,总结出B端系统权限设计的以下几点心得,共分为三大部分:

  1. 权限设计的定义;
  2. B端系统权限设计的分类;
  3. B端系统权限设计的方法。

其中第三部分为本文的重点,详细介绍了功能权限和数据权限的设计方法。关于权限设计的用户管理、用户组管理、角色管理、权限管理等内容,主要是列表页、编辑页、详情页等页面流程以及增删改查等操作,本文不再赘述。

一、权限设计的定义

权限设计是指系统为解决某一具体的权限分配问题而进行的设计。

为什么需要分配权限呢?一般是出于职位职责和数据安全两个方面的考虑。

例如,一个客服平台的质检系统需要管理员、质检员、坐席等不同职位,不同职位担任的职责均不相同,这就需要通过功能权限划分进行管理。

同时,考虑到系统的数据安全性,不同账号被允许查看的数据范围也不相同。管理员可以查看并操作全量数据,而坐席只能查看个人数据,因此,需要设计数据权限。

二、B端系统权限设计的分类

B端系统权限主要分为两类:功能权限和数据权限。

功能权限是指用户登录系统后可以操作哪些菜单、哪些页面以及哪些页面元素。例如,质检员登录W客服平台的AI质检系统后,可以在质检详情页对AI质检结果进行增删改查,而坐席人员只能查看不能操作。因此,就页面的功能权限而言,二者是不一样的。

数据权限是指用户登录系统后可以查看的数据范围,即能查看多少数据,什么类型的数据。例如,W客服平台的AI质检系统的质检记录列表,管理员能查看所有坐席人员的质检记录,而坐席人员只能查看自己的质检记录。因此,二者的数据范围不同。

我们在做权限设计时,一定要区分系统的功能权限和数据权限,不要糅合在一起。

三、B端系统权限的设计方法

(一)如何设计B端的功能权限

RBAC模型

RBAC模型(RBAC,Role-Based Access Control)是指基于角色的访问控制,该理论于1995年由计算机科学家Ravi Sandhu提出来的。主要描述了一套用户、角色、权限的设计理论,已被业界广泛使用。

RBAC模型理论的核心思想是:在用户与权限之间增加一个媒介,即角色。通过给每个用户赋予一个或多个角色,再给每个角色分配相应的权限,从而将角色关联的权限赋予给用户。

为什么要引入“角色”这个概念呢?为了更好地说清楚RBAC模型的核心思想,我们来看个B端设计案例。W客服部门做了一个AI质检系统,起初由于业务量少,质检系统只安排了1个质检员小明,让他负责审核AI质检结果并确认质检。管理员给小明创建了系统账号,并直接绑定了质检权限。

后来,随着业务量的不断增加和坐席团队的日益壮大,W客服部门已增至几十个质检员,每次有新增的质检员,管理员都需要给其绑定相应的权限,后续有修改也无法进行批量操作,需要对每一个账号操作一遍。这样,管理员的重复性工作太多,工作效率大打折扣。

试想,如果设置一个角色,并把相关权限赋予该角色,那么在添加新账号的时候,只需将该账号绑定该角色,就能拥有该角色所具有的权限。如果需要调整权限,也无需操作每个账号,只需修改该角色绑定的权限即可,所有账号的权限跟着改变,这将极大地提高管理员的工作效率。

关于RBAC模型的核心思想,图示如下:

关于RBAC模型,还有很多延展性理论。例如:根据模型的复杂度,又可分为RBAC0、RBAC1、RBAC2、RBAC3。其中,RBAC0是上面介绍的基础理论。后面几个涉及到角色继承、角色约束、用户组等概念,我们可根据自己业务的实际情况选择合适的理论模型,在此不再赘述。

根据RBAC模型理论,我们怎么设计B端系统的功能权限呢?

1、设计合理的角色。合理的角色设计是权限设计的前提。在此基础上,只需要配置每个角色能查看哪些菜单,访问哪些页面,操作哪些页面元素就行。

例如,通过业务分析,W客服平台的AI质检系统的角色有:管理员、质检员、坐席、游客。管理员负责系统配置和管理。质检员负责对AI质检结果进行检查和确认。坐席可查看自己的质检结果,提出复议。游客可登录系统查看质检模块介绍。

2、明确需要做权限控制的功能点,以权限表的形式罗列出来。

功能权限包括菜单权限、页面权限和页面元素权限。将需要做权限控制的功能点以菜单、页面、页面元素的层级罗列出来。如果菜单、页面有多个层级,则将每个层级都罗列出来。以下表格是W客服平台的AI质检系统的智能质检模块需要做权限控制的功能点:

3、列出角色,找到权限与角色之间的对应关系,完善权限表。我们再把W客服平台的AI质检系统的角色列在权限表后面,并勾选每个角色拥有的权限,完善角色与权限的对应关系,具体图示如下:

从以上权限表,我们可以看出:

  1. 在质检记录列表页中,管理员和质检员这两个角色可以操作所有筛选条件,而坐席只能操作“时间段”、“客户名称”、“客户手机号”、“状态”4个筛选条件。
  2. 在质检详情页中,质检员可以操作“添加质检类目”、“添加质检项”、“删除质检类目”、“删除质检项”、“确认质检”、“提交质检评论”、“编辑质检评论”、“删除质检评论”、“查看质检评论”、“查看复议”11个按钮;管理员能操作“查看质检评论”、“查看复议”2个按钮;坐席能操作“查看质检评论”、“提出复议”、“编辑复议”、“删除复议”、“查看复议”5个按钮。

以权限表的形式将各角色与功能权限一一对应呈现出来,清晰明了,不容易遗漏。

(二)如何设计B端系统的数据权限?

数据权限是建立在功能权限基础之上的。没有功能权限,就不会有数据权限。

例如,某个角色在W客服平台的AI质检系统中如果不能查看质检记录列表,自然也谈不上能看到多少数据量的问题。

关于数据权限,一般包含两种情况。

一种是无组织架构的数据权限。这类数据权限设计相对简单。根据不同的业务情况,可以选择直接在创建角色时选定相应的数据权限范围,也可以将规则以文字描述的形式罗列在权限表后面。

例如,W客服平台的AI质检系统各角色间不涉及上下级的层级架构,因此,只需在功能权限表后新加一栏数据权限,将各角色的数据权限规则描述出来即可,具体图示如下:

第二种是有组织架构的数据权限。

组织架构是指,一个组织整体的结构。企业的组织架构是企业的流程运转、部门设置及职能规划等最基本的结构依据。

例如,A公司营销部门的组织架构为:营销总监下设营销部经理和业务部经理,经理分别下设两个主管,主管下设专员,上级领导下级,下级对上级负责。具体图示如下:

A公司营销部的业务诉求是:营销总监能查看营销部的所有数据,部门经理能查看本部门的所有数据,部门主管能查看所有下属的数据,专员只能查看自己的数据。

那我们如何通过组织机构树进行数据权限设计呢?

1、根据业务诉求,我们创建管理员、部门管理员、部门主管、普通用户4个角色,并定义这4个角色在组织机构树中的权限范围,具体如下表所示:

2、给相应人员创建账号,并将对应的角色赋予账号,具体图示如下:

3、系统通过读取这棵组织机构树上的节点来实现数据权限的控制。

  • 账号0被赋予管理员角色,该账号处于整棵组织机构树根节点的位置,且数据权限是“当前节点及其所有子节点”,因此,账号0可以查看整个营销组织的数据,并能对其进行增删改查等操作。
  • 账号1被赋予部门管理员角色,该账号处于营销部经理的根节点,且数据权限是“当前节点及其所有子节点”,因此,账号1可以查看营销部的所有数据,并能对其进行增删改查等操作。
  • 账号2被赋予部门主管角色,数据权限是“当前节点及其所有子节点”,因此,账号2可以查看本人及其下属的所有数据,并能对其进行增删改查等操作。
  • 账号3被赋予普通用户角色,数据权限是“当前节点”,因此,账号3只能查看并操作本人的数据。

至此,根据组织机构树已实现对整个营销部门的数据权限管理。

四、结语

本文探讨了权限设计的定义、类型,着重介绍了功能权限和数据权限的设计方法。然而,这些只是权限设计的冰山一角。在接下来的B端系统的设计生涯中,期待我们更多的理论探索和实践验证!

作者:WOWdesign,研究设计价值最大化,涉及用户体验、品牌体验、空间体验。

本文由人人都是产品经理合作媒体 @WOWdesign 授权发布,未经许可,禁止转载。

题图来自Unsplash,基于 CC0 协议。

该文观点仅代表作者本人,人人都是产品经理平台仅提供信息存储空间服务。