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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python 6行代码搞定图片批量重命名「建议收藏」

    python 6行代码搞定图片批量重命名「建议收藏」importpandasaspdimportosf1=pd.read_excel(‘花.xlsx’,converters={‘name’:int,’rename’:str})如下图所示,为f1。读取’花.xlsx’文件,以整型的形式读取’nama’,以文本的形式读取’rename’。name为图片原始的命名。rename为图片重命名的结果。filelist…

    2022年9月5日
    3
  • Java之XML的使用「建议收藏」

    Java之XML的使用「建议收藏」一.xml的定义和优势:(1).定义:在描述一些有结构性的数据时应当使用XML来描述,例如:用户信息/省市结构等XML(eXtensibleMarkupLanguage),是一种可扩展的标记语言,类似HTML。XML技术是W3C组织(WorldWideWebConsortium万维网联盟)发布的,目前遵循的是W3C组织于1998年发布的XML1.0规范。HTML:显示页面,网…

    2022年7月7日
    22
  • Android 浏览器分享到APP「建议收藏」

    Android 浏览器分享到APP「建议收藏」1.在配置文件添加权限&lt;uses-permissionandroid:name="com.android.launcher.permission.INSTALL_SHORTCUT"/&gt;2.在配置文件中给分享到APP的界面(Acticiy)添加intent-filter&lt;intent-filter&gt;&lt;actionandroid:name="android…

    2022年5月14日
    40
  • UML类图总结(浅显易懂实用)

    UML类图总结(浅显易懂实用)UML类图的作用是描述程序中类的信息及各个类之间的关系。所有的面向对象(ObjectOriented)语言都离不开类的概念,理解了程序中类的设计也就理解了程序的一半。但类的具体描述方式在各个类中都不一样,UML类图的提出是为了能够脱离语言的限制,抽象地描述各个类的信息及各个类之间的关系。这是UML类图的作用。一、类的基本表示方式在UML类图中,每一个矩形代表一个类。我们举一个简单的例子:这是一个…

    2022年7月12日
    13
  • CSDN第一篇博客日记

    CSDN第一篇博客日记CSDN注册很久了,但一直都没来弄,因为开始刚刚学C和C++,许多的东西进来看不懂,觉得这还不是我的一片天地,而转眼又过了两年了,现在的我已经是大二快读完了,我学的是信息与计算科学专业,学了C和C++,现在正在学习数据结构,感觉有点难,看不懂~ 有个时候碰到问题总是自己不能解决,在QQ问问里和百度里搜吧答案找一个只能是一个,过后又忘记了,想把自己的问题以及学习过程记录下来,也想把自己得到的好的解

    2022年4月29日
    29
  • ibatis的动态sql

    ibatis的动态sql

    2021年9月6日
    63

发表回复

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

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