SpringBoot集成SpringSecurity(二内存方式配置用户)

Posted 伍妖捌

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot集成SpringSecurity(二内存方式配置用户)相关的知识,希望对你有一定的参考价值。

前言

SpringBoot集成SpringSecurity(一、初体验)中已经介绍了两种配置用户的方式,本节介绍通过内存方式配置用户进行登录。

配置

要实现内存方式配置用户,需要重写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
在这里插入图片描述
基于内存的方式配置用户就先介绍到这里。

以上是关于SpringBoot集成SpringSecurity(二内存方式配置用户)的主要内容,如果未能解决你的问题,请参考以下文章

SpringBoot项目启动后访问任意接口都会跳转到一个莫名其妙的login登录页面

SpringSecurity解决跨域问题,在SpringBoot整合SprinSecurity中如何用前后端分离Ajax登录,Ajax登录返回状态200还是近error

001.camunda入门(springboot集成篇)

在邮递员上发布请求但不在浏览器中(代码状态:415) - Spring Boot,thymeleaf

springboot集成ES,以及应用

SpringBoot集成Kafka