1. 程式人生 > 程式設計 >Spring Boot支援HTTPS步驟詳解

Spring Boot支援HTTPS步驟詳解

Spring Boot中啟動HTTPS

如果你使用Spring Boot,並且想在內嵌tomcat中新增HTTPS,需要有一個證書。

兩種方式

  • 自己通過keytool生成
  • 通過證書授權機構購買

這裡採用第一種方式,採用keytool生成。

-genkey 生成祕鑰
-alias 別名
-keyalg 祕鑰演算法
-keysize 祕鑰長度
-validity 有效期
-keystore 生成祕鑰庫的儲存路徑和名稱
-keypass 祕鑰口令
-storepass 祕鑰庫口令
-dname 擁有者資訊,CN:姓名;OU:組織單位名稱;O:組織名稱;L:省/市/自治區名稱;C:國家/地區程式碼

第一步

C:\Users\ThinkPad-S3> keytool -genkey -alias https -keyalg RSA -keystore javastack.keystore
輸入金鑰庫口令:
再次輸入新口令:
您的名字與姓氏是什麼?
 [Unknown]: test
您的組織單位名稱是什麼?
 [Unknown]: test
您的組織名稱是什麼?
 [Unknown]: test
您所在的城市或區域名稱是什麼?
 [Unknown]: test
您所在的省/市/自治區名稱是什麼?
 [Unknown]: test
該單位的雙字母國家/地區程式碼是什麼?
 [Unknown]: test
CN=test,OU=test,O=test,L=test,ST=test,C=test是否正確?
 [否]: y
 輸入 <https> 的金鑰口令
    (如果和金鑰庫口令相同,按回車):

所以祕鑰生成在C:\Users\ThinkPad-S3目錄下javastack.keystore這個檔案。上面的密碼我們用javastack

第二步:application.yml 中新增ssl相關

server: 
 ssl:
  protocol: TLS
  key-store: classpath:javastack.keystore
  key-store-password: javastack
  key-store-type: JKS

這裡面填寫上面的資訊即可。並將javastack.keystore 放到resource目錄下。

第三步:如果出現 Could not load key store 錯誤,在pom中新增


<build>
    <plugins>
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
      </plugin>
    </plugins>
    <resources>
    <resource>
      <directory>src/main/resources</directory>
      <filtering>true</filtering>
      <excludes>
        <exclude>*.keystore</exclude>
      </excludes>
    </resource>
    <resource>
      <directory>src/main/resources</directory>
      <filtering>false</filtering>
      <includes>
        <include>*.keystore</include>
      </includes>
    </resource>
  </resources>
  </build>

第四步

驗證發現已經支援https了。

good luckkkkkkk

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。