Spring Boot2 集成 jasypt 3.0.4 配置文件敏感信息加密

文章目录

            • 1. 导入依赖
            • 2. yml中添加配置文件
            • 3. 加解密工具类
            • 4. 敏感信息替换
            • 5. 编译打包
            • 6. 启动项目

1. 导入依赖
        <!--敏感信息加密--><dependency><groupId>com.github.ulisesbocchio</groupId><artifactId>jasypt-spring-boot-starter</artifactId><version>3.0.4</version></dependency>
2. yml中添加配置文件

第一种(盐值配置yml中,不推荐):

jasypt:encryptor:# 盐加密password: aabbcc# 指定加密方式algorithm: PBEWithMD5AndDESiv-generator-classname: org.jasypt.iv.NoIvGenerator

第二种(盐值不配置yml中,推荐使用):

jasypt:encryptor:# 指定加密方式algorithm: PBEWithMD5AndDESiv-generator-classname: org.jasypt.iv.NoIvGenerator
3. 加解密工具类
package com.gblfy.ws.utils;import org.jasypt.encryption.pbe.PooledPBEStringEncryptor;
import org.jasypt.encryption.pbe.config.SimpleStringPBEConfig;/*** 加解密工具类** @author gblfy* @date 2021-09-19**/
public class JasyptUtil {/*** Jasypt生成加密结果** @param password 配置文件中设定的加密盐值* @param value    加密值* @return*/public static String encyptPwd(String password, String value) {PooledPBEStringEncryptor encryptor = new PooledPBEStringEncryptor();encryptor.setConfig(cryptor(password));String result = encryptor.encrypt(value);return result;}/*** 解密** @param password 配置文件中设定的加密盐值* @param value    解密密文* @return*/public static String decyptPwd(String password, String value) {PooledPBEStringEncryptor encryptor = new PooledPBEStringEncryptor();encryptor.setConfig(cryptor(password));String result = encryptor.decrypt(value);return result;}public static SimpleStringPBEConfig cryptor(String password) {SimpleStringPBEConfig config = new SimpleStringPBEConfig();config.setPassword(password);config.setAlgorithm("PBEWithMD5AndDES");config.setKeyObtentionIterations("1000");config.setPoolSize("1");config.setProviderName("SunJCE");config.setSaltGeneratorClassName("org.jasypt.salt.RandomSaltGenerator");config.setStringOutputType("base64");return config;}public static void main(String[] args) {String slat = "gblfy.com";// 加密String encPwd = encyptPwd(slat, "123456");// 解密String decPwd = decyptPwd(slat, encPwd);System.out.println(encPwd);System.out.println(decPwd);}}

在这里插入图片描述

4. 敏感信息替换

在这里插入图片描述

5. 编译打包
	mvn clean install -DskipTests
6. 启动项目
  • 第一种(盐值明文启动):
java  -Djasypt.encryptor.password=gblfy.com -jar unified-access-center-0.0.1-SNAPSHOT.jar
  • 第二种(盐值表达式启动):
    在服务器的环境变量里配置,进一步提高安全性
# 打开/etc/profile文件
vim /etc/profile# 文件末尾插入
export JASYPT_PASSWORD =gblfy.com# 编译 
source /etc/profile运行 
java -jar -Djasypt.encryptor.password=${JASYPT_PASSWORD} xxx.jar
java  -Djasypt.encryptor.password=${JASYPT_PASSWORD} -jar unified-access-center-0.0.1-SNAPSHOT.jar

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/517241.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

技术直播:1小时突击Java工程师面试核心(限免报名)

后疫情时代&#xff0c;连程序员这个多金的职业也遭受到了一定程度的打击。从各大招聘网站和多次面试经历中&#xff0c;相信大家已经意识到&#xff0c;面试官对程序员技能体系和项目经验考核似乎更严苛了。你在面试中常常为什么苦恼呢&#xff1f;简历撰写&#xff1f;数据算…

重塑云上的 Java 语言

音乐无国界&#xff0c;但是音乐人有国界。 云原生亦如此。虽没有限定的编程语言&#xff0c;但应用所使用的编程语言已经决定了应用部署运行的行为。 Java 诞生于20年前&#xff0c;拥有大量优秀的企业级框架&#xff0c;践行 OOP 理念&#xff0c;更多体现的是严谨以及在长…

在单页应用Vue中设置标题(title)

安装 npm install vue-wechat-title --save main.js引入 Vue.use(require(vue-wechat-title)) 路由定义 {path: /topay,name: ToPay,component: ToPay,meta: {title:结算}},{path: /orderinfo,name: OrderInfo,component: OrderInfo,meta: {title:订单详情}} 模板中使用 …

centos 7 安装golang遇到问题: No package golang available.

entOS 安装golang &#xff1a; yum install golang 时报错&#xff1a;No package golang available. 解决办法&#xff1a; # 先安装epel yum install epel-release# 然后再安装golang yum install golang# 查看安装的版本 go version

5分钟带你看懂 GCanvas渲染引擎的演进

本文内容大纲&#xff1a; 1、轻量级图形渲染引擎与应用 2、渲染引擎演进与优化之路 3、渲染引擎未来的发展方向 GCanvas 的定位是遵循 w3c 标准的跨平台的轻量级图形渲染引擎。有清晰的定位和目标&#xff0c;并且紧贴现有的业务&#xff0c;为业务提供丰富表现形式。 GCa…

免费技术直播:唐宇迪带你一节课了解机器学习经典算法

常常有小伙伴在后台反馈&#xff1a;机器学习经典算法有哪些&#xff1f;自学难度大又没有效果&#xff0c;该怎么办&#xff1f;CSDN为了解决这个难题&#xff0c;联合唐宇迪老师为大家带来了一场精彩的直播【一节课掌握机器学习经典算法-线性回归模型】。本次直播将帮大家了解…

Centos7 安装Go环境

文章目录1. 下载2. 解压 和目录创建3. 配置环境变量4. 刷新环境变量5. 验证1. 下载 https://golang.google.cn/dl/ wget https://golang.google.cn/dl/go1.17.1.linux-amd64.tar.gz2. 解压 和目录创建 tar -zxvf go1.17.1.linux-amd64.tar.gz -C /usr/local/ mkdir gocode3…

深度学习在商户挂牌语义理解的实践

​导读&#xff1a;高德地图拥有几千万的POI兴趣点&#xff0c;例如大厦、底商、学校等数据&#xff0c;而且每天不断有新的POI出现。为了维持POI数据的鲜度&#xff0c;高德会通过大量的数据采集来覆盖和更新。现实中POI名称复杂&#xff0c;多变&#xff0c;同时&#xff0c;…

云计算与星辰大海的结合——不要回答,来自百亿光年外的未知信号

作者 | 硬核云顶宫责编 | Carol出品 | CSDN云计算&#xff08;ID&#xff1a;CSDNcloud&#xff09;今年在疫情的影响下&#xff0c;各国的经济发展都遇到了一些困难&#xff0c;甚至除中国以外的主要经济体都会进入了负增长的情况&#xff0c;不过越是这样的时候&#xff0c;越…

让大数据分析更简单,4步教你玩转MongoDB BI Connector

MongoDB使用BI Connector支持BI组件直接使用SQL或ODBC数据源方式直接访问MongoDB,在早期MongoDB直接使用Postgresql FDW实现 SQL到MQL的转换,后来实现更加轻量级的mongosqld支持BI工具的连接。 安装 BI Connector 参考 Install BI Connectorhttps://docs.mongodb.com/bi-conne…

iosselect简单使用(三级联动)

npm安装 npm install iosselect --save index.html引入文件 <link rel"stylesheet" href"static/iosSelect.css"> <script type"text/javascript" src"static/iosSelect.js"></script> <template><div…

阿里巴巴叔同谈云原生和云计算

本文系『CSDN云计算』对阿里云云原生应用平台负责人叔同的专访&#xff0c;阿里巴巴中间件受权转载。通过本文&#xff0c;您将了解到云计算时代容器技术的发展路径&#xff0c;阿里云在容器领域的产品矩阵、技术迭代以及未来趋势等方面&#xff0c;以及阿里云的容器技术演进历…

谷歌排名第一的编程语言,收下这份资料,小白也能学的会!

学习 Python 的过程中你是否有过这样的问题&#xff1a; 应用方向太多了&#xff0c;不知道该选择哪个&#xff0c;也不知道学习路径是什么。 入门简单&#xff0c;但是精通很难&#xff0c;每次学完做练习项目时都头疼&#xff0c;没思路&#xff0c;甚至怀疑自己不适合编程。…

SpringBoot2 集成xJar插件 动态解密jar包,避免源码泄露或反编译

文章目录一、集成1. 官方介绍地址2. 添加仓库和插件3. 编译打包二、安装go环境和编译2.1. 安装go2.2. 编译三、运行3.1. 正常运行3.2. 二次加密运行3.3. 测试结果四、IntelliJ IDE 反编译测试4.1. 将加密的jar进行解压4.2. 打开解压后的文件夹4.3. class文件查看4.4. 配置文件反…

通过网络地址进行真机调试

开发调试&#xff1a; 1.修改webpack创建的本地的服务器地址为开发的网络地址或者是全网段0.0.0.0 2.调试的时候直接使用配置的地址去访问当前的服务器 3.调式的时候可以直接在手机上查看&#xff0c;如果需要看log&#xff0c;打开chrome进行调试 4.检测到手机后webview调试可…

每秒7亿次请求,阿里新一代数据库如何支撑?

阿里妹导读&#xff1a;Lindorm&#xff0c;就是云操作系统飞天中面向大数据存储处理的重要组成部分。Lindorm是基于HBase研发的、面向大数据领域的分布式NoSQL数据库&#xff0c;集大规模、高吞吐、快速灵活、实时混合能力于一身&#xff0c;面向海量数据场景提供世界领先的高…

拼不过 GO?阿里如何重塑云上的 Java

阿里妹导读&#xff1a;Java 诞生于20年前&#xff0c;拥有大量优秀的企业级框架&#xff0c;践行 OOP 理念&#xff0c;更多体现的是严谨以及在长时间运行条件下的稳定性和高性能。反观如今&#xff0c;在要求快速迭代交付的云场景下&#xff0c;语言的简单性似乎成了首要的要…

centos7 修改默认yum源为国内的阿里云

# 安装wget yum -y install wget# 备份当前的yum源 mv /etc/yum.repos.d /etc/yum.repos.d.backup4comex# echo 新建空的yum源设置目录 mkdir /etc/yum.repos.d# echo 下载阿里云的yum源配置 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Cento…

腾讯云数据库 MySQL 8.0 正式上线,性能全面超越官方版本

7月8日&#xff0c;拥有60全新特性&#xff0c;性能全面超越官方版本的腾讯云MySQL 8.0正式发布。在全新引擎的驱动下&#xff0c;在MySQL官方版本大幅度提升性能的基础上&#xff0c;腾讯云MySQL8.0数据库通过优化锁系统&#xff0c;事务系统等模块&#xff0c;进一步提升性能…

android studio打包纯H5项目(集成5+SDK)

下载地址 http://ask.dcloud.net.cn/docs/#//ask.dcloud.net.cn/article/103 我们下载5SDK直接复制demo出来 可以自行修改名字&#xff0c;上面两个dome都可以使用 使用Android Studio打开后 默认目录结构如下 替换HTML文件 找到目录下app/src/main/assets/apps/HelloH5/www…