Laravel – Authentification des utilisateurs

22 mars 2018 - : MVC Laravel - : Pas de commentaire

Laravel – Authentification des utilisateurs

Dans tout site web « interactif », il est nécessaire de créer une base de données des utilisateurs et de procéder à leur authentification pour protéger l’accès à certaines zones du site.

Cette authentification se base sur un identifiant (e-mail ou pseudo) et un mot de passe qui doit être stocké sous forme cryptée dans la base de données.

Laravel nous propose un système intégré d’authentification de nos utilisateurs qui nous évite de longues heures de développement de ce système.

Activer l’authentification

Pour activer l’authentification, nous allons utiliser artisan. Il va créer toutes les pages nécessaires à son fonctionnement, mais aussi la migration permettant de créer la table des utilisateurs et celle concernant la récupération des mots de passe.

Pour procéder à cette activation, la commande suivante doit être entrée dans l’invite de commande

php artisan make:auth

Cette ligne de commande crée automatiquement le fichier app/Http/Controllers/HomeController.php et ajoute les lignes ci-dessous au fichier routes/web.php

Auth::routes();

Route::get('/home', 'HomeController@index')->name('home');
Langage : PHP - Fichier routes/web.php

Création de la table des utilisateurs

La commande précédente active l’authentification mais ne crée pas la table des utilisateurs dans la base de données.

Pour ce faire, nous devons exécuter la migration qui a été créée par artisan en entrant la commande ci-dessous

php artisan migrate

Cette commande va créer 2 tables :

  • users : contiendra la liste des utilisateurs
  • password_resets : contiendra la liste des utilisateurs qui ont demandé la réinitialisation de leur mot de passe

Utilisation

Dès cet instant, il vous suffit d’aller sur la route /register pour obtenir le formulaire d’inscription, sur la route /login pour vous connecter et sur la route /password/reset pour réinitialiser votre mot de passe.

Pour protéger une route, et faire en sorte que seuls les utilisateurs connectés y aient accès, vous la déclarez sous la forme suivante dans le fichier routes/web.php

Route::get('/ajouter', 'OffresController@ajouteOffres')->middleware('auth');
Langage : PHP - Fichier : routes/web.php

Le fait d’ajouter ->middleware(‘auth’) permet d’imposer l’authentification des utilisateurs pour cette route.

Commentaires

Pas encore de commentaire

Laisser un commentaire