Обнаружение объявленной конфигурации
Обнаружение объявленной конфигурации Windows (WinDC) использует выделенную схему JSON для запроса сведений о регистрации из конечной точки службы обнаружения (DS). Этот процесс включает отправку HTTP-запросов с определенными заголовками и текстом JSON, содержащим такие сведения, как домен пользователя, идентификатор клиента и версия ОС. Ds отвечает необходимыми URL-адресами службы регистрации и политиками проверки подлинности в зависимости от типа регистрации (Microsoft Entra присоединенных или зарегистрированных устройств).
В этой статье описывается структура схемы для тел HTTP-запросов и ответов, а также приведены примеры реализации.
Структура схемы
Заголовки HTTP-запросов
Заголовок | Обязательный | Описание |
---|---|---|
MS-CV: %s |
Нет | Вектор корреляции для регистрации |
client-request-id: %s |
Нет | Идентификатор запроса |
Content-Type: application/json |
Да | Тип содержимого HTTP |
Текст HTTP-запроса (JSON)
Поле | Обязательный | Описание |
---|---|---|
userDomain |
Нет | Доменное имя зарегистрированной учетной записи |
upn |
Нет | Имя участника-пользователя (UPN) зарегистрированной учетной записи |
tenantId |
Нет | Идентификатор клиента зарегистрированной учетной записи |
emmDeviceId |
Нет | Идентификатор устройства управления корпоративной мобильностью (EMM) зарегистрированной учетной записи |
enrollmentType |
Присоединено к Entra: Нет Entra зарегистрировано: Да |
Тип регистрации зарегистрированной учетной записи. Поддерживаемые значения: - Device : указывает, что родительский тип регистрации присоединен к Entra (ответ DS должен указать "AuthPolicy": "Федеративный"). - User : указывает, что родительский тип регистрации зарегистрирован в Entra (в ответе DS должно быть указано "AuthPolicy": "Certificate"). — Устаревший вариант (только присоединено к Entra). Если enrollmentType параметр не включен в текст запроса, устройство должно рассматриваться как присоединенное к Entra. |
osVersion |
Да | Версия ОС на устройстве. Ds может использовать , osVersion чтобы определить, поддерживает ли клиентская платформа регистрацию WinDC. Дополнительные сведения см. в статье Поддерживаемые платформы . |
Текст ответа HTTP DS (JSON)
Поле | Обязательный | Описание |
---|---|---|
EnrollmentServiceUrl |
Да | URL-адрес службы регистрации WinDC |
EnrollmentVersion |
Нет | Версия регистрации |
EnrollmentPolicyServiceUrl |
Да | URL-адрес службы политики регистрации |
AuthenticationServiceUrl |
Да | URL-адрес службы проверки подлинности |
ManagementResource |
Нет | Ресурс управления |
TouUrl |
Нет | URL-адрес условий использования |
AuthPolicy |
Да | Политика проверки подлинности. Поддерживаемые значения: - Federated (требуется для присоединения к Entra)- Certificate (требуется для регистрации Entra) |
errorCode |
Нет | Код ошибки |
message |
Нет | Сообщение о состоянии |
Примеры:
Запрос на обнаружение
Заголовки
Content-Type: application/json
Body
Подход с одним шаблоном. Клиент отправляет значение имени участника-пользователя в исходном запросе вместе с параметром tenantId .
Microsoft Entra присоединено:
{ "userDomain" : "contoso.com", "upn" : "[email protected]", "tenantId" : "00000000-0000-0000-0000-000000000000", "emmDeviceId" : "00000000-0000-0000-0000-000000000000", "enrollmentType" : "Device", "osVersion" : "10.0.00000.0" }
Microsoft Entra зарегистрировано:
{ "userDomain" : "contoso.com", "upn" : "[email protected]", "tenantId" : "00000000-0000-0000-0000-000000000000", "emmDeviceId" : "00000000-0000-0000-0000-000000000000", "enrollmentType" : "Device", "osVersion" : "10.0.00000.0" }
Нет имени участника-пользователя (устаревшая версия)
Microsoft Entra присоединено:
{ "userDomain" : "contoso.com", "emmDeviceId" : "00000000-0000-0000-0000-000000000000", "enrollmentType" : "Device", "osVersion" : "10.0.00000.0" }
Microsoft Entra зарегистрировано:
{ "userDomain" : "contoso.com", "emmDeviceId" : "00000000-0000-0000-0000-000000000000", "enrollmentType" : "User", "osVersion" : "10.0.00000.0" }
Имя участника-пользователя, запрошенное сервером (устаревший формат). Ознакомьтесь с обработкой ошибок , чтобы узнать, как сервер может запрашивать данные имени участника-пользователя, если они не указаны в первоначальном запросе.
Microsoft Entra присоединено:
{ "upn" : "[email protected]", "emmDeviceId" : "00000000-0000-0000-0000-000000000000", "enrollmentType" : "Device", "osVersion" : "10.0.00000.0" }
Microsoft Entra зарегистрировано:
{ "upn" : "[email protected]", "emmDeviceId" : "00000000-0000-0000-0000-000000000000", "enrollmentType" : "User", "osVersion" : "10.0.00000.0" }
Ответ обнаружения
Заголовки
Content-Type: application/json
Body
Microsoft Entra присоединено (требуется
"AuthPolicy": "Federated"
):{ "EnrollmentServiceUrl" : "https://manage.contoso.com/Enrollment/Discovery", "EnrollmentPolicyServiceUrl" : "https://manage.contoso.com/Enrollment/GetPolicies", "AuthenticationServiceUrl" : "https://manage.contoso.com/Enrollment/AuthService", "AuthPolicy" : "Federated", "ManagementResource":"https://manage.contoso.com", "TouUrl" : "https://manage.contoso.com/Enrollment/tou.aspx" }
Microsoft Entra зарегистрировано (требуется
"AuthPolicy": "Certificate"
):{ "EnrollmentServiceUrl" : "https://manage.contoso.com/Enrollment/Discovery", "EnrollmentPolicyServiceUrl" : "https://manage.contoso.com/Enrollment/GetPolicies", "AuthenticationServiceUrl" : "https://manage.contoso.com/Enrollment/AuthService", "AuthPolicy" : "Certificate", "ManagementResource":"https://manage.contoso.com", "TouUrl" : "https://manage.contoso.com/Enrollment/tou.aspx" }
Authentication
Для регистрации WinDC требуются различные механизмы проверки подлинности для Microsoft Entra присоединенных и зарегистрированных устройств. Доменные службы WinDC должны интегрироваться с моделью проверки подлинности, указав соответствующее AuthPolicy
значение в ответе enrollmentType
обнаружения на основе свойства запроса.
- Microsoft Entra присоединенные устройства используют федеративную проверку подлинности (токен устройства Entra).
- Microsoft Entra зарегистрированных устройствах используется проверка подлинности с помощью сертификата (сертификат MDM, подготовленный для родительской регистрации).
Правила
Для устройств, присоединенных к Microsoft Entra:
-
Запрос на обнаружение:
"enrollmentType": "Device"
-
Ответ обнаружения:
"AuthPolicy": "Federated"
- Проверка подлинности. Клиент использует токен устройства Entra для проверки подлинности на сервере регистрации WinDC.
-
Запрос на обнаружение:
Для устаревших вариантов (где
enrollmentType
значение пусто):-
Запрос на обнаружение:
"enrollmentType": ""
-
Ответ обнаружения:
"AuthPolicy": "Federated"
- Проверка подлинности. Клиент использует токен устройства Entra для проверки подлинности на сервере регистрации WinDC.
-
Запрос на обнаружение:
Для Microsoft Entra зарегистрированных устройств:
-
Запрос на обнаружение:
"enrollmentType": "User"
-
Ответ обнаружения:
"AuthPolicy": "Certificate"
- Проверка подлинности. Клиент использует сертификат MDM из родительской регистрации для проверки подлинности на сервере регистрации WinDC.
-
Запрос на обнаружение:
Обработка ошибок
-
UPNRequired: если в запросе на обнаружение не указано значение имени участника-пользователя, ds может задать
errorCode
в ответе значение UPNRequired , чтобы клиент повторил запрос со значением имени участника-пользователя, если оно доступно. - WINHTTP_QUERY_RETRY_AFTER. Сервер может задать этот флаг, чтобы настроить повторный запрос клиента после указанной задержки. Этот флаг полезен для обработки сценариев времени ожидания или регулирования.