企业iOS移动设备管理MDM的研究与实现.docx
《企业iOS移动设备管理MDM的研究与实现.docx》由会员分享,可在线阅读,更多相关《企业iOS移动设备管理MDM的研究与实现.docx(7页珍藏版)》请在冰豆网上搜索。
企业iOS移动设备管理MDM的研究与实现
企业iOS移动设备管理(MDM)的研究与实现
企业iOS移动设备管理(MDM)的研究与实现
移动互联企业信息化iOSAPNSMDM
1前言
随着移动互联的快速发展,同时iOS操作系统的易操作、安全等特点,企业内部办公系统也从原来传统的PC台式机走向各大iOS智能终端;使用户可以随时随地进行办公。
但安装了企业内部应用的移动设备会包含大量企业、商业及私人信息,设备的遗失或被盗将可能给企业和个人带来灾难性的损失,因此实现对移动设备的管理显的异常重要。
实现对移动设备的管理,需要相应的后台MDM系统,负责移动设备的信息采集和管理。
此时研究和解决的难点包括:
建立设备和服务器之间的长连接,实现MDM消息的推送,设备的认证,抹去移动设备上的数据等。
2APNS及MDM技术
实现对iOS移动设备的管理,需要APNS和MDM两大核心技术,本节将对二者进行扼要分析。
1APNS技术
APNS是苹果的一种消息推送机制,它能够向指定的设备推送指定的消息,设备令牌与电话号码类似,通过设备令牌就可在APNS注册的设备中找到对应的设备,然后向该设备推送消息。
推送的消息是一个JSON格式的数据,其有规整的格式,各Ke有着不同的含义,设备在接受到消息后会相应响应一些操作。
iOS消息推送的工作机制概括如图1:
2MDM技术
MDM使企业IT部门能完全控制和管理员工各类的移动设备群,通过它,企业可以安全、有效地管理所有iOS设备,并能确保所有移动设备及其所安装的应用和所保存信息的安全,同时可对数据进行一系列操作,实现一个企业内部的AppStore。
iOSMDM架构需要移动设备进行通信,移动设备管理服务器使用苹果推送服务。
它是一个轻量级的可扩展服务,提供了一种唤醒设备的方式,该服务可以登录MDM服务器进行查询挂起的操作、未应答的询问等。
同时借助苹果推送通知服务,MDM服务器不但能与设备保持长连接的通讯,而且不会影响设备性能和电池的使用时间。
3企业iOS移动设备管理研究问题的分析
本节将会对研究问题进行分析,首先,介绍iOSMDM基本控制流程,对五大关键步骤进行说明;然后做进一步分析,提炼出解决该研究问题的核心点,得出基本解决思路和方法。
iOSMDM基本控制流程,分为五大步骤:
第一步:
MDM服务器发送一个MDM推送信息给推送服务器,该信息需推送服务器中转给设备,通知设备此时服务器需要该设备执行相关命令了,设备根据命令做出相应的判断和反应。
第二步:
推送服务器通知iOS移动设备。
第三步:
当设备空闲,且处于连网状态时,会去连接MDMServer并告诉服务器移动设备的状态。
第四步:
MDMServer根据设备状态返回给设备需要执行命令。
命令是xml格式的plist文件。
步骤五:
设备实行了命令,并将执行情况连接MDMServerf,反馈给MDMServer。
其中难点主要集中在如何搭建服务器、MDM服务器以及终端的设备的认证。
关键点包括MDMServer与终端的通信方式、SCEP。
实现MDM后台对移动终端或应用安全管控的前提条件,就是建立MDM平台与终端之间的通信。
从消息的可靠性、经济性、及时性、设备资源开销等方面考虑。
使用各手机平台自带的push服务是最方便、最可靠的方式。
对于那些没有提供push服务的移动平台,我们可搭建单独的推送服务器来实现消息推送的功能。
同时,在一个MDM平台整个设备管理过程中,都需要通过数字证书服务的方式,来实现对终端用户的身份认证;通过锁屏、恢复出厂设置等来实现终端的认证和管理。
SCEP是PKI协议体系的一部分,它能够安全可靠地为网络设备提供数字证书,通过它可以实现MDM平台对移动终端设备的身份认证。
综上,我们将通过推送服务技术来实现MDMServer和iOS终端设备的通信,通过SCEP来实现移动终端设备身份的认证。
4企业iOS移动设备管理的实现
本节主要在前文对本研究问题分析的基础上,首先介绍MDM移动客户端功能框架,如图2所示,然后对iOS移动设备管理给出具体解决方案,并加以实现。
iOS客户端MDM的主要功能如下:
收发消息:
负责通过APNS服务器与终端建立的长连接接收和发送消息。
解析及封装通信协议:
确保MDM服务器和iOS客户端可通过网络进行通讯,负责解析与封装二者之间通信协议。
终端控制管理:
实现iOS移动终端对移动端指令的管理和相应操作,如,恢复出厂设置、删除数据、密码设置、加密存储等。
管理Certifiate及策略文件。
终端欲实现MDM功能,此时需要从MDM服务器下载和安装相关证书及管理设备的策略文件,那么此时我们需要对它们进行管理,该功能就可以实现这些。
任务管理与分发。
在iOS客户端获取了若干任务指令后,那么如何按照时间的先后顺序对这些任务进行管理和分发,让各项任务在客户端顺序执行,任务的执行预示着将执行相应命令完成相应的工作,同时每执行完一个任务需要进行反馈,如此迭代直至客户端收到的任务命令全部执行完毕。
iOS平台可以通过在浏览器输入MDM平台下发的URL地址,进行证书、预置描述文件和管理策略文件的下载,同时可以完成对证书与预置描述文件的安装,最终实现了移动客户端MDM应有的功能,我们不需要额外开发MDM终端。
4.1iOS平台实现MDM的前提工作
首先,我们注册Apple企业者账号,成功一位企业级开发者,申请创建MDM证书;然后,搭建MDM服务器s环境;最后,通过借助钥匙串工具生成MDM推送格式证书和描述文件。
通过上文的分析,的MDM整体框架包括三部分:
MDMServer、推送服务器和移动终端。
所以要想实现对iOS移动设备的管理,在已经实现移动终端MDM功能的前提下,还需要搭建MDM服务器和推送服务器。
的MDM服务器是采用.Net语言开发和实现的,实现了用户的注册和管理,实现对移动设备的注册,信息采集,移动设备的管理,同时可以向移动终端提供各种设备操作的指令,如:
锁定设备、抹去应用数据、注销设备、强制退出;实现了对证书、设备管理决策文件、预置描述文件的管理等;实现了MDM服务器和推送服务器的对接,实现二者之间的通信。
的推送服务器是借助于苹果的APNS加以实现,APNS也在前文进行了解释说明,此处不再细述,通过这种方式来实现MDM服务器与设备的长连接通信,此以保证终端接受平台指令。
4.3设备注册和令牌Token的获取及传递
实现MDM功能,iOS设备需要在我们自己的服务器和苹果服务器上完成设备的注册。
iOS移动端和服务器以及APP应用服务器和服务器都需要通过证书才能建立有效的连接,完成各自的功能等。
证书的获取和配置由于篇幅在此不作说明。
当iOS程序配置了MDM证书,应用程序启动后,应用程序通过相关代码让APP携带设备序列号连接APNS服务器进行注册,一旦注册成功,苹果推送服务器会返给我们一个设备令牌Token,获取到Token之后,程序通过接口将Token及设备的其他信息提交到我们的前MDM服务器,服务器收到信息后,首先查看信息与设备的有效性,一旦合法有效,则完成设备在我们应用的服务器上的注册,其流程如图3所示。
5结束语
通过对理论的研究,最终实现了对iOS移动设备的管理,经过长时间的测试与使用,该功能各项指标及性能均满足需求和预期研究效果。
但消息推送的稳定性还需要进一步提高。
参考文献
王卫东.企业移动设备安全管理方法与实践.计算机安全,201X:
44-4
7.
杭建.移动终端设备管理技术的研究与实现.西安:
西安电子科技大学,201X.
许丽萍.MDM引领移动信息化变革.上海信息化,201X:
59-6
1.
EriaSadun.TheiPhoneDevelopCookbook:
BuildingAppliationiththeiPhoneSDK,USA,201X.
肖荣,富杰.基于push机制的MDM平台研究.互联网天地,201X:
49-5
4.
附送:
企业一周工作计划表
企业一周工作计划表
p>p>
0m0m0pt;text-align:
left;">时间p>p>
0m0m0pt;text-align:
left;">内容p>p>
0m0m0pt;text-align:
left;">备注p>p>
0m0m0pt;text-align:
left;">1p>p>
0m0m0pt;text-align:
left;">
--?
xml:
namespaeprefix="st1"ns
="urn:
shemas-mirosoft-:
offie:
smarttags"-->hsdate:
st="on"isrodate="False"islunardate="False"da="7"month="3"ear="201X">3月7日hsdate>p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">2p>p>
0m0m0pt;text-align:
left;">周四p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">3p>p>
0m0m0pt;text-align:
left;">周五p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">4p>p>
0m0m0pt;text-align:
left;">周四p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">5p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">6p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">p>p>
left;">
意见、建议、问题
0m0m0pt;text-align:
left;">p>p>
0m0m0pt;text-align:
left;">内容p>p>
0m0m0pt;text-align:
left;">备注p>p>
0m0m0pt;text-align:
left;">1