我正在使用spring boot.u構建基於雲的微服務體系結構。我們僅使用嵌入式容器,這是tomcat用於彈簧引導。此外,我們還向jvm keystore添加了證書。PKIX路徑構建失敗,而Eureka客戶端使用SSL連接啓用Spring Cloud中的Eureka服務器
爲了使它更簡單,我創建了只有兩個春季啓動應用程序。
1)春季啓動尤里卡服務器
2)春季啓動尤里卡客戶
兩者都如上面提到的,當我開始尤里卡服務器上HTTPS之後,沒有任何問題成功啓動具有相同的配置,我開始尤里卡客戶端直到它向Eureka服務器請求註冊並且之後開始失敗。
有趣的是,當我將Eureka服務器保留在非安全端口上,即繼續使用http時,我的所有eureka客戶端都能夠無任何問題地進行連接,但我並不需要在我的架構中進行連接,因爲我也使用zuul所有我的微服務的單一入口點。
當它是http時,一切正常,但在啓用https和SSL時啓動失敗。
這是我的Eureka服務器配置。
eureka.instance.hostname= localhost
eureka.client.registerWithEureka= false
eureka.client.fetchRegistry= false
server.port= 8761
server.ssl.enabled = true
server.ssl.key-store=classpath:ssl.keystore
server.ssl.key-store-password=changeit
and my Eureka Client Configuration.
server.port=8181
spring.application.name=my-client
eureka.instance.hostname=localhost
eureka.instance.securePort = 8181
eureka.instance.securePortEnabled = true
eureka.instance.nonSecurePortEnabled = false
eureka.instance.metadataMap.hostname = ${eureka.instance.hostname}
eureka.instance.metadataMap.securePort = ${server.port}
eureka.instance.homePageUrl = https://${eureka.instance.hostname}:${server.port}/
eureka.instance.statusPageUrl = https://${eureka.instance.hostname}:${server.port}/admin/info
eureka.client.serviceUrl.defaultZone: https://localhost:8761/eureka/
server.ssl.enabled = true
server.ssl.key-store=classpath:ssl.keystore
server.ssl.key-store-password=changeit
以下是異常跟蹤。
Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at sun.security.validator.PKIXValidator.doBuild(Unknown Source) ~[na:1.8.0_91]
at sun.security.validator.PKIXValidator.engineValidate(Unknown Source) ~[na:1.8.0_91]
at sun.security.validator.Validator.validate(Unknown Source) ~[na:1.8.0_91]
at sun.security.ssl.X509TrustManagerImpl.validate(Unknown Source) ~[na:1.8.0_91]
at sun.security.ssl.X509TrustManagerImpl.checkTrusted(Unknown Source) ~[na:1.8.0_91]
at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(Unknown Source) ~[na:1.8.0_91]
... 50 common frames omitted
我沒試過無數的命中和審判,使其工作,其別人都在試圖計算器但說實話都沒有他們的作品。我還探索了其他建議並將其納入其中,但這也不起作用。我不確定我的配置有什麼問題。有沒有人遇到類似的問題,以及如何解決?
如果有人對此有所瞭解,我將非常感激。