spring cloud 中使用jasypt-spring-boot-starter 配合Nacos进行配置加密
<!-- jasypt 配置文件敏感信息加解密 -->
<dependency>
<groupId>com.github.ulisesbocchio</groupId>
<artifactId>jasypt-spring-boot-starter</artifactId>
<version>3.0.3</version>
</dependency>
public static String encryptWithSHA512(String plainText, String factor) {
// 1. 创建加解密工具实例
PooledPBEStringEncryptor encryptor = new PooledPBEStringEncryptor();
// 2. 加解密配置
SimpleStringPBEConfig config = new SimpleStringPBEConfig();
config.setPassword(factor);
config.setAlgorithm("PBEWITHHMACSHA512ANDAES_256");
// 为减少配置文件的书写,以下都是 Jasyp 3.x 版本,配置文件默认配置
config.setKeyObtentionIterations( "1000");
config.setPoolSize("1");
config.setProviderName("SunJCE");
config.setSaltGeneratorClassName("org.jasypt.salt.RandomSaltGenerator");
config.setIvGeneratorClassName("org.jasypt.iv.RandomIvGenerator");
config.setStringOutputType("base64");
encryptor.setConfig(config);
// 3. 加密
return encryptor.encrypt(plainText);
}
Nacos的配置中加密
auth=ENC(gaAuVVD5qwYnI3/AKHGczgjxmrae9AzYE7kEsIJ7oksX4R+IwQp+6l32LmDBcIXi)
在Spring项目中解密
-Djasypt.encryptor.password=123456
参考地址:https://blog.csdn.net/zh452647457/article/details/118559718
全部评论