Spring boot security关于角色继承的问题
编写RoleHierarchy配置
@Bean
RoleHierarchy roleHierarchy(){
RoleHierarchyImpl roleHierarchy = new RoleHierarchyImpl();
//在新版本中ROLE_dba > ROLE_admin ROLE_admin > ROLE_user中间的空格已经不适用了
//换成如下的\n即可
String hierarchy = "ROLE_dba > ROLE_admin \n ROLE_admin > ROLE_user";
roleHierarchy.setHierarchy(hierarchy);
return roleHierarchy;
}
在spring security中角色权限的继承只需要提供一个RoleHierarchy即可。我在里面定义了三种权限,ROLE_dba是权限最高者,通过角色权限的继承ROLE_dba获得了所有权限
需要注意的是权限如果自己动态配置了,则继承就不会生效,根据数据库操作添加修改权限即可