2017-06-02 87 views
0

我有一个关于在jetty服务器中配置SSL的问题。使用pfx文件在jetty服务器中配置SSL

我知道我们可以使用keystore和truststore在jetty服务器中启用SSL。但我有一个pfx文件。我可以直接使用它,而不是将其转换为密钥库信任库 jks文件。

参考代码:

http://www.programcreek.com/java-api-examples/index.php?api=org.eclipse.jetty.util.ssl.SslContextFactory

http://git.eclipse.org/c/jetty/org.eclipse.jetty.project.git/tree/examples/embedded/src/main/java/org/eclipse/jetty/embedded/LikeJettyXml.java

回答

1

PFX文件实际上PKCS12密钥库。所以如果你有一个选项来设置keystore类型(我不确定在Jetty中的位置),你可以直接使用它们。

参见:http://wiki.eclipse.org/Jetty/Howto/Configure_SSL#Configuring_Jetty

您必须将keyStoreTypetrustStoreType集添加到PKCS12。我用Karaf容器的方式使用它(对于一些旧版本)。

在你挂我看到keystoreType(精简版/嵌入式?)没有选项的代码,那么你一定会JKS存储类型,你必须将密钥存储转换

+0

当我使用PKCS12与PFX文件,我得到:java.security.invalidkeyexception:非法密钥大小异常。你知道如何解决这个问题吗? – Kumar

+0

@Kumar如果密钥的长度为2048bit或更多,则需要安装JCE Unlimited Strength Policy – gusto2

+0

是的,它默认安装在JDK 1.7中。不是吗? – Kumar