Wso2 Ei 6.3 自签名认证错误
Wso2 Ei 6.3 self signed certification error
我在尝试从基于反应的前端应用程序调用任何 API https://:8243/ 时遇到认证错误。我在 wso2 EI 6.3 中定义了我的休息 API。我没有使用 wso2 APIM.
我为解决此问题所做的工作:
1. 我创建了一个新的自签名证书并创建了一个新的密钥库。更新了 carbon.xml、axis2.xml 文件。重新启动服务器。我可以在 wso2 Ei GUI 中看到我的证书。
2. 我在浏览器中接受了证书。
但我仍然无法摆脱这个错误。
这个错误是由于自签名证书引起的吗?如果我将使用任何 CA 签名证书,那么不会出现此问题?
非常感谢任何帮助或指示。
[2020-04-07 08:54:48,841] [-1] [] [HTTPS-Listener I/O dispatcher-2] ERROR {org.apache.synapse.transport.passthru.SourceHandler} - I/O error: Received fatal alert: certificate_unknown
javax.net.ssl.SSLException: Received fatal alert: certificate_unknown
at sun.security.ssl.Alerts.getSSLException(Alerts.java:208)
at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1647)
at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1615)
at sun.security.ssl.SSLEngineImpl.recvAlert(SSLEngineImpl.java:1781)
at sun.security.ssl.SSLEngineImpl.readRecord(SSLEngineImpl.java:1070)
at sun.security.ssl.SSLEngineImpl.readNetRecord(SSLEngineImpl.java:896)
at sun.security.ssl.SSLEngineImpl.unwrap(SSLEngineImpl.java:766)
at javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:624)
at org.apache.http.nio.reactor.ssl.SSLIOSession.doUnwrap(SSLIOSession.java:245)
at org.apache.http.nio.reactor.ssl.SSLIOSession.doHandshake(SSLIOSession.java:280)
at org.apache.http.nio.reactor.ssl.SSLIOSession.isAppInputReady(SSLIOSession.java:410)
at org.apache.http.impl.nio.reactor.AbstractIODispatch.inputReady(AbstractIODispatch.java:119)
at org.apache.http.impl.nio.reactor.BaseIOReactor.readable(BaseIOReactor.java:159)
at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:338)
at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:316)
at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:277)
at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:105)
at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:586)
at java.lang.Thread.run(Thread.java:748)
BR//
维宾尼尔瓦尔
您可以尝试通过在 EI 服务器中启用 SSL 调试日志来自行调试。在 SSL 日志中,您可以检查客户端证书和服务器证书是否匹配。看看下面的博客。
https://medium.com/@nipunadilhara/enabling-ssl-debug-logs-for-wso2-products-30833d5de88e
我能够解决这个问题。我按照以下步骤操作。
我首先创建了一个自我 CA。然后创建了一个由我自己的 CA 签名的证书。将我的 CA 的根证书导入浏览器因为这个 CA 需要被浏览器信任。
更新 carbon.xml 后,axis2 目录和 catalina-server.xml 文件中包含正确的 jks 文件和密钥库密码。
重新启动服务器。
我在尝试从基于反应的前端应用程序调用任何 API https://:8243/ 时遇到认证错误。我在 wso2 EI 6.3 中定义了我的休息 API。我没有使用 wso2 APIM.
我为解决此问题所做的工作: 1. 我创建了一个新的自签名证书并创建了一个新的密钥库。更新了 carbon.xml、axis2.xml 文件。重新启动服务器。我可以在 wso2 Ei GUI 中看到我的证书。 2. 我在浏览器中接受了证书。
但我仍然无法摆脱这个错误。
这个错误是由于自签名证书引起的吗?如果我将使用任何 CA 签名证书,那么不会出现此问题? 非常感谢任何帮助或指示。
[2020-04-07 08:54:48,841] [-1] [] [HTTPS-Listener I/O dispatcher-2] ERROR {org.apache.synapse.transport.passthru.SourceHandler} - I/O error: Received fatal alert: certificate_unknown
javax.net.ssl.SSLException: Received fatal alert: certificate_unknown
at sun.security.ssl.Alerts.getSSLException(Alerts.java:208)
at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1647)
at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1615)
at sun.security.ssl.SSLEngineImpl.recvAlert(SSLEngineImpl.java:1781)
at sun.security.ssl.SSLEngineImpl.readRecord(SSLEngineImpl.java:1070)
at sun.security.ssl.SSLEngineImpl.readNetRecord(SSLEngineImpl.java:896)
at sun.security.ssl.SSLEngineImpl.unwrap(SSLEngineImpl.java:766)
at javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:624)
at org.apache.http.nio.reactor.ssl.SSLIOSession.doUnwrap(SSLIOSession.java:245)
at org.apache.http.nio.reactor.ssl.SSLIOSession.doHandshake(SSLIOSession.java:280)
at org.apache.http.nio.reactor.ssl.SSLIOSession.isAppInputReady(SSLIOSession.java:410)
at org.apache.http.impl.nio.reactor.AbstractIODispatch.inputReady(AbstractIODispatch.java:119)
at org.apache.http.impl.nio.reactor.BaseIOReactor.readable(BaseIOReactor.java:159)
at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:338)
at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:316)
at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:277)
at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:105)
at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:586)
at java.lang.Thread.run(Thread.java:748)
BR// 维宾尼尔瓦尔
您可以尝试通过在 EI 服务器中启用 SSL 调试日志来自行调试。在 SSL 日志中,您可以检查客户端证书和服务器证书是否匹配。看看下面的博客。
https://medium.com/@nipunadilhara/enabling-ssl-debug-logs-for-wso2-products-30833d5de88e
我能够解决这个问题。我按照以下步骤操作。 我首先创建了一个自我 CA。然后创建了一个由我自己的 CA 签名的证书。将我的 CA 的根证书导入浏览器因为这个 CA 需要被浏览器信任。 更新 carbon.xml 后,axis2 目录和 catalina-server.xml 文件中包含正确的 jks 文件和密钥库密码。 重新启动服务器。