华为 AnyOffice移动办公解决方案 安全沙箱技术白皮书

作者: 点击次数:368 添加时间:2017-3-15 19:38:48

       摘 要: 本文首先简单介绍了华为AnyOffice移动办公安全解决方案,然后,阐释了AnyOffice移动 办公安全解决方案对“安全沙箱”的定义,并对安全SDK的架构、特性、对外接口以及典型 的成功应用案例进行了描述。 List of abbreviations 缩略语清单: Abbreviations缩略语 Full spelling 英文全名 Chinese explanation 中文解释 SDK Software Development Kit 软件开发包 MDM Mobile Device Management 移动设备管理 API Application Programming Interface 应用程序编程接口 BYOD Bring Your Own Device 自带移动终端做移动办公 AnyOffice V200R005C00 安全沙箱技术白皮书 Confidential 内部公开 All rights reserved 版权所有,侵权必究 Page 4 , Total 12 第4页,共12页 1 简介 华为AnyOffice移动办公安全解决方案是针对当前BYOD移动办公的需求、特点和挑战,在 保障移动办公人员顺畅、安全访问企业的同时,提供高效和良好的用户体验,实现了“安 全”、“效率”和“体验”的完美融合。 同时,AnyOffice也是一个具备良好开放型的平台,以客户端SDK、客户端应用开放接口 以及后台开放接口的形式提供全方位的企业移动办公安全能力。客户端SDK为移动办公应用构 建了企业级安全沙箱,全流程保障企业数据安全。 图1 华为 AnyOffice 解决方案架构 所谓安全沙箱,简单讲就是病毒进不去,数据出不来。AnyOffice安全沙箱致力于企业数 据防泄密与个人隐私保护,将BYOD终端上企业数据与个人数据进行有效隔离,在不侵犯个人 隐私的情况下,保证企业数据不泄露。 AnyOffice安全沙箱以SDK的形式提供以下特性:  统一认证  本地数据加密  网络传输加密  Web安全沙箱  数据防泄漏 2 AnyOffice SDK架构 AnyOffice V200R005C00 安全沙箱技术白皮书 Confidential 内部公开 All rights reserved 版权所有,侵权必究 Page 5 , Total 12 第5页,共12页 如下图所示,AnyOffice SDK封装有统一认证、本地数据加密、网络传输加密、Web安全 沙箱、数据防泄漏等安全特性。对于操作系统层,通过平台适配屏蔽各种移动操作系统差 异,提供跨平台解决方案;对于应用层,SDK提供与操作系统风格一致的编程接口,便于上 层应用集成。 图2 AnyOffice SDK 架构 3 AnyOffice SDK特性 AnyOffice安全SDK为企业移动办公提供端到端的数据安全保障,普通应用通过接口集成 的方式,或者App Wrapping的方式即可实现安全加固,保证企业数据全流程加密,非法应用 无法获取。 3.1 统一认证与策略分发 3.1.1 认证与单点登录 AnyOffice SDK提供企业统一认证特性,如图3所示。企业应用集成SDK后,可以通过 SDK实现用户认证、策略获取,具体流程描述如下: 1、管理员通过业务管理服务器进行策略配置,并将策略通过标签关联到具体用户。 2、业务管理服务器将策略配置保存到AnyOffice后台数据库。 3、企业应用调用SDK接口进行用户登录。 AnyOffice V200R005C00 安全沙箱技术白皮书 Confidential 内部公开 All rights reserved 版权所有,侵权必究 Page 6 , Total 12 第6页,共12页 4、AnyOffice接入服务器接收到认证请求后,与认证服务器进行交互,完成用户认证授权。 5、企业应用调用SDK接口进行策略获取。 6、AnyOffice接入服务器将策略获取请求透传给业务控制服务器。 7、业务控制服务器从AnyOffice后台数据库中查询策略配置,并将于用户关联的部分策略返 回给企业应用。 图3 统一认证流程 以上流程中,如果企业应用无需在后台进行业务配置,则可以将3、5两步进行合并,通 过一个SDK接口实现统一认证,在这个接口中,SDK会先进行用户登录,然后从后台获取安 全策略,并进行解析后保存到沙箱中,整个过程对企业应用透明。 通过SDK接口完成统一认证后,企业应用可借助AnyOffice SDK的单点登录技术完成应用 层登录,相关技术可参见《AnyOffice 单点登录技术白皮书.docx》。 3.1.2 策略管理与分发 AnyOffice后台策略管理具备良好的开放性,可实现所有企业业务的统一策略、配置管 理。管理员根据企业业务的需要在业务管理服务器上导入对应的策略、配置,企业应用通过 SDK接口即可实时获取到相应的策略配置。 AnyOffice V200R005C00 安全沙箱技术白皮书 Confidential 内部公开 All rights reserved 版权所有,侵权必究 Page 7 , Total 12 第7页,共12页 3.2 本地数据加密 3.2.1 数据加密 AnyOffice SDK为企业数据构建一个本地安全沙箱,保证企业数据落地安全。本地数据加 密特性包括文件加密、数据库加密以及安全存储区,如下图所示。 图4 本地数据加密 应用可以使用普通文件的形式保存企业数据,也可以以数据库的形式保存企业数据,借 助AnyOffice SDK,可以实现各种存储类型的加密。SDK对数据的加密逻辑进行封装,提供标 准形式的接口,使得数据加密过程对应用层完全透明。AnyOffice SDK实现的数据库加密为整 库加密,对数据库功能没有任何影响,对操作性能影响极小。加密过程采用AES-256高强度算 法,加密密钥与终端绑定,避免企业数据被窃取。 3.2.2 安全存储区 同时,AnyOffice SDK为企业应用间的数据共享提供安全存储区特性。安全存储区保证企 业数据在应用间传递时全流程加密,并对目标应用进行身份校验,避免恶意应用通过分享途 径非法获取企业数据。AnyOffice SDK对安全存储区实现进行封装,屏蔽平台差异,为企业应 用提供统一的操作接口,利于应用逻辑归一,降低开发、维护成本。 3.2.3 应用信誉校验 AnyOffice SDK对应用的签名进行校验,只有采用合法的企业签名的应用才允许访问本地 AnyOffice V200R005C00 安全沙箱技术白皮书 Confidential 内部公开 All rights reserved 版权所有,侵权必究 Page 8 , Total 12 第8页,共12页 加密存储的企业数据。IT管理员只需要保护好企业应用开发证书,就可以保证企业数据不被 恶意应用窃取。 3.3 网络传输加密 3.3.1 应用专属隧道 AnyOffice SDK提供per app的应用专属隧道,只有集成了SDK的企业应用才会使用隧道进 行传输,个人应用不受影响。如图5所示。具体交互流程描述如下: 1、企业应通过SDK接口进行统一认证。此时SDK将创建一条从企业应用到AnyOffice接入网 关的应用专属隧道。 2、企业应用调用SDK接口与应用服务器进行业务通信。此时业务数据将通过应用专属隧道进 行加密传输。 3、AnyOffice接入网关接收到隧道上的业务数据后,将数据进行解密,并转发给应用服务 器。 图5 网络传输加密 3.3.2 隧道通信原理 SDK创建应用专属隧道时,AnyOffice接入服务器会为企业应用分配一个内网的虚拟IP, AnyOffice V200R005C00 安全沙箱技术白皮书 Confidential 内部公开 All rights reserved 版权所有,侵权必究 Page 9 , Total 12 第9页,共12页 并将其下发到SDK中。企业应用进行通信时,SDK将使用虚拟IP进行报文封装,并将此报文加 密后经应用专属隧道转发给接入服务器,接入服务器进行解密后,将SDK使用虚拟IP封装的报 文转发给应用服务器。应用专属隧道中传输的报文格式如下图所示。 图6 应用专属隧道报文格式 上图中,虚拟TCP/IP头使用的是接入服务器分配的虚拟IP,由SDK完成封装,用于与应用 服务器进行交互;真实TCP/IP头是使用终端的真实IP地址,由操作系统协议栈完成封装,用于 与接入服务器进行通信;SSL头由SDK对App Data和虚拟TCP/IP头进行加密后添加。UDP报文 与TCP类似。 3.3.3 隧道传输模式 AnyOffice提供TLS和UDPS两种隧道模式,通常TLS隧道用于传输TCP业务数据,UDPS隧 道用于传输UDP业务数据。对于TLS隧道模式,如果用于传输TCP业务数据,将可能导致两层 重传,由于移动网络的不稳定性,这种情况将对传输性能造成较大影响。基于此问题, AnyOffice SDK提供TCP over UDP模式,即使用UDPS隧道传输TCP业务数据,从而降低重传 消耗,将隧道对传输性能的影响降到最低。 3.4 Web安全沙箱 WebView是移动终端操作系统提供的Web开发控件,开发者使用这个控件可以快速实现 Web页面浏览功能。基于WebView控件,企业OA系统中的Web业务可以快速移动化。 AnyOffice提供加固的安全WebView控件,实现了传输加密、本地数据加密、数据防泄漏、 ACL策略控制等安全特性。在安全WebView控件基础上,AnyOffice SDK还封装了WebApp界 面,企业应用只需要一行代码即可实现企业内网的Web资源浏览。Web安全沙箱技术详情请参 考《AnyOffice WebApp技术白皮书.docx》。 AnyOffice V200R005C00 安全沙箱技术白皮书 Confidential 内部公开 All rights reserved 版权所有,侵权必究 Page 10 , Total 12 第10页,共12页 3.5 数据防泄漏 3.5.1 安全剪贴板 AnyOffice SDK对剪贴板操作进行安全加固,避免企业数据通过剪贴板的方式流入非企业 应用中。SDK通过两种方法保证企业数据不从剪贴板的途径泄漏出去,第一种方法是使用自 定义剪贴板,第二种方法是清理剪贴板。之所以有两种方法,是因为第一种方法存在一定限 制。 操作系统提供文本控件通常提供复制、粘贴功能,大部分控件的这两个事件是可以被重 写的,但有一小部分控件不能活着很难被重写,比如Android平台的WebView控件,就很难重 写其复制、粘贴事件,再比如iOS的组合文本框,重写复制、粘贴事件很困难。 对于容易重写复制、粘贴事件的文本控件,推荐使用第一种方法,在重写的事件中用 SDK的自定义剪贴板替代系统剪贴板,SDK会保证被复制的数据在沙箱内维护,恶意应用无 法窃取。而且这种情况下可以实现企业应用间的复制粘贴。 对于难以实现复制、粘贴事件重写的控件,只能采用第二种方法。采用第二种方法时, 复制的内容只能在应用内使用,当尝试将复制的内容粘贴到其他应用中时,SDK会将其清 除,以避免企业数据流入恶意应用中。 3.5.2 应用防截屏 应用防截屏特性由操作系统机制支持,在Android平台上有系统接口控制,iOS平台不支 持。AnyOffice SDK支持后台配置策略以控制是否对应用开启防截屏。上层应用无需相关的接 口调用。 3.5.3 应用锁屏 安全级别较高的应用通常都有超时锁定的诉求,AnyOffice SDK提供沙箱级别的应用锁, 这种实现是区别于个人应用中的应用锁屏的。个人应用中的应用锁通常是基于单应用的,简 单讲,每个应用的锁定触发是单独管理的,解锁动作也是单独管理的,用户长时间未使用 后,需要在每个应用中解锁一遍。这种模式对于企业应用来讲通常是不合理的。 AnyOffice将所有企业应用划归到一个企业沙箱中,通过SDK的沙箱技术实现统一的使用 体验,这种理念在应用锁屏上有明显体现。AnyOffice SDK实现的应用锁屏是基于所有企业应 用进行统一管理的,锁屏状态根据当前用户的使用模式进行切换。我们定义用户使用终端时 有这样几种模式:工作模式、私人模式以及闲置模式。 在工作模式下,用户只要在使用任意一个企业应用,所有企业应用都不会触发锁屏,用 AnyOffice V200R005C00 安全沙箱技术白皮书 Confidential 内部公开 All rights reserved 版权所有,侵权必究 Page 11 , Total 12 第11页,共12页 户可以在各个企业应用之间切换,处理各种业务,无需担心突然出现的锁屏影响操作的流畅 性; 当用户没有使用任何一个企业应用,此时认为处于闲置模式或者私人模式。此时可能是 用户离开手机在做其他事情,也有可能是在使用个人应用处理私人事务。当这种情况持续一 段时间后,将触发所有企业应用进入锁屏状态。此时,无论进入哪个企业应用,都是处于锁 屏状态,用户可以通过统一的解锁密码进行解锁。 当用户在任意一个企业应用中解锁后,即可解除所有企业应用的锁定状态,重新激活工 作模式。 也就是说,在工作模式下,企业应用处于激活状态,不会锁定;当进入闲置模式或者私 人模式一段时间后,将触发锁屏。用户使用模式的定义有利于提升用户使用体验,使得锁屏 这样的安全特性对用户体验影响最小,同时,区分工作模式与个人模式,可以隔离个人事务 与企业业务,这也就是BYOD的终极目标。 3.5.4 安全键盘 AnyOffice SDK还提供专业的密码输入控件,包括安全输入框与安全键盘。经加固后,输 入框中的输入的长度与内容已不可辨识,而键盘也不在使用系统控件,恶意应用无法通过事 件监听或者录屏的方式截获用户的输入。 安全键盘采用键位随机、屏蔽用户输入特效等方法避免恶意应用通过截屏、录屏等方式 截取用户输入,通过自定义事件的方法避免恶意应用监听击键事件以截获用户输入。 4 AnyOffice SDK集成方式 AnyOffice SDK提供手工集成和自动App Wrapping两种集成方式。App Wrapping是 AnyOffice解决方案提供的Web自助服务。用户通过AnyOffice自助服务页面将企业应用上传, 并选择需要集成的安全特性,然后点击按钮即可实现应用加固,如下图所示: 图7 App Wrapping AnyOffice V200R005C00 安全沙箱技术白皮书 Confidential 内部公开 All rights reserved 版权所有,侵权必究 Page 12 , Total 12 第12页,共12页 用户也可以选择手动集成的方式,可以更灵活的控制集成逻辑,使得安全特性更和谐的 融入应用当中,达到安全与体验的最佳融合。 5 总结 华为的AnyOffice SDK具备跨平台、易集成的特点,各类应用的开发者只需要少量的适配 工作即可让业务应用具备典型的安全特性。目前AnyOffice SDK中安全沙箱包括以下特性:统 一认证、本地数据加密、网络传输加密、Web安全沙箱、数据防泄漏,后续的版本将根据移 动办公安全需求而集成更多的安全特性。