Bienvenida e introducción

1

Qué aprenderás sobre autenticación con OAuth

2

Stack de seguridad para aplicaciones modernas

3

Autenticación

4

Autorización

JSON Web Tokens

5

JSON Web Tokens

6

Autenticación tradicional vs JWT

7

Configuración inicial de los proyectos

8

Firmando un JWT

9

Verificando nuestro JWT firmado y buenas practicas con JWT

10

Server-Side vs Client-Side sessions

11

Protegiendo nuestros recursos con JWT

12

Habilitando CORS en nuestro servidor

13

Profundizando el concepto de JWKS

OAuth 2.0

14

Cómo elegir el flujo adecuado para OAuth 2.0

15

¿Qué es OAuth 2.0?

16

Conociendo el API de Spotify

17

Creando los clientes de Spotify y servicios iniciales

18

Implementando Authorization Code Grant

19

Usando nuestro access token para obtener nuestros recursos

20

Implementando Implicit Grant

21

Implementando nuestro servicio de autenticación

22

Modificando nuestro Layout

23

Implementando Client Credentials Grant

24

Implementando Resource Owner Password Grant

25

Implementando Authorization Code Grant (PKCE)

Open ID Connect

26

¿Qué es OpenID Connect?

27

Implementando OpenID Connect

Preocupaciones con JWT y OAuth 2.0

28

¿Cuáles son las preocupaciones con JWT?

29

¿Cuáles son las preocupaciones con OAuth 2.0?

Haciendo uso de Auth0

30

¿Qué es Auth0?

31

Auth0 Lock y auth0.js

32

Universal Login

33

Social Login con Auth0

34

Custom Social connection con Spotify

35

Multifactor authentication

36

Authorization Extension en Auth0

Cierre del curso

37

Cierre del curso

Consideraciones para producción

38

Buenas prácticas para el despliegue en producción

39

Uso de diferentes tenants para producción con Auth0

Aún no tienes acceso a esta clase

Crea una cuenta y continúa viendo este curso

¿Qué es OpenID Connect?

26/39
Recursos

Al utilizar OAuth 2.0 corremos muchos peligros, por ejemplo, la posibilidad de utilizar el access_token para hacernos pasar por el usuario y consumir un endpoint con toda la información de nuestros usuarios.

Open ID Connect es una capa de autenticación basada en OAuth 2.0, es un estándar que nos permite utilizar los mecanismos adecuados para verificar la identidad de nuestros usuarios. Para esto, Open ID Connect implementa los flujos de autenticación de Authorization Code Grant e Implicit Grant con algunas diferencias, por ejemplo, además de obtener el access_token para hacer llamados a la API, vamos a obtener un nuevo token llamado id_token que entrega información muy básica de los usuarios y nos permite verificar si están autenticados.

Aportes 2

Preguntas 3

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

Notas de la clase:

  • Mientras OAuth trabaja con la autorización (los permisos), Open ID Connect trabaja con la autenticación (conocer/revelar las identidades) 👍
  • Con OAuth 2.0 solito corremos el riesgo de que alguien intercepte el token de acceso y consuma la información de nuestros usuarios 😱😰
  • Facebook tuvo este tipo de problemas 😱🔥💣
  • Este lío hizo que cada servicio implementara sus propios mecanismos de seguridad 🆗👷
  • ¡Pero! Nace Open ID Connect, un estándar de los mecanismos adecuados para utilizar OAuth en la capa de autorización 🎉👌
  • Open ID Connect implementa los flujos de autenticación que estudiamos en clases anteriores: el Authorization Code Grant y el Implicit Grant 👍
  • La diferencia es que, además de necesitar el token de acceso, vamos a necesitar un nuevo JWT que se llama id_token con información básica de los usuarios que nos permitirá saber si están autenticados 😮

Hola que tal me ayudaria mucho me pudieran ayudar con informacion para poder autenticar/autorizar 2 aplicaciones web de distintos dominios en un mismo web api (login), es decir, un login para ambas aplicaciones como por ejemplo lo que hace google con sus multiples servicios, gmail, youtube, g+ etc. Necesito la teoria basica para poder entender bien como funciona esta arquitectura en primera instancia. Si existe algun enlace o tutorial que me puedan pasar que crean que es util para alguien con poca experiencia en este tema se los agradeceria mucho.