SlideShare una empresa de Scribd logo
1 de 25
Descargar para leer sin conexión
Spring Boot and Vault
JCONF Mexico 2020 - Alejandro Cardenas
2020
Acerca de mi
Mas de 15 años como desarrollador, enfocado en tecnologías de
backend, actualmente trabajo en DigitalOnUs como Director de
las practicas de Desarrollo (Backend, Frontend y Mobile).
Mi experiencia técnica esta enfocada al desarrollo de backends
y en los últimos años he trabajado en el diseño e
implementación de micro servicios de aplicaciones desde cero y
migración de monolíticas hacia arquitecturas de microservicios,
además de promover la innovación dentro del equipo de trabajo.
Agenda
Secreto
Porque centralizar los secretos en un lugar?
Que es Vault?
Spring and Vault
Demo - Config Server
Demo - Transit
Demo - Deploy in the cloud
Secreto ?
My password is : *********
Por definición es: algo conocido por
un numero limitado de personas
Porque Centralizar secretos en un
lugar?
Casos Usuales
Guardamos los API Keys, usuarios y
passwords en texto plano
Obtenemos los secretos de diférentes
fuentes y con diferentes mecanismos
Almacenamos los secretos en archivos
“ocultos” en los SO pero en texto plano
Creamos nuestros propios mecanismos
de encriptacion
Si centralizamos los secretos …
Las aplicaciones no se preocuparían
por la información secreta, solo por
como leerla
Podemos enfocarnos en defendernos
de ataques y mantener segura la
información en un solo lugar
La encriptacion de la información se
delegaría, dejando de ser
responsabilidad de la aplicación
Como defender al Rey?
Asumiendo que tenemos que proteger al Rey en el castillo,
que seria mejor?
Dividir el ejercito a que proteja todas las puertas?
Juntar todo el ejercito a proteger la puerta del Rey ?
Que es Vault?
Es una herramienta de Hashicorp
Vault es una herramienta para
acceder a secretos de forma segura.
Vault proporciona una interfaz
unificada para almacenar cualquier
secreto, a la vez proporciona un
estricto control de acceso y realiza
una auditoría detallada de los
registros.
Características de Vault
Almacenamiento de secretos
seguro ( KV)
Secretos dinámicos
Encriptacion de datos
Arrendamiento y renovación
Revocación
Spring and Vault
Spring Cloud Vault permite obtener
secretos en formato KV (Key/Value)
almacenados en Vault
Sus contextos se pueden organizar de
manera Jerarquica para su acceso y
combinación, como:
secret/<spring.application.name>/<spring.profile.active>/key 
secret/<spring.application.name>/key 
secret/application/<spring.profile.active>/key 
secret/application/key
Spring and Vault
Spring Cloud Vault permite realizar
una encriptacion de datos mediante
el principio de API Driven
Vault no almacena la información,
sin embargo nos permite obtener la
información encriptada para
posteriormente utilizarla en nuestra
aplicación.
Spring INITIALIZR
▸https://start.spring.io/
https://gitlab.com/cardenas.alejandro/
spring-and-vault-demo
DEMO - Obtener Config KV
DEMO - Encriptar Datos
DEMO - Nuestro POC en la
nube
Puntos a Recordar
Para conectar el acceso a las bases de datos, recordar
agregar la dependencia:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-vault-config-databases</artifactId>
</dependency>
Q&A
Datos de Contacto
▸eMails : cardenas.alejandro@gmail.com
alejandro.cardenas@digitalonus.com
▸Twitter: @acardenasnet
▸Gitlab: https://gitlab.com/cardenas.alejandro
▸GitHub: https://github.com/acardenasnet
▸Linkedin: https://www.linkedin.com/in/acardenasnet/
“It is easier to write an incorrect program than understand a
correct one.”
–Unknown

Más contenido relacionado

Similar a Spring and Vault - Jconf mex2020

Introduccion a la seguridad en Windows Azure
Introduccion a la seguridad en Windows AzureIntroduccion a la seguridad en Windows Azure
Introduccion a la seguridad en Windows AzureJuan Pablo
 
