常用應用程式屬性

各種屬性可以在您的 application.properties 檔案、application.yml 檔案或作為命令列開關來指定。本附錄提供常見 Spring Cloud Vault 屬性的列表,以及對使用這些屬性的底層類別的參考。

屬性貢獻可能來自類別路徑上的其他 jar 檔案,因此您不應將此視為詳盡的列表。此外,您可以定義自己的屬性。
名稱 預設值 描述

spring.cloud.vault.app-id.app-id-path

app-id

AppId 驗證後端的掛載路徑。

spring.cloud.vault.app-id.network-interface

用於 "MAC_ADDRESS" UserId 機制的網路介面提示。

spring.cloud.vault.app-id.user-id

MAC_ADDRESS

UserId 機制。可以是 "MAC_ADDRESS"、"IP_ADDRESS"、字串或類別名稱。

spring.cloud.vault.app-role.app-role-path

approle

AppRole 驗證後端的掛載路徑。

spring.cloud.vault.app-role.role

角色名稱,可選,用於提取模式。

spring.cloud.vault.app-role.role-id

RoleId。

spring.cloud.vault.app-role.secret-id

SecretId。

spring.cloud.vault.application-name

application

AppId 驗證的應用程式名稱。

spring.cloud.vault.authentication

spring.cloud.vault.aws-ec2.aws-ec2-path

aws-ec2

AWS-EC2 驗證後端的掛載路徑。

spring.cloud.vault.aws-ec2.identity-document

http://169.254.169.254/latest/dynamic/instance-identity/pkcs7

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

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

cloud.aws.credentials.accessKey

取得的存取金鑰的目標屬性。

spring.cloud.vault.aws.backend

aws

aws 後端路徑。

spring.cloud.vault.aws.credential-type

aws 憑證類型

spring.cloud.vault.aws.enabled

false

啟用 aws 後端使用。

spring.cloud.vault.aws.role

憑證的角色名稱。

spring.cloud.vault.aws.role-arn

在我們有多個與 vault 角色關聯的角色時,用於 assumed_role 的角色 arn。@since 3.0.2

spring.cloud.vault.aws.secret-key-property

cloud.aws.credentials.secretKey

取得的密鑰的目標屬性。

spring.cloud.vault.aws.session-token-key-property

cloud.aws.credentials.sessionToken

取得的密鑰的目標屬性。

spring.cloud.vault.aws.ttl

0

sts 令牌的 TTL。預設為 vault Role 可能具有的最大值。也受限於 AWS 支援作為 STS 最大值的限制。@since 3.0.2

spring.cloud.vault.azure-msi.azure-path

azure

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

Cassandra 後端路徑。

spring.cloud.vault.cassandra.enabled

false

啟用 cassandra 後端使用。

spring.cloud.vault.cassandra.password-property

spring.data.cassandra.password

取得的密碼的目標屬性。

spring.cloud.vault.cassandra.role

憑證的角色名稱。

spring.cloud.vault.cassandra.static-role

false

啟用靜態角色使用。@since 2.2

spring.cloud.vault.cassandra.username-property

spring.data.cassandra.username

取得的使用者名稱的目標屬性。

spring.cloud.vault.config.lifecycle.enabled

true

啟用生命週期管理。

spring.cloud.vault.config.lifecycle.expiry-threshold

