SpringBoot整合security的登录问题

依赖

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-security</artifactId>
        </dependency>

问题

之后我们启动项目,打开我们的swagger页面,打不开,发现自动跳转到以下界面

这是由于security自己有认证 界面,只有登录成功之后才可以进行其他接口访问。

解决办法

一、使用默认账号密码

默认的Username为user,password为项目启动时打印出来的一串字符

二、自己配置账号密码 

 在yml中配置即可

spring:
  security:
    user:
      name: test
      password: 123
      roles: ADMIN

三、在启动项使用注解

@SpringBootApplication(exclude = {SecurityAutoConfiguration.class})  

四、集成WebSecurityConfigurerAdapter重写configure方法

@Configuration
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true)
public class SecurityConfig extends WebSecurityConfigurerAdapter {
    @Override
    protected void configure(HttpSecurity http) throws Exception {
        //可以写一些其他配置
        http.authorizeRequests()
                // 如果有允许匿名的url,填在下面
                //.antMatchers().permitAll()
                .anyRequest().authenticated().and()

                // 设置登陆页
                .formLogin().loginPage("/login")
                .successHandler(customAuthenticationSuccessHandler)
                .failureHandler(customAuthenticationFailureHandler)
//                .failureUrl("/login/error")
//                .defaultSuccessUrl("/")
                .permitAll();
         http.csrf().disable();
    }

}

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值