Qu’est-ce que Passport
Laravel Passport est le package officiel qui permet à une application Laravel de fonctionner comme un serveur d’autorisation OAuth2. Il est utilisé pour l’intégration d’applications tierces ou pour les API qui nécessitent un flux OAuth2 strict.Passport vs Sanctum
Si OAuth2 est indispensable, choisissez Passport. Si vous cherchez simplement une authentification par token d’API ou pour une SPA / mobile, choisissez Sanctum.Installation
La recommandation officielle sous Laravel 13 estinstall:api --passport.
Configuration
Modèle User
Ajoutez le traitHasApiTokens et l’interface OAuthenticatable à votre modèle User.
Garde d’authentification
Dansconfig/auth.php, utilisez le driver passport pour la garde api.
Configuration du service provider
Dans la méthodeboot() de AppServiceProvider, vous pouvez définir les portées et la durée de vie des tokens.
Gestion des clients
Client pour l’authorization code grant
Client pour le client credentials grant
EnsureClientIsResourceOwner.
Gestion des tokens
Attribution de portées
Vérification des portées
Révocation
Protection des routes API
Pour protéger une API avec un access token d’utilisateur, ajoutezauth:api.
Personal Access Token
Adapté aux cas où l’utilisateur émet lui-même son token d’API, sans passer par le flux OAuth2 complet.Si votre usage principal est le Personal Access Token, la documentation officielle Laravel recommande de considérer Sanctum.