SlideShare una empresa de Scribd logo
Introducción a JSON Web
Tokens (JWT) y su
implementación en Spring Boot
Grupo 1:
-Bussano Franco
-Escobar Maximiliano
-Guarmes Agustín
-Sueldo Simón
Introducción a JSON Web Tokens (JWT)
 ¿Qué es JSON Web Token (JWT)?
 JSON Web Token (JWT), o Token JSON Web, es un estándar abierto y altamente utilizado que permite una transmisión eficiente y segura de información
entre diversas aplicaciones o entidades. Se presenta en un formato compacto y autónomo, lo que significa que contiene toda la información necesaria para
su validación sin requerir consultas externas.
 Este token no solo transporta datos, sino que también garantiza su integridad y autenticidad mediante una firma digital. La información contenida en el
JWT puede ser verificada y confiable, ya que está firmada utilizando una clave secreta compartida entre el emisor y el receptor, o mediante el uso de un
par de claves pública y privada.
 JWT encuentra aplicación en una amplia gama de escenarios, como la autenticación de usuarios, la autorización en sistemas distribuidos y la transferencia
segura de datos entre servicios web. Su versatilidad y seguridad lo convierten en una herramienta fundamental para la comunicación segura y confiable
entre diferentes partes en el mundo digital.
 Características y funcionamiento de JWT
 Integridad y Autenticidad: El contenido del token está protegido mediante una firma digital. Esto garantiza que la información no se haya alterado durante
la transmisión y que el origen del token sea auténtico.
 Autenticación y Autorización: JWT se utiliza comúnmente para la autenticación de usuarios. Después de que un usuario inicia sesión, se emite un JWT que
contiene información sobre el usuario y sus permisos. Este token se envía en las solicitudes posteriores para verificar la identidad y los accesos del usuario.
 Autónomo: Un JWT es autocontenible y lleva consigo toda la información necesaria para su interpretación y validación. Esto reduce la necesidad de
consultar bases de datos o servicios adicionales, lo que mejora la eficiencia y la velocidad de las transacciones.
 Versatilidad: JWT es utilizado en una variedad de contextos, desde la autenticación en aplicaciones web y móviles hasta la autorización en sistemas de
servicios web y microservicios. Su flexibilidad se debe a la capacidad de incluir datos personalizados en forma de pares clave-valor.
Estructura de un JSON Web Token (JWT)
Componentes
de un JWT:
 Header
 Payload
 Signature
Estructura de un JSON Web Token (JWT)
 Cabecera (Header)
 Tipo de token (JWT) y algoritmo de firma
 Ejemplo de una cabecera: {"alg": "HS256", "typ": "JWT"}
 Carga útil (Payload)
 Explicación
 Tipos de afirmaciones: Registradas, públicas y privadas
 Ejemplo de carga útil: {"sub": "1234567890", "name": "John Doe", "admin": true}
 Firma (Signature)
 Cómo se crea y verifica
 Por ejemplo, si desea utilizar el algoritmo HMAC SHA256, la firma se creará de la siguiente
manera: HMACSHA256(
base64UrlEncode(header) + "." + base64UrlEncode(payload), secret)
Ventajas y casos de uso de JWT
 Ventajas de usar JWT en autenticación y autorización
 Bla bla
 Bla bla
 Casos de uso comunes:
 Autenticación de usuarios e inicio de sesión único: este es el escenario más común para
usar JWT. Una vez que el usuario haya iniciado sesión, cada solicitud posterior incluirá el
JWT, lo que permitirá al usuario acceder a rutas, servicios y recursos permitidos con ese
token. El inicio de sesión único es una función que se usa ampliamente en JWT en la
actualidad, debido a su pequeña sobrecarga y su capacidad para usarse fácilmente en
diferentes dominios.
 Intercambio de información segura: los tokens web JSON son una buena manera de
transmitir información de forma segura entre las partes. Debido a que los JWT se pueden
firmar, por ejemplo, utilizando pares de claves pública/privada, puede estar seguro de
que los remitentes son quienes dicen ser. Además, como la firma se calcula utilizando el
encabezado y la carga útil, también puede verificar que el contenido no haya sido
alterado.
Implementación de JWT en Spring Boot
 Implementación de JWT en Spring Boot
 Creación y emisión de JWT en Spring Boot
 Validación y autorización con JWT en Spring Boot
 Gestión de tokens y seguridad

Más contenido relacionado

Similar a JWT.pptx

Eap, PKI Y WPA.pptx
Eap, PKI Y WPA.pptxEap, PKI Y WPA.pptx
Eap, PKI Y WPA.pptx
SantiagoRuizRodrguez1
 
El blockchain, origen, evolución, importancia y aplicación
El blockchain, origen, evolución, importancia y aplicaciónEl blockchain, origen, evolución, importancia y aplicación
El blockchain, origen, evolución, importancia y aplicación
LzaroLpezErcilioFlor
 
