[英]How can I connect remotely to a WebSphere Server running on localhost?
[英]How i can connect secure to remote websphere server?
我使用AdminClient来安全连接到本地Websphere服务器:
java.util.Properties props = new java.util.Properties();
props.setProperty(AdminClient.CONNECTOR_TYPE, AdminClient.CONNECTOR_TYPE_SOAP);
props.setProperty(AdminClient.CONNECTOR_HOST, "localhost");
props.setProperty(AdminClient.CONNECTOR_PORT, "8880");
props.setProperty(AdminClient.CONNECTOR_SECURITY_ENABLED, "true");
props.setProperty(AdminClient.USERNAME, "admin");
props.setProperty(AdminClient.PASSWORD, "111111");
props.setProperty("javax.net.ssl.trustStore", "C:/WAS/AppServer/profiles/AppSrv01/etc/DummyClientTrustFile.jks");
props.setProperty("javax.net.ssl.keyStore", "C:/WAS/AppServer/profiles/AppSrv01/etc/DummyClientKeyFile.jks");
props.setProperty("javax.net.ssl.trustStorePassword", "WebAS");
props.setProperty("javax.net.ssl.keyStorePassword", "WebAS");
client = AdminClientFactory.createAdminClient(props);
工作完美。 但是,如果我尝试安全连接到远程URL(IP或主机名),则此代码不起作用,例如SSL例外。 我认为,证书文件中的问题:
props.setProperty("javax.net.ssl.trustStore", "C:/WAS/AppServer/profiles/AppSrv01/etc/DummyClientTrustFile.jks");
props.setProperty("javax.net.ssl.keyStore", "C:/WAS/AppServer/profiles/AppSrv01/etc/DummyClientKeyFile.jks");
我如何使用JAVA从远程服务器中检索此证书并与AdminClient建立安全连接?
您将需要提取远程签名者证书并将其导入本地WebSphere信任密钥库中。 为此,您可以使用ikeyman实用程序打开远程密钥库并导出证书,然后使用相同的实用程序将证书导入本地Websphere信任库。
SSL异常应该提供有关从远程服务器提取并导入到本地信任存储区中需要哪些签名者证书的线索。
看看http://www-01.ibm.com/software/webservers/httpservers/doc/v1312/ibm/9atikeyu.htm (“导出密钥”和“导入密钥”部分)
同样,这里已经解决了类似的问题:
我建议不要将其放入您的代码中,而是将WebSphere证书添加到Glassfish受信任的证书中。 因此,您需要执行以下步骤:
然后,您不再需要设置所有这些javax.net.ssl.*
属性。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.