有没有办法告诉Spring在我自己制作的自定义用户bean中找到用户的角色?
http://static.springsource.org/sprin...ns-config.html
因此,如果我有一个名为UserDetails的bean,那么:
使用身份验证管理器,是否可以指向UserDetails bean来确定用户的角色?如果是这样,我将在下面的代码中定义UserDetails bean?
什么是“myUserDetailsService”?这是对auth-manager下面的bean的引用吗?
<authentication-manager>
<authentication-provider user-service-ref='myUserDetailsService'/>
</authentication-manager>
<beans:bean id="myUserDetailsService"
class="org.springframework.security.core.userdetails.jdbc.JdbcDaoImpl">
<beans:property name="dataSource" ref="dataSource"/>
</beans:bean>
答案 0 :(得分:1)
myUserDetailsService
是标准spring安全bean实例的(没有很好选择)id:org.springframework.security.core.userdetails.jdbc.JdbcDaoImpl
。
它是可用于身份验证和授权的默认Bean之一。 它通过数据库中的简单sql语句加载用户详细信息,包括角色。
如果您想以自己的方式构建自定义UserDetails
,那么您只需要一个实现UserDetailsService
接口的bean。这个bean必须由<authentication-provider user-service-ref
引用(而不是“myUserDetailsService”)。
@See Spring Security Reference, chapter 5.2.2 The UserDetailsService