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