Enjoy A New Student Discount All 55,000 Courses on sale for Only $12.99

Ends in 05h 23m 49s

Mejorando la seguridad en Spring

El articulo de hoy, solo es un pequeño recuerda acerca de como evitar la fuga de contraseñas y datos cuando estas programando una aplicación Spring.

Leer más: Mejorando la seguridad en Spring

En la mayoría de aplicaciones de Spring, tenemos que indicar los datos de conexión en el fichero application.properties, y, esa información sube a Github, Gitlab o a cualquier otro entorno semipúblico.

Quizás no veáis el tema demasiado grave, porque muchas veces son datos de desarrollo sin ningún valor (o eso pensáis) para un posible atacante, pero pienso, que estáis en un error.

Por una parte, aunque normalmente sean de desarrollo, si estamos trabajando dejando la información allí, también puede pasar que distraídamente podemos dejar los de produccion; además, aunque sean datos de desarrollo, el dar pistas acerca de donde están los servidores, o vuestra mecánica

para crear usuarios y contraseñas, son temas que mejor no se hacen publico.

Por ultimo, aunque sea por comodidad a la hora de desplegar y, sobre todo a la hora de mantener, si tuviéramos nuestros datos de desarrollo montados de tal manera que en nuestra maquina se aplicaran automáticamente, también nos ahorraría algo de trabajo, entonces….¿Porqué no hacerlo?

La propuesta

En el application.properties, podemos hacer referencia a otro fichero, bien, hagámoslo, dejamos en ese fichero toda la información y hacemos que git no lo suba….y resuelto.

Primero:

Creamos un fichero, yo lo he llamado «secret.properties» y lo llamamos al inicio de nuestro application.properties

Mi secret.properties es así:

Ahora, en el application.properties puedo escribir:

En spring.config.import puedo indicar

  • classpath:secret.properties o secret.properties si el fichero lo he creado al lado mismo de application.properties
  • file:secret.properties si el fichero lo he dejado en la raíz del proyecto

Solo me queda añadir a .gitignore una referencia a secret.properties para que no lo envíe con la versión.

Mis compañeros de desarrollo y produccion, cada uno tendrá su propio fichero secret.properties, y la seguridad no se ve comprometida en ningun momento

Deja un comentario

/*Si te ha gustado el artículo
no dudes en compartirlo*/

Facebook
Twitter
LinkedIn

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies

ACEPTAR
Aviso de cookies

Ver mi IP

Ver ip de mi máquina
tipo valor
Ip: 44.200.86.95
Proxy: 44.200.86.95
Remote host: ec2-44-200-86-95.compute-1.amazonaws.com
Remote port: 41412
** 44.200.86.95, 172.70.38.85