SAP ABAP 通过 https 消费外部 API 遇到错误消息 SSSLERR_SSL_CONNECT

2885 篇文章 306 订阅

错误消息:

500 Native SSL error :

SSL handshake with api.uat 443 failed: SSSLERR_SSL_CONNECT -57

SAPCRYPTO:SSL_connect failed

received a fatal TLS1.0 internal_error alert from the peer

这个错误是关于 ABAP 作为客户端,无法通过 https 向提供 API 的外部服务器建立安全链接。

已经按照网上的方式使用事务码 strust 导入了 ssl 证书。

SAP 社区有人遇到类似的问题,没有得到解答。

在这个 github issue 里有解答。

有网友已经成功在 7.5 SP027.4 SP05 两个不同的版本上解决了这个错误。

这是纯粹 SAP basis 的技术领域。

7.5 SP02

按照 SAP note 510007介绍的配置来进行 SAP ABAP SSL 服务器端配置。

7.4 SP05

  • 执行 SAP note 510007 的 Step 7.

  • Download SAP Cryptographic Library, 链接在此

  • 解压之后,将文件拷贝到这个路径下:
    \usr\sap<SID>\SYS\exe\run

  • 重启服务器

注:在 SAP 内部有专门的团队来处理此类服务器配置问题。我对此类配置问题知之甚少,以上来自 Google 搜索,我没有真正动手尝试过(在我们工作的 SAP 系统上,我没有足够的权限)。

补充 - 什么是 SSL handshake?

SSL handshake是一种SSL/TLS协议中的握手协议,用于在客户端和服务器之间建立安全通信连接。它是在SSL/TLS握手协议的开始阶段完成的,通过几个步骤来协商密钥、验证对方身份、建立安全通道等。

SSL handshake的过程大致如下:

  • 客户端向服务器发起SSL连接请求。
  • 服务器回应客户端,发送其数字证书,证书包含服务器的公钥和服务器信息。
  • 客户端验证服务器的数字证书是否有效和合法,如果合法,则生成一个随机数作为加密密钥。
  • 客户端使用服务器的公钥加密生成的随机数,并发送给服务器。
  • 服务器使用自己的私钥解密客户端发送过来的随机数,然后使用该随机数生成加密密钥。
  • 服务器将使用该加密密钥来加密数据,并将其发送给客户端。
  • 客户端也使用该加密密钥来加密数据,并将其发送给服务器。
  • SSL handshake结束,客户端和服务器之间建立了安全通信连接。

SSL handshake的目的是建立客户端和服务器之间的安全通信连接,确保通信的机密性、完整性和可信度。它是SSL/TLS协议中非常重要的一个环节,也是保证通信安全的关键所在。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

汪子熙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值