用于移动设备管理类型保护的安全客户端驱动映射和文件存储系统的制作方法
【专利说明】用于移动设备管理类型保护的安全客户端驱动映射和文件存储系统
[0001]对其它申请的交叉引用
[0002]本申请要求2013年10月16日提交的并具有标题“Secure Client Drive Mappingand File Storage System for Mobile Device Management Type Security” 的未决的美国申请序列号14/054,899的优先权。
[0003]领域
[0004]本公开的方面涉及计算机硬件和软件。特别是,本公开的一个或多个方面通常涉及用于提供用于移动设备管理类型保护的安全客户端驱动映射和/或文件存储系统的计算机硬件和软件。
[0005]背景
[0006]移动设备(例如智能电话、平板计算机、其它类型的移动计算设备等)变得越来越普遍。越来越多的人正为了各种目的而在个人和商业背景中使用移动设备。使用操作系统例如WINDOWS 8,软件和硬件公司在单个移动设备上给移动设备提供例如社交网络服务连同计算服务例如字处理应用。
[0007]在单个电子设备上允许移动和计算服务对有带着在那个移动设备上的机密和/或敏感公司数据旅行的雇员的公司是有风险的。这在移动设备的本地驱动器被映射到公司的服务器和/或网络时尤其如此。例如,雇员可将包含敏感公司数据的文件上传到社交联网站点,因而引起大的安全问题。此外,如果不受欢迎的用户可以访问雇员的移动设备,则不受欢迎的用户也许能够访问在设备上存储在所映射的设备驱动器中的机密信息。
[0008]因此,存在对存储在移动设备上的敏感数据保护的需要。
[0009]概述
[0010]下文提供本文所述的各种方面的简化概述。该概述并不是广泛概述,且并不意欲识别关键或重要的元件或描述权利要求的范围。下面的概述仅仅提供以简化形式的一些概念作为下面提供的更详细描述的介绍性序言。
[0011]为了克服在上面描述的现有技术中的限制并克服在阅读和理解本说明书时明显的其它限制,本文所述的方面目的在于提供用于客户端设备文件存储和/或驱动映射的移动设备管理类型保护。
[0012]本公开的一个或多个方面提供一种方法,其可包括:执行用于在移动设备上呈现的受管应用,接收将数据文件在本地保存在移动设备上的请求;以及确定数据文件是否包含敏感数据。随后,当数据文件包含敏感数据时且响应于该请求,该方法还可包括将数据文件加密,将加密的数据文件存储在移动设备上,并将加密的数据文件链接到数据文件的未加密版本,数据文件的未加密版本不包含敏感数据。
[0013]本公开的一个或多个方面提供包括至少一个处理器和存储指令的至少一个存储器的系统,指令在由至少一个处理器执行时可使系统执行步骤。系统执行的步骤可包括:执行用于在移动设备上呈现的受管应用,接收将数据文件在本地保存在移动设备上的请求;以及确定数据文件是否包含敏感数据。随后,当数据文件包含敏感数据时且响应于该请求,指令还可使系统执行:将数据文件加密,将加密的数据文件存储在移动设备上,并将加密的数据文件链接到数据文件的未加密版本,数据文件的未加密版本不包含敏感数据。
[0014]本公开的一个或多个方面提供一种或多种非临时计算机可读存储介质,其具有存储在其上的指令,指令在由一个或多个处理器执行时可使一个或多个处理器执行步骤。一个或多个处理器执行的步骤可包括:执行用于在移动设备上呈现的受管应用,接收将数据文件在本地保存在移动设备上的请求;以及确定数据文件是否包含敏感数据。随后,当数据文件包含敏感数据时且响应于该请求,指令还可使一个或多个处理器执行将数据文件加密,将加密的数据文件存储在移动设备上,并将加密的数据文件链接到数据文件的未加密版本,数据文件的未加密版本不包含敏感数据。
[0015]在有下面更详细讨论的公开的益处的情况下将认识到这些和额外的方面。
[0016]附图的简要说明
[0017]考虑到附图通过参考下面的详细描述可获取对本文所述的方面及其优点的更彻底的理解,其中相似的参考数字指示相似的特征,以及其中:
[0018]图1描绘可根据本文所述的一个或多个例证性方面使用的例证性计算机系统架构。
[0019]图2描绘可根据本文所述的一个或多个例证性方面使用的例证性远程访问系统架构。
[0020]图3描绘示出根据本文所述的一个或多个例证性方面的用于客户端驱动映射的移动设备管理类型保护的系统的方框图。
[0021]图4描绘可根据本文所述的一个或多个例证性方面使用的例证性基于云的系统架构。
[0022]图5描绘根据本文所述的一个或多个例证性方面的例证性企业移动性管理系统。
[0023]图6描绘根据本文所述的一个或多个例证性方面的另一例证性企业移动性管理系统。
[0024]图7描绘示出根据本文所述的一个或多个例证性方面的使用用于客户端驱动映射的移动设备管理类型保护将已修改文件保存到被映射的本地驱动器的过程的流程图。
[0025]图8描绘示出根据本文所述的一个或多个例证性方面的使用用于客户端驱动映射的移动设备管理类型保护打开在客户端上的文件的过程的流程图。
[0026]详细描述
[0027]在各种实施方式的下面的描述中,参考在上面识别的并形成其一部分的附图,且其中作为例证示出本文所述的方面可被实施的各种实施方式。应理解,可利用其它实施方式且可做出结构和功能修改而不偏离本文所述的范围。各种方面能够有其它实施方式且能够以各种不同的方式被实施或执行。
[0028]作为对下面更详细描述的主题的一般介绍,本文所述的方面目的在于使用在移动计算设备处的受管移动应用来控制对在企业计算系统处的资源的远程访问。访问管理员可执行确定请求对企业资源的访问的移动应用是否本身被准确地识别出且随后在安装在移动计算设备处之后未被改变的确认过程。以这种方式,访问管理员可确保请求对企业资源的访问的移动应用可以是信任的且不试图绕开用于保护那些企业资源的安全机制。作为结果,与企业相关的个人可有利地在他们的个人移动设备处利用企业资源。
[0029]应理解,在本文使用的短语和术语是为了描述的目的且不应被视为限制性的。更确切地,在本文使用的短语和术语应被给予它们的最广泛的解释和含义。“including(包括)”和“comprising(包括)”及其变形的使用意欲包括在其后列出的项目及其等效形式以及额外的项目及其等效形式。术语“安装”、“连接”、“耦合”、“定位”、“啮合”和类似术语的使用意指包括直接和间接的安装、连接、耦合、定位和啮合。
[0030]计算架构
[0031]可在各种不同的系统环境一一尤其包括独立、联网、远程访问(又称远程桌面)、虚拟化和/或基于云的环境一一中利用计算机软件、硬件和网络。图1示出可用于在独立和/或联网环境中实现在本文所述的一个或多个例证性方面的系统架构和数据处理设备的一个例子。可经由广域网(WAN) 101例如互联网来使各种网络节点103、105、107和109互连。也可以或可选地使用其它网络,包括专用内联网、局域网(LAN)、城域网(MAN)、无线网络、个人网络(PAN)等。网络101是为了说明目的且可以用更少的或额外的计算机网络代替。LAN可具有任何已知的LAN拓扑的一个或多个,并可使用各种不同的协议中的一个或多个,例如以太网。设备103、105、107、109和其它设备(未示出)可经由双绞线、同轴电缆、光纤、无线电波或其它通信介质连接到一个或多个网络。
[0032]如在本文使用和在附图中描绘的术语“网络”不仅指远程存储设备经由一个或多个通信路径被耦合在一起的系统,而且也指可有时耦合到具有存储能力的这样的系统的独立设备。因此,术语“网络”不仅包括“物理网络”而且包括由遍及所有物理网络存在的、可归属于单个实体的数据组成的“内容网络”。
[0033]部件可包括数据服务器103、web服务器105和客户端计算机107、109。数据服务器103提供用于执行本文所述的一个或多个例证性方面的数据库和控制软件的总访问、控制和管理。数据服务器103可连接到web服务器105,用户与该web服务器105交互作用并如所请求的得到数据。可选地,数据服务器103可充当web服务器本身并直接连接到互联网。数据服务器103可通过网络101(例如互联网)、经由直接或间接连接或经由某个其它网络连接到web服务器105。用户可使用远程计算机107、109例如使用经由web服务器105所托管的一个或多个外部暴露的web站点连接到数据服务器103的web浏览器来与数据服务器103交互作用。客户端计算机107、109可与数据服务器103协调地使用以访问存储在其中的数据,或可用于其它目的。例如,用户可使用如在本领域中已知的互联网浏览器或通过执行通过计算机网络(例如互联网)与web服务器105和/或数据服务器103通信的软件应用来从客户端设备107访问web服务器。
[0034]服务器和应用可组合在相同的物理机器上,并保持单独的虚拟或逻辑地址,或可存在于单独的物理机器上。图1示出可被使用的网络架构的仅仅一个例子,且本领域中的技术人员将认识到,所使用的特定的网络架构和数据处理设备可改变,且对它们提供的功能是次要的,如在本文进一步描述的。例如,由web服务器105和数据服务器103提供的服务可组合在单个服务器上。
[0035]每个部件103、105、107、109可以是任何类型的已知计算机、服务器或数据处理设备。数据服务器103例如可包括控制数据服务器103的总操作的处理器111。数据服务器103还可包括RAM 113,ROM 115、网络接口 117、输入/输出接口 119(例如键盘、鼠标、显示器、打印机等)和存储器121。1/0 119可包括用于读取、写入、显示和/或打印数据或文件的各种接口单元和驱动器。存储器121还可存储用于控制数据处理设备103的总操作的操作系统软件123、用于指示数据服务器103执行本文所述的方面的控制逻辑125和提供辅助支持和/或可以或可以不结合本文所述的方面来使用的其它功能的其它应用软件127。控制逻辑也可在本文被称为数据服务器软件125。数据服务器软件的功能可以指基于被编码到控制逻辑内的规则而自动做出的、由将输入提供到系统内的用户手动做出的操作或决定和/或基于用户输入(例如查询、数据更新等)的自动处理的组合。
[0036]存储器121还可存储在本文所述的一个或多个方面的执行中使用的数据,包括第一数据库129和第二数据库131。在一些实施方式中,第一数据库可包括第二数据库(例如作为单独的表格、报告等)。也就是说,信息可存储在单个数据库中,或分成不同的逻辑、虚拟或物理数据库,取决于系统设计。设备105、107、109可具有与关于设备103所述的相似或不同的架构。本领域中的技术人员将认识到,如本文所述的数据处理设备103(或设备105、107、109)的功能可在多个数据处理设备当中扩展,例如以在多个计算机当中分配处理负载,基于地理位置、用户访问水平、服务质量(QoS)等来分离交易。
[0037]一个或多个方面可体现在计算机可用或可读数据和/或计算机可执行指令中,例如在由一个或多个计算机或如本文所述的其它设备执行的一个或多个程序模块中。通常,程序模块包括当被计算机或其它设备中的处理器执行时执行特定的任务或实现特定的抽象数据类型的例程、程序、对象、部件、数据结构等。模块可以用随后被编译用于执行的源代码编程语言被编写或可以用脚本语言例如(但不限于)Javascript或Act1nScript被编写。计算机可执行指令可存储在计算机可读介质例如非易失性存储设备上。可利用任何适当的计算机可读存储介质,包括硬盘、CD-ROM、光学存储设备、磁性存储设备和/或其任何组合。此外,可在源和目的地之间以通过信号传导介质例如金属线、光纤和/或无线传输介质(例如空气和/或空间)传播的电磁波的形式传送表示如本文所述的数据或事件的各种传输(非存储)介质。本文所述的各种方面可被体现为方法、数据处理系统或计算机程序产品。因此,各种功能可全部或部分地体现在软件、固件和/或硬件或硬件等效形式例如集成电路、现场可编程门阵列(FPGA)等中。特定的数据结构可用于更有效地实现本文所述的一个或多个方面,且这样的数据结构被设想在本文所述的计算机可执行指令和计算机可用数据的范围内。
[0038]进一步参考图2,可在远程访问环境中实现本文所述的一个或多个方面。图2描绘示例系统架构,其包括可根据本文所述的一个或多个例证性方面使用的在例证性计算环境200中的一般计算设备201。一般计算设备201可用作在配置成为客户端访问设备提供虚拟机的单服务器或多服务器桌面虚拟化系统(例如远程访问或云系统)中的服务器206a。一般计算设备201可具有用于控制服务器及其相关部件一一包括随机存取存储器(RAM)205、只读存储器(R0M)207、输入/输出(I/O)模块209和存储器215——的总操作的处理器203。
[0039]I/O模块209可包括鼠标、键盘、触摸屏、扫描仪、光学阅读器和/或手写笔(或其它输入设备)(一般计算设备201的用户可通过这些设备提供输入),且还可包括用于提供音频输出的扬声器和用于提供文本、视听和/或图形输出的视频显示设备中的一个或多个。软件可存储在存储器215和/或其它存储器内以向处理器203提供用于将一般计算设备201配置为专用计算设备,以便执行如本文所述