15. 租赁生命周期管理(续约和撤销)

对于每个密钥,Vault 都会创建一个租约: 包含持续时间、可续订性等信息的元数据。spring-doc.cadn.net.cn

Vault 承诺数据将在给定的持续时间或生存时间 (TTL) 内有效。 一旦租约到期,Vault 可以撤销数据,密钥的使用者无法再确定其有效性。spring-doc.cadn.net.cn

Spring Cloud Vault 维护了创建登录Tokens和密钥之外的租赁生命周期。 也就是说,与租约关联的登录Tokens和机密计划在租约到期之前续订,直到终端到期。 应用程序关闭会撤销获得的登录Tokens和可续订租约。spring-doc.cadn.net.cn

Secret Service 和数据库后端(例如 MongoDB 或 MySQL)通常会生成可续订的租约,因此生成的凭据将在应用程序关闭时被禁用。spring-doc.cadn.net.cn

静态Tokens不会续订或撤销。

租约续订和撤销默认处于启用状态,可以通过设置spring.cloud.vault.config.lifecycle.enabledfalse. 不建议这样做,因为租约可能会过期,并且 Spring Cloud Vault 无法再使用生成的凭据访问 Vault 或服务,并且在应用程序关闭后有效凭据保持活动状态。spring-doc.cadn.net.cn

spring.cloud.vault:
    config.lifecycle:
        enabled: true
        min-renewal: 10s
        expiry-threshold: 1m
        lease-endpoints: Legacy
  • enabled控制是否将与机密关联的租约视为续订,以及是否轮换过期的机密。 默认启用。spring-doc.cadn.net.cn

  • min-renewal设置续租前至少需要的工期。 此设置可防止续订过于频繁。spring-doc.cadn.net.cn

  • expiry-threshold设置过期阈值。 租约在到期前在配置的时间段内续订。spring-doc.cadn.net.cn

  • lease-endpoints设置续订和撤销的端点。 0.8 之前的保管库版本为旧版,SysLeases 为更高版本。spring-doc.cadn.net.cn