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


相关推荐

  • 13 万字 C 语言从入门到精通保姆级教程2021 年版

    13万字C语言保姆级教程,从入门到精通。

    2022年4月9日
    30
  • Vagrant入门

    Vagrant入门

    2021年11月7日
    44
  • NAND FLASH_Flash下载

    NAND FLASH_Flash下载作者:德州仪器现场技术支持工程师孟海燕概要:本文介绍了DM368NANDFlash启动的原理,并且以DM368 IPNC参考设计软件为例,介绍软件是如何配合硬件实现启动的。关键字:NANDFlash启动,RBL,UBL           芯片上电后是如何启动实现应用功能的?这是许多工程师在看到处理器运行的时候,通常都会问的一个问题。下面我们就以德州仪器的多媒体处理芯

    2022年8月13日
    7
  • ubuntu全盘备份与恢复[通俗易懂]

    ubuntu全盘备份与恢复

    2022年2月4日
    63
  • Delphi XE5中的新增内容

    Delphi XE5中的新增内容DelphiXE5中的新增内容DelphiXE5是所有Delphi开发人员的必须备升级,并且是来自Embarcadero的获奖的、多设备应用开发解决方案的最新版本。使用DelphiXE5的新特性,以交付应用Android、iOS、Windows和OSX。以PC机、平板电脑和智能手机为目标,更轻松地与更多数据连接-等等!DelphiXE5中的新特性针对设

    2022年7月18日
    21
  • pycharm 远程调试图文_Pycharm配置远程调试的图文步骤「建议收藏」

    pycharm 远程调试图文_Pycharm配置远程调试的图文步骤「建议收藏」Pycharm配置远程调试方法总结动机一些bug由于本地环境和线上环境的不一致可能导致本地无法复现本地依赖和线上依赖版本不一致也可以导致一些问题有时一些bug跟数据相关,本地数据无法和线上数据一致有些三方平台会验证服务器的合法性或者异步回调结果,如微信支付,这时候本地无法测试如上所诉,要是有一个很方便调试远程服务器的方法,岂不美哉。通过PyCharm我们可以很方便地实现远程调试,下面详细介绍下Py…

    2022年8月28日
    4

发表回复

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

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