Microsoft Azure Blob 儲存體連線¶
Microsoft Azure Blob 儲存體連線類型啟用 Azure Blob 儲存體整合。
驗證 Azure Blob 儲存體的身份¶
有六種方式可以使用 Airflow 連線到 Azure Blob 儲存體。
使用權杖認證,即將特定的認證(client_id、secret、tenant)和訂用帳戶 ID 新增到 Airflow 連線。
使用 Azure 共用金鑰認證,即將共用金鑰認證新增到 Airflow 連線的
shared_access_key
。使用 SAS 權杖,即將金鑰組態新增到 Airflow 連線中的
sas_token
。使用連線字串,即將連線字串新增到 Airflow 連線中的
connection_string
。透過設定
managed_identity_client_id
、workload_identity_tenant_id
來使用受控識別 (底層使用 DefaultAzureCredential 以及這些引數)回退到 DefaultAzureCredential。這包含嘗試不同選項進行驗證的機制:受控系統識別、環境變數、透過 Azure CLI 驗證等等。
一次只能使用一種授權方法。如果您需要管理多個認證或金鑰,則應設定多個連線。
預設連線 ID¶
所有與 Microsoft Azure Blob 儲存體相關的 Hook 和運算子預設使用 wasb_default
。
設定連線¶
- 登入 (選填)
指定用於 Azure Blob 儲存體的登入名稱。對於 Active Directory (權杖) 驗證作為服務主體認證而言是嚴格需要的。如果指定了主機 (帳戶 URL),則其餘部分為選填。可以省略它以回退到 DefaultAzureCredential。
- 密碼 (選填)
指定用於 Azure Blob 儲存體的密碼。用於 Active Directory (權杖認證) 和共用金鑰驗證。可以省略它以回退到 DefaultAzureCredential。
- 主機 (選填)
指定 Azure Blob 儲存體的帳戶 URL。對於 Active Directory (權杖) 和 DefaultAzureCredential 驗證作為服務主體認證而言是嚴格需要的。如果指定了登入名稱 (帳戶名稱),則其餘部分為選填。
- Blob 儲存體連線字串 (選填)
用於連線字串驗證的連線字串。可以省略它以回退到 DefaultAzureCredential。
- Blob 儲存體共用存取金鑰 (選填)
指定共用存取金鑰。僅在共用存取金鑰驗證時需要。可以省略它以回退到 DefaultAzureCredential。
- SAS 權杖 (選填)
用於 SAS 權杖驗證的 SAS 權杖。可以省略它以回退到 DefaultAzureCredential。
- 租用戶 ID (Active Directory 驗證) (選填)
指定要使用的租用戶。僅在 Active Directory (權杖) 驗證時需要。可以省略它以回退到 DefaultAzureCredential。
- 額外 (選填)
指定可在 Azure 連線中使用的額外參數 (以 JSON 字典形式)。以下參數皆為選填
client_secret_auth_config
:使用 ClientSecretCredential 以服務主體身分驗證時要傳遞的額外組態。可以省略它以回退到 DefaultAzureCredential。managed_identity_client_id
:使用者指派的受控識別的用戶端 ID。如果與 workload_identity_tenant_id 一起提供,它們將傳遞給DefaultAzureCredential
。workload_identity_tenant_id
:應用程式的 Microsoft Entra 租用戶 ID。也稱為其「目錄」ID。如果與 managed_identity_client_id 一起提供,它們將傳遞給DefaultAzureCredential
。
在環境變數中指定連線時,您應該使用 URI 語法來指定它。
請注意,URI 的所有組成部分都應進行 URL 編碼。
例如,使用權杖認證連線
export AIRFLOW_CONN_WASB_DEFAULT='wasb://blob%20username:blob%20password@myblob.com?tenant_id=tenant+id'