SAML Single Sign-On in Joomla mit WSO2
Übersicht
Das miniOrange Joomla SAML SP SSO-Plugin hilft Ihnen, Ihre Joomla-Site mithilfe des SAML 2-Protokolls in WSO2.0 zu integrieren. Unser benutzerfreundliches Plugin vereinfacht die Einrichtung von Single Sign-on (SSO) mit WSO2 in Joomla und gewährleistet ein sicheres Anmeldeerlebnis. So können Benutzer mühelos mit ihren WSO2 IDP-Anmeldeinformationen auf verschiedene Joomla-Sites zugreifen.
Unser Plugin ist mit Joomla 3, 4 und 5 kompatibel und funktioniert nahtlos mit allen SAML 2.0-kompatiblen Identitätsanbietern. Eine detaillierte Übersicht über die umfassenden Funktionen des Joomla SAML SP-Plugins finden Sie hier auf unserer Seite. Im Folgenden finden Sie eine Schritt-für-Schritt-Anleitung zum Konfigurieren der SAML SSO-Anmeldung zwischen Ihrer Joomla-Site und WSO2, wobei WSO2 als Identitätsanbieter (IDP) und Joomla als Dienstanbieter (SP) fungiert.
Konfigurationsschritte
In dieser Konfiguration WSO2 dient als Repository zum Speichern von Benutzern, d. h. es fungiert als IDP, während Joomla ist der Ort, an dem sich Benutzer mit ihren Anmeldeinformationen von WSO2 anmelden. Joomla SAML SP SSO-Plugin wird installiert.
Schritt 1: Joomla SAML SP Plugin installieren
- 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 Jetzt loslegen!
- 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.
Schritt 2: WSO2 als IDP (Identity Provider) konfigurieren
- Melden Sie sich bei Ihrem WSO2 an Admin-Konsole.
- Wählen Sie im linken Navigationsmenü aus Speichern für Dienstanbieter Tab.
- Konfigurieren Sie auf der Seite „Neuen Dienstanbieter hinzufügen“ Folgendes:
| Auswahlmodus | Manuelle Konfiguration |
| Name des Dienstanbieters | Joomla |
| Beschreibung des Dienstanbieters | (Optional) Geben Sie eine Beschreibung ein |
- Klicken Sie auf Registrieren.
Grundinformation:
- Wählen Sie den SP-Zertifikattyp aus: Verwenden Sie den SP JWKS-Endpunkt.
- SaaS-Anwendung: Aktiviert (optional).
Anspruchskonfiguration:
- Wählen Sie den Anspruchszuordnungsdialekt aus: Verwenden Sie den lokalen Claim-Dialekt.
- Klicken Sie auf Anspruchs-URI hinzufügen, für den Sie mehrere Ansprüche/Attribute hinzufügen können Attributzuordnung (wie E-Mail-Adresse, Vorname, Nachname, Telefonnummer usw.).
- Betreff-Anspruchs-URI: https://wso2.org/claims/fullname.
Rollen-/Berechtigungskonfiguration:
- Erweitern Sie den Abschnitt „Rollen-/Berechtigungskonfiguration“ und erweitern Sie dann die Berechtigungen sowie die Rollenzuordnung .
- Klicke Berechtigung hinzufügen und geben Sie die dienstanbieterspezifische Berechtigung an, die Sie hinzufügen möchten.
- Klicke Rollenzuordnung hinzufügen und geben Sie entsprechende Werte für die lokale Rolle sowie die Dienstanbieterrolle ein.
Konfiguration der eingehenden Authentifizierung:
- Gehe zu SAML2-Web-SSO-Konfiguration.
- Klicken Sie auf Einrichtung.
- In Neuen Dienstanbieter registrieren Seite, Modus auswählen als URL-Konfiguration.
- Kopieren Sie die Metadaten-URL von Metadaten des Dienstanbieters Registerkarte im Plugin.
- Fügen Sie die URL in das Textfeld darunter ein Laden Sie die Metadaten des Dienstanbieters von der URL hoch.
- Klicken Sie auf Hochladen .
- Klicken Sie auf OK .
Metadaten des Identitätsanbieters:
- Der Konfiguration der eingehenden Authentifizierung, klicke auf SAML2 Web SSO-Konfiguration.
- Klicke Bearbeiten außer dem Herausgeber Ihres Dienstanbieters.
- Hier können Sie die Angaben Ihres Dienstanbieters überprüfen.
- Prüfen Sie die Attributprofil aktivieren und Attribute immer in die Antwort einschließen für Attributzuordnung.
- Klicken Sie auf Laden Sie IDP-Metadaten herunter .
- Klicken Sie auf Aktualisierung .
- Behalten Sie diese IDP-Metadaten für Konfigurationen des Joomla SAML SP-Plugins bei.
Schritt 3: Joomla als SP (Service Provider) konfigurieren
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:
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 .
B. Nach Metadaten-URL:
- Enter Metadaten-URL (Von IDP-App kopieren) und klicken Sie auf Metadaten abrufen .
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 |
Schritt 4: Attributzuordnung - Premiumfunktion
- 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 |
- 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 ..
Schritt 5: Gruppenzuordnung - Premium-Funktion
- 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.
Hinweis: Sie können sehen, wie die Gruppen-/Rollenzuordnung funktioniert ..
Schritt 6: Umleitung und SSO-Links
- 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.
- 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.
FAQs
Weitere FAQs ➔Meine Testkonfiguration war erfolgreich, aber beim Anmeldeversuch stecke ich in einer Umleitungsschleife fest.
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.
Warum werde ich zur Joomla-Site statt zu IDP weitergeleitet, wenn ich auf „Testkonfiguration“ klicke?
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.
Ich habe mich bei meinem Identitätsanbieter angemeldet und wurde zur Joomla-Site weitergeleitet, aber ich bin nicht angemeldet?
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.
Es konnte kein Zertifikat gefunden werden, das dem konfigurierten Fingerabdruck entspricht.
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.
Wie exportiere ich die Konfiguration in Joomla SAML?
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“.
Warum erhalte ich beim Aktualisieren des Joomla SAML-Plugins die Fehlermeldung „Tabelle fehlt“?
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.
So beheben Sie den schwerwiegenden Fehler: Klasse kann nicht deklariert werden, da der Name bereits verwendet wird?
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
SSO funktioniert nicht? Verwenden Sie Admin Tools zusammen mit dem SAML SP-Plugin?
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.
Wie kann ich SAML-Anfragen/-Antworten mithilfe von SAML Tracer-Protokollen prüfen oder herunterladen?
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.
Beim Anmelden wird mir die Fehlermeldung „Wir konnten Sie nicht anmelden. Wenden Sie sich bitte an Ihren Administrator“ angezeigt.
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.
