用于移动计算设备的数据丢失防护的制作方法

文档序号:14444769阅读:231来源:国知局
用于移动计算设备的数据丢失防护的制作方法

本申请是pct国际申请号为pct/us2013/065801、国际申请日为2013年10月18日、进入中国国家阶段的申请号为201380048879.0,题为“用于移动计算设备的数据丢失防护”的发明专利申请的分案申请。

本公开总体关于安全领域,更具体来说,本公开关于基于位置对移动设备中的多个应用的管理。



背景技术:

随着移动设备使用的增加,在数据丢失防护(或“dlp”)领域中已涌现出新的挑战。移动设备通常具有在传统的台式机和传统设备中通常找不到的大量信息和功能,例如,全球定位系统(gps)、相机、近场通信(nfc)等。此类功能也可引入可能潜在地遭泄露的新类型的敏感数据。由于移动设备经由诸如语音、gprs、3g、4g、sms、数据、蓝牙等之类的各种不同的通道持续地被连接到通信网络中的趋势,该情况进一步变得复杂。在此类实例中,可能遭泄露的各种数据以及泄露发生的机会可能更加多样化。此外,一些移动设备平台通过严苛的容器化操作和粗粒度的许可模型等等此类障碍,使内容检查变得困难。“自带设备”(或byod)的趋势已使负责提供统一的安全解决方案以及管理对敏感的企业数据的控制等等此类示例的管理员和it人员进一步感到担忧。

附图说明

图1是根据一个实施例的、包括数据丢失防护(dlp)策略服务器的示例系统的简化示意图;

图2是根据一个实施例的、包括示例移动用户设备和dlp服务器的示例系统的简化框图;

图3是表示示出根据一个实施例的、可结合一个或多个移动用户设备进行部署的dlp解决方案的示例套件的简化框图;

图4是表示根据一个实施例的、基于示例网络的dlp解决方案的简化框图;

图5a-5b是根据一些实施例的示例经加密的容器(container)的简化表示;

图6a-6b是表示根据一些实施例的、包括示例dlp代理和安全模块的示例移动计算设备的简化框图;

图7是表示根据一些实施例的、dlp代理应用和安全模块之间的示例交互的简化框图;

图8a-8c是表示根据一些实施例的、基于位置的dlp实施的简化流的图;

图9a-9b是表示根据一些实施例的、对应于用于移动计算设备的数据丢失防护的示例操作的流程图。

各附图中同样的附图标记指示同样的元素。

具体实施方式

在一些实现方案中,可例如通过诸如linux安全管理器(lsm)之类的内核安全管理器提供用于移动用户计算设备的示例数据丢失防护(dlp)解决方案。lsm服务可横跨移动设备的各种应用来运作,提供灵活的策略框架,并且保留移动设备应用和子系统的多个配置,等等此类示例特征。

传统的dlp工具和系统能够防护不合适地离开(或进入)系统的各种类型的数据。数据类型可包括动态数据(data-in-motion),诸如,email、web投递、网络话务、即时消息收发,等等。可例如通过部署在系统的网络的入口点和/或出口点处的多个解决方案来实施动态数据。数据类型可进一步包括静态数据(data-at-rest)数据类型,诸如,共享文件、数据库、系统内的台式计算机和膝上型计算机处的存储,等等此类示例。可结合静态数据来利用发现和指纹识别解决方案。此外,使用中数据(data-in-use)类型可包括经由可移动介质、打印机、图形显示器等被存储或输出的数据,并且dlp实施可在此类数据外出能够发生的端点计算设备处发生。相应地,传统的dlp解决方案可采用各种解决方案以防止系统内各种原因和各种形式的数据丢失。此外,dlp解决方案可基于对被检测为离开或进入系统的数据的内容和情境的分析来实施dlp策略。另外,dlp解决方案可利用各种探针(probe)(例如,文件系统探针、email探针、网络探针、http探针、打印机探针)来检测dlp事件。然而,可能难以在现代的移动计算设备平台和操作系统中实现此类探针和对应的钩(hook)。移动操作系统可构成闭合的全域(universe)。移动设备可进一步具有cpu、存储器、电池和移动设备唯一的性能极限。此外,移动设备通常可能具有比传统的计算设备更多的潜在攻击通道,包括通过sms、4g、蓝牙、nfc、wi-fi、sd卡等等此类示例所提供的攻击通道。另外,随着移动设备应用和用户愈发依赖基于云服务、其他web所提供服务和分布式服务等此类示例,额外的数据丢失易损性可能涌现。

通过各种机制,数据可被引入并进入移动计算设备。例如,可经由因特网、基于web的应用等,通过email、sms消息和文件共享(包括基于云的共享和本地共享)引入数据。通过类似多样的大量机制,数据可被共享、输出或“离开”移动计算设备,上述机制例如经由与外部设备交换数据的应用、web邮件、web投递、消息收发、email、基于云的存储和应用服务等等。此外,由于移动计算设备通常尺寸更小,并且被用户携带到各种环境中去,因此,移动计算设备可能更容易例如通过设备失窃或丢失而受损,设备失窃或丢失会进一步成为数据丢失的基础。

图1示出系统100的简化框图,其包括例如,dlp策略服务器105以及一个或多个移动计算设备110、115、120和125。移动计算设备可连接到诸如因特网以及私有的、局域的和其他网络(如,被共同地标为130)之类的一个或多个网络,并且在一个或多个网络上进行通信。移动计算设备(如,110、115、120和125)可在一个或多个网络130上与各种其他的计算设备对接,消费各种其他计算设备的多个服务,访问各种其他计算设备以及与各种其他计算设备共享数据。此类计算设备可包括例如其他个人计算设备(如,110、115、120和125)以及数据、应用和服务的外部服务器145。此外,在一些实现方案中,dlp策略服务器105、gps服务器140和其他系统可提供支持旨在用于移动计算设备的dlp解决方案的多项服务。在一些示例中,此类服务可进一步涉及在一个或多个网络130上的移动计算设备(如,110、115、120和125)和外部服务器(如,105和140)之间的通信。在一些实现方案中,移动计算设备(如,110、115、120和125)可包括安全管理器,该安全管理器与该移动计算设备的内核对接,该移动计算设备的内核结合在该移动设备上的、用于向该移动计算设备提供dlp服务的dlp代理,并且在一些情况下,在具有远程dlp策略服务器105和其他外部系统、安全工具以及其他资源的支持的情况下进行操作。

