2

这个问题肯定是已知的。但我找不到任何解决方案。我正在使用 Spring Boot 云配置服务器通过 {cipher} 表达式提供所有属性值(加密)。它使用位于同一系统中的密钥库。但是密钥库的密码是纯文本的。问题是有可能如何加密密钥库密码?

提前致谢!

4

3 回答 3

3

加密密钥库密码需要配置一个用于解密的密钥,该密钥本身必须以未加密的方式存储,因此没有任何用处。

我认为最好的方法是将密钥库密码设置为环境变量(如this postthis SO question中所述)。

于 2016-11-11T22:48:51.517 回答
1

我完全同意@Quagaar 的观点,即最好的方法是将其实际存储在环境变量中并application.properties从那里读取。在终端上的IDEserver.ssl.key-store-password=${KEY_STORE_PASSWORD} 或导出命令的运行配置中设置环境变量。

于 2017-11-28T06:18:21.280 回答
0

这就像使用密码为另一个密钥创建一个密钥一样,多次这样做仍然会在存储库中结束一些密码(如 bitbucket)。

最好使用配置服务器 encrypt.key: "{$somepassphrase}" 加密所有密码,并将此密码(主密钥)存储为 env 变量,并在生成管道时使用 Jenkins 传递它。

于 2018-10-05T17:11:16.137 回答