¿Cómo usar la Autentificación en Laravel 6?

Laravel provee una autentificación simple y en la mayoría de los casos, no necesitarás modificar nada.

Consideraciones de base de datos

Por defecto laravel incluye un modelo AppUser en nuestra app. Este modelo podria ser utilizado por defecto por el Driver de Eloquent Authentification.

Cuando construyes el esquema para AppUser debes estar seguro de que la columna password sea de al menos por 60 caracteres mantener la longitud por defecto de 255 podría ser una buena elección.

También deberías verificar que el modelo User contiene un campo nullable de tipo string para remember_token una columna de 100 caracteres. Esta columna será usada por usuarios que seleccionen la opción “recuerdame” cuando se loguean en tu aplicación.

Creando Rutas

El paquete laravel/ui proporciona una forma rápida para crear  las rutas y vistas que necesitas para la autentificación con unos simples comandos.

 

 

En caso de no necesitar la Autentificación de laravel pudes usar

Auth::routes([‘register’ => false]);

 

Determinando si un usuario está autentificado.

Para determinar si un usuario está logeado en tu aplicación, podrías usar el método check del facade Auth, misma que retorna true si el usuario es autentificado.

Recuperando al Usuario Autenticado desde un controlador

Puedes acceder  al usuario autentificado con el facade Auth

use IlluminateSupportFacadesAuth;
 
// Get the currently authenticated user...
$user = Auth::user();
 
// Get the currently authenticated user's ID...
$id = Auth::id();

De forma alternativa una vez que el usuario esta autentificado, podrías acceder con IlluminateHttpRequest

<?php
 
namespace AppHttpControllers;
 
use IlluminateHttpRequest;
 
class ProfileController extends Controller
{
    /**
     * Update the user's profile.
     *
     * @param  Request  $request
     * @return Response
     */
    public function update(Request $request)
    {
        // $request->user() returns an instance of the authenticated user...
    }
}

Recuperando al Usuario Autenticado desde la vista

Es posible acceder desde las vistas blade a la información que guarda user como nombre, email.

//Get the name
{{ Auth::user()->name }}
//Get the email
{{ Auth::user()->email }}

Protegiendo Rutas

Un middleware puede ser utilizado para permitir que sólo usuarios autentificados puedan acceder a alguna ruta.

Haciendo uso del middleware auth, mismo que es definido en IlluminateAuthMiddlewareAuthenticate.

Dado que este middleware ya está registrado en tu HTTP kernel, todo lo que necesitas hacer es adjuntarlo a una definición de ruta.