Okta (SAML2 SSO, SCIM Provisioning)

Die Verbindung von Okta mit Flexopus ist über das Standard-Authentifizierungsprotokoll SAML2 möglich. Zusätzlich können Sie die SCIM-API für die Synchronisierung von Benutzern konfigurieren.

In diesem Artikel werden die folgenden Themen beschrieben:

Was ist Okta?

Okta ist ein Enterprise-Identitätsverwaltungsdienst, der für die Cloud entwickelt wurde, aber mit vielen lokalen Anwendungen kompatibel ist. Mit Okta kann die IT-Abteilung den Zugriff eines jeden Mitarbeiters auf jede Anwendung und jedes Gerät verwalten. Okta läuft in der Cloud auf einer sicheren, zuverlässigen und umfassend geprüften Plattform, die sich tief in On-Premise-Anwendungen, Verzeichnisse und Identitätsmanagementsysteme integrieren lässt.

Besuchen Sie die offizielle Website für weitere Informationen: https://www.okta.com/

SAML2 Single Sign On (SSO) Konfiguration zwischen Okta und Flexopus für die Benutzerauthentifizierung

Folgen Sie den Anweisungen:

  1. Navigieren Sie zu Ihrem Okta Dashboard und klicken Sie auf der Registerkarte Applications > Applications auf die Schaltfläche Create App Integration.
  2. Ein Popup-Fenster wird geöffnet. Wählen Sie die Option "SAML 2.0" und klicken Sie auf "Next".
  3. App name: Flexopus
    App logo: Leer lassen.
    Optionen: Unausgewählt lassen.
  4. Single sign On URL:
    https://{your-flexopus-domain}/internal-api/auth/integrations/saml2/callback
    Audience URl (SP Entity ID) :
    https://{your-flexopus-domain}/auth/saml2
    Name ID format: Persistent
    Default RelayState: initiate-sp-login
  5. Es ist nicht nötig, die erweiterten Einstellungen zu ändern, dennoch finden Sie hier einen Screenshot der Standardeinstellungen:
  6. Konfigurieren Sie die richtigen Attributzuordnungen.
    *Beachten Sie, dass die Abteilung und der Jobtitel nur ein optionales Attribut für Flexopus sind. Sie können diese auch leer lassen.
    Name Name format Value
    http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname URl Reference user.firstname
    http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress URl Reference user.email
    http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn URl Reference user.login
    http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname URl Reference user.lastName
    department Basic user.department
    jobtitle Basic user.title
    http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name URl Reference user.displayName

  7. Auswählen: I'm an Okta customer adding an internal app
    Auswählen: It's required to contact the vendor to enable SAML
    You can optionally give some information to Okta about Flexopus:
    (Optional) First Field: https://flexopus.com
    (Optional) Second Field: https://help.flexopus.com/de/integration-okta-sso
    (Optional) Third Field: Keine Tipps und zusätzliche Kommentare.
    Klicken Sie am Ende auf "Finish".
  8. Klicken Sie auf "View SAML setup instructions"
  9. Um die Konfiguration abzuschließen, müssen wir die Metadaten mit Flexopus teilen. Da Okta weder eine direkte Metadaten-URL noch eine Metadaten-Datei bereitstellt, müssen Sie die Metadaten-Datei wie folgt selbst erstellen:
    Kopieren Sie den Inhalt des optionalen Feldes im unteren Bereich: "Provide the following IDP metadata to your SP provider."
    Erstellen Sie lokal auf Ihrem PC eine leere XML-Datei und kopieren Sie den Inhalt in diese Datei.
  10. Navigieren Sie zu den globalen Einstellungen im Flexopus Adminbereich: Settings > Authentifizierung > Anbieter hinzufpgen > SAML2 SSO 
    Aktivieren Sie "SAML2 SSO"
    Wählen Sie als Konfigurationsmethode die Metadaten-Datei aus
    Laden Sie die XML-Datei hoch
    SAML2 Bezeichnung: z.B. "SSO Login" (dies wird der Text auf der Login-Schaltfläche sein)
    Gruppen synchronisieren: Leer lassen. Dies ist nur für Kunden relevant, die keine SCIM-Verbindung bei ihrem IDP-Anbieter haben. Okta bietet eine SCIM-API für die Bereitstellung von Gruppen und Benutzern.
    Vergessen Sie nicht, die Einstellungen im unteren Bereich zu speichern.
    Cursor_and_Einstellungen_-_Flexopus-3
  11. Weisen Sie der Anwendung einen Testbenutzer zu und testen Sie die Verbindung zu Flexopus.

12.     (optional) Wenn Sie nur SSO für die Anmeldung verwenden möchten, deaktivieren Sie das Anmeldeformular Passwort + E-Mail bei Flexopus (wir empfehlen, dies nach Abschluss der SCIM-Konfiguration zu machen):

13.      (optional) Fehlerbehebung:
Bitte prüfen Sie noch einmal die Konfiguration oder kontaktieren Sie unseren Support: support@flexopus.com

SCIM-API-Konfiguration zwischen Okta und Flexopus für die Bereitstellung von Benutzern und Gruppen 

IMPORTANT!
The custom standard SCIM provisioning at OKTA is not working at the moment as intended. An issue was reported to the OKTA technical support team. Please skip this configuration manual and execute the configuration prozess as described in the OKTA SCIM WORKAROUND section (scroll down)
Date: 2023-10-30

