CN107111593A - 在刚性软件开发环境中允许数据分类的方法 - Google Patents

在刚性软件开发环境中允许数据分类的方法 Download PDF

Info

Publication number
CN107111593A
CN107111593A CN201680004796.5A CN201680004796A CN107111593A CN 107111593 A CN107111593 A CN 107111593A CN 201680004796 A CN201680004796 A CN 201680004796A CN 107111593 A CN107111593 A CN 107111593A
Authority
CN
China
Prior art keywords
data item
user
classification
data
application
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.)
Granted
Application number
CN201680004796.5A
Other languages
English (en)
Other versions
CN107111593B (zh
Inventor
Y·埃尔达
R·奥兹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Island Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Island Technology Co Ltd filed Critical Island Technology Co Ltd
Priority to CN202110393473.2A priority Critical patent/CN113094728A/zh
Publication of CN107111593A publication Critical patent/CN107111593A/zh
Application granted granted Critical
Publication of CN107111593B publication Critical patent/CN107111593B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/906Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/16Program or content traceability, e.g. by watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/031Protect user input by software means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Data Mining & Analysis (AREA)
  • Storage Device Security (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

公开了用于在标准隔离软件应用中支持数据修改、分类和IRM能力的强制执行的系统和方法,根据该方法和系统,附加代码安装于运行标准应用的用户的终端设备上。所述附加代码适于与标准应用使用的虚拟键盘交互,以形成添加有分类数据项和/或修改所述数据项的内容的特征的定制虚拟键盘,而不改变用户通常习惯的自然环境。然后创建包括设计的UI界面对象的定制虚拟键盘,用于以隐藏标签的形式将与所述数据项中的分类和修改相关联的输入添加到所述数据项的内容上。

Description

在刚性软件开发环境中允许数据分类的方法
技术领域
本发明涉及信息技术领域。更具体地,本发明涉及用于在刚性(隔离)软件开发环境中的软件应用中支持数据分类和加密、信息权利管理(IRM)能力的强制执行的方法,或者其它强制执行方法。
背景技术
信息分类用于许多组织中以在企业敏感信息上强制加密和其它保护方法(如,阻断传输),以免用户进行未授权访问和使用。这允许基于商业价值和机密级别强制执行这种保护方法。作为主要企业生产工具的移动设备的扩散应该像在其它终端设备中一样提供这种能力。
IRM主要包括强制执行访问和使用权利,以便确定哪个用户能够对数据执行动作,例如,复制、拖/放、打印、截屏、保存为、保存和查看操作。IRM的特征之一是能够分类应用所生成或消耗的数据项。
在移动设备的许多应用中,软件系统可以长期使用并可以针对用户或组织要求的新特征和添加的功能(例如,分类和保护功能)而被修改。因此,这种软件系统的可扩展性(系统能够扩展新功能,而系统的内部结构和数据流受到最小影响或不受影响)变得非常重要。可扩展性使得开发者能够扩展或添加软件的能力。一些方法包括用于允许插入用户自己的程序例程的设施以及定义新数据类型并定义新格式标记标签的能力。然而,难以创建允许向第三方应用添加能力或内容崇拜的方案。这甚至在应用大部分彼此隔离运行的操作系统(例如,iOS(Apple Inc.开发并且专门分发给Apple硬件的移动操作系统)和Android(基于Linux内核的移动操作系统))中更严重,这允许很少的方法使一个供应商软件封装与另一供应商的软件封装或本地(嵌入式)应用交互。实际上,标准(第三方)应用调用其它应用和/或处理代码的能力是非常有限的。
针对该问题的现有解决方案之一是创建替代应用,除了标准应用的所有固有能力外,其包括分类、修改数据项以及保护的能力。然而,开发这种替代应用是非常昂贵的,此外,其强迫用户替代他习惯的标准应用。
因此,目的是提供一种方法,通过支持数据分类和数据项操纵来支持标准的和第三方的应用并允许强制执行分类和保护能力,而不会中断用户的自然工作流。
另一目的是提供一种方法,在软件应用中支持数据分类以及加密和信息权利管理(IRM)能力的强制执行,这对于所有标准应用是通用的。
随着描述的进行,其它目的和优点将变得清晰。
发明内容
公开了一种在标准的隔离软件应用中支持数据修改、分类以及IRM能力的强制执行的方法,根据该方法,附加代码被安装于运行标准应用的用户的终端设备上。所述附加代码适于与标准应用使用的虚拟键盘交互,以形成添加有分类数据项和/或修改所述数据项的内容的特征的定制虚拟键盘,而不改变用户通常习惯的自然环境。然后创建包括设计的UI接口对象的定制虚拟键盘,用于将与在所述数据项中的分类和修改相关联的输入以隐藏标签形式添加到所述数据项的内容上。
当标准应用消费经分类或修改的数据项时,所述方法还可以包括:寻找所述隐藏标签,并根据预定保护策略决定所述数据项的进一步处理。还可以将专用代码嵌入到虚拟键盘的固有代码中,用于跟踪用户输入的字符,并检测键入的数据项的表示应该分类数据项的内容的关键字或字符串。
可以将没有发现隐藏标签的数据项连同对分类的请求反弹回发送者。可以响应于数据项的分类,自动加密数据项。
所述接口对象可以是虚拟按钮、复选框和图标,用于提供与数据项中的分类和修改相关联的输入。
数据项的内容中的修改可以包括添加免责声明、添加不可见的标记标签字符/对象、内容标记、水印或隐藏签名。
所述隐藏标签可以是呈现在消息主体的底部处的具有透明字体或非常小的字体的字符。
所述保护策略可以包括阻挡能够利用分类的数据项进行的一个或多个操作。
公开了一种在标准的隔离软件应用中支持数据修改、分类和IRM能力的强制执行的方法,包括以下步骤:
a)在运行所述标准应用的用户的终端设备上安装客户端应用,所述客户端应用适于与推送通知服务交互;
b)通过使用现有的推送通知服务在终端设备的外部强制执行数据项的分类;
c)在创建数据项并将数据项转发到另一实例以用于进一步处理时,经由所述推送通知服务向转发了所述数据项的用户发布推送通知,同时激活所述客户端应用以向用户显示界面,用户经由所述界面能够分类所发送的数据项;
d)由客户端应用向通知服务基础设施发送选择的分类;以及
e)将所创建的数据项转发到其目的地,或者限制用户发送的数据项,直到接收到分类结果。
公开了一种在标准的隔离软件应用中支持数据修改、分类和IRM能力的强制执行的方法,包括以下步骤:
a)在运行所述标准应用的用户的终端设备上安装附加代码,所述附加代码适于:
a.1)代表安装的标准应用向用户提供导航反馈;
a.2)在用户的手指悬停在屏幕的输入区域上时,代表应用与用户进行通信。
在一个方面,可以显示在屏幕的输入区域上悬停的可访问性按钮;同时允许用户利用UI点击所述可访问性按钮,所述UI允许所述用户为他编写的内容选择适当的分类,并基于他的选择向编写的内容添加可见或隐藏标记。
在另一方面,可以使用安全产品(例如,CASB、DLP或邮件服务器策略)来通过以下方式强制执行期望的安全策略:仅在所述安全产品基于所进行的分类运行了安全策略(例如,加密、标记或阻挡操作)之后,才允许安全的数据项目到达其目的地。
附图说明
在附图中:
图1示出了在应用内使用虚拟键盘的例子;
图2示出了通过可见标记使用图1中的虚拟键盘的例子;
图3-5示出了使用作为分类修改的虚拟键盘的替代的可访问性服务的例子;
图6示出了使用提议的分类工具的移动设备体系结构;
图7示出了使用第三方安全产品来强制执行期望的安全策略以提供安全强制的体系结构;
图8示出了将通知服务用于分类和用户批准的流程图;以及
图9示出了在标准的隔离软件应用中支持数据修改、分类和强制执行IRM能力的系统。
具体实施方式
在刚性(隔离)软件开发环境中在软件应用中支持数据分类和强制执行加密和信息权利管理(IRM)能力的提出的方法包括两个主要的实施例:
例子1.1:使用应用内的虚拟键盘
在该实施例中,虚拟键盘用于向标准应用提供输入数据,以便允许分类和修改由用户生成并由应用使用的数据项(利用了这一点:添加设计的定制键盘是操作环境允许的最常见的可用项),由此建立与标准应用的通用交互。这自然不需要对标准应用的代码进行任何干预,因为键盘服务是操作系统提供的而不是应用提供的。这允许为需要键盘与用户交互的任意应用添加定制键盘,定制键盘对于使用OS键盘服务的任意应用都是可用的。由于操作系统(例如,iOS和Android)能够允许用户选择期望的键盘或修改现有的键盘来匹配其需要,所以使用该固有能力以允许用户通过创建定制虚拟键盘并向该键盘添加分类数据项和/或修改数据项的内容的特征,来分类数据。这允许用户分类或标记其数据,而不改变用户通常习惯的自然环境。定制虚拟键盘可以包括接口对象,例如虚拟按钮、复选框和图标,用于提供与在数据项中的分类和修改相关联的输入。该特征允许软件开发者创建具有丰富的专用界面的期望的定制键盘,该专用界面具有期望的额外功能。例如,可以将分类按钮添加到虚拟键盘,例如“秘密”、“绝密”、“私有”、“公开”等。还可以通过从定制键盘将任何期望的输入法送到应用内容,来在数据项的内容内进行期望的修改,例如,添加免责声明、不可见的标记标签字符/对象、内容标记、水印、隐藏签名等。这还允许将特定的分类模式定义为定制键盘的默认模式,这可以由用户改变(或不改变),取决于分类策略。
定制键盘允许创建设计的UI,其将输入发送到用户正在键入的输入字段,由此允许根据用户在定制键盘中点击的按钮来修改内容(定制键盘和支持定制键盘的系统的例子包括iOS和Android设备,例如在:https://developer.apple.com/library/ios/ documentation/General/Conceptual/ExtensibilityPG/Keyboard.html中;或在http:// code.tutsplus.com/tutorials/create-a-custom-keyboard-on-andriod--cms-22615中描述的)。
根据一个实施例,可以将专用代码嵌入虚拟键盘的固有代码中,其将跟踪用户输入的字符,以便检测键入数据项中的可以表示应该对数据项的内容进行分类的关键字或其它字符串。
执行数据项的分类的一个方法是向内容添加隐藏标签。例如,在编辑的电子邮件消息的情况下,与“秘密”类别相关联的隐藏签名可以被添加到消息的文本中。标准地,隐藏标签可以是具有透明字体或非常小的字体的字符,其可以出现在消息主体的底部,从而不会引起用户的注意并实际上被隐藏。
在用户完成编辑消息之后,用户发送该消息,并且一旦电子邮件到达电子邮件基础设施系统(其是移动设备外发送消息的第一点,并可以例如是邮件服务器、代理、邮件传输代理(MTA-利用客户端-服务器应用体系结构从一个计算机传输电子邮件消息到另一计算机的软件))等,电子邮件系统就拦截该消息,寻找隐藏标签并决定对拦截的消息的进一步处理,作为保护策略的一部分。例如,电子邮件系统可以强制执行一组预定保护规则,例如阻挡一个或多个操作(例如,打印、保存、复制等)。类似的保护方案还可以应用于数据项向存储服务(例如“DROPBOX”或存储云)的传输。
如果电子邮件系统没有发现隐藏标签,则其可以将消息以及发送者必须在发送消息之前对消息分类的通知反弹回发送者。
根据另一实施例,定制虚拟键盘代码可以适于读取配置文件,该配置文件包括待强制执行的分类策略规则。根据该例子,如果用户将机密数据(例如,他的ID或他的社会安全号码)键入到消息主体内,则配置文件(其包括保护策略管理规则)可以指示定制键盘代码向用户呈现他当前编辑的数据项必须被分类为“秘密”的通知。在该情况下,数据项的内容可以在其它方消费或访问之前被自动加密。
图1示出了在应用内使用虚拟键盘的例子。在该情况下,用户编写电子邮件消息,并且修改用于键入的虚拟键盘以包括具有分类按钮的额外标记。用户应该在他发送消息之前按压分类按钮。
图2示出了使用如图1的虚拟键盘的例子,但是具有允许选择期望分类级别(在该情况下是“机密”)的可见标记,其在内容字段中示出。
替代地,用户可以点击通过登记可访问性服务而提供的按钮(而不是通过改变虚拟键盘向用户呈现分类UI)。从这点而言,所示的UI和UI动作(如插入可见/隐藏标记)是相同的。在下文的例子1.2中描述该替代例。
例子1.2:使用可访问性服务
可访问性服务是Android框架的被设计为代表安装于Android设备上的应用向用户提供替代导航反馈的特征。可访问性服务可以代表应用与用户通信,例如将文本转换为语音,或者在用户的手指悬停在屏幕的重要区域时的触觉反馈。例如在http:// developer.android.com/training/accessibility/service.html中公开了关于如何创建可访问性服务、处理从应用处接收到的信息、以及将所述信息报告回用户的技术的描述。
在该例子中,可访问性服务例如用于Android设备上,以便向用户提供分类界面。这例如可以通过显示悬停在屏幕上的输入区域之上的“气泡”或“按钮”来实现。通过点击该可访问性“按钮”,可以向用户显示在上述例子1.1中描述的相同界面。这包括显示一UI,其允许用户为其正在编写的内容选择适当分类,并且基于他的选择将可见的或隐藏标签添加到所编写的内容上。
图3-5示出了使用可访问性服务的例子。在该例子中,可访问性服务在第三方应用中在文本区域上引入漂浮按钮30,如图3所示。当点击漂浮按钮30时,可访问性服务打开分类UI 40,如图4所示。
图5示出了使用可访问性服务的例子,其中当选择期望的分类时,可访问性服务将所选分类级别的可见标签添加到文本字段(在该例子中是“内部”)。
图6示出了使用根据实施例提议的分类工具的移动设备体系结构。供应商提供的OS是封闭环境(例如,Apple的iOS)。设备具有作为设备的OS的一部分的嵌入式I/O服务61以及从外部源提供的第三方I/O服务62。设备可以运行多个应用,例如第三方文档编辑器或供应商的本地邮件客户端应用,第三方文档编辑器利用应用沙盒(其限制了可以执行代码的环境)运行。利用嵌入式键盘提供分类工具以创建分类键盘,以及利用嵌入式可访问性服务以创建分类可访问性服务64。
图7示出了使用第三方安全产品来强制执行期望的安全策略以提供安全强制的体系结构。这些产品可以包括云访问安全代理(CASB--位于组织的本地基础设备和云提供商的基础设施之间的软件工具或服务。CASB用作看门人,允许组织将其安全策略扩展超过其自己的基础设施)、数据丢失防护模块(DLP—用于确保终端用户不在公司网络外部发送敏感或关键信息)、或邮件服务器策略。根据提出的体系架构,在创建并分类了数据项之后,分类的项目到达安全产品,其基于分类运行安全策略(可以包括加密标记、阻挡等),并且只有这样,安全数据项(例如,安全文档或电子邮件)之后才能到达其目的地。
例子2:使用推送通知服务
在该实施例中,不需要隐藏标签。根据该替代实施例(其使用额外的方法),可以通过使用现有的推送通知服务,例如Apple推送通知(APN)服务(由Apple Inc.创建的经由通知中心将第三方应用的通知转发到Apple设备的服务),而在移动设备外部强制执行数据项的分类。这里替代(或除了)虚拟键盘,通常在内容离开移动设备时,使用骨干服务拦截用户数据项或与服务API交互。然后,骨干服务可以向用户请求输入(即,分类数据项),并且对数据项本身进行动作或者使用骨干服务API来采取相关动作(例如,分类、添加IRM、添加加密、限制数据项、提供警告等)。利用推送通知服务与Dropbox/Google drive/Salesforce相关以及自然与电子邮件相关。
提供推送服务的基础设施通常用于向设备的用户推送通知,例如,每当邮件服务器接收到发给用户的新消息时就推送弹出消息“您有新的邮件”。因此,当创建和发送新消息时,该现有的通知服务可以由邮件服务器用于向用户推送通知“您创建了新的邮件--请对其分类”。同时,APN服务将激活客户端应用(提前安装于用户的移动设备上),其将向用户显示界面(其可以包括用于不同类别的图标的按钮),经由该界面用户能够分类所发送的电子邮件。客户端应用将所选的分类发送给通知服务基础设置,并且只有这时,所创建的消息才将被转发给其目的地。直到邮件服务器侧接收到分类结果,用户发送的电子邮件消息将一直被限制。
再次,添加分类特征,而无需干预标准应用(在该例子中是邮件应用)。整个过程将在邮件服务器侧进行,这将结合客户端应用使用通知服务基础设施。该过程可以被足够快地完成以避免任何大量延迟,因为一般现有的通知服务基础设置执行地非常快速。
图8示出了将通知服务用于分类和用户批准的流程图。设备创建数据项(例如,文档或电子邮件)并尝试将其转发给目的地。在第一步骤801处,当离开设备时,数据项被安全模块(例如,CASB服务)拦截。在下一步骤802处,安全模块向设备发送推送通知以收集用户的批准或分类。在下一步骤803处,用户经由呈现给他的推送通知UI提供他的输入。在下一步骤804处,将用户的输入发送给安全模块。在下一步骤805处,根据安全策略和用户输入,保护数据项,并将数据项转发到其目的地或者阻挡数据项达到其目的地。
根据实施例提出的方法不需要关于标准应用的先验知识。不需要具有标准应用源代码,并且不改变应用二进制代码、接口或用户体验。此外,可以在标准设备上为标准用户实现提出的解决方案,而无需任何管理员访问。
图9示出了在标准的隔离软件应用中支持数据修改、分类和强制执行IRM能力的系统。系统90包括用户的终端设备91,其标准应用,其上安装附加代码。所述附加代码适于与所述标准应用使用的虚拟键盘交互,以形成添加有分类数据项和/或修改所述数据项的内容的特征的定制虚拟键盘,而无需改变用户通常习惯的自然环境。
设计的UI 92显示定制虚拟键盘,其包括界面对象,用于根据用户以隐藏标签的形式添加的输入来分类数据项,所述输入与数据项内的分类和修改相关联,所述隐藏标签被添加到所述数据项的内容。
系统90包括计算机化的设备93,其包括存储器94和处理器95,处理器运行安全模块96,用于寻找隐藏标签并根据预定的保护策略决定所述数据项的进一步处理。例如,在被用户或目的地(例如,电子邮件或文档)消费之前将数据项转换为安全数据项。
安全模块可以包括专用代码,其追踪用户输入的字符并检测键入的数据项的表示应该对数据项的内容进行分类的关键字或字符串。没有发现隐藏标签的数据项连同对分类的请求一起被反弹回发送者。
虽然通过图示描述了一些实施例,但是可以理解的是,可以通过许多修改、变型和适应以及通过使用落入本领域技术人员的范围内的多个等价物或替代方案来执行这些实施例,而没有超过权利要求的范围。

Claims (18)

1.一种用于在标准隔离软件应用中支持数据修改、分类和IRM能力的强制执行的方法,包括:
a)在用户的终端设备上安装附加代码,所述终端设备运行所述标准应用,所述附加代码适于与所述标准应用所使用的虚拟键盘交互,以形成被添加了分类数据项和/或修改所述数据项的内容的特征的定制虚拟键盘,而不改变所述用户通常习惯的自然环境;以及
b)创建包括所设计的UI界面对象的定制虚拟键盘,用于以隐藏标签的形式将与所述数据项中的分类和修改相关联的输入添加到所述数据项的所述内容上。
2.根据权利要求1所述的方法,还包括:在由所述标准应用消费经分类或经修改的数据项时,寻找所述隐藏标签并且根据预定保护策略做出关于所述数据项的进一步处理的决策。
3.根据权利要求1所述的方法,还包括:将专用代码嵌入到所述虚拟键盘的固有代码中,以用于追踪所述用户输入的字符并且检测所键入的数据项中的指示所述数据项的所述内容应当被分类的关键字或字符串。
4.根据权利要求1所述的方法,还包括:将没有发现隐藏标签的数据项连同对分类的请求一起回弹给发送方。
5.根据权利要求1所述的方法,还包括:响应于所述数据项的分类,自动加密所述数据项。
6.根据权利要求1所述的方法,其中,所述界面对象是用于提供与所述数据项中的分类和修改相关联的输入的虚拟按钮、复选框和图标。
7.根据权利要求1所述的方法,其中,所述数据项的所述内容中的修改包括:添加免责声明,添加不可见的标记标签字符/对象、内容标记、水印或隐藏签名。
8.根据权利要求1所述的方法,其中,所述隐藏标签是被呈现在消息主体的底部处的、具有透明字体或非常小的字体的字符。
9.根据权利要求1所述的方法,其中,所述保护策略包括阻挡能够利用经分类的数据项做出的一个或多个操作。
10.一种用于在标准隔离软件应用中支持数据修改、分类和IRM能力的强制执行的方法,包括:
a)在用户的终端设备上安装客户端应用,所述终端设备运行所述标准应用,所述客户端应用适于与推送通知服务交互;
b)通过使用已有的推送通知服务在所述终端设备的外部强制执行数据项的分类;
c)在创建数据项并且将数据项转发给另一实例以用于进一步处理时,经由所述推送通知服务向转发了所述数据项的所述用户发布推送通知,同时激活所述客户端应用以向所述用户显示界面,所述用户经由所述界面能够分类所发送的数据项;
d)由所述客户端应用向所述通知服务基础设施发送所选择的分类;以及
e)将所创建的数据项转发给该数据项的目的地,或者保持由所述用户发送的所述数据项处于限制,直到接收到分类结果为止。
11.一种用于在标准隔离软件应用中支持数据修改、分类和IRM能力的强制执行的方法,包括:
a)在用户的终端设备上安装附加代码,所述终端设备运行所述标准应用,所述附加代码适于:
a.1)代表所安装的标准应用向所述用户提供导航反馈;
a.2)在用户的手指悬停在屏幕的输入区域上时,代表所述应用与所述用户通信。
12.根据权利要求1所述的方法,还包括:
a)显示在屏幕的输入区域上悬停的可访问性按钮;
b)允许所述用户利用UI点击所述可访问性按钮,所述UI允许所述用户为所述用户编写的内容选择适当的分类,并且基于所述用户的选择向所编写的内容添加可见或隐藏标记。
13.根据权利要求1所述的方法,其中,安全产品被用于通过以下方式来强制执行期望的安全策略:只有在所述安全产品基于所做出的分类来运行安全策略之后,才允许安全的数据项到达所述数据项的目的地。
14.根据权利要求13所述的方法,其中,所述安全产品从包括以下的组中被选择:
云访问安全代理(CASB);
数据丢失防护模块(DLP);
邮件服务器策略。
15.根据权利要求13所述的方法,其中,所述安全策略包括加密、标记或阻挡操作。
16.一种用于在标准隔离软件应用中支持数据修改、分类和IRM能力的强制执行的系统,包括:
a)用户的运行所述标准应用的终端设备,附加代码被安装在所述终端设备上,所述附加代码适于与所述标准应用所使用的虚拟键盘交互,以形成被添加了分类数据项和/或修改所述数据项的内容的特征的定制虚拟键盘,而不改变所述用户通常习惯的自然环境;以及
b)所设计的UI,用于显示包括界面对象的定制虚拟键盘,用于通过允许所述用户以隐藏标签的形式添加与所述数据项中的分类和修改相关联的输入,来分类所述数据项,所述隐藏标签被添加到所述数据项的所述内容;以及
c)运行安全模块的计算机化的设备,用于寻找所述隐藏标签,并且根据预定的保护策略做出关于所述数据项的进一步处理的决策。
17.根据权利要求16所述的系统,其中,所述数据项的进一步处理包括:在被用户或目的地消费之前,将所述数据项转换为安全的数据项。
18.根据权利要求16所述的系统,其中,所述安全模块包括专用代码,所述专用代码适于:
a)追踪所述用户输入的字符,并且检测所键入的数据项中的指示所述数据项的内容应当被分类的关键字或字符串;
b)将没有发现隐藏标签的数据项连同对分类的请求一起回弹给发送方。
CN201680004796.5A 2015-01-21 2016-01-20 在刚性软件开发环境中允许数据分类的方法 Active CN107111593B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110393473.2A CN113094728A (zh) 2015-01-21 2016-01-20 在刚性软件开发环境中允许数据分类的方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201562105863P 2015-01-21 2015-01-21
US62/105,863 2015-01-21
PCT/IL2016/050065 WO2016116932A1 (en) 2015-01-21 2016-01-20 Method for allowing data classification in inflexible software development environments

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202110393473.2A Division CN113094728A (zh) 2015-01-21 2016-01-20 在刚性软件开发环境中允许数据分类的方法

