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 共享密钥凭据,即向
shared_access_key
Airflow 连接添加共享密钥凭据。使用SAS 令牌,即向 Airflow 连接中的
sas_token
添加密钥配置。使用连接字符串,即向 Airflow 连接中的
connection_string
添加连接字符串。通过设置
managed_identity_client_id
、workload_identity_tenant_id
(在 hook 下,它使用DefaultAzureCredential和这些参数)使用托管标识。回退到DefaultAzureCredential。这包括尝试不同选项来进行验证的机制:托管系统标识、环境变量、通过 Azure CLI 进行验证等。
一次只能使用一种授权方法。如果您需要管理多个凭据或密钥,则应配置多个连接。
默认连接 ID¶
与 Microsoft Azure Blob 存储相关的所有钩子和操作符默认使用 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 身份验证)(可选)
指定要使用的租户。仅适用于活动目录(令牌)身份验证。可以省略它以回退到 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%[email protected]?tenant_id=tenant+id'