You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/active-directory/multi-tenant-organizations/cross-tenant-synchronization-configure-graph.md
+95-66Lines changed: 95 additions & 66 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,7 +8,7 @@ ms.service: active-directory
8
8
ms.workload: identity
9
9
ms.subservice: multi-tenant-organizations
10
10
ms.topic: how-to
11
-
ms.date: 02/01/2023
11
+
ms.date: 02/06/2023
12
12
ms.author: rolyon
13
13
ms.custom: it-pro
14
14
@@ -27,33 +27,62 @@ This article describes the key steps to configure cross-tenant synchronization u
27
27
28
28
## Prerequisites
29
29
30
-
- A source [Azure AD tenant](../develop/quickstart-create-new-tenant.md) with a Premium P1 or P2 license
31
-
- A target [Azure AD tenant](../develop/quickstart-create-new-tenant.md) with a Premium P1 or P2 license
32
-
- An account in the source tenant with the [Hybrid Identity Administrator](../roles/permissions-reference.md#hybrid-identity-administrator) role to configure cross-tenant provisioning
33
-
- An account in the target tenant with the [Hybrid Identity Administrator](../roles/permissions-reference.md#hybrid-identity-administrator) role to configure the cross-tenant synchronization policy
30
+
### Source tenant
34
31
35
-
## Step 1: Sign in to the target tenant and consent to permissions
32
+
- Azure AD Premium P1 or P2 license
33
+
-[Security Administrator](../roles/permissions-reference.md#security-administrator) role to configure cross-tenant access settings
34
+
-[Hybrid Identity Administrator](../roles/permissions-reference.md#hybrid-identity-administrator) role to configure cross-tenant synchronization
35
+
-[Cloud Application Administrator](../roles/permissions-reference.md#cloud-application-administrator) or [Application Administrator](../roles/permissions-reference.md#application-administrator) role to assign users to a configuration and to delete a configuration
36
+
-[Global Administrator](../roles/permissions-reference.md#global-administrator) role to consent to required permissions
36
37
37
-
<br/>**Target tenant**
38
+
### Target tenant
39
+
40
+
- Azure AD Premium P1 or P2 license
41
+
-[Security Administrator](../roles/permissions-reference.md#security-administrator) role to configure cross-tenant access settings
42
+
-[Global Administrator](../roles/permissions-reference.md#global-administrator) role to consent to required permissions
43
+
44
+
## Step 1: Sign in to tenants and consent to permissions
45
+
46
+
<br/>**Source and target tenants**
38
47
39
48
These steps describe how to use Microsoft Graph Explorer (recommended), but you can also use Postman, or another REST API client.
40
49
41
50
1. Start [Microsoft Graph Explorer tool](https://aka.ms/ge).
42
51
43
-
1. Sign in to the target tenant.
52
+
1. Sign in to the source tenant.
53
+
54
+
1. Select your profile and then select **Consent to permissions**.
44
55
45
-
1. Select **Modify permissions**.
56
+
:::image type="content" source="./media/cross-tenant-synchronization-configure-graph/graph-explorer-profile.png" alt-text="Screenshot of Graph Explorer profile with Consent to permissions link." lightbox="./media/cross-tenant-synchronization-configure-graph/graph-explorer-profile.png":::
46
57
47
58
1. Consent to the following required permissions:
48
59
49
60
-`Policy.Read.All`
50
61
-`Policy.ReadWrite.CrossTenantAccess`
62
+
-`Application.ReadWrite.All`
63
+
-`Directory.ReadWrite.All`
64
+
65
+
If you see a **Need admin approval** page, you'll need to sign in with a user that has been assigned the Global Administrator role to consent.
66
+
67
+
1. Start another instance of [Microsoft Graph Explorer tool](https://aka.ms/ge).
68
+
69
+
1. Sign in to the source tenant.
70
+
71
+
1. Consent to the following required permissions:
72
+
73
+
-`Policy.Read.All`
74
+
-`Policy.ReadWrite.CrossTenantAccess`
75
+
76
+
1. Get the tenant ID of the source and target tenants. The example configuration described in this article uses the following tenant IDs:
## Step 2: Enable user synchronization in the target tenant
53
82
54
83
<br/>**Target tenant**
55
84
56
-
1.Use the [Create crossTenantAccessPolicyConfigurationPartner](/graph/api/crosstenantaccesspolicy-post-partners?view=graph-rest-beta&preserve-view=true) API to create a new partner configuration in a cross-tenant access policy between the target tenant and the source tenant.
85
+
1.In the target tenant, use the [Create crossTenantAccessPolicyConfigurationPartner](/graph/api/crosstenantaccesspolicy-post-partners?view=graph-rest-beta&preserve-view=true) API to create a new partner configuration in a cross-tenant access policy between the target tenant and the source tenant. Use the source tenant ID in the request.
57
86
58
87
**Request**
59
88
@@ -73,6 +102,7 @@ These steps describe how to use Microsoft Graph Explorer (recommended), but you
@@ -103,6 +133,7 @@ These steps describe how to use Microsoft Graph Explorer (recommended), but you
103
133
Content-type: application/json
104
134
105
135
{
136
+
"displayName": "Fabrikam",
106
137
"userSyncInbound":
107
138
{
108
139
"isSyncAllowed": true
@@ -120,7 +151,7 @@ These steps describe how to use Microsoft Graph Explorer (recommended), but you
120
151
121
152
<br/>**Target tenant**
122
153
123
-
1. Use the [Update crossTenantAccessPolicyConfigurationPartner](/graph/api/crosstenantaccesspolicyconfigurationpartner-update?view=graph-rest-beta&preserve-view=true) API to automatically redeem invitations and suppress consent prompts for inbound access.
154
+
1. In the target tenant, use the [Update crossTenantAccessPolicyConfigurationPartner](/graph/api/crosstenantaccesspolicyconfigurationpartner-update?view=graph-rest-beta&preserve-view=true) API to automatically redeem invitations and suppress consent prompts for inbound access.
124
155
125
156
**Request**
126
157
@@ -147,9 +178,7 @@ These steps describe how to use Microsoft Graph Explorer (recommended), but you
147
178
148
179
<br/>**Source tenant**
149
180
150
-
1. Sign in to the source tenant.
151
-
152
-
2. Use the [Create crossTenantAccessPolicyConfigurationPartner](/graph/api/crosstenantaccesspolicy-post-partners?view=graph-rest-beta&preserve-view=true) API to create a new partner configuration in a cross-tenant access policy between the source tenant and the target tenant.
181
+
1. In the source tenant, use the [Create crossTenantAccessPolicyConfigurationPartner](/graph/api/crosstenantaccesspolicy-post-partners?view=graph-rest-beta&preserve-view=true) API to create a new partner configuration in a cross-tenant access policy between the source tenant and the target tenant. Use the target tenant ID in the request.
153
182
154
183
**Request**
155
184
@@ -169,6 +198,7 @@ These steps describe how to use Microsoft Graph Explorer (recommended), but you
@@ -190,7 +220,7 @@ These steps describe how to use Microsoft Graph Explorer (recommended), but you
190
220
}
191
221
```
192
222
193
-
3. Use the [Update crossTenantAccessPolicyConfigurationPartner](/graph/api/crosstenantaccesspolicyconfigurationpartner-update?view=graph-rest-beta&preserve-view=true) API to automatically redeem invitations and suppress consent prompts for outbound access.
223
+
1. Use the [Update crossTenantAccessPolicyConfigurationPartner](/graph/api/crosstenantaccesspolicyconfigurationpartner-update?view=graph-rest-beta&preserve-view=true) API to automatically redeem invitations and suppress consent prompts for outbound access.
194
224
195
225
**Request**
196
226
@@ -236,6 +266,7 @@ These steps describe how to use Microsoft Graph Explorer (recommended), but you
@@ -327,47 +358,7 @@ These steps describe how to use Microsoft Graph Explorer (recommended), but you
327
358
HTTP/1.1 204 No Content
328
359
```
329
360
330
-
## Step 7: Assign a user to the configuration
331
-
332
-
<br/>**Source tenant**
333
-
334
-
For cross-tenant synchronization to work, at least one internal user must be assigned to the configuration.
335
-
336
-
1. In the source tenant, use the [Grant an appRoleAssignment for a service principal](/graph/api/serviceprincipal-post-approleassignedto) API to assign an internal user to the configuration.
337
-
338
-
**Request**
339
-
340
-
```http
341
-
POST https://graph.microsoft.com/v1.0/servicePrincipals/{servicePrincipalId}/appRoleAssignedTo
@@ -431,11 +423,11 @@ In the source tenant, to enable provisioning, create a provisioning job.
431
423
}
432
424
```
433
425
434
-
## Step 9: Save your credentials
426
+
## Step 8: Save your credentials
435
427
436
428
<br/>**Source tenant**
437
429
438
-
1. Use the [synchronization: secrets](/graph/api/synchronization-synchronization-secrets?view=graph-rest-beta&preserve-view=true) API to save your credentials.
430
+
1. In the source tenant, use the [synchronization: secrets](/graph/api/synchronization-synchronization-secrets?view=graph-rest-beta&preserve-view=true) API to save your credentials.
439
431
440
432
**Request**
441
433
@@ -471,13 +463,53 @@ In the source tenant, to enable provisioning, create a provisioning job.
471
463
HTTP/1.1 204 No Content
472
464
```
473
465
466
+
## Step 9: Assign a user to the configuration
467
+
468
+
<br/>**Source tenant**
469
+
470
+
For cross-tenant synchronization to work, at least one internal user must be assigned to the configuration.
471
+
472
+
1. In the source tenant, use the [Grant an appRoleAssignment for a service principal](/graph/api/serviceprincipal-post-approleassignedto) API to assign an internal user to the configuration.
473
+
474
+
**Request**
475
+
476
+
```http
477
+
POST https://graph.microsoft.com/v1.0/servicePrincipals/{servicePrincipalId}/appRoleAssignedTo
<br/>**Source tenant**
477
509
478
510
Now that you have a configuration, you can test on-demand provisioning with one of your users.
479
511
480
-
1. Use the [synchronizationJob: provisionOnDemand](/graph/api/synchronization-synchronizationjob-provision-on-demand?view=graph-rest-beta&preserve-view=true) API to provision a test user on demand.
512
+
1. In the source tenant, use the [synchronizationJob: provisionOnDemand](/graph/api/synchronization-synchronizationjob-provision-on-demand?view=graph-rest-beta&preserve-view=true) API to provision a test user on demand.
481
513
482
514
**Request**
483
515
@@ -504,7 +536,7 @@ Now that you have a configuration, you can test on-demand provisioning with one
504
536
505
537
<br/>**Source tenant**
506
538
507
-
1. Now that the provisioning job is configured, use the [Start synchronizationJob](/graph/api/synchronization-synchronizationjob-start?view=graph-rest-beta&preserve-view=true) API to start the provisioning job.
539
+
1. Now that the provisioning job is configured, in the source tenant, use the [Start synchronizationJob](/graph/api/synchronization-synchronizationjob-start?view=graph-rest-beta&preserve-view=true) API to start the provisioning job.
508
540
509
541
**Request**
510
542
@@ -523,7 +555,7 @@ Now that you have a configuration, you can test on-demand provisioning with one
523
555
524
556
<br/>**Source tenant**
525
557
526
-
1. Now that the provisioning job is running, use the [Get synchronizationJob](/graph/api/synchronization-synchronizationjob-get?view=graph-rest-beta&preserve-view=true) API to monitor the progress of the current provisioning cycle as well as statistics to date such as the number of users and groups that have been created in the target system.
558
+
1. Now that the provisioning job is running, in the source tenant, use the [Get synchronizationJob](/graph/api/synchronization-synchronizationjob-get?view=graph-rest-beta&preserve-view=true) API to monitor the progress of the current provisioning cycle as well as statistics to date such as the number of users and groups that have been created in the target system.
527
559
528
560
**Request**
529
561
@@ -721,12 +753,9 @@ Either the signed-in user doesn't have sufficient privileges, or you need to con
721
753
722
754
**Solution**
723
755
724
-
1. Make sure you're assigned the [Hybrid Identity Administrator](../roles/permissions-reference.md#hybrid-identity-administrator) role or another Azure AD role with privileges.
756
+
1. Make sure you're assigned the required roles. See [Prerequisites](#prerequisites) earlier in this article.
725
757
726
-
2. In [Microsoft Graph Explorer tool](https://aka.ms/ge), make sure you consent to the required permissions:
727
-
728
-
- `Policy.Read.All`
729
-
- `Policy.ReadWrite.CrossTenantAccess`
758
+
2. In [Microsoft Graph Explorer tool](https://aka.ms/ge), make sure you consent to the required permissions. See [Step 1: Sign in to tenants and consent to permissions](#step-1-sign-in-to-tenants-and-consent-to-permissions) earlier in this article.
Copy file name to clipboardExpand all lines: articles/active-directory/multi-tenant-organizations/cross-tenant-synchronization-configure.md
+12-5Lines changed: 12 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,7 +8,7 @@ ms.service: active-directory
8
8
ms.workload: identity
9
9
ms.subservice: multi-tenant-organizations
10
10
ms.topic: how-to
11
-
ms.date: 02/03/2023
11
+
ms.date: 02/06/2023
12
12
ms.author: rolyon
13
13
ms.custom: it-pro
14
14
@@ -35,10 +35,17 @@ By the end of this article, you'll be able to:
35
35
36
36
## Prerequisites
37
37
38
-
- A source [Azure AD tenant](../develop/quickstart-create-new-tenant.md) with a Premium P1 or P2 license
39
-
- A target [Azure AD tenant](../develop/quickstart-create-new-tenant.md) with a Premium P1 or P2 license
40
-
- An account in the source tenant with the [Hybrid Identity Administrator](../roles/permissions-reference.md#hybrid-identity-administrator) role to configure cross-tenant provisioning
41
-
- An account in the target tenant with the [Hybrid Identity Administrator](../roles/permissions-reference.md#hybrid-identity-administrator) role to configure the cross-tenant synchronization policy
38
+
### Source tenant
39
+
40
+
- Azure AD Premium P1 or P2 license
41
+
-[Security Administrator](../roles/permissions-reference.md#security-administrator) role to configure cross-tenant access settings
42
+
-[Hybrid Identity Administrator](../roles/permissions-reference.md#hybrid-identity-administrator) role to configure cross-tenant synchronization
43
+
-[Cloud Application Administrator](../roles/permissions-reference.md#cloud-application-administrator) or [Application Administrator](../roles/permissions-reference.md#application-administrator) role to assign users to a configuration and to delete a configuration
44
+
45
+
### Target tenant
46
+
47
+
- Azure AD Premium P1 or P2 license
48
+
-[Security Administrator](../roles/permissions-reference.md#security-administrator) role to configure cross-tenant access settings
0 commit comments