Azure Data Factory复制活动从API取数报SSL/TLS信任错误解决方法
问题根因
报错核心是复制数据活动调用API时,SSL/TLS证书信任校验未通过,和Web活动调用正常的差异来自两个活动的运行逻辑区别:
- Web活动运行在ADF前端公有云节点,证书校验逻辑宽松,内置了绝大多数公共CA根证书,可兼容部分证书链不完整的场景
- 复制数据活动的REST连接器证书校验逻辑严格,且如果使用自托管集成运行时(SHIR),校验逻辑完全依赖运行SHIR的本地服务器证书存储,不会做自动兼容。
常见触发原因包括:
- API使用自签名证书、内部私有CA签发证书,未被复制活动所用的集成运行时节点信任
- API服务端配置的SSL证书链不完整,未返回完整的中间CA证书
- SSL证书已过期、未到生效时间,或证书绑定域名与实际调用的API域名不匹配
- 自托管IR所在服务器经过企业防火墙/代理做SSL流量解密,代理替换的根证书未被服务器信任
- 复制活动配置的TLS版本与API服务端要求不匹配,比如服务端仅支持TLS 1.2及以上,活动默认用低版本TLS
排查解决步骤
- 确认集成运行时类型
打开复制活动对应的REST链接服务,确认当前使用的是Azure自动解析IR还是自托管IR。 - 分场景修复证书问题
- 若使用自托管IR:
- 登录SHIR所在的服务器,直接在服务器本地调用API地址,查看是否弹出证书不受信任的提示
- 若存在证书报错,将API对应的根CA证书、中间CA证书导入到服务器「本地计算机」级别的
受信任的根证书颁发机构存储中;如果是企业代理做SSL解密,同步将企业代理根证书导入该存储 - 导入完成后重启SHIR主机服务,再重新执行复制活动
- 若使用Azure自动解析IR:
- 在公网环境直接用浏览器访问API地址,检查地址栏是否有证书错误提示,点进证书详情确认证书有效期、绑定域名、证书路径是否完整
- 如果是自签名/私有CA签发的公网不可信证书,优先换成自托管IR部署证书信任,或者临时在REST链接服务配置中开启跳过服务器证书验证(该配置会降低传输安全性,生产环境禁止长期开启)
- 校验TLS版本匹配
确认API服务端支持的TLS版本,在复制活动源配置中,将TLS版本选项设置为和服务端匹配的值,优先选择TLS 1.2。 - 问题定位验证
测试阶段可以先在REST链接服务中勾选「跳过服务器证书验证」,如果勾选后复制活动可正常运行,即可100%确认问题来自证书信任环节,再按上述步骤完成正式证书配置即可。
内容的提问来源于stack exchange,提问作者user3264602
相关产品推荐
相关产品推荐

