zuul tutorial tools starter part greenwich finchley español and spring-boot spring-cloud

spring-boot - tutorial - spring cloud vs spring boot



¿Hay alguna forma de utilizar Spring Cloud{cifrado} en la configuración de la aplicación Spring Boot? (3)

Hay soporte para propiedades encriptadas en el cliente de configuración (como se describe en la guía del usuario ). Obviamente, si lo haces de esa manera tienes que proporcionar una clave para descifrar las propiedades en tiempo de ejecución, así que en realidad no siempre veo el beneficio (supongo que el archivo de configuración es un poco como un almacén de claves con un formato especial, por lo que solo tener un secreto para proteger en lugar de muchos). Ejemplo (application.yml):

integration: stores: test: ''{cipher}316f8cdbb776c23e679bf209014788a6eab7522f48f97114328c2c9388e6b3c1''

y la clave (en bootstrap.yml):

encrypt: key: ${ENCRYPT_KEY:} # deadbeef

Tengo una aplicación Spring Boot que usa Spring Cloud Config pero me gustaría encriptar la contraseña de Spring Cloud Config en el archivo bootstrap.yml de la aplicación Spring Boot. ¿Hay alguna forma de hacer esto? A continuación hay un ejemplo.

Spring Boot app bootstrap.yml

spring: cloud: config: uri: http://locahost:8888 username: user password: ''{cipher}encryptedpassword''



Un par de cosas que descubrí relacionadas con esto.

Si usa bootstrap.yml (o application.yml), el formato del texto de cifrado debe estar entre comillas simples:

security.user.password: ''{cipher}56e611ce4a99ffd99908d2c9aa1461d831722812e4370a5b6900b7ea680ae914''

Si usa bootstrap.properties (o application.properties), el formato para el texto de cifrado NO se debe adjuntar:

security.user.password= {cipher}56e611ce4a99ffd99908d2c9aa1461d831722812e4370a5b6900b7ea680ae914

Los [documentos de referencia] [1] muestran el yml sin las comillas, que nunca llegué a trabajar. SnakeYaml siempre informó un error:

"expected <block end>, but found Scalar"