Microsoft Azure Blob Storage 连接¶
Microsoft Azure Blob Storage 连接类型支持 Azure Blob Storage 集成。
Azure Blob Storage 身份验证¶
有六种方法可以使用 Airflow 连接到 Azure Blob Storage。
使用 令牌凭证,即在 Airflow 连接中添加特定的凭证(client_id、secret、tenant)和订阅 ID。
使用 Azure 共享密钥凭证,即在 Airflow 连接的
shared_access_key
中添加共享密钥凭证。使用 SAS Token,即在 Airflow 连接的
sas_token
中添加密钥配置。使用 连接字符串,即在 Airflow 连接的
connection_string
中添加连接字符串。通过设置
managed_identity_client_id
、workload_identity_tenant_id
使用托管身份(底层使用带有这些参数的 DefaultAzureCredential)回退到 DefaultAzureCredential。这包含一种尝试不同身份验证选项的机制:托管系统身份、环境变量、通过 Azure CLI 身份验证等。
一次只能使用一种授权方法。如果需要管理多个凭证或密钥,则应配置多个连接。
默认连接 ID¶
所有与 Microsoft Azure Blob Storage 相关的 hook 和 operator 默认使用 wasb_default
。
配置连接¶
- 登录(可选)
指定用于 Azure Blob Storage 的登录信息。作为服务主体凭证进行 Active Directory(令牌)身份验证时严格需要。如果指定了主机(帐户 URL),则其余情况可选。可以省略,以回退到 DefaultAzureCredential。
- 密码(可选)
指定用于 Azure Blob Storage 的密码。用于 Active Directory(令牌凭证)和共享密钥身份验证。可以省略,以回退到 DefaultAzureCredential。
- 主机(可选)
指定 Azure Blob Storage 的帐户 URL。作为服务主体凭证进行 Active Directory(令牌)和 DefaultAzureCredential 身份验证时严格需要。如果指定了登录信息(帐户名),则其余情况可选。
- Blob Storage 连接字符串(可选)
用于连接字符串身份验证的连接字符串。可以省略,以回退到 DefaultAzureCredential。
- Blob Storage 共享访问密钥(可选)
指定共享访问密钥。仅在共享访问密钥身份验证时需要。可以省略,以回退到 DefaultAzureCredential。
- SAS Token(可选)
用于 SAS Token 身份验证的 SAS Token。可以省略,以回退到 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'