Управление параметрами доступа к устройствам в Базовая мобильность и безопасность

Если вы используете Базовая мобильность и безопасность, могут быть устройства, которыми вы не можете управлять с помощью Базовая мобильность и безопасность. В этом случае следует заблокировать доступ приложения Exchange ActiveSync к электронной почте Microsoft 365 для мобильных устройств, которые не поддерживаются Базовая мобильность и безопасность. Блокировка доступа к приложению Exchange ActiveSync помогает защитить сведения о вашей организации на нескольких устройствах.

Необходимые действия:

  1. Войдите в Microsoft 365 с помощью учетной записи глобального администратора.

  2. В браузере введите : https://compliance.microsoft.com/basicmobilityandsecurity.

  3. Перейдите на вкладку Параметры организации .

  4. Выберите Ограничение доступа для неподдерживаемого устройства MDM и убедитесь, что выбран параметр Разрешить доступ (требуется регистрация устройства).

Сведения о том, какие устройства Базовая мобильность и безопасность поддерживаются, см. в статье Возможности Базовая мобильность и безопасность.

Получение сведений об управляемых устройствах Базовая мобильность и безопасность

Кроме того, вы можете использовать Microsoft Graph PowerShell для получения сведений об устройствах в организации, настроенных для Базовая мобильность и безопасность.

Ниже приведена разбивка доступных сведений об устройстве.

Detail (Сведения) Поиск в PowerShell
Устройство зарегистрировано в Базовая мобильность и безопасность. Дополнительные сведения см. в статье Регистрация мобильного устройства с помощью Базовая мобильность и безопасность Значение параметра isManaged :
True = устройство зарегистрировано.
False = устройство не зарегистрировано.
Устройство соответствует политикам безопасности устройства. Дополнительные сведения см. в статье Создание политик безопасности устройств. Значение параметра isCompliant :
True = устройство соответствует политикам.
False = устройство не соответствует политикам.

Базовая мобильность и безопасность параметры PowerShell.

Примечание.

Следующие команды и скрипты также возвращают сведения о любых устройствах, управляемых Microsoft Intune.

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

Шаг 1. Скачивание и установка пакета SDK Для Microsoft Graph PowerShell

Дополнительные сведения об этих шагах см. в статье Подключение к Microsoft 365 с помощью PowerShell.

  1. Установите пакет SDK Microsoft Graph PowerShell для Windows PowerShell, выполнив следующие действия:

    1. Откройте командную строку для уровня администратора PowerShell.

    2. Выполните следующую команду:

      Install-Module Microsoft.Graph -Scope AllUsers
      
    3. Если отобразится запрос на установку поставщика NuGet, введите Y и нажмите клавишу ВВОД.

    4. Если отобразится запрос на установку модуля из репозитория PSGallery, введите Y и нажмите клавишу ВВОД.

    5. После установки закройте командное окно PowerShell.

Шаг 2. Подключение к подписке Microsoft 365

  1. В окне PowerShell выполните следующую команду.

    Connect-MgGraph -Scopes Device.Read.All, User.Read.All
    
  2. Откроется всплывающее окно для входа. Укажите учетные данные учетной записи администратора и войдите в систему.

  3. Если у вашей учетной записи есть необходимые разрешения, в окне PowerShell появится сообщение "Добро пожаловать в Microsoft Graph!".

Шаг 3. Убедитесь, что вы можете выполнять скрипты PowerShell

Примечание.

Этот шаг можно пропустить, если вы уже настроены для выполнения сценариев PowerShell.

Чтобы запустить скрипт Get-GraphUserDeviceComplianceStatus.ps1, необходимо включить выполнение сценариев PowerShell.

  1. На рабочем столе Windows нажмите кнопку Пуск и введите Windows PowerShell. Щелкните правой кнопкой мыши Windows PowerShell и выберите Запуск от имени администратора.

  2. Выполните следующую команду.

    Set-ExecutionPolicy RemoteSigned
    
  3. При появлении запроса введите Y и нажмите клавишу ВВОД.

Запустите командлет Get-MgDevice, чтобы отобразить сведения обо всех устройствах в организации.

  1. Откройте модуль Microsoft Azure Active Directory для Windows PowerShell.

  2. Выполните следующую команду.

    Get-MgDevice -All -ExpandProperty "registeredOwners" | Where-Object {($_.RegisteredOwners -ne $null) -and ($_.RegisteredOwners.Count -gt 0)}
    

Дополнительные примеры см. в разделе Get-MgDevice.

Выполнение скрипта для получения сведений об устройстве

