Update synchronizationSchema

Namespace: microsoft.graph

Wichtig

Die APIs unter der /beta Version in Microsoft Graph können sich ändern. Die Verwendung dieser APIs in Produktionsanwendungen wird nicht unterstützt. Um festzustellen, ob eine API in v1.0 verfügbar ist, verwenden Sie die Version Selektor.

Aktualisieren Sie das synchronizationSchema für einen bestimmten Auftrag oder eine Vorlage. Diese Methode ersetzt das aktuelle Schema vollständig durch das in der Anforderung angegebene. Um das Schema einer Vorlage zu aktualisieren, rufen Sie das Anwendungsobjekt auf. Sie müssen der Besitzer der Anwendung sein.

Berechtigungen

Wählen Sie die Berechtigungen aus, die für diese API als am wenigsten privilegiert markiert sind. Verwenden Sie eine höhere Berechtigung oder Berechtigungen nur, wenn Ihre App dies erfordert. Ausführliche Informationen zu delegierten Berechtigungen und Anwendungsberechtigungen finden Sie unter Berechtigungstypen. Weitere Informationen zu diesen Berechtigungen finden Sie in der Berechtigungsreferenz.

Berechtigungstyp Berechtigungen mit den geringsten Berechtigungen Berechtigungen mit höheren Berechtigungen
Delegiert (Geschäfts-, Schul- oder Unikonto) Synchronization.ReadWrite.All CustomSecAttributeProvisioning.ReadWrite.All
Delegiert (persönliches Microsoft-Konto) Nicht unterstützt Nicht unterstützt
Application Application.ReadWrite.OwnedBy CustomSecAttributeProvisioning.ReadWrite.All, Synchronization.ReadWrite.All

Wichtig

Für den delegierten Zugriff mit Geschäfts-, Schul- oder Unikonten muss der angemeldete Benutzer Besitzer oder Mitglied der Gruppe sein oder ihm muss eine unterstützte Microsoft Entra-Rolle oder eine benutzerdefinierte Rolle zugewiesen werden, die die für diesen Vorgang erforderlichen Berechtigungen erteilt. Dieser Vorgang unterstützt die folgenden integrierten Rollen, die nur die geringstmöglichen Berechtigungen gewähren:

  • Anwendungsadministrator
  • Cloudanwendungsadministrator
  • Administrator für Hybrididentitäten – zum Konfigurieren von Microsoft Entra Cloud Sync

HTTP-Anforderung

PUT /servicePrincipals/{id}/synchronization/jobs/{jobId}/schema
PUT /applications/{id}/synchronization/templates/{templateId}/schema

Anforderungsheader

Name Typ Beschreibung
Authorization string Bearer {token}. Erforderlich. Erfahren Sie mehr über Authentifizierung und Autorisierung.

Anforderungstext

Geben Sie im Anforderungstext das Objekt synchronizationSchema an, durch das das vorhandene Schema ersetzt werden soll.

Antwort

Bei erfolgreicher Ausführung wird ein 204 No Content Antwortcode zurückgegeben. Sie gibt nichts im Antworttext zurück.

Beispiele

Beispiel 1: Schema aktualisieren

Anforderung

Das folgende Beispiel zeigt eine Anfrage.

Hinweis: Das hier gezeigte Anforderungsobjekt ist zur besseren Lesbarkeit gekürzt. Geben Sie alle Eigenschaften in einem tatsächlichen Anruf an.

PUT https://graph.microsoft.com/beta/servicePrincipals/{id}/synchronization/jobs/{jobId}/schema
Content-type: application/json

{
    "directories": [
        {
            "name": "Azure Active Directory",
            "objects": [
                {
                    "name": "User",
                    "attributes": [
                        {
                            "name": "userPrincipalName",
                            "type": "string"
                        }
                    ]
                },
            ]
        },
        {
            "name": "Salesforce",
        }
    ],
    "synchronizationRules":[
        {
            "name": "USER_TO_USER",
            "sourceDirectoryName": "Azure Active Directory",
            "targetDirectoryName": "Salesforce",
            "objectMappings": [
                {
                    "sourceObjectName": "User",
                    "targetObjectName": "User",
                    "attributeMappings": [
                        {
                            "source": {},
                            "targetAttributeName": "userName"
                        }
                    ]
                }
            ]
        }
    ]
}

Antwort

Das folgende Beispiel zeigt die Antwort.

HTTP/1.1 204 No Content

Beispiel 2: Hinzufügen des Attributs "CustomAttribute" zum Zielsystemschema

Anforderung

Das folgende Beispiel zeigt eine Anfrage. Es wird davon ausgegangen, dass das Attribut "CustomAttribute" im Zielverzeichnisschema nicht vorhanden ist. Wenn es vorhanden ist, wird das Attribut aktualisiert.

Hinweis: Das hier gezeigte Anforderungsobjekt ist zur besseren Lesbarkeit gekürzt. Geben Sie alle Eigenschaften in einem tatsächlichen Anruf an.

PUT https://graph.microsoft.com/beta/servicePrincipals/{id}/synchronization/jobs/{jobId}/schema
Content-type: application/json

{
   "directories":[
      {
         "id":"09760868-cafb-47ac-9031-0a3262300427",
         "name":"customappsso",
         "objects":[
            {
               "name":"User",
               "attributes":[
                  {
                     "anchor":false,
                     "caseExact":false,
                     "defaultValue":null,
                     "flowNullValues":false,
                     "multivalued":false,
                     "mutability":"ReadWrite",
                     "name":"urn:ietf:params:scim:schemas:extension:CustomExtensionName:2.0:User:CustomAttribute",
                     "required":false,
                     "type":"String",
                     "apiExpressions":[],
                     "metadata":[],
                     "referencedObjects":[]
                  }
               ]
            }
         ]
      }
   ]
}

Antwort

Das folgende Beispiel zeigt die Antwort.

HTTP/1.1 204 No Content

Beispiel 3: Hinzufügen einer neuen Attributzuordnung zu den Synchronisierungsregeln

Anforderung

Das folgende Beispiel zeigt eine Anfrage. Das synchornizationSchema verfügt über eine 1:n-Beziehung zwischen targetAttributeName und Quellattributen . Wenn Ihr Schema "timezone" nicht als Zielattribut hat, fügt der Dienst eine neue Zuordnung für extensionAttribute11 hinzu –> timezone. Wenn Ihre Anwendung Zeitzone als Zielattribut im Schema hat, gibt der Dienst einen Fehler aus, da ein Attribut nur einmal als Ziel zugeordnet werden kann. Darüber hinaus muss das Attribut im Schema vorhanden sein, bevor es den Zuordnungen hinzugefügt werden kann.

Hinweis: Das hier gezeigte Anforderungsobjekt ist zur besseren Lesbarkeit gekürzt. Geben Sie alle Eigenschaften in einem tatsächlichen Anruf an.

PUT https://graph.microsoft.com/beta/servicePrincipals/{id}/synchronization/jobs/{jobId}/schema
Content-type: application/json

{
   "@odata.type":"#microsoft.graph.synchronizationSchema",
   "synchronizationRules":[
      {
         "defaultValue":"",
         "exportMissingReferences":false,
         "flowBehavior":"FlowWhenChanged",
         "flowType":"Always",
         "matchingPriority":0,
         "source":{
            "expression":"[extensionAttribute11]",
            "name":"extensionAttribute11",
            "parameters":[],
            "type":"Attribute"
         },
         "targetAttributeName":"timezone"
      }
   ]
}


Antwort

Das folgende Beispiel zeigt die Antwort.

HTTP/1.1 204 No Content