注册中心配置了spring security后客户端启动报错

 更新时间:2023年07月20日 14:18:12   作者:毛宇鹏  
这篇文章主要为大家介绍了注册中心配置了spring security后客户端启动报错问题解决,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

问题

注册中心配置了security后, 报了 registration failed Cannot execute request on any known server 的错误, 原因是 2.1版本的security默认加上了 csrf 拦截, 所以需要通过重写方法, 把csrf拦截禁用

解决

在启动类上加上以下代码(禁用csrf)即解决问题

@EnableWebSecurity
static class WebSecurityConfig extends WebSecurityConfigurerAdapter {
    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http.csrf().disable()
        .authorizeRequests()
        .anyRequest()
        .authenticated()
        .and()
        .httpBasic();
    }
}

完整代码

/**
 * @author 毛宇鹏
 */
@EnableEurekaServer
@SpringBootApplication(exclude={
        DataSourceAutoConfiguration.class,
        HibernateJpaAutoConfiguration.class
})
public class RegisterApplication {
    public static void main(String[] args) {
        SpringApplication.run(RegisterApplication.class, args);
    }
    /**
     * 2.1版本的security默认加上了 csrf 拦截, 所以需要通过重写方法, 把csrf拦截禁用
     * 参考: https://github.com/spring-cloud/spring-cloud-netflix/issues/2754
     * <pre>
     *     This is because @EnableWebSecurity is now added by default when Spring Security is on the classpath.
     *     This enable CSRF protection by default. You will have the same problem in 1.5.10 if you add @EnableWebSecurity.
     *     One work around, which is not the most secure workaround if you have browsers using the Eureka dashboard, is to disable CSRF protection.
     *     This can be done by adding the following configuration to your app.
     * </pre>
     */
    @EnableWebSecurity
    static class WebSecurityConfig extends WebSecurityConfigurerAdapter {
        @Override
        protected void configure(HttpSecurity http) throws Exception {
            http.csrf().disable()
            .authorizeRequests()
            .anyRequest()
            .authenticated()
            .and()
            .httpBasic();
        }
    }
}

以上就是注册中心配置了spring security后客户端启动报错的详细内容,更多关于注册中心配置spring security报错的资料请关注脚本之家其它相关文章!

相关文章

  • 浅谈一下Java中集合的迭代方式

    浅谈一下Java中集合的迭代方式

    这篇文章主要介绍了浅谈一下Java中集合的迭代方式,可以帮助我们学习,理解函数式编程,需要的朋友可以参考下
    2023-04-04
  • idea项目debug模式启动,断点失效,断点红点内无对勾问题及解决

    idea项目debug模式启动,断点失效,断点红点内无对勾问题及解决

    这篇文章主要介绍了idea项目debug模式启动,断点失效,断点红点内无对勾问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-10-10
  • mybatis注解动态sql注入map和list方式(防sql注入攻击)

    mybatis注解动态sql注入map和list方式(防sql注入攻击)

    这篇文章主要介绍了mybatis注解动态sql注入map和list方式(防sql注入攻击),具有很好的参考价值,希望对大家有所帮助。
    2021-11-11
  • 利用POI生成EXCEL文件的方法实例

    利用POI生成EXCEL文件的方法实例

    Apache POI 是用Java编写的免费开源的跨平台的 Java API,Apache POI提供API给Java程式对Microsoft Office格式档案读和写的功能,下面这篇文章主要给大家介绍了关于利用POI生成EXCEL文件的相关资料,需要的朋友可以参考下
    2018-07-07
  • SpringBoot参数验证10个技巧值得收藏

    SpringBoot参数验证10个技巧值得收藏

    Spring Boot提供了内置的验证注解,可以帮助简单、快速地对输入字段进行验证,例如检查 null 或空字段、强制执行长度限制、使用正则表达式验证模式以及验证电子邮件地址,那么在Spring Boot应用中如何做好参数校验工作呢,本文提供了10个小技巧感兴趣的朋友一起看看吧
    2023-08-08
  • springboot切面添加日志功能实例详解

    springboot切面添加日志功能实例详解

    在本篇文章里小编给大家整理的是关于springboot 切面添加日志功能的相关知识点内容,有需要的朋友们可以参考下。
    2019-09-09
  • 一文详解Spring是怎么读取配置Xml文件的

    一文详解Spring是怎么读取配置Xml文件的

    这篇文章主要介绍了一文详解Spring是怎么读取配置Xml文件的,文章围绕主题展开详细的内容介绍,具有一定的参考价值,感兴趣的小伙伴可以参考一下
    2022-08-08
  • Eureka注册不上或注册后IP不对(多网卡的坑及解决)

    Eureka注册不上或注册后IP不对(多网卡的坑及解决)

    这篇文章主要介绍了Eureka注册不上或注册后IP不对(多网卡的坑及解决),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • Java中将一个列表拆分为多个较小列表的三种不同方法

    Java中将一个列表拆分为多个较小列表的三种不同方法

    有时候我们需要将大集合按指定的数量分割成若干个小集合,这篇文章主要给大家介绍了关于Java中将一个列表拆分为多个较小列表的三种不同方法,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-09-09
  • Java后台防止客户端重复请求、提交表单实现原理

    Java后台防止客户端重复请求、提交表单实现原理

    这篇文章主要介绍了Java后台防止客户端重复请求、提交表单实现原理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12

最新评论