引言
本篇主要介绍笔者 授权模块【flea-auth】下的角色子模块。
1. 总览
| 表名 | 中文描述 |
|:------------------------------------- |:------------------------------ |
| flea_role | 角色 |
| flea_role_rel | 角色关联(角色, 权限, 权限组) |
| flea_role_group | 角色组(不参与授权) |
| flea_role_group_rel | 角色组关联(角色) |
2. 详述
2.1 角色
授权模块提供的表,可理解为具备一定权限的一类用户。
字段名 | 中文描述 |
---|---|
role_id | 角色编号 |
role_name | 角色名称 |
role_desc | 角色描述 |
group_id | 角色组编号 |
role_state | 角色状态(0: 删除 1: 正常 ) |
create_date | 创建日期 |
done_date | 修改日期 |
remarks | 菜单描述 |
2.2 角色关联
授权模块提供的表,目前可关联 角色、权限、权限组;
关联类型 【relat_type】可以自行定义。
字段名 | 中文描述 |
---|---|
role_rel_id | 角色关联编号 |
role_id | 角色编号 |
rel_id | 关联编号 |
rel_type | 关联类型 |
rel_state | 关联状态 (0: 删除 1: 正常 ) |
create_date | 创建日期 |
done_date | 修改日期 |
remarks | 菜单描述 |
rel_ext_a | 关联扩展字段A |
rel_ext_b | 关联扩展字段B |
rel_ext_c | 关联扩展字段C |
rel_ext_x | 关联扩展字段X |
rel_ext_y | 关联扩展字段Y |
rel_ext_z | 关联扩展字段Z |
角色关联角色,引入了如下概念:
- 角色继承,关联角色(子角色)可继承被关联角色(父角色)的所有权限;
- 角色互斥,关联角色和被关联角色存在权限上的相互制约,在进行用户授权时,两者不能同时授予同一用户;
- 角色基数约束,系统中可以拥有这个角色的用户数目限制;
角色关联权限,记录了实际给角色绑定的权限信息。
角色关联权限组,记录了实际给角色绑定的权限组中的权限信息。
2.3 角色组
授权模块提供的表,可理解为具备一定权限的一类用户的集合;
它本身不参与授权,其下所拥有的权限由其角色成员决定。
字段名 | 中文描述 |
---|---|
role_group_id | 角色组编号 |
role_group_name | 角色组名称 |
role_group_desc | 角色组描述 |
role_group_state | 角色组状态(0: 删除 1: 正常 ) |
create_date | 创建日期 |
done_date | 修改日期 |
remarks | 菜单描述 |
2.4 角色组关联
授权模块提供的表,目前可关联 角色。
字段名 | 中文描述 |
---|---|
role_group_rel_id | 角色组关联编号 |
role_group_id | 角色组编号 |
rel_id | 关联编号 |
rel_type | 关联类型 |
rel_state | 关联状态 (0: 删除 1: 正常 ) |
create_date | 创建日期 |
done_date | 修改日期 |
remarks | 菜单描述 |
rel_ext_a | 关联扩展字段A |
rel_ext_b | 关联扩展字段B |
rel_ext_c | 关联扩展字段C |
rel_ext_x | 关联扩展字段X |
rel_ext_y | 关联扩展字段Y |
rel_ext_z | 关联扩展字段Z |
角色组关联角色,引入了如下概念:
- 组内互斥,角色组中的角色存在权限上的相互制约,在进行用户授权时,只能选择组内的一个角色授予用户或用户组;