通常,包括示例计算环境100中的系统设备(例如,105、110、115、120、125、140、145等)的“服务器”、“客户机”、“客户机设备”、“计算设备”、“网络元件”、“主机”、“系统型系统实体”和“系统”可包括可用于接收、发送、处理、存储或管理与计算环境100相关联的数据和信息的电子计算设备。如在本文件中所使用的,术语“计算机”、“处理器”、“处理器设备”或“处理设备”旨在涵盖任何合适的处理设备。例如,可使用诸如包括多个服务器计算机的服务器池之类的多个计算设备和处理器来实现在计算环境100之内被示出为单个设备的多个元件。此外,可将计算设备中的任何、全部或一些改动成用于执行任何操作系统,包括linux、unix、微软windows、苹果os、苹果ios、谷歌安卓、windowsserver等,并且可将虚拟机改动成用于虚拟化对包括自定义和专属操作系统的特定操作系统的执行。

此外,服务器、客户机设备、网络元件、系统和计算设备可各自包括一个或多个处理器、计算机可读存储器以及一个或多个接口,等等此类特征和硬件。服务器可包括任何合适的软件组件或模块,或包括能够主管和/或服务包括分布式、企业或基于云的软件、应用、数据和服务的软件应用和服务(例如,服务器105的个人安全系统、服务和应用等)的计算设备。例如,在一些实现方案中,计算系统100的dlp策略服务器105、gps服务器140、外部服务器145或其他子系统可以是被配置成用于远程地主管、服务或以其他方式管理数据、软件服务和应用的云实现的系统,这些数据、软件服务和应用与系统100中的其他服务和设备对接、相协调,依赖于系统100中的其他服务和设备,或者由系统100中的其他服务和设备使用。在一些实例中,可将服务器、系统、子系统、或计算设备实现为可在公共计算系统、服务器、服务器池或云计算环境上受主管的、并且共享包括共享存储器、处理器和接口的计算资源的多个设备的一些组合。

用户设备、端点设备或客户机计算设备(如,110、115、120和125等)可包括传统计算设备和移动计算设备,包括,个人计算机、膝上型计算机、平板计算机、智能电话、个人数字助理、功能电话、手持式视频游戏控制台、台式计算机、启用互联网的电视机和设计成用于与人类用户交互、并且能够在一个或多个网络(如,130)上与其他设备通信的其他设备。计算机辅助的或“智能的”装置可包括家用或工业设备和机器,这些家用或工业设备和机器包括计算机处理器,并且由该计算机处理器、其他硬件和/或该计算机处理器所执行的一个或多个软件程序控制、监测、辅助、补充,或者通过该计算机处理器、其他硬件和/或该计算机处理器所执行的一个或多个软件程序以其他方式增强这些设备的功能。计算机辅助的装置可包括各种计算机辅助的机器和产品,其包括冰箱、洗衣机、汽车、hvac系统、工业机械、炉、安全系统等。

用户计算设备、计算机辅助装置、服务器和计算设备的属性一般在各设备之间差异很大,这些属性的差异包括各自的操作系统以及所加载、安装、执行、操作或以其他方式可由每个设备访问的软件程序的集合。例如,计算设备可运行、执行、已安装或以其他方式包括程序的各种集合,包括能够由各自的设备运行、执行或以其他方式使用的操作系统、应用、插件、小应用程序、虚拟机、机器镜像、驱动程序、可执行文件和其他基于软件的程序的各种组合。

一些系统设备可进一步包括由这些系统设备的计算机处理器所支持的至少一个图形显示设备和多个用户界面,该至少一个图形显示设备和多个用户界面允许用户看到系统100中所提供的应用和其他程序的图形用户界面并与之交互,该至少一个图形显示设备和多个用户界面包括程序和图形用户界面等的用户界面和图形表示,其中,上述程序与在系统设备之内受主管的应用交互,上述图形用户界面与系统100的多个服务和应用相关联。此外,虽然可按照由一个用户使用来描述系统设备,但是本公开构想了许多用户可使用一个计算机或一个用户可使用多个计算机。

虽然将图1描述为包含多个元件或与多个元件相关联,但是并非图1中的计算环境100内所示出的所有元件可用于本公开的每一个替代实现方案中。此外,结合图1中的多个示例所描述的一个或多个元件可位于计算环境100的外部,而在其他实例中,可将某些元件包括在一个或多个其他所描述的元件以及未在所示出的实现方案中描述的其他元件之中,或者某些元件可作为一个或多个其他所描述的元件以及未在所示出的实现方案中描述的其他元件的部分。另外,图1中所示出的某些元件可以与其他组件相组合,并且可用于除本文所描述的那些目的之外的替代目的或附加目的。

现在转向图2中的示例框图,示出示例系统,该示例系统包括能够在一个或多个网络(如,130)上通信或交互的示例移动用户设备205和dlp服务器210。在一个示例实现方案中,移动用户设备205可包括一个或多个处理器设备212和一个或多个存储器元件214,以及能够使用处理器212和存储器元件214来执行和支持的附加的组件、应用和子系统。例如,移动用户设备205可包括多个子系统218,例如,电池驱动器、网络访问、显示设备、数据端口、扬声器、通话、等等潜在的许多此类示例。移动用户设备205可进一步包括各种应用224(或“移动app”)以及其他基于软件和/或硬件的组件和功能。例如,在一个示例实现方案中,移动用户设备205可包括诸如与linux内核对接的lsm之类的内核安全管理器216、结合安全管理器216进行操作的dlp代理222以及与该dlp代理222分开或集成的其他组件。在一些示例中,此类示例组件可包括加密管理器228、vpn管理器230、标记引擎220、等等此类示例。

在一些实现方案中,内核安全管理器216和dlp代理222可用于提供对dlp策略238的、基于内核的实施。可将各种数据234存储并保持在移动用户设备205上,并且可针对控制某些类型和某些内容的数据234的访问和分发来定义dlp策略238。在一些实现方案中,可通过使用例如vpn管理器230和加密引擎228的替代方式来实施dlp。例如,vpn管理器230能够试图将涉及移动用户设备205的通信重新路由至虚拟私有网络、私有网络、企业网或包括一个或多个dlp实施工具的部署的其他网络中。在其他实例中,加密管理器228可对数据234中的至少一些进行加密,并且创建和管理加密容器,从而安全地容纳数据234的多个部分并且防止数据丢失,等等此类示例。

此外,在一些实现方案中,可例如基于适用于各自数据(如,234)的一个或多个策略238的标识来标记数据234。特定的数据文件(如,234)上标签236的存在可使对数据实施策略238变得简单化。此外,可结合dlp策略的实施使用和考虑位置数据和位置情境。可例如通过移动用户设备205上可用的全球定位系统(gps)来收集并提供支持此类实现方案的位置数据。实际上,一些应用224和子系统218能够利用gps服务,并且将地理位置检测功能并入这些应用和子系统的行为和操作中。例如,在一些实现方案中,移动用户设备205上所提供的数码相机232可向用户提供对使用该数据相机232捕捉到的照片进行地理标记的选项,等等此类示例。其他地理位置检测功能可包括例如基于蜂窝小区的功能、基于网络的功能和其他检测功能。

