Holaa 😄
Introducción
Cómo autenticar usuarios con Node.js
Autenticación vs. autorización
Tienda en línea: instalación del proyecto
Protección de contraseñas
Middleware de verificación
Hashing de contraseñas con bcryptjs
Implementando hashing para usuarios
Passport y JSON Web Tokens
Implemetando login con Passport.js
¿Qué es un JWT?
Firmar y verificar tokens
Generar JWT en el servicio
Protección de rutas
Control de roles
Obteniendo órdenes del perfil
Manejo de la autenticación desde el cliente
Envío de emails con Node.js
Cómo enviar emails con Node.js
Implementando el envío de emails
Recuperación de contraseñas
Generando links de recuperación
Validando tokens para cambio de contraseña
Despliegue a producción
Deploy en Heroku
Próximos pasos
Cómo seguir aprendiendo backend con Node.js
Aportes 9
Preguntas 1
Holaa 😄
Este proceso es para determinar si la combinación de usuario y contraseña son las correctas.
Es cuando el servidor ya verificó que la contraseña y usuario son correctas y se le devolvió correctamente al usuario un token (la llave) pero se quiere usar esa llave para entrar a una parte del sitio prohibido para ese usuario, esto puede suceder cuando:
Lo normal es que el servidor responda con status code 403 cuando esto sucede
En lo personal siento que la imagen del 401 debería estar en la del código 403 porque representa mejor que el gato tiene prohibido entrar a la tienda.
Quizá en la imagen de 401 lo que debería ir es un gato sosteniendo una identificación con su nombre y foto entregandola a otro gato para entrar a un lugar donde la puerta tenga un letrero que diga “only local cats”. Jaja no sé, si alguna vez un diseñador ve este mensaje, traten de enviar un diseño con una solicitud a la página por favor xD.
En pocas palabras
Autenticación: Quien eres
Authorizacion: Los permisos que tienes
Un aporte extra.
Para que exista la autorización, debe existir previamente una autenticación.
Para este curso usaremos Json Web Token (JWT)
Autenticación: Es quien eres.
Autorización: Es lo que puedes hacer (lo que estás autorizado a hacer, lo que tienes permiso de hacer).
Autenticación se refiere a quien eres.
Autorización se refiere a la gestión de permisos, como protegemos ciertos endpoints de acuerdo al rol o los permisos que querramos dar.
JWT: Json Web token, es una tecnología funciona de modo stateless, quiere decir que no hay una sesión como tal del lado del backend sino que todo va a estar por medio de un token, esto es interesante porque funciona para poder escalar el login del usuario para cuando queramos hacer sistemas distribuidos.
Autenticación: login - credenciales - token ( llave admin - user)
Autorización: permisos - protección
JWT: token ( sesión )
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?
o inicia sesión.