首页

面向中小企业SaaS的权限管理系统

博博

面向中小企业SaaS的权限管理系统

人人都是产品经理 2018-08-19 15:02:17

如果您想订阅本博客内容,每天自动发到您的邮箱中, 请点这里

本文基于面向某个垂直行业的SaaS系统的设计经验,抽象出一套适合中小企业的权限管理体系,目标是最大限度保留系统弹性的同时,把系统复杂度和开发成本尽可能降低。enjoy~

面向中小企业SaaS的权限管理系统

面向企业级的SaaS(软件及服务)系统,由于企业用户的规模和内部管理模式千差万别,设计一套具备足够弹性、符合绝大部分目标企业用户需求的权限管理系统,是一个很大的挑战。

我们可以看到,市面上面向多个行业的综合性SaaS系统,例如销售易、纷享销客等,由于它们的目标客户跨越了多个行业、多种规模,这些企业具备各种各样的内部管理风格和模式,在权限系统的管理上,往往做得非常复杂,不仅具备部门、角色、职位、数据等各个维度的权限管理,各个功能模块还有自己独立的权限管理,虽然具备最大的弹性,却给企业的系统管理带来较大的负担。

提炼的三个核心原则:

  • 企业-管理员-普通账号三级权限
  • 功能和数据权限分离
  • 部门和角色分离

围绕上述三个基本原则,我们力图在满足中小企业需求的前提下保持足够的弹性,并严格控制复杂度和开发成本。详细描述如下。

1. 权限从上到下分为三个层级:企业账号(老板账号)、管理员账号、普通账号

对于中小企业来说,公司的实际控制人,往往是公司的创始人或自然人大股东,因此企业账号的使用者以及对应绑定的手机号码,都是公司的实际控制人,他应该掌握最核心、权限最大的企业账号,所以也可以称为“老板账号”。

但是在实际场景中,公司的实际控制人并不会直接管理公司的业务支撑系统,因此,需要在系统首次部署时,创建好企业账号,并由企业账号授权给某一个或多个系统管理员,由系统管理员去完成日常的角色创建、员工导入等工作。系统管理员,对应的一般就是HR或行政部门的管理人员。当然,企业账号的权限高于管理员账号,如果是小微型企业,也可以由企业账号直接替代管理员账号的功能。

除了企业账号和管理员账号之外,其他各级员工所持有的账号,都属于普通账号。普通账号的部门、角色、数据等权限的设置,一律由系统管理员配置。

三个权限层级示意图如下:

面向中小企业SaaS的权限管理系统

在实际系统中的核心业务步骤如下:

(1)企业购买系统时,创建一个企业账号,这个企业账号绑定的手机号码为公司实际控制人的手机号码。该手机号码必要时可以解绑(例如公司实际控制人变更),由于该功能触发频率很低,因此不需要在前端功能中实现,只需要在购买协议中写明,“购买企业可以通过书面方式提出企业账号手机号码绑定变更需求”即可。

(2)在部署和培训阶段,可指导企业账号持有人创建一个或多个管理员账号,该账号一般授权给行政总监或人力资源总监,后续配置即由管理员账号进行。

(3)管理员账号持有人需要接受系统培训,掌握部门创建、角色创建、功能和数据权限分配等基本操作。管理员所有操作都必须记录在案,供企业账号持有人监督,且管理员操作触发异常行为规则(如大量分配高等级权限等)时,系统会通过短信方式通知到企业账号持有人,确保企业账号对管理员的全方位掌控。

(4)企业账号可随时将管理员账号禁用或设定为离职,但管理员账号不可对企业账号进行任何配置或操作。

(5)企业账号默认拥有所有权限。

2. 功能权限和数据权限分离

功能权限,定义为可见、可以操作的功能范围。例如某一部分菜单,或者某个页面里的各种操作。

数据权限,定义为若干个数据类型里的具体可见范围,例如“客户”就是一个数据类型,它的权限举例如“无权限”、“我的客户”、“我所在部门的客户”、“我所在部门及下级部门的客户”。

通过功能权限和数据权限的分离,我们可以做到以下场景:需要开拓和维护客户的角色集合,都可以拥有“客户”这个菜单的权限,但不同的角色进入“客户”菜单的列表时,看到的客户范围各不相同,极端情况是看不到任何客户。且不同角色在同一个客户页面上,能进行的操作也不同,例如有的角色可以新建客户,有的却不行,这就要由功能权限来控制。

