Wso2 如何将客户端证书发送到后端?

Wso2 如何将客户端证书发送到后端?,wso2,wso2-am,Wso2,Wso2 Am,我创建了一个小型spring引导应用程序,其中包含一个REST端点,该端点由x509证书保护 有了邮递员,我可以称之为REST端点。因此,我必须禁用“SSL证书验证”,并为服务添加证书(主机、CRT文件、密钥文件和密码短语)。当然,主机是“localhost” 在下一步中,我想将WSO2 Api管理器放在邮递员和我的服务之间 所以我发布了API,将我的服务的crt文件导入WSO2信任库。 此外,我在axis2.xml中设置了require 现在,我调用在WSO2 API Store中配置的端点,

我创建了一个小型spring引导应用程序,其中包含一个REST端点,该端点由x509证书保护

有了邮递员,我可以称之为REST端点。因此,我必须禁用“SSL证书验证”,并为服务添加证书(主机、CRT文件、密钥文件和密码短语)。当然,主机是“localhost”

在下一步中,我想将WSO2 Api管理器放在邮递员和我的服务之间

所以我发布了API,将我的服务的crt文件导入WSO2信任库。 此外,我在axis2.xml中设置了require

现在,我调用在WSO2 API Store中配置的端点,并在控制台中始终获得: [2019-08-30 17:15:06941]错误-SourceHandler I/O错误:空证书链 javax.net.ssl.SSLHandshakeException:空证书链

更新: 我按照文档中的说明进行操作,但仍然不起作用。现在例外是“坏证书”

为了避免误解,我画了一个概述:

这就是我正在试验的当前状态。 正如您在下面一节中所看到的,WSO2应该将客户端证书转发到安全后端。 你也可以看到,我有多个客户

更新2


我认为我的用例的正确术语是所谓的“客户端和API网关之间的相互SSL”。internet中有带有自定义处理程序的指南,但此指南不起作用,因为证书始终为空

如果要使用MTL对后端进行身份验证,则不需要设置
require=true
。(如果要保护网关API URL MTLS,则使用该配置)

对于您的用例,请遵循此文档


谢谢您的评论。不幸的是,医生没有帮助。为了避免误解,我更新了我的帖子,并附上了一张当前状态的图。