这个问题在这里已经有答案了:
Spring Boot2.0.0+oauth2(4个答案)
三个月前关门了。
我遇到的问题是,我得到了错误“没有为id“null”Map的passwordencoder”。我读过springsecurity如何不允许密码是纯文本的(我理解这是为了安全措施),但问题是我真的不知道如何修复这个错误
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests().antMatchers("/", "/home").permitAll().antMatchers("/admin").hasRole("ADMIN")
.anyRequest().authenticated().and().formLogin().loginPage("/login").permitAll().and().logout()
.permitAll();
http.exceptionHandling().accessDeniedPage("/403");
}
和
@Autowired
DataSource dataSource;
@Autowired
public void configAuthentication(AuthenticationManagerBuilder auth) throws Exception {
auth.jdbcAuthentication().dataSource(dataSource)
.usersByUsernameQuery("select username, password, enabled from users where username=?")
.authoritiesByUsernameQuery("select username, role from user_roles where username=?");
}
1条答案
按热度按时间pgx2nnw81#
这个问题以前已经提过了,我已经在这里写了一个答案。如果你在谷歌上搜索这个错误信息,它是第一个点击。
这个错误也是spring安全文档中提到的第一个错误。
当存储的某个密码没有密码存储格式中描述的id时,会发生以下错误。