当前位置: 首页 > news >正文

Jasypt整合springboot完成对配置文件中有关敏感数据的加密

场景

项目中有很多密码都是以明文的形式存储在配置文件中,这样很不安全。我们可以通过jasypt来完成敏感信息的加密。

步骤

1、pom文件引入依赖。

<dependency>
    <groupId>com.github.ulisesbocchio</groupId>
    <artifactId>jasypt-spring-boot-starter</artifactId>
    <version>3.0.4</version>
</dependency>

2、写个测试类获取密文。

        String secret = "haha";
        BasicTextEncryptor basicTextEncryptor = new BasicTextEncryptor();
        basicTextEncryptor.setPassword(secret); //设置密钥
        String s = basicTextEncryptor.encrypt("123456"); //加密
        System.out.println(s);

3、application.yml文件写死密文。

# Spring配置
spring:
  # 数据源配置
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/test?characterEncoding=utf-8&&serverTimezone=Asia/Shanghai&&useSSL=false
    username: root
    # 此处的密文要用ENC()进行包裹,不然是识别不了的,自然也就无法解密
    password: ENC(fUaD/g4L9TKx8AFhz8A5qQ==)

# 加密配置
jasypt:
  encryptor:
    # 指定密钥
    password: haha
    # 下面这两个参数必须得加,不加的话会报参数绑定异常
    # 指定解密算法,需要和加密时使用的算法一致
    algorithm: PBEWithMD5AndDES
    # 指定initialization vector类型
    iv-generator-classname: org.jasypt.iv.NoIvGenerator

线上环境

如果是线上环境,密钥需作为启动参数加进去,这样更安全。

java -jar -Djasypt.encryptor.password=your-secret

相关文章:

  • 图片变形的问题
  • 宽带电力载波稳定吗?有丢数据吗?
  • Linux | 文件系统
  • OpenAI将推出ChatGPT Plus会员新功能,有用户反馈将支持上传文件和多模态
  • CCF_A 计算机视觉顶会CVPR2024投稿指南以及论文模板
  • Excel表格密码解密软件 - 轻松解锁忘记的Excel密码
  • 干货 | 一文详解华为ITR流程体系:目标、流程、理念
  • leetcode_136 只出现一次的数字
  • 预处理详解(一)
  • Linux开源存储方案系统介绍
  • Ajax学习笔记第三天
  • 来自 APISpace 的API接口推荐,含免费次数
  • GB28181学习(十四)——语音广播与语音对讲
  • Day 5 登录页及路由 (三) 基于axios的API调用
  • node使用fs模块(四)—— 文件夹的使用(创建、读取、删除)
  • vue3的reactive源码解析
  • 堆优化版dijkstra算法
  • Nignx及负载均衡动静分离
  • golang中快速用melody搭建轻量的websocket服务
  • 【计算机网络笔记】传输层——可靠数据传输之流水线机制与滑动窗口协议
  • 为什么政府网站做的很烂/seo研究中心骗局
  • 免费word文档模板下载网站/镇江关键字优化品牌
  • 廊坊市网站建设/互联网营销师报名入口官网
  • 工程造价定额在哪查/兰州网络推广关键词优化
  • 网站域名虚拟主机/上海优化外包公司排名