synchronizationSchema: parseExpression
名前空間: microsoft.graph
重要
Microsoft Graph の /beta
バージョンの API は変更される可能性があります。 実稼働アプリケーションでこれらの API を使用することは、サポートされていません。 v1.0 で API を使用できるかどうかを確認するには、Version セレクターを使用します。
特定の文字列式を attributeMappingSource オブジェクトに解析します。
式の詳細については、「 Microsoft Entra ID での属性マッピングの式の記述」を参照してください。
この API は、次の国内クラウド展開で使用できます。
グローバル サービス | 米国政府機関 L4 | 米国政府機関 L5 (DOD) | 21Vianet が運営する中国 |
---|---|---|---|
✅ | ✅ | ✅ | ❌ |
アクセス許可
この API の最小特権としてマークされているアクセス許可またはアクセス許可を選択します。 アプリで必要な場合にのみ、より高い特権のアクセス許可またはアクセス許可を使用します。 委任されたアクセス許可とアプリケーションのアクセス許可の詳細については、「アクセス許可の種類」を参照してください。 これらのアクセス許可の詳細については、「アクセス許可のリファレンス」を参照してください。
アクセス許可の種類 | 最小特権アクセス許可 | より高い特権のアクセス許可 |
---|---|---|
委任 (職場または学校のアカウント) | Synchronization.ReadWrite.All | 注意事項なし。 |
委任 (個人用 Microsoft アカウント) | サポートされていません。 | サポートされていません。 |
アプリケーション | Application.ReadWrite.OwnedBy | Synchronization.ReadWrite.All |
職場または学校アカウントを使用した委任されたシナリオでは、サインインしているユーザーがグループの所有者またはメンバーであるか、サポートされている Microsoft Entra ロール またはサポートされているロールのアクセス許可を持つカスタム ロールが割り当てられている必要があります。 この操作では、次の最小特権ロールがサポートされています。
- アプリケーション管理者
- クラウド アプリケーション管理者
- ハイブリッド ID 管理者 - Microsoft Entra Cloud Sync を構成する
HTTP 要求
POST /servicePrincipals/{id}/synchronization/jobs/{id}/schema/parseExpression
POST /servicePrincipals/{id}/synchronization/templates/{id}/schema/parseExpression
要求ヘッダー
名前 | 説明 |
---|---|
Authorization | ベアラー {token}。 必須です。 認証と認可についての詳細をご覧ください。 |
要求本文
要求本文で、次のパラメーターを含む JSON オブジェクトを指定します。
パラメーター | 型 | 説明 |
---|---|---|
式 | String | 解析する式。 |
testInputObject | expressionInputObject | 式を評価するデータ オブジェクトをテストします。 省略可能。 |
targetAttributeDefinition | attributeDefinition | この式にマップされる属性の定義。 省略可能。 |
応答
成功した場合、このメソッドは応答コード 200 OK
と、応答本文に parseExpressionResponse オブジェクトを返します。
例
要求
次の例は要求を示しています。
POST https://graph.microsoft.com/beta/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"] }
]
}
}
応答
次の例は応答を示しています。
注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。
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
}