前言
我们在SpringBoot
项目当中,会把数据库的用户名密码等配置直接放在yaml
或者properties
文件中,这样维护数据库的密码等敏感信息显然是有一定风险的,如果相关的配置文件被有心之人拿到,必然会给项目造成一定的安全风险;所以为了避免明文密码被直接看到,我们有必要给这些敏感信息做一层加密处理,也就是说,我们的配置文件中配置的都是加密后的密码,在真正需要获取密码的时候再解密出来,这样的话就能很大程度上降低密码被泄漏的风险;
示例展示
我们来看一下这个配置:
spring:
# 数据库链接配置
datasource:
url: jdbc:mysql://xx.xx.xx.xx:3306/database
driver-class-name: com.mysql.cj.jdbc.Driver
username: root
password: "123456"
复制代码
我们上述的配置spring.datasource.password
对应的值为123456
,这么敏感的信息直接放在配置文件中很不合适,我们要做的就是对应的值改成一个加密的密文,如下:
spring:
# 数据库链接配置
datasource:
url: jdbc:mysql://xx.xx.xx.xx:3306/database
driver-class-name: com.mysql.cj.jdbc.Driver
username: root
password: "AES(DzANBAhBWXxZqAOsagIBCoaw8FV4gYRbid7G70UEM24=)"
复制代码