普通应用属性
各种属性可以在您的 application.properties 文件、application.yml 文件中指定,或作为命令行开关。本附录提供了常见的 Spring Cloud Vault 属性列表以及引用了使用这些属性的底层类。
| 属性贡献可能来自您类路径上的其他 jar 文件,因此您不应将此视为完整列表。此外,您还可以定义自己的属性。 | 
| 名称 | 默认值 | 描述 | 
|---|---|---|
| spring.cloud.vault.app-id.app-id-path | 
 | AppId 认证后端的挂载路径。 | 
| spring.cloud.vault.app-id.network-interface | "MAC_ADDRESS" UserId 机制的网络接口提示。 | |
| spring.cloud.vault.app-id.user-id | 
 | UserId 机制。可以是 "MAC_ADDRESS"、"IP_ADDRESS"、字符串或类名。 | 
| spring.cloud.vault.app-role.app-role-path | 
 | AppRole 认证后端的挂载路径。 | 
| spring.cloud.vault.app-role.role | 角色的名称,可选,用于 pull 模式。 | |
| spring.cloud.vault.app-role.role-id | RoleId。 | |
| spring.cloud.vault.app-role.secret-id | SecretId。 | |
| spring.cloud.vault.application-name | 
 | 用于 AppId 认证的应用名称。 | 
| spring.cloud.vault.authentication | 
 | |
| spring.cloud.vault.aws-ec2.aws-ec2-path | 
 | AWS-EC2 认证后端的挂载路径。 | 
| spring.cloud.vault.aws-ec2.identity-document | 
 | AWS-EC2 PKCS7 身份文档的 URL。 | 
| spring.cloud.vault.aws-ec2.nonce | 用于 AWS-EC2 认证的 Nonce。空 Nonce 默认为生成 Nonce。 | |
| spring.cloud.vault.aws-ec2.role | 角色的名称,可选。 | |
| spring.cloud.vault.aws-iam.aws-path | 
 | AWS 认证后端的挂载路径。 | 
| spring.cloud.vault.aws-iam.endpoint-uri | STS 服务器 URI。@since 2.2 | |
| spring.cloud.vault.aws-iam.region | 区域名称,可选。如果未设置,则由 AWS 默认值推断。@since 4.0.1 | |
| spring.cloud.vault.aws-iam.role | 角色的名称,可选。如果未设置,默认为友好的 IAM 名称。 | |
| spring.cloud.vault.aws-iam.server-name | 用于在登录请求的头部设置 {@code X-Vault-AWS-IAM-Server-ID} 头的服务器名称。 | |
| spring.cloud.vault.aws.access-key-property | 
 | 获取的访问密钥的目标属性。 | 
| spring.cloud.vault.aws.backend | 
 | aws 后端路径。 | 
| spring.cloud.vault.aws.credential-type | 
 | aws 凭据类型。 | 
| spring.cloud.vault.aws.enabled | 
 | 启用 aws 后端使用。 | 
| spring.cloud.vault.aws.role | 凭据的角色名称。 | |
| spring.cloud.vault.aws.role-arn | 如果与 vault 角色关联了多个角色,则为 assumed_role 的 Role arn。@since 3.0.2 | |
| spring.cloud.vault.aws.secret-key-property | 
 | 获取的秘密密钥的目标属性。 | 
| spring.cloud.vault.aws.session-token-key-property | 
 | 获取的秘密密钥的目标属性。 | 
| spring.cloud.vault.aws.ttl | 
 | sts 令牌的 TTL。默认为 vault Role 可能设置的最大值。也受限于 AWS 对 STS 支持的最大值。@since 3.0.2 | 
| spring.cloud.vault.azure-msi.azure-path | 
 | Azure MSI 认证后端的挂载路径。 | 
| spring.cloud.vault.azure-msi.identity-token-service | 身份令牌服务 URI。@since 3.0 | |
| spring.cloud.vault.azure-msi.metadata-service | 实例元数据服务 URI。@since 3.0 | |
| spring.cloud.vault.azure-msi.role | 角色的名称。 | |
| spring.cloud.vault.cassandra.backend | 
 | Cassandra 后端路径。 | 
