Azure Data Factory ODBC链接服务权限错误求助,SHIR测试正常
解决ADF ODBC链接服务权限拒绝错误(ERROR [IM003])
核心原因分析
SHIR测试连接成功但ADF创建链接服务失败,核心问题是ADF运行SHIR的服务账户权限不足——你手动测试用的是当前登录用户,但SHIR默认以NT SERVICE\DIAHostService账户运行,这个账户没有访问驱动文件所在目录(C:\Users\X\Desktop\OpenEdge-11.7)的权限。
具体修复步骤
调整驱动目录权限
找到驱动所在的C:\Users\X\Desktop\OpenEdge-11.7文件夹,右键「属性」→「安全」→「编辑」,添加NT SERVICE\DIAHostService账户,赋予它读取和执行、列出文件夹内容、读取权限,应用后确认。切换为系统DSN配置
如果之前用的是用户DSN,建议改成系统DSN——用户DSN仅对当前登录用户可见,SHIR服务账户无法读取;系统DSN对所有账户可见,适配SHIR的运行环境。验证SHIR服务运行账户
打开「服务」控制台,找到「Azure Data Factory Integration Runtime Host Service」,确认其登录账户。如果是自定义账户,需确保该账户拥有驱动目录的访问权限,以及ODBC数据源的访问权限。重启SHIR并重新测试
完成权限调整后,重启SHIR服务,回到ADF重新创建链接服务并测试连接。
额外注意事项
- 避免将驱动安装在用户桌面目录(
C:\Users\X\Desktop),这类目录默认权限限制严格,建议移至公共目录(如C:\Program Files\Progress\OpenEdge-11.7)后重新配置权限和DSN。 - 确认驱动架构与SHIR匹配:若SHIR为64位,必须安装64位的Progress OpenEdge驱动,32位驱动无法在64位SHIR环境下加载。
内容的提问来源于stack exchange,提问作者Ebelly
相关产品推荐
相关产品推荐