Сначала сохраните скрипт на компьютере.

  1. Скопируйте и вставьте следующий текст в Блокнот.

        param (
     	[Parameter(Mandatory = $false)]
     	[PSObject[]]$users = @(),
     	[Parameter(Mandatory = $false)]
     	[Switch]$export,
     	[Parameter(Mandatory = $false)]
     	[String]$exportFileName = "UserDeviceOwnership_" + (Get-Date -Format "yyMMdd_HHMMss") + ".csv",
     	[Parameter(Mandatory = $false)]
     	[String]$exportPath = [Environment]::GetFolderPath("Desktop")
     )
    
     #Clearing the screen
     Clear-Host
    
     #Preparing the output object
     $deviceOwnership = @()
    
    
     if ($users.Count -eq 0) {
     	Write-Output "No user has been provided, gathering data for all devices in the tenant"
     	#Getting all Devices and their registered owners
     	$devices = Get-MgDevice -All -Property * -ExpandProperty registeredOwners
    
     	#For each device which has a registered owner, extract the device data and the registered owner data
     	foreach ($device in $devices) {
     		$DeviceOwners = $device | Select-Object -ExpandProperty 'RegisteredOwners'
     		#Checking if the DeviceOwners Object is empty
     		if ($DeviceOwners -ne $null) {
     			foreach ($DeviceOwner in $DeviceOwners) {
     				$OwnerDictionary = $DeviceOwner.AdditionalProperties
     				$OwnerDisplayName = $OwnerDictionary.Item('displayName')
     				$OwnerUPN = $OwnerDictionary.Item('userPrincipalName')
     				$OwnerID = $deviceOwner.Id
     				$deviceOwnership += [PSCustomObject]@{
     					DeviceDisplayName             = $device.DisplayName
     					DeviceId                      = $device.DeviceId
     					DeviceOSType                  = $device.OperatingSystem
     					DeviceOSVersion               = $device.OperatingSystemVersion
     					DeviceTrustLevel              = $device.TrustType
     					DeviceIsCompliant             = $device.IsCompliant
     					DeviceIsManaged               = $device.IsManaged
     					DeviceObjectId                = $device.Id
     					DeviceOwnerID                 = $OwnerID
     					DeviceOwnerDisplayName        = $OwnerDisplayName
     					DeviceOwnerUPN                = $OwnerUPN
     					ApproximateLastLogonTimestamp = $device.ApproximateLastSignInDateTime
     				}
     			}
     		}
    
     	}
     }
    
     else {
     	#Checking that userid is present in the users object
     	Write-Output "List of users has been provided, gathering data for all devices owned by the provided users"
     	foreach ($user in $users) {
     		$devices = Get-MgUserOwnedDevice -UserId $user.Id -Property *
     		foreach ($device in $devices) {
     			$DeviceHashTable = $device.AdditionalProperties
     			$deviceOwnership += [PSCustomObject]@{
     				DeviceId                      = $DeviceHashTable.Item('deviceId')
     				DeviceOSType                  = $DeviceHashTable.Item('operatingSystem')
     				DeviceOSVersion               = $DeviceHashTable.Item('operatingSystemVersion') 
     				DeviceTrustLevel              = $DeviceHashTable.Item('trustType')
     				DeviceDisplayName             = $DeviceHashTable.Item('displayName')
     				DeviceIsCompliant             = $DeviceHashTable.Item('isCompliant')
     				DeviceIsManaged               = $DeviceHashTable.Item('isManaged')
     				DeviceObjectId                = $device.Id
     				DeviceOwnerUPN                = $user.UserPrincipalName
     				DeviceOwnerID                 = $user.Id
     				DeviceOwnerDisplayName        = $user.DisplayName
     				ApproximateLastLogonTimestamp = $DeviceHashTable.Item('approximateLastSignInDateTime')
     			}
     		}
     	}
    
     }
    
     $deviceOwnership
    
     if ($export) {
     	$exportFile = Join-Path -Path $exportPath -ChildPath $exportFileName
     	$deviceOwnership | Export-Csv -Path $exportFile -NoTypeInformation
     	Write-Output "Data has been exported to $exportFile"
     }
    
  2. Сохраните его как файл скрипта Windows PowerShell с расширением ".ps1". Например, Get-MgGraphDeviceOwnership.ps1.

    Примечание.

    Скрипт также доступен для скачивания на GitHub.

Запустите скрипт, чтобы получить сведения об устройстве для одной учетной записи пользователя.

  1. Откройте PowerShell.

  2. Перейдите в папку, в которой вы сохранили скрипт. Например, если вы сохранили его в C:\PS-Scripts, выполните следующую команду.

    cd C:\PS-Scripts
    
  3. Выполните следующую команду, чтобы определить пользователя, для которого требуется получить сведения об устройстве. В этом примере возвращаются сведения для user@contoso.com.

    $user = Get-MgUser -UserId "user@contoso.com"
    
  4. Выполните следующую команду, чтобы запустить сценарий.

    .\Get-GraphUserDeviceComplianceStatus.ps1 -users $user -Export
    

Сведения экспортируются в рабочий стол Windows в виде CSV-файла. Можно указать имя файла и путь к csv-файлу.

Запустите скрипт, чтобы получить сведения об устройстве для группы пользователей

  1. Откройте PowerShell.

  2. Перейдите в папку, в которой вы сохранили скрипт. Например, если вы сохранили его в C:\PS-Scripts, выполните следующую команду.

    cd C:\PS-Scripts
    
  3. Выполните следующую команду, чтобы определить группу, для которой требуется получить сведения об устройстве. В этом примере показано, как получить сведения о пользователях в группе FinanceStaff.

    $groupId = Get-MgGroup -Filter "displayName eq 'FinanceStaff'" | Select-Object -ExpandProperty Id
    $Users = Get-MgGroupMember -GroupId $groupId | Select-Object -ExpandProperty Id | % { Get-MgUser -UserId $_ }
    
  4. Выполните следующую команду, чтобы запустить сценарий.

    .\Get-GraphUserDeviceComplianceStatus.ps1 -User $Users -Export
    

Сведения экспортируются в рабочий стол Windows в виде CSV-файла. Вы можете использовать дополнительные параметры, чтобы указать имя файла и путь к csv-файлу.

Поддержка Microsoft Connect прекращена

Обзор Basic Mobility + Security

Объявление о прекращении использования командлетов MSOnline и AzureAD

Get-MgUser

Get-MgDevice

Get-MgUserOwnedDevice