【问题标题】:Failed to disable decryption server side in spring cloud config server无法在 Spring Cloud 配置服务器中禁用解密服务器端
【发布时间】:2018-05-08 06:39:26
【问题描述】:

根据spring cloud config文档,如果我们想禁用服务端解密并由客户端处理,我们可以在服务端的application.yml中放入如下属性:

spring:
 cloud:
  config:
   server:
    encrypt.enabled: false

在服务器端,定义一个环境变量ENCRYPT_KEY 然后调用curl 来获取加密密码,我更新配置文件然后我提交它

export ENCRYPTED=`curl config-server/encrypt -d ms-password-prod`
echo "spring.data.mongodb.paswword='{cipher}$ENCRYPTED'" >> establishment-services-prod.yml

现在,当我打电话时

curl -v config-server:9090/establishment-services/prod

我希望看到加密的密码,但我得到了解密的密码。

我使用了spring-boot 1.5.8spring-cloud Dalston.SR4

您可以在我的Github 帐户中找到所有代码。

【问题讨论】:

  • 您可以尝试在您的配置服务器设置中将spring.cloud.config.server.encrypt.enabled 移动到bootstrap.yml 吗?
  • spring.cloud.config.server.encrypt.enabled 移动到bootstrap.ymll 解决了这个问题。我认为有必要将这种替代方案视为一种解决方案。请把您的评论作为接受它的答案。

标签: java spring-boot spring-cloud-config


【解决方案1】:

spring.cloud.config.server.encrypt.enabled 键移动到配置服务器的bootstrap 配置文件应该可以解决此问题。

查看项目文档,我不确定这是一种解决方法还是预期的行为,因为似乎只有 encrypt.* 键属于引导配置。

这可能是您可以在the issue tracker spring-cloud-config 上报告的错误或文档增强功能。

【讨论】:

猜你喜欢
  • 2018-08-24
  • 2016-06-26
  • 2017-09-07
  • 1970-01-01
  • 2017-07-25
  • 2023-03-24
  • 1970-01-01
  • 1970-01-01
  • 2019-11-26
相关资源
最近更新 更多