Freigeben über


Aktualisieren von 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 Synchronisierungsschema für einen bestimmten Auftrag oder eine bestimmte Vorlage. Diese Methode ersetzt das aktuelle Schema vollständig durch das in der Anforderung bereitgestellte Schema. Um das Schema einer Vorlage zu aktualisieren, führen Sie den Aufruf für das Anwendungsobjekt aus. Sie müssen der Besitzer der Anwendung sein.

Berechtigungen

Wählen Sie für diese API die Als am wenigsten privilegierten Berechtigungen gekennzeichneten Berechtigungen aus. Verwenden Sie nur dann eine Berechtigung mit höheren Berechtigungen , wenn dies für Ihre App erforderlich ist. 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
Anwendung Application.ReadWrite.OwnedBy CustomSecAttributeProvisioning.ReadWrite.All, Synchronization.ReadWrite.All

In delegierten Szenarien mit Geschäfts-, Schul- oder Unikonten muss der angemeldete Benutzer Besitzer oder Mitglied der Gruppe sein oder einer unterstützten Microsoft Entra Rolle oder einer benutzerdefinierten Rolle mit einer unterstützten Rollenberechtigung zugewiesen sein. Die folgenden Rollen mit den geringsten Berechtigungen werden für diesen Vorgang unterstützt.

  • Anwendungsadministrator
  • Cloudanwendungsadministrator
  • Hybrididentitätsadministrator: konfigurieren Microsoft Entra Cloudsynchronisierung

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 die Authentifizierung und Autorisierung.

Anforderungstext

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

Antwort

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

Beispiele

Beispiel 1: Aktualisieren des Schemas

Anforderung

Das folgende Beispiel zeigt eine Anfrage.

Anmerkung: Das hier gezeigte Anforderungsobjekt wird aus Gründen der Lesbarkeit gekürzt. Geben Sie alle Eigenschaften in einem tatsächlichen Aufruf 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.

Anmerkung: Das hier gezeigte Anforderungsobjekt wird aus Gründen der Lesbarkeit gekürzt. Geben Sie alle Eigenschaften in einem tatsächlichen Aufruf 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 nicht über "zeitzone" als Zielattribut verfügt, fügt der Dienst eine neue Zuordnung für extensionAttribute11 (Zeitzone)> hinzu. Wenn Ihre Anwendung zeitzone als Zielsattribut im Schema aufweist, löst 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.

Anmerkung: Das hier gezeigte Anforderungsobjekt wird aus Gründen der Lesbarkeit gekürzt. Geben Sie alle Eigenschaften in einem tatsächlichen Aufruf 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