这一篇让你彻底搞懂 SaaS 产品的数据权限设计!
时间:2023-06-17 00:41:47

数据权限是SaaS产品必不可少的功能,明确权限管控的颗粒度,保障数据安全。本文作者对如何SaaS 产品的数据权限该如何设计展开了分析,希望对你有帮助。

最近正好在做数据权限这块的产品设计,同时拆解完纷享销客的 PaaS 平台后,又受到了新的启发。事实上,我发现不少 SaaS 的产品经理都没有接触过数据权限这块的产品设计 —— 通常,如果经历过从0-1的 SaaS 产品过程的话,就会知道数据权限是一开始就需要设计和开发的。

本篇就来和大家讲讲如何设计数据权限产品功能。


(资料图片仅供参考)

一、数据权限是什么?

我想如果面试的时候来问产品经理这个问题,估计会得到很多不一样的答案。简单的回答可能就是“对系统的数据进行访问控制”,而这相当于没有回答。

实际上,我认为要从三个方面回答这个问题。

一是控制登录人访问的数据范围,不该看的不能看;二是控制登录人操作数据的行为,不该管的不能管;三是控制登录人能够查看的业务对象属性,敏感的属性要管控。

数据权限一是控制登录人访问的数据范围,不该看的不能看;二是控制登录人操作数据的行为,不该管的不能管;三是控制登录人能够查看的业务对象属性,敏感的属性要管控。

二、怎么控制数据权限?

我们来看看应该怎么来控制登录人的数据权限,这里可以分为数据范围权限控制、数据操作权限控制和业务对象字段权限控制。

1. 数据范围权限控制

B 端客户内部的业务对象通常来说会按管理层级划分管辖范围,比如我曾经做过的物业平台,他们会按小区(也叫物业项目)、片区、分公司、大区和总部五个层级来划分管辖范围。

这里的小区其实就是一个基础的授权业务对象,然后将多个小区集合起来会形成片区。同时,经营小区的会是具有法人资质的主体,即分公司。多个分公司又会按地理区域划分到不同的大区,最后到总部管辖全部的业务数据。这个时候,我们就需要支持从基础的业务对象到更大范围的数据授权。

比如下面几个场景:

A 小区的物业项目经理授权 A 小区,他只能看到 A 小区的各类业务数据(报修、投诉、收费等等);B 片区的物业片区经理授权 B 片区,他能够看到 B 片区下的全部小区的各类业务数据,包括以后在 B 片区再新增的小区。C 公司的物业分公司总经理授权 C公司,他能够看到C 公司下的全部小区的各类业务数据,包括以后在C 公司再新增的小区。D 大区的物业大区经理授权D大区,他能够看到D 大区下的全部小区的各类业务数据,包括以后在 D大区下各个分公司新增的小区。总部的集团领导可以看到全部的小区各类业务数据。

通常来说,不同层级的授权方式是互斥的,也就是一个人不能说既按小区级别授权又按片区级别授权。同时,同一个层级的,是支持授权多个的。

对于 B 端客户的外部业务对象,因为不存在管辖层级,往往是通过分配的方式进行。即将一个或多个业务对象分配给某类角色或某个员工,登录人只能看到分配给自己的业务对象。典型的就是 CRM 系统的客户公海资源,员工只能看到分配给自己的客户。

2. 业务对象操作权限控制

业务对象操作权限是指对业务对象以及业务对象属性能够进行的操作。典型的业务对象的操作就是新增、删除、编辑、查看、导出、改变业务对象状态(如市场线索转销售线索)等等。比方说,我们控制 A 员工只能查看客户信息,不能新增、编辑、删除和导出客户信息。

3. 业务对象字段权限控制

业务对象字段的颗粒度就更小一点,是针对某个类型的业务对象,约束登录人能查看、编辑或导出业务对象的哪些属性。业务对象属性在技术上对应的是数据表的字段。

举个例子,CRM 系统的“客户”这个业务对象,会有名称、地址、电话、级别、所属行业等等信息。我们就可以控制A 员工(或角色)只能查看客户名称、级别和所属行业,不允许查看地址和电话。

三、数据权限产品设计

接下来我们看数据权限的产品怎么设计。

1. 数据范围权限设计

数据范围权限控制首先我们要明确系统的基础业务对象,比如物业平台的小区、房地产管理的楼盘、WMS的仓库、线下商超的门店等等,这些都可以作为基础的授权业务对象。然后,基于基础业务对象构建管理层级,划分到不同层级的不同集合里。之后,就可以授权某个角色或人员拥有的管辖范围,下面是一个示例。

给业务对象分配成员的比较简单,基于业务对象添加成员或者移除成员即可,在文档协作类产品非常常见。

2. 业务对象操作权限设计

控制业务对象的操作权限,我们首先要基于某类业务对象定义好这类业务对象有哪些操作,然后再勾选某个角色或人员有能够进行哪些操作。

业务对象的操作涉及如下信息:

操作名称:比如操作按钮的名称;操作标识:系统全局唯一的标识,前端可以通过这个标识来决定是否展示相应的操作入口;显示方式:即操作入口是隐藏还是禁用。隐藏是比较常见的操作,但是禁用的话可以让登录人知道他没有这个权限,如果需要可以找他们内部的管理员开通。对应数据接口:即对应操作的数据接口,这个是防止有人知道了数据接口,绕过操作按钮直接访问接口来获得数据,通过同时禁止数据接口的访问权的安全等级会更高一些。

下面是纷享销客的业务对象操作权限控制的界面,大家可以参考一下。

3. 字段操作权限设计

字段操作权限和业务对象操作权限类似,我们也需要先定义好业务对象的字段属性,主要的信息如下:

