Spring Cloud Config Server-在哪里设置Encrypt.Key启用 /加密端点



我有一个带有Spring Cloud Security依赖性的Spring Cloud Config应用程序。我正在尝试点击/加密端点以加密密码。

根据http://cloud.spring.io/spring-cloud-config/spring-cloud-config.html#_key_managemention的文档,我相信我需要使用" Encrypt.key"。但是我不知道把它放在哪里。我尝试过的所有组合都会在{" description":"没有安装键以进行加密服务","状态":" no_key"}时,当我尝试发布到/加密时。

如果我将键发布到/键,则/加密功能非常完美,因此我很确定其他所有内容都正确设置了。使用环境变量Encrypt_key或使用System属性Encrypt.key,它也可以正常工作。我只是无法弄清楚将gent.ke放置在配置文件中的位置。是否有样本?

感谢@pvilaca,这确实是文档所说的,但是设置了应用程序中的密钥。properties或application.yml不起作用。

通过实验,我发现您唯一可以设置encrypt.key属性的地方是encrypt_key环境变量,系统属性,bootstrap.properties,bootstrap.yml或调用/键端点。

不确定为什么应用程序或应用程序在这种情况下不起作用。设置此密钥必须比出现的启动过程更大。

将弹簧云版本设置为'brixton.sr5'为我工作。由于某些原因,在application.properties/yml或Bootstrap.properties/yml中设置" Encrypt.Key",以后的Spring Cloud版本不再起作用。

检查pom.xml文件的属性标签。如果您使用的是Dalston的版本2或3,请将其更改为:

<spring-cloud.version>Dalston.SR1</spring-cloud.version>

它应该可以正常工作。就我而言,我正在使用版本3并将其更改为版本1为我解决了问题。

参考:https://github.com/spring-cloud/spring-cloud-config/issues/767

如果您将Spring Cloud与Spring Boot一起使用,这是您提到的文档中描述的方法,您已经有两个"主要"属性文件。

  • bootstrap。[properties,yml]

    要修改启动行为,您可以使用Bootstrap.properties(例如Application.Properties,但对于应用程序上下文的Bootstrap阶段)来更改配置服务器的位置)

  • 应用程序。[属性,YML]

    在springapplication中将"应用程序"注入为" spring.config.name"(即常规Spring Boot应用中的通常"应用程序")

来源:春季云配置文档

因此,在您的应用程序中设置encrypt.key应该足够。[properties,yml]文件(或替代名称,如果指定了)

相关内容

最新更新