Suchergebnisse :

×

SAML Single Sign-On in Joomla mit SimpleSAML

Das miniOrange Joomla SAML SP SSO-Plugin hilft Ihnen, Ihre Joomla-Site mithilfe des SAML 2.0-Protokolls in SimpleSAML zu integrieren. Unser benutzerfreundliches Plugin vereinfacht die Einrichtung von Single Sign-on (SSO) mit SimpleSAML in Joomla und gewährleistet ein sicheres Anmeldeerlebnis. So können Benutzer mühelos mit ihren SimpleSAML IDP-Anmeldeinformationen auf verschiedene Joomla-Sites zugreifen.

Unser Plugin ist kompatibel mit Joomla 3, 4 sowie 5 und funktioniert nahtlos mit allen SAML 2.0-kompatiblen Identity Providern. Eine detaillierte Übersicht über die umfassenden Funktionen des Joomla SAML SP-Plugins finden Sie auf unserer Seite .. Nachfolgend bieten wir eine Schritt-für-Schritt-Anleitung zum Konfigurieren der SAML SSO-Anmeldung zwischen Ihrer Joomla-Site und SimpleSAML, wobei SimpleSAML als Identitätsanbieter (IDP) und Joomla als Dienstanbieter (SP) fungiert.


In dieser Konfiguration SimpleSAML dient als Repository zum Speichern von Benutzern, d. h. es fungiert als IDP, während Joomla Hier melden sich Benutzer mit ihren Anmeldeinformationen von SimpleSAML an. Joomla SAML SP SSO-Plugin wird installiert.

  • 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.
Joomla SAML SP Plugin installieren
  • Die Installation des Plugins ist erfolgreich. Klicken Sie nun auf Jetzt loslegen!
Erste Schritte mit der SAML SP-Einrichtung
  • Gehen Sie zum Metadaten des Dienstanbieters Registerkarte, hier finden Sie die Metadaten-URL, laden Sie die Metadaten-XML-Dateioder Sie können die Entitäts-ID und ACS-URL direkt.
Erste Schritte mit der SAML SP-Einrichtung

Aktivieren der Identity Provider-Funktionalität:

  • Als Erstes muss die Funktionalität des Identitätsanbieters aktiviert werden. Dies geschieht durch Bearbeiten config/config.php (Sie finden diese Datei in Ihrem simplesaml-Installationsverzeichnis). Die Option enable.saml20-idp steuert, ob die SAML 2.0 IdP-Unterstützung aktiviert ist. Aktivieren Sie sie durch Zuweisen von was immer dies auch sein sollte. zu ihnen.
  • Beispiel: „enable.saml20-idp“ => true.

