SpringBoot实战之SSL配置详解

作者:toto1297488504 时间:2022-08-03 19:38:17 

1、SSL介绍和说明

SSL的配置也是我们在实际应用中经常遇到的场景

SSL(Secure Sockets Layer,安全套接层)是为网络通信提供安全及数据完整性的一种协议,SSL在网络传输层对网络连接进行加密。SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通信提供安全支持。SSL协议可以分为两层:SSL记录协议(SSL Record Protocal),它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基础功能的支持。SSL握手协议(SSL Handshake Protocal),它建立在SSL记录协议之上。用于在实际数据传输开始前,通信双方进行身份认证、协商加密算法、交换加密密钥等。

而在基于B/S的Web应用中,是通过HTTPS来实现SSL的。HTTPS是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即在HTTP下加入SSL层,HTTPS的安全基础是SSL。

2、生成证书

使用SSL首先需要一个证书,这个证书既可以是自签名的,也可以是从SSL授权中心获得的。下面演示自授权证书的生成。

每一个JDK或JRE里面都有一个工具叫keytool,它是一个证书管理工具,可以用来生成自签名的证书。

SpringBoot实战之SSL配置详解

SpringBoot实战之SSL配置详解

使用CMD进入C:\Program Files\Java\jdk1.8.0_111\bin所在的目录,然后输入一下内容:


keytool -genkey -alias tomcat

SpringBoot实战之SSL配置详解

接着进入当前用户目录下,发现已经生成了一个.keystore文件,这就是我们要用的证书文件,如图所示。

SpringBoot实战之SSL配置详解

2.1 Spring Boot配置SSL

添加一个index.html到src/main/resources/static下,作为测试

将.keystore文件复制到项目的根目录(即pom.xml所在的位置),然后在application.properties中做SSL的配置:


#server.port = 8443
#server.ssl.key-store = .keystore
#server.ssl.key-store-password= 111111
#server.ssl.keyStoreType= JKS
#server.ssl.keyAlias: tomcat

接着再浏览器上访问:https://localhost:8443.会出现相应页面

来源:https://blog.csdn.net/tototuzuoquan/article/details/78172659

标签:springboot,ssl,配置
0
投稿

猜你喜欢

  • RxJava+Retrofit+Mvp实现购物车

    2022-03-22 16:24:48
  • Java文件操作之按行读取文件和遍历目录的方法

    2023-11-24 16:58:21
  • 有关Java中的BeanInfo介绍

    2023-08-05 00:13:42
  • Java并发编程示例(一):线程的创建和执行

    2022-01-24 16:43:49
  • Spring Boot+Shiro实现一个Http请求的Basic认证

    2022-06-01 22:22:31
  • Java中LinkedList和ArrayList的效率分析

    2023-02-12 06:21:55
  • Dubbo retries 超时重试机制的问题原因分析及解决方案

    2023-11-29 08:22:38
  • Java 8 动态类型语言Lambda表达式实现原理解析

    2023-08-05 09:04:25
  • Maven+SSM框架实现简单的增删改查

    2023-11-16 17:14:38
  • java中类与对象的使用详情

    2023-09-27 17:10:43
  • Java设计模式之备忘录模式实现对象状态的保存和恢复

    2023-08-28 15:22:27
  • 一文详解Java中Stream流的使用

    2021-08-23 11:54:51
  • SpringBoot+Mybatis项目使用Redis做Mybatis的二级缓存的方法

    2021-06-17 20:09:50
  • Java单例模式实现的几种方式

    2021-06-09 18:38:47
  • Java数据结构之单链表详解

    2023-11-04 17:02:20
  • 在Eclipse中运行Solr 基础知识

    2021-07-06 22:51:04
  • jQuery 动画效果代码分享

    2023-11-24 00:10:12
  • Java Springboot整合支付宝接口的教程详解

    2023-11-06 19:41:49
  • java~springboot~ibatis数组in查询的实现方法

    2023-03-31 21:31:13
  • java使用JNA(Java Native Access)调用dll的方法

    2022-02-06 09:27:34
  • asp之家 软件编程 m.aspxhome.com