2010-10-22 27 views
0

我正在尝试使用PKCS12密钥库以SSL模式运行jetty web服务器。代码如下:如何使用PKCS12密钥库以SSL模式运行jetty服务器?

import org.mortbay.jetty.Server; 
import org.mortbay.jetty.security.SslSelectChannelConnector;
class MyClass { public static void main(String[] args) { Server server = new Server(); SslSelectChannelConnector connector = new SslSelectChannelConnector(); connector.setKeystore(keyStore); connector.setKeyPassword(keyPass); connector.setKeystoreType("PKCS12"); server.addConnector(connector); server.start(); } }

码头能够正常运行。但是,当我尝试在网络浏览器中使用https连接到码头时,我收到以下消息。 javax.net.ssl.SSLHandshakeException:没有共同的密码套件

但是,如果我使用JKS密钥库文件,我可以使用https连接到jetty服务器。 任何人都可以告诉我什么可能是问题,或使用JKS以外的密钥库类型时需要注意哪些事情。

回答

2

有两个密码可以使用KeyStore的私钥:存储密码和密钥密码。对于PKCS#12密钥库,密码与商店和密钥相同。

密钥存储的密码通过setPassword(String)SslSelectChannelConnector中设置。尝试添加:

connector.setPassword(keyPass); 
+0

非常感谢您的回复。它的工作现在... – Newbie 2010-10-25 05:34:51

相关问题