Konfigurieren des Authentifizierungsmoduls:

  • Das Authentifizierungsmodul exampleauth: UserPass ist Teil des Moduls exampleauth. Dieses Modul ist standardmäßig nicht aktiviert, daher müssen Sie ermöglichen es. Dies geschieht durch die Erstellung einer Datei mit dem Namen ermöglichen (Dateiname) in module/beispielauth/.
  • Unter Unix kann dies durch Ausführen (aus dem SimpleSAMLphp-Installationsverzeichnis) erfolgen.
  • Der nächste Schritt besteht darin, mit diesem Modul eine Authentifizierungsquelle zu erstellen. Eine Authentifizierungsquelle ist ein Authentifizierungsmodul mit einer bestimmten Konfiguration. Jede Authentifizierungsquelle hat einen Namen, der verwendet wird, um in der IdP-Konfiguration auf diese bestimmte Konfiguration zu verweisen. Die Konfiguration für Authentifizierungsquellen finden Sie unter konfiguration/ authsources.php.
  • In diesem Setup sollte diese Datei einen einzelnen Eintrag enthalten:
  • [ 'Beispielauth: UserPass', 'Student: Studentenpass' => [ 'UID' =>
  • Diese Konfiguration erstellt zwei Benutzer – Student und Employee – mit den Passwörtern „studentpass“ und „employeepass“. Benutzername und Passwort werden im Array-Index gespeichert (student: studentpass für den Studentenbenutzer). Die Attribute für jeden Benutzer werden im Array konfiguriert, auf das der Index verweist. Für den Studentenbenutzer sind dies also:
  • [ 'uid' => ['Student'], 'eduPersonAffiliation' => ['Mitglied', 'Student'], ],
  • Die Attribute werden vom IdP zurückgegeben, wenn sich der Benutzer anmeldet.

Erstellen eines selbstsignierten Zertifikats:

  • Der IdP benötigt ein Zertifikat, mit dem er seine SAML-Assertions signieren kann. Hier ist ein Beispiel für einen OpenSSL-Befehl, mit dem ein neuer privater Schlüssel und das entsprechende selbstsignierte Zertifikat generiert werden können. Der private Schlüssel und das Zertifikat werden in das in der Einstellung certdir definierte Verzeichnis verschoben (standardmäßig cert/). Dieser Schlüssel und das Zertifikat können zum Signieren von SAML-Nachrichten verwendet werden:
  • openssl req -newkey rsa:3072 -new -x509 -days 3652 -nodes -out example.org.crt -keyout example.org.pem
  • Das obige Zertifikat ist 10 Jahre lang gültig. ODER Sie können es mithilfe eines beliebigen Online-Tools generieren und in das Zertifikatsverzeichnis einfügen. Die Erweiterung sollte wie folgt aussehen:
  • example.org.crt //(Öffentlicher Schlüssel) example.org.pem //(Privater Schlüssel)
  • Hinweis: SimpleSAMLphp funktioniert nur mit RSA-Zertifikaten. DSA-Zertifikate werden nicht unterstützt.

Konfigurieren des IdP:

  • Der SAML 2.0 IdP wird durch die in metadata/saml20-idp-hosted.php gespeicherten Metadaten konfiguriert. Dies ist eine Minimalkonfiguration:
  • <?php    $metadata['__DYNAMIC:1__'] = [    /*    * The hostname for this IdP. This makes it possible to run multiple    * IdPs fro

Hinzufügen von SPs zum IdP:

  • Der Identitätsanbieter, den Sie konfigurieren, muss wissen, mit welchen Dienstanbietern Sie eine Verbindung herstellen möchten. Dies wird durch Metadaten konfiguriert, die in metadata/saml20-sp-remote.php gespeichert sind. Dies ist ein minimales Beispiel einer metadata/saml20-sp-remote.php-Metadatendatei für einen SimpleSAMLphp SP:
    Ersetzen Sie example.com durch Ihren Joomla-Domänennamen.
  • 
    
        
  • Beachten Sie, dass sich die URI in der EntityID und die URLs zu den Endpunkten Assertion Consumer Service und Single Logout Service zwischen verschiedenen Dienstanbietern ändern. Wenn Sie die Metadaten des Remote-SP als XML-Datei haben, können Sie den integrierten XML-zu-SimpleSAMLphp-Metadatenkonverter verwenden, der standardmäßig als /admin/metadata-converter.php in Ihrer SimpleSAMLphp-Installation verfügbar ist.
    • Hier können Sie auch Benutzerattribute hinzufügen, die Sie von SimpleSAML an Ihren Dienstanbieter, z. B. Joomla, senden möchten.
    • Gehen Sie zur SimpleSAMLphp-Homepage der Installation. Die URL einer Installation kann beispielsweise lauten:
    • https://service.example.com/simplesaml/ where service.example.com
    • Hinweis: Die URL der Installationsseite kann je nach Durchführung der SimpleSAML-Installation unterschiedlich sein.
    • Gehen Sie nun zur Registerkarte „Föderation“ und klicken Sie auf „Metadaten für SAML 2.0-IdP-Metadaten anzeigen“.
    Konfigurieren Sie SimpleSAML als IDP

    • Hier können Sie die IdP-Metadaten abrufen, die zur Konfiguration des Plugins erforderlich sind.

Im Joomla SAML-Plugin gehen Sie zum Tab „Dienstanbieter-Einrichtung“ und klicken dann auf Neuen IDP hinzufügenEs gibt 3 Möglichkeiten, den IDP zu konfigurieren:

IdP-Metadaten hochladen

A. Durch Hochladen von IDP-Metadaten:

  • Gehen Sie im Joomla SAML-Plugin zu Einrichtung des Dienstanbieters Hier auf den Tab klicken Datei auswählen Klicken Sie auf die Schaltfläche, um die Metadatendatei auszuwählen, und anschließend auf die Schaltfläche Hochladen .
IdP-Metadaten hochladen

B. Nach Metadaten-URL:

  • Enter Metadaten-URL (Von IDP-App kopieren) und klicken Sie auf Metadaten abrufen .
IdP-Metadaten hochladen

C. Manuelle Konfiguration:

  • Kopieren SAML-Entitäts-ID, SAML Single-Sign-On-Endpunkt-URL und X.509-Zertifikat aus dem Federation Metadata-Dokument und fügen Sie es ein in IDP-Entitäts-ID, Single Sign-On-URL, X.509-Zertifikat Felder jeweils im Plugin.
IdP-Entitäts-ID SAML-Entitäts-ID im Verbundmetadatendokument
Single-Sign-On-URL SAML Single-Sign-On-Endpunkt-URL im Verbundmetadatendokument
Wert des X.509-Zertifikats X.509-Zertifikat im Verbundmetadatendokument
IdP-Metadaten hochladen
  • Attribute sind Benutzerdetails, die in Ihrem Identitätsanbieter gespeichert werden.
  • Mithilfe der Attributzuordnung können Sie Benutzerattribute von Ihrem Identitätsanbieter (IDP) abrufen und sie Joomla-Benutzerattributen wie Vorname, Nachname, Adresse, Telefonnummer usw. zuordnen.
  • Bei der automatischen Registrierung der Benutzer auf Ihrer Joomla-Site werden diese Attribute automatisch Ihren Joomla-Benutzerdetails zugeordnet.
  • Gehen Sie zum Reiter „Kartierung“ und füllen Sie alle Felder aus. Attributzuordnung .
Benutzername: Name des Benutzernamenattributs vom IdP (NameID standardmäßig beibehalten)
E-Mail: Name des E-Mail-Attributs vom IdP (NameID standardmäßig beibehalten)
Name: Name des Namensattributs vom IdP
Joomla Attributzuordnung
  • Sie können die Ergebnisse der Testkonfiguration unter der Registerkarte „Dienstanbieter-Setup“ überprüfen, um eine bessere Vorstellung davon zu bekommen, welche Werte hier zugeordnet werden sollen.

Hinweis: Sie können sehen, wie die Attributzuordnung funktioniert ..

  • Mithilfe der Gruppen-/Rollenzuordnung können Sie Benutzern einer bestimmten Gruppe in Ihrem Identitätsanbieter (IdP) bestimmte Rollen zuweisen.
  • Bei der automatischen Registrierung werden den Benutzern Rollen zugewiesen, die auf der Gruppe basieren, der sie zugeordnet sind.
Joomla Gruppenzuordnung

Hinweis: Sie können sehen, wie die Gruppen-/Rollenzuordnung funktioniert ..

  • Gehen Sie zur Registerkarte „Anmeldeeinstellungen“. Sie können eine Anmelde-URL hinzufügen, um SAML SSO auf Ihrer Joomla-Site durchzuführen, indem Sie die folgenden Schritte ausführen.
  • Auf dieser Registerkarte sind mehrere Funktionen verfügbar, z. B. die automatische Weiterleitung des Benutzers zum Identitätsanbieter und die Aktivierung der Backend-Anmeldung für Superuser. Um diese Funktionen zu verwenden, aktivieren Sie die entsprechenden Kontrollkästchen.
Joomla Gruppenzuordnung
  • Klicken Sie auf die Registerkarte „Upgrade“, um unsere vollständige Liste der Funktionen und verschiedenen Lizenzierungspläne anzuzeigen. ODER Sie können hier klicken, um die Funktionen und Lizenzierungspläne anzuzeigen.
  • Falls Sie auf ein Problem stoßen oder Fragen haben, können Sie uns erreichen, indem Sie uns Ihre Anfrage über die Support-Schaltfläche im Plugin senden oder uns eine E-Mail an senden joomlasupport@xecurify.com.

Es gibt mehrere Gründe, warum dies passieren kann:

1. Caching ist auf der Website aktiviert.
Wenn die automatische Weiterleitung aktiviert ist, wird der Benutzer zur IDP-Anmeldeseite und nach der Anmeldung zurück zur Hauptseite weitergeleitet. Da das Caching jedoch aktiviert ist, erfolgt eine Weiterleitung zur IDP-Anmeldeseite, wodurch eine Schleife entsteht.

2. HTTP/HTTPS-Diskrepanz:
Dies geschieht, wenn HTTPS auf der Site nicht erzwungen wird, aber auf der IDP-Seite mit einer HTTPS-URL konfiguriert ist. Dies kann gelöst werden, indem HTTPS auf der Site erzwungen wird, indem eine Umleitungsregel in der .htaccess-Datei oder auf Apache-Ebene definiert wird.

3. Cookie-Verfälschung:
Das vom Plugin nach der Anmeldung des Benutzers erstellte Cookie wird von einem anderen Plugin geändert, was dazu führt, dass sich der Benutzer nicht bei der Joomla-Site anmeldet, die Sitzung jedoch auf IDP erstellt wird.

Wenn im Joomla SAML-Plugin eine Erweiterung nach der Installation des Plugins nicht aktiviert ist, werden Sie nach dem Klicken auf „Konfiguration testen“ zu Ihrer eigenen Site weitergeleitet, anstatt zu IDP. Um dieses Problem zu beheben, müssen Sie nach der Installation alle Erweiterungen des Plugins aktivieren.

Befolgen Sie zur Lösung dieses Problems die folgenden Schritte:

1. Gehen Sie in der Joomla-Administratoroberfläche zu Erweiterungen -> Verwalten -> Verwalten.
2. Suchen Sie nach „Miniorange“.
3. Aktivieren Sie alle Erweiterungen der Plugins.

Hier sind einige häufige Fehler, die auftreten können:

INVALID_ISSUER: Dies bedeutet, dass Sie NICHT den korrekten Issuer- oder Entity-ID-Wert eingegeben haben, den Sie von Ihrem Identity Provider erhalten haben. In der Fehlermeldung sehen Sie, welcher Wert (den Sie konfiguriert haben) erwartet wurde und was tatsächlich in der SAML-Antwort gefunden wurde.
INVALID_AUDIENCE: Dies bedeutet, dass Sie die Audience-URL in Ihrem Identitätsanbieter NICHT richtig konfiguriert haben. Sie muss in Ihrem Identitätsanbieter auf https://base-url-of-your-joomla-site/plugins/authentication/miniorangesaml/ eingestellt sein.
INVALID_DESTINATION: Dies bedeutet, dass Sie die Ziel-URL in Ihrem Identitätsanbieter NICHT richtig konfiguriert haben. Sie muss in Ihrem Identitätsanbieter auf https://base-url-of-your-joomla-site/plugins/authentication/miniorangesaml/saml2/acs.php eingestellt sein.
INVALID_SIGNATURE: Dies bedeutet, dass das von Ihnen bereitgestellte Zertifikat nicht mit dem in der SAML-Antwort gefundenen Zertifikat übereinstimmt. Stellen Sie sicher, dass Sie dasselbe Zertifikat bereitstellen, das Sie von Ihrem IdP heruntergeladen haben. Wenn Sie die Metadaten-XML-Datei Ihres IdP haben, stellen Sie sicher, dass Sie das Zertifikat in einem X509-Zertifikat-Tag bereitstellen, das ein Attribut use=' signing' hat.
INVALID_CERTIFICATE: Dies bedeutet, dass das von Ihnen bereitgestellte Zertifikat nicht das richtige Format hat. Stellen Sie sicher, dass Sie das gesamte von Ihrem IdP bereitgestellte Zertifikat kopiert haben. Wenn Sie es aus der Metadaten-XML-Datei des IdP kopiert haben, stellen Sie sicher, dass Sie den gesamten Wert kopiert haben.

Dies ist nur möglich, wenn ein in der SAML-Antwort enthaltenes Zertifikat nicht mit dem im Plug-In konfigurierten Zertifikat übereinstimmt. Kopieren Sie den im Fenster „Testkonfiguration“ angezeigten Zertifikatswert und fügen Sie ihn im Plug-In auf der Registerkarte „Dienstanbieter“ in das Feld „X.509-Zertifikat“ ein.

Bitte folgen Sie den Schritten zur Exportkonfiguration:
1) Gehen Sie zum Plugin miniOrange SAML SP und navigieren Sie zur Registerkarte „Service Provider Setup“.
2) Klicken Sie dann unten auf der Seite auf die Schaltfläche „Importieren/Exportieren“ und anschließend auf die Schaltfläche „Konfiguration exportieren“.
3) Navigieren Sie zu System >> Verwalten und suchen Sie in der Suchleiste nach miniOrange. Deinstallieren Sie dann alle miniOrange-Erweiterungen.

Bitte folgen Sie den Schritten zum Importieren der Konfiguration:
1) Installieren Sie das neueste Plugin und melden Sie sich mit Ihren miniOrange-Anmeldedaten im Plugin an.
2) Navigieren Sie zur Registerkarte „Dienstanbieter-Setup“ und klicken Sie auf die Schaltfläche „Importieren/Exportieren“.
3) Laden Sie die heruntergeladene Konfigurationsdatei hoch und klicken Sie dann auf die Schaltfläche „Konfiguration importieren“.

Wenn beim Aktualisieren des Joomla SAML-Plugins keine Tabelle oder Spalte zur Datenbank hinzugefügt wird, wird die Fehlermeldung „Fehlende Tabelle“ angezeigt. Dieses Problem tritt im Allgemeinen auf, wenn beim Aktualisieren des Plugins keine Tabelle oder Spalte zur Datenbank hinzugefügt wird.
Sie können das Plugin neu installieren, um dieses Problem zu beheben. Führen Sie dazu bitte die folgenden Schritte aus:

Deinstallieren Sie das vorhandene Plugin. (Erstellen Sie vor der Deinstallation des Plugins eine Sicherungskopie des vorhandenen Plugins.)
– Gehen Sie zu Erweiterungen -> Verwalten -> Verwalten
– Suche nach miniOrange
– Wählen Sie alle Erweiterungen aus und klicken Sie auf „Deinstallieren“.
Installieren Sie nun das Plugin erneut und konfigurieren Sie es.

Eine Joomla-Site kann entweder als Serviceprovider oder als Identity Provider verwendet werden, indem das entsprechende SP- oder IDP-Plugin verwendet wird. Dieser Fehler tritt wahrscheinlich auf, weil Sie beide Plugins auf derselben Site installiert haben.
Um dieses Problem zu beheben, befolgen Sie bitte die unten aufgeführten Schritte: Löschen Sie die folgenden Ordner aus Ihrem Joomla-Verzeichnis:

1. /libraries/miniorangejoomlaidpplugin
2. /libraries/miniorangesamlplugin
3. /plugins/system/samlredirect
Jetzt sollten Sie sich bei Ihrer Joomla-Site anmelden können.

Entfernen Sie die restlichen Erweiterungen:

1. Gehen Sie in der Administratorkonsole Ihrer Joomla-Site zu Erweiterungen -> Verwalten -> Verwalten.
2. Suche nach „miniorange“
3. Wählen Sie alle Erweiterungen aus und klicken Sie auf Deinstallieren

Das Umleitungsproblem tritt bei der Verwendung des Admin Tools-Plugins für Joomla SAML SSO auf, wobei das Admin Tools-Plugin Änderungen an der .htaccess-Datei vornimmt und bestimmte Regeln hinzufügt, die eine Umleitung von der Site verhindern.

Sie können das oben genannte Problem lösen, indem Sie die folgenden Schritte ausführen:

1. Navigieren Sie zu „Admin Tools“ >> „Systemsteuerung“ und klicken Sie dann auf die Option „.htaccess Maker“.
2. Deaktivieren Sie anschließend die Option „Schutz vor gängigen File-Injection-Angriffen“.
Löschen Sie anschließend den Cache Ihrer Site und testen Sie die einmalige Anmeldung.

SAML Tracer-Protokolle:

1. Laden Sie das SAML-Tracer-Add-on herunter: Firefox: [ Link ] | Chrom:[ Link ] 2. Öffnen Sie den SAML-Tracer in der Browser-Symbolleiste.
3. Lassen Sie das SAML-Tracer-Fenster geöffnet.
4. Führen Sie die SSO-/Testkonfiguration durch und reproduzieren Sie das Problem.
5. Gehen Sie zum SAML-Tracer-Fenster.
6. Sie haben die Möglichkeit, das SAML Tracer-Protokoll in eine Datei zu exportieren (in der oberen Menüleiste). Speichern Sie die Protokolle in einer Datei, wählen Sie bei der entsprechenden Aufforderung „Keine“ und senden Sie uns diese Datei.

Es scheint, dass Ihr Identitätsanbieter einen Fehler in der SAML-Antwort sendet. Um das Problem zu beheben, gehen Sie bitte zur Registerkarte „Dienstanbieter-Setup“ des SAML SP-Plugins. Klicken Sie auf „Konfiguration testen“ und überprüfen Sie das Fenster mit den Konfigurationsergebnissen. Stellen Sie sicher, dass die Attributzuordnung korrekt durchgeführt wurde, und überprüfen Sie, ob der X.509-Zertifikatswert korrekt ist.



ADFS_sso ×
Hallo!

Brauchen Sie Hilfe? Wir sind hier!

Unterstützung