示例dlp服务器210也可包括一个或多个处理器设备242、一个或多个存储器元件244以及一个或多个基于软件和/或硬件的组件和功能,例如,设备管理器246、用户管理器248、策略引擎250、威胁情报引擎252、dlp工具254以及在本示例中未明确示出的其他安全工具、组件和功能。例如,用户管理器246能够管理并自定义dlp服务器与一个或多个移动用户设备(如,205)之间的交互,以提供dlp服务并应用为如设备数据256中所描述的、每个单独的设备(如,205)的属性定制的dlp策略。此外,示例用户管理器248能够管理描述与各种移动用户设备(如,205)相关联的各种用户简档的用户数据260。示例用户管理器248能够利用用户数据262进一步地自定义和标识相关于或适合于给定的移动用户设备/用户的dlp服务和策略258。

在一些实现方案中,策略管理器250可管理由dlp服务器210保持的策略258。策略引擎250可创建、补充、修改和管理向客户机用户设备(如,205)供应策略258的操作。在一些实现方案中,可在生成策略258以及例如基于各自的设备属性、用户属性、企业策略、服务提供商策略以及与特定的移动用户设备有关的特性将策略258分配到各种移动用户设备205时,考虑并利用描述一个或多个网络和系统中检测到的各种威胁和其他安全相关的条件的威胁情报数据262。此外,在一些实现方案中,示例dlp服务器210可通过远离移动用户设备(如,205)所部署的各种dlp工具254来提供dlp服务,各种dlp工具254例如是在诸如可将移动用户设备话务重定向到其的vpn之类的网络中实现的dlp工具,等等此类示例。

dlp服务(无论是在各自的移动用户设备(如,205)处在本地提供的,还是通过远程系统(如,210)提供的)可用于控制和监测出入移动用户设备的以及在一些实例中进而还出入要应用各种dlp策略238、258的设备的网络的数据。例如,dlp服务可防止数据从一个应用移动到另一应用,防止数据从移动设备205移动到外部服务器145或外部个人计算设备240,防止数据在多个用户设备之间移动,等等。dlp服务可进一步防止数据从外部源移动到给定的移动用户设备205,等等此类示例。

转到图3中的示例,示出简化框图300,该简化框图300示出可结合一个或多个移动用户设备部署的dlp解决方案套件。可结合移动计算设备上检测到的dlp事件来利用该套件中的dlp解决方案中的一个或组合。在一个示例实现方案中,dlp解决方案可包括例如,利用可用于使被重定向的话务实施一个或多个dlp策略的、基于网络的dlp工具和服务,将移动设备话务重定向到一个或多个私有网络(例如,虚拟私有网络(如,305))。可附加地或替换地利用诸如应用专用加密容器(如,310)之类的加密容器和操作系统加密容器(如,315)以保护移动设备数据免受丢失或泄露。此外,可利用诸如基于lsm的dlp解决方案之类的深度分析技术(如,320),例如,通过与内核对接的、以及利用安装在设备上的dlp代理的多项服务的安全管理器。

在一个示例中,移动dlp解决方案可通过设备内安全(例如,通过lsm模块)、设备外安全和经由vpn和基于网络的dlp工具和过滤器(包括稳健的专注于企业的网络dlp工具等此类示例)对移动设备话务进行的投机路由来提供2级的安全。

转到图4,示出简化框图400,该简化框图400示出在一些实例中,可由移动设备利用的、基于网络的dlp解决方案的示例实现方案。此类基于网络的方式可允许利用现有的、基于网络的dlp基础结构。例如,通过将移动设备话务强加到vpn405中,可将潜在敏感的话务和数据重新路由到稳健的dlp组件(如,410、415和420)能够检查内容并且基于该检查指示合适的动作的网络中。基于网络的dlp解决方案可包括:实施企业移动管理(emm)410的vpn技术;将话务重定向到安全的web网关415;例如在web网关、安全vpn会话处实现的、诸如实施一次性密码的vpn之类的数据丢失防护技术(如,420),等等此类示例。

转到图5a-5b中所示的示例,在一些实现方案中,可结合针对移动计算设备的dlp来利用多个加密容器。在图5a中的示例中,表示了加密应用的容器解决方案。此类容器(如,505、510和515)可包裹移动计算设备上的多个单独的应用,从而对于给定的应用,对特定的应用(如,520、525和530)所使用或生成的所有数据进行加密。在一些实例中,可针对特定的应用定制此类应用容器,而在其他实例中,可由任何种类的应用一般地使用基于操作系统的容器以对应用的i/o加密,该基于操作系统的容器被实现为供多个应用使用的一组可用的、经加密的文件系统(如,540、545和550)(如图5b中所示)。在一些实例中,用户可例如基于给定的应用利用或生成潜在敏感的数据的趋势来指定应当将哪些应用掩盖在容器中。移动设备管理系统(如,受移动设备管理(mdm)服务器535主管的移动设备管理系统)可进一步用于管理要用于移动计算设备的多个容器。通过使用应用容器,应用可具有专用的经加密的数据存储,并且可防止被包括在该存储中的数据被除对应于该经加密的数据存储的应用之外的其他应用访问、共享、操纵或控制。在一个示例中,安全容器应用可与企业移动性管理客户机对接。在一些实现方案中,第三方应用或未经明确授权与给定的应用一起操作的应用可能无法与对应的企业移动性管理客户机通信,或者无法访问应用的经加密的存储。在一个示例方式中,可为诸如企业数据之类的特定类型的应用数据预留应用容器,而诸如用户的个人文件之类的其余类型的数据保持不被加密。在另一示例方式中,可将该数据自身覆盖在容器中,以检查并控制由该应用访问的数据,等等此类示例。

图6a-6b示出基于安全模块的dlp解决方案的示例实现方式,诸如例如用于采用谷歌安卓tm或另一平台的智能电话或平板上的、基于lsm的dlp解决方案。应当理解,可采用dlp解决方案的组合。在一些实例中,可基于要被管理的数据、通信或事务的类型或情境来利用dlp解决方案套件中的特定的一个。例如,在一个示例中,未能成功地将话务重定向到vpn上的网络dlp部署中可能导致调用一个或多个其他dlp解决方案,例如,基于lsm的dlp解决方案,等等此类示例。例如,可针对各种情境、情景、数据类型、事务类型、通信、设备等中的任意一个定义dlp解决方案的分层结构。

