设计一款后台产品时,用户角色权限控制是最常遇到的问题

设计一款后台产品时,用户角色权限控制是最常遇到的问题

在设计后端产品时游戏动态,用户角色权限控制是最常遇到的问题。 本文使用最简单最基本的菜单权限设计和实现,并通过具体案例来说明权限设计应该如何实现。

原需求:A公司有4名员工,分别是总裁张三、经理李四、员工王武、小刘。 我们正在为A公司设计一个后台系统,要求每个员工看到的菜单选项不一致。

1.权限的含义

顾名思义,“权”代表“权”,划分系统的功能和权力。 不同的用户有不同的权限划分; “limit”代表“限制”,根据权力划分来限制职能范围。 本文所描述的权限比较简单,赋予不同角色查看不同菜单的权限。

权限控制可以更好地解决系统安全问题,防止公司机密信息泄露。 同时,不同部门使用该系统时互不干扰,因此被企业广泛使用。

2、梳理用户和角色的概念(1)用户

用户是指系统的登录用户,可以理解为一系列的人。 例如,登录的用户是张三、李四、王五、小刘。

(2) 角色

角色是指用户在系统中所扮演的角色,是系统赋予用户的头衔。 例如,A公司的后台系统角色可以定义为:总裁、经理、员工。

3.选择合适的权限模型 (1)传统权限模型

早期,传统的权限模型是为用户分配菜单权限。 比如张三看到了A、B、C菜单,李四看到了B、C菜单,王五和小六看到了A、B、C菜单。 传统的权限模型简单粗暴,可以直接给用户分配菜单。 然而,随着公司员工数量的增加,在一个几百人的公司里,每个员工都要分配一次,这显然效率太低了。

而且,在设计交互时像素游戏素材,定义数百个用户拥有的菜单权限需要编写数百行表格。

(2)RBAC权限模型

RBAC,即基于角色的访问控制,是一种优秀的权限控制模型。 它主要是建立和管理角色和权限,然后为用户分配不同的角色,以达到权限控制的目的。

使用这种模型配置权限的直接好处是角色数量小于用户数量。 首先给角色分配权限,完成权限的分配; 然后为用户分配相应的角色,就可以直接获取角色所拥有的权限。

交互设计的好处是你只需要定义有限的角色拥有哪些菜单权限。

(3) 模型的其他考虑因素

在选择第二种RBAC权限模型时用户角色权限表设计,需要注意的是,用户-角色-权限之间并不存在一一对应的关系。 例如,一个用户可以有多个角色,一个角色也可以有多个权限。 所以应该是多对多的关系,需求和开发都要说清楚。

4.菜单实现效果

如图所示,权限控制后,不同用户登录时显示的菜单不一致。 菜单根据角色显示。

(1) 主席角色,菜单A、B、C

(2) 经理角色,菜单B、C

(2) 员工角色,菜单 C

@夜雨原创作品用户角色权限表设计,未经许可不得转载。

文章来源:https://www.jianshu.com/p/d1df0f7280c6