Spring Boot啟用HTTPS


預設情況下,Spring Boot應用程式在應用程式啟動時使用HTTP的8080埠。

可按照以下步驟,在Spring Boot應用程式中組態HTTPS和埠443 -

  • 獲取SSL證書 - 建立自簽名證書或從證書頒發機構獲取證書
  • 啟用HTTPS和443埠

自簽證書

要建立自簽名證書,Java執行時環境與證書管理實用程式金鑰工具綑綁在一起。 此實用程式工具用於建立自簽名證書。 它顯示在這裡給出的程式碼中 -

path_to_keytool > keytool.exe -genkey -alias tomcat -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 3650
Enter keystore password:
   Re-enter new password:
   What is your first and last name?
   [Unknown]:
   What is the name of your organizational unit?
   [Unknown]:
   What is the name of your organization?
   [Unknown]:
   What is the name of your City or Locality?
   [Unknown]:
   What is the name of your State or Province?
   [Unknown]:
   What is the two-letter country code for this unit?
   [Unknown]:
   Is CN = Unknown, OU=Unknown, O = Unknown, L = Unknown, ST = Unknown, C = Unknown correct?
   [no]: yes

此程式碼將生成名為keystore.p12的PKCS12金鑰庫檔案,證書別名為tomcat。

組態HTTPS

application.properties檔案中提供伺服器埠:443,金鑰儲存檔案路徑,金鑰儲存密碼,金鑰儲存型別和金鑰別名。如下給出的程式碼 -

server.port: 443
server.ssl.key-store: keystore.p12
server.ssl.key-store-password: springboot
server.ssl.keyStoreType: PKCS12
server.ssl.keyAlias: tomcat

如果是在application.yml 下面使用YAML屬性,則可以使用以下程式碼 -

server:
   port: 443
   ssl:
      key-store: keystore.p12
      key-store-password: springboot
      keyStoreType: PKCS12
      keyAlias: tomcat

可以建立可執行的JAR檔案,並使用以下Maven或Gradle命令執行spring boot應用程式。

對於Maven,可以使用以下命令 -

mvn clean install

在「BUILD SUCCESS」之後,在target 目錄下找到JAR檔案。

對於Gradle,可以使用以下命令:

gradle clean build

在「BUILD SUCCESSFUL」之後,可在 build/libs 目錄下找到JAR檔案。

現在,使用以下命令執行JAR檔案 -

java –jar <JARFILE>

現在,應用程式已在Tomcat埠443上啟動。