Übersicht über die Azure AD-Synchronisierungs-API

Namespace: microsoft.graph

Wichtig

APIs unter der /beta Version in Microsoft Graph können geändert werden. Die Verwendung dieser APIs in Produktionsanwendungen wird nicht unterstützt. Um festzustellen, ob eine API in Version 1.0 verfügbar ist, verwenden Sie die Versionsauswahl .

Mit der Azure Active Directory (Azure AD)-Identitätssynchronisierung (auch als "Bereitstellung" bezeichnet) können Sie die Bereitstellung (Erstellung, Wartung) und die Debereitstellung (Entfernung) von Identitäten aus einer der folgenden Optionen automatisieren:

  • Active Directory in Azure AD
  • Arbeitstag in Azure AD
  • Azure AD zu Cloudanwendungen wie Dropbox, Salesforce, ServiceNow und mehr

Sie können die Synchronisierungs-APIs in Microsoft Graph verwenden, um die Synchronisierung der Identitäten programmgesteuert zu verwalten, einschließlich:

  • Erstellen, Starten und Beenden von Synchronisierungsaufträgen
  • Vornehmen von Änderungen am Synchronisierungsschema für Aufträge
  • Überprüfen des aktuellen Synchronisierungsstatus

Weitere Informationen zur Synchronisierung in Azure AD finden Sie unter:

Sie können die API auch im Graph-Explorer in einem Beispiel-Mandanten oder in Ihrem eigenen Mandanten testen.

Synchronisierungsauftrag

Synchronisierungsaufträge führen die Synchronisierung durch, indem sie in regelmäßigen Abständen im Hintergrund ausgeführt werden, Änderungen in einem Verzeichnis abruft und in ein anderes Verzeichnis pusht. Der Synchronisierungsauftrag ist immer spezifisch für eine bestimmte Instanz einer Anwendung in Ihrem Mandanten. Im Rahmen der Einrichtung des Synchronisierungsauftrags müssen Sie die Autorisierung zum Lesen und Schreiben von Objekten in Ihrem Zielverzeichnis geben und das Synchronisierungsschema des Auftrags anpassen.

Weitere Informationen finden Sie unter Synchronisierungsauftrag.

Synchronisierungsschema

Das Synchronisierungsschema definiert, welche Objekte synchronisiert werden und wie sie synchronisiert werden. Das Synchronisierungsschema enthält die meisten Setupinformationen für einen bestimmten Synchronisierungsauftrag. In der Regel passen Sie einige Derattributzuordnungen an oder fügen einen Filter zum Festlegen des Zielwerts hinzu, um nur Objekte zu synchronisieren, die eine bestimmte Bedingung erfüllen.

Das Synchronisierungsschema umfasst die folgenden Komponenten:

  • Verzeichnisdefinitionen
  • Synchronisierungsregeln
  • Objektzuordnungen

Weitere Informationen finden Sie im Synchronisierungsschema.

Synchronisierungsvorlage

Die Synchronisierungsvorlage enthält vorkonfigurierte Synchronisierungseinstellungen für eine bestimmte Anwendung. Diese Einstellungen (am wichtigsten ist das Synchronisierungsschema) werden standardmäßig für alle Synchronisierungsauftrage verwendet, die auf der Vorlage basieren. Vorlagen werden vom Anwendungsentwickler angegeben.

Weitere Informationen finden Sie in der Synchronisierungsvorlage.

Arbeiten mit der Synchronisierungs-API

Das Arbeiten mit der Synchronisierungs-API umfasst in erster Linie den Zugriff auf die synchronizationJob- und synchronizationSchema-Ressourcen. Um ihre synchronizationJob-Ressource zu finden, müssen Sie die ID des Dienstprinzipalobjekts kennen, zu dem der Synchronisierungsauftrag gehört. In den folgenden Beispielen wird gezeigt, wie Sie mit den Ressourcen synchronizationJob und synchronizationSchema arbeiten.

Authorization

