Suchergebnisse :

×

Joomla OAuth-Client-Integration mit Laravel Passport Single Sign-On (SSO)


Integration von Laravel Passport Single Sign-on (Laravel Passport SSO) mit Joomla verwenden OAuth 2.0 Protokoll. Das miniOrange Joomla OAuth / OpenID Connect Single Sign-on (SSO)-Plugin erleichtert die Einrichtung Laravel Passport SSO in Joomla und Aktivieren Sie die sichere Anmeldung bei Joomla. Dadurch können sich Benutzer bei Joomla anmelden und auf die Website zugreifen, indem sie sich mit ihren Laravel Passport OAuth-Provider-Anmeldeinformationen authentifizieren.
Besuche unsere Seite mit Joomla OAuth-Client-Plugin Auf dieser Webseite erfahren Sie mehr über die Funktionen und Pläne, die wir für das Joomla OAuth Single Sign-on-Plugin (OAuth & OpenID Connect) anbieten.

Voraussetzungen: Download und Installation


  • Melden Sie sich bei Ihrer Joomla-Site an Administrator Konsole.
  • Klicken Sie im linken Umschaltmenü auf System, dann klicken Sie im Abschnitt „Installieren“ auf Erweiterungsoptionen.
  • Klicken Sie nun auf Oder Suchen Sie nach einer Datei Klicken Sie auf die Schaltfläche, um die zuvor heruntergeladene Plugin-Datei zu finden und zu installieren.
  • Die Installation des Plugins ist erfolgreich. Klicken Sie nun auf Beginnen Sie mit der Verwendung des miniOrange OAuth Server-Plugin.
  • Unter dem Konfigurieren Sie OAuth Klicken Sie auf die Registerkarte ADD .
Erste Schritte mit der Einrichtung des OAuth-Servers

Schritte zum Konfigurieren von OAuth SSO in Joomla

