我正在尝试设置具有权限的基于角色的安全性。我正在尝试与Spring-Security一起执行此操作。
我不想设置ACL,因为这似乎对我的要求来说太过严格了。
我只想拥有此article中描述的简单权限和角色。
不幸的是,本文没有描述如何实现给定的解决方案。
有人已经尝试过了,可以指出正确的方向吗?也许还有另一个博客条目描述了实现方式?
非常感谢你。
最佳答案
要实现这一点,您似乎必须:
org.springframework.security.authentication.ProviderManager
并将其配置(设置其提供程序)为自定义org.springframework.security.authentication.AuthenticationProvider
。最后一个应在其authenticate方法上返回Authentication,应使用
org.springframework.security.core.GrantedAuthority
设置,在这种情况下,应设置给定用户的所有权限。 该文章中的技巧是为用户分配角色,但是要在
Authentication.authorities
对象中设置这些角色的权限。为此,我建议您阅读API,并查看是否可以扩展一些基本的ProviderManager和AuthenticationProvider而不是全部实现。我已经通过
org.springframework.security.ldap.authentication.LdapAuthenticationProvider
设置了自定义LdapAuthoritiesPopulator来做到这一点,它将为用户检索正确的角色。希望这次我能得到您想要的。
祝好运。
关于java - 具有角色和权限的Spring Security,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6357579/