Hinweis:

Rocket.Chat für Single Sign-On in Identitätsdomains integrieren

Einführung

Rocket.Chat ist eine sichere und hochgradig anpassbare Open-Source-Kommunikationsplattform für Unternehmen mit ausgefeilten Sicherheits- und Datenschutzbedenken. Rocket.Chat bietet vollständige Kontrolle über Benutzerdaten und Unterhaltungen. Die Plattform unterstützt native Apps, nahtlose Integration mit Anwendungen von Drittanbietern, kanalübergreifende Zusammenarbeit, Single Sign-On (SSO) auf Basis von Security Assertion Markup Language (SAML) und Konfigurationskontrolle mit APIs.

Oracle Cloud Infrastructure Identity and Access Management (OCI IAM) ist ein Container für die Verwaltung von Benutzern und Rollen, die Föderation und das Provisioning von Benutzern, die Sicherung der Anwendungsintegration durch Oracle SSO-Konfiguration und die Administration von SAML/OAuth-basierten Identitätsprovider (IdP).

In diesem Tutorial automatisieren wir die Installation von Rocket.Chat und integrieren OCI IAM als IdP für SSO.

Ziele

Voraussetzungen

Aufgabe 1: Stack für die Installation von Rocket.Chat bereitstellen und SAML-Anwendung mit einem automatisierten Terraform-Stack erstellen

Rocket.Chat kann mit verschiedenen Methoden bereitgestellt werden. Für dieses Tutorial wurde die Option Mit Docker und Docker Compose bereitstellen verwendet. Weitere Informationen finden Sie unter Bereitstellen von Rocket.Chat.

Um die Installation von Rocket.Chat zu vereinfachen, haben wir einen Terraform-Automatisierungsstack erstellt. Dieser Stapel wird:

Hinweis: Prüfen Sie die Servicelimits für die zu erstellenden Ressourcen, bevor Sie den verknüpften Stack ausführen. Weitere Informationen finden Sie unter IAM mit Identitätsdomainlimits.

  1. Laden Sie den vollständigen Stack Rocket.Chat von hier herunter: Full_Stack_Rocket.Chat.zip.

    Nachdem die ZIP-Datei mit dem vollständigen Stack Rocket.Chat heruntergeladen wurde, dekomprimieren Sie die Datei, und ersetzen Sie den Inhalt der Datei -rchat.pem durch den jeweiligen Inhalt des Private Keys.

    Hinweis: Mit OCI Resource Manager in der OCI-Konsole können Sie den Stack bereitstellen, um Fehler zu vermeiden.

  2. Melden Sie sich bei der OCI-Konsole als Admin-Benutzer an, navigieren Sie zu Entwicklerservices, und klicken Sie unter Resource Manager auf Stacks.

    Stapel

  3. Wählen Sie das Compartment aus, und klicken Sie auf Stack erstellen. Wählen Sie im Abschnitt Stackkonfigurationen die in Schritt 1 heruntergeladene Stack-ZIP-Datei aus, um den Stack bereitzustellen, und klicken Sie auf Weiter.

    Stackupload

    Arbeitsverzeichnis

  4. Geben Sie auf der Seite Variablen konfigurieren die erforderlichen Details zum Erstellen einer Compute-Instanz und anderer Ressourcen ein, und klicken Sie auf Weiter.

    Hinweis: Um Compute-Instanz und Load Balancer zu erstellen, benötigen Sie ein vorhandenes VCN mit öffentlicher Konnektivität.

    Compute-Details

    VCN- und SSO-Details

  5. Prüfen Sie auf der Seite Prüfen die angegebenen Details, und klicken Sie auf Erstellen.

    Details überprüfen

  6. Klicken Sie auf der Seite Stackdetails auf Planen. Die Ausgabe Erfolgreich wird angezeigt.

    Planjob starten

    Planjob erfolgreich

  7. Klicken Sie auf der Seite Stackdetails auf Anwenden. Die Ausgabe Erfolgreich wird angezeigt.

    Bewerbung starten

    Job anwenden erfolgreich

  8. Nach erfolgreicher Ausführung des Stacks finden Sie Load Balancer, die an die Compute-Instanz angehängt sind, die Rocket.Chat hostet, und eine SAML-Anwendung in Ihrer IAM-Domain.

    Berechnen

    Load Balancer

    SAML-APP

    Hinweis: Die Ausführung des Stacks kann etwa 40 Minuten dauern. Warten Sie, bis der Job erfolgreich ist.

Aufgabe 2: Admin-Account Rocket.Chat einrichten

In dieser Aufgabe aktualisieren wir die hosts-Datei auf dem lokalen System und validieren dann die bereitgestellten Ressourcen.

Für Windows: C:\Windows\System32\Drivers\etc\hosts.

Für Linux: /etc/hosts

Public IP Address of Load Balancer   your-domain-name.com

