我可以使用hibernate.cfg.xml作为jdbc-user-service的数据源吗?

时间:2014-08-03 15:20:36

标签: spring spring-security

您似乎可以使用身份验证提供程序和jdbc-user-service在xml中创建身份验证管理器,该服务器将bean列为其数据源。但是,该bean中的信息与hibernate.cfg.xml中的信息差不多。

所以我的问题是,我是否需要重复此信息,还是可以创建一个数据源-ref到hibernate.cfg.xml?

<authentication-manager alias="authenticationManager">
    <authentication-provider>
        <jdbc-user-service
                data-source-ref="securityDataSource"
                users-by-username-query="select username, password, enabled from users where username = ?"
                />
    </authentication-provider>
</authentication-manager> 

1 个答案:

答案 0 :(得分:0)

Spring Security无法读取hibernate.cfg.xml,但是您可以使用基于Java的配置创建securityDataSource

@Configuration
public class DataSourceConfig {

    @Bean
    public DataSource securityDataSource() {
        // parse hibernate.cfg.xml, create and return DataSource
    }

}

作为替代方法,您可以实现自己使用Hibernate的UserDetailsService