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.

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

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

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
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?