Optional können Sie auch Benutzer- und Gruppen von Okta nach Flexopus synchronisieren. Folgen Sie den Anweisungen, um SCIM zu konfigurieren:

  1. Klicken Sie auf "Edit" in den Anwendungseinstellungen
  2. Auswählen: "Enable SCIM provisioning"
  3. Ein neuer Reiter erscheint: "Provisioning".
    Navigieren Sie zu dem "Provisioning"-Reiter und klicken Sie auf "Edit"
  4. SCIM connector base URL: https://{your-flexopus-domain}/api/scim/v2
    Unique identifier field for users: userName
    Optionen auswählen: Push New Users, Push Profile Updates, Push Groups
    Select option: HTTP Header
    Neuen Token in Flexopus erstellen. (Settings > Single Sign On / Integrations > SCIM)
    Speichern
    "IMPORT GROUPS" NICHT AUSWÄHLEN!!!
  5. Klicken Sie auf Test. Die Testergebnisse sehen wie folgt aus:
  6. Speichern Sie die Einstellungen.
  7. Wählen Sie auf der Registerkarte Provisioning den Menüpunkt "To App" und klicken Sie auf "Edit".
  8. Aktivieren Sie: Select Create Users
    Aktivieren Sie: Update User Attributes
    Aktivieren Sie: Deactivate Users
    Die vierte Option wird nicht benötigt.
  9. Bearbeiten Sie die Attributzuordnung, um nur die erforderlichen Attribute über SCIM an Flexopus zu senden.
    Behalten Sie nur die folgenden Zuordnungen bei:
  10. Der Anzeigename muss geändert werden.
    Wert des Attributs:
    Ausdruck
    String.len(user.displayName) > 0 ? user.displayName : user.firstName + " " + user.lastName
    "Create and Update"
  11. Speichern Sie die Einstellungen
  12. Testen Sie die Verbindung, indem Sie Flexopus eine Gruppe zuweisen. Die Gruppen sollten innerhalb weniger Minuten mit Flexopus synchronisiert werden. 
  13. (optional) Fehlerbehebung:
    Bitte prüfen Sie noch einmal die Konfiguration oder kontaktieren Sie unseren Support: support@flexopus.com

OKTA SCIM Workaround

Zum aktuellen Zeitpunkt (2023-10-30) muss aufgrund einer Störung bei Okta, die SCIM Schnittstelle durch einen Umweg in SCIM eingerichtet werden. Die normale "Applikation", die wir für die SAML2 Anbindung verwendet haben, bietet zwar die "Provisioning" Option an, kann aber aufgrund eines technischen Fehlers seitens Okta nicht verwendet werden. Das Problem wurde von unserer Seite an Okta gemeldet und wir hoffen, dass es in der Zukunft sich ändert. Bis auf Weiteres können Sie die alternative Lösung wie folgt nutzen:

Vor der Konfiguration lesen!
Bei Okta werden die Benutzergruppen bidirektional synchronisiert. Spricht Sie können Gruppen von Okta zu Flexopus, aber auch von Flexopus zu Okta senden. Den zweiten brauchen wir nicht, aber wir können das auch nicht verhindern, zumindest haben wir bei Okta keine entsprechende Einstellung dazu gefunden. Aus diesem Grund sollten Sie das Folgendes vornehmen, bevor Sie konfigurieren:

(1) Stelle Sie sicher, dass die Namen von den bestehende Flexopus Gruppen nicht mit den Okta Gruppen überlappen, ansonst kann Okta die Gruppen nicht auflösen.

(2) Da das "To Okta" Use Case für uns nicht relevant ist, können die alle Attribute Mappings auflösen und das Datenaustausch zu Okta zu gut wie möglich beschränken.

  1. Neue App installieren
    Application > Browse App Catalog--> SCIM 2.0 Test App (Header Auth)
  2. Sie können die Anwendung umbenennen. Zum Beispiel: Flexopus SCIM App
  3. Leider kann SAML2 in dieser Anwendung nicht konfiguriert werden, daher können Sie die Einstellungen unten mit dem "Done" Button überspringen. SAML2 haben wir sowieso mit der anderen Anwendung bereits konfiguriert.
  4. Klicken Sie auf Provisioning und starten Sie die Einstellungen mit "Configure API Integration"
  5. Base URL: https://{your-flexopus-domain}/api/scim/v2
    API Token: Bearer {scim-token} 
    Wichtig! Sie müssen auch den "Bearer  " Teil einfügen!
  6. Aktivieren Sie: Select Create Users
    Aktivieren Sie: Update User Attributes
    Aktivieren Sie: Deactivate Users
  7. Bearbeiten Sie die Attributenzuordnung, um nur die erforderlichen Attribute über SCIM an Flexopus zu senden.
    Behalten Sie nur die folgenden Zuordnungen bei:
  8. Im Anschluss können Sie die Gruppen mit der Anwendung, bei Assignment und bei Push Groups verknüpfen.
  9. Testen Sie die Verbindung, indem Sie Flexopus eine Gruppe zuweisen. Die Gruppen sollten innerhalb weniger Minuten mit Flexopus synchronisiert werden. 
  10. (optional) Fehlerbehebung:
    Bitte prüfen Sie noch einmal die Konfiguration oder kontaktieren Sie unseren Support: support@flexopus.com

R0087