Greifen Sie unter https://your-domain-name.com:443 auf Rocket.Chat zu, und Sie werden zur Setupseite umgeleitet.

Admin-Informationen

Organisationsinformationen

E-Mail bestätigen

Bestätigung

Willkommenseite

Hinweis: Halten Sie das Admin-Kennwort sicher. Dies wird beim Erstellen einer SAML-IdP in Rocket.Chat benötigt.

Aufgabe 3: Erstellen Sie eine SAML IdP in Rocket.Chat für Single Sign-On

  1. Melden Sie sich bei der Rocket.Chat-Instanz an, und navigieren Sie zu Workspace und Einstellungen.

    Workspace

    Settings

  2. Geben Sie im Fenster Einstellungen die Option SAML ein, und klicken Sie auf Öffnen.

    SAML-Einstellungen

  3. Wählen Sie auf der Seite Verbindung die Option Aktivieren aus. Geben Sie die folgenden Details ein, und klicken Sie auf Änderungen speichern. Geben Sie das Kennwort ein, wenn Sie zur Eingabe des Admin-Kennworts aufgefordert werden.

    • Benutzerdefinierter Provider: Geben Sie idcs ein.

    • Benutzerdefinierten Einstiegspunkt aktualisieren: Geben Sie Ihren benutzerdefinierten Einstiegspunkt ein. Beispiel: https://idcs-xxxx.identity.oraclecloud.com/fed/v1/idp/sso.

    • IDP SLO-Umleitungs-URL: Geben Sie Ihre SLO-Umleitungs-URL für IdP ein. Beispiel: https://idcs-xxxx.identity.oraclecloud.com/fed/v1/idp/slo.

    • Benutzerdefinierter Aussteller: Geben Sie einen benutzerdefinierten Aussteller ein. Beispiel: https://your-domain-name.com/_saml/metadata/idcs.

    • Benutzerdefiniertes Zertifikat: Laden Sie das Signaturzertifikat aus der SAML-Anwendung herunter, die mit dem Stack erstellt wurde, und kopieren Sie den Inhalt.

      Hinweis: Schließen Sie die Positionen ZERTIFIZIEREN UND ZERTIFIZIEREN aus.

    • Inhalt öffentlicher Zertifikate: Kopieren Sie den gesamten Inhalt des Zertifikats.

    • Signaturvalidierungstyp: Wählen Sie Assertion-Signatur validieren aus.

    Verbindungsdetails

    Zertifizierungsdetails

    Hinweis: Verwenden Sie denselben statischen Wert für Benutzerdefinierter Provider. Andernfalls verläuft das SSO möglicherweise nicht erfolgreich, da es in der in Aufgabe 1 erstellten SAML-Anwendung referenziert wird.

  4. Aktualisieren Sie auf der Seite Allgemein im Abschnitt Benutzeroberfläche den Schaltflächentext und andere Details, wenn Sie ihn ändern müssen, und klicken Sie auf Änderungen speichern.

    Benutzeroberfläche

Aufgabe 4: SSO für Rocket.Chat mit OCI IAM testen

  1. Öffnen Sie Ihren Browser, und geben Sie die URL für Rocket.Chat https://demo.rocketchat.com:443 ein.

    Anmelden

  2. Die Anmeldeseite für OCI-IAM-Identitätsdomains wird angezeigt. Verwenden Sie den Benutzernamen und das Kennwort des zuvor erstellten Benutzers.

    Föderierte Anmeldung

  3. Nach erfolgreicher Authentifizierung wird der Benutzer zur Homepage Rocket.Chat umgeleitet.

    Willkommenseite

    Hinweis: Sie sollten einen allgemeinen Benutzer sowohl in OCI IAM als auch in Rocket.Chat mit derselben E-Mail-Adresse erstellen lassen.

Häufige Fehlerbehebungsszenarios für Rocket.Chat SSO mit OCI IAM

  1. Stellen Sie sicher, dass unter Domains, Ihrer Domain, Einstellungen und Sessioneinstellungen die Option Cross-Origin Resource Sharing (CORS) zulassen aktiviert ist.

  2. Wenn das Laden der Rocket.Chat-Instanz Zeit in Anspruch nimmt, können Sie mit den folgenden Befehlen versuchen, eine SSH-Verbindung zur Instanz herzustellen und den Docker-Compose neu zu starten.

    	docker compose down
    
    	docker compose up -d
    

Danksagungen

Weitere Lernressourcen

Lernen Sie andere Übungen auf docs.oracle.com/learn kennen, oder greifen Sie auf weitere kostenlose Lerninhalte im Oracle Learning YouTube Channel zu. Außerdem können Sie education.oracle.com/learning-explorer besuchen, um Oracle Learning Explorer zu werden.

Die Produktdokumentation finden Sie im Oracle Help Center.