Die Azure AD-Synchronisierungs-API verwendet OAuth 2.0 für die Autorisierung. Bevor Sie Anforderungen an die API stellen, müssen Sie ein Zugriffstoken abrufen. Weitere Informationen finden Sie unter "Get access tokens to call Microsoft Graph ". Für den Zugriff auf Synchronisierungsressourcen benötigt Die Anwendung Directory.ReadWrite.All-Berechtigungen. Weitere Informationen finden Sie unter Verzeichnisberechtigungen.

Suchen des Dienstprinzipalobjekts nach Anzeigename

Das folgende Beispiel zeigt, wie Sie das Dienstprinzipalobjekt nach Dem Anzeigenamen finden.

Anforderung

GET https://graph.microsoft.com/beta/servicePrincipals?$select=id,appId,displayName&$filter=startswith(displayName, 'salesforce')

Antwort

HTTP/1.1 200 OK

{
   "value":[
      {
         "id":"bc0dc311-87df-48ac-91b1-259bd2c3a31c",
         "appId":"f7808c5e-cb57-4e37-8094-406d302c0f8d",
         "displayName":"Salesforce"
      },
      {
         "id":"d813d7d7-0f41-4edc-b284-d0dfaf399d15",
         "appId":"219561ee-1480-4c67-9aa6-63d861fae3ef",
         "displayName":"salesforce 3"
      }
   ]
}

Suchen des Dienstprinzipalobjekts nach App-ID

Das folgende Beispiel zeigt, wie Sie das Dienstprinzipalobjekt nach App-ID finden.

Anforderung

GET https://graph.microsoft.com/beta/servicePrincipals?$select=id,appId,displayName&$filter=AppId eq '219561ee-1480-4c67-9aa6-63d861fae3ef'

Antwort

HTTP/1.1 200 OK

{
    "value": [
        {
            "id": "d813d7d7-0f41-4edc-b284-d0dfaf399d15",
            "appId": "219561ee-1480-4c67-9aa6-63d861fae3ef",
            "displayName": "salesforce 3"
        }
    ]
}

Auflisten vorhandener Synchronisierungsaufträge

Das folgende Beispiel zeigt, wie Sie vorhandene Synchronisierungsaufträge auflisten.

Anforderung

GET https://graph.microsoft.com/beta/servicePrincipals/{id}/synchronization/jobs
GET https://graph.microsoft.com/beta/servicePrincipals/60443998-8cf7-4e61-b05c-a53b658cb5e1/synchronization/jobs

Antwort

HTTP/1.1 200 OK

{
    "value": [
        {
            "id": "SfSandboxOutDelta.e4bbf44533ea4eabb17027f3a92e92aa",
            "templateId": "SfSandboxOutDelta",
            "schedule": {
                "expiration": null,
                "interval": "PT20M",
                "state": "Active"
            },
            "status": {}
        }
    ]
}

Status des Synchronisierungsauftrags erhalten

Das folgende Beispiel zeigt, wie Sie den Status eines Synchronisierungsauftrags erhalten.

Anforderung

GET https://graph.microsoft.com/beta/servicePrincipals/{id}/synchronization/jobs/{jobId}

GET https://graph.microsoft.com/beta/servicePrincipals/60443998-8cf7-4e61-b05c-a53b658cb5e1/synchronization/jobs/SfSandboxOutDelta.e4bbf44533ea4eabb17027f3a92e92aa

Antwort

HTTP/1.1 200 OK

{
    "id": "SfSandboxOutDelta.e4bbf44533ea4eabb17027f3a92e92aa",
    "templateId": "SfSandboxOutDelta",
    "schedule": {
        "expiration": null,
        "interval": "PT20M",
        "state": "Active"
    },
    "status": {}
}

Synchronisierungsschema erhalten

Das folgende Beispiel zeigt, wie Sie das Synchronisierungsschema erhalten.

Anforderung

GET https://graph.microsoft.com/beta/servicePrincipals/{id}/synchronization/jobs/{jobId}/schema

Antwort

HTTP/1.1 200 OK

{
    "directories": [],
    "synchronizationRules": []
}

Siehe auch