用户管理系统——后台产品必备模块
用户管理,是任何一款后台产品必备的模块。简单的用户管理功能,只需要涉及基础的账号管理,让开发人员在代码里给相应的账号打标记,从而实现权限的区分;但如果需要一套完善的内部用户管理流程,除了要满足管理人员账号的需求之外,还必须思考相应的角色和权限管理的业务流程。
实际上,不同后台产品的用户管理,其架构、流程和逻辑,有很大的共通性:都面向内部用户,都有标准的注册规范,都由后台管理员统一管理。因此,厘清后台用户管理的架构,梳理一份可通用的业务流程,能够帮助产品经理在设计不同产品时,快速引用这一功能模块。
接下来,我想分享我在做后台用户管理系统时的一些探索,结合具体的原型(具体内容因涉及公司信息,已隐藏),供大家讨论。
一、功能模块
后台产品的用户管理,包含了三个大的功能模块:账号、角色和权限管理。这三个模块,紧密关联。每个账号,都被赋予了特定的角色;而每个角色的背后,都有其对应的权限信息。如下图:
二、账号管理
账号管理,是管理员最常用到的功能。这一模块,需要设置相应字段,对内部人员的信息进行管理,首先应该具备“新增”、“删除”、“编辑”这三项基础的操作功能。另一方面,考虑到部分企业存在内部奖惩机制, 对某项指标不合格或者行为违规的员工, 做出暂停使用账号的处理结果,因此,在上述三项基础操作功能之外,可以再增加“禁用”和“启用”的功能。
1、账号列表
账号列表应该优先显示重要的字段,比如ID、用户名、真实姓名、部门、角色、账号状态、注册时间等。当然,除了这些,后端还需要记录下用户的其他字段,比如最近登录时间、登录次数等等操作记录。如下图:
2、添加账号
当管理员点击“新增”按钮时,当前页面可以跳转到填写账号信息的页面, 也可以通过弹窗的方式出现。新增账号的字段应当尽量详细,以便将来对用户行为做统计分析。同时在这个阶段,我们可以通过判断用户的身份,来给他赋予相应的角色。在这一步,不需要配置权限,因为角色本身就是带有权限的。如下图:
三、角色管理
角色管理部分,是用来管理内部用户的角色信息。角色,是对具有共同特征的某一类人群的身份归纳,在这个模块里,我们需要设置一些字段来描述角色信息,降低学习成本,让管理员能够轻松识别角色的特质,从而为不同的用户赋予对应的角色身份。
1、角色列表
角色列表类似账号列表,也是将一些重要字段展示出来,让管理员能够很快的了解角色的相应信息,比如角色ID、角色名称、基本权限、操作权限等。当基本权限和操作权限非常繁杂的时候,可以只显示重要的几类,其他的详情,可以点击查看。
在角色列表,只需保留“新增”和“删除”功能,“搜索”功能也可以不需要,因为角色的种类通常比较少,否则会给管理员增加负担。如下图:
2、新增角色
“新增角色”和“编辑角色”,都是给角色赋予相应的权限。过去我在给角色配置权限的时候,使用过下拉菜单的方式来选择。但如果碰到权限非常繁杂的情况,下拉菜单就不太适用了。这个时候,可以将权限都罗列出来,可以分组排序,也可以默认全部选中,然后让用户根据需求去勾选掉不需要的权限。如下图:
四、权限管理
权限管理这部分,是逻辑性最强的一块,需要产品经理提前准备好一份权限清单,将权限的名称、描述、性质(基本/操作)等信息梳理清楚。
1、权限列表
在做权限梳理之前,产品经理一定要与开发人员沟通好,确定哪些权限是同类型的,可以归为一组,而哪些功能又必须是分开设置的。拿我之前做的这个项目为例,这个产品没有涉及工作流环节,但Boss想让不同角色的用户,看到不一样的界面,所以除了通常的操作权限划定之外,还有一些基础的菜单查看权限,也要细分。当然了,因为权限细分起来非常繁杂,所以权限列表还需要有分页的功能,也可以加上搜索功能。如下图:
2、新增权限
“新增权限”页面,是为开发人员设置的,开发人员可以在这里将代码内容录入。具体如下图:
以上介绍的用户管理三大模块,是专门针对后台系统设计的,面向的用户也是企业内部人员,从产品需求上来说,追求的是规范、标准和流程化。
而如果是面向企业外部的用户管理系统,则需要牵涉到注册、登录验证等多个数据接口的调用,这类管理系统,就要重新规划产品逻辑和业务流程了。