Spring boot 使用Jasypt加密用户名密码

Spring boot 使用Jasypt加密用户名密码

在工程中加入

maven

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

gradle

       implementation "com.github.ulisesbocchio:jasypt-spring-boot-starter:3.0.2"

在application-local.yml中加入

jasypt:
    encryptor:
        algorithm: PBEWithMD5AndDES
        iv-generator-classname: org.jasypt.iv.NoIvGenerator
        password: XyO8tet6i4dX14S #生产中使用命令行方式

修改密码为ENC()形式

Jasypt生成密码参考:https://github.com/chenjiangtao/spring-boot-on-kubernetes#Jasypt

        mysql:
            jdbc-url: jdbc:mysql://localhost:4000/test?serverTimezone=Asia/Shanghai&allowLoadLocalInfile=true&useUnicode=true&characterEncoding=utf-8&useSSL=false&rewriteBatchedStatements=true
# username: test
# password: test
            username: ENC(cMiMOtvRCdJK+4hazUKSXA==)
            password: ENC(rQc8TdaC+7m5DqLS1rlN1g==)
            driver-class-name: com.mysql.cj.jdbc.Driver
            validation-query: select 1

在启动类加两个注解

@Configuration
@EnableEncryptableProperties
public class MyApplication {
   
	public static void main(String[] args) {
   
		SpringApplication.run(MyApplication.class, args);
	}
}

启动

java -jar -Djasypt.encryptor.password=XyO8tet6i4dX14S -DGATEWAY_SERVICE_EVN=local build/libs/app.jar

或者使用--spring.profiles.active=dev

java -jar -Djasypt.encryptor.password=XyO8tet6i4dX14S build/libs/app.jar --spring.profiles.active=local

更新盐

mvn jasypt:reencrypt -Djasypt.plugin.old.password=OLD -Djasypt.encryptor.password=NEW

ulisesbocchio参考:
https://github.com/ulisesbocchio/jasypt-spring-boot

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/100338.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 蓝桥杯算法比赛题目_蓝桥杯一般大几参加

    蓝桥杯算法比赛题目_蓝桥杯一般大几参加欢迎回到:遇见蓝桥遇见你,不负代码不负卿!前言:提到深度优先搜索(DFS),我们很容易就会想到广度优先搜索(BFS),它们两合在一起成为一个搜索专题,今天笔者先把DFS讲清楚,BFS的内容留在下一章详细讲解。OK,废话不多说,走着…先送你一朵小红花…一、引入:深度优先搜索(DFS)这块内容很重要哦,为了方便大家理解,先举一个(来自胡凡、曾磊老师编写的《算法笔记》一书)的栗子。举个栗子:设想我们现在以第一视角身处一个巨大的迷宫当中,没有上帝视角,没有通..

    2025年6月19日
    5
  • 关于月亮的诗句_0x38是多少

    关于月亮的诗句_0x38是多少一些关于windows相关的书,书中提到扫描码的概念:扫描码的最低7为(0~6位)是描述码值,而最高位(7位)就描述该键是否被按下了。所以要想知道该键是否被按下就必须与0x80(1000000)相与。例如GetKeyState(VK_UP)&0x80或KeyStateBuffer[DIK_ESCAPE]&0x80.同时,在ANSIC标准中…

    2022年9月13日
    4
  • linux 命令行 查找文件_shell查找文件中指定的字符串

    linux 命令行 查找文件_shell查找文件中指定的字符串一grep:查看文件内容,在文件中查询一个关键字,即搜索字符串的命令(在指定的文件中搜索符合条件的字符串)grep是包含匹配,不是完全的精确匹配,特别适合查找内容语法:grep[-option]需要搜索的关键字文件名参数:-n—-连行号一起显示-c—-统计有几行-i—-忽略大小写(一般用的少)-v—-排除指定的字符串(了解),取反,查找出来的内容是搜索条件以外的所有的内容例如:[root@localhostTEST~]#grep-n

    2025年8月25日
    4
  • mesh和ADhoc区别[通俗易懂]

    mesh和ADhoc区别[通俗易懂]adhoc网络和无线Mesh网络都采用分布式、自组织的思想形成网络,网络每个节点都具备路由功能,随时为其他节点的数据传输提供路由和中继服务。adhoc网络主要侧重应用于移动环境中,确保网络内任意两个节点的可靠通信,网络内数据流可以包括语音、数据和多媒体信息。无线Mesh网络是一种无线宽带接入网络,利用分布式思想构建网络,让用户在任何时间、任何地点都可以对互联网进行高速无线访问,是由ADh…

    2025年6月23日
    1
  • nessus安装使用教程_kali linux全部功能教程

    nessus安装使用教程_kali linux全部功能教程一、Nessus介绍Nessus是目前全世界最多人使用的系统漏洞扫描与分析软件。总共有超过75,000个机构使用Nessus作为扫描该机构电脑系统的软件。提供完整的电脑漏洞扫描服务,并随时更新其漏洞数据库。Nessus专业版非免费的;家庭版是免费的,但单次任务只可以扫16个IP,这里注册的是家庭版,注册成功后会给邮箱发送一个激活码。二、安装下载家庭版https://www…

    2022年10月18日
    4
  • oracle错误904解决方法_遇到oracle错误 12154

    oracle错误904解决方法_遇到oracle错误 12154案例情景–在一次Oracle数据库导出时:C:\DocumentsandSettings\Administrator>exp[emailprotected]_dbfile=E:\lsxy.dmpowner=lsxyExport:Release11.2.0.1.0-Productionon星期一11月2614:07:182012Copyright(c)…

    2022年9月20日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号