Laravel - Authentification
L'authentification est le processus d'identification des informations d'identification de l'utilisateur. Dans les applications Web, l'authentification est gérée par des sessions qui prennent les paramètres d'entrée tels que l'email ou le nom d'utilisateur et le mot de passe, pour l'identification de l'utilisateur. Si ces paramètres correspondent, l'utilisateur est dit authentifié.
Commander
Laravel utilise la commande suivante pour créer des formulaires et les contrôleurs associés pour effectuer l'authentification -
php artisan make:auth
Cette commande aide à créer un échafaudage d'authentification avec succès, comme indiqué dans la capture d'écran suivante -
Manette
Le contrôleur utilisé pour le processus d'authentification est HomeController.
<?php
namespace App\Http\Controllers;
use App\Http\Requests;
use Illuminate\Http\Request;
class HomeController extends Controller{
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct() {
$this->middleware('auth');
}
/**
* Show the application dashboard.
*
* @return \Illuminate\Http\Response
*/
public function index() {
return view('home');
}
}
En conséquence, l'application d'échafaudage générée crée la page de connexion et la page d'enregistrement pour effectuer l'authentification. Ils sont comme indiqué ci-dessous -
S'identifier
enregistrement
Authentification manuelle des utilisateurs
Laravel utilise le Authfaçade qui aide à authentifier manuellement les utilisateurs. Il comprend leattempt méthode pour vérifier leur adresse e-mail et leur mot de passe.
Considérez les lignes de code suivantes pour LoginController qui comprend toutes les fonctions d'authentification -
<?php
// Authentication mechanism
namespace App\Http\Controllers;
use Illuminate\Support\Facades\Auth;
class LoginController extends Controller{
/**
* Handling authentication request
*
* @return Response
*/
public function authenticate() {
if (Auth::attempt(['email' => $email, 'password' => $password])) {
// Authentication passed...
return redirect()->intended('dashboard');
}
}
}