Spring Boot 启用 HTTPS

  • 启用HTTPS

    默认情况下,Spring Boot应用程序在启动时使用HTTP 8080端口。
    您需要按照以下步骤在Spring Boot应用程序中配置HTTPS和端口443-
    • 获取SSL证书–创建自签名证书或从证书颁发机构获取一个证书
    • 启用HTTPS和443端口
  • 自签名证书

    为了创建自签名证书,Java运行时环境与证书管理实用程序密钥工具捆绑在一起。该实用工具用于创建自签名证书。它在此处给出的代码中显示-
    在命令行键入如下 keytool 代码,并填写相关信息。
    
    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
    
    此代码将在当前目录生成一个名为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
    
    如果您正在使用YAML属性,则可以在以下application.yml中使用以下代码--
    
    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>
    
    现在,该应用程序已使用https在Tomcat端口443上启动,如下所示-
    springboot resttemp