Seguridad ágil? Dejamos de ser los villanos!
Seguridad ágil? Dejamos de ser los villanos!Seguridad ágil? Dejamos de ser los villanos!
Seguridad ágil? Dejamos de ser los villanos!Carlos Montero
 
2018 cyberark evento cloud
2018   cyberark evento cloud2018   cyberark evento cloud
2018 cyberark evento cloudCSA Argentina
 
Seguridad en los modelos operativos de nube
Seguridad en los modelos operativos de nubeSeguridad en los modelos operativos de nube
Seguridad en los modelos operativos de nubeDaniel Levi
 
Colombia Bootcamp Azure Key Vault.pptx
Colombia Bootcamp Azure Key Vault.pptxColombia Bootcamp Azure Key Vault.pptx
Colombia Bootcamp Azure Key Vault.pptxLuis Beltran
 
Seguridad de las aplicaciones web con Spring Security 3.x
Seguridad de las aplicaciones web con Spring Security 3.xSeguridad de las aplicaciones web con Spring Security 3.x
Seguridad de las aplicaciones web con Spring Security 3.xFernando Redondo Ramírez
 
Comenzando con los servicios móviles en AWS
Comenzando con los servicios móviles en AWSComenzando con los servicios móviles en AWS
Comenzando con los servicios móviles en AWSAmazon Web Services LATAM
 
Hack Like a Pro With Custom VPS - Taller Navaja Negra 2019
Hack Like a Pro With Custom VPS - Taller Navaja Negra 2019Hack Like a Pro With Custom VPS - Taller Navaja Negra 2019
Hack Like a Pro With Custom VPS - Taller Navaja Negra 2019Javier García Antón
 
Seguridad en las apis desde un punto de vista de developer
Seguridad en las apis desde un punto de vista de developerSeguridad en las apis desde un punto de vista de developer
Seguridad en las apis desde un punto de vista de developerCloudAppi
 
Cloud native y donde esta el piloto
Cloud native   y donde esta el pilotoCloud native   y donde esta el piloto
Cloud native y donde esta el pilotoCSA Argentina
 
1. introduccioìn a la seguridad
1. introduccioìn a la seguridad1. introduccioìn a la seguridad
1. introduccioìn a la seguridad1 2d
 
Ransomware: cómo recuperar sus datos en la nube de AWS
Ransomware: cómo recuperar sus datos en la nube de AWSRansomware: cómo recuperar sus datos en la nube de AWS
Ransomware: cómo recuperar sus datos en la nube de AWSAmazon Web Services LATAM
 
SSIS a fondo: monitorización y ajustes del servicio en producción - SolidQ Su...
SSIS a fondo: monitorización y ajustes del servicio en producción - SolidQ Su...SSIS a fondo: monitorización y ajustes del servicio en producción - SolidQ Su...
SSIS a fondo: monitorización y ajustes del servicio en producción - SolidQ Su...SolidQ
 
Seguridad de información para criptoactivos
Seguridad de información para criptoactivosSeguridad de información para criptoactivos
Seguridad de información para criptoactivosEudy Zerpa
 
Llevando a Colombia a la seguridad conectada
Llevando a Colombia a la seguridad conectadaLlevando a Colombia a la seguridad conectada
Llevando a Colombia a la seguridad conectadaMinisterio TIC Colombia
 
Visual Studio 2010 Ligthswitch + AZURE + Zero Code
Visual Studio 2010 Ligthswitch + AZURE + Zero CodeVisual Studio 2010 Ligthswitch + AZURE + Zero Code
Visual Studio 2010 Ligthswitch + AZURE + Zero CodeBruno Capuano
 
DevOps Spain 2019. Javier Hijas-Check Point
DevOps Spain 2019. Javier Hijas-Check PointDevOps Spain 2019. Javier Hijas-Check Point
DevOps Spain 2019. Javier Hijas-Check PointatSistemas
 
