JSON Web Tokens
Clase 5 de 39 • Curso de Autenticación con OAuth
Contenido del curso
JSON Web Tokens
- 5

JSON Web Tokens
Viendo ahora - 6

Autenticación tradicional vs JWT
08:08 min - 7

Configuración inicial de los proyectos
08:22 min - 8

Firmando un JWT
15:23 min - 9

Verificando nuestro JWT firmado y buenas practicas con JWT
11:43 min - 10

Server-Side vs Client-Side sessions
05:23 min - 11

Protegiendo nuestros recursos con JWT
04:38 min - 12
Habilitando CORS en nuestro servidor
01:11 min - 13
Profundizando el concepto de JWKS
02:24 min
OAuth 2.0
- 14

Cómo elegir el flujo adecuado para OAuth 2.0
02:54 min - 15

¿Qué es OAuth 2.0?
00:15 min - 16

Conociendo el API de Spotify
07:29 min - 17

Creando los clientes de Spotify y servicios iniciales
16:46 min - 18

Implementando Authorization Code Grant
14:54 min - 19

Usando nuestro access token para obtener nuestros recursos
07:12 min - 20

Implementando Implicit Grant
09:11 min - 21

Implementando nuestro servicio de autenticación
08:46 min - 22

Modificando nuestro Layout
09:18 min - 23

Implementando Client Credentials Grant
09:52 min - 24
Implementando Resource Owner Password Grant
01:46 min - 25
Implementando Authorization Code Grant (PKCE)
02:26 min
Open ID Connect
Preocupaciones con JWT y OAuth 2.0
Haciendo uso de Auth0
Consideraciones para producción
Cierre del curso
Los JSON Web Tokens (JWT) son un estándar que nos permite representar los permisos o requerimientos entre dos partes, es decir, el servidor de nuestra aplicación concede los permisos para un usuario generando un token, este token se envía al cliente o navegador donde utilizamos el token para realizar peticiones al servidor sin que éste necesite verificar a los usuarios, simplemente recibe los JWT y devuelve la información a la que el usuario tiene permiso según cada token.
Los JWT se dividen en 3 cadenas de texto separadas por puntos. La primera parte es el header y contiene el algoritmo y el tipo de token que utilizamos para firmar. La segunda parte es el payload, contiene información como la identificación del usuario, fechas de creación y expiración del token, entre otras ( debemos tener cuidado de no transmitir información sensible ya que, puede ser decodificada por alguna otra aplicación). Por último, la signature es la tercera parte del token y se genera codificando los anteriores campos más una firma secreta, gracias a esta parte del token podemos verificar su autenticidad e invalidar el token si alguno de los campos cambia.
Podemos utilizar dos tipos de algoritmos para codificar nuestros tokens, los simétricos nos permiten encriptar y desencriptar los tokens utilizando una única llave privada, o podemos utilizar algoritmos asimétricos que utilizan una llave privada y una publica para tener mayor seguridad y evitar problemas si alguna de las llaves es interceptada.