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

Azure Data Factory实时模式下使用KeyVault链接服务报NotFound错误

解决实时模式Data Factory引用KeyVault机密报错DEDICATED_DPERRORCODE0的问题

针对实时模式ADF(adf-qa)引用KeyVault机密失败,但Git模式ADF(adf-dev)配置相同却正常的问题,以下是针对性排查和解决步骤:

1. 检查KeyVault访问策略权限

  • 确认ADF系统托管标识的KeyVault访问策略中,已明确授予机密的Get和List权限,且权限范围覆盖目标机密(选择"所有机密"或指定正确机密名称)。注意:KeyVault的RBAC角色(如Contributor)无法替代访问策略的机密权限,两者需同时配置。
  • 验证添加的身份为ADF的系统托管标识,而非服务主体。实时模式ADF默认使用系统托管标识访问KeyVault,误加服务主体会导致权限失效。

2. 验证机密引用准确性

  • 确保SQL链接服务中引用的机密名称与KeyVault中的名称完全匹配,包括大小写、特殊字符(KeyVault机密名称大小写敏感)。
  • 尝试两种机密引用格式测试:
    • 完整URI格式:@Microsoft.KeyVault(SecretUri=https://kv-common.vault.azure.net/secrets/your-secret-name/)
    • 分离参数格式:@Microsoft.KeyVault(VaultName=kv-common;SecretName=your-secret-name)

3. 处理实时模式ADF的特殊配置问题

  • 实时模式ADF可能存在配置缓存,尝试删除并重新创建KeyVault链接服务,再重新配置SQL链接服务,避免旧缓存干扰。
  • 确认ADF与KeyVault处于完全相同的Azure区域(如均为"East Asia",而非跨细分区域),跨区域访问可能存在隐性限制。
  • 查看KeyVault的Azure活动日志,搜索"Get Secret"操作,定位失败请求的身份信息及具体错误原因(如权限不足、机密不存在),精准定位问题。

4. 对比两种模式的配置差异

  • 导出adf-dev的SQL链接服务和KeyVault链接服务的ARM模板,与adf-qa的配置逐一对比,重点检查:
    • KeyVault链接服务的enableManagedIdentity是否设为true
    • SQL链接服务中机密引用的参数是否完全一致
    • 是否存在Git模式下通过ARM部署自动设置,但实时模式需手动配置的隐藏参数

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 02:00:09