spring cloud config server 客户端权限验证配置401

呆呆的萌新 发布于 2018/06/12 10:14
阅读 4K+
收藏 1

用的spring boot 2.0 

在周立的教程书上以及很多网上的资料,关于config 服务端的账号密码设置都是引入security依赖后配置

security:

  basic:

    enabled: true

  user:

     name: root

     password: root

然后客户端就

但是,服务端根本就没以上的配置啊! 什么basic 连security开头的配置都没有

只能用最后2个 spring 下的security 配置设置用户名密码,但是然并卵,

spring:
  cloud:
    config:
      discovery:
        enabled: true
        service-id: config
      label: master
      profile: dev 
      username: aa
      password: bb

客户端链接还是报401 null

还有奇怪的一点,config 服务端有一个刷新配置端点

http://localhost:8210/actuator/bus-refresh

服务端在开启security的自定义用户名密码的时候

用网页能够认证成功,用postman请求 就是401,

说了这么多我就想知道到底怎么配置服务端才能客户端鉴权访问?

加载中
0
polly
polly

第一个问题,springboot 2.x 对应springcloud Finchley,它已经停用security.basic.* 的配置。

第二个问题,你用postman测试的时候,要选择Authorization菜单,类型选择 Basic Auth,然后输入用户名和密码,go

第三个问题,就springcloud本身而言,你只需要在服务端配置:

spring.cloud.config.server.git.uri=http://xxxx

spring.security.user.name=user

spring.security.user.password=pass123

如果你的配置不在根目录,再配置一下:

spring.cloud.config.server.git.search-paths=config_server

而客户端,配置:

spring.cloud.config.uri=http://localhost:8888

spring.cloud.config.name=cloud-config

spring.cloud.config.profile=dev

spring.cloud.config.username=user

spring.cloud.config.password=pass123

 

就可以了。

OSCHINA
登录后可查看更多优质内容
返回顶部
顶部