Zum Inhalt springen

Microsoft Entra ID 2-beinige OAuth 2.0 API-Sicherheitsprofil im Jitterbit API Manager

Einführung

Important

Microsoft Entra ID war zuvor bekannt als Microsoft Azure AD.

Diese Seite erklärt, wie man Microsoft Entra ID 2-beinige OAuth 2.0 mit einer Jitterbit benutzerdefinierten API, OData API oder Proxy-API verwendet. Für 3-beinige OAuth siehe Microsoft Entra ID 3-beinige OAuth 2.0 API-Sicherheitsprofil.

Innerhalb eines Sicherheitsprofils können Sie Microsoft Entra ID (Azure AD) als OAuth 2.0 Identitätsanbieter konfigurieren, um API-Nutzern den Zugriff auf eine API mithilfe der Microsoft Entra ID-Authentifizierung zu ermöglichen.

Für weitere Informationen siehe die Microsoft-Dokumentation Konfigurieren einer OpenID Connect OAuth-Anwendung aus der Microsoft Entra-App-Galerie.

Azure AD Graph-Abkündigung

Die Azure AD Graph API ist abgekündigt. Microsoft wird sie am 30. Juni 2025 vollständig einstellen.

Wenn Sie Ihre App-Registrierung zuvor mit Azure AD Graph konfiguriert haben, müssen Sie die App-Registrierung vor dem 1. Februar 2025 zu Microsoft Graph migrieren. App-Registrierungen, die bis zum 1. Februar 2025 nicht migriert wurden, erhalten einen Fehler bei Anfragen.

Nachdem Sie die App-Registrierung zu Microsoft Graph migriert haben, müssen Sie das App-Manifest aktualisieren. Befolgen Sie die Anweisungen in Schritt 12 unter API-Berechtigungen für Harmony gewähren.

Voraussetzungen

Sie benötigen die Microsoft Entra ID P1-Edition, um Microsoft Entra ID als Identitätsanbieter einzurichten und zu verwenden.

1. Konfigurieren Sie Microsoft Entra ID als Identitätsanbieter

Befolgen Sie diese Schritte, um eine OAuth 2.0-Anwendung im Microsoft Azure-Portal zu konfigurieren. Sie müssen die Client-ID, das Client-Geheimnis und die Verzeichnis-ID abrufen, um Microsoft Entra ID als Identitätsanbieter in einem Sicherheitsprofil zu konfigurieren.

  1. Melden Sie sich im Microsoft Azure-Portal an.

  2. Gehen Sie zu App-Registrierungen und klicken Sie auf Neue Registrierung:

    msft new registration annotated

  3. Geben Sie auf dem Bildschirm Eine Anwendung registrieren diese Details ein:

    attachment

    • Name: Geben Sie einen Namen ein, z. B. Jitterbit API Manager APIs.
    • Unterstützte Kontotypen: Wählen Sie die geeignete Option für Ihre Umgebung aus.
  4. Nachdem Sie auf Registrieren geklickt haben, zeigt der Bildschirm Übersicht die Anwendungs- (Client-) ID und die Verzeichnis- (Mandanten-) ID an. Speichern Sie diese Werte. Sie benötigen sie später:

    attachment

  5. Wählen Sie unter Verwalten auf der linken Seite Zertifikate & Geheimnisse aus. Klicken Sie unter Client-Geheimnisse auf Neues Client-Geheimnis:

    attachment

  6. Geben Sie eine Beschreibung ein und setzen Sie das Geheimnis auf Nie ablaufen. Klicken Sie dann auf Hinzufügen:

    attachment

  7. Klicken Sie auf das Symbol In die Zwischenablage kopieren, um das Client-Geheimnis zu speichern. Speichern Sie diesen Wert, da Sie ihn später benötigen:

    attachment

2. Gewähren Sie API-Berechtigungen an Harmony

Befolgen Sie diese Schritte, um Harmony die Berechtigungen zu gewähren, die Microsoft Entra ID APIs mit der OAuth 2.0-Anwendung zu verwenden, die Sie in Microsoft Entra ID als Identitätsanbieter konfigurieren erstellt haben. Wenn Sie aus dem vorherigen Abschnitt fortfahren, beginnen Sie bei Schritt 3.

  1. Melden Sie sich beim Microsoft Azure-Portal an.

  2. Gehen Sie im Microsoft Azure-Portal zu App-Registrierungen. Wählen Sie die OAuth 2.0-Anwendung aus, die Sie in Microsoft Entra ID als Identitätsanbieter konfigurieren erstellt haben. In diesem Beispiel heißt sie Jitterbit API Manager APIs.

  3. Wählen Sie unter Verwalten API-Berechtigungen. Klicken Sie dann auf Berechtigung hinzufügen:

    attachment

  4. Wählen Sie unter Microsoft-APIs Microsoft Graph:

    attachment

  5. Wählen Sie Delegierte Berechtigungen:

    attachment

  6. Wählen Sie unter Berechtigungen auswählen diese Berechtigungen aus:

    • OpenId-Berechtigungen: Wählen Sie offline_access, openid und profile.

      attachment

      • Benutzer: Wählen Sie User.Read.

      attachment

  7. Klicken Sie am unteren Ende des Bildschirms API-Berechtigungen anfordern auf Berechtigungen hinzufügen.

  8. Sie kehren zum Bildschirm API-Berechtigungen für die Anwendung zurück. Klicken Sie unter Konfigurierte Berechtigungen auf Admin-Zustimmung für \<Verzeichnis> gewähren.

    attachment

  9. Bestätigen Sie den Dialog zur Gewährung der Zustimmung:

    attachment

  10. Unter Konfigurierte Berechtigungen zeigt die Spalte Status, dass die Zustimmung für jede hinzugefügte Berechtigung erteilt wurde:

    attachment

  11. Folgen Sie diesen zusätzlichen Schritten, um einen benutzerdefinierten Scope zu erstellen:

    1. Navigieren Sie zu API exponieren und klicken Sie auf Scope hinzufügen.
    2. Geben Sie im Dialogfeld Scope hinzufügen einen Scope Namen, Anzeigenamen für die Admin-Zustimmung, Beschreibung der Admin-Zustimmung ein und füllen Sie die optionalen Felder nach Wunsch aus. Klicken Sie auf Scope hinzufügen:

      attachment

  12. Wählen Sie unter der Kategorie Verwalten auf der linken Seite Manifest aus. Stellen Sie sicher, dass requestedAccessTokenVersion auf 2 gesetzt ist, und klicken Sie auf Speichern:

    microsoft manifest

    Hinweis

    Ihr Authentifizierungstoken wird nicht validiert, wenn requestedAccessTokenVersion nicht auf 2 gesetzt ist.

3. Konfigurieren Sie ein Sicherheitsprofil im API-Manager

Konfigurieren Sie diese Felder für ein Sicherheitsprofil:

microsoft entra ID 2-legged

Hinweis

Der Profilname darf keine Leerzeichen enthalten. Wenn der Profilname Leerzeichen enthält, erhalten Sie einen Fehler, wenn Sie versuchen, auf eine API mit diesem Sicherheitsprofil zuzugreifen. Microsoft Entra ID gibt einen Fehler zurück, der ähnlich ist wie dieser:

Die in der Anfrage angegebene Rückgabe-URL stimmt nicht mit den für die Anwendung konfigurierten Rückgabe-URLs überein.

  • Auth-Typ: Wählen Sie OAuth 2.0 aus.

  • OAuth-Anbieter: Wählen Sie Azure AD aus.

  • 2-legged OAuth Flow: Verwenden Sie den Schalter, um dieses Feld zu aktivieren.

  • OAuth-Bereich: Geben Sie die Client-ID und den Bereich in folgendem Format ein: <client_id>/.default.

  • Autorisierte Domains: Lassen Sie dieses Feld leer.

  • OAuth-Client-ID: Geben Sie optional die Client-ID aus Schritt 1 zum Testen ein.

  • OAuth-Client-Geheimnis: Geben Sie optional das Client-Geheimnis aus Schritt 1 zum Testen ein.

  • Openid Discovery-URL: Ersetzen Sie {{ SUBDOMAIN }} durch die Verzeichnis-ID aus Schritt 1.

  • Zielgruppe: Geben Sie die oben erhaltene Client-ID aus Schritt 1 ein.

  • OAuth-Authentifizierungs-URL: Ersetzen Sie {{ SUBDOMAIN }} durch die Verzeichnis-ID aus Schritt 1.

  • OAuth-Token-URL: Ersetzen Sie {{ SUBDOMAIN }} durch die Verzeichnis-ID aus Schritt 1.

  • Benutzerinformations-URL: Ersetzen Sie {{ SUBDOMAIN }} durch die Verzeichnis-ID aus Schritt 1.

  • Verbindung testen: Klicken Sie, um das Authentifizierungstoken zu validieren.

4. Weisen Sie das Sicherheitsprofil im API-Manager zu

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

5. Greifen Sie mit Microsoft Entra ID-Authentifizierung auf die API zu

Sobald Sie eine benutzerdefinierte API, einen OData-Dienst oder eine Proxy-API gespeichert und veröffentlicht haben, ist die 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 Azure-Client-ID und das Client-Geheimnis in einer RFC6749 Client Credentials Access Token-Anforderung an den neuen 2-beinigen OAuth-Token-URL-Link auf der Seite Sicherheitsprofile übermitteln oder indem Sie das OAuth-Token direkt von Microsoft Entra ID 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, verwenden Sie den Link zu URL kopieren und verwenden Sie ihn in der aufrufenden Anwendung:

url 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 2-beiniger 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.