SAP PI 配置SSL链接接口报错问题处理Peer certificate rejected by ChainVerifier

出现这种情况一般无非是没有正确导入证书或者证书过期的情况

第一种,如果没有导入证书的话,需要在NWA中的证书与验证-》CAs中导入管理员提供的证书,这里需要注意的是,需要导入完整的证书链。

第二种如果是证书过期的,可以直接导入新的证书,如果出现冲突的情况需要把对应的证书删除,然后再导入新的证书,以下是SAP提供的原因解释3076281:

  1. Make sure that backend server's certificate chain has correct hostname and does not include unsupported characters. Also make sure there is no other certificate with the same value of Subject existing in TrustedCAs. Two certificates with the same Subject value can't co-exist in one keystore view. If it exists, then at runtime, during SSL handshake, a lookup is done only once based on Subject value thus can results in titled error, finally cause SSL failure.
    For example:
    AS Java AAA is SSL client. AS ABAP BBB is SSL server and AS ABAP CCC is another SSL server. Both BBB and CCC has SSL certificate with same Subject value but the serial number is different. Such as:

    BBB:
    Subject: CN=*.test.sap.com OU=DE
    Serial Number: 00:01:02:03:04

    CCC:
    Subject: CN=*.test.sap.com OU=DE
    Serial Number:00:05:06:07:08

    Even though both BBB and CCC SSL certificates get imported into TrustedCAs, however at runtime when AAA try to communicate with BBB and CCC. Only one of them work, while the other one will always end with titled error.

  2. If server contains wildcard value "*", check hints from the resolution part of the KBA apart from the fact that it is PI system or not: 2222086 - Peer certificate rejected by ChainVerifier in PI File Adapter.

  3. Make sure that backend server's certificate chain's order is correct .
    For example:
    SSL server has certificate chain like following:
    Cert 0 Subject: CN=*.test.sap.com; Issuer: CN=aaa
    Cert 1 Subject: CN=aaa; Issuer: CN=bbb
    Cert 2 Subject: CN=bbb; Issuer: CN=ccc
    Cert 3 Subject: CN=ccc; Issuer: CN=ccc
    In this case, Cert 1 Cert 2 are intermediate certificates and Cert 3 is root certificate. Thus need to import Cert 1 Cert 2 and Cert 3 to make Certification Revocation Check get passed correctly.

  4. Make sure that backend server's certificate chain is complete and has root CA. Each CRL is digitally signed by its CA. Therefore, to verify the digital signature provided with the CRL, the corresponding CA root certificate needs to be imported into a keystore view on the AS Java. There should be at least a ServerCertChain1 part that would include the root certificate as a subject.

  5. In AS JAVA, go toNetweaver Administrator -> Configuration tab -> Security -> Certificates and Keys -> Key Storage tab -> TrustedCAs.

  6. Select theTrustedCAs view and click Import Entry button.

  7. Import the certificate chain provided by the SSL server.

但需要注意的是,可能还会出现类似的报错情况,这个时候可以通过xpi_inspector工具对rest接口进行检测,查看具体的报错异常,如果还是由于证书不匹配的情况导致,可以在工具里面导出对应的证书2056672

相关推荐
·薯条大王9 分钟前
经济实惠玩云服务器|一台云服务器多人共用,子账号配置教程
java·linux·运维·服务器·汇编·c++·python
caimouse2 小时前
TDI (传输驱动接口 Transport Driver Interface) 详细分析
网络协议
ZJH__GO3 小时前
网络编程v4pro--实现聊天室文件传输功能
java·服务器·网络·计算机网络
小小、码农3 小时前
Linux进程控制:从fork到exec,手写一个简易Shell
linux·运维·服务器
不会就选b4 小时前
Linux之进程间通信(二)---模拟进程池
linux·运维·服务器
NeilYuen4 小时前
用UDP实现向DNS服务器请求IP地址
服务器·tcp/ip·udp
shengnan_wsn5 小时前
【协议】【TCP】
网络·网络协议·tcp/ip
沫璃染墨6 小时前
《从零入门Linux系统篇(十五):系统工具篇·六——GDB调试器详解:从程序执行控制到高级调试技巧》
linux·运维·服务器·c语言·c++
消失的旧时光-19436 小时前
第 3 篇:机器人 TCP 长连接如何稳定运行?心跳、掉线检测与自动重连
网络协议·tcp/ip·机器人
AIgorithmGEEK6 小时前
Linux 环境变量完全指南:从入门到理解底层原理
linux·运维·服务器