| spring.cloud.vault.cassandra.enabled | 
 | 启用 cassandra 后端使用。 | 
| spring.cloud.vault.cassandra.password-property | 
 | 获取的密码的目标属性。 | 
| spring.cloud.vault.cassandra.role | 凭据的角色名称。 | |
| spring.cloud.vault.cassandra.static-role | 
 | 启用静态角色使用。@since 2.2 | 
| spring.cloud.vault.cassandra.username-property | 
 | 获取的用户名的目标属性。 | 
| spring.cloud.vault.config.lifecycle.enabled | 
 | 启用生命周期管理。 | 
| spring.cloud.vault.config.lifecycle.expiry-threshold | 过期阈值。在到期前指定的 {@link Duration} 内续订 {@link Lease}。@since 2.2 | |
| spring.cloud.vault.config.lifecycle.lease-endpoints | 设置 {@link LeaseEndpoints} 以委托续订/撤销调用。{@link LeaseEndpoints} 封装了影响续订/撤销端点位置的 Vault 版本之间的差异。对于 Vault 0.8 或更高版本,可以是 {@link LeaseEndpoints#SysLeases};对于旧版本(默认),可以是 {@link LeaseEndpoints#Legacy}。@since 2.2 | |
| spring.cloud.vault.config.lifecycle.lease-strategy | 设置与 {@link org.springframework.vault.core.lease.SecretLeaseContainer#setLeaseStrategy(LeaseStrategy)} 一起使用的 {@link LeaseStrategy},以便在续订错误时保留或丢弃令牌。@since 4.1 | |
| spring.cloud.vault.config.lifecycle.min-renewal | 续订租约前至少需要的时间周期。@since 2.2 | |
| spring.cloud.vault.config.order | 
 | 用于设置 {@link org.springframework.core.env.PropertySource} 的优先级。这对于将 Vault 用作其他属性源的覆盖非常有用。@see org.springframework.core.PriorityOrdered | 
| spring.cloud.vault.connection-timeout | 
 | 连接超时。 | 
| spring.cloud.vault.consul.backend | 
 | Consul 后端路径。 | 
| spring.cloud.vault.consul.enabled | 
 | 启用 consul 后端使用。 | 
| spring.cloud.vault.consul.role | 凭据的角色名称。 | |
| spring.cloud.vault.consul.token-property | 
 | 获取的令牌的目标属性。 | 
| spring.cloud.vault.couchbase.backend | 
 | Couchbase 后端路径。 | 
| spring.cloud.vault.couchbase.enabled | 
 | 启用 couchbase 后端使用。 | 
| spring.cloud.vault.couchbase.password-property | 
 | 获取的密码的目标属性。 | 
| spring.cloud.vault.couchbase.role | 凭据的角色名称。 | |
| spring.cloud.vault.couchbase.static-role | 
 | 启用静态角色使用。 | 
| spring.cloud.vault.couchbase.username-property | 
 | 获取的用户名的目标属性。 | 
| spring.cloud.vault.database.backend | 
 | 数据库后端路径。 | 
| spring.cloud.vault.database.enabled | 
 | 启用数据库后端使用。 | 
| spring.cloud.vault.database.password-property | 
 | 获取的密码的目标属性。 | 
| spring.cloud.vault.database.role | 凭据的角色名称。 | |
| spring.cloud.vault.database.static-role | 
 | 启用静态角色使用。 | 
| spring.cloud.vault.database.username-property | 
 | 获取的用户名的目标属性。 | 
| spring.cloud.vault.databases | ||
| spring.cloud.vault.discovery.enabled | 
 | 标志,指示 Vault 服务器发现是否启用(Vault 服务器 URL 将通过发现查找)。 | 
| spring.cloud.vault.discovery.service-id | 
 | 用于定位 Vault 的服务 ID。 | 
| spring.cloud.vault.elasticsearch.backend | 
 | 数据库后端路径。 | 
| spring.cloud.vault.elasticsearch.enabled | 
 | 启用 elasticsearch 后端使用。 | 
| spring.cloud.vault.elasticsearch.password-property | 
 | 获取的密码的目标属性。 | 
| spring.cloud.vault.elasticsearch.role | 凭据的角色名称。 | |
| spring.cloud.vault.elasticsearch.static-role | 
 | 启用静态角色使用。 | 
| spring.cloud.vault.elasticsearch.username-property | 
 | 获取的用户名的目标属性。 | 
| spring.cloud.vault.enabled | 
 | 启用 Vault 配置服务器。 | 
| spring.cloud.vault.fail-fast | 
 | 如果无法从 Vault 获取数据,则快速失败。 | 
| spring.cloud.vault.gcp-gce.gcp-path | 
 | Kubernetes 认证后端的挂载路径。 | 
| spring.cloud.vault.gcp-gce.role | 尝试登录时使用的角色名称。 | |
| spring.cloud.vault.gcp-gce.service-account | 可选的服务账号 ID。如果未配置,则使用默认 ID。 | |
| spring.cloud.vault.gcp-iam.credentials.encoded-key | OAuth2 账号私钥的 base64 编码内容,格式为 JSON。 | |
| spring.cloud.vault.gcp-iam.credentials.location | OAuth2 凭据私钥的位置。<p> 由于这是 Resource,私钥可以位于多种位置,例如本地文件系统、类路径、URL 等。 | |
| spring.cloud.vault.gcp-iam.gcp-path | 
 | Kubernetes 认证后端的挂载路径。 | 
| gcp | 
 | JWT 令牌的有效期。 | 
| spring.cloud.vault.gcp-iam.project-id | 覆盖 GCP 项目 ID。 | |
| spring.cloud.vault.gcp-iam.role | 尝试登录时使用的角色名称。 | |
| spring.cloud.vault.gcp-iam.service-account-id | 覆盖 GCP 服务账号 ID。 | |
| spring.cloud.vault.host | 
 | Vault 服务器主机。 | 
| spring.cloud.vault.kubernetes.kubernetes-path | 
 | Kubernetes 认证后端的挂载路径。 | 
| spring.cloud.vault.kubernetes.role | 尝试登录时使用的角色名称。 | |
| spring.cloud.vault.kubernetes.service-account-token-file | 
 | 服务账号令牌文件的路径。 | 
| spring.cloud.vault.kv.application-name | 
 | 用于上下文的应用名称。 | 
| spring.cloud.vault.kv.backend | 
 | 默认后端的名称。 | 
| spring.cloud.vault.kv.backend-version | 
 | Key-Value 后端版本。当前支持的版本有:<ul> <li>版本 1(未版本化 Key-Value 后端)。</li> <li>版本 2(版本化 Key-Value 后端)。</li> </ul> | 
| spring.cloud.vault.kv.default-context | 
 | 默认上下文的名称。 | 
| spring.cloud.vault.kv.enabled | 
 | 启用 Key-Value 后端。 | 
| spring.cloud.vault.kv.profile-separator | 
 | 用于组合应用名称和配置文件的 Profile 分隔符。 | 
| spring.cloud.vault.kv.profiles | 活动配置文件列表。@since 3.0 | |
| spring.cloud.vault.mongodb.backend | 
 | MongoDB 后端路径。 | 
| spring.cloud.vault.mongodb.enabled | 
 | 启用 mongodb 后端使用。 | 
| spring.cloud.vault.mongodb.password-property | 
 | 获取的密码的目标属性。 | 
| spring.cloud.vault.mongodb.role | 凭据的角色名称。 | |
| spring.cloud.vault.mongodb.static-role | 
 | 启用静态角色使用。@since 2.2 | 
| spring.cloud.vault.mongodb.username-property | 
 | 获取的用户名的目标属性。 | 
| spring.cloud.vault.mysql.backend | 
 | mysql 后端路径。 | 
| spring.cloud.vault.mysql.enabled | 
 | 启用 mysql 后端使用。 | 
| spring.cloud.vault.mysql.password-property | 
 | 获取的用户名的目标属性。 | 
| spring.cloud.vault.mysql.role | 凭据的角色名称。 | |
| spring.cloud.vault.mysql.username-property | 
 | 获取的用户名的目标属性。 | 
| spring.cloud.vault.namespace | Vault 命名空间(需要 Vault Enterprise)。 | |
| spring.cloud.vault.pcf.instance-certificate | 实例证书 (PEM) 的路径。默认为 {@code CF_INSTANCE_CERT} 环境变量。 | |
| spring.cloud.vault.pcf.instance-key | 实例密钥 (PEM) 的路径。默认为 {@code CF_INSTANCE_KEY} 环境变量。 | |
| spring.cloud.vault.pcf.pcf-path | 
 | Kubernetes 认证后端的挂载路径。 | 
| spring.cloud.vault.pcf.role | 尝试登录时使用的角色名称。 | |
| spring.cloud.vault.port | 
 | Vault 服务器端口。 | 
| spring.cloud.vault.postgresql.backend | 
 | postgresql 后端路径。 | 
| spring.cloud.vault.postgresql.enabled | 
 | 启用 postgresql 后端使用。 | 
| spring.cloud.vault.postgresql.password-property | 
 | 获取的用户名的目标属性。 | 
| spring.cloud.vault.postgresql.role | 凭据的角色名称。 | |
| spring.cloud.vault.postgresql.username-property | 
 | 获取的用户名的目标属性。 | 
| spring.cloud.vault.rabbitmq.backend | 
 | rabbitmq 后端路径。 | 
| spring.cloud.vault.rabbitmq.enabled | 
 | 启用 rabbitmq 后端使用。 | 
| spring.cloud.vault.rabbitmq.password-property | 
 | 获取的密码的目标属性。 | 
| spring.cloud.vault.rabbitmq.role | 凭据的角色名称。 | |
| spring.cloud.vault.rabbitmq.username-property | 
 | 获取的用户名的目标属性。 | 
| spring.cloud.vault.reactive.enabled | 
 | 标志,指示响应式发现是否启用 | 
| spring.cloud.vault.read-timeout | 
 | 读取超时。 | 
| spring.cloud.vault.scheme | 
 | 协议方案。可以是 "http" 或 "https"。 | 
| spring.cloud.vault.session.lifecycle.enabled | 
 | 启用会话生命周期管理。 | 
| spring.cloud.vault.session.lifecycle.expiry-threshold | 
 | {@link LoginToken} 的过期阈值。该阈值表示一个最小的 TTL 持续时间,以此判断登录令牌是否有效。TTL 较短的令牌被视为已过期且不再使用。应大于 {@code refreshBeforeExpiry} 以防止令牌过期。 | 
| spring.cloud.vault.session.lifecycle.refresh-before-expiry | 
 | 续订 {@link LoginToken} 前至少需要的时间周期。 | 
| spring.cloud.vault.ssl.cert-auth-path | 
 | TLS 证书认证后端的挂载路径。 | 
| spring.cloud.vault.ssl.enabled-cipher-suites | 启用的 SSL/TLS 密码套件列表。@since 3.0.2 | |
| spring.cloud.vault.ssl.enabled-protocols | 启用的 SSL/TLS 协议列表。@since 3.0.2 | |
| spring.cloud.vault.ssl.key-store | 包含证书和私钥的信任库。 | |
| spring.cloud.vault.ssl.key-store-password | 用于访问密钥库的密码。 | |
| spring.cloud.vault.ssl.key-store-type | 密钥库的类型。@since 3.0 | |
| spring.cloud.vault.ssl.trust-store | 包含 SSL 证书的信任库。 | |
| spring.cloud.vault.ssl.trust-store-password | 用于访问信任库的密码。 | |
| spring.cloud.vault.ssl.trust-store-type | 信任库的类型。@since 3.0 | |
| spring.cloud.vault.token | 静态 vault 令牌。如果 {@link #authentication} 为 {@code TOKEN},则必需。 | |
| spring.cloud.vault.uri | Vault URI。可以设置协议方案、主机和端口。 |