SAML Single Sign-On in Joomla mit PingFederate
Übersicht
Das miniOrange Joomla SAML SP SSO-Plugin hilft Ihnen, Ihre Joomla-Site mithilfe des SAML-Protokolls in PingFederate zu integrieren. Das miniOrange Joomla SAML SP Single Sign-on (SSO)-Plugin ist einfach, um PingFederate SSO in Joomla einzurichten und eine sichere Anmeldung bei Joomla zu ermöglichen. Dadurch können Benutzer nach der Authentifizierung mit ihren PingFederate IDP-Anmeldeinformationen mit einer Anmeldung auf mehrere Joomla-Anwendungen zugreifen.
Unser Plugin ist mit Joomla 3 sowie Joomla 4 mit allen SAML 2.0-kompatiblen Identitätsanbietern kompatibel. Hier führen wir Schritt für Schritt durch die Konfiguration der SAML SSO-Anmeldung zwischen der Joomla-Site und PingFederate, wobei PingFederate als IDP (Identity Provider) und Joomla als SP (Service Provider) betrachtet werden.
Konfigurationsschritte
In dieser Konfiguration PingFederate dient als Repository zum Speichern von Benutzern, d. h. es fungiert als IDP, während Joomla Hier melden sich Benutzer mit ihren Anmeldeinformationen von PingFederate an. 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: Konfigurieren Sie PingFederate als IDP (Identity Provider)
- Loggen Sie sich PingFederate Benutzeradministrator-Dashboard.
- Klicken Sie auf Identitätsanbieter im linken Navigationsmenü.
- Der SP-ANSCHLUSS, klicke auf Neu erstellen .
- Sie erhalten den folgenden Bildschirm. Klicke auf App-Integration erstellen .
- Wähle aus Browser-SSO-Profile Verbindungsvorlage auf der Verbindungstyp Tab und klicken Sie Nächster.
- Wählen Sie „Browser SSO“ aus Anschlussmöglichkeiten Tab und klicken Sie auf Nächster.
- Auswählen Reichen Sie das als Methode zum Importieren von Metadaten und klicken Sie auf Wählen Datei zur Auswahl des miniOrange SSO-Plugins Metadaten auf der Registerkarte „Metadaten importieren“. Klicken Sie auf Nächster.
- Überprüfen Sie die Informationen auf der Zusammenfassung der Metadaten Tab und klicken Sie auf Nächster.
- Im Registerkarte „Allgemeine Informationen“. sicherstellen, dass die Entitäts-ID des Dienstanbieters, Verbindungsname und Basis-URL Felder werden basierend auf den Metadaten vorab ausgefüllt. Klicken Nächster.
- Navigieren Sie zu der Browser-SSO und klicken Sie auf Konfigurieren Sie Browser-SSO. Sie werden zum Browser-SSO-Setup-Assistenten weitergeleitet.
- Wähle aus IdP-initiiertes SSO und SP-initiiertes SSO Optionen auf der SAML-Profile Tab und klicken Sie auf Nächster.
- Geben Sie die gewünschte Gültigkeitsdauer Ihrer Behauptung ein Behauptungslebensdauer Tab und klicken Sie auf Nächster. Standardmäßig ist für beides 5 Minuten konfiguriert.
- Navigieren Sie zur Assertion-Erstellung und klicken Sie auf Assertion-Erstellung konfigurieren. Sie werden zum Setup-Assistenten für die Assertion-Erstellung weitergeleitet.
- Wählen Sie auf der Registerkarte „Identitätszuordnung“ die Option „STANDARD“ aus und klicken Sie auf „Weiter“.
- Wählen Sie ein Betreffnamenformat für SAML_SUBJECT im aus Attributvertrag und klicken Sie auf „Weiter“.
- Klicken Sie in der Authentifizierungsquellenzuordnung auf Neue Adapterinstanz zuordnen.
- Wählen Sie eine aus Adapterinstanz und klicken auf NächsterDer Adapter muss die E-Mail-Adresse des Benutzers enthalten.
- Wähle aus Verwenden Sie in der SAML-Assertion-Option nur die Adaptervertragswerte. auf die Mapping-Methode Tab und klicken Sie Nächster.
- Wählen Sie Ihre Adapterinstanz als aus Quelle und die E-Mail als Wert auf der Attribut Vertragserfüllung Tab und klicken Sie auf Nächster.
- (Optional) Wählen Sie die gewünschten Autorisierungsbedingungen aus Ausgabekriterien und klicken Sie auf Nächster.
- Klicke Erledigt auf die Zusammenfassung.
- Klicken Sie auf „Weiter“. Authentifizierungsquellenzuordnung Tab.
- Klicke Erledigt auf der Registerkarte Zusammenfassung.
- Klicke Nächster auf die Behauptungserstellung.
- Navigieren Sie zur Registerkarte „Protokolleinstellungen“ des Browser-SSO-Assistenten und klicken Sie auf „Protokolleinstellungen konfigurieren“.
- Wählen Sie POST für Buchbindung und geben Sie das Single Sign-On an Endpunkt-URL im Feld „Endpunkt-URL“ auf der URL des Assertions-Consumer-Dienstes Klicke Nächster.
- Auswählen jetzt lesen auf die Zulässige SAML-Bindungen Tab und klicken Sie auf Nächster.
- Wählen Sie Ihre gewünschten Signaturrichtlinien für Zusicherungen aus Signaturrichtlinie und klicken Sie auf „Weiter“.
- Wählen Sie Ihre gewünschte Verschlüsselungsrichtlinie für Zusicherungen aus Verschlüsselungsrichtlinie Tab und klicken Sie auf Nächster.
- Klicke Erledigt auf die Zusammenfassung der Protokolleinstellungen Tab.
- Klicke Erledigt auf die Browser-SSO-Zusammenfassung.
- Navigieren Sie zu der Aus- und Fortbildungen und klicken Sie auf Anmeldeinformationen konfigurieren. Sie werden zum weitergeleitet Aus- und Fortbildungen Setup-Assistent.
- Wählen Sie das Signaturzertifikat aus, das mit dem Single Sign-On-Dienst verwendet werden soll, und wählen Sie auf der Registerkarte „Einstellungen für digitale Signatur“ die Option „Zertifikat in Signaturelement einschließen“ aus. Klicken Sie auf „Fertig“.
- Klicke Erledigt auf die Zusammenfassung.
- Klicke Nächster auf die Aus- und Fortbildungen.
- Auswählen Aktives für die Verbindungsstatus auf die Registerkarte „Aktivierung und Zusammenfassung“ und klicken auf Gespeichert.
- Navigieren Sie jetzt zum Identitätsanbieter des Ping Federate User Admin-Dashboards.
- Klicke Alles verwalten für SP-Verbindungen.
- Klicke Metadaten exportieren für den gewünschten Dienstanbieteranschluss.
- Klicke Export auf die Registerkarte „Exportieren und Zusammenfassung“ und klicken auf Erledigt .
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.
