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 werden auf dieser Seite erläutert. 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 dient SimpleSAML als Repository für die Speicherung von Benutzern, d. h. es fungiert als Identitätsanbieter (IDP), während sich die Benutzer bei Joomla mit ihren Anmeldeinformationen von SimpleSAML anmelden, wo das Joomla SAML SP SSO Plugin installiert ist.

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.
ADFS_sso ×
Hallo!

Brauchen Sie Hilfe? Wir sind hier!

Unterstützung