Skip to main content

Was ist Passport

Laravel Passport ist das offizielle Paket, um eine Laravel-Anwendung als OAuth2-Autorisierungsserver zu betreiben. Es wird für die Integration mit Drittanbieter-Apps oder für APIs eingesetzt, die einen strengen OAuth2-Flow benötigen.

Passport vs. Sanctum

Wenn OAuth2 zwingend erforderlich ist, wählen Sie Passport. Für einfache API-Token-Authentifizierung oder SPA-/Mobile-Auth ist Sanctum die bessere Wahl.

Installation

Ab Laravel 13 wird offiziell install:api --passport empfohlen.
Für die manuelle Einführung in bestehende Projekte:
Beim ersten Deployment möchten Sie eventuell nur die Schlüssel erzeugen.

Konfiguration

User-Modell

Fügen Sie im User-Modell das Trait HasApiTokens und das Interface OAuthenticatable hinzu.

auth-Guard

Konfigurieren Sie in config/auth.php für den api-Guard den passport-Treiber.

Service-Provider-Konfiguration

In boot() des AppServiceProvider legen Sie Scopes und Token-Gültigkeit fest.

Client-Verwaltung

Client für Authorization Code Grant

Diesen Client verwenden Sie für den Standard-OAuth2-Flow mit Zustimmungsdialog.

Client für Client Credentials Grant

Für Machine-to-Machine-Endpunkte verwenden Sie die Middleware EnsureClientIsResourceOwner.

Token-Verwaltung

Scopes vergeben

Scopes prüfen

Widerrufen

API-Routen schützen

Fügen Sie zu APIs, die mit einem User-Access-Token geschützt werden sollen, auth:api hinzu.
Für Routen mit Client Credentials Grant verwenden Sie nicht auth:api, sondern EnsureClientIsResourceOwner.

Personal Access Token

Geeignet, wenn Benutzer selbst API-Tokens ausstellen, ohne den vollständigen OAuth2-Flow zu durchlaufen.
Wenn Personal Access Tokens Ihr Hauptanwendungsfall sind, empfiehlt auch die offizielle Laravel-Dokumentation, Sanctum in Betracht zu ziehen.
Zuletzt geändert am 13. Juli 2026