【发布时间】:2016-03-11 08:03:40
【问题描述】:
我很难连接我的 HSQLDB 和 Spring Security 配置。我正在使用 Spring Data JPA,并且已经放入了一些数据。 如何配置此方法
@Autowired
public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
auth
.inMemoryAuthentication()
.withUser("user").password("password").roles("ADMIN");
}
连接我的 hsqldb 并检索用户名、密码和角色? 这是github
我想通了,需要添加的代码是:
@Bean
public DataSource dataSource(){
EmbeddedDatabaseBuilder builder = new EmbeddedDatabaseBuilder();
EmbeddedDatabase db = builder.setType(EmbeddedDatabaseType.HSQL)
.build();
return db;
}
和连接:
@Autowired
public void configureGlobal(AuthenticationManagerBuilder auth, DataSource dataSource) throws Exception { auth.jdbcAuthentication().dataSource(dataSource).usersByUsernameQuery("select u.username, u.password, 1 from User u where u.username = ?")
.authoritiesByUsernameQuery("SELECT u.username, role.name FROM User u JOIN user_roles ON u.id = user_roles.users_Id JOIN Role on user_roles.roles_Id = role.id WHERE u.username = ? ").passwordEncoder(new BCryptPasswordEncoder());
}
【问题讨论】:
标签: spring-mvc spring-security spring-boot hsqldb