Mastering Authentication
En esta serie de tutoriales aprenderemos diferentes técnicas de autenticación en Laravel. Veremos en detalle cómo funciona el login y el registro en Laravel, cómo funciona y cómo utilizar los diferentes paquetes de autenticación como Laravel Breeze, Laravel Fortify, Laravel Jetstream y Laravel Sanctum.
Resumen del curso
- De principiante a experto
- 6h 03m de video HD
- 43 lecciones
- Ejercicios prácticos
- Acceso de por vida
- Aprende a tu propio ritmo
Lecciones cortas, concisas y precisas.
No te quemes en búsquedas exhaustivas que te impiden lograr tus metas.
En Aprendible obtienes:
- Lecciones que optimizan tu aprendizaje en menor tiempo
- Audios y videos de alta calidad
- Explicaciones paso a paso, sin rodeos, ni balbuceos.
Construye desde HOY tu camino como Desarrollador Web Moderno
Contenido del curso
6h 03m de contenido, 43 lecciones
1: Introducción
En esta lección revisaremos para qué sirven y cuándo utilizar Laravel UI, Breeze, Fortify, Jetstream, Sanctum y Passport.
En esta lección aprendemos a implementar un login desde cero en Laravel sin la ayuda de ningún paquete.
En esta lección explicamos el funcionamiento de la opción "recuérdame" y lo implementamos en el formulario de login.
En esta lección aprendemos cómo validar el formulario de login, mostrar los errores de validación y mensajes de sesión en las vistas de Blade.
En esta lección implementamos el link de cerrar sesión en Laravel, y explicamos cómo funciona detrás de escenas.
En esta lección aprendemos a hacer login con Laravel en una base de datos ya existente (tabla usuarios) que utiliza el algoritmo md5 para cifrar contraseñas.
2: Laravel Breeze
En esta lección instalamos y revisamos cómo funciona el registro, login y el "throttling" con Laravel Breeze.
En esta lección habilitamos la verificación de correo electrónico y verificamos cómo funcionan detrás de escenas en Laravel Breeze.
En esta lección aprendemos cómo funciona y para qué sirve la confirmación de contraseña en Laravel.
En esta lección revisamos lo que ocurre cuando un usuario olvida su contraseña y envía una solicitud para restablecerla.
En esta lección continuamos entendiendo qué sucede cuando el usuario recibe el email y da click en el link de restablecimiento de contraseña.
En esta lección revisamos cada uno de los tests que se generan con Laravel Breeze al momento de ejecutar el comando php artisan breeze:install.
3: Laravel Fortify
En esta lección aprendemos a instalar y configurar Fortify en una nueva aplicación de Laravel.
En esta lección implementamos y vemos cómo personalizar el login y logout con Laravel Fortify.
4: Versión Anterior del curso
En esta lección vemos cómo implementar autenticación básica o autenticación HTTP. Es un tipo de autenticación simple que podemos implementar fácilmente en Laravel.
En esta lección revisamos todo el proceso que laravel realiza para iniciar la sesión de un usuario. También vemos cómo por defecto, Laravel evita que se hagan mas de 5 intentos fallidos de autenticarse, y evita que sigan intentando acceder por 60 segundos.
En esta lección revisamos paso a paso cómo funciona el registro que viene por defecto en Laravel.
En esta lección revisamos cómo funciona la solicitud de reestablecimiento de contraseñas que Laravel nos provee.
En esta lección vemos cómo modificar el email que se envía por defecto al momento de solicitar un restablecimiento de contraseña.
Luego de que hemos hecho la solicitud de restablecimiento de contraseña, y recibimos la notificación por correo electrónico, vamos a ver en detalle, cómo funciona el código que se ejecuta para cambiar la contraseña en la base de datos de forma segura.
En esta lección vemos cómo crear un login personalizado sin la necesidad de utilizar los controladores ni los traits que Laravel nos provee por defecto. También veremos cómo autenticarnos con un campo que no sea el de email.
En esta lección vamos a ver cómo personificar a otros usuarios con el fin de ver la aplicación desde su perspectiva e inspeccionar errores de ser necesario.
En esta lección agregamos una capa de protección para evitar que cualquier usuario pueda personificar a cualquier usuario, y que sólo los administradores puedan hacerlo.
En esta lección veremos cómo activar usuarios, es decir, que sólo puedan acceder a nuestra aplicación una vez que hayan confirmado su email.
En esta lección vamos a ver cómo enviar al usuario, un email con el token y el link para confirmar su cuenta. También reestructuramos un poco lo que tenemos hasta ahora.
En esta lección veremos una forma de hacer login solamente con el email del usuario, sin la necesidad de una contraseña.
En esta lección restructuramos un poco el LoginController y enviamos el email con el link para hacer login automáticamente, pero esta vez, lo enviamos a través de las queues para que la respuesta al usuario sea mucho más rápida.
En esta lección preparamos las bases para la autenticación con redes sociales. Creamos los botones de facebook, twitter y google y escribimos algunos estilos css. También dejamos configurada la base de datos e instalado el paquete socialite que utilizaremos en las siguientes lecciones.
En esta lección vemos cómo crear una aplicación de Facebook y cómo integrarla con Socialite para obtener los datos públicos y el email del usuario que solicita hacer login en nuestra aplicación.
En esta lección utilizamos el identificador de usuario que nos provee Facebook y lo comparamos con nuestra base de datos; si el usuario no existe, creamos uno nuevo con los datos que recibimos y hacemos login, si no existe el usuario simplemente lo autenticamos.
La implementación que tenemos actualmente nos permite hacer login con Facebook y con el formulario que trae Laravel por defecto, sin embargo, si primero nos registramos manualmente y luego intentamos acceder con Facebook, nos aparece un error. En esta lección permitimos el login de Laravel en conjunto con el login social.
Actualmente, podemos hacer login con el formulario que nos provee Laravel y con Facebook. Sin embargo, vamos a modificar la implementación para poder agregar múltiples redes sociales de una manera sencilla, sin la necesidad de modificar la base de datos o el código, cada vez que queramos agregar una nueva red social.
En esta lección creamos una app de Twitter para permitir login con esta red social. También hacemos que el manejo de errores sea más genérico y funcione con todas las redes sociales.
En esta lección implementamos el login con Google de una forma muy simple, lo único que debemos hacer es crear una app de Google y agregar las credenciales, el resto ya lo tenemos listo.
En esta lección evitamos que el usuario intente hacer login con otras redes sociales que no sean las que tenemos definidas previamente, para hacerlo, filtramos la petición del usuario con la ayuda de un middleware.
En esta lección revisamos cómo funciona la autenticación API que viene por defecto en Laravel.
En esta lección creamos un formulario con vuejs para autenticarnos en la api de laravel y obtener el token API de autorización.
En esta lección utilizamos el token api que recibimos de Laravel y lo utilizamos para consultar rutas protegidas por el middleware "auth:api"
En esta lección utilizamos localStorage y sessionStorage para almacenar el API token y así poder reutilizarlo. También vemos cómo enviar este API token por los headers del request para evitar tener que agregarlo directamente en la URL.
En esta lección aprendemos qué es y cómo funciona Laravel Sanctum (antes llamado Airlock) para autenticar un SPA hecho con Vue.js, ambos en diferentes repositorios.
En esta lección configuramos CORS, y cerramos el ciclo de autenticación entre el SPA y la API de tal forma que la sesión del usuario persista aún cuando se refresca el navegador.
En esta lección utilizamos Vuex para guardar el estado del usuario autenticado en la API con Laravel Sanctum.
En esta lección implementamos el botón logout que nos permitirá cerrar sesión en Laravel y automáticamente modificará el estado de Vuex con el fin de que se reflejen los cambios en el SPA en Vue.js.
Tu instructor
Jorge García Coello
Aprendible.com
Jorge García es creador de Aprendible.com yDesarrollador Certificado en LaravelA través de su plataforma de aprendizaje y de otras plataformas de estudio, desde 2015 ha ayudado a decenas de miles de desarrolladores a mejorar sus oportunidades dentro del Desarrollo Web.
¿Qué dicen los subscriptores?
Mira lo que están diciendo algunos subscriptores de Aprendible.