Introducción a La Seguridad Desde La Perspectiva Del Desarrollador V2
Introducción a La Seguridad Desde La Perspectiva Del Desarrollador V2Introducción a La Seguridad Desde La Perspectiva Del Desarrollador V2
Introducción a La Seguridad Desde La Perspectiva Del Desarrollador V2Juan Pablo
 

Similar a Spring and Vault - Jconf mex2020 (20)

Introduccion a la seguridad en Windows Azure
Introduccion a la seguridad en Windows AzureIntroduccion a la seguridad en Windows Azure
Introduccion a la seguridad en Windows Azure
 
Seguridad ágil? Dejamos de ser los villanos!
Seguridad ágil? Dejamos de ser los villanos!Seguridad ágil? Dejamos de ser los villanos!
Seguridad ágil? Dejamos de ser los villanos!
 
2018 cyberark evento cloud
2018   cyberark evento cloud2018   cyberark evento cloud
2018 cyberark evento cloud
 
Seguridad en los modelos operativos de nube
Seguridad en los modelos operativos de nubeSeguridad en los modelos operativos de nube
Seguridad en los modelos operativos de nube
 
Colombia Bootcamp Azure Key Vault.pptx
Colombia Bootcamp Azure Key Vault.pptxColombia Bootcamp Azure Key Vault.pptx
Colombia Bootcamp Azure Key Vault.pptx
 
Seguridad de las aplicaciones web con Spring Security 3.x
Seguridad de las aplicaciones web con Spring Security 3.xSeguridad de las aplicaciones web con Spring Security 3.x
Seguridad de las aplicaciones web con Spring Security 3.x
 
Comenzando con los servicios móviles en AWS
Comenzando con los servicios móviles en AWSComenzando con los servicios móviles en AWS
Comenzando con los servicios móviles en AWS
 
Hack Like a Pro With Custom VPS - Taller Navaja Negra 2019
Hack Like a Pro With Custom VPS - Taller Navaja Negra 2019Hack Like a Pro With Custom VPS - Taller Navaja Negra 2019
Hack Like a Pro With Custom VPS - Taller Navaja Negra 2019
 
Seguridad en las apis desde un punto de vista de developer
Seguridad en las apis desde un punto de vista de developerSeguridad en las apis desde un punto de vista de developer
Seguridad en las apis desde un punto de vista de developer
 
Cloud native y donde esta el piloto
Cloud native   y donde esta el pilotoCloud native   y donde esta el piloto
Cloud native y donde esta el piloto
 
1. introduccioìn a la seguridad
1. introduccioìn a la seguridad1. introduccioìn a la seguridad
1. introduccioìn a la seguridad
 
Ransomware: cómo recuperar sus datos en la nube de AWS
Ransomware: cómo recuperar sus datos en la nube de AWSRansomware: cómo recuperar sus datos en la nube de AWS
Ransomware: cómo recuperar sus datos en la nube de AWS
 
SSIS a fondo: monitorización y ajustes del servicio en producción - SolidQ Su...
SSIS a fondo: monitorización y ajustes del servicio en producción - SolidQ Su...SSIS a fondo: monitorización y ajustes del servicio en producción - SolidQ Su...
SSIS a fondo: monitorización y ajustes del servicio en producción - SolidQ Su...
 
Seguridad de información para criptoactivos
Seguridad de información para criptoactivosSeguridad de información para criptoactivos
Seguridad de información para criptoactivos
 
Llevando a Colombia a la seguridad conectada
Llevando a Colombia a la seguridad conectadaLlevando a Colombia a la seguridad conectada
Llevando a Colombia a la seguridad conectada
 
Visual Studio 2010 Ligthswitch + AZURE + Zero Code
Visual Studio 2010 Ligthswitch + AZURE + Zero CodeVisual Studio 2010 Ligthswitch + AZURE + Zero Code
Visual Studio 2010 Ligthswitch + AZURE + Zero Code
 
