Очистка удаленного внешнего пользователя из AzureAD / Office 365 завершается с ошибкой UserNotFoundException - PullRequest
0 голосов
/ 14 апреля 2020

Я пытаюсь удалить удаленного пользователя из Office 365 / AzureAD. Способ сделать это, кажется, Remove-MsolUser с флагом -RemoveFromRecycleBin.

Я могу получить пользователя с помощью

Get-MsolUser -All -ReturnDeletedUsers | ? {$_.userPrincipalName -eq $USERNAME}

Когда я пытаюсь удалить это с

Remove-MsolUser -UserPrincipalName $USERNAME -RemoveFromRecycleBin

Я получаю

Remove-MsolUser : User Not Found in the Microsoft Online directory Deleted Users container.  User:
xxxxxx#EXT#@yyyyyyyyy.
In Zeile:1 Zeichen:1
+ Remove-MsolUser -UserPrincipalName $USERNAME -RemoveFromRecycleBin
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OperationStopped: (:) [Remove-MsolUser], MicrosoftOnlineException
    + FullyQualifiedErrorId : Microsoft.Online.Administration.Automation.UserNotFoundException,Microsoft.Online.Admini
   stration.Automation.RemoveUser

https://support.microsoft.com/en-us/help/3019157/remove-msoluser-user-not-found-error-when-you-try-to-remove-a-user-fro состояний

Эта проблема возникает, если пользователь, который выполняет действие не является глобальным администратором.

Однако мое использование является глобальным администратором.

Ответы [ 2 ]

2 голосов
/ 15 апреля 2020

В этом случае было бы лучше направить вывод Get-MsolUser -All -ReturnDeletedUsers | ? {$_.userPrincipalName -eq $USERNAME} непосредственно в Remove-MsolUser.
Таким образом, вместо свойства UserPrincipalName, которое выглядит измененным (*), используется свойство ObjectID. 1005 *) после добавления в корзину.

Однако ObjectID (guid) не изменяется и однозначно идентифицирует объект пользователя.

Попробуйте:

Get-MsolUser -All -ReturnDeletedUsers | ? {$_.userPrincipalName -eq $USERNAME} |
Remove-MsolUser -RemoveFromRecycleBin

Или:

$exUser = Get-MsolUser -All -ReturnDeletedUsers | ? {$_.userPrincipalName -eq $USERNAME}
Remove-MsolUser -ObjectId $exUser.ObjectID -RemoveFromRecycleBin
0 голосов
/ 15 апреля 2020

Если вам нужно использовать более старый модуль MSOnline V1 PowerShell для Azure Active Directory, вам нужно удалить гостевого пользователя из корзины с установкой имени пользователя в качестве реального адреса электронной почты гостевого пользователя.

Например, если гостевой пользователь - aaa@outlook.com. Он будет указан как aaa_outlook.com#EXT#@***.onmicrosoft.com с Get-MsolUser. Но вам нужно установить $USERNAME = "aaa@outlook.com" вместо "aaa_outlook.com#EXT#@***.onmicrosoft.com".

Тогда вы сможете удалить его из корзины.

...