Microsoft Azure Cosmos¶
Microsoft Azure Cosmos 连接类型支持 Azure Cosmos 集成。
Azure 身份验证¶
有三种使用 Airflow 连接到 Azure Cosmos 的方法。
使用 主密钥,即向 Airflow 连接添加特定凭据(client_id、secret、tenant)和帐户名称。
通过设置
managed_identity_client_id
,workload_identity_tenant_id
来使用托管身份(在幕后,它使用带有这些参数的 DefaultAzureCredential)。回退到 DefaultAzureCredential。这包括尝试不同选项进行身份验证的机制:托管系统身份、环境变量、通过 Azure CLI 进行身份验证等。
默认连接 ID¶
所有与 Microsoft Azure Cosmos 相关的钩子和操作符默认使用 azure_cosmos_default
。
配置连接¶
- 登录
指定用于初始连接的 Cosmos 终结点 URI。
- 密码(可选)
指定用于初始连接的 Cosmos 主密钥令牌。可以将其省略以回退到 DefaultAzureCredential。
- 额外(可选)
指定可以在 Azure Cosmos 连接中使用的额外参数(作为 json 字典)。以下参数都是可选的
database_name
: 指定要使用的 azure cosmos 数据库。collection_name
: 指定要使用的 azure cosmos 集合。partition_key
: 指定集合的分区键。subscription_id
: 指定用于初始连接的订阅 ID。回退到 DefaultAzureCredential 时需要。resource_group_name
: 指定所需的 azure cosmos 所在的 Azure 资源组名称。回退到 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_AZURE_COSMOS_DEFAULT='azure-cosmos://https%3A%2F%2Fairflow.azure.com:master%20key@?database_name=mydatabase&collection_name=mycollection'