SpringCloud 密钥管理
Config Server可以使用对称(共享)密钥或非对称密钥(RSA密钥对)。非对称选择在安全性方面优越,但使用对称密钥通常更方便,因为它是在bootstrap.properties
中配置的单个属性值。
要配置对称密钥,您需要将encrypt.key
设置为秘密字符串(或使用ENCRYPT_KEY
环境变量将其保留在纯文本配置文件之外)。
您无法使用
encrypt.key
配置非对称密钥。
要配置非对称密钥,请使用密钥库(例如,由JDK附带的keytool
实用程序创建的密钥库)。密钥库属性为encrypt.keyStore.*
,其中*
等于
Property | 描述 |
---|---|
|
Contains a |
|
Holds the password that unlocks the keystore |
|
Identifies which key in the store to use |
|
The type of KeyStore to create. Defaults to |
加密是使用公钥完成的,解密需要私钥。因此,原则上,如果只想加密(并准备用私钥在本地解密值),则只能在服务器中配置公钥。实际上,您可能不希望在本地进行解密,因为它会将密钥管理过程分布在所有客户端上,而不是将其集中在服务器上。另一方面,如果您的配置服务器相对不安全并且只有少数客户端需要加密的属性,那么它可能是一个有用的选项。
更多建议: