Zum Inhalt springen

Okta 2-beinige OAuth 2.0 API-Sicherheitsprofil im Jitterbit API Manager

Einführung

Innerhalb eines Sicherheitsprofils können Sie Okta als OAuth 2.0-Identitätsanbieter konfigurieren, um API-Nutzern den Zugriff auf eine API mit Okta-Authentifizierung zu ermöglichen.

Diese Seite zeigt, wie Sie die Okta 2-beinige Authentifizierung mit einer Jitterbit benutzerdefinierten, OData- oder Proxy-API konfigurieren und verwenden, indem Sie die folgenden Schritte ausführen:

  1. Okta als Identitätsanbieter konfigurieren
    Konfigurieren Sie die Okta-Instanz als Identitätsanbieter und erhalten Sie die Okta Audience und den Scope, die als Eingabe für die Konfiguration eines Sicherheitsprofils im API Manager verwendet werden.
  2. Ein Sicherheitsprofil im API Manager konfigurieren
    Konfigurieren Sie Okta als Identitätsanbieter im API Manager.
  3. Ein Sicherheitsprofil im API Manager zuweisen
    Weisen Sie das Sicherheitsprofil einer oder mehreren Jitterbit benutzerdefinierten, OData- oder Proxy-APIs zu.
  4. Auf eine API mit Okta-Authentifizierung zugreifen
    API-Nutzer können dann die Okta-Authentifizierung verwenden, um Jitterbit benutzerdefinierte, OData- oder Proxy-APIs zu konsumieren, denen das Sicherheitsprofil zugewiesen ist.

Für weitere Informationen siehe die Okta-Dokumentation OAuth 2.0 und OpenID Connect Übersicht.

Für die Konfiguration des Okta 3-beinigen OAuth-Sicherheitsprofils siehe Okta 3-beiniges OAuth 2.0 API-Sicherheitsprofil.

1. Okta als Identitätsanbieter konfigurieren

  1. Melden Sie sich im Okta Developer Console als Benutzer mit administrativen Rechten an.

  2. Navigieren Sie im Seitenbereich der Okta Developer Console zu Anwendungen > Anwendungen, und klicken Sie dann auf die Schaltfläche App-Integration erstellen.

  3. Im Abschnitt Anmeldemethode der Seite Neue App-Integration erstellen wählen Sie API-Dienste aus und klicken Sie dann auf Weiter.

    attachment

  4. Im Abschnitt Allgemeine Einstellungen der Seite Neue API-Dienste-App-Integration geben Sie einen App-Integrationsnamen ein und klicken auf Speichern:

    attachment

  5. Nach dem Klicken auf Speichern werden die Client-ID und ein generiertes Client-Geheimnis im Tab Allgemein unter Client-Anmeldeinformationen angezeigt. Bewahren Sie diese für die spätere Verwendung auf, da sie beim Generieren eines OAuth-Tokens in Schritt 4 benötigt werden.

    attachment

  6. Klicken Sie im Tab Allgemein unter Allgemeine Einstellungen auf Bearbeiten, deaktivieren Sie Erforderliches Nachweisen des Besitzes (DPoP)-Headers in Token-Anfragen und klicken Sie auf Speichern:

    attachment

  7. Befolgen Sie diese Schritte, um einen Scope zu erstellen:

    1. Navigieren Sie in der Seitenleiste der Entwicklerkonsole von Okta zu Sicherheit > API > Autorisierungsserver und wählen Sie den entsprechenden Server aus. Bewahren Sie die Issuer-URI des Servers für die spätere Verwendung auf.

    2. Klicken Sie im Tab Scopes des Servers auf Scope hinzufügen.

    3. Geben Sie im Dialogfeld Scope hinzufügen einen Namen (z. B. CustomScope) ein und füllen Sie die optionalen Felder nach Wunsch aus. Bewahren Sie den eingegebenen Namen für die spätere Verwendung auf, da er bei der Konfiguration des Sicherheitsprofils benötigt wird. Wählen Sie unter Metadaten die Option In öffentlichen Metadaten einbeziehen. Klicken Sie auf Erstellen:

      attachment

  8. Befolgen Sie diese Schritte, um eine Zugriffsrichtlinie und eine Regel zu erstellen:

    1. Navigieren Sie zurück zu demselben Autorisierungsserver, der beim Erstellen eines Scopes verwendet wurde.

    2. Klicken Sie im Tab Zugriffsrichtlinien des Servers auf Richtlinie hinzufügen, falls noch keine vorhanden ist.

    3. Geben Sie im Dialogfeld Richtlinie hinzufügen einen Namen (z. B. CustomPolicy) ein und füllen Sie die optionalen Felder nach Wunsch aus. Klicken Sie auf Richtlinie erstellen:

      attachment

    4. Klicken Sie auf Regel hinzufügen.

    5. Geben Sie im Dialogfeld Regel hinzufügen einen Regelnamen (zum Beispiel CustomRule) ein und füllen Sie die optionalen Felder nach Wunsch aus. Die Standardwerte funktionieren mit Jitterbit. Klicken Sie auf Regel erstellen:

      attachment

