Оқыту
Модуль
MD-102 2-Implement dynamic deployment methods - Training
Use dynamic provisioning methods such as Subscription Activation, Provisioning packages, and Microsoft Entra join to reconfigure an existing operating system.
Бұл браузерге бұдан былай қолдау көрсетілмейді.
Соңғы мүмкіндіктерді, қауіпсіздік жаңартуларын және техникалық қолдауды пайдалану үшін Microsoft Edge браузеріне жаңартыңыз.
Команды OMA DM передаются между сервером и клиентским устройством в сообщениях. Сообщение может содержать одну или несколько команд. Список поддерживаемых команд см. в таблице поддержки протокола OMA DM.
Сообщение DM — это XML-документ. Структура и содержимое документа определены в протоколе представления OMA DM (OMA-SyncML-DevInfo-DTD-V1_1_2-20030505-D.dtd), доступном на веб-сайте OMA.
Каждое сообщение состоит из заголовка, заданного элементом SyncHdr, и текста сообщения, заданного элементом SyncBody.
В следующей таблице показаны поддерживаемые версии OMA DM.
Версия | Формат |
---|---|
OMA DM версии 1.1.2 | <SyncML xmlns='SYNCML:SYNCML1.1'></SyncML> |
OMA DM версии 1.2 | <SyncML xmlns='SYNCML:SYNCML1.2'></SyncML> |
В следующем примере показана общая структура XML-документа, отправляемого сервером с использованием OMA DM версии 1.2.1 только для демонстрационных целей. Исходные XML-пакеты, обмениваются между клиентом и сервером, могут содержать больше XML-тегов. Подробное описание и примеры для этих пакетов см. в спецификации протокола OMA Управление устройствами 1.2.1.
<SyncML xmlns='SYNCML:SYNCML1.2'>
<SyncHdr>
<VerDTD>1.2</VerDTD>
<VerProto>DM/1.2</VerProto>
<SessionID>1</SessionID>
<MsgID>1</MsgID>
<Target>
<LocURI>{unique device ID}</LocURI>
</Target>
<Source>
<LocURI>https://www.contoso.com/mgmt-server</LocURI>
</Source>
</SyncHdr>
<SyncBody>
<!-- query a device OS system version -->
<Get>
<CmdID>2</CmdID>
<Item>
<Target>
<LocURI>./DevDetail/SwV</LocURI>
</Target>
</Item>
</Get>
<!-- Update device policy -->
<Final />
</SyncBody>
</SyncML>
SyncHdr содержит следующие сведения:
Определение типа документа (DTD) и номера версий протокола
Идентификаторы сеансов и сообщений. Каждое сообщение в одном сеансе dm должно иметь разные идентификаторы MsgID.
Универсальные идентификаторы ресурсов (URI) источника и назначения сообщений
Учетные данные для проверки подлинности
Эти сведения используются клиентским устройством для правильного управления сеансом dm.
Пример кода
В следующем примере показан компонент заголовка сообщения dm. В этом случае в качестве примера используется только OMA DM версии 1.2.
Ескерім
Значение <LocURI>
узла элемента <Source>
в SyncHdr пакета DM, созданного устройством, должно совпадать со значением ./DevInfo/DevID. Дополнительные сведения о DevID см. в разделе Поставщик службы конфигурации DevInfo.
<SyncHdr>
<VerDTD>1.2</VerDTD>
<VerProto>DM/1.2</VerProto>
<SessionID>1</SessionID>
<MsgID>1</MsgID>
<Target>
<LocURI>{unique device ID}</LocURI>
</Target>
<Source>
<LocURI>https://www.contoso.com/mgmt-server</LocURI>
</Source>
</SyncHdr>
SyncBody содержит одну или несколько команд DM. SyncBody может содержать несколько команд dm; Каждая команда должна иметь другое значение CmdID.
Пример кода
В следующем примере показан основной компонент сообщения dm. В этом примере SyncBody содержит только одну команду Get. Эта команда обозначается тегом <Final />
, который возникает сразу после завершающего тега для команды Get.
<SyncBody>
<!-- query device OS software version -->
<Get>
<CmdID>2</CmdID>
<Item>
<Target>
<LocURI>./DevDetail/SwV</LocURI>
</Target>
</Item>
</Get>
<Final />
</SyncBody>
При использовании SyncML для подготовки OMA DM LocURI в SyncBody может иметь "." в качестве допустимого имени сегмента только в первом сегменте. Однако "." не является допустимым именем сегмента для других сегментов. Например, следующий LocURI недопустим, так как имя сегмента седьмого сегмента — ".".
<LocURI>./Vendor/MSFT/Registry/HKLM/Security/./Test</LocURI>
Команда Заменить используется для обновления параметра устройства.
В следующем примере показано, как обновить параметр устройства с помощью команды Replace.
<SyncHdr>
<VerDTD>1.2</VerDTD>
<VerProto>DM/1.2</VerProto>
<SessionID>1</SessionID>
<MsgID>1</MsgID>
<Target>
<LocURI>{unique device ID}</LocURI>
</Target>
<Source>
<LocURI>https://www.contoso.com/mgmt-server</LocURI>
</Source>
</SyncHdr>
<SyncBody>
<!-- update device setting -->
<Replace>
<CmdID>2</CmdID>
<Item>
<Target>
<LocURI>./Vendor/MSFT/PolicyManager/My/DeviceLock/MinDevicePasswordLength</LocURI>
</Target>
<Meta>
<Type xmlns="syncml:metinf">text/plain</Type>
<Format xmlns="syncml:metinf">int</Format>
</Meta>
<Data>6</Data>
</Item>
</Replace>
<Final />
</SyncBody>
Оқыту
Модуль
MD-102 2-Implement dynamic deployment methods - Training
Use dynamic provisioning methods such as Subscription Activation, Provisioning packages, and Microsoft Entra join to reconfigure an existing operating system.