对于最新的稳定版本,请使用 Spring Cloud Config 4.3.0spring-doc.cadn.net.cn

密钥管理

配置服务器可以使用对称(共享)密钥或非对称密钥(RSA 密钥对)。 非对称选择在安全性方面更胜一筹,但使用对称键通常更方便,因为它是在application.properties.spring-doc.cadn.net.cn

要配置对称键,您需要将encrypt.key添加到 secret String(或使用ENCRYPT_KEY环境变量,使其远离纯文本配置文件)。spring-doc.cadn.net.cn

如果您包括spring-cloud-starter-bootstrap在类路径或集合上spring.cloud.bootstrap.enabled=true作为系统属性,您需要将encrypt.keybootstrap.properties.
您无法使用encrypt.key.

要配置非对称密钥,请使用密钥库(例如 由keytoolJDK 附带的实用程序)。这 keystore 属性是encrypt.keyStore.*等于*spring-doc.cadn.net.cn

属性 描述

encrypt.keyStore.locationspring-doc.cadn.net.cn

包含一个Resource位置spring-doc.cadn.net.cn

encrypt.keyStore.passwordspring-doc.cadn.net.cn

保存用于解锁密钥库的密码spring-doc.cadn.net.cn

encrypt.keyStore.aliasspring-doc.cadn.net.cn

标识要在存储中使用哪个密钥spring-doc.cadn.net.cn

encrypt.keyStore.typespring-doc.cadn.net.cn

要创建的密钥库类型。默认为jks.spring-doc.cadn.net.cn

加密是使用公钥完成的,私钥是 解密需要。 因此,原则上,如果您只想加密(并准备使用私钥在本地自行解密值),则只能在服务器中配置公钥。 实际上,您可能不想在本地进行解密,因为它将密钥管理过程分布在所有客户端上,而不是 将其集中在服务器中。 另一方面,如果您的配置服务器相对不安全并且只有少数客户端需要加密属性,则它可能是一个有用的选项。spring-doc.cadn.net.cn