MDM (не Intune) не может сообщать о состоянии соответствия (в Azure AD) устройства, которым в настоящее время управляет

Я успешно зарегистрировал Устройство (Windows 10 Pro версии 1803) в нашем собственном MDM, выполнив аутентификацию пользователя Azure AD. Затем я должен сообщить Azure AD, что устройство управляется нашим MDM, и именно здесь возникает проблема.

patch то же, что и в документации https://docs.microsoft.com/en-us/windows/client-management/mdm/azure-active-directory-integration-with-mdm#report-device-compliance-to-azure-ad

Я получил ошибку Ресурс 'xyz' не существует или отсутствует один из запрошенных объектов ссылочного свойства..

Что я сделал до сих пор:

  1. На портале Azure AD я добавил приложение MDM OnPremise, установил URL-адрес условий использования, URL-адрес обнаружения, сгенерировал секрет. Также настроил область пользователей MDM на Some и выбрал group, членами которой являются мои пользователи.
  2. В разделе «Требуемое разрешение» я проверил, что «Чтение и запись устройств» в разделе «Разрешения приложений» проверены.
  3. Пользователь проходит аутентификацию (используя учетные данные Azure AD), принимает Условия использования (MDM) и вуаля, все в порядке. Это делается на устройстве в разделе «Настройки» => «Учетные записи» => «Доступ к работе или учебе» => «+ Подключиться».
  4. Во время регистрации я анализирую Bearer Token и извлекаю идентификатор устройства (например, xyz), который совпадает с идентификатором на портале Azure AD после успешного управления устройством.
  5. Чтобы сообщить о статусе соответствия, я делаю такой патч

PATCH https://graph.windows.net/mytenant.onmicrosoft.com/devices/xyz?api-version=1.0 HTTP/1.1 Authorization: Bearer eyJ0eXAiO……… Accept: application/json Content-Type: application/json { "isManaged":true, "isCompliant":true }

Но я получил ошибку, описанную выше.

Я также тестировал различные идентификаторы устройств, такие как

  • тот, который Windows 10 показывает в Settigns => System => About.

  • Или тот, который присутствует в атрибуте DeviceID элемента ContextItem в запросе Request Security Token во время регистрации.

    bearer token, который я использую в patch выше, извлекается из графа Microsoft, когда зарегистрированное приложение MDM (используя свои учетные данные, такие как appid, секрет и т. д.) аутентифицирует себя в Azure AD.

Не могли бы вы помочь мне найти источник этой ошибки или, может быть, дать мне несколько советов, чтобы решить эту проблему. Я бы очень признателен.

Заранее спасибо.

3 метода стилизации элементов HTML
3 метода стилизации элементов HTML
Когда дело доходит до применения какого-либо стиля к нашему HTML, существует три подхода: встроенный, внутренний и внешний. Предпочтительным обычно...
Формы c голосовым вводом в React с помощью Speechly
Формы c голосовым вводом в React с помощью Speechly
Пытались ли вы когда-нибудь заполнить веб-форму в области электронной коммерции, которая требует много кликов и выбора? Вас попросят заполнить дату,...
Стилизация и валидация html-формы без использования JavaScript (только HTML/CSS)
Стилизация и валидация html-формы без использования JavaScript (только HTML/CSS)
Будучи разработчиком веб-приложений, легко впасть в заблуждение, считая, что приложение без JavaScript не имеет права на жизнь. Нам становится удобно...
Flatpickr: простой модуль календаря для вашего приложения на React
Flatpickr: простой модуль календаря для вашего приложения на React
Если вы ищете пакет для быстрой интеграции календаря с выбором даты в ваше приложения, то библиотека Flatpickr отлично справится с этой задачей....
В чем разница между Promise и Observable?
В чем разница между Promise и Observable?
Разберитесь в этом вопросе, и вы значительно повысите уровень своей компетенции.
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Клиент для URL-адресов, cURL, позволяет взаимодействовать с множеством различных серверов по множеству различных протоколов с синтаксисом URL.
0
0
380
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

deviceId объекта Устройство в Azure AD часто путают с атрибутом objectId объекта. (Последний известен как objectId в Azure AD Graph и как id в Microsoft Graph. В обоих случаях deviceId является свойством разные.)

В запросе GET для одного объекта «Устройство» с помощью Azure AD Graph:

GET https://graph.windows.net/{tenant-id}/devices/{object-id}

Поле, обозначенное {object-id}, — это нет атрибут deviceId объекта «Устройство», это атрибут objectId.

Если у вас еще нет значения objectId объекта «Устройство», но у вас есть делатьdeviceId, вы можете использовать либо Azure AD Graph, либо Microsoft Graph для выполнения соответствующего поиска. С графиком Azure AD:

GET https://graph.windows.net/{tenant-id}/devices?$filter=deviceId eq '{device-id}'

С Microsoft Graph вы должны использовать:

GET https://graph.microsoft.com/v1.0/devices?$filter=deviceId eq '{device-id}'

да, я использовал идентификатор объекта вместо идентификатора устройства, и это действительно сработало. Большое спасибо (=

Icaro Battle 31.05.2019 13:52

Другие вопросы по теме

Уведомление Graph Api — максимальная продолжительность подписки на изменения пользователя/группы
Регистрация приложения AD или корпоративное приложение для запроса стороннего лазурного AD с использованием графического API?
Каков правильный синтаксис для параметра Set-AzureADApplication командлета Powershell AzureADPreview "PreAuthorizedApplications"?
Интегрируйте Azure AD для аутентификации пользователей и храните данные на одном диске пользователя с помощью REST API.
Как вызвать azure graph api с помощью почтальона
API графа Microsoft Azure AD. Как получить почту пользователя в ответ с помощью ботбилдера версии 4 в узле js?
API Microsoft Graph: ограничение области доступа calendar.readWrite и Audit к почтовому ящику с помощью разрешения приложения.
Не удается найти пользователя по электронной почте с помощью GraphAPI
Получение ошибки Forbidden/Access Denied из Azure AD Graph Education API
Как зарегистрировать приложение в Azure AD для моих клиентов, используя учетные данные глобального администратора CSP?