You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Terraform配置ADF链接SQL数据库时租户ID空值致连接失败

问题:Terraform创建ADF Azure SQL链接服务时认证失败,空tenant字段引发冲突

Terraform版本

1.2.3

AzureRM Provider版本

v3.13.0

受影响资源/数据源

  • Azure Data Factory(ADF)
  • SQL数据库

Terraform配置文件

resource "azurerm_data_factory_linked_service_azure_sql_database" "sqldatabase_linked_service_10102022" {
  count = (var.subResourcesInfo.sqlDatabaseName != "") ? 1 : 0
  depends_on = [azurerm_data_factory_integration_runtime_azure.autoresolve_integration_runtime,
  azurerm_data_factory_managed_private_endpoint.sqlserver_managed_endpoint]

  name            = "AzureSqlDatabase10102022"
  data_factory_id = azurerm_data_factory.datafactory.id

  integration_runtime_name = "AutoResolveIntegrationRuntime"
  use_managed_identity     = true
  connection_string = format("Integrated Security=False;Data Source=%s.database.windows.net;Initial Catalog=%s;",
    var.subResourcesInfo.sqlServerName,
  var.subResourcesInfo.sqlDatabaseName)
}

问题详情

配置的ADF链接服务连接数据库时失败,报错内容如下:

Operation on target DWH_DF_aaa failed: {'StatusCode':'DFExecutorUserError','Message':'Job failed due to reason: com.microsoft.dataflow.broker.InvalidOperationException: Only one valid authentication should be used for AzureSqlDatabase. ServicePrincipalAuthentication is invalid. One or two of servicePrincipalId/key/tenant is missing.','Details':''}

排查后发现:通过Terraform创建的链接服务对应的JSON文件中存在tenant=""的空值字段;而在ADF UI中直接创建的相同配置的链接服务,其JSON里无该字段,且可正常连接数据库。

期望结果

当Terraform代码未指定tenant_id参数时,生成的链接服务JSON不应包含空值的tenant字段,确保ADF与数据库正常连通。

内容的提问来源于stack exchange,提问作者Jaydeep Soni

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 04:40:27