ABAP 发送HTTPS报错 ICM_HTTP_SSL_PEER_CERT_UNTRUSTED

ABAP向第三方发送HTTPS请求时候,报错ICM_HTTP_SSL_PEER_CERT_UNTRUSTED。
1、使用事务码SMICM分析ABAP代码发起的HTTP请求的错误
(1)Goto->Trace Level->Set设置跟踪级别:3
(2)然后点Trace File->Reset, 把到目前为止生成的跟踪文件清空,这样再重现HTTP错误之后生成的日志文件尺寸较小,便于分析
(3)重新执行引起HTTP错误的ABAP程序,然后回到事务码SMICM, 选择Trace File->Display All
(4)然后把显示出来的trace文件保存到本地,就可以开始分析了
分析发下错误是:TLSERROR: Certificate verification failed [0xA0600203: Peer not trusted]
是SSL证书错误。
2、下载第三方SSL证书到本地
(1) 浏览器中输入网站,点击小锁

在这里插入图片描述
(2)找到证书 在这里插入图片描述
(3)下载证书到本地
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
3 事务码strust上传证书
在这里插入图片描述
4 事务码SMICM重启ICM 通知internet管理 使证书有效
在这里插入图片描述
在这里插入图片描述

### 下载并安装SAP ABAPGit 为了使ABAPGit能够正常工作,必须确保ABAP服务器支持HTTPS协议,并正确配置SSL证书。当尝试通过HTTPS访问外部资源时遇到`ICM_HTTP_SSL_PEER_CERT_UNTRUSTED`错误表明客户端未能验证服务器提供的SSL证书[^4]。 #### 处理SSL证书 对于ABAP环境中的HTTPS连接问题,可以通过以下方式解决: - 使用事务码`STRUST`进入SSL客户设置界面,在这里可以管理受信任的根CA证书以及中间件证书。如果目标站点(如github.com)使用的不是广为人知的信任中心签发的证书,则可能还需要手动获取该特定服务提供商的有效证书链,并将其导入到ABAP系统的可信库中[^5]。 - 对于具体的GitHub SSL证书下载操作,可以在浏览器中访问https://github.com页面,点击地址栏左侧的安全图标查看网站详情,导出其公钥证书保存至本地计算机;接着登录到ABAP系统内,继续使用`STRUST`工具上传先前获得的.pem格式文件来扩展已有的认证机构列表。 #### 实现HTTPS下载功能 一旦完成了必要的SSL/TLS配置调整后,便可在ABAP编程环境中编写用于发起安全HTTP GET请求的功能模块。下面给出一段简单的示例代码展示如何利用CL_HTTP_CLIENT类对象执行带SSL验证机制下的远程文件读取任务: ```abap DATA(lo_client) = NEW cl_http_client( ). lo_client->request->set_method( 'GET' ). lo_client->request->set_header_field( name = 'Host' value = 'example.github.com/path/to/file.ext' ). TRY. lo_client->send( ). IF lo_client->response IS BOUND AND lo_client->status_code EQ cl_http_utility=>sc_ok_200. DATA(lv_content) = lo_client->response->get_cdata( ). " Process downloaded content... ENDIF. CATCH cx_root INTO DATA(e). WRITE: / e->message_text. ENDTRY. ``` 这段伪代码片段展示了创建一个新的HTTP客户端实例并向指定URL发出GET方法调用的过程。需要注意的是实际应用开发过程中应当更加严谨地处理异常情况及响应状态码判断逻辑[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值