在示例系统中,可在位于虚拟机层上的应用层中以及在安卓框架内提供一系列应用605、610、615和620。例如使用dalvik虚拟机(vm)625(或dalvik层)等等此类示例,在虚拟机层之内执行多个应用,从这个意义上说,可对这些应用进行容器化操作。系统内核630可位于虚拟机层之下,并且可与诸如lsm之类的安全模块635对接。该内核可包括绑定器(binder)模块640,该绑定器模块640具有相关联的设备/dev/binder。在一些实现方案中,可经由对内核630上的/dev/binder的i/o控制系统调用来促进多个应用之间(以及应用和设备子系统(如,645、650和655)之间)的大多数通信(如果不是所有的通信的话)。安全模块635可与内核绑定器640对接,以允许对i/o相关的系统调用的监测和拦截。此外,安全模块635可附加地与dlp代理对接,该dlp代理包括用于检查被拦截的系统调用的功能,以确定例如由该dlp代理保持的一个或多个策略是否适用于该被拦截的系统调用。

在一个示例实现方案中,如图6a中的示例中所示,dlp代理的功能的全部或一部分(例如,在一个示例中的策略引擎660和策略数据库665)可被结合或编码到安全模块635自身中。在其他实例中,期望通过将dlp代理逻辑置于安装在受监测的移动用户设备上的、以及在一些实例中位于平台的应用层中的dlp代理应用670中,以减少内核630中的覆盖范围。在任意一个实现方案中,dlp代理的策略引擎660可与由诸如远程dlp服务器等等此类示例之类的其他设备主管的dlp策略管理服务对接或集成,以接收并更新要应用于在移动用户设备上被拦截的系统调用的策略。

示例安全模块635可提供钩(hook)以允许内核扩展,从而控制和限制像盘写入、套接字写入(socket-write)、i/o控制、存储器映射操作等等之类的各种操作。安全模块635可访问所有的内核数据,并且结合dlp代理来利用该访问,从而在移动用户设备上实现细粒度的dlp策略。例如,与内核630对接的安全模块635可用于限制和监测包括读取、写入、创建的文件操作和其他操作。可检查并标记文件675以例如指示文件是否是敏感的,以及特定的策略是否适用于该文件。此外,可基于例如由安全模块635(或另一组件)添加到多个文件的多个特定的标签的存在来应用并实施多个策略。此外,可检查并扫描作为特定的系统调用或操作的主题的数据,以便例如检查这些数据中的、指示这些数据的机密或敏感性质的模式(例如,dlp策略中所定义的模式)。此类检查可导致动态地标识要将特定的策略应用于其并且对其执行dlp任务的此类机密的和敏感的数据。

图7包括简化的框图700,其示出dlp代理应用670和诸如lsm之类的安全模块635之间的示例交互。在此示例实现方案中,可将lsm配制成用于与内核绑定器640对接,以检查去往该绑定器640的i/o系统调用,并且潜在地拦截此类系统调用。可由lsm将经该lsm拦截的系统调用和描述此类系统调用的特性的数据传递到dlp代理670。该dlp代理670可包括用于评估被拦截的系统调用并且确定针对该移动用户设备的一个或多个dlp策略是否将应用于这些系统调用的逻辑和功能。如果针对被拦截的系统调用,没有dlp策略被标识或标识了许可的dlp策略,则该dlp代理可将结果返回到该lsm,该结果指示涉及特定数据的i/o的系统调用能够基于该移动用户设备的dlp策略继续进行。在其他实例中,该lsm可结合对特定系统调用的拦截来查询该dlp代理,并且该dlp代理可标识限制性更强的dlp策略适用于特定的被拦截的系统调用。这可提示要将dlp实施动作应用于与针对特定的被拦截的系统调用所标识的dlp策略相称的特定的系统调用。在一些示例中,此类动作可包括不允许该系统调用、编辑该系统调用、修改或替换或该系统调用的数据,等等此类示例。

在一些实现方案中,示例lsm635可拦截像读取、写入、发送、接收、i/o控制等之类的某些引起关注的系统调用,然后将描述该系统调用的信息以及受该系统调用影响或约束的数据传递到dlp代理670的策略引擎中。在一些实现方案中,该lsm635可响应于每一个被拦截的系统调用,与dlp代理670通信,从而获取关于该系统调用的和相关的数据的、符合一个或多个dlp策略的情报。该lsm可利用情报(例如,来自该dlp代理或与该dlp代理670通信的外部源等的情报)来执行诸如限制或修改被拦截的系统调用之类的dlp动作。

诸如结合图6a-6b以及图7所示出和描述的那些实现方案之类的实现方案可允许不修改该平台的内核、虚拟机层、操作系统框架、其他所安装的应用(如,705)或其他库(如,710)就实现稳健的dlp管理。当安全模块访问该设备上的所有i/o时,此类基于内核的安全模块可提供防止泄露的安全性。此类实现方案可进一步提供实现细粒度的dlp规则和实施动作的灵活性。例如,安全模块和dlp代理可用于:限制或监测设备操作(例如,加载/卸载,诸如不允许加载移动设备的usb驱动器的尝试,等等);限制或监测套接字(socket)操作(如,发送、接收、绑定、连接等);限制希望使用移动设备的联网能力的应用(例如,通过实现细粒度的策略、扫描从套接字读取/写入的数据,等等);以及限制i/o控制操作(例如,阻止剪贴板和其他应用对应用通信以及数据共享,等等),等等此类示例。

为了进行说明,多个应用可经由内核绑定器(以及对应的设备/dev/binder)彼此进行通信,例如,通过剪贴板,向共享存储器写入一些数据(例如,(ashmem,匿名共享内存),以及随后对/dev/binder的ioctl函数调用)。示例安全模块635可用于检测并限制对/dev/binder的此类函数调用。在示出应用上述讨论的多个原则的基于安全模块的dlp解决方案的灵活性的又一示例中,也可以阻止利用移动计算设备的独有的特性和特征集的复杂的攻击。例如,非结构化补充业务数据(或ussd)攻击已经得到了发展,这些攻击将具有tel://ussd链接的url提交到多个移动设备中,以企图使移动设备自动地对该ussd链接进行拨号,并且篡改该移动设备的sim证书。使用基于安全模块的dlp解决方案,可在内核层级将此类链接的引入作为i/o系统调用进行标识和拦截,并且由安全模块根据针对避免此类攻击所定义的策略来加以阻止。在又一示例中,还由恶意行为人通过利用nfc标签强迫移动用户设备的浏览器打开恶意网站等等此类示例利用了该移动计算设备的nfc能力。基于安全模块的dlp方式也可通过标识、拦截并阻止来源于该移动用户设备的nfc模块的i/o系统调用来修复这些攻击。