名称:字段的显示名称,如姓名、手机号等都是字段的名称;数据表字段名:对应业务对象数据表的字段名,技术上需要通过这个字段名来控制字段的权限;显示方式:即未授权该字段时该如何显示,目前有两种做法,一是直接隐藏;二是脱敏。直接隐藏比较简单,但是可能会引起页面布局不美观;脱敏则是隐藏掉部分的内容,比如手机号中间4位使用“*”号替代,这种方式的好处是页面布局不需要改动,但需要开发做一定的处理。是否必选:有些字段是不能来控制权限的,比如客户名称,如果客户名称都不显示了,那么这条数据都没有意义了,因此需要定义业务对象的主要字段是必须勾选的,不可以禁止相应的字段权限。

字段的操作一般只有读取、编辑和导出,因此字段操作上不需要单独管理。下面同样给出了纷享销客的字段授权的界面,供大家参考。

四、总结

总的来说,数据权限的授权分为三个方面,业务对象范围授权、业务对象操作授权和业务对象字段授权。

为了实现这三个方式的授权,我们在产品设计上需要支持业务对象范围的划分、业务对象操作的定义和业务对象字段的定义,如下图所示。之后,我们就可以配置某个角色或人员的数据权限了。

数据权限是SaaS产品必不可少的功能。企业的数据很多涉及敏感信息,包括商业机密信息等等,因此必须在产品规划之初就明确权限管控的颗粒度,以及按何种方式管理数据权限。希望看了本篇之后,能够给大家一些参考和启发。

专栏作家

产品海豚湾,公众号:产品海豚湾(ID:pm-dophin-bay),人人都是产品经理专栏作家。技术出身的产品经理,从事过 C 端产品和 B 端产品设计,擅长 SaaS 产品设计、产品架构设计和需求分析。负责的B 端产品完成了完整的从0到1,从1到 N 的过程,成功签约行业百强客户。

本文原创发布于人人都是产品经理,未经许可,禁止转载。

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

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

标签:

最新
  • 这一篇让你彻底搞懂 SaaS 产品的数据权限设计!

    数据权限是SaaS产品必不可少的功能,明确权限管控的颗粒度,保障数据安

  • 月度销量榜|比亚迪继续霸榜,日系车实力仍不容小觑

    随着众多新款车型面市和各地车展及促销活动的推动,5月份汽车消费市场

  • 环球实时:豆浆渣能做花肥吗 豆浆渣可以给花做肥料吗

    1、豆浆渣可以作为肥料的,但是不能直接使用,一定要经过腐熟发酵才能

  • 高质量发展调研行|守住“老字号” 开拓“新赛道”——佛山推动制造业量、质双升

    提起广东佛山,武术和醒狮是闪亮的名片,这座城市的制造业“功夫”同样

  • 宝塔区气象台继续发布大风蓝色预警【Ⅳ级/一般】【2023-06-16】|天天热讯

    宝塔区气象台2023年06月16日16时10分继续发布大风蓝色预警信号:预计未

  • 支付宝福气店几点更新?支付宝沾福气卡可以送给朋友吗?-今日要闻

    支付宝福气店几点更新?支付宝刷新时间每天10点,18点上新,大家想要兑

  • 网贷帮忙停息挂账的骗局有哪些?信用卡停息挂账怎么申请?|天天观热点

    网贷帮忙停息挂账的骗局有哪些?停息挂账需要申请,且有一定难度,很

  • 兔子喜欢吃什么草?兔子可以吃什么水果? 世界信息

    胡萝卜中含有大量维生素A、胡萝卜素及微量元素,可以有效补充兔子体

  • 比格犬能吃米饭吗?比格犬性格怎么样?

    比格犬比较好养,因为它性格好,和主人相处起来显得很乖巧,而且对

  • 全球微动态丨苹果电脑怎么切换系统?苹果电脑键盘失灵按什么键恢复?

    苹果电脑怎么切换系统?方法一:直接在bootcamp中切换1、直接在mac系

  • 天蝎座是很理性的人 从来不在乎面子只考虑自己?

    金牛座:比较吝啬金牛座是比较节约的人,他们很在乎金钱,所以平时的日子都过得抠抠索索的。在生活中的

  • imf是什么?国际货币基金组织的主要职能?

    IMF即国际货币基金组织(International Monetary Fund)的缩写。根据1944年7月44个国家在美国新罕布什尔

  • 债转股流程是什么?债转股目标企业需要符合什么条件?

    债转股流程是什么?债转股可分为如下步骤:1、负债企业股东(大)会对商业性债转股作出决议,决议的内容包

  • 地震云是怎样产生的?地震云有哪些种类?

    地震云是怎样产生的?日本是地震云记载最多的国家之一,所以日本学者率先对它进行了解释。日本九州大学真

  • 家庭烤肉怎么腌制 烤肉腌制需要哪些调料?

    想必现在有很多小伙伴对于家庭烤肉怎么腌制是什么方面的知识都比较想要了解,那么今天小好小编就为大家

  • 漫画吸血鬼骑士的结局是什么?吸血鬼骑士女主喜欢谁?

    《吸血鬼骑士》结局:优姬和零在一起了。千年以后,零也死了,优姬用生命为代价把枢变成了人类也死了,

  • 旅游
    • 黄焖鸡米饭出自哪个省?正宗黄焖鸡米饭的做法是什么?

    • 月薪过万的“妈妈岗”行得通吗?妈妈岗可以做什么工作?

    • 银行降息是什么意思?为什么央行每月不降息?

    • 主动注销银行卡必须去银行吗?银行卡销户后流水记录会保存多长时间?