2010-04-07 77 views
1

我有成功導入到瀏覽器中的PKCS#12密鑰庫,用於訪問需要雙向SSL身份驗證的服務器。可以完美地到達任何https網址。基於SSL的軸和使用PKCS#12密鑰庫的雙向身份驗證

但是,在使用Axis 1.4時,我無法訪問同一服務器中的URL,也無法訪問同一主機中的URL。給定軸Faultstring讓人:

javax.net.ssl.SSLHandshakeException:sun.security.validator.ValidatorException:PKIX路徑建設失敗:sun.security.provider.certpath.SunCertPathBuilderException:無法找到有效的認證路徑要求的目標

我的javax.net.ssl.{keyStore,keyStorePassword,keyStoreType}屬性似乎設置罰款。

我該如何解決這個問題?

回答

2

最後,使用Andreas Sterbenz的InstallCert將證書導入到我自己的信任庫中,並設置信任庫屬性(如here所示)的技巧!

6

如果您只想讓客戶端能夠調用SSL Web服務並忽略SSL證書錯誤,那麼我遇到了一個更簡單的答案。 (當然,你會不這樣做在生產,但可以肯定的是很方便的進行測試!)

只是把這個語句調用任何Web服務之前:

System.setProperty("axis.socketSecureFactory", 
    "org.apache.axis.components.net.SunFakeTrustSocketFactory"); 

,我發現這個在the Axis wiki

相關問題