# 配置加密

# 概述

配置加密处理为了更好的进行审计和安全的配置,此多用于政府项目或者权限严格的项目进行加密处理

# 加密方式

引入依赖

<dependency>
    <groupId>com.alinesno.cloud.common.config</groupId>
    <artifactId>alinesno-cloud-common-config</artifactId>
    <version>{最新版本}</version>
</dependency>

生成加密字符

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class JasyptUtilsTest {

	private static final Logger log = LoggerFactory.getLogger(JasyptUtilsTest.class) ;

	public static void main(String[] args) {

		String str = "加密字符" ;
		String p = JasyptUtils.encryptPwd(str) ;

		log.debug("加密结果,请复制:\nENC({})" , p);
	}
}

# 生产发布

生产发布需要调整动态的密钥的配置,避免安全的问题,在启动的时间动态启动参数传入,随机生成即可:

-Djasypt.encryptor.password=动态密钥生成

这里建议结合jenkinsfile进行发布配置,随机生成密钥