SpringBoot_配置文件加密_jasypt

依赖pom.xml

	<!-- 配置文件内容加密 -->
	<dependency>
		<groupId>com.github.ulisesbocchio</groupId>
		<artifactId>jasypt-spring-boot-starter</artifactId>
		<version>2.1.0</version>
	</dependency>

配置文件bootstrap.yml

#--------------配置salt-------------------------
jasypt: # 一般放在部署服务器上 java -jar -Djasypt.encryptor.password=${JASYPT_PASSWORD} xxx.jar
  encryptor:
    password: DWI281eaf2d0

配置源码

加解密工具类

/**
 * 
 * <dependency>
			<groupId>com.github.ulisesbocchio</groupId>
			<artifactId>jasypt-spring-boot-starter</artifactId>
			<version>2.1.0</version>
		</dependency>
 * 
 * 盐一般放在部署服务器上
 * 配置文件使用格式:ENC(VYmtfufae+prDNKDNLYwiA==)
 * jasypt加密
 * @author vander
 *
 */
public class JasyptUtil {
	static BasicTextEncryptor textEncryptor = new BasicTextEncryptor();	
	
	public JasyptUtil(String salt) {
		textEncryptor.setPassword(salt);
	}	
	/**
	 * 获取加密文件
	 * 配置文件中使用示例:password: ENC(8ewX72SaFcGu7P3CR3BxFQ==)
	 * 
	 * @param salt
	 * @param value
	 * @return
	 */
	public String encrypt(String value) {
		return textEncryptor.encrypt(value);
	}
	
	/**
	 * 解密
	 * 
	 * @param salt
	 * @param value
	 * @return
	 */
	public String decrypt(String value) {
		return textEncryptor.decrypt(value);
	}
	
	public static void main(String[] args) {
		JasyptUtil jasyptUtil = new JasyptUtil("DWI281eaf2d0");
		String encrypt = jasyptUtil.encrypt("123456");
		String decrypt = jasyptUtil.decrypt("VYmtfufae+prDNKDNLYwiA==");
		System.err.println(decrypt);
		System.err.println(encrypt);
	}
}

配置文件中使用示例

spring:
  cloud:
    config:
      # 配置中心安全访问
      username: root
      password: ENC(VYmtfufae+prDNKDNLYwiA==)

Guess you like

Origin blog.csdn.net/qq_15764943/article/details/88080119