springBoot配置文件账号密码加密存储(springCloud nacos)

这篇具有很好参考价值的文章主要介绍了springBoot配置文件账号密码加密存储(springCloud nacos)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        最近公司有要求,项目中的配置文件不允许明文存储,全部要改为密文,收集了一些资料,在这里做下记录总结。

1、引入依赖

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

2、启动配置注解

在Application启动主类中加入启动注解 @EnableEncryptableProperties

nacos用户名密码 配置,系统安全,maven,java,spring boot,系统安全

3、配置文件yml里面增加加密算法jasypt配置

jasypt:
  encryptor:
	# 加密英子 自定义随机字符串
	password: 06d698b3d86f519e
	# 加密算法 
    algorithm: PBEWithHmacSHA512AndAES_128

注:加密因子password配置在配置文件中也会涉及到安全问题,更安全的做法是:将其作为系统环境变量的方式来带入。

修改如下:

nacos用户名密码 配置,系统安全,maven,java,spring boot,系统安全

本地启动可按下图配置:

nacos用户名密码 配置,系统安全,maven,java,spring boot,系统安全 

 

4、用命令行生成明文对应的密文

nacos用户名密码 配置,系统安全,maven,java,spring boot,系统安全

找到jasypt.jar包,在此文件夹下执行以下命令行:

java -cp jasypt-1.9.3.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI input=neo4j password=06d698b3d86f519e algorithm=PBEWithHmacSHA512AndAES_128 ivGeneratorClassName=org.jasypt.iv.RandomIvGenerator

其中

input:为需要加密的明文

password:加密因子,可自定义

algorithm:加密算法,此处固定为 PBEWithHmacSHA512AndAES_128

output:  执行命令行后生成的加密密文,见下图

nacos用户名密码 配置,系统安全,maven,java,spring boot,系统安全

5、将生成的加密密文配置到yml配置文件中,替换掉之前的明文账号密码

格式为:ENC(加密后的密文)

nacos用户名密码 配置,系统安全,maven,java,spring boot,系统安全

项目启动后即可生效,并且继续使用明文也不影响程序运行。文章来源地址https://www.toymoban.com/news/detail-590890.html

到了这里,关于springBoot配置文件账号密码加密存储(springCloud nacos)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • [springboot配置Kafka] springboot配置多个kafka,包含账号密码

    本示例只配置了Consumer没有配置Producer,可参考配置文件_1中注释内容部分 3.1配置文件_1 3.2配置文件_2 4.1 设置消费_1 4.2 设置消费_2

    2024年02月15日
    浏览(74)
  • 解密 MobaXterm 已经存储 Session 账号的密码

    MobaXterm 工具登录过 SSH 终端后,如果存储了 Session(存储后再连接ssh的时候只需要输入账号不需要输入密码就可以直接连接上ssh),则可以使用 github 开源项目 how-does-MobaXterm-encrypt-password 将加密的密码反解出来。 如果你是收费的专业版,你可以直接在界面上查看密码,专业版

    2024年02月17日
    浏览(25)
  • SpringBoot - 集成Swagger2、Knife4j接口文档/升级版swagger-bootstrap-ui配置以及账号密码登录

    请注意@Configuration和@EnableSwagger2注解。这两个注解分别表示这是一个配置类,以及启用了Swagger 2。只有在这两个注解都存在的情况下,Swagger才会被正确启用。 如果您的项目使用的是Swagger 3(即OpenAPI 3),则配置文件可能如下所示: 访问 http://localhost:8080/swagger-ui.html (假设项

    2024年02月08日
    浏览(32)
  • SpringCloud学习笔记(九)_使用Java类加载SpringBoot、SpringCloud配置文件

    我们都知道平常在使用SpringBoot和SpringCloud的时候,如果需要加载一两个配置文件的话我们通常使用@Value(“${属性名称}”)注解去加载。但是如果配置文件属性特别多的时候使用这种方式就显得特别的不友好了。 比如说,我们要加载下方这个名为application.yml的配置文件。 | —

    2024年02月11日
    浏览(30)
  • 对SpringBoot项目配置文件进行加密

    1.SpringBoot项目pom添加maven依赖  2.使用单元测试生成加密数据 设置配置文件(bootstrap.yml或者application.yml) password:加密的盐 algorithm:加密算法,这里使用 PBEWithMD5AndDES 运行单元测试文件 执行结果:    3.在SpringBoot项目中使用 配置mysql的jdbc,使用“ENC(密文)”配置密码,其他配置

    2024年02月09日
    浏览(33)
  • Spring Boot使用jasypt处理数据库账号密码等数据加密问题

    在我们业务场景中,项目中的application.yml 配置文件比如数据库账号密码,的各种链接的username,password的值都是明文的,存在一定的安全隐患,可以使用jasypt 加密框架的方式进行明文加密,进而使得我们项目更加安全 注意这里排除了mybatis-plus的包可能是项目中有冲突依赖,

    2024年02月06日
    浏览(42)
  • SpringBoot 配置文件这样加密,才足够安全!

    在使用Springboot时,通常很多信息都是在application.yml中直接明文配置的,比如数据库链接信息,redis链接信息等等。但是这样是不安全的。 所以需要对敏感数据进行加密,这样防止密码泄露 Jasypt这个库为我们解决了这个问题,实现了springboot配置的自定加密加密 源码对应地址:

    2023年04月16日
    浏览(29)
  • SpringCloud-SpringBoot读取Nacos上的配置文件

    在 Spring Boot 应用程序中,可以使用 Spring Cloud Nacos 来实现从 Nacos 服务注册中心和配置中心读取配置信息。以下是如何在 Spring Boot 中读取 Nacos 上的配置文件的步骤: 1. 引入依赖 首先,在 Spring Boot 项目的 pom.xml 文件中添加 Spring Cloud Nacos 的依赖: 2. 配置 Nacos 连接信息 将 Nac

    2024年04月17日
    浏览(42)
  • SpringBoot+jasypt-spring-boot-starter实现配置文件明文加密

    springboot:2.1.4.RELEASE JDK:8 jasypt-spring-boot-starter:3.0.2 Jasypt默认算法为PBEWithMD5AndDES,该算法需要一个加密密钥,可以在应用启动时指定(环境变量)。也可以直接写入配置文件 3.1 application.properties配置文件版 加密后,可删除jasypt.encryptor.password配置;发版时可在命令行中配置 3.2 函数

    2024年02月15日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包