我为我的一个项目设置了Weblogic 9.2的双向SSL。当浏览器是客户端时,设置并不困难。
我现在需要将tomcat设置为客户端,而不是使用浏览器客户端。在这种情况下,Tomcat将托管JSP页面或servlet并调用Weblogic上托管的Web服务。我有谷歌搜索,但没有找到这个设置的文档。任何想法 - 在这种情况下将设置HTTPS连接器吗?
谢谢
答案 0 :(得分:1)
最后我能够通过以下方式进行配置。
为Weblogic服务器设置SSL 生成服务器私钥和证书
java utils.CertGen -selfsigned -certfile SelfCA.cer -keyfile SelfKey.key -keyfilepass password -cn "localhost"
创建身份密钥库
java utils.ImportPrivateKey -keystore IdentityStore.jks -storepass password -keypass password -alias trustself -certfile SelfCA.cer.pem -keyfile SelfKey.key.pem -keyfilepass password
将证书导入新的信任密钥库
keytool -import -trustcacerts -alias trustself -keystore truststore.jks -file SelfCA.cer.der -keyalg RSA
当提示“输入密钥库密码”时,请输入“keypassword”
登录WL管理控制台(http://www.xyz.com:7001/console)(默认用户名= weblogic和密码= weblogic)。在我的例子中,我开始了“Weblogic Example Server”
导航到服务器 - >示例服务器 - >密钥库。
点击“锁定并编辑”
输入以下信息
密钥库下拉菜单:选择“自定义标识和自定义信任”
自定义标识密钥库:[LOCATION] \ IdentityStore.jks
自定义缩进密钥库类型:JKS
自定义标识密钥库密码:密码
自定义信任密钥库:[LOCATION] \ truststore.jks
自定义信任密钥库类型:JKS
自定义信任密钥库密码:keypassword`
导航到SSL标签。输入以下信息
身份和信任位置:密钥库
私钥别名:trustself
私钥密码:密码
设置Tomcat客户端
为Tomcat生成证书
keytool -genkey -alias client -keyalg RSA -validity 3650 -keystore client.jks -storepass abcd1234 -keypass abcd1234
keytool -export -alias client -keystore client.jks -storepass abcd1234 -file client.cer
将证书导入上面创建的信任库
keytool -import -trustcacerts -alias trustclient -keystore truststore.jks -file client.cer -keyalg RSA
在文本编辑器中打开[TOMCAT-INSTALL-LOCATION] \ bin \ catalina.bat。 在第187行
之后添加以下条目 set JAVA_OPTS=%JAVA_OPTS% -Djavax.net.ssl.trustStore=C:/certs2/truststore.jks -Djavax.net.ssl.trustStorePassword=keypassword -Djavax.net.ssl.keyAlias=trustcleint
set JAVA_OPTS=%JAVA_OPTS% -Djavax.net.ssl.keyStore=C:/certs2/client.jks -Djavax.net.ssl.keyStorePassword=abcd1234
启动tomcat。
<强>测试强>
构建Web应用程序并在Tomcat中部署。从Web应用程序中的JSP页面调用WebLogic中部署的Web服务https://www.xyz.com:7002/jws_basic_simple/SimpleService
的sayHello()方法。