谬误音讯:
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 SP02
和 7.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 协定中十分重要的一个环节,也是保障通信安全的关键所在。