2017-06-02 65 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