在又一示例实现方案中,基于安全模块的dlp解决方案可能能够拦截来自系统调用的、关于一些移动计算设备上的ussd代码、nfc通信和其他i/o功能的数据。例如,也可以拦截并处理来源于移动设备的蓝牙模块的i/o系统调用和其他系统调用以实施dlp策略。在一个示例中,基于安全模块的dlp解决方案可用于防止未经授权的蓝牙外部设备连接到该移动计算设备。例如,可定义除非在针对特定类型的启用蓝牙的设备所定义的某些条件下(例如,当该移动用户设备被检测(如,通过gps)为在给定的受信任的位置(如,该用户的家中或办公室中)时,等等此类示例条件),否则限制蓝牙设备连接到该移动用户计算设备的能力的策略。在另一示例中,可拦截旨在从该移动设备被发送的sms消息。可例如由该dlp代理分析这些sms消息以标识这些消息的目的地和/或有效载荷是否违反一个或多个dlp策略。例如,可根据一个或多个策略、模式或算法来分析该消息的内容,从而标识发送被标识为潜在敏感的数据的尝试。作为示例,可使用安全模块来拦截并阻挡或修改包括似乎要描述诸如信用卡号、社保号、pin号等之类的敏感信息的数据的sms消息,以实施对应于所标识类别信息的dlp策略,等等此类潜在的示例。

如上文所述,通过dlp代理的策略引擎,结合内核层级的基于安全模块的dlp解决方案,可使用内核处的安全模块来定义细粒度的dlp策略并将其成功地应用到所监测的i/o系统调用(和其他系统调用)。例如,可跨越包括sms、4g、蓝牙、相机、话筒、gps模块等的移动计算设备的各种i/o通道中的每一个通道来实现dlp防护。此外,与内核对接的安全模块可标识源自系统调用或以其他方式在系统调用中被涉及的子系统和/或应用。可标识并跟踪涉及系统调用的、诸如给定的文件所源自的ip地址和域的信息。在一些示例中,此类信息可用于通过基于从诸如各种源、域、ip地址、应用等的可信度之类的所跟踪的信息中标识出的模式定义并实施策略,以提供选择性的dlp控制。实际上,在一些实现方案中,可基于先前所跟踪并处理的、涉及特定实体或域的系统调用,标记在被标识为源自或涉及特定的已知实体或域的系统调用中所引用的数据,从而快速跟踪相关联的策略(如,专用于特定的实体或域的策略)的实施。此外,可基于通过所监测的系统调用所获取的信息等,使用基于安全模块的dlp解决方案以生成并保持信誉评分。

如上文所述,基于安全模块的dlp解决方案可包括用于标记在i/o系统调用中被拦截的数据的功能,等等此类示例。基于例如由dlp代理根据多个dlp策略中的一个dlp策略对数据进行的评估,可将这些数据标记为例如机密的、不可信的、私有的,等等此类示例。然后,可由dlp解决方案(例如,由dlp代理和/或安全模块)来保持此类标签。使用这些标签,可标识涉及所标记数据的后续的系统调用。基于该标签,可跳过对dlp代理处被拦截的系统调用的重新评估,而对该标签的标识使得自动标识出被映射至该标签(例如,基于先前的评估)的多个策略和/或dlp实施动作中的一个。在一个示例实现方案中,可在这些标签的存储中采用具有扩展属性的yaffs2文件系统。或者,可由诸如lsm之类的安全模块和/或dlp代理的策略引擎来保持和引用经标记的文件的数据库。

在一些实现方案中,除了向其他潜在的dlp解决方案提供的诸如加密容器之类的加密功能之外,还将安全模块用于基于由dlp代理保持的所标识的规则和策略来拦截系统调用中所包括的数据,并且动态地标识被拦截的数据具有敏感性的性质并且应当对其加密。相应地,在一些实现方案中,安全模块可在这些被拦截的数据在例如进入设备存储、进入设备应用、或进入设备子系统以便例如在该移动设备外部进行传递之前,对此类被拦截的数据进行加密。这能够允许根据细粒度的dlp策略,逐文件地对多个文件进行更高效的加密,而不是使用更粗犷的强制方式,例如,对整个文件系统、应用数据的全部等进行加密。通过自动地、以及没有用户进行明确的、逐文件的指定的方式对数据进行加密,可以按照加密格式来保持移动设备上最敏感的数据,从而防止例如数据诸如在与移动设备失窃或以其他方式丢失之类的情况相关的情况下泄露或丢失。

转到图8a-8c中所示的示例,可结合通过基于示例安全模块的解决方案而实施的dlp策略来利用允许对相应于移动计算设备的地理位置信息进行检测的现代移动计算设备的gps功能和其他功能。例如,可针对数据和系统调用的一个或多个不同类型来定义基于位置的策略。在一个示例中,可针对移动计算设备的相机定义基于位置的策略以保护对应于使用该移动计算设备的数码相机模块拍摄的照片以及以其他方式被下载到该移动计算设备上的照片的拍摄数据。类似地,诸如对应于音频数据的话筒、对应于视频数据的摄像机等等此类设备模块也可具有所定义的基于位置的策略。例如,可能期望保护已被检测为在诸如保密性公司、研究所、政府机构或其他设施之类的特定位置之内捕捉到的照片、音频数据、视频等以免于在与用户参与到该设施中或使用该设施密切相关的合适的情境之外被共享。例如,可定义对应的基于位置的策略,这些策略允许示例照片、音频和/或视频数据仅当移动设备被检测为位于相同的所定义的位置边界之内或位于其他可接受的、所定义的位置(如,由一个或多个地理围栏定义)之内时才能够被访问,能够被传递或能够以其他方式可在该移动设备上使用。相应地,可用通过内核处的示例安全模块所标识的基于位置的信息来标记在用户计算设备处接收到或生成的数据,从而标识此类数据,并识别适用于所拦截数据的等此类示例的、基于位置的策略。

在图8a中的特定的示例中,示出使用例如移动计算设备810上的数码相机模块捕捉照片或视频数据(被共同地表示为“拍摄数据”805)的说明性表示。此外,可例如使用该移动计算设备上的gps功能(或其他地理位置功能),结合对拍摄数据的捕捉来标识全球定位数据。相应地,可用标识全球定位数据以及描述捕捉到拍摄数据的一般位置(或者,在一些情况下的具体位置)的位置标签815来标记由移动设备810的相机捕捉的拍摄数据805。也可将类似的原则应用于生成诸如音频数据之类的其他数据的生成以及从其他源中接收此类数据。在此类示例中,地理位置数据可用于生成指示移动设备的使用、创建和对数据的访问的空间情境的位置标签。

如图8b中所示,继续描述之前的经标记的拍摄数据的示例,之后,用户却在除对应于位置标签的多个所允许的位置中的一个位置之外的位置中,可能尝试访问或共享该经标记的拍摄数据。可使用与示例内核对接的示例安全模块来拦截访问或共享经标记的拍摄数据的尝试,并且可例如通过该移动计算设备上的协作dlp代理来标识一个或多个策略,从而确定应当约束或阻止对经标记的数据的访问。例如,可标识基于位置的策略,已将该基于位置的策略定义为用于在特定的位置(或对应于该特定位置的、所定义的边界(包括地理政治边界))之外发现该移动设备的时候,限制对在特定的敏感位置之内获取的数据进行分享。相应地,如在图8c中的示例中所示,当在特定的位置之内检测到该移动计算设备时,也可利用基于位置的策略来标识对相同的、经标记的拍摄数据805的访问的后续尝试,该基于位置侧策略使得在该移动计算设备810被检测(例如,通过该移动该计算设备的gps模块等)为位于所允许的地理区域之内的时候,通过该移动计算设备810,允许用户访问或以其他方式使用经标记的数据。因此,可使用在移动计算设备的内核层级上的基于安全模块的dlp解决方案等等此类示例来监测并实施类似于其他dlp策略的、细粒度的基于位置的dlp策略。