DevOps Spain 2019. Javier Hijas-Check Point
DevOps Spain 2019. Javier Hijas-Check PointDevOps Spain 2019. Javier Hijas-Check Point
DevOps Spain 2019. Javier Hijas-Check Point
 
computacion en nube
computacion en nubecomputacion en nube
computacion en nube
 
Introducción a La Seguridad Desde La Perspectiva Del Desarrollador V2
Introducción a La Seguridad Desde La Perspectiva Del Desarrollador V2Introducción a La Seguridad Desde La Perspectiva Del Desarrollador V2
Introducción a La Seguridad Desde La Perspectiva Del Desarrollador V2
 
computacion en la nube
computacion en la nubecomputacion en la nube
computacion en la nube
 

Último

Virus informático (tipos y opciones para prevenir)
Virus informático (tipos y opciones para prevenir)Virus informático (tipos y opciones para prevenir)
Virus informático (tipos y opciones para prevenir)edisonquispecalderon
 
serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...
serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...
serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...juanforero141
 
Tkinter para python (curso de interfaces gráficas)
Tkinter para python (curso de interfaces gráficas)Tkinter para python (curso de interfaces gráficas)
Tkinter para python (curso de interfaces gráficas)martinezhd1
 
Tipos de datos en Microsoft Access definiciones.pdf
Tipos de datos en Microsoft Access definiciones.pdfTipos de datos en Microsoft Access definiciones.pdf
Tipos de datos en Microsoft Access definiciones.pdfCarlosSanchez452245
 
LA CALIDAD DE LA INFORMACION EN LA NUEVA ERA DEL INTERNET
LA CALIDAD DE LA INFORMACION  EN LA NUEVA ERA DEL INTERNETLA CALIDAD DE LA INFORMACION  EN LA NUEVA ERA DEL INTERNET
LA CALIDAD DE LA INFORMACION EN LA NUEVA ERA DEL INTERNETCasa
 
Ciberseguridad y Seguridad Informática Franco Correa Grupo B.pptx
Ciberseguridad y Seguridad Informática Franco Correa Grupo B.pptxCiberseguridad y Seguridad Informática Franco Correa Grupo B.pptx
Ciberseguridad y Seguridad Informática Franco Correa Grupo B.pptxcorreafrancoci00
 
CIBERSEGURIDAD Y SEGURIDAD INFORMÁTICA.pptx
CIBERSEGURIDAD  Y SEGURIDAD INFORMÁTICA.pptxCIBERSEGURIDAD  Y SEGURIDAD INFORMÁTICA.pptx
CIBERSEGURIDAD Y SEGURIDAD INFORMÁTICA.pptxalzabenjaminci00
 

Último (7)

Virus informático (tipos y opciones para prevenir)
Virus informático (tipos y opciones para prevenir)Virus informático (tipos y opciones para prevenir)
Virus informático (tipos y opciones para prevenir)
 
serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...
serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...
serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...
 
Tkinter para python (curso de interfaces gráficas)
Tkinter para python (curso de interfaces gráficas)Tkinter para python (curso de interfaces gráficas)
Tkinter para python (curso de interfaces gráficas)
 
Tipos de datos en Microsoft Access definiciones.pdf
Tipos de datos en Microsoft Access definiciones.pdfTipos de datos en Microsoft Access definiciones.pdf
Tipos de datos en Microsoft Access definiciones.pdf
 
LA CALIDAD DE LA INFORMACION EN LA NUEVA ERA DEL INTERNET
LA CALIDAD DE LA INFORMACION  EN LA NUEVA ERA DEL INTERNETLA CALIDAD DE LA INFORMACION  EN LA NUEVA ERA DEL INTERNET
LA CALIDAD DE LA INFORMACION EN LA NUEVA ERA DEL INTERNET
 
Ciberseguridad y Seguridad Informática Franco Correa Grupo B.pptx
Ciberseguridad y Seguridad Informática Franco Correa Grupo B.pptxCiberseguridad y Seguridad Informática Franco Correa Grupo B.pptx
Ciberseguridad y Seguridad Informática Franco Correa Grupo B.pptx
 
