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