用户权限系统设计
权限管理流程
权限的本质就是对某项资源的操作:read file, write file
对于某个用户拥有权限列表,对于某个接口需要权限列表,然后是检查交集
重点就是得到两个集合
RBAC
角色
RBAC 权限系统的基本思路是:用户--角色--权限
一个用户拥有多个角色,一个角色可以分配给多个用户
一个角色拥有多个权限,一个权限可以分配给多个角色。
角色=权限集合
用户组
用户--用户组--角色
一个用户可以属于多个用户组,每个组包含多个用户
一个用户组拥有多个角色,一个角色可以授权给多个用户组
用户组主要是解决多个多个用户授权的问题,通过用户组可以批量授权。如果不想增加系统复杂度,可以使用默认角色。
参考文章
用户权限系统设计
权限管理流程
权限的本质就是对某项资源的操作:read file, write file
对于某个用户拥有权限列表,对于某个接口需要权限列表,然后是检查交集
RBAC
角色
RBAC 权限系统的基本思路是:用户--角色--权限
一个用户拥有多个角色,一个角色可以分配给多个用户
一个角色拥有多个权限,一个权限可以分配给多个角色。
角色=权限集合
用户组
用户--用户组--角色
一个用户可以属于多个用户组,每个组包含多个用户
一个用户组拥有多个角色,一个角色可以授权给多个用户组
参考文章