图9a-9b示出示例流的图900a-b,其示出涉及移动计算设备的系统内核层级上的基于安全模块的dlp解决方案的示例技术。在图9a中的示例中,如905处所示,可例如由诸如lsm之类的与内核对接的安全模块来监测系统调用。如910处所示,可拦截与该移动计算设备的i/o功能有关的特定系统调用。可向该移动计算设备上的dlp代理查询适用于被拦截的系统调用的dlp策略。在一些实例中,可向dlp代理查询由安全模块监测的每一个系统调用。在其他示例中,安全模块可基于可由该安全模块访问的逻辑和规则,过滤出拦截哪些系统调用以及将哪些系统调用传递到dlp代理,这些系统调用诸如是可能与该移动计算设备的i/o功能有关以的以及与针对该设备的dlp目标和/或策略有关的系统调用,等等此类示例。如920处所示,可从该dlp代理处接收结果,并且在925处可例如由该安全模块基于接收到的结果和对应的所标识的dlp策略来执行动作。例如,来自该dlp代理的结果可指示适用于被拦截的系统调用的限制性的策略,该被拦截的系统调用使该dlp代理能够阻止、不允许、修改或执行对系统调用和/或符合所标识的策略的相关数据的某个其他动作。

转到图9b中的示例,也可在移动计算设备上实施基于位置的dlp策略。例如,可拦截涉及照片、视频或音频数据(包括使用该移动计算设备的相机、话筒和其他子系统所生成的此类数据)的系统调用。可例如由安全模块和/或dlp代理来标识系统调用中数据的类型和内容。此外,如935处所示,可标识对应于这些数据的位置信息。例如,可使用该移动计算设备上的地理位置功能来生成位置信息,并且在一些实例中,可用该位置信息来标记这些数据。实际上,在一些示例中,可针对在被拦截的系统调用中所标识的数据来标识该位置标签,等等此类示例和实现方案。如940处所示,可向dlp代理查询适用于被拦截的系统调用的dlp策略。在一些示例中,位置信息可指示创建或获取特定数据的位置。在其他示例中,位置信息可能不是直接地与这些数据的创建和获取有关,而是替代地指示应当与这些数据相关联(例如,根据一个或多个策略)的特定位置,例如,对应于有条件地允许或替代地限制对这些数据的访问或使用的位置。此外,如945处所示,可从dlp代理处接收结果。如950处所示,可基于接收到的结果,对被拦截的系统调用执行动作,例如,基于所标识的位置信息的、与针对这些数据所标识的、基于位置的dlp策略一致的动作,等等此类示例。

虽然已按照某些实现方案以及一般相关联的方法描述了本公开,但是这些实现方案和方法的变更和置换对本领域技术人员而言将是显而易见的。例如,本文中所描述的动作可按不同于所描述的顺序来执行,并且仍然实现期望的结果。作为一个示例,所附附图中描绘的过程并不一定要求所示的特定顺序、或顺序地来实现所期望的结果。在某些实现方案中,多任务处理和并行处理可能是有利的。此外,也可支持不同的用户界面布局和功能。其他变型落在所附权利要求的范围之内。

可在数字电子电路中,或在计算机软件、固件、或硬件(包括在本说明书中公开的结构和它们的等效结构)中,或在上述各项中的一个或多个的组合中实现本说明书中所描述的主题和操作的各实施例。本说明书中所描述的主题的各实施例可被实现为一个或多个计算机程序,即计算机程序指令的一个或多个模块,这些计算机程序指令被编码在计算机存储介质上,用于由数据处理装置执行或控制数据处理装置的操作。替代地或附加地,这些程序指令可被编码在人工生成的传播信号上(例如,机器生成的电、光、或电磁信号),生成该人工生成的信号以编码信息,用于向合适的接收机装置进行的传输,供数据处理装置执行。计算机存储介质可以是计算机可读存储设备、计算机可读存储基板、随机或顺序存取存储器阵列或设备、或它们中的一个或多个的组合,或者计算机存储介质可被包括在上述各项中。此外,尽管计算机存储介质本身不是传播信号,但是计算机存储介质可以是被编码在人工生成的传播信号中的计算机程序指令的源或目的地。计算机存储介质也可以是包括分布式软件环境或云计算环境的一个或多个单独的物理组件或介质(例如,多个cd、盘、或其他存储设备),或者计算机存储介质可以被包括在其中。

包括核心网和接入网(包括无线接入网)的网络可包括一个或多个网络元件。“网络元件”可涵盖各种类型的路由器、交换机、网关、桥接器、负载平衡器、防火墙、服务器、内联服务节点、代理、处理器、模块、或可用于在网络环境中交换信息的任何其他合适的设备、组件、元件、或对象。网络元件可包括支持(或以其他方式执行)与将处理器用于本文中所概括的屏幕管理功能相关联的作业的合适的处理器、存储器元件、硬件、和/或软件。此外,网络元件可包括便于其操作的任何合适的组件、模块、接口、或对象。这可包括允许有效地交换数据或信息的合适的算法和通信协议。

本说明书中所描述的各操作可被实现为由数据处理装置对储存在一个或多个计算机可读存储设备上的或从其他源接收到的数据执行的多个操作。术语“数据处理装置”、“处理器”、“处理设备”以及“计算设备”可涵盖用于处理数据的所有种类的装置、设备和机器,作为示例,包括可编程处理器、计算机、芯片上系统、或上述各项中的多个或组合。该装置可包括通用或专用逻辑电路,例如,中央处理单元(cpu)、刀锋(blade)、专用集成电路(asic)或现场可编程门阵列(fpga),等等此类合适的选项。尽管已将一些处理器和计算设备描述和/或示出为单个处理器,但是可根据相关联的服务器的特定需求使用多个处理器。引用单个处理器的目的在于,在适用时包括多个处理器。一般而言,处理器执行指令并操纵数据以执行某些操作。除硬件之外,装置也可包括代码,其创建用于所讨论的计算机程序的执行环境,例如,构成处理器固件、协议栈、数据库管理系统、操作系统、跨平台运行时环境、虚拟机或它们中的一个或多个的组合的代码。该装置和执行环境可实现各种不同的计算模型基础结构,如web服务、分布式计算和网格计算基础结构。