可见,通过功能权限和数据权限的分离和配合,我们在具体的权限分配上有了非常大的弹性,且在技术层面的后台系统的设计上,也非常合理、清晰。

而在具体设计上,需要保证以下4点:

  1. 正确区分功能和数据,入口性和操作性的都应该归类为功能
  2. 正确对数据进行分类,避免存在分类后的某些数据存在交集
  3. 数据分类到多细的颗粒度,需要由行业特性决定
  4. 数据权限区分为查看、编辑和删除

示例图如下,由于涉及具体产品,对某些文字进行了打码:

面向中小企业SaaS的权限管理系统面向中小企业SaaS的权限管理系统

3、部门和角色分离

部门的定义,自然就是公司行政组织架构下的部门。

在本设计方案中,角色等同于职位,而在许多大型的SaaS系统中,为了更大的灵活性,往往会把角色和职位分开,但根据我们的判断,对于中小企业,设定角色一个就够了,职位当然还存在,但仅仅是一个不涉及权限管理的文本title了。

以一个销售公司来说,角色可以包括:“渠道专员”、“渠道总监”、“销售专员”、“销售经理”、“总经理”等等。

所谓的部门和角色分开,就是不同的部门可以有相同的角色,例如如果有渠道一部、渠道二部,则这两个渠道部的员工的角色都可以设定为“渠道专员”,这两个部门的管理者都可以设定为“渠道经理”。再配合功能和数据权限,则进一步配置“渠道专员”具有“渠道”菜单的功能权限,其能够查看的渠道数据权限范围则仅为“我的”,而“渠道经理”同样具有“渠道”菜单的功能权限,但其能够查看的渠道数据权限的范围则扩大为“部门”。

具体设计上:

  1. 最大部门即为公司
  2. 管理员账号和普通账号均可禁用或设置为离职
  3. 不同部门可以配置相同角色
  4. 相同角色的功能权限和数据权限是一样的
面向中小企业SaaS的权限管理系统

4. 权限系统和其他功能设计的关系

总结完权限系统三个核心的基本原则后,我们还需要指出一点:权限系统的设计方案,在整个系统中绝不是孤立的,它能否实现设计目标,并和整个系统完美配合,还需要做到以下几点:

首先,菜单和功能的设计,必须是最小颗粒度,否则就和数据权限产生冲突。例如:我们只需要一个“客户”菜单即可,不同角色在“客户”菜单里能干什么事情,由功能权限和数据权限配合进行控制,但切不可出现“我的客户”+“全部客户”两个菜单,这明显和数据权限有根本冲突,且也是一种不优美、不合理、扩展性差的设计。

其次,数据的分类,必须符合业务需求,且划分合理。有些数据都是公开的可以不归入数据权限进行管理,所有角色默认都有即可;有些数据需要进一步细分,例如同样以“客户”举例,在某些公司的业务规则中,就需要将客户的基本信息和联系信息分开控制,管理层可以看客户基本信息,但只有客户负责人才可以看联系信息,这种情况就需要将客户的数据权限分为“客户基本信息”和“客户联系信息”两个。

最后,权限变更的记录和所有账号的行为轨迹记录一样重要。权限系统本质是进行权力的限制,没有监管的权力必定是会失控的。在出现问题的时候,必须同时配合权限变更的记录、角色变更的记录和账号的行为轨迹记录进行追责和存证,确保维护企业的合法权益。

总结

在合理设计的前提下,权限系统也并非越复杂越好。只有符合目标客户需求并具备最大弹性的权限系统,才是最好的。

蓝蓝设计www.lanlanwork.com )是一家专注而深入的界面设计公司,为期望卓越的国内外企业提供卓越的UI界面设计、BS界面设计 、 cs界面设计 、 ipad界面设计 、 包装设计 、 图标定制 、 用户体验 、交互设计、 网站建设 平面设计服务


作为PM,你居然不知道Axure这10种非交互功能?

蓝蓝

提到Axure,这可是绝大多数PM童鞋靠着吃饭的家伙事儿。Axure被很多人定义为一个以交互见长的原型设计工具。很多初入坑甚至入坑甚久的PM为画出炫酷的原型挖空了心思。我想这对Axure的初衷一定是有误解。

如何制作交互组件库

