❝
La mayoría de los proyectos necesitan usar el archivo de configuración. El archivo de configuración configura cierta información necesaria, como la información de conexión de la base de datos y la información del caché, y esta información está escrita en el archivo de configuración en texto sin formato, lo cual es bastante peligroso. A continuación, lo haré introducir una solución Al cifrar la información de configuración y colocarla en el archivo de configuración, el riesgo se reduce considerablemente.
❞
No hay mucho que decir, simplemente vaya directamente al caso, el código es más útil que cualquier otra cosa.
1. Dependencias de importación
<!--jasypt加密依赖-->
<dependency>
<groupId>com.github.ulisesbocchio</groupId>
<artifactId>jasypt-spring-boot-starter</artifactId>
<version>2.1.2</version>
</dependency>
2. Cree una clase de prueba e inicie el cifrado
@Test
public void testEnc() {
StandardPBEStringEncryptor encryptor = new StandardPBEStringEncryptor();
encryptor.setPassword("123456");
String CloudCoder = encryptor.encrypt("CloudCoder");
System.out.println("CloudCoder = " + CloudCoder);
}
Cadena de texto cifrado cifrada:
oKIdQ2pqK0mat7j/UnWNL+gNtJqWmsNG
3. Reemplace la información de configuración original
# ENC()标识加密串
my.config-username=CloudCoder
替换成
my.config-username=ENC(oKIdQ2pqK0mat7j/UnWNL+gNtJqWmsNG)
4. Clave de cifrado
En cuanto a la clave de cifrado, generalmente se configura en los parámetros de la máquina virtual, y también se puede configurar en los parámetros de inicio si se inicia el paquete jar. Como dijeron algunos bloggers, escríbalo en el archivo de configuración, y no lo recomiendo encarecidamente. La información de configuración está encriptada originalmente. ¿No es el cifrado de la clave secreta escrita en el archivo de configuración igual a engaño? Esto no se recomienda Tan seco, usar mi método a continuación es suficiente.
desarrollador:
Parámetros de la máquina virtual
pinchar:
nohup java -Djasypt.encryptor.password=123456 -jar xxx.jar &
epílogo
视野决定上限,能力决定下限,努力决定空间
, ¿Se siente muy simple? Sí, es así de fácil, porque el paquete jar está empaquetado por los predecesores, solo necesita usarlo, sigue siendo muy conveniente.