前言
在Spring Security 实战(一、初体验)中已经介绍了两种配置用户的方式,本节介绍通过内存方式配置用户进行登录。
配置
要实现内存方式配置用户,需要重写SpringSecurity中默认的方法。接下来,我们创建一个名为SpringSecurityConfig的类并继承WebSecurityConfigurerAdapter类,然后重写其中的方法。
指定一个名为user的用户,密码123,权限user的用户
@EnableWebSecurity
public class SpringSecurityConfig extends WebSecurityConfigurerAdapter {
@Bean
PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.inMemoryAuthentication()
.withUser("user")
.password(passwordEncoder().encode("123"))
.authorities("user");
}
}
由于在SpringSecurity中需要指定密码的加密方式,所以注入PasswordEncoder,使用BCryptPasswordEncoder进行密码加密。
注:想要让此配置生效,@EnableWebSecurity注解一定不能少
使用
启动项目,通过浏览器访问http://localhost:8080/
通过前面配置的user用户进行登录,发现登录成功,并成功返回了index
基于内存的方式配置用户就先介绍到这里。