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/governance/identity-governance-applications-existing-users.md
+36-8Lines changed: 36 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -226,25 +226,30 @@ The first time your organization uses these cmdlets for this scenario, you need
226
226
227
227
1. Retrieve the IDs of those users in Azure AD.
228
228
229
-
The following PowerShell script uses the `$dbusers`, `$db_match_column_name`, and `$azuread_match_attr_name` values specified earlier. It will query Azure AD to locate a user that has a matching value for each record in the source file. If there are many users in the database, this script might take several minutes to finish.
229
+
The following PowerShell script uses the `$dbusers`, `$db_match_column_name`, and `$azuread_match_attr_name` values specified earlier. It will query Azure AD to locate a user that has an attribute with a matching value for each record in the source file. If there are many users in the database, this script might take several minutes to finish. If you don't have an attribute in Azure AD that has the value, and need to use a `contains` or other filter expression, then you will need to customize this script and that in step 11 below to use a different filter expression.
230
230
231
231
```powershell
232
232
$dbu_not_queried_list = @()
233
233
$dbu_not_matched_list = @()
234
234
$dbu_match_ambiguous_list = @()
235
235
$dbu_query_failed_list = @()
236
236
$azuread_match_id_list = @()
237
+
$azuread_not_enabled_list = @()
238
+
$dbu_values = @()
239
+
$dbu_duplicate_list = @()
237
240
238
241
foreach ($dbu in $dbusers) {
239
242
if ($null -ne $dbu.$db_match_column_name -and $dbu.$db_match_column_name.Length -gt 0) {
@@ -284,7 +297,7 @@ The first time your organization uses these cmdlets for this scenario, you need
284
297
285
298
For example, someone's email address might have been changed in Azure AD without their corresponding `mail` property being updated in the application's data source. Or, the user might have already left the organization but is still in the application's data source. Or there might be a vendor or super-admin account in the application's data source that does not correspond to any specific person in Azure AD.
286
299
287
-
1. If there were users who couldn't be located in Azure AD, but you want to have their access reviewed or their attributes updated in the database, you need to create Azure AD users for them. You can create users in bulk by using either:
300
+
1. If there were users who couldn't be located in Azure AD, or weren't active and able to sign in, but you want to have their access reviewed or their attributes updated in the database, you need to update or create Azure AD users for them. You can create users in bulk by using either:
288
301
289
302
- A CSV file, as described in [Bulk create users in the Azure AD portal](../enterprise-users/users-bulk-add.md)
290
303
- The [New-MgUser](/powershell/module/microsoft.graph.users/new-mguser?view=graph-powershell-1.0#examples) cmdlet
@@ -299,17 +312,22 @@ The first time your organization uses these cmdlets for this scenario, you need
299
312
$dbu_match_ambiguous_list = @()
300
313
$dbu_query_failed_list = @()
301
314
$azuread_match_id_list = @()
315
+
$azuread_not_enabled_list = @()
316
+
$dbu_values = @()
317
+
$dbu_duplicate_list = @()
302
318
303
319
foreach ($dbu in $dbusers) {
304
320
if ($null -ne $dbu.$db_match_column_name -and $dbu.$db_match_column_name.Length -gt 0) {
@@ -465,6 +491,8 @@ When an application role assignment is created in Azure AD for a user to an appl
465
491
466
492
If you don't see users being provisioned, check the [troubleshooting guide for no users being provisioned](../app-provisioning/application-provisioning-config-problem-no-users-provisioned.md). If you see an error in the provisioning status and are provisioning to an on-premises application, check the [troubleshooting guide for on-premises application provisioning](../app-provisioning/on-premises-ecma-troubleshoot.md).
467
493
494
+
1. Check the [provisioning log](../reports-monitoring/concept-provisioning-logs.md). Filter the log to the status **Failure**. If there are failures with an ErrorCode of **DuplicateTargetEntries**, this indicates an ambiguity in your provisioning matching rules, and you'll need to update the Azure AD users or the mappings that are used for matching to ensure each Azure AD user matches one application user. Then filter the log to the action **Create** and status **Skipped**. If users were skipped with the SkipReason code of **NotEffectivelyEntitled**, this may indicate that the user accounts in Azure AD were not matched because the user account status was **Disabled**.
495
+
468
496
After the Azure AD provisioning service has matched the users based on the application role assignments you've created, subsequent changes will be sent to the application.
0 commit comments