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

举报
汪子熙 发表于 2023/04/22 16:53:23 2023/04/22
【摘要】 错误消息:500 Native SSL error :SSL handshake with api.uat 443 failed: SSSLERR_SSL_CONNECT -57CRYPTO:SSL_connect failedreceived a fatal TLS1.0 internal_error alert from the peer这个错误是关于 ABAP 作为客户端,无法通过 h...

错误消息:

500 Native SSL error :

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

CRYPTO:SSL_connect failed

received a fatal TLS1.0 internal_error alert from the peer

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

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

社区有人遇到类似的[问题](https://answers. .com/questions/12559357/error-ssslerrsslconnect-when-trying-to-access-aws-.html),没有得到解答。

在这个 github issue 里有解答。

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

这是纯粹 basis 的技术领域。

7.5 SP02

按照 [ note 510007](https://launchpad.support. .com/#/notes/510007)介绍的配置来进行 ABAP SSL 服务器端配置。

7.4 SP05

  • 执行 note 510007 的 Step 7.

  • Download Cryptographic Library, 链接[在此](https://launchpad.support. .com/#/softwarecenter/search/ CRYPTOLIB)。

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

  • 重启服务器

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

补充 - 什么是 SSL handshake?

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

SSL handshake的过程大致如下:

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

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

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。