synchronizationSchema: parseExpression
Namespace: microsoft.graph
Analysieren Sie einen angegebenen Zeichenfolgenausdruck in ein attributeMappingSource-Objekt .
Weitere Informationen zu Ausdrücken finden Sie unter Schreiben von Ausdrücken für Attributzuordnungen in Microsoft Entra ID.
Diese API ist in den folgenden nationalen Cloudbereitstellungen verfügbar.
Weltweiter Service | US Government L4 | US Government L5 (DOD) | China, betrieben von 21Vianet |
---|---|---|---|
✅ | ✅ | ✅ | ❌ |
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 | Nicht verfügbar. |
Delegiert (persönliches Microsoft-Konto) | Nicht unterstützt | Nicht unterstützt |
Anwendung | Application.ReadWrite.OwnedBy | Synchronization.ReadWrite.All |
Wichtig
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
POST /servicePrincipals/{id}/synchronization/jobs/{id}/schema/parseExpression
POST /servicePrincipals/{id}/synchronization/templates/{id}/schema/parseExpression
Anforderungsheader
Name | Beschreibung |
---|---|
Authorization | Bearer {token}. Erforderlich. Erfahren Sie mehr über Authentifizierung und Autorisierung. |
Anforderungstext
Geben Sie im Anforderungstext ein JSON-Objekt mit den folgenden Parametern an.
Parameter | Typ | Beschreibung |
---|---|---|
Ausdruck | String | Zu analysierende Ausdruck. |
testInputObject | expressionInputObject | Testdatenobjekt zum Auswerten des Ausdrucks. Optional. |
targetAttributeDefinition | attributeDefinition | Definition des Attributs, das diesem Ausdruck zugeordnet wird. Optional. |
Antwort
Bei erfolgreicher Ausführung gibt die Methode einen 200 OK
Antwortcode und ein parseExpressionResponse-Objekt im Antworttext zurück.
Beispiel
Anforderung
Das folgende Beispiel zeigt eine Anfrage.
POST https://graph.microsoft.com/v1.0/servicePrincipals/{id}/synchronization/jobs/{id}/schema/parseExpression
Content-type: application/json
{
"expression":"Replace([preferredLanguage], \"-\", , , \"_\", , )",
"targetAttributeDefinition":null,
"testInputObject": {
definition: null,
properties:[
{ key: "objectId", value : "66E4A8CC-1B7B-435E-95F8-F06CEA133828" },
{ key: "IsSoftDeleted", value: "false"},
{ key: "accountEnabled", value: "true"},
{ key: "streetAddress", value: "1 Redmond Way"},
{ key: "city", value: "Redmond"},
{ key: "state", value: "WA"},
{ key: "postalCode", value: "98052"},
{ key: "country", value: "USA"},
{ key: "department", value: "Sales"},
{ key: "displayName", value: "John Smith"},
{ key: "extensionAttribute1", value: "Sample 1"},
{ key: "extensionAttribute2", value: "Sample 2"},
{ key: "extensionAttribute3", value: "Sample 3"},
{ key: "extensionAttribute4", value: "Sample 4"},
{ key: "extensionAttribute5", value: "Sample 5"},
{ key: "extensionAttribute6", value: "Sample 6"},
{ key: "extensionAttribute7", value: "Sample 1"},
{ key: "extensionAttribute8", value: "Sample 1"},
{ key: "extensionAttribute9", value: "Sample 1"},
{ key: "extensionAttribute10", value: "Sample 1"},
{ key: "extensionAttribute11", value: "Sample 1"},
{ key: "extensionAttribute12", value: "Sample 1"},
{ key: "extensionAttribute13", value: "Sample 1"},
{ key: "extensionAttribute14", value: "Sample 1"},
{ key: "extensionAttribute15", value: "Sample 1"},
{ key: "givenName", value: "John"},
{ key: "jobTitle", value: "Finance manager"},
{ key: "mail", value: "johns@contoso.com"},
{ key: "mailNickname", value: "johns"},
{ key: "manager", value: "maxs@contoso.com"},
{ key: "mobile", value: "425-555-0010"},
{ key: "onPremisesSecurityIdentifier", value: "66E4A8CC-1B7B-435E-95F8-F06CEA133828"},
{ key: "passwordProfile.password", value: ""},
{ key: "physicalDeliveryOfficeName", value: "Main Office"},
{ key: "preferredLanguage", value: "EN-US"},
{ key: "proxyAddresses", value: ""},
{ key: "surname", value: "Smith"},
{ key: "telephoneNumber", value: "425-555-0011"},
{ key: "userPrincipalName", value: "johns@contoso.com"},
{ key: "appRoleAssignments", "value@odata.type":"#Collection(String)", value: ["Default Assignment"] }
]
}
}
Antwort
Das folgende Beispiel zeigt die Antwort.
Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.
HTTP/1.1 200 OK
Content-type: application/json
{
"error": null,
"evaluationSucceeded": true,
"evaluationResult": [
"EN_US"
],
"parsedExpression": {
"expression": "Replace([preferredLanguage], \"-\", , , \"_\", , )",
"name": "Replace",
"parameters": [
{
"key": "source",
"value": {
"expression": "[preferredLanguage]",
"name": "preferredLanguage",
"parameters": [],
"type": "Attribute"
}
},
{
"key": "Find",
"value": {
"expression": "\"-\"",
"name": "-",
"parameters": [],
"type": "Constant"
}
},
{
"key": "Replacement",
"value": {
"expression": "\"_\"",
"name": "_",
"parameters": [],
"type": "Constant"
}
}
],
"type": "Function"
},
"parsingSucceeded": true
}