Protocolo SSL, TLS Y SSH
Protocolo SSL, TLS Y SSHProtocolo SSL, TLS Y SSH
Protocolo SSL, TLS Y SSHAbner Torres
 
Servicios web
Servicios webServicios web
Servicios webjogoram
 
wimax
 wimax wimax
Pki
PkiPki
Certificados digitales
Certificados digitalesCertificados digitales
Certificados digitales
Luis Fernando Ordóñez Armijos
 
Santiago Porchetto - eCommerce Day Ecuador Blended [Professional] Experience
Santiago Porchetto - eCommerce Day Ecuador Blended [Professional] ExperienceSantiago Porchetto - eCommerce Day Ecuador Blended [Professional] Experience
Santiago Porchetto - eCommerce Day Ecuador Blended [Professional] Experience
eCommerce Institute
 
Voip2day video conferencia grado militar usando software libre
Voip2day   video conferencia grado militar usando software libreVoip2day   video conferencia grado militar usando software libre
Voip2day video conferencia grado militar usando software libre
Fernando Villares
 
Blockchain y sector asegurador
Blockchain y sector aseguradorBlockchain y sector asegurador
Blockchain y sector asegurador
CARLOS III UNIVERSITY OF MADRID
 
Actividad_ 5 - Infraestructura PKIx (svilatuña)
Actividad_ 5 - Infraestructura PKIx (svilatuña)Actividad_ 5 - Infraestructura PKIx (svilatuña)
Actividad_ 5 - Infraestructura PKIx (svilatuña)
santigovc
 
Grid1
Grid1Grid1
Grid1
Jessica
 
Grid1
Grid1Grid1
Grid1
Jessica
 
Grid
GridGrid
Grid
Jessica
 
Grid
GridGrid
Grid
Jessica
 

Similar a JWT.pptx (20)

Eap, PKI Y WPA.pptx
Eap, PKI Y WPA.pptxEap, PKI Y WPA.pptx
Eap, PKI Y WPA.pptx
 
El blockchain, origen, evolución, importancia y aplicación
El blockchain, origen, evolución, importancia y aplicaciónEl blockchain, origen, evolución, importancia y aplicación
El blockchain, origen, evolución, importancia y aplicación
 
Protocolos ssl
Protocolos sslProtocolos ssl
Protocolos ssl
 
Protocolo rodrigo
Protocolo rodrigoProtocolo rodrigo
Protocolo rodrigo
 
Protocolo SSL, TLS Y SSH
Protocolo SSL, TLS Y SSHProtocolo SSL, TLS Y SSH
Protocolo SSL, TLS Y SSH
 
Servicios web
Servicios webServicios web
Servicios web
 
wimax
 wimax wimax
wimax
 
Pki
PkiPki
Pki
 
Certificados digitales
Certificados digitalesCertificados digitales
Certificados digitales
 
Santiago Porchetto - eCommerce Day Ecuador Blended [Professional] Experience
Santiago Porchetto - eCommerce Day Ecuador Blended [Professional] ExperienceSantiago Porchetto - eCommerce Day Ecuador Blended [Professional] Experience
Santiago Porchetto - eCommerce Day Ecuador Blended [Professional] Experience
 
Voip2day video conferencia grado militar usando software libre
Voip2day   video conferencia grado militar usando software libreVoip2day   video conferencia grado militar usando software libre
Voip2day video conferencia grado militar usando software libre
 
Ssl
SslSsl
Ssl
 
Blockchain y sector asegurador
Blockchain y sector aseguradorBlockchain y sector asegurador
Blockchain y sector asegurador
 
Actividad_ 5 - Infraestructura PKIx (svilatuña)
Actividad_ 5 - Infraestructura PKIx (svilatuña)Actividad_ 5 - Infraestructura PKIx (svilatuña)
Actividad_ 5 - Infraestructura PKIx (svilatuña)
 
Grid1
Grid1Grid1
Grid1
 
Grid
GridGrid
Grid
 
Grid
GridGrid
Grid
 
Grid1
Grid1Grid1
Grid1
 
Grid
GridGrid
Grid
 
Grid
GridGrid
Grid
 

Último

TECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptx
TECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptxTECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptx
TECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptx
KatiuskaDominguez2
 
Tango-Gestion-Delta2.pdf...para aprender
Tango-Gestion-Delta2.pdf...para aprenderTango-Gestion-Delta2.pdf...para aprender
Tango-Gestion-Delta2.pdf...para aprender
AgostinaZarate
 
Arquitectura de Sistema de Reservaciones
Arquitectura de Sistema de ReservacionesArquitectura de Sistema de Reservaciones
Arquitectura de Sistema de Reservaciones
AlanL15
 
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJECONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
SamuelGampley
 
PC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdf
PC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdfPC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdf
PC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdf
JhenryHuisa1
 
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdfIntroducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
AbbieDominguezGirond
 

