SpringCloud开启Eureka安全策略异常:Highlights unresolved and deprecated configuration keys and invalid values

springcloud搭建Eureka时,为了安全考虑,添加认证信息

导入依赖:

        <!-- 添加注册中心权限依赖  -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-security</artifactId>
        </dependency>

application.yml 中添加如下信息:

security:
  basic:
    enable: true #开启基于HTTP basic的认证
  user: #配置用户的账号信息
    name: admin
    password: admin123

结果报如下错误:

Inspection info: Checks Spring Boot application .yaml configuration files. Highlights unresolved and deprecated configuration keys and invalid values.

网上查找后才知道spring2.0以后的新版本开启权限方式变成如下:

spring:
  security:
    user:
      name: admin
      password: admin123

运行报错:

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

服务端添加代码:

  • 添加一个继承 WebSecurityConfigurerAdapter 的类
  • 在类上添加 @EnableWebSecurity 注解;
  • 覆盖父类的 configure(HttpSecurity http) 方法,关闭掉 csrf
/**
 * eureka开启验证后无法连接注册中心?
 * spring Cloud 2.0 以上)的security默认启用了csrf检验,要在eurekaServer端配置security的csrf检验为false
 */
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter{
    @Override
       protected void configure(HttpSecurity http) throws Exception {
           http.csrf().disable();
           super.configure(http);
       }
}

客户端配置文件:

eureka:
  client:
    registerWithEureka: true #是否将自己注册到Eureka服务中,默认为true
    fetchRegistry: true #是否从Eureka中获取注册信息,默认为true
    serviceUrl: #Eureka客户端与Eureka服务端进行交互的地址
      defaultZone: http://admin:admin123@127.0.0.1:6868/eureka/
  instance:
    prefer-ip-address: true #将自己的ip地址注册到Eureka服务中

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值