1. Konfigurieren Rückruf-/Umleitungs-URL

  • Nachdem Sie Ihren OAuth-Anbieter ausgewählt haben, werden Sie zum weitergeleitet Schritt 1 [URL umleiten] Tab. Kopieren Sie nun die Rückruf-/Umleitungs-URL mit dem wir den OAuth-Server konfigurieren werden, und klicken Sie dann auf Speichern weiter .
  • OAuth Single Sign-On SSO in Joomla – Umleitungs-URL kopieren
  • Herunterladen Laravel-Pass.
  • Erstellen Sie mit dem Befehl ein Laravel-Projekt auf Ihrem Computer und richten Sie es ein:
  • composer create-project --prefer-dist laravel/laravel blog
  • Installieren Sie Laravel Passport
  • composer require Laravel/Passport
  • Gehen Sie zu config/app.php und fügen Sie die folgende Klasse hinzu: Anbieterbereich in der app.php-Datei
  • Laravel\Passport\PassportServiceProvider::class,
  • Führen Sie php artisan migrieren Befehl
  • Führen Sie PHP-Handwerkerpass: installieren Befehl
  • Gehe zu app/User.php Modellklasse, hinzufügen HasApiTokens Merkmal des Codes:-
  • namespace App;
    use Laravel\Passport\HasApiTokens;
    use Illuminate\Contracts\Auth\MustVerifyEmail;
    use Illuminate\Foundation\Auth\User as Authenticatable;
    use Illuminate\Notifications\Notifiable;
    class User extends Authenticatable
    {
    use HasApiTokens, Notifiable;
    /**
    * The attributes that are mass assignable.
    *
    * @var array
    */

    protected $fillable = [ 'name', 'email', 'password', ];
    /**
    * The attributes that should be hidden for arrays.
    *
    * @var array
    */

    protected $hidden = [ 'password', 'remember_token', ];
    /**
    * The attributes that should be cast to native types.
    *
    * @var array
    */

    protected $casts = [ 'email_verified_at' => 'datetime', ]; }
  • Gehen Sie zu diesem Pfad app/Providers und öffnen Sie die Datei AuthServiceProvider.php, hinzufügen Reisepass Rufen Sie den Dienstcode unten auf, und speichern Sie ihn:
  • namespace App\Providers;
    use Laravel\Passport\Passport;
    use Illuminate\Foundation\Support\Providers\AuthServiceProvider as ServiceProvider;
    use Illuminate\Support\Facades\Gate;
    class AuthServiceProvider extends ServiceProvider
    {
    /**
    * The policy mappings for the application.
    *
    * @var array
    */

    protected $policies = [ // 'App\Model' => 'App\Policies\ModelPolicy', ];
    /**
    * Register any authentication / authorization services.
    *
    * @return void
    */

    public function boot()
    {
    $this->registerPolicies();
    Passport::routes();
    //
    }
    }
  • Gehe zu config/auth.php ändern die API Treiber-Token zu Pass da wir die Passport-Bibliothek verwenden werden.
  • 'guards' => [
    'web' => [
    'driver' => 'session',
    'provider' => 'users',
    ],
    'api' => [
    'driver' => 'passport',
    'provider' => 'users',
    'hash' => false,
    ],
    ],
  • Richten Sie jetzt eine Demo-Ressource ein, in der Sie eine API-Route erstellen können Routen/api.php Datei.
  • Um Kunden-ID und Kundengeheimnis Führen Sie folgende Befehle aus: PHP-Handwerker-Pass:Client Es werden Ihnen folgende Fragen gestellt:
  • Which user ID should the client be assigned to?:
    > 1
    What should we name the client?:
    > Demo OAuth2 Client Account
    Where should we redirect the request after authorization?
    [http://localhost/auth/callback]:
    > http://localhost/oauth2_client/callback.php
    New client created successfully.
    Client ID: 1
    Client secret: zMm0tQ9Cp7LbjK3QTgPy1pssoT1X0u7sg0YWUW01

  • Um einen UserInfo-Endpunkt manuell zu erstellen, im app/Http/Controllers, erstellen Sie eine Datei UserController.php:
  • use App\Http\Controllers\Controller;
    use Illuminate\Http\Request;
    use App\User;
    class UserController extends Controller
    {
    public function get(Request $request)
    {
    $user_id = $request->get("uid", 0);
    $user = User::find($user_id);
    return $user;
    }
    }
  • Registrieren Sie außerdem die API-Route, indem Sie die folgende Zeile hinzufügen Routen/api.php Datei:
  • Route::middleware('auth:api')->get('/user/get', 'UserController@get');

2. Konfigurieren Sie die Client-ID und Geheimnis

  • Gehen Sie zum Schritt 2 [Kunden-ID und Geheimnis] Registerkarte des Joomla OAuth-Client-Plugins, hier einfügen Kunden-ID, Client-Geheimnis und Mieter. Klicken Sie auf Konfiguration speichern .
  • OAuth Single Sign-On SSO in Joomla – Konfiguration speichern

2.1. Umfang und Endpunkte

  • Jetzt können Sie den OAuth-Client mit Laravel Passport (OAuth-Anbieter) verbinden und die folgenden Endpunkte sind:
    ( Laufen PHP-Handwerker-Serv in cmd zu bekommen Ihre-Laravel-Site-URL (Domain). )
  • Umfang:
    openid-E-Mail-Profil
    Autorisierungsendpunkt:
    http://your-laravel-site-url/oauth/authorize
    Token-Endpunkt:
    http://your-laravel-site-url/oauth/token
    Benutzerinfo-Endpunkt:
    http://your-laravel-site-url/api/user/get
    Client-Anmeldeinformationen festlegen:
    In beiden (im Header und im Text)
  • Die Zuordnung von Benutzerattributen ist zwingend erforderlich, damit sich Benutzer erfolgreich bei Joomla anmelden können. Wir werden mit den folgenden Einstellungen Benutzerprofilattribute für Joomla einrichten.
  • Gehe zu Schritt 3 in England, Konfigurieren Sie OAuth Tab und klicken Sie auf Testkonfiguration .
IdP-Metadaten hochladen

  • Sie können die Attribute in der Testkonfigurationsausgabe wie folgt sehen.
IdP-Metadaten hochladen

  • Wählen Sie nun den Attributnamen für E-Mail und Benutzername aus der Dropdown-Liste. Klicken Sie dann auf Konfiguration abschließen .
IdP-Metadaten hochladen

  • Gehe jetzt zu Schritt 4, hier kopieren Sie die Anmelde-/SSO-URL und fügen Sie es Ihrer Website hinzu.
IdP-Metadaten hochladen

  • Melden Sie sich jetzt ab und gehen Sie zu den Seiten Ihrer Joomla-Site, auf denen Sie diesen Link hinzugefügt haben. Dort, wo Sie diese Schaltfläche platziert haben, wird ein Anmeldelink angezeigt. Klicken Sie auf diese Schaltfläche, um SSO durchzuführen.


Sie haben erfolgreich konfiguriert Joomla als OAuth-Client um zu erreichen Joomla Laravel Single Sign-On (SSO) mit Joomla zur Benutzerauthentifizierung.


In dieser Anleitung haben Sie Joomla Laravel Single Sign-On (SSO) durch Konfigurieren erfolgreich konfiguriert Laravel als OAuth-Anbieter und Joomla als OAuth-Client Verwenden Sie unser Joomla OAuth-Client-Plugin. Diese Lösung stellt sicher, dass Sie innerhalb von Minuten bereit sind, mit Laravel-Anmeldeinformationen einen sicheren Zugriff auf Ihre Joomla-Site bereitzustellen.

Zusätzliche Ressourcen


Mailen Sie uns weiter joomlasupport@xecurify.com Für eine schnelle Beratung (per E-Mail/Besprechung) zu Ihren Anforderungen hilft Ihnen unser Team bei der Auswahl der für Ihre Anforderungen am besten geeigneten Lösung/Plan.

Hallo!

Brauchen Sie Hilfe? Wir sind hier!

Unterstützung