0

我想设置两种方式 ssl(自签名证书)来调用从 wildfly 到 weblogic 的 web 服务端点。我已经测试了 weblogic 设置,它工作正常。现在,问题是我应该如何配置 wildfly 以建立与 weblogic 的连接。我已经尝试了standalone.xml 中的设置,如下所示:

<security-realm name="UndertowRealm">
                <server-identities>
                    <ssl>
                        <keystore path="space2_identity.jks" relative-to="jboss.server.config.dir" keystore-password="password" alias="space2i" key-password="password"/>
                    </ssl>
                </server-identities>
                <authentication>
                    <truststore path="space2_trust.jks" relative-to="jboss.server.config.dir" keystore-password="password"/>
                    <local default-user="$local" skip-group-loading="true"/>
                    <properties path="mgmt-users.properties" relative-to="jboss.server.config.dir"/>
                </authentication>
            </security-realm>


<https-listener name="https" verify-client="REQUIRED" security-realm="UndertowRealm" socket-binding="https"/>

如果我使用浏览器通过wildfly运行双向ssl,则上述设置成功。但是对于我的主要目的(在 wildfly 和 weblogic 之间调用 WS),我一直收到 bad_certification 错误,我怀疑当 wildfly 充当客户端角色时,wildfly 找不到我的密钥库和信任密钥库。这是因为如果我将自签名证书放入 jvm cacerts 文件中,则可以使用 weblogic 构建 ssl 的一种方式。但是,我尝试了很多方法来执行两种方式的 ssl,它一直告诉我 bad_certification 错误。我什至在standalone.conf.bat 中插入了以下几行:

set "JAVA_OPTS=%JAVA_OPTS% -Djavax.net.debug=ssl"  
set "JAVA_OPTS=%JAVA_OPTS% -Djavax.net.ssl.keyStore=D:/Keystore/space2_identity.jks"
set "JAVA_OPTS=%JAVA_OPTS% -Djavax.net.ssl.trustStore=D:/Keystore/space2_trust.keystore"
set "JAVA_OPTS=%JAVA_OPTS% -Djavax.net.ssl.keyStorePassword=password"
set "JAVA_OPTS=%JAVA_OPTS% -Djavax.net.ssl.trustStorePassword=password"
set "JAVA_OPTS=%JAVA_OPTS% -Djavax.net.ssl.trustStoreType=jks" 
set "JAVA_OPTS=%JAVA_OPTS% -Djavax.net.ssl.keyStoreType=jks"

尽管如此,bad_certification 还是收到了。我尝试了很多方法,我做错了什么?请帮助。非常感谢!

4

1 回答 1

0

在您的 JAVA_OPTS 中,信任库是space2_trust.keystore而您的 Undertow 配置中有space2_trust.jks

于 2016-10-17T08:26:04.387 回答