基于ios平台mdm实践_第1页
基于ios平台mdm实践_第2页
基于ios平台mdm实践_第3页
基于ios平台mdm实践_第4页
基于ios平台mdm实践_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

IOS 平台上 MDM 开发 移动互联网行业,从事移动设备安全产品的研发工作。 技术网站: 2013-11-23 目录大纲 MDM相关资料及源码提供 5 苹果提供的 MDM解决方案 2 IOS平台的 MDM方案 Java实现 4 IOS平台 MDM相关资料介绍 1 理解 InsideAppleMDM_WP.pdf 3 IOS平台 MDM相关资料介绍 1、什么是 MDM ? Mobile Device Management(移动设备管理) 从设备注册、激活、使用、淘汰各个环节进行全面管理。 2、 MDM如何兴起? 使用移动终端设备来处理日常,移动办公等事务,提升企业数据管理能力 3、 MDM的发展前景怎样? MAM( Mobile Application Management ) 移动 APP管理 MCM (Mobile Content Management ) 移动文档管理 IOS平台 MDM相关资料介绍 4、 IOS平台 MDM开发前阅读(了解 MDM) ( 1)、 iPhone_MDM.pdf 5、 IOS平台 MDM开发参考的文档(非常重要) ( 1)、 InsideAppleMDM_WP.pdf ( 2)、 MobileDeviceManagementProtocol.pdf 6、其他参考文档(开发需要) ( 1)、相关网页 .txt ( 2)、相关命令文件夹下的 txt文档 苹果提供的 MDM解决方案 1、 Android平台 MDM实现 Android 2.2 之后实现 MDM功能。但是平台开源,各个厂商修改底层源码,很多功能都被手机厂商阉割,戒者植入类似 MDM功能 APP(例如:小米的云服务) 2、 IOS平台 MDM能实现的功能 参见 PDF: iPhone_MDM.pdf 我翻译的: MDM能实现的功能 .doc 主要的三部分: Configure(设备配置)、 Query(设备信息查询)、 Manage(设备管控) 苹果提供的 MDM解决方案 3、 IOS平台 MDM开发需要做的工作 1、注册 Apple企业者账号( $299),并申请 MDM Vendor; 2、申请 https( SSL)证书戒者自建证书; 3、搭建服务器 https环境 ; 4、 IOS端生成 MDM推送 p12格式证书和 mobileconfig描述文件 5、了解代码 RestFul架构及其风格( post、 get、 put、 delete); 6、一定的 linux操作命令戒者 window服务器配置操作技能(使用 openssl) 7、掌握 Apple提供的英文开发文档(最重要) 上面工作的参考文章网址在:相关网页 .txt 理解 InsideAppleMDM_WP.pdf 1、 IOS设备安装 mobileconfig文件并注册激活 MDM Server IOS设备 步骤一:下载 .mobilecofig文件,并授权安装 步骤二:设备执行 check In的 Authenticate和 TokenUpdate(返回 MDM需要的几个参数: Token、 PushMagic、 UnlockToken等) 理解 InsideAppleMDM_WP.pdf 2、 MDM执行控制基本流程 MDM Server IOS设备 步骤一 备注:设备控制 ,例如:锁屏、解锁、清除数据等,每个步骤的解释详见下页 步骤二 步骤三 步骤四 步骤五 理解 InsideAppleMDM_WP.pdf 2、 MDM执行控制基本流程 步骤一:服务器发送一个 MDM推送信息,告诉设备,服务器需要让你执行命令了。 说明:命令格式为 aps:,mdm:996ac527-9993-4a0a-8528-60b2b3c2f52b, mdm的 value为设备注册时返回的 PushMagic。 步骤二: APNs通知设备。 步骤三:当设备空闲和在网时去连接 MDM Server并告诉服务器状态。 步骤四: MDM Server根据设备状态返回给设备需要执行命令。 说明:命令式 xml格式的 plist文件。 步骤五:设备实行了命令,并将执行情况返回给 MDM Server。 说明:返回状态为 Acknowledged则执行成功, CommandFormatError、 Error、 NotNow 等即为除了问题。 理解 InsideAppleMDM_WP.pdf 2、 MDM执行控制基本流程 例如:当需要执行锁屏时,我们的步骤如下: 我们通过 MDM Server发送一个 MDM推送消息给 Apns,同时,我们在服务器上记录一个锁屏的数据库记录,当设备收到 Apns 的消息(通知栏丌提示)后,会发送一个状态为 Idle(设备空闲)通过Server Url通知 MDM Server,来告诉 MDM Server,现在设备空闲了,可以执行命令了,当 MDM Server收到这样的状态后,根据数据库记录命令的先后顺序,找到那个执行锁屏的记录,并组装成一个 xml格式的 plist文件返回给设备;当设备执行完了命令后,会将执行的情况再次通过 MDM Server的 Server URL返回来,此时状态为: Acknowledged,那个这个状态就表示设备已经成功执行了锁屏命令。需要注意的是,每个命令发送的 plist文件后又一个 CommandUUID属性,这个属性是用来表示执行命令和返回的唯一性。 IOS平台的 MDM方案 Java实现 1、 MDM Server提供 mobileconfig文件下载 /* * 下载设备控制描述文件功能 * throws Exception */ GET Path(/down/:deviceId) public void downConfig() throws Exception /*业务参见源码 */ 参见: MdmAction.java文件,注意 mobileconfig文件需要通过的 openssl签名。 签名详见: /命令相关 /openssl对 mobileconfig文件签名 .txt IOS平台的 MDM方案 Java实现 2、设备认证和上传 Token等信息( Check In URL) /* * 设备认证和注册功能 * throws Exception */ PUT Path(/checkin/:deviceId) public void checkIn() throws Exception /*业务参见源码 */ 参见: MdmAction.java文件,注意请求类型需要是 PUT 注册认证返回数据: /命令相关 /CheckIn返回 .txt IOS平台的 MDM方案 Java实现 3、通过 APNs发送一个需要锁屏的请求( MDM push) / * * 设备锁屏功能 * throws Exception */ GET Path(/lock/:deviceId) public void deviceLock() throws Exception *业务参见源码 */ 命令类似: aps:,mdm:996ac527-9993-4a0a-8528-60b2b3c2f52b apns推送是通过一个开源的 java-apns程序发送的。 IOS平台的 MDM方案 Java实现 4、设备响应,发送真正的锁屏命令( Server URL) /*设备空闲状态 ,可以发送相关命令 */ if (info.contains(MdmUtils.Idle) /*执行命令 */ if (command.getCommand().equals(MdmUtils.Lock) /*组装锁屏命令的 plist文件,并发送命令 */ /*注意有一个 CommandUUID,便于获取返回数据类型判断 */ 说明:当接收到状态为 Idle表示设备空闲,那么就查询数据库,并组装命令执行。 锁屏命令参考 : /命令相关 /锁屏命令和其他命令 .txt IOS平台的 MDM方案 Java实现 5、设备执行命令,并返回执行情况 /*返回状态为 Acknowledged,表示执行成功 */ if (info.contains(MdmUtils.Acknowledged) /*根据 CommandUUID,记录命令执行情况 */ 说明:当接收到状态为 Idle表示设备空闲,那么就查询数据库,并组装命令执行。 返回数据参见: /命令相关 /执行命令返回状态 .txt IOS平台的 MDM方案 Java实现 6、其他命令说明 我们目前涉及到的几个设备安全管理的几个命令: 锁屏、清除密码、清除设备数据 其请求及执行流程和锁屏时一致的。 MDM相关资料及源码提供 一、主要文档及代码: 1、 InsideAppleMDM_WP.pdf 2、 MobileDeviceManagementProtocol.pdf 3、参考代码(附件文件夹) 二、 https证书参考: 1、 edumdm证书相关(附件) 2、

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论