用心设计

什么是组件库?

就是类似axure左侧栏的这一坨标准控件,方便直接拖拽使用。

如何制作交互组件库

单手操作不方便?来看这两个新颖的交互方式是怎么做的!

周周

编者按:当手机屏幕越来越大时,该如何保持单手操作的便携性?今天这篇文章提到了两个新的交互方式,值得一看,说不定有启发哟。

大屏手机有很多优势,大屏手机的趋势未来还会持续下去。但大屏也不是什么都好,更大的显示屏幕并没有承载更多的内容。实际尺寸和功能多少对于高、低分辨率显示是相同的。Steven Hoober 2013年的手机设备研究报告发现:49%的用户通过单手持机操作,36%的用户一手拿着手机一手操作,另有15%的用户双手持机操作。

2017年,并未有太多改变,单手拇指触控操作正在成为常态。首先,这样的操作比较方便;其次,同时使用双手并不总是太方便。但这里就有一个障碍:单手持握使用限制了你拇指能够触控的区域范围。

只要关注这6个点,交互设计师也能做好竞品分析!

用心设计

竞品分析是对产品、交互从业人员最基本的技能要求之一,很多刚入行的产品汪、交互喵首先要做的都是竞品分析,一来可以考考你的底子,二来可以锻炼你的逻辑思维。虽然它是基本技能,但是它的作用却非常大。

如何快速有效的发散思维

雪涛

想方案想的头大,一直在原地打转跳不出来?想了半天提出的方案,被老板说怎么没想到别的某某方案?有时虽然想出不少方案,但是实质在渐行渐远?

不是人人都有特别灵活的脑子 ,就算是灵活的脑子也不会无时无刻都灵感无限,那在我们面对思维瓶颈的时候,有没有方法可以帮助我们快速且有效的去拓展思维呢?

做交互方案时,请注意检查这4个点

周周

编者按:本文总结的4个点都是新人做交互方案时容易遗漏的,看完可以查漏补缺,完善场景,建议阅读。

作为一名交互设计师,到底什么程度才能算得上是“专业”?成为一名专业的设计师是否有方法与捷径呢?答案是肯定的,但是今天我分享的内容还不敢称之为体系,只能说是几个小小的经验吧,希望能给正在奔向专业路上的你有所启发。

如果你是设计新人,可能你现在还没有完全形成自己的思维模式,那么以下这几点你就可以开始注意了,至少把这个几点加入到你的考虑范围内是不会有错的!

为了少改稿,我列出了5种原型的使用阶段和优缺点分析

周周

@Akane_Lee :很多项目在开发过程中,会制作原型测试与验证构想。但项目开发会经过许多阶段,也有很多种制原型的方式。该如何配合项目开发进度,制作适合的 原型呢?这篇文章列出了每一个设计阶段对应的原型设计,能解决不少设计师的困惑。

原型用途

开发者对于产品一定有各式各样的想法,并尽力让用户觉得产品「好用」。但开发者该如何确定目前产品设计走向能让用户觉得好用?可透过「使用者测试」这个方法验证。我们可以透过原型测试用户想透过产品完成某项任务时,需经过哪些页面的流程;观察使用者在操作过程中是否有感到任何不顺或迟疑的地方等等。

有些文献将原型分成低保真、高保真等等。我将原型粗分成:

  1. 纸本 原型
  2. Wireframe
  3. Mockup
  4. Web
  5. Code

每一种 原型 用途、制作方法、成本、使用时机都不相同,各有利弊。

iOS 设计的神细节有哪些?

用心设计

iOS系统的细节非常之多,总体可分为视觉和交互两个方面。

一、视觉

Safari 中 Reading List 的图标从 iOS 7 开始变成了乔老爷子经典的圆框眼镜。

04003300u

UI动画可不是卡通片

用心设计

简介:我之前撰文讲过多余的动画,引发了一些共鸣。得到了非常积极的反馈,我很高兴了解到,动画过多的界面也会令其他人手足无措。老实说,我并不反对为界面进行动效设计。我主要是在质疑那些妨碍用户的动画。克制,是一名 ...

之前撰文讲过多余的动画,引发了一些共鸣。得到了非常积极的反馈,我很高兴了解到,动画过多的界面也会令其他人手足无措。

日历

链接

blogger

蓝蓝 http://www.lanlanwork.com

存档