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

相关推荐
yi碗汤园3 小时前
MQTT消息队列遥测传输协议
网络·网络协议·unity
花间相见5 小时前
【后端开发|网络编程】—— 五种实时通信方案全解析:短轮询、长轮询、SSE、MQTT、WebSocket
后端·网络协议
Huangjin007_5 小时前
【Linux 系统篇(二十一)】进程(九):进程等待 wait/waitpid、status状态参数
linux·运维·服务器
ao-weilai6 小时前
Linux网络编程:Socket UDP
linux·服务器·网络·c++
曦夜日长6 小时前
Linux系统篇,进程概念(四):内核链表的深度理解、进程优先级的底层理解
linux·运维·服务器·php
Wang's Blog6 小时前
Java 接入Redis: Redis下载与源码编译安装
java·服务器·redis
Ivanqhz7 小时前
矩阵引擎的数据流模式与 BM1684X 架构
java·服务器·网络·深度学习·神经网络
爱喝水的鱼丶8 小时前
SAP-ABAP:SAP 权限控制深度解析:自定义程序与标准事务码的边界与协同
性能优化·sap·abap·权限·开发交流·交流学习
其实防守也摸鱼8 小时前
DeepSeek Harness 开源贡献手记:从入门到合入主线
服务器·数据库·windows·https·ssl