到期閾值。{@link Lease} 在到期前的給定 {@link Duration} 更新。@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 LeaseStrategy} 以與 {@link org.springframework.vault.core.lease.SecretLeaseContainer#setLeaseStrategy(LeaseStrategy)} 一起使用,以在續約錯誤時保留或丟棄令牌。@since 4.1

spring.cloud.vault.config.lifecycle.min-renewal

續約租約之前至少需要的時間段。@since 2.2

spring.cloud.vault.config.order

0

用於設定 {@link org.springframework.core.env.PropertySource} 優先順序。這對於將 Vault 用作其他屬性來源的覆蓋非常有用。@see org.springframework.core.PriorityOrdered

spring.cloud.vault.connection-timeout

5000

連線逾時。

spring.cloud.vault.consul.backend

consul

Consul 後端路徑。

spring.cloud.vault.consul.enabled

false

啟用 consul 後端使用。

spring.cloud.vault.consul.role

憑證的角色名稱。

spring.cloud.vault.consul.token-property

spring.cloud.consul.token

取得的令牌的目標屬性。

spring.cloud.vault.couchbase.backend

database

Couchbase 後端路徑。

spring.cloud.vault.couchbase.enabled

false

啟用 couchbase 後端使用。

spring.cloud.vault.couchbase.password-property

spring.couchbase.password

取得的密碼的目標屬性。

spring.cloud.vault.couchbase.role

憑證的角色名稱。

spring.cloud.vault.couchbase.static-role

false

啟用靜態角色使用。

spring.cloud.vault.couchbase.username-property

spring.couchbase.username

取得的使用者名稱的目標屬性。

spring.cloud.vault.database.backend

database

資料庫後端路徑。

spring.cloud.vault.database.enabled

false

啟用資料庫後端使用。

spring.cloud.vault.database.password-property

spring.datasource.password

取得的密碼的目標屬性。

spring.cloud.vault.database.role

憑證的角色名稱。

spring.cloud.vault.database.static-role

false

啟用靜態角色使用。

spring.cloud.vault.database.username-property

spring.datasource.username

取得的使用者名稱的目標屬性。

spring.cloud.vault.databases

spring.cloud.vault.discovery.enabled

false

指示啟用 Vault 伺服器探索的旗標(Vault 伺服器 URL 將透過探索查找)。

spring.cloud.vault.discovery.service-id

vault

用於定位 Vault 的服務 ID。

spring.cloud.vault.elasticsearch.backend

database

資料庫後端路徑。

spring.cloud.vault.elasticsearch.enabled

false

啟用 elasticsearch 後端使用。

spring.cloud.vault.elasticsearch.password-property

spring.elasticsearch.rest.password

取得的密碼的目標屬性。

spring.cloud.vault.elasticsearch.role

憑證的角色名稱。

spring.cloud.vault.elasticsearch.static-role

false

啟用靜態角色使用。

spring.cloud.vault.elasticsearch.username-property

spring.elasticsearch.rest.username

取得的使用者名稱的目標屬性。

spring.cloud.vault.enabled

true

啟用 Vault 設定伺服器。

spring.cloud.vault.fail-fast

false

如果無法從 Vault 取得資料,則快速失敗。

spring.cloud.vault.gcp-gce.gcp-path

gcp

Kubernetes 驗證後端的掛載路徑。

spring.cloud.vault.gcp-gce.role

嘗試登入的角色名稱。

spring.cloud.vault.gcp-gce.service-account

可選的服務帳戶 ID。如果未設定,則使用預設 ID。

spring.cloud.vault.gcp-iam.credentials.encoded-key

JSON 格式的 OAuth2 帳戶私密金鑰的 base64 編碼內容。

spring.cloud.vault.gcp-iam.credentials.location

OAuth2 憑證私密金鑰的位置。<p> 由於這是一個 Resource,私密金鑰可以位於多個位置,例如本機檔案系統、類別路徑、URL 等。

spring.cloud.vault.gcp-iam.gcp-path

gcp

Kubernetes 驗證後端的掛載路徑。

spring.cloud.vault.gcp-iam.jwt-validity

15m

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

localhost

Vault 伺服器主機。

spring.cloud.vault.kubernetes.kubernetes-path

kubernetes

Kubernetes 驗證後端的掛載路徑。

spring.cloud.vault.kubernetes.role

嘗試登入的角色名稱。

spring.cloud.vault.kubernetes.service-account-token-file

/var/run/secrets/kubernetes.io/serviceaccount/token

服務帳戶令牌檔案的路徑。

spring.cloud.vault.kv.application-name

application

用於內容的應用程式名稱。

spring.cloud.vault.kv.backend

secret

預設後端的名稱。

spring.cloud.vault.kv.backend-version

2

金鑰值後端版本。目前支援的版本為:<ul> <li>版本 1(未版本化的金鑰值後端)。</li> <li>版本 2(版本化的金鑰值後端)。</li> </ul>

spring.cloud.vault.kv.default-context

application

預設內容的名稱。

spring.cloud.vault.kv.enabled

true

啟用金鑰值後端。

spring.cloud.vault.kv.profile-separator

/

用於組合應用程式名稱和配置文件的配置文件分隔符號。

spring.cloud.vault.kv.profiles

活動配置文件的列表。@since 3.0

spring.cloud.vault.mongodb.backend

mongodb

MongoDB 後端路徑。

spring.cloud.vault.mongodb.enabled

false

啟用 mongodb 後端使用。

spring.cloud.vault.mongodb.password-property

spring.data.mongodb.password

取得的密碼的目標屬性。

spring.cloud.vault.mongodb.role

憑證的角色名稱。

spring.cloud.vault.mongodb.static-role

false

啟用靜態角色使用。@since 2.2

spring.cloud.vault.mongodb.username-property

spring.data.mongodb.username

取得的使用者名稱的目標屬性。

spring.cloud.vault.mysql.backend

mysql

mysql 後端路徑。

spring.cloud.vault.mysql.enabled

false

啟用 mysql 後端使用。

spring.cloud.vault.mysql.password-property

spring.datasource.password

取得的使用者名稱的目標屬性。

spring.cloud.vault.mysql.role

憑證的角色名稱。

spring.cloud.vault.mysql.username-property

spring.datasource.username

取得的使用者名稱的目標屬性。

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

pcf

Kubernetes 驗證後端的掛載路徑。

spring.cloud.vault.pcf.role

嘗試登入的角色名稱。

spring.cloud.vault.port

8200

Vault 伺服器埠。

spring.cloud.vault.postgresql.backend

postgresql

postgresql 後端路徑。

spring.cloud.vault.postgresql.enabled

false

啟用 postgresql 後端使用。

spring.cloud.vault.postgresql.password-property

spring.datasource.password

取得的使用者名稱的目標屬性。

spring.cloud.vault.postgresql.role

憑證的角色名稱。

spring.cloud.vault.postgresql.username-property

spring.datasource.username

取得的使用者名稱的目標屬性。

spring.cloud.vault.rabbitmq.backend

rabbitmq

rabbitmq 後端路徑。

spring.cloud.vault.rabbitmq.enabled

false

啟用 rabbitmq 後端使用。

spring.cloud.vault.rabbitmq.password-property

spring.rabbitmq.password

取得的密碼的目標屬性。

spring.cloud.vault.rabbitmq.role

憑證的角色名稱。

spring.cloud.vault.rabbitmq.username-property

spring.rabbitmq.username

取得的使用者名稱的目標屬性。

spring.cloud.vault.reactive.enabled

true

指示啟用反應式探索的旗標

spring.cloud.vault.read-timeout

15000

讀取逾時。

spring.cloud.vault.scheme

https

協定方案。可以是 "http" 或 "https"。

spring.cloud.vault.session.lifecycle.enabled

true

啟用會期生命週期管理。

spring.cloud.vault.session.lifecycle.expiry-threshold

7秒

{@link LoginToken} 的到期閾值。閾值表示將登入令牌視為有效的最小 TTL 持續時間。TTL 較短的令牌被視為已過期,不再使用。應大於 {@code refreshBeforeExpiry} 以防止令牌過期。

spring.cloud.vault.session.lifecycle.refresh-before-expiry

5秒

續約 {@link LoginToken} 之前至少需要的時間段。

spring.cloud.vault.ssl.cert-auth-path

cert

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。可以使用方案、主機和埠設定。