我们写的接口默认都是http形式的,不过我们的接口很容易被人抓包,而且一抓全是明文的挺尴尬的

spring boot配置https生成证书大的方向有3种:

  1.利用keytool自己生成证书

  2.从免费的https网站申请证书,例如letsencrypt

  3.买收费的证书

本人没钱,记录下第一种和第二种方法。

第一种方法:

 找个地方keytool -genkey -alias tomcat -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 3650,全部回车什么都不用填,最好选择是,然后输入密码;将生成的keystore.p12复杂到resources文件下,然后在配置文件application.yml下加入:

server:
  port: 8080
ssl:
  key-store: classpath:keystore.p12
  key-store-password: yourpassword
  key-store-type: PKCS12
  key-alias: tomcat
security:
  require-ssl: true

security:
  require-ssl: true

启动项目,访问接口的时候在前面加https://才能访问,我们用抓包软件fiddler试着抓了下,明文的输入输出被加密了,看了下证书10年

第二种方法:

  下载letsencrypt的证书,这个其它地方有记录http://www.cnblogs.com/waterlufei/p/7261311.html,然后在/etc/letsencrypt/live/example.com目录执行:

openssl pkcs12 -export -in fullchain.pem \
-inkey privkey.pem \
-out keystore.p12 \
-name tomcat \
-CAfile chain.pem \
-caname root

输入确认密码,会产生keystore.p12文件,复制到windows,后面的步骤跟上面一样

最后看了下第二种方法的证书周期是3个月,但是直接在浏览器中访问接口地址还是和第一种方法一样https都是提示不安全,这是因为我们申请的证书是基于域名申请的,而我们本地不是这个域名,这不要紧,我们把项目部署到服务器后就好了,一路标绿,game over,接口和html页面都可以https了:

小技巧:我们启动的项目的时候如果不想每次都修改配置文件,可以在jar包同目录下新建config目录,然后在config下面新建application.yml,这样我们改革端口什么的很方便,不用再打包项目了

spring boot https --restful接口篇的更多相关文章

  1. Spring Boot提供RESTful接口时的错误处理实践

    使用Spring Boot开发微服务的过程中,我们会使用别人提供的接口,也会设计接口给别人使用,这时候微服务应用之间的协作就需要有一定的规范. 基于rpc协议,我们一般有两种思路:(1)提供服务的应用 ...

  2. 聊一聊 Spring Boot 中 RESTful 接口设计规范

    在设计接口时,有很多因素要考虑,如接口的业务定位,接口的安全性,接口的可扩展性.接口的稳定性.接口的跨域性.接口的协议规则.接口的路径规则.接口单一原则.接口过滤和接口组合等诸多因素,本篇文章将简要分 ...

  3. 无规矩不成方圆,聊一聊 Spring Boot 中 RESTful 接口设计规范

    在设计接口时,有很多因素要考虑,如接口的业务定位,接口的安全性,接口的可扩展性.接口的稳定性.接口的跨域性.接口的协议规则.接口的路径规则.接口单一原则.接口过滤和接口组合等诸多因素,本篇文章将简要分 ...

  4. Spring Boot2 系列教程(三十一)Spring Boot 构建 RESTful 风格应用

    RESTful ,到现在相信已经没人不知道这个东西了吧!关于 RESTful 的概念,我这里就不做过多介绍了,传统的 Struts 对 RESTful 支持不够友好 ,但是 SpringMVC 对于 ...

  5. 使用Spring boot开发RestFul 风格项目PUT/DELETE方法不起作用

    在使用Spring boot 开发restful 风格的项目,put.delete方法不起作用,解决办法. 实体类Student @Data public class Student { privat ...

  6. Spring Boot - Building RESTful Web Services

    Spring Boot Building RESTful Web Services https://www.tutorialspoint.com/spring_boot/spring_boot_bui ...

  7. Spring Boot 入门之 Web 篇(二)

    原文地址:Spring Boot 入门之 Web 篇(二) 博客地址:http://www.extlight.com 一.前言 上一篇<Spring Boot 入门之基础篇(一)>介绍了 ...

  8. Spring Boot 之:接口参数校验

    Spring Boot 之:接口参数校验,学习资料 网址 SpringBoot(八) JSR-303 数据验证(写的比较好) https://qq343509740.gitee.io/2018/07/ ...

  9. Spring Boot构建 RESTful 风格应用

    Spring Boot构建 RESTful 风格应用 1.Spring Boot构建 RESTful 风格应用 1.1 实战 1.1.1 创建工程 1.1.2 构建实体类 1.1.4 查询定制 1.1 ...

随机推荐

  1. 腾讯课堂web零基础

    utf是国际编码 gb2312 国人发明的 gbk 补充集 想看网站源代码可以按F12 <meta name ='keywords' content='设置关键字'> <meta n ...

  2. P1132 数字生成游戏

    题目请见:传送门 以下为题解,直接从洛谷上搬过来的,还专门改了markdown,(汗) 宽搜 with 一些技巧 由于查询量很大,所以要预先处理所有答案 预处理当然是用BFS,并同时进行delete, ...

  3. 最耗性能的SQL语句

    设计优化–常见杀手级SQL •SELECT * vsSELECT col1, col2 •ORDER BY RAND() •LIMIT huge_num, offset •SELECT COUNT(* ...

  4. linux网络、性能相关命令

    netstat -tunpl #查看进程列表 top #查看系统资源统计 服务器速度测试 ping 123.57.92.9 -t 每一个被发送出的IP信息包都有一个TTL域,该域被设置为一个较高的数值 ...

  5. Less 的使用方法

    Less 的使用方法 Less 可以直接在浏览器端运行(支持IE6+.Webkit.Firefox),也可以借助Node.js或者Rhino在服务端运行. Less是一种动态语言,无论是在浏览器端,还 ...

  6. java八大基本数据类型

    java中八大数据类型的储存空间以及使用场景表示如下 )1.int:4字节,可以表示的数为-2^31 - 2^31-1.整数的默认类型.封装类也如此 .整数相除的时候,会舍弃小数部分.结果也是整数,例 ...

  7. uva11636-Hello World!

    题意:已知有一行printf(“Hello World!”\n);以后就可以复制,问多少次之后就可以达到所需要的行数. 题解:模拟: #include<iostream> #include ...

  8. PAT 1002. A+B for Polynomials (25) 简单模拟

    1002. A+B for Polynomials (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue T ...

  9. spfa_dfs找负环

    luogu #include<iostream> #include<cstdio> #include<cstring> #include<vector> ...

  10. 【NOIP2012提高组】同余方程

    https://www.luogu.org/problem/show?pid=1082 方程可化为ax+by=1. 用扩展欧几里得算法得到ax'+by'=gcd(a,b)的一组解后,可得x=x'/gc ...