创建新Linked Services时返回InvalidCredentialReference错误求助
Azure Data Factory 连接 SQL 数据库问题排查方案
一、用户分配托管身份(User Assigned MI)报错 InvalidCredentialReference
- 核对凭据关联的身份:进入Linked Service配置页,确认新建的凭据
c1是否正确绑定了你在SQL Server资源中创建的托管身份,避免选错身份实例。 - 给托管身份赋予数据库权限:在Azure SQL数据库的查询编辑器中执行以下SQL命令(替换
[你的MI名称]):CREATE USER [你的MI名称] FROM EXTERNAL PROVIDER; ALTER ROLE db_datareader ADD MEMBER [你的MI名称]; ALTER ROLE db_datawriter ADD MEMBER [你的MI名称]; -- 按需添加写入权限 - 提前创建凭据:不要在Linked Service配置流程中临时新建凭据,先到Data Factory的管理 -> 凭据页面完成凭据与目标MI的绑定,再回到Linked Service中选择已创建好的凭据,减少配置遗漏。
二、SQL身份验证无密码/重置密码无反应
- 确认SQL Server管理员配置:进入Azure SQL Server资源的SQL管理员页面,若未设置管理员账号,直接指定用户名和密码即可。
- 用CLI重置密码:若页面操作无响应,执行以下Azure CLI命令(替换占位符):
az sql server update --name <你的SQL服务器名> --resource-group <你的资源组名> --admin-password <新密码> - 排除浏览器缓存问题:换用无痕模式或其他浏览器尝试重置操作。
三、系统分配托管身份(System Assigned MI)报错「检查链接服务配置是否正确,并确保SQL数据库防火墙允许集成运行时访问。用户''登录失败。」
- 配置防火墙规则:进入SQL Server的防火墙和虚拟网络页面,勾选「允许Azure服务和资源访问此服务器」,或者添加Data Factory集成运行时的出站IP(在Data Factory的集成运行时 -> Azure IR页面查看)。
- 给系统分配MI赋予数据库权限:在SQL数据库中执行以下命令(替换
[你的Data Factory名称]):CREATE USER [你的Data Factory名称] FROM EXTERNAL PROVIDER; ALTER ROLE db_datareader ADD MEMBER [你的Data Factory名称];
内容的提问来源于stack exchange,提问作者KristiLuna
相关产品推荐
相关产品推荐