2. Konfigurieren Sie ein Sicherheitsprofil im API-Manager

Konfigurieren Sie ein Sicherheitsprofil wie folgt:

  1. Setzen Sie Auth-Typ auf OAuth 2.0.

  2. Setzen Sie OAuth-Anbieter auf Okta.

  3. Aktivieren Sie den Schalter für den 2-beinigen OAuth-Flow.

  4. Fügen Sie optional zu Testzwecken eine Client-Anmeldeinformation mit der Client-ID und dem Client-Geheimnis aus Schritt 1 hinzu. Für Anweisungen zum Hinzufügen von Client-Anmeldeinformationen siehe die Seite Sicherheitsprofile.

okta 2-beinig

Konfigurieren Sie die verbleibenden Felder:

  • OAuth-Bereich: Geben Sie den Namen des Bereichs ein, den Sie bei der Konfiguration des Bereichs in Okta angegeben haben. Weitere Informationen finden Sie unter Okta als Identitätsanbieter konfigurieren.

  • Autorisierte Domains: Lassen Sie dieses Feld leer.

  • OpenID Discovery-URL: Ersetzen Sie {{SUBDOMAIN}} und yourAuthServerId durch die Okta-Subdomain und die Server-ID aus der Issuer-URI des gewählten Okta-Authentifizierungsservers aus Schritt 1. Zum Beispiel wird https://example-1234.okta.com/oauth2/default zu https://example-1234.okta.com/oauth2/default/.well-known/openid-configuration.

  • Audience: Geben Sie die Okta-Audience ein. Sie finden sie unter Sicherheit > API im Tab Einstellungen des Autorisierungsservers.

  • OAuth-Autorisierungs-URL: Ersetzen Sie {{SUBDOMAIN}} und yourAuthServerId durch die Okta-Subdomain und die Server-ID aus der Issuer-URI des gewählten Okta-Authentifizierungsservers aus Schritt 1. Zum Beispiel wird https://example-1234.okta.com/oauth2/default zu https://example-1234.okta.com/oauth2/default/v1/authorize.

  • OAuth-Token-URL: Ersetzen Sie {{SUBDOMAIN}} und yourAuthServerId mit der Okta-Domain und der Server-ID aus der Issuer-URI des gewählten Okta-Authentifizierungsservers aus Schritt 1. Zum Beispiel wird https://example-1234.okta.com/oauth2/default zu https://example-1234.okta.com/oauth2/default/v1/token.

  • Benutzerinformations-URL: Ersetzen Sie {{SUBDOMAIN}} und yourAuthServerId mit dem Okta-Subdomain und der Server-ID aus der Issuer-URI des gewählten Okta-Authentifizierungsservers aus Schritt 1. Zum Beispiel wird https://example-1234.okta.com/oauth2/default zu https://example-1234.okta.com/oauth2/default/v1/userinfo.

  • Testverbindung: Klicken Sie, um das Authentifizierungstoken zu validieren.

3. Weisen Sie ein Sicherheitsprofil im API-Manager zu

Um das Sicherheitsprofil mit einer API zu verwenden, folgen Sie den Anweisungen zur Konfiguration einer benutzerdefinierten API, OData-API oder Proxy-API und wählen Sie das mit Okta OAuth 2.0-Authentifizierung konfigurierte Sicherheitsprofil aus.

4. Greifen Sie mit Okta-Authentifizierung auf eine API zu

Sobald Sie eine benutzerdefinierte API, OData-API oder Proxy-API gespeichert und veröffentlicht haben, ist deren API über die URL in der Anwendung zugänglich, die die API mit der konfigurierten Authentifizierungsmethode aufruft.

Die Verwendung von 2-beiniger OAuth 2.0 ist ein zweistufiger Prozess:

  1. Generieren Sie ein OAuth-Token, indem Sie die oben in Schritt 1 erhaltene Okta-Client-ID und den Client-Secret in einer RFC6749 Client Credentials Access Token-Anforderung an den neuen 2-beinigen OAuth-Token-URL-Link auf der Seite Sicherheitsprofile senden oder indem Sie das OAuth-Token direkt von Okta abrufen.

  2. Senden Sie das OAuth-Token im API-Header unter Verwendung des "bearer" Token-Typs, der in RFC6750 definiert ist.

Um die API zu nutzen, kopieren Sie die Dienst-URL von der APIs Seite und verwenden Sie sie innerhalb der aufrufenden Anwendung. Sie können die URL entweder aus der Listenansicht oder der Kartenansicht kopieren.

Wenn die API GET unterstützt, können Sie die URL auch in einen Webbrowser einfügen, um die API manuell zu konsumieren.

Wenn der 2-beinige OAuth-Flow verwendet wird, ruft das API-Gateway das Zugriffstoken ab und die Authentifizierung erfolgt automatisch.

Wenn die Authentifizierung erfolgreich ist, wird die erwartete Nutzlast im Webbrowser angezeigt.