我有如下部署模式
消费者应用程序(浏览器)->API 管理器 API -> 后端 ELB CNAME (XYZ.com) -> 后端 ELB (SSLcert1-ABC.com) -> 后端服务 (SSLcert1-ABC.com)。
后端服务是使用通用证书创建的(证书 CN 与主机名或主机 IP 不匹配)。同样导入ELB。但是,后端 ELB CNAME 不同于后端服务证书的 CN。现在,我们已经将后端服务证书导入到 wso2 api 管理器的客户端信任库中。当我们使用 ABC.com 从 wso2 api 管理器发起对后端 ELB 的调用时,它会提示 domain!=certname of backend。这是真的。此外,我们还启用了 Hostnameverifier->AllowAll。我们已经用::1 ABC.com XYZ.com 的条目修改了/etc/hosts 文件以指示两者相同。但仍然无法解决“请求的域!=后端的证书名称”的问题。 知道如何解决这个问题吗?
最佳答案
在 APIM 2.0.0 中,要求您放入 APIM 的客户端信任库的证书的 CN 与直接客户端的主机名相同,在您的情况下是后端 ELB。
关于wso2 api 管理器中的 SSL 证书配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41324404/