CIBERSEGURIDAD Y SEGURIDAD INFORMÁTICA.pptx
CIBERSEGURIDAD  Y SEGURIDAD INFORMÁTICA.pptxCIBERSEGURIDAD  Y SEGURIDAD INFORMÁTICA.pptx
CIBERSEGURIDAD Y SEGURIDAD INFORMÁTICA.pptx
 

Spring and Vault - Jconf mex2020

  • 1. Spring Boot and Vault JCONF Mexico 2020 - Alejandro Cardenas 2020
  • 2. Acerca de mi Mas de 15 años como desarrollador, enfocado en tecnologías de backend, actualmente trabajo en DigitalOnUs como Director de las practicas de Desarrollo (Backend, Frontend y Mobile). Mi experiencia técnica esta enfocada al desarrollo de backends y en los últimos años he trabajado en el diseño e implementación de micro servicios de aplicaciones desde cero y migración de monolíticas hacia arquitecturas de microservicios, además de promover la innovación dentro del equipo de trabajo.
  • 3. Agenda Secreto Porque centralizar los secretos en un lugar? Que es Vault? Spring and Vault Demo - Config Server Demo - Transit Demo - Deploy in the cloud
  • 4. Secreto ? My password is : ********* Por definición es: algo conocido por un numero limitado de personas
  • 6. Casos Usuales Guardamos los API Keys, usuarios y passwords en texto plano Obtenemos los secretos de diférentes fuentes y con diferentes mecanismos Almacenamos los secretos en archivos “ocultos” en los SO pero en texto plano Creamos nuestros propios mecanismos de encriptacion
  • 7. Si centralizamos los secretos … Las aplicaciones no se preocuparían por la información secreta, solo por como leerla Podemos enfocarnos en defendernos de ataques y mantener segura la información en un solo lugar La encriptacion de la información se delegaría, dejando de ser responsabilidad de la aplicación
  • 8. Como defender al Rey? Asumiendo que tenemos que proteger al Rey en el castillo, que seria mejor? Dividir el ejercito a que proteja todas las puertas? Juntar todo el ejercito a proteger la puerta del Rey ?
  • 9. Que es Vault? Es una herramienta de Hashicorp Vault es una herramienta para acceder a secretos de forma segura. Vault proporciona una interfaz unificada para almacenar cualquier secreto, a la vez proporciona un estricto control de acceso y realiza una auditoría detallada de los registros.
  • 10. Características de Vault Almacenamiento de secretos seguro ( KV) Secretos dinámicos Encriptacion de datos Arrendamiento y renovación Revocación
  • 11. Spring and Vault Spring Cloud Vault permite obtener secretos en formato KV (Key/Value) almacenados en Vault Sus contextos se pueden organizar de manera Jerarquica para su acceso y combinación, como: secret/<spring.application.name>/<spring.profile.active>/key  secret/<spring.application.name>/key  secret/application/<spring.profile.active>/key  secret/application/key
  • 12. Spring and Vault Spring Cloud Vault permite realizar una encriptacion de datos mediante el principio de API Driven Vault no almacena la información, sin embargo nos permite obtener la información encriptada para posteriormente utilizarla en nuestra aplicación.
  • 14.
  • 16. DEMO - Obtener Config KV
  • 17.
  • 19.
  • 20.
  • 21. DEMO - Nuestro POC en la nube
  • 22. Puntos a Recordar Para conectar el acceso a las bases de datos, recordar agregar la dependencia: <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-vault-config-databases</artifactId> </dependency>
  • 23. Q&A
  • 24. Datos de Contacto ▸eMails : cardenas.alejandro@gmail.com alejandro.cardenas@digitalonus.com ▸Twitter: @acardenasnet ▸Gitlab: https://gitlab.com/cardenas.alejandro ▸GitHub: https://github.com/acardenasnet ▸Linkedin: https://www.linkedin.com/in/acardenasnet/
  • 25. “It is easier to write an incorrect program than understand a correct one.” –Unknown