Share via


Spring Cloud Azure 設定

本文適用于: ✔️版本 4.14.0 ✔️ 5.8.0

本文說明所有 Spring Cloud Azure 萬用群組態屬性。

每個 Azure 服務 SDK 的設定

大部分的 Azure 服務 SDK 可依傳輸類型分成兩個類別:HTTP 型或 AMQP 型。 所有 SDK 都有通用的屬性,例如驗證主體和 Azure 環境設定,或 HTTP 型用戶端通用的屬性,例如記錄層級來記錄 HTTP 要求和回應。 在 Spring Cloud Azure 4.0 中,我們新增了您可以為每個 Azure 服務指定的五個常見組態屬性類別。

下表列出多個服務通用的屬性:

屬性 說明
spring.cloud.azure.azure-service.client 在一個 Azure 服務 SDK 底下設定傳輸用戶端。
spring.cloud.azure.azure-service.credential 使用一個 Azure 服務 SDK 的 Microsoft Entra ID 設定驗證。
spring.cloud.azure.azure-service.profile 設定一個 Azure 服務 SDK 的 Azure 雲端環境。
spring.cloud.azure.azure-service.proxy 設定一個 Azure 服務 SDK 的 Proxy 選項。
spring.cloud.azure.azure-service.retry 設定適用于一個 Azure 服務 SDK 的重試選項。 重試選項支援 SDK 的一部分,沒有 spring.cloud.azure.cosmos.retry。

自 Spring Cloud Azure 4.0 以來,組態屬性的前置詞已整合至 spring.cloud.azure 命名空間,讓設定屬性更一致且更直覺。 下表提供支援的 Azure 服務的前置詞快速檢閱:

Azure 服務 組態屬性前置詞 組態屬性連結
Azure 應用程式設定 spring.cloud.azure.appconfiguration 應用程式組態組態屬性
Azure Cosmos DB spring.cloud.azure.cosmos Azure Cosmos DB 組態屬性
Azure 事件中樞 spring.cloud.azure.eventhubs 事件中樞組態屬性
Azure 金鑰保存庫 憑證 spring.cloud.azure.keyvault.certificate 金鑰保存庫憑證組態屬性
Azure 金鑰保存庫秘密 spring.cloud.azure.keyvault.secret 金鑰保存庫秘密組態屬性
Azure 服務匯流排 spring.cloud.azure.servicebus 服務匯流排組態屬性
Azure 儲存體 Blob spring.cloud.azure.storage.blob 儲存體 Blob 組態屬性
Azure 儲存體檔案共用 spring.cloud.azure.storage.fileshare 儲存體檔案共用組態屬性
Azure 儲存體佇列 spring.cloud.azure.storage.queue 儲存體佇列組態屬性

Azure 服務 SDK 的全域設定

您可以在不同的 Azure 服務之間共用一些屬性,例如使用相同的服務主體來存取 Azure Cosmos DB 和Azure 事件中樞。 Spring Cloud Azure 4.0 可讓您定義套用至命名空間 spring.cloud.azure 中所有 Azure SDK 的屬性。

下表列出全域屬性:

屬性 說明
spring.cloud.azure.client 設定傳輸用戶端;預設會套用至所有 Azure SDK。
spring.cloud.azure.credential 根據預設,使用所有 Azure SDK 的 Microsoft Entra ID 設定驗證。
spring.cloud.azure.profile 預設會為所有 Azure SDK 設定 Azure 雲端環境。
spring.cloud.azure.proxy 根據預設,設定適用于所有 Azure SDK 用戶端的 Proxy 選項。
spring.cloud.azure.retry 根據預設,設定適用于所有 Azure SDK 用戶端的重試選項。

注意

在每個 Azure 服務下設定的屬性將會覆寫全域設定。

設定範例

Azure 服務 SDK 的全域重試組態

下列範例示範如何設定任何 HTTP 或 AMQP 通訊協定型 Azure SDK 用戶端的重試行為:

spring.cloud.azure:
  retry:
    mode: exponential
    exponential:
      max-retries: 4
      base-delay: PT0.0801S
      max-delay: PT9S

重試金鑰保存庫屬性來源的組態

下列組態範例示範如何設定 Azure 金鑰保存庫 Secret 用戶端的重試行為:

spring.cloud.azure:
  keyvault:
    secret:
      property-source-enabled: true
      property-sources:
        - endpoint: <your-Azure-Key-Vault-endpoint>
          retry:
            mode: exponential
            exponential:
              max-retries: 4
              base-delay: PT0.0801S
              max-delay: PT9S