为什么需要加密

  • 这是一套完整的账号信息管理体系,不同岗位不同职责,也就是承担不同的责任。
  • 比如在小程序开发过程中,很多公司都会把 appId、appSecret 直接赔偿成明文的,当有员工离职时很难进行管理【貌似只有重置才行】
  • 对于比较核心的账号 要有专人管理,每个人都有自己的职责,看该看的东西【不同团队需求不同】

遇到过最奇葩的事情

  • 有个工程师从一家公司离职1年多,1年多过后居然还能连接上前公司生产的数据库,还能进行操作【真的好可怕。。。】
  • 暴露核心参数,有员工故意诋毁老东家【伤敌一千自损八百】。

核心关注问题

jasypt.encryptor.password可以泄漏吗?

  • 不能, 泄漏了等于没有加密.

例子中jasypt.encryptor.password配置在配置文件中不就等于泄漏了吗?

  • 是这样的,需要在流程上进行控制.springboot打包时千万不要把jasypt.encryptor.password打入jar包内.

在公司具体的流程可能是这样的:

  • 运维人员持有jasypt.encryptor.password,加密原文获得密文
  • 运维人员将密文发给开发人员
  • 开发人员在配置文件中只配置密文,不配置jasypt.encryptor.password
  • 运维人员启动应用时再配置jasypt.encryptor.password

参考文献

  • 参考了很多文献,下面推荐几条不错的文章
  • 源码地址:https://github.com/ulisesbocchio/jasypt-spring-boot
  • 比较详细的:https://blog.csdn.net/weixin_36380516/article/details/104285672
  • 印象深刻的:https://blog.hanqunfeng.com/2020/10/27/jasypt-springboot/
  • 还可以的:https://xie.infoq.cn/article/5cc0e4e3e189715df487843f4
  • http://zpycloud.com/archives/1699
  • https://blog.csdn.net/qq_38225558/article/details/105747906

其他

jdk 1.8 加密:
java -cp jasypt-1.9.3.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI password=c3d75d53c04b4b7f9984794254c48fe6 algorithm=PBEWithMD5AndDES ivGeneratorClassName=org.jasypt.iv.RandomIvGenerator input=123456

SpringBoot配置文件加密jasypt【数据库配置加密、redis配置加密、核心参数加密】相关推荐

  1. springboot+jpa 实现不同数据库的多数据源配置(坑整理)

    在搭建springboot+jpa 实现不同数据库的多数据源配置过程中会遇到很多坑, SpringBoot引入mysql源的pom.xml等的配置:https://www.jianshu.com/p/ ...

  2. SpringBoot配置文件application.yml数据库信息加密

    在开发程序系统的过程中,我们时常需要考虑系统安全的问题, 像这样的情况就仿佛你的数据库在裸奔是吧,说不定哪个人悄悄的就给你删库让你跑路了呢?因此在配置文件中是不能出现明文密码.接下来,我将会为大家详细 ...

  3. springboot 启动加载数据库数据到redis缓存

    启动项目后, 加载数据库公共配置数据到redis中 import org.springframework.data.redis.core.RedisTemplate; import org.sprin ...

  4. 数据库缓存服务—Redis配置与优化

    文章目录 一.缓存概念 1.1 系统缓存 1.2 缓存保存位置及分层结构 1.2.1 DNS缓存 1.2.2 应用层缓存 1.2.3 数据层缓存 1.2.4 硬件缓存 二.关系型数据库与非关系型数据库 ...

  5. 数据库管理系统:Redis配置与使用

    目录 一.安装和启动Redis 二.连接 1.本地连接 2.远程连接 3.配置Redis-Server后台运行 三.Redis数据类型 四.Key的操作命令 一.安装和启动Redis Redis是最为 ...

  6. springboot+jpa 实现不同数据库的多数据源配置

    废话不多说,直接看配置! 1.application.yml # 多数据源配置 #primary spring:primary:datasource:url: jdbc:mysql://xxx.xxx ...

  7. java接口加密 ras,Jmeter 使用封装 jar 解决 RSA+AES 参数加密接口请求

    //请求数据POSThttp://10.5.4.143:8080/xxxx/xxxxx/getValidate.mvcPOSTdata:{"clientPublicKey":&qu ...

  8. SpringBoot 项目 添加 redis配置

    一.新建一个springboot 项目,springboot项目创建过程详见:传送门 二.pom.xml依赖配置 <!-- redis 配置 --> <dependency>& ...

  9. NoSQL 之 Redis 配置与优化

    文章目录 一.关系数据库与非关系数据库 1.1 关系型数据库 1.2 非关系型数据库 二.关系型数据库和非关系型数据库区别 2.1 数据存储方式不同 2.2 扩展方式不同 2.2.1 负载增加时,有两 ...

最新文章

  1. python开源代码-这7个开源的Python库,让你轻松代码分析
  2. python 列表去重(数组)的几种方法_python 列表去重(数组)的几种方法
  3. dropout层_深度学习两大基础Tricks:Dropout和BN详解
  4. 如何使用 Node 后端创建 React 应用程序:完整指南
  5. YARP(Yet Another Reverse Proxy)是使用 .NET 构建的高度可定制的反向代理
  6. jquery部分方法
  7. struts2学习(3)struts2核心知识II
  8. SpringBoot—自定义线程池及并发定时任务模板
  9. 什么是敏捷_什么是敏捷?
  10. CTF加密题型解析:RSA算法的CTF解法之一
  11. springboot做梦网云科技短信业务
  12. 电脑端如何截屏网页全部内容|网页截长图
  13. Linux 数据校验md5sum
  14. 计算机病毒如何防范英语作文,英语作文_妙招大看台:如何避免电脑中病毒_沪江英语...
  15. 面经:中国人民银行金融科技研究院
  16. Jmeter压测报告
  17. 意间ai绘画怎么输入关键词,让图片变得好看?
  18. 全国城镇地理数据拼音、文字对照 JSON
  19. c/c++静态变量和静态函数
  20. 商业世界里的“谈判”到底是什么

热门文章

  1. 解决idea运行Tomcat报错:Unable to ping server at localhost:1099
  2. (附源码)计算机毕业设计基于JAVA的毕业设计管理系统
  3. python Excel 乱码 解决方案 编码 xlwings测试
  4. 2018电子商务证书计算机基础知识,2018银行春招笔试高频考点—常识百科之计算机基础知识...
  5. 间述i计算机主要应用领域,电子科技大学17年11月《计算机导论》作业考核试题题目...
  6. ES6 | let 关键字 + const关键字 + 箭头函数 + rest参数 + 扩展运算符 ... + Symbol + 迭代器 + 生成器 + 变量的解构赋值 + 模板字符串
  7. 向着第二层 第一阶段第二十天
  8. r,w,a 与 r+, w+, a+的区别(转)
  9. Qt编写项目作品26-一维码二维码解析及生成
  10. 景观格局或过程在科学研究中的应用