Как удалить сиротские устройства в AAD?

Вопрос или проблема

В Intune, Entra, как я могу найти и удалить сиротские устройства, у которых удален основной UPN? Мне также нужно удалить их из Autopilot. У кого-то есть скрипт PowerShell?

Вы можете использовать приведенный ниже скрипт для поиска и удаления сиротских устройств без основного UPN. Сначала установите эти модули

Install-Module -Name AzureAD
Install-Module Microsoft.Graph -Scope CurrentUser
Install-Script -Name Get-WindowsAutoPilotInfo -Force
Install-Module MSOnline

Посмотрите этот документ

Как только вы подключитесь, вы должны увидеть что-то подобное, так же как показано в упомянутом выше документе.

введите описание изображения здесь

и подключитесь к Microsoft Graph для Intune в соответствии с этим документом

Connect-MgGraph -Scopes "DeviceManagementManagedDevices.ReadWrite.All"

И это будет ваш скрипт-

# Это получит ваши устройства
$aadDevices = Get-AzureADDevice

# это отфильтрует устройства, где UPN не назначен
$orphanedDevices = $aadDevices | Where-Object { $_.DeviceOwnerType -eq 'Personal' -and -not $_.ObjectId }

$orphanedDevices

введите описание изображения здесь

Вы можете удалить эти сиротские устройства, используя их ObjectId

$orphanedDevices | ForEach-Object { Remove-AzureADDevice -ObjectId $_.ObjectId }

Аналогичный способ для Intune

$intuneDevices | ForEach-Object { Remove-MgDeviceManagementManagedDevice -ManagedDeviceId $_.Id }

И для autopilot


$autopilotDevices = Get-WindowsAutopilotDeviceInfo

$orphanedAutopilotDevices = $autopilotDevices | Where-Object { $_.AssignedUser -eq $null }

$orphanedAutopilotDevices | ForEach-Object { Remove-WindowsAutopilotDevice -DeviceId $_.DeviceId }

Вы также можете обратиться к этому документу для справки

Ответ или решение

Для удаления сиротских устройств в Azure Active Directory (AAD) и их из Autopilot, выполните следующие шаги с использованием PowerShell.

Шаг 1: Установка необходимых модулей PowerShell

Перед началом работы убедитесь, что у вас установлены все необходимые модули. Выполните следующие команды в PowerShell:

Install-Module -Name AzureAD
Install-Module Microsoft.Graph -Scope CurrentUser
Install-Script -Name Get-WindowsAutoPilotInfo -Force
Install-Module MSOnline

Шаг 2: Подключение к Azure AD

Для выполнения дальнейших команд вам необходимо подключиться к Azure Active Directory и Microsoft Graph. Это можно сделать следующим образом:

Connect-AzureAD
Connect-MgGraph -Scopes "DeviceManagementManagedDevices.ReadWrite.All"

Шаг 3: Поиск сиротских устройств в AAD

Используйте следующий скрипт для получения списка устройств, у которых отсутствует основной UPN (User Principal Name):

# Получаем устройства AAD
$aadDevices = Get-AzureADDevice

# Фильтруем устройства, где UPN не назначен
$orphanedDevices = $aadDevices | Where-Object { $_.DeviceOwnerType -eq 'Personal' -and -not $_.ObjectId }

# Отображаем список сиротских устройств
$orphanedDevices

Шаг 4: Удаление сиротских устройств из AAD

Если вы хотите удалить найденные сиротские устройства, воспользуйтесь следующим кодом:

$orphanedDevices | ForEach-Object { Remove-AzureADDevice -ObjectId $_.ObjectId }

Шаг 5: Удаление сиротских устройств из Intune

Для удаления устройств из Intune выполните следующие команды:

$intuneDevices = Get-MgDeviceManagementManagedDevice

$orphanedIntuneDevices = $intuneDevices | Where-Object { $_.OwnerId -eq $null }

$orphanedIntuneDevices | ForEach-Object { Remove-MgDeviceManagementManagedDevice -ManagedDeviceId $_.Id }

Шаг 6: Удаление устройств из Autopilot

Наконец, для разбирающихся в Autopilot используйте следующую команду, чтобы удалить сиротские устройства:

$autopilotDevices = Get-WindowsAutopilotDeviceInfo

$orphanedAutopilotDevices = $autopilotDevices | Where-Object { $_.AssignedUser -eq $null }

$orphanedAutopilotDevices | ForEach-Object { Remove-WindowsAutopilotDevice -DeviceId $_.DeviceId }

Полезные ссылки

Следуя данной инструкции, вы сможете эффективно находить и удалять сиротские устройства из Azure AD, Intune и Autopilot.

Оцените материал
Добавить комментарий

Капча загружается...