Druid的数据库加密使用

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: Druid的connection-properties使用

Druid提供一种数据库密码加密的手段。

开启方式:

  # 参考示例
  datasource:
      type: com.alibaba.druid.pool.DruidDataSource
      driverClassName: com.mysql.jdbc.Driver
      druid:
        filter:
          config:
            enabled: true
        first:  #数据源1
          url: jdbc:mysql://127.0.0.1:3306/test?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8
          username: test
          password: KApoemJ65LvvKdblHaZ3Jt3n+/CxrqOxxJj/c7v83IEgnc5mKk+GdorvH6CGt0VAdDTw8p8QfyY7RqsWbHi+Fw==
          connection-properties: config.decrypt=true;config.decrypt.key=MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAJ5Oo6KlXX+Qp2onP09hUWV98Vl9MmNsgwtyAT+VX77oCjnWukT2rHysPdR0Ti8lfFrqHIh7dE8d6PxWhsp80xsCAwEAAQ==
        

首先,知道你的项目jar版本,再去找到你项目所使用的druid的jar包位置,然后在文件的地址栏键入cmd后回车,弹出命令行窗口后。修改下面命令,再复制到命令行中回车。

java -cp druid-1.1.12.jar com.alibaba.druid.filter.config.ConfigTools myPassword

1.1.12——修改成你项目的版本号

myPassword——修改成你的数据库连接密码

小白步骤:

copy path 获取路径,文件窗口键入C:\Users\15269.m2\repository\com\alibaba\druid\1.1.12

地址栏键入cmd,弹出命令行窗口后,将上面修改后的命令复制到命令行中。

结果:

public key复制后放在yml配置的“connection-properties: config.decrypt=true;config.decrypt.key=” 后面,password复制后放到yml配置的password后面。

踩坑注意

当数据库使用特殊符号为密码时,无法使用加密 会解密失败,如!@#¥%……&* 等

经检验, . 这两个是可以的,源码里解密过程使用了final 咱们无法去修改它,所以如果要使用Druid来加密数据库密码,就不要使用特殊符号拉。

该问题倒腾了好久,最后经过不断的测试终于找到了问题。网上几乎找不到解决方案和加密说明。所以就写下来记录一下!

目录
相关文章
|
1月前
|
存储 缓存 Java
java语言后台管理ruoyi后台管理框架-登录提示“无效的会话,或者会话已过期,请重新登录。”-扩展知识数据库中密码加密的方法-问题如何解决-以及如何重置若依后台管理框架admin密码-优雅草卓伊凡
java语言后台管理ruoyi后台管理框架-登录提示“无效的会话,或者会话已过期,请重新登录。”-扩展知识数据库中密码加密的方法-问题如何解决-以及如何重置若依后台管理框架admin密码-优雅草卓伊凡
109 3
java语言后台管理ruoyi后台管理框架-登录提示“无效的会话,或者会话已过期,请重新登录。”-扩展知识数据库中密码加密的方法-问题如何解决-以及如何重置若依后台管理框架admin密码-优雅草卓伊凡
|
4月前
|
Linux 数据库 数据安全/隐私保护
GBase 数据库 加密客户端---数据库用户口令非明文存放需求的实现
GBase 数据库 加密客户端---数据库用户口令非明文存放需求的实现
|
5月前
|
安全 算法 Java
数据库信息/密码加盐加密 —— Java代码手写+集成两种方式,手把手教学!保证能用!
本文提供了在数据库中对密码等敏感信息进行加盐加密的详细教程,包括手写MD5加密算法和使用Spring Security的BCryptPasswordEncoder进行加密,并强调了使用BCryptPasswordEncoder时需要注意的Spring Security配置问题。
302 0
数据库信息/密码加盐加密 —— Java代码手写+集成两种方式,手把手教学!保证能用!
|
7月前
|
SQL 安全 网络安全
"守护数据王国,揭秘SQL权限管理与安全配置秘籍!从创建用户到加密技术,全方位打造铜墙铁壁,让你的数据库安全无忧,远离黑客侵扰!"
【8月更文挑战第31天】数据库是信息系统的核心,存储了大量敏感数据,因此确保其安全至关重要。本文详细介绍了SQL权限管理与安全配置的方法,包括理解权限类型、创建用户和角色、分配权限、实施密码策略、使用加密技术、配置防火墙、定期审计备份及防止SQL注入等,帮助你全面保护数据库安全。通过这些步骤,你可以有效管理和配置数据库权限,防范潜在威胁,确保数据隐私和完整性。
142 0
|
7月前
|
druid Java 数据库连接
SpringBoot项目整合MybatisPlus持久层框架+Druid数据库连接池,以及实现增删改查功能
SpringBoot项目整合MybatisPlus和Druid数据库连接池,实现基本的增删改查功能。
514 0
|
7月前
|
数据库 数据安全/隐私保护
远程桌面CredSSP 加密数据库修正
远程桌面CredSSP 加密数据库修正
87 0
|
2月前
|
关系型数据库 MySQL 数据库连接
数据库连接工具连接mysql提示:“Host ‘172.23.0.1‘ is not allowed to connect to this MySQL server“
docker-compose部署mysql8服务后,连接时提示不允许连接问题解决
|
1月前
|
关系型数据库 MySQL 数据库
Docker Compose V2 安装常用数据库MySQL+Mongo
以上内容涵盖了使用 Docker Compose 安装和管理 MySQL 和 MongoDB 的详细步骤,希望对您有所帮助。
173 42
|
2天前
|
SQL 关系型数据库 MySQL
MySQL生产环境迁移至YashanDB数据库深度体验
这篇文章是作者将 MySQL 生产环境迁移至 YashanDB 数据库的深度体验。介绍了 YashanDB 迁移平台 YMP 的产品相关信息、安装步骤、迁移中遇到的各种兼容问题及解决方案,最后总结了迁移体验,包括工具部署和操作特点,也指出功能有优化空间及暂不支持的部分,期待其不断优化。
|
26天前
|
关系型数据库 MySQL 网络安全
如何排查和解决PHP连接数据库MYSQL失败写锁的问题
通过本文的介绍,您可以系统地了解如何排查和解决PHP连接MySQL数据库失败及写锁问题。通过检查配置、确保服务启动、调整防火墙设置和用户权限,以及识别和解决长时间运行的事务和死锁问题,可以有效地保障应用的稳定运行。
130 25

热门文章

最新文章