CN103778378A - 用于控制通过移动计算设备执行的操作的方法和装置 - Google Patents
用于控制通过移动计算设备执行的操作的方法和装置 Download PDFInfo
- Publication number
- CN103778378A CN103778378A CN201310105245.6A CN201310105245A CN103778378A CN 103778378 A CN103778378 A CN 103778378A CN 201310105245 A CN201310105245 A CN 201310105245A CN 103778378 A CN103778378 A CN 103778378A
- Authority
- CN
- China
- Prior art keywords
- data
- local
- application program
- module
- file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6209—Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/54—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by adding security routines or objects to programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2113—Multi-level security, e.g. mandatory access control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2123—Dummy operation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Stored Programmes (AREA)
Abstract
移动计算设备的巨大成功已经伴随着雇员们在他们自己的计算设备上使用公司数据从根本上改变了企业计算环境。公司仍愿意控制他们的数据,即使是在雇员的个人计算设备上,例如智能手机。本发明提供可使公司获得这样的控制的系统和方法而仍然允许使用者使用其希望在他的设备上使用的应用程序。被保护的数据将被其它数据取代。
Description
技术领域
本发明涉及移动计算设备。具体的,本发明涉及控制通过移动计算设备执行的操作。
背景技术
移动设备的使用,例如蜂窝电话,已经成为全球流行。而且,现在这些移动设备越来越多的用于存储和访问数据,取代仅充当单纯的电话设备。很多这样的移动设备通常被称作“智能手机”。然而,有不是智能电话甚至不是蜂窝电话的移动设备。例如,平板设备,手提电脑等。
移动计算设备面对着它们的用户的许多的安全挑战,对此在本领域内已引起注意。例如,一种方法促进记录通讯,如同公开于2007年5月的美国专利申请2007/111,704(“用于通讯记录的系统和方法”)所建议的,其公开用于保持由甲方的便携式电子设备引发或接收的通讯的记录的方法。所述通讯包括至少一个短消息服务(SMS)的消息,个人标识号(PIN)信息和蜂窝电话通话。所述方法包括接收每个通讯的数据记录,从数据记录中提取信息,和在日志文件中存储信息。
其它方法处理,例如,身份验证。例如,公开于2008年9月的美国专利申请2008/222,692(“设备发出的安全策略”),公开了用于在移动终端执行安全策略的方法和系统。移动终端可接触在安全策略基础上的身份验证实体。移动终端可接收来自说明移动终端的安全状态的身份验证实体的响应。移动终端可执行在接收的响应的基础上的安全操作。
公开于2009年2月的罗曼等人的专利WO2009/021200(移动设备上的管理和强制执行策略),描述了在移动设备上用于管理策略的系统,所述策略包括决定策略和主动策略。所述系统包括设备策略库,策略决策点,决策策略实施模块,和主动策略实施模块。也被公开的是在移动设备上执行策略的方法其主动的监控执行环境和自动的触发主动策略。所述方法进一步输出接口并提供评估和强制执行决策策略的功能。移动设备可使来自不同资源的策略结合,包括探测和避免策略冲突。
现今,现代的计算系统具有内核,其中包括的内核职责中有对系统的资源管理,包括内存。内存通常实质上被划分为内核空间和用户空间,其中在用户空间内运行的应用程序不被允许访问内核内存。设备驱动允许应用程序访问连接到计算机的外围设备。在本领域已做出努力以简化在应用程序和内核级进程之间的通讯和互操作性,例如对内核本身,设备驱动等。例如公开于2007年的TzruyaYoav M的美国专利US 7,844,442(“用于提供在计算机设备上执行的应用程序远程用户界面的系统和方法”),公开了包括配置执行软件应用程序的计算设备和通过数据通讯网络可通讯联络的连接到计算设备的至少一个远程用户界面(UI)的系统。所述远程UI包括至少一个硬件设备例如视频,音频或用户输入/输出(I/O)设备。计算设备被进一步配置在本地模仿硬件设备和改变由用于模仿的局部的硬件设备的软件应用产生的函数调用的方向到远程UI用来通过硬件设备进行处理。
此外,本领域内已将注意力集中于提供具有附加的能力而不改变或重新编译应用程序的应用程序和系统。例如,公开于2010年的TzruyaYoav M.等的美国专利US 8060460(“用于动态的测量被在计算设备上执行的应用程序提出和/或引用的对象的性质的系统,方法和计算机程序产品”),公开了用于动态的测量被执行的软件应用程序提出和/或引用的对象的性质的系统,方法和计算机程序产品,所述软件应用程序无需改变和重新编译原始应用程序代码。所述系统包括监控应用程序的执行的分阶段环境和索引图像和/或音频信息的条目于第一数据库。第二数据库由一个或更多的业务规则填充,其中每个业务规则被关联被索引的对象中的一个或更多。所述系统进一步包括运行环境,所述运行环境当图像和/或音频信息的条目在应用程序运行期间被产生时识别图像和/或音频信息的条目,使用第二数据库以确定被识别的条目是否与业务规则相关联,并响应识别的条目与业务规则关联的确定,测量对象和其相关的属性。
发明内容
本领域中有对下述方法和系统的需求,其允许组织简单的控制访问属于所述组织的信息的移动计算设备执行的操作,而无需改变或重新编译在设备上操作的应用程序。
因此本发明的目的在于提供允许组织如所述控制的方法和系统,不改变或重新编译在移动计算设备上操作的应用程序。
本发明提供用于控制由移动通讯设备执行的操作的方法,所述方法包括:
获得说明本地操作的规则信息条目,所述本地操作的执行应根据每个数据条目受到控制,和应被强制执行的强制执行的操作的准备,强制执行的功能在数据条目上执行。
本地操作包括:
读取数据记录;
监控将被执行于所述通讯设备上的本地操作;
和
根据探测由所述规则信息条目说明的本地操作将被执行,执行由规则信息说明的强制执行操作并提供给应用程序数据,其与原始数据不同。
在本发明的一些实施例中原始数据将被存储然后处理并传送给应用程序。
在一些实施例中它将被处理并返回给应用程序。
且在一些实施例中不同的数据,其为原始数据的函数将被传送。
在本发明的一些实施例中,获得规则信息条目包括解析由所述规则信息条目传送的信息。
本发明进一步提供用于控制由移动计算设备执行的操作的装置,所述装置包括:
用于获得说明本地操作的规则信息条目的策略模块,所述本地操作的执行应被控制和准备应被强制执行的强制执行操作;
被配置读取数据记录的数据读取模块;
用于执行被规则信息说明的强制执行操作的强制执行模块;和
用于根据所述强制执行操作处理数据的数据处理模块用来获得具有与所述数据记录类似的结构的处理数据。
附图说明
为了理解本发明和领会其如何在实践中被实施,实施例将被描述,仅通过非限制性的例子,并根据相关的服务,其中:
图1为根据本发明的某个实施例的示出在网络中的移动计算设备的基本概述图;
图2为依照本发明的实施例示出与移动计算设备通讯的认证服务器的示意图。
图3为依照本发明的实施例示出用于在移动计算设备中强制执行策略的系统的示意图。
图4为用强制执行功能取代本地操作的一个方法的流程图;
图5为用强制执行功能取代本地操作的第二个方法的流程图;
图6为示出根据本发明可替代的实施例用于在移动计算设备中强制执行规则的系统的示意图;
图7为根据本发明的某些实施例示出代理服务器的框图。
具体实施方式
在下述描述中在多于一个附图中相同的元件将被同样的引用标号引用。
此外,除非特别的说明,在本说明书中描述或引用的实施例可被附加和/或替换于其它描述或引用的实施例。
图1为根据本发明的某个实施例的示出在网络中的移动计算设备的基本概述图。在图中,云101代表通讯网络,例如蜂窝网络,因特网等。若干移动计算设备(例如蜂窝电话,平板设备,手提电脑和任何其它无线连接计算设备)被连接到网络。这些设备被显示为在云内。下文中,除非特别说明,条目“移动计算设备”,“移动设备”和“计算设备”会被交叉的使用。在这些计算设备之外那些标识为102的被关联于某个组织103(例如公司),而其它的,标识为104的没有被关联于组织中。
了解到许多现代的移动设备可读取数据,例如,除了作为电话设备的传统使用,图中也包括了这样的数据存储计算器105的图示,其为移动设备可访问的。在图中,数据存储计算器105被连接于小部分通讯网络101,尽管位于网络外部,它们可提供数据到在云中操作的设备以及到其它不作为通讯网络101部分的计算机控制的设备,也就是说,到作为其它网络的部分的设备,无需与通讯网络101交叉。然而,这不是限制且其它数据存储计算机,例如标识为106的一个,可为云的部分,也就是说,它们可被移动设备或其它设备读取,包括使用网关的设备。此外,还示出另一个属于组织103的数据存储计算机107。
不像常规的通讯,读取数据存储计算机通过蜂窝通讯协议完成,例如WAP(无线应用协议),或通过任何其它协议包括远程登录,FTP(文件传输协议),网络协议(包括TCP/IP和UDP/IP),超文本传输协议(HTTP)等。根据本发明的某个实施例,读取协议不包括电话通话和被称为SMS(短消息服务)的短消息。
当移动计算设备(102或104)读取数据存储计算机(105,106和/或107)时,它可从那里读出数据和/或在那里写入数据。读出数据包括对来自设备的数据和/或信息到计算机的任何转化。这包括,例如,上传和下载信息和应用程序,远程过程调用等。然后,那些本领域技术人员可认识到读取包括安全风险,例如下载病毒和特洛伊木马,执行危险的操作和其它。
此外,可认识到属于组织的数据存储计算机可存储安全数据使得组织可不被暴露给公众。取代直接存储数据于数据存储计算机107,数据可被存储于组织的其它计算机中,而数据存储计算机107可有权读取。因此,数据读取计算机107可中继读取到数据存储的位置。
此外,除了安全数据被存储于组织内的数据存储计算机内,还应认识到信息也可在移动设备102内。例如,移动设备102可具有通讯录,日历和获得包括(但不限于)创建于设备上的数据的本地存储数据的额外的程序,所述本地存储数据例如日志文件,照片,用户创建的文本文件等。这样的本地存储数据可使得组织感兴趣因此组织希望使其安全是可能的。因此,组织可感兴趣于具有对移动计算设备对此某种程度的控制,例如控制数据的传入和传出。
然而,这样的控制无需为了直接的安全执行完成。它也可由于其它原因完成。例如,具有GPS(全球定位系统)的移动设备,安装有导航软件,其与导航数据存储专用计算机通讯。然后,移动设备可使用从导航数据存储计算机获得的信息,例如,用于进一步传输数据到其它数据存储计算机或其它设备。考虑到组织的兴趣,这样的传输可能是不期望的。根据另一个例子,组织会强制它们相关的移动设备的用户安装某个email(电子邮件)阅读软件,而非其它的。还有另一个例子关于浏览需要认证的因特网网页所述组织可希望认证使用预定的组织的使用者名称和密码而不是允许设备使用者来认证。
因此,依照本发明的实施例组织可发现在使用的与其相关的移动设备上强制执行策略是有利的,其中策略包括规则。因此,依照本发明的实施例,图2示出与移动计算设备102通讯的策略服务器201。在图中,策略服务器201属于组织103,作为组织网络的一部分。然而,这是非强制性的并在替换实施例中策略服务器201可位于组织之外。例如,组织可从具有一个或更多策略服务器203的另一个组织202购入策略分配服务器用于分配策略到与多于一个组织相关的移动设备,例如103,104和可能的其它的。此外,移动设备可从多于一个策略服务器获得策略。
当在图中若策略服务器(201,203)与移动设备的连接似乎为物理连接时,应该认识到根据本发明所述连接为非物理连接,例如无线或蜂窝连接。
值得注意的是策略可被分配到使用任何可能的协议的移动设备。此外,策略可包括一个或更多操作规则,例如可被构造为XML(可扩展标记语言)代码,具有或不具有加密。例如,应该认识到策略中的部分规则针对与组织关联的所有的移动设备,一些针对部分移动设备,而将规则针对特定的设备也是可能的。此外,将规则针对设备可为动态的,也就是说策略针对设备只要它们满足某个条件。此外,一些规则可为永久的,也就是说,依时独立性,而其它的可具有终结时间。这些例子不是限制性的且规则的其它任何性质可被使用,若适合时或当适合时。
此外,需注意的是在组织中的信息技术(IT)管理者,也就是说,负责读取和影响到组织的策略的改变的任何人,可在任何需要的时候增加,移出或修改组成策略的规则。
目前在本领域具有已知的用于在移动设备上执行策略的方法,例如公开于WO2009/021200的方法。然而,依照本发明涉及的策略与现有技术已知的不同。不同于可激活和停止在移动设备上的操作和许多对规则的时间报告违规行为的现有技术,依照本发明,操作根据性能修改,然后操作被执行。它们不被停止。
图3依照本发明的实施例示出用于在移动计算设备102中强制执行策略的系统。移动设备具有存储设备301,用于长期存储。存储设备在其他任务中可被用于存储在移动设备获得的策略。策略管理器302,连接于存储设备并在该处读取,可在存储设备中存储从策略服务器(例如图2中所示的策略服务器201或203)获得的新策略。策略管理器也可读出来自存储设备的策略,并传达它们,或更精确的,说明规则的信息条目,到代理服务器303。
移动设备具有管理设备资源和允许应用程序操作使用这些资源的内核304。一般的,操作系统提供程序库,构成“本地库”,又名“系统调用”,当传送信息到内核时处理底层的细节。在不同的操作系统中本地库305可在适用的情况下被执行为单独的库或多个库。在示出的实施例中,本地库305包围内核而用户应用程序306不能直接读取内核。然而,这并不限制本发明,可认识到在某种操作系统中用户应用程序对内核的直接访问是允许的。在下文中,用户应用程序对内核服务的访问,不管是直接访问还是通过本地库,构成“本地服务”。
可注意的是存储设备301是被内核304管理的资源,而策略管理器302,其为应用程序,通过本地库305或在允许的情况下通过直接的内核访问读取存储设备。然而,为了简化说明,策略管理器302和存储设备301之间的连接在图中看似是直接连接的,没有包括内核。
本领域中精通计算机编程的人可认识到由内核304和在某个操作系统中的本地库305提供的本地服务的集合是已知的。此外,这样的精通的人可认识到每个对内核服务的调用以及对本地库服务的调用具有被服务所涉及的目标资源。例如,要求打开文件的调用为目标资源为文件的本地服务要求,或更精确的,目标资源为文件在存储设备中的地址。下文中对具有各自目标资源的本地服务的要求构成“本地操作”。
根据本发明的某个实施例,策略规则可涉及本地操作,作为操作的说明,所述操作被替换的强制执行,因此构成“强制操作”。本地操作可为由内核或本地库提供的本地服务,具有或不具有它们的目标资源的识别信息,具有或不具有操作应用程序的识别信息。例如,像“file-open certain-file.pdf;file-open other-file.pdf”可被解读为“每当本地操作试图打开certain-file.pdf,另一个文件.pdf应被替换的打开”。也就是说“file-open certain-file.pdf”为本地操作其目标资源为“certain-file.pdf”,而“file-open other-file.pdf”为强制执行的操作其中“other-file.pdf”为单独的目标资源。另一个非限制的例子为规则“file-open certain-file.pdfcertain-reader.exe;file-open another-file.pdf another-reader.exe”,按照其,每当本地操作“file-opencertain-file.pdf certain-reader.exe”将被执行(也就是说每当“certain-file.pdf”将被打开于“certain-reader.exe”),文件“another-file.pdf”应被替换的打开,使用“another-reader.exe”。
应被注意的是在上面提到的以及下文中的规则示例中所使用的语言要简洁清楚为了在讨论中阐明实施例。因此,称为“file-open”的服务在在内核或库中可行的服务中不是强制性的。“file-open”可对存在的服务名称是说明性的,例如作为列举或索引等,与存在的服务调用甚至若干服务调用相关。此外,示例并不限制规则的语法且任何可替代的附加的语法可以是合适的。
两个规则示例“file-open”和“certain-file.pdf”中的第一个构成说明本地操作的规则信息条目所述本地操作的执行应受到控制,第二个规则示例中的“file-open”,“certain-file.pdf”和“certain-reader.exe”也是。类似的,在两个示例“file-open”和“another-file.pdf”中的第一个构成说明强制执行操作的规则信息条目所述强制执行操作的执行应受到强制执行,第二规则示例中的“file-open”,“another-file.pdf”and“another-reader.exe”也是。
应注意的是在上两个规则示例中强制服务类似于本地服务而本地目标资源被规则改变,这样强制打开不同的文件替代本应打开的本地文件。同样的,在第二个示例中,规则说明在本地操作中操作不同于强制操作中操作的应用程序的应用程序。也就是说,在上述提供的两个规则示例中服务未改变(“file-open”)而参数改变。这不是强制性的且任何结合是可行的,包括在服务中执行改变的规则。此外,其带来的参数(文件和应用程序的识别信息)也不受限制,其它参数当可行时可被使用,例如涉及应该出现在操作本地服务的结果的信息。进一步的,应该考虑到替代或附加于在服务和/或参数中的强制改变,规则可强制执行其它功能的执行。例如,某规则,控制对组织的某个非常敏感数据的读取,可强制执行,例如授权过程(设备可因此读取组织中的某个授权实体并要求读取许可)。另一个示例为记录,当对此进一步理解时读者可认识到有数不尽的可被执行的其它操作附加于简单的改变参数的操作。
根据某些实施例,依照策略-规则监控和控制的本地操作为需要读取数据的操作。所述数据为属于远程数据存储计算机的数据,其可为通过与另一个移动设备的通讯获得的数据,或在本地计算设备创建的数据。例如,应用程序可要求存储于设备的通讯记录的列表或可要求访问由设备的摄像机拍摄的照片,或视频剪辑。
先前根据图1和图2解释了部分存储于设备上的数据可属于或可关联于组织。例如,设备上可存储有通讯记录。本领域精通人员可认识到不同的通讯记录的资源可不同。根据示例,一些记录可从属于组织的ExchangeTM服务器下载。其它的可能已从公开可用的服务例如GoogleTMgmailTM下载,还有其它的可能已被用户操作本地通讯应用程序(例如电话本或其它)在本地创建。在示例中,那些从组织的ExchangeTM服务器下载的记录可被认为它们(或更精确的,在该处存储的数据)好像它们属于组织,因此组织可希望控制从设备的访问。
因此,可能需要阻止那些组织的记录被列于在设备上运行的应用程序可读取的通讯记录的列表中。因此,单独的规则可为“list-contacts hide-contacts(Exchange)”。也就是说,根据探测对本地服务要求“list-contacts”的调用,资源为Exchange的联系人应为“hidden”。一般的,当应用程序操作服务“list-contacts”,数据记录被创建于通讯记录应被列举的地方(作为业内精通人员已知的,应用程序可被要求处理这样的记录的地址到库中)而表示通讯记录的数据被附加到列举-记录。数据可为在内存中或存储设备中或存储于其中的数据的拷贝中的通讯记录的地址。依照hide-contacts(exchange)那些资源为“exchange”的通讯记录不会被列举于列表-记录中并因此应用软件在联系人列表中不会看见它们。
有两个方法能够使本地操作替换为强制执行功能。
第一个方法在图4中被描述。本方法是关于用到强制执行功能的转移取代到本地功能(系统调用)的转移。
图中描述了获得这个操作的一个设置;也有其它的设置。
在步骤401中数据读取规则被读出。它们指的是在数据条目上需要被其它操作取代的操作。
强制执行的功能的集合在步骤402中被准备。
在移动计算设备中,系统调用查找表(也被称为输入地址表)当应用程序调用不同的模块中的功能时被使用。在这个表中有功能(或系统调用)名称和它们的内存地址。
在步骤403中应用程序将被安装且它的查找表被准备。
在步骤404中查找表将被检查,有关的条目将被确定。
在步骤405中它们将被合适的强制执行功能的地址取代。
在步骤406中应用程序将开始执行且它将要求执行某个本地操作/系统调用,但在表中的相关的地址已经被更改结果在步骤407中取代的强制执行功能将被执行。
这样的地址更改的例子可以为:
之前:
>>LOOKUP TABLE ENTRY
>>>>NAME OF FUNCTION FN1
>>>>NAME OF ORIGIN LIBRARY LIB1
>>>>ADDRESS OF FUNCTION0xAAAA
之后:
>>LOOKUP TABLE ENTRY
>>>>NAME OF FUNCTION FN1
>>>>NAME OF ORIGIN LIBRARY LIB1
>>>>ADDRESS OF FUNCTION0xBBBB-is address of FN1’
图中描述的操作为代理服务器303的操作的一个示例,先前根据图3描述。其本身是已知的即函数的重载可能静态的发生,例如在编译过程中,或在运行时动态的发生。
图5描述了替代的方法。某个操作系统包括钩子用于它们的系统调用,其可被用于调用替代的功能。若这样的钩子不被操作系统支持则它们可被准备。
在步骤501中数据读取规则被读出且在步骤502中相关的强制执行功能被准备。
在步骤503中钩子若需要的话将被准备,或若钩子存在的话准备钩子的使用规则。
应用程序将于步骤504中被启动。
基于被应用程序系统调用的钩子将在步骤505中被激活。
强制执行功能将在步骤506中发生。
取决于规则和数据读取的类型在强制执行的功能中可有若干类型的操作。
一种类型是数据处理,其中原始数据将被修改但其结构保留。
有各种类型的不允许修改的数据,这种情况下数据的拷贝将被准备,对其进行处理然后它将被返回到应用程序中。
另一种类型的操作仅是将数据替换为另一种类型的数据。
例如,若联系人的列表包括属于组织中的技术人员的通讯信息,可能存在禁止访问属于技术人员的信息的规则(本地操作)而所述规则要求返回组织的帮助台通讯细节作为代替(这将会是强制的功能)。在这种情况下,对帮助台的信息的记录将被人工的产生,或它可从规则条目或从计算设备的存储设备等取回。不管人工数据被产生或被取回的方式,人工数据可被插入,或嵌入列表(在移除技术人员的信息之后,之前或同时),而获得列表的应用程序将不知晓被执行的操作。理解了这个,读者可认识到人工的产生(或取回)返回于列表的完整的数据是可能的,取代仅产生部分。
许多读取限制系统现今已存在,试图在无合适的授权下读取数据,试图读取的功能将会失败,例如将不能读取数据。不像这些系统,根据本发明的某些实施例操作的功能或应用程序,将不会失败。它将返回与预期的可读取的记录类似结构和格式的记录,然而,内容将被处理(这将是强制执行功能)。
例如,应用程序试图读取安装于计算设备上的摄像机以拍照并获得图片文件。然而,规则可能限制这个读取。在读取限制系统中这个应用程序可能失败,在根据本发明操作的系统中摄像机可拍照,并甚至可能存储图片于设备的存储设备。然而,取代处理存储的图片或拷贝到应用程序,在根据本发明的实施例操作的示例中完全白色的图片可被返回。类似的,当试图从设备的摄像机,从设备的存储设备或甚至可能从远程资源例如网络服务器获得视频文件,本发明的实施例的确可返回视频文件,但是,它的内容可能是,白色噪音。类似的,回想起联系人列举示例,它为Exchange-资源的联系人被隐藏的列表被返回。通常,可根据本发明的实施例阐明,试图读取数据其中这个读取被一个或更多规则阻止的应用程序,可获得处理过的数据做为替代。
可认识到借助某些实施例处理过的结果可被预定。例如,一个实施例可一直返回白色图片对应拍照,而另一个实施例可一直返回组织的标识的图片。在这些实施例中足够宣称,在规则中,应用程序不能读取图片文件或某些图片文件。可替换的,能在规则内确定返回的图片。因此,这样的规则可宣称,例如,某试图读取图片文件的应用程序可获得白色图片,而其他应用程序可获得标识图片。
在处理过的数据被预定的特定情况下,处理过的数据可被预先准备,例如存储于计算设备的存储设备。在其他情况下处理过的数据可在运行时被创建。
目前为止的示例全部是关于从设备中读取设备。然而,这不是对发明的限制且根据某些实施例控制试图写入数据的操作是可能的。例如,规则可确定将通讯记录写入组织的ExchangeTM服务器是禁止的。因此,根据试图执行这样写入操作应用程序可获得成功的说明尽管没有数据被写入。可认识到在这样的情况下应已经被写入的数据可丢失。可替换的,这样的通讯记录可被写入,例如到本地的缓存取代写入ExchangeTM,因此保护数据不丢失和阻止它到达组织的ExchangeTM服务器。在其他情况下数据可在写入前被修改。例如,规则可定义每当应用程序试图储存通讯记录于Exchange,出现在通讯录中的电子邮件地址应被删除。因此,一般地说从用于写入的应用程序中获得数据的重载的强制执行的功能,可处理数据(忽略写入操作及写入不同的位置被认为是处理)。
理解了这个,则应认识到,至少在某些情况下重载的强制执行的功能应该类似于将被处理的数据结构和/或数据内容。
进一步理解本发明如何被实施,依照已被描写的实施例,注意力目前被吸引到根据本发明的替换的实施例在移动计算设备内执行规则的图6。计算机领域内精通的人可认识到计算设备,以及移动计算设备的内核304可读取物理内存和任何可行的存储设备601以及其它作为移动设备附加的设备(例如摄像机602,麦克风603,扬声器604和其它)。内核一般通过计算机总线或通讯子系统与跟其相连的附加的设备通讯。因此,简写为“驱动”的设备驱动,通过担当在附加的设备和内核之间的翻译器简化程序编制。在图中605,606,607和608分别为存储设备601,摄像机602,麦克风603和扬声器604的设备驱动。
在某个操作系统中有提供进程间通讯(IPC)服务的元件609。例如,在IOSTM中它叫做“binder”,在Windows8TM中叫做“filter”而在AndroidTM中也叫做“binder”。在下文中,元件609通常指“binder”尽管应认识到本发明不限制于AndroidTM且根据本发明的实施例任何等价的服务可提供,包括可被特别的发展为某个实施例的部分的专用服务而不被包括在操作系统中。
Binder609主要针对允许在用户空间元件之间的IPC,例如应用程序。然而,它也负责提供在用户空间元件和内核服务例如设备驱动之间的通讯。在后面的情况中binder可提供用于那些被绑定的设备驱动的接口。
根据本发明的实施例,代理服务器610可被绑定到binder 609,其中代理服务器重载binder。因此,调用binder,事实上是应用程序调用代理服务器。然后读取策略管理器302的代理服务器(见图3),可按照图4的流程图操作,轮流调用binder 609用来根据需要操作设备驱动。这被注意尽管代替调用binder 609操作设备驱动,根据可替换的实施例代理服务器可在适合的情况下直接调用装置驱动。
图7为根据本发明的某些实施例示出代理服务器610的框图。值得注意的是框图也可适合于图3的代理服务器303。代理服务器包括用于获得规则信息条目的策略模块701,每个条目说明一个其执行应被控制的本地操作和一个应被强制执行的强制执行操作。根据某个实施例策略模块701也可被配置用于解析由规则信息条目传送的信息,可认识到规则信息条目可包括以适合的任何形式的规则信息,包括(不限于)XML。
数据读取模块702被配置读取数据记录,可认识到模块知道其被配置来处理的数据记录。也就是说,若模块应读取从摄像机获得的图片文件,模块应知道如何读取该文件。若模块被配置读取通讯记录,模块应知道如何读取记录(例如,在文件中,在相关数据库中,等)和如何读出和/或写入存储在记录中的数据(即其应该熟悉被包括的领域)。其应被注意尽管数据读取模块702被配置读取存储的数据以填充它到数据记录内。为了这个目的,模块可根据情况的需要执行单独的读出操作或若干读出操作。类似的,当模块被要求写入数据到存储设备时它可执行单独的写入操作或多个写入操作。
强制执行模块703被配置用于强制执行规则,强制执行模块703被连接于策略模块701以允许说明规则的信息的接收。它也被连接于数据读取模块702,其操作在强制执行规则时被要求(至少在很多情况下)。例如,在那些当强制执行模块703被要求强制执行其返回的值在本地操作的原始值的基础上的强制执行操作的情况下,强制执行模块703可命令数据读取模块702读取原始数据。参考例如图5的502,其中当应被理解的根据某个实施例的强制执行模块703将说明本地操作的身份认证与其它读取数据要求的参数(例如文件名,和/或用于查询数据库的键值,等)一起传送给数据读取模块时原始数据被读取,而数据读取模块被配置用于执行操作。在某些情况中数据读取模块702可被要求,例如从存储设备取回预准备的数据。
从数据读取模块702进一步获得数据,强制执行模块703可命令数据处理模块704与之连接以处理数据来获得处理的数据。处理的数据应具有与本地操作希望返回的数据记录的结构类似的结构,而在记录中存储的数据根据强制执行操作被处理。在某些实施例中,强制执行模块可逐步的指导处理模块如何处理数据(在前面提供的技术人员的示例中,强制执行模块可指导数据模块改变第一技术人员的记录,然后处理第二技术人员的记录等,直到所有的技术人员的记录被处理)。可替代的,可立刻提供具有包括所有记录的列表给数据处理模块,其中有,例如技术人员的三个记录,以及如何处理它们全部的说明。
然后强制执行模块可提供处理的数据输出,取代期待的数据,可认识到在某个可替代的实施例中可由数据处理模块704提供输出,取代强制执行模块703.
可理解的是根据本发明的系统可为合适的程控计算机。同样的,本发明预期计算机可读的计算机程序用于执行本发明的方法。本发明进一步预期机器可读的内存,其可明确的具体化可由用于执行本发明的方法的机器执行的程序的指令。
上述描述的本发明可允许在雇员的移动计算设备上的公司控制,但通常对于移动计算设备是有用的。
在这些设备中应用程序单纯的并严重的依赖操作系统——因此当应用程序进入未被期待的数据被应用程序加工的情况时崩溃是常见的。
例如,若摄像机未操作,试图读出图片的应用程序会崩溃。上述发明可被使用为数据将被一直检查的方式,若坏数据发生它将被已知的数据替代——例如,在图片情况下空白图片可被引入。
应注意的是尽管本发明聚焦于数据保护,同样的方法可允许通过其它操作取代任何计算设备操作。
Claims (10)
1.用于控制通过移动计算设备执行的操作的方法,所述方法包括:
获得说明本地操作的规则信息条目,所述本地操作的执行应被控制,和准备应在其基础上被强制执行的强制执行操作并用强制执行操作取代本地操作。
2.根据权利要求1所述的方法其中本地操作为数据读取且强制执行操作提供不同的数据取代原始数据。
3.根据权利要求2所述的方法其中数据的所述不同通过利用适用于规则的数据取代所述数据获得。
4.根据权利要求2所述的方法其中数据的所述不同通过处理原始数据获得。
5.根据权利要求2所述的方法其中数据的所述不同通过复制原始数据并处理获得。
6.根据权利要求5所述的方法其中由应用程序引发的本地操作的转移被到强制执行功能的转移取代。
7.根据权利要求6所述的方法其中在应用程序查找表中的本地操作被强制执行功能取代。
8.根据权利要求1所述的方法其中钩子使得通过应用程序对本地文件的调用被转化为强制执行功能。
9.根据权利要求2其中获得规则信息条目包括解析由所述规则信息条目传送的信息。
10.用于控制由移动计算设备执行的操作的装置,所述装置包括:
用于获得说明本地操作的规则信息条目的策略模块,所述本地操作的执行应被控制,和准备对应被强制执行的强制执行操作;
被配置读取数据记录的数据读取模块;
用于强制执行被规则信息说明的强制执行操作的强制执行模块;和用于根据所述强制执行操作处理数据的数据处理模块用来获得具有与所述数据记录类似结构的处理的数据。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261616870P | 2012-03-28 | 2012-03-28 | |
US61/616,870 | 2012-03-28 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103778378A true CN103778378A (zh) | 2014-05-07 |
Family
ID=48082863
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310105245.6A Pending CN103778378A (zh) | 2012-03-28 | 2013-03-28 | 用于控制通过移动计算设备执行的操作的方法和装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20130263278A1 (zh) |
EP (1) | EP2645293A3 (zh) |
CN (1) | CN103778378A (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IN2013CH05777A (zh) * | 2013-12-13 | 2015-06-19 | Indian Inst Technology Madras | |
US9910979B2 (en) * | 2014-06-24 | 2018-03-06 | International Business Machines Corporation | Intercepting inter-process communications |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1767551A (zh) * | 2004-10-29 | 2006-05-03 | 京瓷株式会社 | 移动电话终端、程序管理方法及其计算机程序 |
US20100175104A1 (en) * | 2008-03-03 | 2010-07-08 | Khalid Atm Shafiqul | Safe and secure program execution framework with guest application space |
CN101877039A (zh) * | 2009-11-23 | 2010-11-03 | 浪潮电子信息产业股份有限公司 | 一种服务器操作系统的故障检测技术 |
CN102012812A (zh) * | 2010-11-24 | 2011-04-13 | Tcl集团股份有限公司 | 一种实现应用程序资源分享的装置、终端及其方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB0102515D0 (en) * | 2001-01-31 | 2001-03-21 | Hewlett Packard Co | Network adapter management |
US7437752B2 (en) * | 2002-09-23 | 2008-10-14 | Credant Technologies, Inc. | Client architecture for portable device with security policies |
US7694328B2 (en) * | 2003-10-21 | 2010-04-06 | Google Inc. | Systems and methods for secure client applications |
US7844442B2 (en) | 2005-08-16 | 2010-11-30 | Exent Technologies, Ltd. | System and method for providing a remote user interface for an application executing on a computing device |
EP1952656B1 (en) | 2005-11-17 | 2017-06-07 | BlackBerry Limited | System and method for communication record logging |
US7596536B2 (en) | 2005-12-01 | 2009-09-29 | Exent Technologies, Ltd. | System, method and computer program product for dynamically measuring properties of objects rendered and/or referenced by an application executing on a computing device |
US9191822B2 (en) | 2007-03-09 | 2015-11-17 | Sony Corporation | Device-initiated security policy |
WO2009021200A1 (en) | 2007-08-08 | 2009-02-12 | Innopath Software, Inc. | Managing and enforcing policies on mobile devices |
-
2013
- 2013-03-19 US US13/846,953 patent/US20130263278A1/en not_active Abandoned
- 2013-03-27 EP EP13161248.3A patent/EP2645293A3/en not_active Withdrawn
- 2013-03-28 CN CN201310105245.6A patent/CN103778378A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1767551A (zh) * | 2004-10-29 | 2006-05-03 | 京瓷株式会社 | 移动电话终端、程序管理方法及其计算机程序 |
US20100175104A1 (en) * | 2008-03-03 | 2010-07-08 | Khalid Atm Shafiqul | Safe and secure program execution framework with guest application space |
CN101877039A (zh) * | 2009-11-23 | 2010-11-03 | 浪潮电子信息产业股份有限公司 | 一种服务器操作系统的故障检测技术 |
CN102012812A (zh) * | 2010-11-24 | 2011-04-13 | Tcl集团股份有限公司 | 一种实现应用程序资源分享的装置、终端及其方法 |
Non-Patent Citations (2)
Title |
---|
BERDAJS J等: "Extending applications using an advanced approach to dll injection and api hooking", 《SOFTWARE: PRACTICE AND EXPERIENCE》 * |
HUNT G等: "DETOURS: BINARYINTERCEPTION OFWIN 3 2 FUNCTIONS", 《USENIX WINDOWS NT SYMPOSIUM》 * |
Also Published As
Publication number | Publication date |
---|---|
US20130263278A1 (en) | 2013-10-03 |
EP2645293A2 (en) | 2013-10-02 |
EP2645293A3 (en) | 2014-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10885182B1 (en) | System and method for secure, policy-based access control for mobile computing devices | |
US20190089810A1 (en) | Resource access method, apparatus, and system | |
CN101694687B (zh) | 代码签字系统及方法 | |
RU2595890C2 (ru) | Способ и устройство для исполнения команд действий пользователя | |
CN109818937A (zh) | 针对安卓权限的控制方法、装置、及存储介质、电子装置 | |
WO2015096695A1 (zh) | 一种应用程序的安装控制方法、系统及装置 | |
EP3694175A1 (en) | System and method for delegating authority through coupled devices | |
US20160307284A1 (en) | Methods and systems relating to contextual information aggregation and dissemination | |
CN102136049B (zh) | 一种终端应用的安全管理方法及系统 | |
CN112769871B (zh) | 跨链访问控制方法和装置 | |
US9280674B2 (en) | Information processing apparatus and method of controlling same | |
US9665732B2 (en) | Secure Download from internet marketplace | |
CN104348895A (zh) | 移动终端中程序间共享数据的方法及装置 | |
CN104683297A (zh) | 一种资源访问的方法及装置、服务器及终端 | |
CN112328486A (zh) | 接口自动化测试方法、装置、计算机设备及存储介质 | |
CN102902911A (zh) | 一种在Java虚拟机中安全运行第三方代码的方法 | |
CN113190287A (zh) | 外部设备对接方法、装置、计算机设备及可读存储介质 | |
CN115396421A (zh) | 数据传输与过滤方法、装置、电子设备及存储介质 | |
CN112528181B (zh) | 二维码管理方法、装置、计算机设备及可读存储介质 | |
CN103778378A (zh) | 用于控制通过移动计算设备执行的操作的方法和装置 | |
CN116566656A (zh) | 资源访问方法、装置、设备及计算机存储介质 | |
CN112579694A (zh) | 数字资源的处理方法、装置、存储介质和设备 | |
CN116318859A (zh) | 一种应用数据的安全访问系统及方法及系统 | |
US10044728B1 (en) | Endpoint segregation to prevent scripting attacks | |
Ahmed et al. | Digital evidence extraction and documentation from mobile devices |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140507 |