计算机程序(也称为程序、软件、软件应用、脚本、模块、(软件)工具、(软件)引擎、或代码)可以用任何形式的编程语言来编写,包括编译的或解释的语言、声明性或程序性语言,并且它可以按任何形式来部署,包括作为适合在计算环境中使用的独立程序或模块、组件、子例程、对象、或其他单元。例如,计算机程序可包括有形介质上的、当被执行时可用于执行至少本文中所描述的过程和操作的计算机可读指令、固件、有线或编程硬件或上述各项的任何组合。计算机程序可以但不必对应于文件系统中的文件。程序可被存储在将其他程序或数据(例如,存储在标记语言文档中的一个或多个脚本)保持在专用于所谈论的该程序的单个文件中,或保持在多个协调的文件(例如,存储一个或多个模块、子程序、或代码的多个部分的多个文件)中的文件的一部分中。可将计算机程序部署为在一个计算机上执行,或者在位于一处或横跨多个地点分布并通过通信网络互连的多个计算机上执行。

可将程序实现为通过各种对象、方法、或其他过程实现各种特征和功能的多个单个的模块,或在适当时可反而包括数个子模块、第三方服务、组件、库,诸如此类。反之,在适当时,各组件的特征和功能可被组合到单个组件中。在某些情况下,可将程序和软件系统实现为复合的经主管的应用。例如,可将该复合应用的各部分实现为企业javabean(ejb),或者设计时组件可具有将运行时实现生成到不同的平台中的能力,例如,j2ee(java2平台,企业版)、abap(高级业务应用编程)对象或微软的.net,等等。此外,应用可表示经由网络(例如,通过因特网)被访问并执行的、基于web的应用。此外,可远程地存储、引用或执行与特定的受主管的应用或服务相关联的一个或多个过程。例如,特定的受主管的应用或服务的一部分可以是与该应用相关联的、被远程地调用的web服务,而该受主管的应用的另一部分可以是被打包以供在远程客户机处进行处理的接口对象或代理。此外,经主管的应用和软件服务中的任意一个或全部可以是另一软件模块或企业应用(未示出)的子代(child)或子模块,而不背离本公开的范围。另外,受主管的应用的各部分可由在主管该应用的服务器处直接工作的用户以及远程地在客户机处工作的用户来执行。

本说明书中所描述的过程和逻辑流可由一个或多个可编程处理器执行,这些可编程处理器执行一个或多个计算机程序以通过操作输入数据并生成结果来执行多个动作。这些过程和逻辑流程也可由专用逻辑电路(例如,fpga(现场可编程门阵列)或asic(专用集成电路))来执行,并且装置也可被实现为专用逻辑电路(例如,fpga(现场可编程门阵列)或asic(专用集成电路))。

作为示例,适于执行计算机程序的处理器包括通用微处理器和专用微处理器两者,以及任何类型的数字计算机中的任何一个或多个处理器。一般而言,处理器将从只读存储器或随机存取存储器或两者中接收指令和数据。计算机的基本元件是用于根据指令执行多个动作的处理器以及用于存储指令和数据的一个或多个存储设备。一般而言,计算机还将包括用于存储数据的一个或多个大容量存储设备(例如,磁盘、磁光盘或光盘),并且/或者计算机将被操作地耦合以从或向用于存储数据的一个或多个大容量存储设备(例如,磁盘、磁光盘或光盘)接收或传输数据。然而,计算机不需要具有此类设备。此外,计算机可以被嵌入到另一设备中,例如,移动电话、个人数字助理(pda)、平板计算机、移动音频或视频播放器、游戏控制台、全球定位系统(gps)接收器、或便携式存储设备(如,通用串行总线(usb)闪存驱动器)等等。适用于存储计算机程序指令和数据的设备包括所有形式的非易失性存储器、介质和存储器设备,通过示例的方式,其包括,半导体储存设备(例如,eprom、eeprom)和闪存设备;磁盘(例如,内部硬盘或可移动盘);磁光盘;以及cd-rom和dvd-rom盘。处理器和存储器可由专用逻辑电路补充和/或被结合进专用逻辑电路中。

为了提供与用户的交互,可将本说明书中所描述的主题的各实施例实现在具有用于向用户显示信息的显示设备(如,crt(阴极射线管)或lcd(液晶显示)监视器)以及用户可通过其向计算机提供输入的键盘和指点设备(如,鼠标或轨迹球)的计算机上。其他类型的设备可用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如,视觉反馈、听觉反馈、或触觉反馈;并且可按任何形式接收来自用户的输入,包括声音、言语或触觉输入。此外,计算机可通过向用户所使用的设备(包括远程设备)发送文档和从该设备接收文档与该用户交互。

以下示例涉及根据本说明书所述的各实施例。一个或多个实施例可提供装置、系统、机器可读介质和方法,其用于:监测对移动计算设备的内核的系统调用;拦截与该移动计算设备的输入/输出(i/o)功能有关的特定系统调用;标识适用于该特定系统调用的数据丢失防护(dlp)策略;以及至少部分地基于该dlp策略,对该特定的系统调用执行动作。

在一个示例中,可向该移动计算设备上的代理查询适用于该特定的系统调用的dlp策略,并且可从该代理处接收结果,该代理根据该代理标识dlp策略是否适用于该特定的系统调用来标识结果。

在一个示例中,来自该代理的结果标识没有dlp策略适用于该特定的系统调用,或标识许可的dlp策略适用于该特定的系统调用,并且动作包括将该特定的系统调用传递到内核,以进行处理。

在一个示例中,来自该代理的结果标识使用与该特定的系统调用的一个或多个策略,并且动作包括dlp实施动作。

在一个示例中,该dlp实施动作包括不允许该系统调用。

在一个示例中,该dlp实施动作包括:结合该特定的系统调用,修改要输入或输出的数据。

在一个示例中,该dlp实施动作包括:结合该特定的系统调用,对要输入或输出的数据进行加密。

在一个示例中,该代理是安装在该移动计算设备上的应用。

在一个示例中,该代理与远程安全服务器对接,以获取对应于所述移动计算设备的策略信息。

在一个示例中,将该代理逻辑被包括在与内核对接的安全模块中。

在一个示例中,该内核是linux内核,并且由linux安全模块(lsm)拦截该特定的系统调用。

在一个示例中,该特定的系统调用包括:利用该移动计算设备的sms、近场通信(nfc)、蓝牙和通话功能中的至少一个,输出特定的数据。

在一个示例中,该特定的系统调用包括:利用该移动计算设备的相机、话筒和全球定位系统中的至少一个,输入特定的数据。

在一个示例中,可基于所标识的dlp策略,对受制于该特定的系统调用的特定的数据进行标记。

在一个示例中,可接收涉及该特定的数据的后续的系统调用,可标识该标记操作,并且可至少部分地基于该标记操作,对该后续的系统调用执行动作。

