15. 租约生命周期管理(续订和撤销)
对于每个密钥,Vault 都会创建一个租约: 元数据包含持续时间、可续订性等信息。
Vault 承诺数据在给定的持续时间或生存时间 (TTL) 内有效。 租约到期后,Vault 可以撤销数据,并且密钥的使用者无法再确定数据是否有效。
Spring Cloud Vault 在创建登录令牌和秘密之后维护租约生命周期。 也就是说,与租约关联的登录令牌和密钥计划在租约到期之前续订,直到终端到期。 应用程序关闭会撤销已获取的登录令牌和可续订租约。
秘密服务和数据库后端(例如 MongoDB 或 MySQL)通常会生成可续订的租约,因此生成的凭证将在应用程序关闭时被禁用。
静态令牌不会续订或撤销。 |
默认情况下,租约续订和吊销处于启用状态,可以通过设置为 来禁用。
不建议这样做,因为租约可能会过期,并且 Spring Cloud Vault 无法再使用生成的凭证访问 Vault 或服务,并且有效凭证在应用程序关闭后仍保持活动状态。spring.cloud.vault.config.lifecycle.enabled
false
spring.cloud.vault:
config.lifecycle:
enabled: true
min-renewal: 10s
expiry-threshold: 1m
lease-endpoints: Legacy
-
enabled
控制是否将与密钥关联的租约视为已续订,以及是否轮换过期的密钥。 默认启用。 -
min-renewal
设置续订租约之前至少需要的持续时间。 此设置可防止续订过于频繁。 -
expiry-threshold
设置 过期阈值。 租约在到期前续订配置的时间段。 -
lease-endpoints
设置 Renew 和 Revoke 的终端节点。 旧版适用于 0.8 之前的 Vault 版本和 SysLeases 版本。