【spring-cloud】开启Eureka安全认证中的坑

搭建好了spring-cloud整套服务后,开始优化时发现,需要在访问服务发现中心时添加登录功能,以保障安全,于是参考了spring-cloud官网的配置方法,配置后果然需要通过登录才可以访问注册中心,但是此时所有的微服务都无法注册到注册中心上,尝试各种方式去配置就是不行,最后发现问题出在了版本上,网上搜到的以及spring官网提供的文档并没有提及到security在新版本中添加了csrf过滤,csrf将微服务的注册也给过滤了,所以在微服务启动时控制台明明看到response=200,但又报403的错误.

此时只需要在eureka发现中心手动关闭csrf即可正常完成服务注册,且不影响登录注册中心.

这个坑藏得太深,弄了一个下午才找到原因.

@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http.csrf().disable();//关闭csrf
        super.configure(http);
    }
}

最后说一下,我用的spring-boot版本是:

2.0.4.RELEASE

spring-cloud版本是:

Finchley.SR1

使用最新版本果然要谨慎啊,坑有点多,到现在为止踩过2个了,但新版在性能方面确实要好一些.

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值