La autenticación es una parte importante de cualquier proyecto de Laravel. Existen muchos paquetes en Laravel para implementar la autenticación de API REST, como Passport, Sanctum, JWT, etc. Laravel Sanctum es un paquete Laravel simple y ligero para implementar un sistema de autenticación API REST para aplicaciones móviles, aplicaciones de una sola página (SPA) y API basadas en token. Puede generar múltiples tokens API para los usuarios, y la aplicación de una sola página puede autenticarse utilizando la sesión del usuario. Se puede usar como una alternativa a la API de pasaporte de Laravel. Laravel Sanctum es mejor que el pasaporte de Laravel en muchos casos. Es más simple que Laravel Passport, y no requiere autenticación OAuth2 como la autenticación de pasaporte. Las formas de implementar la autenticación de Laravel Sanctum y verificar la API REST utilizando Postman se han mostrado en este tutorial.
Requisitos previos:
Debe completar las siguientes tareas antes de comenzar los pasos para implementar el sistema de autenticación de Laravel Sanctum.
Crear un nuevo proyecto de Laravel llamado sanctumproject. Aquí el compositor se ha utilizado para crear el proyecto Laravel. Si el compositor no está instalado antes de entonces, debe instalarlo antes de ejecutar el siguiente comando.
$ composer create-proyect laravel/laravel sanctumproject
Ir a la carpeta del proyecto.
$ CD SanctumProject
Todos los ejemplos de este tutorial han sido probados en Laravel versión 9+. Verifique la versión instalada de Laravel.
$ PHP Artisan -VersiónEjecute los siguientes comandos para instalar y ejecutar el cartero.
$ sudo snap instalación de instalación
Base de datos de configuración:
Debe crear una base de datos en MySQL para implementar la tarea de autenticación. Complete las siguientes tareas para crear una base de datos y configurar la base de datos para el proyecto Laravel.
Instalar y configurar Laravel Sanctum:
Debe hacer las siguientes tareas para instalar y configurar el Sanctum de Laravel.
Ejecute el siguiente comando para descargar los archivos necesarios para instalar el paquete Laravel Sanctum.
$ compositor requiere laravel/sanctum
Ejecute el siguiente comando para publicar la configuración de sanctum.
$ PHP Vendor artesanal: Publish -Provider = "Laravel \ Sanctum \ SanctumserviceProvider"
La siguiente salida aparecerá después de publicar el Santuario paquete con éxito.
El archivo de migración para el usuarios La tabla se crea de forma predeterminada al crear el proyecto Laravel. Ejecute el siguiente comando migrar para crear el usuarios tabla utilizada para la autenticación.
Configuración de middleware:
Para usar el santuario, debe agregar la siguiente línea en el 'API'Sección de la Núcleo.php archivo. Abre el Núcleo.php Archivo desde la ubicación, aplicación/http/kernel.php, y agregar la línea.
\ Laravel \ sanctum \ http \ middleware \ ASCANSEFRONDENDREQUESTSARESTATEFUL :: Clase,El 'API'La sección de este archivo se verá como la siguiente imagen.
Crea la API:
Vaya a la carpeta del proyecto y ejecute el siguiente comando para crear el controlador para la autenticación API. Autontroller.El archivo PHP se creará dentro de la carpeta App/HTTP/Controllers después de ejecutar el comando.
$ PHP Artisan Make: Controller AuthControllerAbre el Autontroller.php y reemplace el contenido con el siguiente script. El función registrar () se ha utilizado en el script para validar los datos del usuario enviados e insertar los datos válidos en la tabla de usuarios. La función de inicio de sesión () se ha utilizado en el script para autenticar al usuario verificando las credenciales enviadas para el inicio de sesión.
APLICACIÓN DEL PAGO DE NAME \ HTTP \ Controllers;Agregar ruta para la API:
Abre el API.archivo php desde el rutas carpeta y agregar las siguientes líneas. La primera línea se ha utilizado para agregar la información de AuthController. La segunda línea se ha utilizado para agregar la ruta API para registrar el usuario. La tercera línea se ha utilizado para agregar la ruta API para autenticar al usuario registrado.
usar App \ Http \ Controllers \ AuthController;Prueba de autenticación API usando Postman:
Ejecute la aplicación Postman. Establezca el tipo de solicitud en CORREO y escribe la siguiente URL.
http: // 127.0.0.1: 8000/registrarse
Después de agregar los parámetros requeridos para registrar una nueva cuenta de usuario, haga clic en el botón Enviar. Si la nueva información del usuario se inserta correctamente en la tabla de usuarios, se mostrará una información access_token como la siguiente imagen.
Abre el mesa de usuarios desde la base de datos iniciando sesión en el servidor mysql o abriendo el Phpmyadmin Desde el navegador para verificar cualquier registro nuevo se ha insertado o no en el mesa de usuarios. La siguiente imagen muestra que se ha insertado un nuevo registro de usuario en el usuarios tabla después de enviar los datos utilizando el cartero solicitud.
Ahora, puede consultar la autenticación de la API utilizando el postman. Escriba la siguiente URL en la aplicación Postman después de seleccionar la publicación como tipo de solicitud. Escriba la dirección de correo electrónico válida y la contraseña para autenticar al usuario existente y haga clic en el Enviar botón. Si la información del usuario proporcionada es válida, el Access_Token La información aparecerá como la siguiente imagen. El mensaje de error aparecerá para la información del usuario no válido.
Conclusión:
La forma simple de implementar la autenticación de API en el proyecto Laravel utilizando el Santuario el paquete se ha mostrado en este tutorial. Los usuarios de Laravel obtendrán el concepto de autenticación API y podrán implementar y verificar la autenticación usando Postman después de leer este tutorial.