Azure Logic Apps(标准版)集成ADP API:.crt&.key实现HTTPS请求问题
解决Azure Logic Apps(标准版)使用.crt和.key发送ADP API HTTPS请求的问题
核心问题分析
你之前的操作存在两个关键误区:
- 上传的
.csr是证书签名请求文件,并非可用的客户端证书,Logic Apps无法用它完成身份验证; - Logic Apps标准版仅支持PFX/PKCS#12格式的客户端证书(必须同时包含公钥
.crt和私钥.key),单独的crt/key或非标准格式文件都无法被正确加载。
具体解决步骤
将.crt和.key转换为PFX格式
用OpenSSL工具执行以下命令,把公钥和私钥打包成带密码的PFX文件:openssl pkcs12 -export -out adp-client-cert.pfx -inkey your-private-key.key -in your-certificate.crt执行时会要求设置密码,请务必记住这个密码,后续上传证书时需要用到。
上传PFX证书到Logic Apps证书库
- 打开你的Logic Apps(标准版)控制台,左侧菜单找到「证书」选项;
- 点击「上传」,选择刚生成的
adp-client-cert.pfx,设置一个友好名称(比如ADP-Client-Cert),输入之前设置的密码,完成上传。
在HTTP动作中配置客户端证书
- 添加或编辑HTTP请求动作;
- 展开「高级选项」,找到「客户端证书」下拉框,选择你刚才上传的证书友好名称;
- 确保HTTP请求的URL、请求方法、Headers(比如ADP要求的API密钥、授权头)和Postman里的配置一致。
清理无效配置
删除之前添加的WEBSITE_LOAD_ROOT_CERTIFICATES配置项,这个是用来加载根证书信任链的,和客户端身份验证无关,留着可能干扰配置。
测试验证
保存Logic Apps流程后触发运行,此时HTTP请求会自动带上PFX证书中的公钥和私钥,应该就能解决proper client SSL certificate was not presented的错误。
内容的提问来源于stack exchange,提问作者LittlwOne95
相关产品推荐
相关产品推荐

