在WAS 6中安装.pfx文件并调用https webservice

时间:2015-12-14 10:14:58

标签: java web-services ssl certificate websphere

我对SSL,pfx文件等知之甚少。

我应该从我的应用程序(在由单独的团队管理的Linux服务器上的WAS 6上运行)调用https Rest webservice(这将是组织的内部服务),这是我正在进行的增强之一上。我曾经使用下面的作品。

    public class SSLInfo {
    public void sslContextInitialization() throws NoSuchAlgorithmException {
        SSLContext ctx = SSLContext.getInstance("TLS");
        try {
            ctx.init(new KeyManager[0],
                    new TrustManager[] { new DefaultTrustManager() },
                    new SecureRandom());
        } catch (KeyManagementException e) {
            e.printStackTrace();
        }
//      SSLContext.setDefault(ctx);
        HttpsURLConnection.setDefaultSSLSocketFactory(ctx.getSocketFactory());
    }
}


class DefaultTrustManager implements X509TrustManager {
    public DefaultTrustManager() {
    }

    public void checkClientTrusted(X509Certificate[] arg0, String arg1)
            throws CertificateException {
    }

    public void checkServerTrusted(X509Certificate[] arg0, String arg1)
            throws CertificateException {
    }

    public 509Certificate[] getAcceptedIssuers() {
        return null;
    }
}

我曾经在调用webservice之前调用了sslContextInitialization(),但是我觉得它不安全。

我现在被要求在服务电话之前删除所有这些代码行,并获得 .PFX文件以及用户名和密码。我被告知证书应该安装在WAS服务器上(服务器管理团队通知已经完成),然后我的应用程序将正常工作,没有任何SSL相关代码。我怀疑这是否是正确的做法。

现在我的应用程序已部署到没有ssl上下文初始化代码的服务器,我现在可以在应用程序日志中看到以下错误 -

java.net.SocketException:默认SSL上下文初始化失败:null

请帮助我理解这一点,并让我知道我的应用程序需要做些什么才能成功点击服务。

OR可以从我的应用程序本身完全处理,而无需在服务器中添加任何内容吗?如果是,请指导。

0 个答案:

没有答案