Publications (2)

Publication Number Publication Date
CN107111593A true CN107111593A (zh) 2017-08-29
CN107111593B CN107111593B (zh) 2021-05-25

Family

ID=56416525

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202110393473.2A Pending CN113094728A (zh) 2015-01-21 2016-01-20 在刚性软件开发环境中允许数据分类的方法
CN201680004796.5A Active CN107111593B (zh) 2015-01-21 2016-01-20 在刚性软件开发环境中允许数据分类的方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202110393473.2A Pending CN113094728A (zh) 2015-01-21 2016-01-20 在刚性软件开发环境中允许数据分类的方法

Country Status (4)

Country Link
US (2) US10438015B2 (zh)
EP (1) EP3248108B1 (zh)
CN (2) CN113094728A (zh)
WO (1) WO2016116932A1 (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10438015B2 (en) * 2015-01-21 2019-10-08 Microsoft Israel Research and Development (2002) Method for allowing data classification in inflexible software development environments
CA2979951A1 (en) * 2015-03-16 2016-07-21 Titus Inc. Automated classification and detection of sensitive content using virtual keyboard on mobile devices
CN109426721B (zh) * 2017-08-29 2022-05-24 腾讯科技(深圳)有限公司 基于虚拟键盘的安全提示方法和装置
KR102456601B1 (ko) * 2018-02-23 2022-10-19 삼성전자주식회사 키보드 레이아웃과 관련된 기능을 제공하기 위한 장치 및 방법
US11443058B2 (en) * 2018-06-05 2022-09-13 Amazon Technologies, Inc. Processing requests at a remote service to implement local data classification
US11500904B2 (en) 2018-06-05 2022-11-15 Amazon Technologies, Inc. Local data classification based on a remote service interface
CN110858250A (zh) * 2018-08-24 2020-03-03 山东华软金盾软件股份有限公司 一种移动设备聊天工具发送信息的脱敏加密方法
US20200098013A1 (en) * 2018-09-22 2020-03-26 The Nielsen Company (Us), Llc Methods and apparatus to collect audience measurement data on computing devices
US11119887B2 (en) * 2018-11-29 2021-09-14 International Business Machines Corporation Attaching metadata to lines of code for alerting to changes in the code
US11144668B2 (en) * 2019-08-15 2021-10-12 International Business Machines Corporation Cognitively hiding sensitive content on a computing device
US11409626B2 (en) * 2019-08-29 2022-08-09 Snowflake Inc. Decoupling internal and external tasks in a database environment

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101859360A (zh) * 2009-04-08 2010-10-13 黄金富 一种文件保密处理方法和相应软件及解密阅读装置
US20120023182A1 (en) * 2006-10-13 2012-01-26 Pulfer Charles E Security classification of e-mail in a web e-mail access client
US20130283195A1 (en) * 2011-12-08 2013-10-24 Aras Bilgen Methods and apparatus for dynamically adapting a virtual keyboard
US20140267130A1 (en) * 2013-03-13 2014-09-18 Microsoft Corporation Hover gestures for touch-enabled devices
EP3248108B1 (en) * 2015-01-21 2020-01-08 Microsoft Technology Licensing, LLC Method for allowing data classification in inflexible software development environments

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030132950A1 (en) 2001-11-27 2003-07-17 Fahri Surucu Detecting, classifying, and interpreting input events based on stimuli in multiple sensory domains
US6622050B2 (en) * 2000-03-31 2003-09-16 Medtronic, Inc. Variable encryption scheme for data transfer between medical devices and related data management systems
US8468244B2 (en) 2007-01-05 2013-06-18 Digital Doors, Inc. Digital information infrastructure and method for security designated data and with granular data stores
US9015301B2 (en) * 2007-01-05 2015-04-21 Digital Doors, Inc. Information infrastructure management tools with extractor, secure storage, content analysis and classification and method therefor
WO2008104965A2 (en) * 2007-02-26 2008-09-04 Secure Islands Technologies Ltd. A system and method for automatic data protection in a computer network
US20120030187A1 (en) * 2008-04-24 2012-02-02 Marano Robert F System, method and apparatus for tracking digital content objects
US8806607B2 (en) * 2008-08-12 2014-08-12 Verizon Patent And Licensing Inc. Unauthorized data transfer detection and prevention
US9406048B2 (en) 2010-07-07 2016-08-02 Mark Meister Email system for preventing inadvertant transmission of propriety message or documents to unintended recipient
US9894047B2 (en) * 2010-09-09 2018-02-13 Kaseya Limited Method and apparatus of providing messaging service and callback feature to mobile stations
US9400660B1 (en) * 2013-03-12 2016-07-26 Intuit Inc. Customizing user interfaces of native applications for portable electronic devices
US20140282269A1 (en) * 2013-03-13 2014-09-18 Amazon Technologies, Inc. Non-occluded display for hover interactions
US20140316841A1 (en) * 2013-04-23 2014-10-23 Kofax, Inc. Location-based workflows and services
CN104063673B (zh) * 2014-06-20 2016-12-07 北京奇虎科技有限公司 一种在浏览器中进行信息输入的方法和浏览器装置
CN104063068A (zh) * 2014-06-25 2014-09-24 深圳市开立科技有限公司 一种基于Android原生输入法的显示方法及其系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120023182A1 (en) * 2006-10-13 2012-01-26 Pulfer Charles E Security classification of e-mail in a web e-mail access client
CN101859360A (zh) * 2009-04-08 2010-10-13 黄金富 一种文件保密处理方法和相应软件及解密阅读装置
US20130283195A1 (en) * 2011-12-08 2013-10-24 Aras Bilgen Methods and apparatus for dynamically adapting a virtual keyboard
US20140267130A1 (en) * 2013-03-13 2014-09-18 Microsoft Corporation Hover gestures for touch-enabled devices
EP3248108B1 (en) * 2015-01-21 2020-01-08 Microsoft Technology Licensing, LLC Method for allowing data classification in inflexible software development environments

Also Published As

Publication number Publication date
CN107111593B (zh) 2021-05-25
WO2016116932A1 (en) 2016-07-28
EP3248108B1 (en) 2020-01-08
US20170316220A1 (en) 2017-11-02
US20170329992A1 (en) 2017-11-16
US10552634B2 (en) 2020-02-04
US10438015B2 (en) 2019-10-08
EP3248108A4 (en) 2018-10-10
CN113094728A (zh) 2021-07-09
EP3248108A1 (en) 2017-11-29

Similar Documents

Publication Publication Date Title
CN107111593A (zh) 在刚性软件开发环境中允许数据分类的方法
US11593055B2 (en) Selective screen sharing
CN108234283B (zh) 检测外部社交媒体消息
US20210109722A1 (en) Naming Robotic Process Automation Activities According to Automatically Detected Target Labels
US8230481B2 (en) Methods, systems, and computer program products for reconfiguring an operational mode of an input interface based on a privacy level
WO2016112468A1 (en) Automated classification and detection of sensitive content using virtual keyboard on mobile devices
US20160117517A1 (en) Providing policy tips for data loss prevention in collaborative environments
US10599817B2 (en) Portion-level digital rights management in digital content
CN104838388A (zh) 安全本地web应用数据管理器
US9633001B2 (en) Language independent probabilistic content matching
WO2023091206A1 (en) Automatic generation of security labels to apply encryption
WO2015200618A1 (en) Light dismiss manager
TW201543233A (zh) 當保留意圖時對於訊息格式進行正規化
US20100275154A1 (en) System and Method For Securely Presenting Data
Mueller Security for Web Developers: Using JavaScript, HTML, and CSS
US11580248B2 (en) Data loss prevention
US9009628B2 (en) Method and system for processing information fed via an inputting means
JP2008217652A (ja) データ管理システム、データ管理サーバ、およびデータ管理プログラム
Shepherd et al. How to design browser security and privacy alerts
Adonis Mastering Information Technology for CXC CSEC CAPE
AU2016101490A4 (en) Automated classification and detection of sensitive content using virtual keyboard on mobile devices
US20150212658A1 (en) Indicating altered user interface elements
Haidenko English for Information Technology: Basic Computer Software
Sambin Usability of Safety Critical Applications in Enterprise Environments: Defining Guidelines for Error Preventing UI/UX Patterns and Improving Existing Interfaces.
Kita et al. The Practice of Basic Informatics 2021

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20180418

Address after: Haifa

Applicant after: Microsoft Israel research and development (2002) Limited

Address before: Israel in Beida

Applicant before: Island Technology Co., Ltd.

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20190926

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Haifa

Applicant before: Microsoft Israel Research and Development (2002) Co., Ltd.

GR01 Patent grant
GR01 Patent grant