Zum Hauptinhalt springen

Single Sign-On mit Okta einrichten

Mit minimalem Konfigurationsaufwand ermöglicht dieser Connector die Integration mit Okta für Enterprise SSO.

tipp:

Für weitere Informationen über SSO und wie man SSO in Logto konfiguriert, schaue bitte in der Enterprise SSO (SAML & OIDC) Dokumentation nach, um loszulegen.

Schritt 1: OIDC-Anwendung im Okta Admin-Portal erstellen

  • Besuche das Okta-Admin-Portal und melde dich als Administrator an.
  • Navigiere zur Seite Applications / Applications über das Seitenmenü.
  • Klicke auf die Schaltfläche Create App Integration, um eine neue OIDC-Anwendung zu erstellen.
  • Wähle die Option OIDC - OpenID Connect als Sign-in method.
  • Wähle die Option Web Application als Application type.
Okta create application

Klicke auf die Schaltfläche Next, um fortzufahren.

Schritt 2: Anwendungseinstellungen konfigurieren

  1. Gib einen App integration name an. Er wird als Identifikator deiner OIDC-Anwendung verwendet.
  2. Füge eine neue Sign-in redirect URIs hinzu, indem du die Callback-URL des Logto SSO-Connectors verwendest.

Dies ist die URI, zu der Okta den Browser des Benutzers nach erfolgreicher Authentifizierung umleiten wird. Nachdem sich ein Benutzer erfolgreich beim IdP authentifiziert hat, leitet der IdP den Browser des Benutzers zusammen mit einem Autorisierungscode zurück zu dieser festgelegten URI. Logto wird den Authentifizierungsprozess basierend auf dem von dieser URI erhaltenen Autorisierungscode abschließen.

Okta application settings
  1. Weise Benutzer der Anwendung zu.

Basierend auf den Assignments-Einstellungen kannst du wählen, ob die Anwendung allen Benutzern oder bestimmten Benutzern/Gruppen zugewiesen werden soll.

Okta assign users

Klicke auf die Schaltfläche Save, um die Anwendungseinstellungen zu speichern.

Schritt 3: Logto Connector mit den Client-Zugangsdaten einrichten

Nach erfolgreicher Erstellung der OIDC-Anwendung wirst du zur Anwendungsdetailseite weitergeleitet.

Okta-Client-Anmeldedaten

Kopiere die client ID und das client secret und fülle die entsprechenden Felder im Connection-Tab des Logto SSO-Connectors aus.

Verwende deine Okta-Domain als issuer. Beispiel: https://dev-12345678.okta.com. Sobald du alle Felder ausgefüllt hast, klicke auf die Schaltfläche Save, um die Connector-Einstellungen zu speichern.

Wenn der von dir angegebene issuer-Link gültig ist, siehst du eine analysierte vollständige Liste der Okta IdP-Konfigurationen, die unter dem issuer-Feld angezeigt wird.

Schritt 4: Zusätzliche Berechtigungen (Optional)

Berechtigungen (Scopes) definieren die Berechtigungen, die deine App von den Benutzern anfordert, und steuern, auf welche Daten deine App in deren Okta-Konten zugreifen kann. Das Anfordern zusätzlicher Okta-Berechtigungen erfordert eine Konfiguration auf beiden Seiten:

In der Okta-Admin-Konsole:

  1. Navigiere zu Applications > Applications und wähle deine OIDC-Anwendung aus.
  2. Gehe zum Tab Assignments, um sicherzustellen, dass deine App Zugriff auf die benötigten Benutzer und Gruppen hat.
  3. Für benutzerdefinierte Berechtigungen navigiere zu Security > API > Authorization Servers und wähle deinen Autorisierungsserver aus.
  4. Füge bei Bedarf benutzerdefinierte Berechtigungen hinzu:
    • Klicke auf Scopes und dann auf Add Scope
    • Definiere Scope-Namen wie okta.users.read oder okta.groups.read für den Zugriff auf Okta-APIs
    • Konfiguriere die Zustimmungserfordernisse für jede Berechtigung

Eine vollständige Liste der verfügbaren Berechtigungen und deren Beschreibungen findest du in der Okta OIDC Dokumentation.

Im Logto Okta Connector:

  1. Logto fügt automatisch die Berechtigungen openid, profile und email hinzu, um grundlegende Benutzeridentitätsinformationen abzurufen. Du kannst das Feld Scopes leer lassen, wenn du nur grundlegende Benutzerinformationen benötigst.
  2. Füge offline_access zum Feld Scopes hinzu, wenn du planst, Tokens für dauerhaften API-Zugriff zu speichern. Diese Berechtigung ermöglicht Auffrischungstokens (Refresh tokens) für langlebigen API-Zugriff.
  3. Füge zusätzliche Berechtigungen (durch Leerzeichen getrennt) im Feld Scopes hinzu, um mehr Daten von Okta anzufordern. Zum Beispiel: okta.users.read okta.groups.read
tipp:

Wenn deine App diese Berechtigungen anfordert, um auf Okta-APIs zuzugreifen und Aktionen auszuführen, stelle sicher, dass du Tokens für dauerhaften API-Zugriff speichern im Logto Okta Connector aktivierst. Siehe den nächsten Abschnitt für Details.

Schritt 5: Tokens speichern, um auf Okta APIs zuzugreifen (Optional)

Wenn du auf Okta-Berechtigungen (scopes) zugreifen und Aktionen mit Benutzer-Autorisierung durchführen möchtest, muss Logto bestimmte Berechtigungen erhalten und Tokens speichern.

  1. Füge die benötigten Berechtigungen in der API-Berechtigungskonfiguration deiner Okta-Entwicklerkonsole und im Logto Okta Connector hinzu.
  2. Aktiviere Tokens für persistierenden API-Zugriff speichern im Logto Okta Connector. Logto speichert Okta Zugangstokens (Access tokens) und Auffrischungstokens (Refresh tokens) sicher im Secret Vault.
  3. Um sicherzustellen, dass Auffrischungstokens (Refresh tokens) zurückgegeben werden, füge die offline_access-Berechtigung zu den Berechtigungen deiner Okta-Anwendung hinzu und schließe sie in die Berechtigungen deines Logto Okta Connectors ein. Diese Berechtigung ermöglicht es deiner Anwendung, über längere Zeiträume Zugriff auf Ressourcen zu behalten.

Schritt 6: E-Mail-Domains festlegen und den SSO Connector aktivieren

Gib die E-Mail-Domains deiner Organisation im Tab SSO-Erfahrung des Logto-Connectors an. Dadurch wird der SSO-Connector als Authentifizierungsmethode für diese Benutzer aktiviert.

Benutzer mit E-Mail-Adressen in den angegebenen Domains werden weitergeleitet, um ausschließlich deinen SSO-Connector als Authentifizierungsmethode zu verwenden.

Weitere Details zur Erstellung einer OIDC-Integration mit Okta findest du unter Create OIDC App Integrations.