Spring Boot 教程:啟用 HTTPS
【注】本文譯自: https://www.tutorialspoint.com/spring_boot/spring_boot_enabling_https.htm

? ? Spring Boot 應(yīng)用默認(rèn)以 HTTP 8080 端口啟動(dòng)。

? ?你要在?Spring Boot 應(yīng)用中執(zhí)行以下步驟來配置?HTTPS 和端口 443:
獲取 SSL 證書:創(chuàng)建自簽名證書或者從一個(gè)證書認(rèn)證機(jī)構(gòu)申請一個(gè)。
啟用 HTTPS 和 443 端口
自簽名證書
? ?Java 運(yùn)行時(shí)環(huán)境已經(jīng)內(nèi)置了證書管理實(shí)用工具,可用于創(chuàng)建自簽名證書。示例代碼如下:
keytool?-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
? ?這段代碼將產(chǎn)生一個(gè)名為? keystore.p12 的PKCS12 keystore 文件,證書別名為 tomcat。
配置 HTTPS
? ?我們要在?application.properties 文件中寫入:服務(wù)端口為?443、key-store 文件路徑、key-store-password、key-store-type 和 密鑰別名。如下所示:
server.port:?443
server.ssl.key-store:?keystore.p12
server.ssl.key-store-password:?springboot
server.ssl.keyStoreType:?PKCS12
server.ssl.keyAlias:?tomcat
? ?如果你使用 YAML 屬性的話,你也可以使用下面的 application.yml 的代碼:
server:
??port:?443
??ssl:
?????key-store:?keystore.p12
?????key-store-password:?springboot
?????keyStoreType:?PKCS12
?????keyAlias:?tomcat
? ?現(xiàn)在可以使用 Maven 或 Gradle 命令創(chuàng)建可執(zhí)行?executable JAR 文件并運(yùn)行 Spring Boot 應(yīng)用了:
? ?Maven 命令如下:
mvn?clean?install
? ?在 “BUILD SUCCESS” 之后,你可以在 target 目錄下找到 JAR 文件。
? ?Gradle 可以使用以下命令:
gradle?clean?build
? ?在 “BUILD SUCCESSFUL” 之后,你可以在?build/libs 目錄下找到?JAR 文件。
? ?使用以下命令運(yùn)行 JAR 文件:
java?–jar?<JARFILE>
? ? 應(yīng)用已在?Tomcat 443 端口啟動(dòng),如下圖所示:
