首頁  >  文章  >  Java  >  如何修復'java.security.cert.CertificateException:不存在主題備用名稱”錯誤?

如何修復'java.security.cert.CertificateException:不存在主題備用名稱”錯誤?

Patricia Arquette
Patricia Arquette原創
2024-11-19 01:31:02304瀏覽

How to Fix the

修正「java.security.cert.CertificateException:不存在主題備用名稱」錯誤

使用Java 透過HTTPS 使用Web 服務時客戶端,您可能會遇到「java.security.cert.CertificateException:不存在主題備用名稱」錯誤。要解決此問題,請仔細按照以下步驟操作:

  1. 取得伺服器憑證:執行指令openssl s_client -showcerts -connect AAA.BBB.CCC.DDD:9443 > certs .txt 以檢索伺服器的憑證。
  2. 提取證書內容:找到-----BEGIN CERTIFICATE----- 和- 之間的「certs.txt」部分----END CERTIFICATE---- - 並將其保存在單獨的文件中。
  3. 修改憑證(選用):如有必要,請更新憑證名稱以符合 IP 位址伺服器的 (AAA.BBB.CCC.DDD)。但是,僅在您可以控制伺服器的情況下建議修改憑證。
  4. 匯入憑證:使用 keytool 指令將修改過的憑證匯入到您的金鑰庫中。例如: keytool -importcert -file fileWithModifiedCertificate -keystore mykeystore.
  5. 停用HTTPS 檢查(僅用於測試目的):如果您使用該服務進行測試並且不需要安全通訊服務,您可以透過新增繞過憑證驗證和主機名稱驗證的程式碼來暫時停用HTTPS 檢查。不建議將此解決方案用於生產用途。

或者,您可以使用類似問題中的建議,該建議指出,如果您不控制伺服器,則應使用其主機名稱。這是因為憑證可能包含與主機名稱相符的 CN(通用名稱)。

請記住,這些步驟旨在解決伺服器憑證中缺少主題備用名稱的特定問題。根據您的環境和您使用的特定服務,可能會有所不同或需要額外的配置。

以上是如何修復'java.security.cert.CertificateException:不存在主題備用名稱”錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn