Registrieren einer Microsoft Graph-Anwendung

Mit Microsoft Graph können Sie viele der Ressourcen innerhalb Ihres Azure AD B2C-Mandanten verwalten, einschließlich der Benutzerkonten von Kunden und benutzerdefinierter Richtlinien. Durch das Schreiben von Skripts oder Anwendungen, die die Microsoft Graph-API aufrufen, können Sie Aufgaben zur Mandantenverwaltung wie die folgenden automatisieren:

  • Migrieren eines vorhandenen Benutzerspeichers zu einem Azure AD B2C-Mandanten
  • Bereitstellen benutzerdefinierter Richtlinien mit einer Azure-Pipeline in Azure DevOps und Verwalten von benutzerdefinierten Richtlinienschlüsseln
  • Hosten der Benutzerregistrierung auf Ihrer eigenen Seite und Erstellen von Benutzerkonten im Hintergrund im Azure AD B2C-Verzeichnis
  • Automatisieren der Anwendungsregistrierung
  • Abrufen von Überwachungsprotokollen

Die folgenden Abschnitte helfen Ihnen bei der Vorbereitung auf die Verwendung der Microsoft Graph-API zum Automatisieren der Verwaltung von Ressourcen in Ihrem Azure AD B2C-Verzeichnis.

Interaktionsmodi der Microsoft Graph-API

Es gibt zwei Kommunikationsmodi, die Sie bei der Arbeit mit der Microsoft Graph-API verwenden können, um Ressourcen in Ihrem Azure AD B2C-Mandanten zu verwalten:

  • Interaktiv: Dieser Modus eignet sich für einmalig ausgeführte Aufgaben. Sie verwenden dabei ein Administratorkonto im B2C-Mandanten, um die Verwaltungsaufgaben auszuführen. Dieser Modus erfordert die Anmeldung eines Administrators mit seinen Anmeldeinformationen, bevor die Microsoft Graph-API aufgerufen wird.

  • Automatisiert: Dieser Modus eignet sich für geplante oder fortlaufend ausgeführte Aufgaben. Bei dieser Methode wird ein Dienstkonto verwendet, das Sie mit den erforderlichen Berechtigungen zum Ausführen der Verwaltungsaufgaben konfigurieren. Sie erstellen das Dienstkonto in Azure AD B2C, indem Sie eine Anwendung registrieren, die von Ihren Anwendungen und Skripts zum Authentifizieren über die Anwendungs-ID (Client-ID) und die gewährten OAuth 2.0-Clientanmeldeinformationen verwendet wird. In diesem Fall ruft die Anwendung im eigenen Namen die Microsoft Graph-API auf, nicht über den Administratorbenutzer wie bei der zuvor beschriebenen interaktiven Methode.

Sie aktivieren das automatisierte Interaktionsszenario, indem Sie eine Anwendungsregistrierung erstellen, die in den folgenden Abschnitten gezeigt wird.

Der Azure AD B2C-Authentifizierungsdienst unterstützt direkt den Fluss zur Gewährung von OAuth 2.0 Client-Anmeldeinformationen (derzeit in der öffentlichen Vorschau), aber Sie können ihn nicht verwenden, um Ihre Azure AD B2C-Ressourcen über Microsoft Graph API zu verwalten. Sie können jedoch einen Fluss von Client-Anmeldeinformation mit Microsoft Entra ID und dem Endpunkt der Microsoft Identitätsplattform /token für eine Anwendung in Ihrem Azure AD B2C-Mandanten einrichten.

Registrieren von Managementanwendungen

Bevor Ihre Skripts und Anwendungen mit der Microsoft Graph-API interagieren können, um Azure AD B2C-Ressourcen zu verwalten, müssen Sie eine Anwendungsregistrierung in Ihrem Azure AD B2C-Mandanten erstellen, die die erforderlichen API-Berechtigungen erteilt.

  1. Melden Sie sich beim Azure-Portal an.
  2. Wenn Sie Zugriff auf mehrere Mandanten haben, wählen Sie das Symbol Einstellungen im Menü oben, um über das Menü Verzeichnisse + Abonnements zu Ihrem Azure AD B2C Mandanten zu wechseln.
  3. Suchen Sie im Azure-Portal nach Azure AD B2C, und wählen Sie diese Option dann aus.
  4. Wählen Sie App-Registrierungen aus, und wählen Sie dann Registrierung einer neuen Anwendung aus.
  5. Geben Sie unter Name einen Namen für die Anwendung ein. Zum Beispiel managementapp1.
  6. Wählen Sie Nur Konten in diesem Organisationsverzeichnis aus.
  7. Deaktivieren Sie unter Berechtigungen das Kontrollkästchen Administratoreinwilligung für openid- und offline_access-Berechtigungen erteilen.
  8. Wählen Sie Registrieren.
  9. Notieren Sie die Anwendungs-ID (Client) , die auf der Übersichtsseite der Anwendung angezeigt wird. Sie verwenden diesen Wert in einem späteren Schritt.

Gewähren des API-Zugriffs

Damit Ihre Anwendung auf Daten in Microsoft Graph zugreifen kann, erteilen Sie der registrierten Anwendung die entsprechenden Anwendungsberechtigungen. Die effektiven Berechtigungen Ihrer Anwendung entsprechen der vollen Stufe der Berechtigungen, die anhand der Berechtigung impliziert werden. Um zum Beispiel jeden Benutzer in Ihrem Azure AD B2C-Anker zu erstellen, zu lesen, zu aktualisieren und zu löschen, fügen Sie die Berechtigung User.ReadWrite.All hinzu.

Hinweis

