Maison > cadre php > Laravel > le corps du texte

Laravel - Autorisation

PHPz
Libérer: 2024-08-27 13:12:53
original
714 Les gens l'ont consulté

Dans le chapitre précédent, nous avons étudié le processus d'authentification dans Laravel. Ce chapitre vous explique le processus d'autorisation dans Laravel.

Différence entre authentification et autorisation

Avant d'approfondir l'apprentissage du processus d'autorisation dans Laravel, comprenons la différence entre l'authentification et l'autorisation.

Dans authentification, le système ou l'application Web identifie ses utilisateurs grâce aux informations d'identification qu'ils fournissent. S'il constate que les informations d'identification sont valides, elles sont authentifiées, ou bien elles ne le sont pas.

Dans autorisation, le système ou l'application Web vérifie si les utilisateurs authentifiés peuvent accéder aux ressources auxquelles ils tentent d'accéder ou pour lesquelles ils font une demande. En d’autres termes, il vérifie leurs droits et autorisations sur les ressources demandées. S'il constate qu'ils peuvent accéder aux ressources, cela signifie qu'ils sont autorisés.

Ainsi, authentification implique de vérifier la validité des informations d'identification de l'utilisateur, et autorisation implique de vérifier les droits et autorisations sur les ressources dont dispose un utilisateur authentifié.

Mécanisme d'autorisation dans Laravel

Laravel fournit un mécanisme d'autorisation simple qui contient deux méthodes principales, à savoir Gates et Policies.

Rédaction de portes et de politiques

Les portes sont utilisées pour déterminer si un utilisateur est autorisé à effectuer une action spécifiée. Ils sont généralement définis dans App/Providers/AuthServiceProvider.php en utilisant la façade Gate. Les portes sont également des fonctions déclarées pour exécuter un mécanisme d'autorisation.

Les politiques sont déclarées dans un tableau et sont utilisées dans les classes et méthodes qui utilisent un mécanisme d'autorisation.

Les lignes de code suivantes vous expliquent comment utiliser les portes et les politiques pour autoriser un utilisateur dans une application Web Laravel. Notez que dans cet exemple, la fonction boot est utilisée pour autoriser les utilisateurs.

<?php

namespace App\Providers;

use Illuminate\Contracts\Auth\Access\Gate as GateContract;
use Illuminate\Foundation\Support\Providers\AuthServiceProvider as ServiceProvider;

class AuthServiceProvider extends ServiceProvider{
   /**
      * The policy mappings for the application.
      *
      * @var array
   */
   
   protected $policies = [
      &#39;App\Model&#39; => &#39;App\Policies\ModelPolicy&#39;,
   ];
   
   /**
      * Register any application authentication / authorization services.
      *
      * @param \Illuminate\Contracts\Auth\Access\Gate $gate
      * @return void
   */
   
   public function boot(GateContract $gate) {
      $this->registerPolicies($gate);
      //
   }
}
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal