eureka添加验证后服务端启动注册不了问题

yml配置文件:

spring:

   security:

       user:

           name: admin

           password: admin

eureka服务端配置:

 eureka:

    client:

         register-with-eureka: false

         fetch-registry: false

        service-url:

           defaultZone: http://localhost:8012/eureka/

eureka客户端配置:

 eureka:

client:

    service-url:

        defaultZone: http://admin:admin@localhost:8012/eureka/

instance:

    prefer-ip-address: true

 

启动服务端报错:

com.netflix.discovery.shared.transport.TransportException: Cannot execute request on any known server

问题网上查了下,说是新版(Spring Cloud 2.0 以上)的security默认启用了csrf检验,要在eurekaServer端配置security的csrf检验为false 

解决方法:

在服务端添加一个配置类:

@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {

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

 

 

你可能感兴趣的:(Java)