此版本仍在开发中,尚不被认为是稳定的。对于最新的稳定版本,请使用 Spring Cloud Config 4.3.0spring-doc.cadn.net.cn

使用多个关键帧和关键帧旋转

除了{cipher}前缀,则配置服务器会查找零个或多个{name:value}前缀在(Base64 编码的)密文开始之前。 密钥被传递给TextEncryptorLocator,它可以执行任何需要的逻辑来定位TextEncryptor对于密码。 如果您配置了密钥库 (encrypt.keystore.location),默认定位器查找具有key前缀,其密文如下所示:spring-doc.cadn.net.cn

foo:
  bar: `\{cipher}{key:testkey}...`

定位器查找名为“testkey”的键。 也可以使用{secret:…​}值。 但是,如果未提供密钥库密码,则默认值是使用密钥库密码(这是构建密钥库时获得的密码,并且未指定密钥)。 如果确实提供了密钥,则还应使用自定义SecretLocator.spring-doc.cadn.net.cn

当密钥仅用于加密几个字节的配置数据(即,它们不在其他地方使用)时,出于加密原因,密钥轮换几乎不需要。 但是,有时可能需要更改密钥(例如,在发生安全漏洞时)。 在这种情况下,所有客户端都需要更改其源配置文件(例如,在 git 中)并使用新的{key:…​}前缀。 请注意,客户端需要首先检查密钥别名在 Config Server 密钥库中是否可用。spring-doc.cadn.net.cn

如果您想让 Config Server 处理所有加密和解密,请{name:value}前缀也可以添加为发布到/encrypt端点。