问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

iOS MDM移动设备管理协议详解

创作时间:
作者:
@小白创作中心

iOS MDM移动设备管理协议详解

引用
简书
1.
https://www.jianshu.com/p/3bb611632dc8

移动设备管理(MDM)已经成为一个热门话题,并融入到了企业社会的各个层面,远程管理和控制移动设备的需求日益迫切。在2010年,Apple推出了针对iOS的移动设备管理(Mobile Device Management,MDM)服务,这是面向企业的面向iOS MDM问题的解决方案。该系统具有远程安装配置文件,查询设备设置以及某些远程控制的功能,如:设备锁定,解锁和远程擦除等。

苹果官方MDM文档

苹果官方提供了详细的MDM文档,地址为:https://developer.apple.com/documentation/devicemanagement


苹果官方MDM文档

MDM服务的主要要素

MDM服务主要由三个要素组成:

  1. 设备管理(iPhone,iPad,iPod)
  2. 服务器管理(各种MDM服务器)
  3. 服务器启动设备(APNS)


苹果MDM推送流程

设备注册

MDM服务器支持无线(OTA)注册。在注册期间,设备向服务器提供唯一标识(UDID)信息,服务器将使用该标识信息通过Apple推送通知服务发送消息。从服务器到客户端或客户端到服务器的长期连接在MDM设计中是不存在的,目前仅与APNS的连接。这个长期的APNS连接是推送通知框架的一部分,支持多个iOS应用程序,而不仅仅是MDM。注册后,客户端设备和MDM服务器之间的每次交互都由四个元素组成:

  1. 服务器MDMServer请求苹果APNS推送服务
  2. Apple推送消息到设备
  3. 设备连接MDMServer服务器
  4. 服务器发出命令和响应

推送通知

当MDM服务器需要与设备进行通信时,它将所需的命令排队,然后通过APNS发送一个非常简单的推送通知消息。此消息中不存在除识别标记之外的其他信息。收到通知后,设备联系服务器,然后将排队的命令提供给客户端。在完成该命令后,客户端设备将结果返回给MDMServer,并关闭客户端和服务器之间的连接。


三方MDM和APNS的消息处理流程

客户端/服务器交互

设备通过连接到指定的URL并以Apple Property List(.plist)文件的形式交换XML格式的数据来与服务器进行交互。客户端连接到服务器时发送的第一条消息是一个简单的“状态:空闲”通知,指示设备已准备好接收来自MDM服务器的命令。收到此消息后,服务器发送可能正在等待的任何命令该设备。这个命令也是以XML格式的.plist文件形式呈现,在大多数情况下只是一个简单的命令(可能有一些相关的参数)。设备根据命令行事,然后可以用另一个.plist响应,提供对命令的简单确认,错误消息或详细响应(在设备清单和类似命令的情况下)。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号