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

JSON Web Tokens
08:34 - 6

Autenticación tradicional vs JWT
08:08 - 7

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

Firmando un JWT
15:23 - 9

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

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

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

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

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

Conociendo el API de Spotify
07:29 - 17

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

Implementando Authorization Code Grant
14:54 - 19

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

Implementando Implicit Grant
09:11 - 21

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

Modificando nuestro Layout
09:18 - 23

Implementando Client Credentials Grant
09:52 - 24
Implementando Resource Owner Password Grant
01:46 - 25
Implementando Authorization Code Grant (PKCE)
02:26
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.