Último (6)

TECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptx
TECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptxTECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptx
TECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptx
 
Tango-Gestion-Delta2.pdf...para aprender
Tango-Gestion-Delta2.pdf...para aprenderTango-Gestion-Delta2.pdf...para aprender
Tango-Gestion-Delta2.pdf...para aprender
 
Arquitectura de Sistema de Reservaciones
Arquitectura de Sistema de ReservacionesArquitectura de Sistema de Reservaciones
Arquitectura de Sistema de Reservaciones
 
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJECONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
 
PC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdf
PC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdfPC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdf
PC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdf
 
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdfIntroducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
 

JWT.pptx

  • 1. Introducción a JSON Web Tokens (JWT) y su implementación en Spring Boot Grupo 1: -Bussano Franco -Escobar Maximiliano -Guarmes Agustín -Sueldo Simón
  • 2. Introducción a JSON Web Tokens (JWT)  ¿Qué es JSON Web Token (JWT)?  JSON Web Token (JWT), o Token JSON Web, es un estándar abierto y altamente utilizado que permite una transmisión eficiente y segura de información entre diversas aplicaciones o entidades. Se presenta en un formato compacto y autónomo, lo que significa que contiene toda la información necesaria para su validación sin requerir consultas externas.  Este token no solo transporta datos, sino que también garantiza su integridad y autenticidad mediante una firma digital. La información contenida en el JWT puede ser verificada y confiable, ya que está firmada utilizando una clave secreta compartida entre el emisor y el receptor, o mediante el uso de un par de claves pública y privada.  JWT encuentra aplicación en una amplia gama de escenarios, como la autenticación de usuarios, la autorización en sistemas distribuidos y la transferencia segura de datos entre servicios web. Su versatilidad y seguridad lo convierten en una herramienta fundamental para la comunicación segura y confiable entre diferentes partes en el mundo digital.  Características y funcionamiento de JWT  Integridad y Autenticidad: El contenido del token está protegido mediante una firma digital. Esto garantiza que la información no se haya alterado durante la transmisión y que el origen del token sea auténtico.  Autenticación y Autorización: JWT se utiliza comúnmente para la autenticación de usuarios. Después de que un usuario inicia sesión, se emite un JWT que contiene información sobre el usuario y sus permisos. Este token se envía en las solicitudes posteriores para verificar la identidad y los accesos del usuario.  Autónomo: Un JWT es autocontenible y lleva consigo toda la información necesaria para su interpretación y validación. Esto reduce la necesidad de consultar bases de datos o servicios adicionales, lo que mejora la eficiencia y la velocidad de las transacciones.  Versatilidad: JWT es utilizado en una variedad de contextos, desde la autenticación en aplicaciones web y móviles hasta la autorización en sistemas de servicios web y microservicios. Su flexibilidad se debe a la capacidad de incluir datos personalizados en forma de pares clave-valor.
  • 3. Estructura de un JSON Web Token (JWT) Componentes de un JWT:  Header  Payload  Signature
  • 4. Estructura de un JSON Web Token (JWT)  Cabecera (Header)  Tipo de token (JWT) y algoritmo de firma  Ejemplo de una cabecera: {"alg": "HS256", "typ": "JWT"}  Carga útil (Payload)  Explicación  Tipos de afirmaciones: Registradas, públicas y privadas  Ejemplo de carga útil: {"sub": "1234567890", "name": "John Doe", "admin": true}  Firma (Signature)  Cómo se crea y verifica  Por ejemplo, si desea utilizar el algoritmo HMAC SHA256, la firma se creará de la siguiente manera: HMACSHA256( base64UrlEncode(header) + "." + base64UrlEncode(payload), secret)
  • 5. Ventajas y casos de uso de JWT  Ventajas de usar JWT en autenticación y autorización  Bla bla  Bla bla  Casos de uso comunes:  Autenticación de usuarios e inicio de sesión único: este es el escenario más común para usar JWT. Una vez que el usuario haya iniciado sesión, cada solicitud posterior incluirá el JWT, lo que permitirá al usuario acceder a rutas, servicios y recursos permitidos con ese token. El inicio de sesión único es una función que se usa ampliamente en JWT en la actualidad, debido a su pequeña sobrecarga y su capacidad para usarse fácilmente en diferentes dominios.  Intercambio de información segura: los tokens web JSON son una buena manera de transmitir información de forma segura entre las partes. Debido a que los JWT se pueden firmar, por ejemplo, utilizando pares de claves pública/privada, puede estar seguro de que los remitentes son quienes dicen ser. Además, como la firma se calcula utilizando el encabezado y la carga útil, también puede verificar que el contenido no haya sido alterado.
  • 6. Implementación de JWT en Spring Boot  Implementación de JWT en Spring Boot  Creación y emisión de JWT en Spring Boot  Validación y autorización con JWT en Spring Boot  Gestión de tokens y seguridad