知识卡片
权限与角色的关系
内容
权限(Authority)是对某种具体操作的细粒度授权,如”读权限”“删除权限”;角色(Role)则是权限的容器——把常一起出现的一组权限打包成一个粗粒度的标签,比如”超级管理员”角色内含全部权限、”普通管理员”角色内含除删除外的权限。这种二级设计把”谁能做什么”拆成了两层:授权时只需给用户分配角色,角色内部的权限组合可以整体调整而不用逐个用户改动。发散:这是一种典型的”引入一层间接性来降低维护成本”的设计——如果没有角色这一层,业务变化时就要逐个用户地增删权限,角色的存在让”批量调整一类人的能力”变成了修改一处配置。
参考来源
《Spring Boot应用开发实战》第5章《应用程序安全性》