Die Berechtigung User.ReadWrite.All enthält nicht die Möglichkeit, Kennwörter von Benutzerkonten zu aktualisieren. Wenn Ihre Anwendung Benutzerkonten-Kennwörter aktualisieren muss, erteilen Sie die Benutzer-Administrator-Rolle. Beim Erteilen der Benutzer-Administrator-Rolle ist User.ReadWrite.Allnicht erforderlich. Die Benutzer-Administrator-Rolle enthält alles, was zum Verwalten von Benutzern erforderlich ist.

Sie können Ihrer Anwendung mehrere Anwendungsberechtigungen erteilen. Wenn Ihre Anwendung z. b. auch Gruppen in Ihrem Azure AD B2C Anker verwalten muss, fügen Sie die Berechtigung Group.ReadWrite.All ebenfalls hinzu.

App-Registrierungen

  1. Wählen Sie unter Verwalten die Option API-Berechtigungen.
  2. Wählen Sie unter Konfigurierte Berechtigungen die Option Berechtigung hinzufügen aus.
  3. Wählen Sie die Registerkarte Microsoft-APIs und dann Microsoft Graph aus.
  4. Wählen Sie Anwendungsberechtigungen.
  5. Erweitern Sie die entsprechende Berechtigungsgruppe, und aktivieren Sie das Kontrollkästchen neben der Berechtigung, die Sie Ihrer Verwaltungsanwendung gewähren möchten. Beispiel:
    • User>User.ReadWrite.All: Für Benutzermigrations- oder Benutzerverwaltungsszenarien
    • Group>Group.ReadWrite.All: Zum Erstellen von Gruppen, Lesen und Aktualisieren von Gruppenmitgliedschaften und Löschen von Gruppen
    • AuditLog>AuditLog.Read.All: Zum Lesen der Überwachungsprotokolle des Verzeichnisses.
    • Policy>Policy.ReadWrite.TrustFramework: Für CI-/CD-Szenarien (Continuous Integration/Continuous Delivery). Zum Beispiel für die Bereitstellung benutzerdefinierter Richtlinien mit Azure Pipelines.
  6. Wählen Sie Berechtigungen hinzufügen aus. Warten Sie einige Minuten, bevor Sie mit dem nächsten Schritt fortfahren.
  7. Wählen Sie Administratorzustimmung für (Name Ihres Mandanten) erteilen aus.
  8. Melden Sie sich mit einem Konto bei Ihrem Azure AD B2C-Mandanten an, dem die Rolle Cloudanwendungsadministrator*in zugewiesen ist, und wählen Sie dann Administratorzustimmung für (Name Ihres Mandanten) erteilen aus.
  9. Wählen Sie Aktualisieren aus, überprüfen Sie dann, ob „Gewährt für...“ unter Status angezeigt wird. Es kann einige Minuten dauern, bis die Berechtigungen weitergegeben wurden.

[Fakultativ] Benutzer-Administrator-Rolle erteilen

Wenn Ihre Anwendung oder Ihr Skript Benutzer löschen oder deren Kennwörter aktualisieren muss, weisen Sie der Anwendung die Rolle Benutzer-Administrator zu. Die Benutzer-Administrator Rolle verfügt über einen festgelegten Satz Berechtigungen, den Sie Ihrer Anwendung gewähren.

Führen Sie die folgenden Schritte aus, um die Benutzer-Administrator-Rolle hinzuzufügen:

  1. Melden Sie sich beim Azure-Portal an.
  2. Wenn Sie Zugriff auf mehrere Mandanten haben, wählen Sie das Symbol Einstellungen im Menü oben aus, um über das Menü Verzeichnisse + Abonnements zu Ihrem Azure AD B2C-Mandanten zu wechseln.
  3. Suchen Sie nach Azure AD B2C, und wählen Sie diese Option aus.
  4. Wählen Sie unter Verwalten den Eintrag Rollen und Administratoren aus.
  5. Wählen Sie die Rolle Benutzeradministrator aus.
  6. Wählen Sie Zuweisungen hinzufügen aus.
  7. Geben Sie im Auswählen-Textfeld den Namen oder die ID der Anwendung ein, die Sie zuvor registriert haben, z. B., managementapp1. Wählen Sie Ihre Anwendung aus, wenn sie in den Suchergebnissen angezeigt wird.
  8. Wählen Sie Hinzufügen. Es kann einige Minuten dauern, bis die Berechtigungen vollständig verteilt sind.

Erstellen eines geheimen Clientschlüssels

Die Anwendung benötigt zum Beweis ihrer Identität einen geheimen Client-Schlüssel, wenn sie ein Token anfordert. Führen Sie folgende Schritte aus, um den geheimen Clientschlüssel hinzuzufügen:

  1. Wählen Sie unter Verwalten die Option Zertifikate und Geheimnisse aus.
  2. Wählen Sie Neuer geheimer Clientschlüssel.
  3. Geben Sie im Feld Beschreibung eine Beschreibung für das Clientgeheimnis ein. Beispielsweise clientsecret1.
  4. Wählen Sie unter Läuft ab einen Zeitraum aus, für den das Geheimnis gültig ist, und wählen Sie dann Hinzufügen aus.
  5. Notieren Sie den Wert des Geheimnisses. Dieser Wert wird in einem späteren Schritt für die Konfiguration verwendet.

Nächste Schritte

Nachdem Sie Ihre Managementanwendung registriert und ihr die erforderlichen Berechtigungen gewährt haben, können Ihre Anwendungen und Dienste (z. B. Azure Pipelines) ihre Anmeldeinformationen und Berechtigungen zum Interagieren mit der Microsoft Graph-API verwenden.