0
我有Jersey應用程序,它使用Jersey客戶端來請求服務器。服務器使用客戶端證書和基本身份驗證進行通信。我有證書在GlassFish中Java澤西島不發送ssl客戶端證書
服務器證書鏈安裝信任庫和密鑰庫正確: 服務器證書 - > CA國際 - > CA
客戶端證書鏈: 客戶端證書 - > CA國際 - > CA
CA是自行創建/簽署的證書,而不是來自供應商。
信任:
1)CA
2)CA間
密鑰庫:
1)具有完整鏈的客戶端證書
代碼:(存儲在環境中設置)
sSLContext = SslConfigurator.newInstance().securityProtocol("TLSv1.2").createSSLContext();
HttpAuthenticationFeature authFeature = HttpAuthenticationFeature.basic("user", "pass");
client = ClientBuilder.newBuilder().sslContext(sSLContext).build();
client.register(authFeature);
所有證書和鏈都已正確加載。
然而,當我提出要求,我得到
Info: Warning: no suitable certificate found - continuing without client authentication
,然後我得到handshake_failure錯誤
我得到這些其他錯誤
Info: http-listener-1(3), setSoTimeout(0) called
Info: Ignoring unsupported cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 for TLSv1
Info: Ignoring unsupported cipher suite: TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 for TLSv1
Info: Ignoring unsupported cipher suite: TLS_RSA_WITH_AES_256_CBC_SHA256 for TLSv1
Info: Ignoring unsupported cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384 for TLSv1
Info: Ignoring unsupported cipher suite: TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384 for TLSv1
Info: Ignoring unsupported cipher suite: TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 for TLSv1
Info: Ignoring unsupported cipher suite: TLS_DHE_DSS_WITH_AES_256_CBC_SHA256 for TLSv1
Info: Ignoring unsupported cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 for TLSv1.1
Info: Ignoring unsupported cipher suite: TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 for TLSv1.1
Info: Ignoring unsupported cipher suite: TLS_RSA_WITH_AES_256_CBC_SHA256 for TLSv1.1
Info: Ignoring unsupported cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384 for TLSv1.1
Info: Ignoring unsupported cipher suite: TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384 for TLSv1.1
Info: Ignoring unsupported cipher suite: TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 for TLSv1.1
Info: Ignoring unsupported cipher suite: TLS_DHE_DSS_WITH_AES_256_CBC_SHA256 for TLSv1.1
我已經安裝了無限chiper擴展並檢查它的工作。仍然得到這些。
我也檢查了瀏覽器上的證書,我能夠通過瀏覽器連接到服務器並使用相同的證書獲取數據。
如何讓2路ssl工作?
我有兩個密鑰庫的cacerts .jks和keystore.jks,客戶的信任庫是什麼?我在服務器和客戶端鏈中都有CA和CA inter並且它們匹配。我有ca-certs.pem作爲apache服務器中的證書鏈集。包含CA證書。我已經驗證了服務器證書請求類型與客戶端中的一個存在匹配 – Akshit