在一个示例中,在进程虚拟机容器中运行该移动计算设备的应用。该进程虚拟机容器可以是dalvik进程虚拟机。

在一个示例中,系统可包括处理器设备、存储器元件、数据丢失防护(dlp)代理和安全管理器。系统可进一步包括虚拟私有网络管理器,其适用于将涉及该移动计算设备的输入/输出(i/o)尝试重新路由至采用网络级dlp的虚拟私有网络中。系统可进一步包括应用级或操作系统级容器,用于对该移动计算设备的数据进行加密的存储。系统可进一步包括远程安全服务器,其用于向该dlp代理提供策略信息。该系统可以是该移动计算设备。

一个或多个实施例可提供装置、系统、机器可读介质和方法,其用于拦截涉及拍摄数据的、对移动计算设备的内核的系统调用。可至少部分地基于该移动计算设备的检测到的位置,标识适用于使用该拍摄数据的、基于位置的数据丢失防护(dlp)策略。可至少部分地基于该基于位置的dlp策略和该移动计算设备的位置,对被拦截的系统调用执行动作。

在一个示例中,当该移动计算设备位于特定的地理位置之外时,基于该基于位置的dlp策略,阻止输出该拍摄数据的尝试。

在一个示例中,该内核是linux内核,并且由linux安全模块(lsm)拦截该特定的系统调用。

在一个示例中,该代理是安装在该移动计算设备上的应用。

在一个示例中,该代理与远程安全服务器对接,以获取对应于该移动计算设备的策略信息。

在一个示例中,将该代理逻辑包括在与内核对接的安全模块中。

在一个示例中,特定的系统调用包括利用该移动计算设备的sms、email、近场通信(nfc)、蓝牙和wifi功能中的至少一个,输出该拍摄数据。

在一个示例中,在进程虚拟机容器中运行能够利用该拍摄数据的该移动计算设备的应用。该进程虚拟机容器可包括dalvik进程虚拟机。

在一个示例中,该拍摄数据包括视频数据。

在一个示例中,标识该基于位置的dlp策略包括:向该移动计算设备上的代理查询适用于该拍摄数据的dlp策略;以及从该代理处接收结果,该代理标识dlp策略是否适用于该拍摄数据,该结果标识该基于位置的dlp策略。

在一个示例中,在特定的地理区域之外,该基于位置的dlp策略限制对该拍摄数据的访问。可使用地理围栏定义该特定的地理区域。该地理区域可对应于创建该拍摄数据的位置。

在一个示例中,该系统调用涉及该拍摄数据的输入,并且该拍摄数据来源于该移动计算设备上的相机。

在一个示例中个,动作包括:用位置信息标记该拍摄数据,基于经标记的位置信息,对该拍摄数据实施基于位置的dlp策略。

在一个示例中,该位置信息对应于捕捉该拍摄数据的位置。

在一个示例中,该位置信息对应于在捕捉该拍摄数据时,使用该移动计算设备捕捉到的地理位置数据。

在一个示例中,可接收涉及该拍摄数据的、后续的系统调用,可标识该位置数据,并且可结合向该代理适用于该拍摄数据的dlp策略的查询,传递该位置数据。至少部分地基于该标记操作,对该后续的系统调用执行动作。

在一个示例中,系统可包括处理器设备、存储器元件和安全管理器。系统可进一步包括用于生成该拍摄数据的数码相机。该系统可以是该移动计算设备。

在一个示例中,系统可进一步包括dlp代理,并且标识该基于位置的dlp策略可包括:向该移动计算设备上的代理查询适用于该拍摄数据的dlp策略;以及从该代理处接收结果,该代理标识dlp策略是否适用于该拍摄数据,该结果标识该基于位置的dlp策略。

可在计算系统中实现本说明书中所描述的主题的各实施例,该计算系统包括后端组件,如作为数据服务器的后端组件;或者包括中间件组件,如应用服务器;或者包括前端组件,如具有图形用户界面或web浏览器的客户机计算机,客户可通过该图形用户界面或web浏览器与本说明书中所描述的主题的实现进行交互;或者包括这些后端、中间件或前端组件中的一个或多个的任意组合。系统的组件可通过任何形式或任何介质的数字数据通信(例如,通信网络)来互连。通信网络的示例包括用于促进系统中的各计算组件之间的通信的任何内部或外部的网络、多个网络、子网、或上述各项的组合。网络可在多个网络地址之间传递例如网际协议(ip)分组、帧中继帧、异步传输模式(atm)单元、语音、视频、数据、以及其他合适的信息。网络也可包括一个或多个局域网(lan)、无线电接入网(ran)、城域网(man)、广域网(wan)、因特网的全部或部分、对等网络(例如,自组织对等网络)、和/或一个或多个位置处的一个或多个任何其他通信系统。

计算系统可包括客户机和服务器。客户机和服务器一般彼此远离,并且通常通过通信网络进行交互。客户机和服务器的关系凭借在各自的计算机上运行并且具有相对于彼此的客户机-服务器关系的计算机程序来产生。在一些实施例中,服务器将数据(如,html页面)发送到客户机设备(如,为了向与该客户机设备交互的用户显示数据并且从该用户处接收用户输入)。可从服务器处的客户机设备中接收在客户机设备处生成的数据(如,用户交互的结果)。

虽然本说明书包含许多具体实现细节,但这些具体实现细节不应当被解释为对任何发明或可声称权利的范围的限制,而是被解释为针对特定发明的特定实施例的特征的描述。在本说明书中多个单独的实施例的情境中所描述的某些特征也可被组合地实现在单个实施例中。反之,在单个实施例的情境中所描述的各种特征也可以单独地或以任何合适的子组合的形式被实现在多个实施例中。此外,虽然多个特征在上文中可能被描述为以某些组合的方式起作用,并且甚至最初是如此要求保护的,但是,来自所要求保护的组合的一个或多个特征在一些情况下可从该组合被删去,并且所要求保护的组合可以针对子组合、或子组合的变型。

类似地,虽然在附图中以特定顺序描绘了多个操作,但这不应当被理解为:要求按所示的特定顺序或顺序地执行此类操作,或者要求要执行所有示出的操作才能达成期望的结果。在某些情况下,多任务处理和并行处理可能是有利的。此外,将上文所描述的各实施例中的各种系统组件分开不应当被理解为在所有实施例中都要求这样分开,并且应当理解,所描述的程序组件和系统一般可以一起被集成在单个软件产品中或被封装进多个软件产品中。

因而,已描述了本主题的特定实施例。其他实施例落在所附权利要求的范围之内。在一些情况下,权利要求中叙述的动作可按不同顺序来执行,并且仍实现期望的结果。另外,在所附附图中描绘的多个过程不一定要求所示出的特定顺序或要求顺序地来实现期望的结果。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1