Spring Boot 支持 HTTPS (步驟配置)

Spring Boot中啓動HTTPS

若是你使用Spring Boot,而且想在內嵌tomcat中添加HTTPS,須要有一個證書。java

  • 兩種方式算法

    • 本身經過keytool生成spring

    • 經過證書受權機構購買

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

-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這個文件。上面的密碼咱們用javastackapp


  • 第二步:application.yml 中添加ssl相關
    server: 
      ssl:
        protocol: TLS
        key-store: classpath:javastack.keystore
        key-store-password: javastack
        key-store-type: JKS

    這裏面填寫上面的信息便可。並將javastack.keystore 放到resource目錄下。maven


  • 第三步:若是出現 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了。ide


good luckkkkkkk
相關文章
相關標籤/搜索