本文介紹如何在Spring Boot應用中配置SSL認證,具體包括下載和上傳認證檔案,在Spring Boot應用配置認證檔案、憑證鏈結和認證密碼等參數,以及安裝認證後結果的驗證。成功配置SSL認證後,您將能夠通過HTTPS加密通道安全訪問Spring Boot應用,確保資料轉送的安全性。
前提條件
步驟一:下載SSL認證
登入數位憑證管理服務控制台。
在左側導覽列,選擇。
在SSL 憑證頁面,定位到目標認證,在操作列,單擊下載。
在伺服器類型為JKS的操作列,單擊下載。
說明Spring Boot支援配置PFX和JKS格式的認證,本文以JKS格式認證為例介紹。如果您需要配置PFX格式的認證,請下載對應格式的認證。
解壓縮已下載的SSL認證壓縮包。
根據您在提交認證申請時選擇的CSR產生方式,解壓縮獲得的檔案不同,具體如下表所示。
CSR產生方式
認證壓縮包包含的檔案
系統產生
認證檔案(JKS格式):預設以認證ID_認證綁定網域名稱命名。
密碼檔案(TXT格式):預設以認證格式-password命名。
重要每次下載認證時都會產生新的密碼,該密碼僅匹配本次下載的認證檔案。
手動填寫
如果您填寫的是通過數位憑證管理服務控制台建立的CSR,下載後包含的認證檔案與系統產生的一致。
如果您填寫的不是通過數位憑證管理服務控制台建立的CSR,下載後只包括認證檔案(PEM格式),不包含認證密碼或私密金鑰檔案。您可以通過認證工具,將認證檔案和您持有的認證密碼或私密金鑰檔案轉換成所需格式。轉換認證格式的具體操作,請參見認證格式轉換。
步驟二:在Spring Boot安裝SSL認證
將解壓後的認證檔案和密碼檔案上傳到Spring Boot專案的根目錄
src/main/resources/
。說明如果您修改過Spring Boot專案的目錄,您需要將認證檔案和密碼檔案拷貝到與設定檔
application.properties
或application.yml
相同的目錄下。您可以使用遠程登入工具附帶的本地檔案上傳功能,上傳檔案。例如PuTTy、Xshell或WinSCP等。如果您使用的阿里雲Elastic Compute Service,上傳檔案具體操作,請參見上傳或下載檔案(Windows)或上傳檔案到Linux雲端服務器。
按照以下樣本和說明配置
application.properties
或application.yml
檔案。application.properties
server.port = 443 #HTTPS協議預設連接埠號碼為443,需要使用其他連接埠時,您可以在此處自訂。 server.ssl.key-store = classpath:domain_name.jks #您需要使用實際的認證名稱替換domain_name.jks。 server.ssl.key-store-password = ******** #填寫jks-password.txt檔案內的密碼。 server.ssl.keyStoreType = JKS #JKS格式認證密鑰庫類型。PFX格式的認證密鑰庫類型為PKCS12。
application.yml
server: port: 443 #HTTPS協議預設連接埠號碼為443,需要使用其他連接埠時,您可以在此處自訂。 ssl: key-store-password: ******** #填寫jks-password.txt檔案內的密碼。 key-store-type: JKS #JKS格式認證密鑰庫類型。PFX格式的認證密鑰庫類型為PKCS12。 key-store: classpath:domain_name.jks #您需要使用實際的認證名稱替換domain_name.jks。
進入Spring Boot專案根目錄,執行以下命令重啟Spring Boot專案。
Maven
mvn spring-boot:run
Gradle
gradle bootrun
步驟三:驗證SSL認證是否安裝成功
認證安裝完成後,您可通過訪問認證的綁定網域名稱驗證該認證是否安裝成功。
https://yourdomain #需要將yourdomain替換成認證綁定的網域名稱。
如果網頁地址欄出現小鎖標誌,表示認證已經安裝成功。