Microsoft Azure 連線

Microsoft Azure 連線型別支援 Azure 整合。

Azure 認證

使用 Airflow 連線 Azure 有五種方式。

  1. 使用 令牌憑據,即在 Airflow 連線中新增特定憑據(client_id、secret、tenant)和訂閱 ID。

  2. 使用 JSON 檔案

  3. 使用 JSON 字典,即將一個 key config 直接新增到 Airflow 連線中。

  4. 透過設定 managed_identity_client_idworkload_identity_tenant_id 來使用託管標識(底層使用了帶有這些引數的 DefaultAzureCredential)。

  5. 回退到 DefaultAzureCredential。這包含一個嘗試不同認證選項的機制:託管系統標識、環境變數、透過 Azure CLI 認證等。此認證機制中需要 subscriptionId

每次只能使用一種授權方法。如果需要管理多個憑據或金鑰,則應配置多個連線。

預設連線 ID

所有與 Microsoft Azure 容器例項相關的 hooks 和 operators 預設使用 azure_default

配置連線

登入(可選)

指定用於初始連線的 client_id。這僅在*令牌憑據*認證機制中需要。可以省略,以回退到 DefaultAzureCredential

密碼(可選)

指定用於初始連線的 secret。這僅在*令牌憑據*認證機制中需要。可以省略,以回退到 DefaultAzureCredential

額外引數(可選)

指定可用於 Azure 連線的額外引數(作為 json 字典)。以下引數均為可選:

  • tenantId:指定要使用的租戶。這僅在*令牌憑據*認證機制中需要。

  • subscriptionId:指定要使用的訂閱 ID。這僅在*令牌憑據*和 DefaultAzureCredential 認證機制中需要。

  • key_path:如果設定,則使用*JSON 檔案*認證機制。它指定包含認證資訊的 json 檔案路徑。

  • key_json:如果設定,則使用*JSON 字典*認證機制。它指定包含認證資訊的 json。

  • managed_identity_client_id:使用者分配的託管標識的客戶端 ID。如果與 workload_identity_tenant_id 一起提供,它們將傳遞給 DefaultAzureCredential

  • workload_identity_tenant_id:應用程式的 Microsoft Entra 租戶 ID,也稱為其“目錄”ID。如果與 managed_identity_client_id 一起提供,它們將傳遞給 DefaultAzureCredential

可以省略整個額外引數列,以回退到 DefaultAzureCredential

在環境變數中指定連線時,應使用 URI 語法進行指定。

請注意,URI 的所有組成部分都應進行 URL 編碼。

例如

export AIRFLOW_CONN_AZURE_DEFAULT='azure://?key_path=%2Fkeys%2Fkey.json'

本文有幫助嗎?