Microsoft Azure 連線¶
Microsoft Azure 連線型別支援 Azure 整合。
Azure 認證¶
使用 Airflow 連線 Azure 有五種方式。
使用 令牌憑據,即在 Airflow 連線中新增特定憑據(client_id、secret、tenant)和訂閱 ID。
使用 JSON 檔案
使用 JSON 字典,即將一個 key config 直接新增到 Airflow 連線中。
透過設定
managed_identity_client_id和workload_identity_tenant_id來使用託管標識(底層使用了帶有這些引數的 DefaultAzureCredential)。回退到 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'