Spring Security中角色和GrantedAuthority之间的区别
Spring Security中有一些概念和实现,例如GrantedAuthority用于获得授权来授权/控制访问权限的接口。 我希望对允许的操作(例如createSubUsers或deleteAccounts)进行操作,这些操作将允许管理员(具有role ROLE_ADMIN)使用。 我在网上看到的教程/演示让我感到困惑。我尝试将我阅读的内容联系起来,但我认为我们可以将两者互换。 我看到正在hasRole消耗GrantedAuthority字符串吗?我肯定在理解上做错了。Spring Security中的这些概念是什么? 如何将用户的角色与角色的权限分开存储? 我还查看org.springframework.security.core.userdetails.UserDetails了身份验证提供程序引用的DAO中使用的接口,该接口消耗了User(请注意最后的GrantedAuthority): public User(String username, String password, boolean enabled, boolean accountNonExpired, boolean credentialsNonExpired, boolean accountNonLocked, Collection<? extends GrantedAuthority> authorities) 还是有其他方法可以区分其他两个?还是不受支持,我们必须自己做?