SpringCloud 注冊安全的應用程序

2023-08-08 11:26 更新

如果您希望通過HTTPS與您的應用進行聯系,則可以在?EurekaInstanceConfig?中設置兩個標志:

  • ?eureka.instance.[nonSecurePortEnabled]=[false]?
  • ?eureka.instance.[securePortEnabled]=[true]?

這樣做會使Eureka發(fā)布實例信息,該實例信息顯示出對安全通信的明確偏好。對于以這種方式配置的服務,Spring Cloud ?DiscoveryClient?始終返回以?https?開頭的URI。同樣,以這種方式配置服務時,Eureka(本機)實例信息具有安全的運行狀況檢查URL。

由于Eureka在內部工作的方式,它仍然會為狀態(tài)和主頁發(fā)布非安全URL,除非您也明確地覆蓋了它們。您可以使用占位符來配置eureka實例URL,如以下示例所示:

application.yml。 

eureka:
  instance:
    statusPageUrl: https://${eureka.hostname}/info
    healthCheckUrl: https://${eureka.hostname}/health
    homePageUrl: https://${eureka.hostname}/

(請注意,?${eureka.hostname}?是本機占位符,僅在Eureka的更高版本中可用。您也可以使用Spring占位符來實現相同的目的,例如,使用?${eureka.instance.hostName}?。)

如果您的應用程序在代理后面運行,并且SSL終止在代理中(例如,如果您在Cloud Foundry或其他平臺中作為服務運行),則需要確保攔截代理的“ 轉發(fā) ”標頭并由應用處理。如果嵌入在Spring Boot應用程序中的Tomcat容器具有針對'X-Forwarded-\ *'標頭的顯式配置,則此操作自動發(fā)生。應用程序提供的指向自身的鏈接錯誤(錯誤的主機,端口或協議)表明此配置錯誤。


以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號