CN109313631A - 敏感数据的安全移除 - Google Patents

敏感数据的安全移除 Download PDF

Info

Publication number
CN109313631A
CN109313631A CN201780036813.8A CN201780036813A CN109313631A CN 109313631 A CN109313631 A CN 109313631A CN 201780036813 A CN201780036813 A CN 201780036813A CN 109313631 A CN109313631 A CN 109313631A
Authority
CN
China
Prior art keywords
storage
data
distributed
workflow
data structure
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
CN201780036813.8A
Other languages
English (en)
Other versions
CN109313631B (zh
Inventor
G·N·德菲利皮
J·D·蒂普克
M·E·贝利
C·C·加德纳
G·D·古多尔
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
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN109313631A publication Critical patent/CN109313631A/zh
Application granted granted Critical
Publication of CN109313631B publication Critical patent/CN109313631B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • G06F12/1466Key-lock mechanism
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/162Delete operations
    • 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/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1052Security improvement
    • 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/2143Clearing memory, e.g. to prevent the data from being stolen

Abstract

代表性实施例公开了如何从云服务中未经授权的系统和/或服务移除溢出数据。一些实施例允许用户以安全方式移除溢出数据而不涉及管理员。溢出数据驻留在由所分配的存储位置支持的数据结构中。系统呈现用户界面,该用户界面允许用户输入允许标识所分配的存储位置的信息。溢出数据从数据结构溢出,从而在所分配的存储位置中留下空白,其中溢出数据的残余可以驻留在该空白中。系统创建数据结构的副本,从而移除空白。系统连接数据结构的副本来替代原始数据结构。随后以安全方式来覆写原始分配的存储位置以移除溢出数据的任何残余。

Description

敏感数据的安全移除
技术领域
概括地说,本申请涉及安全移除敏感数据。更具体地说,本文所公开的实施例示出了从云架构安全地移除溢出数据。
背景技术
随着越来越多的计算能力移动到云,无意披露数据也会产生问题。云计算架构允许用户以与用于执行应用的硬件解耦合的方式来部署业务线和其它应用。因此,当需要更多或更少的容量时,计算机硬件可以扩展或收缩以满足用户和应用的需要。另外,云服务允许用户购买如电子邮件、生产力应用、计费、CRM之类的服务以及许多其它服务。虽然这使得获取所需要的功能和容量变得容易,但是当数据溢出到并不期望具有数据的系统时,也会产生问题。
附图说明
图1示出了向并不期望具有数据的系统披露的数据的示例。
图2示出了云架构的示例。
图3示出了云架构的另一示例。
图4示出了移除溢出数据的系统的各个方面之间的示例图和交互。
图5示出了创建用于移除溢出数据的工作流的示例性流程图。
图6示出了用于移除溢出数据的示例性流程图。
图7示出了适合于实现用于执行本文所公开的方法的系统、用户设备等等的机器的代表性架构。
具体实施方式
以下描述包括例示说明性实施例的说明性系统、方法、用户界面、技术、指令序列和计算机器程序产品。在以下描述中,出于解释的目的,阐述了许多具体细节以便提供对本发明主题内容的各个实施例的理解。然而,对于本领域技术人员将显而易见的是,可以在没有这些具体细节的情况下实践本发明主题内容的实施例。通常,未详细示出公知的指令实例、协议、结构和技术。
概述
向并不期望具有数据的系统或服务披露信息可以以多种方式发生。在本公开内容的上下文中,这种披露将被称为“溢出”。因此,来自一个系统的数据“溢出”到另一系统,通常从经授权的系统和/或服务到未经授权的系统和/或服务。这样溢出的数据在本文中被称为溢出数据。有时由于用户不理解不应该在特定系统或服务上使用某种类型的信息而发生溢出。发生溢出的其它场景可以包括自动转发或在不应放置数据的系统上放置信息的情况。在本公开内容的上下文中,不应该放置数据的系统或服务将被称为未经授权的系统或未经授权的服务。
当溢出发生时,从溢出中恢复包括从未经授权的服务和/或未经授权的系统中移除溢出数据。然而,在当今的云计算环境中,移除溢出数据可能出现若干难以解决的技术挑战。如果用户联系系统管理员或来自云服务提供商的其他个人以移除溢出数据,则也许不应该看到溢出数据的个人必须参与,以帮助补救系统。另外,如果更多人知道溢出,则围绕该溢出的宣传风险增加。在某些情况和/或环境中,用户或公司可能不希望宣传溢出发生的事实。因此,本文所公开的某些实施例允许不需要管理员或其他此类个人参与的自助方法。在其它实施例中,可以遮蔽清理溢出时发生的事情的性质,以使得监视系统的活动的人不会自动得出溢出正被清理的结论。在该上下文中,用户将指代与本文所公开的系统和方法交互的任何个人或实体(包括自动化机制)。
提供有云服务的用户界面、管理工具和其它此类功能通常允许订阅云服务的用户移除不想要的数据,即,从数据库、文件、存储或其它位置移除。通常,用户和/或云服务与某种数据结构交互,例如文件、数据库(或其中的记录)、其它类似的数据结构。这些数据结构由物理存储中的已分配位置支持。在一些情况下,删除的项目(文件、记录、电子邮件等等)被放置在“垃圾箱”或其它保存区域中,用户随后可以“清空”该“垃圾箱”或保存区域以防止恢复信息。这些接口不会将用户暴露给实际的底层基础设施,例如数据所存储的实际位置,并且不会安全地移除信息。在许多实例中,当从所分配的存储位置移除数据时,分配存储位置被简单地标记为可用于存储其它信息。存储已删除数据的区域在本文中被称为所分配的存储位置内的“空白(whitespace)”。希望恢复信息的人可以采取步骤从所分配的存储位置读取信息,例如由帮助从硬盘驱动器和其它此类存储设备恢复“已删除”数据的实用程序(utility)来执行。
本文所描述的实施例通过一系列操作来安全地移除要求的信息,这些操作被设计为移除容易地恢复“已删除”信息的能力。在高级别处,这些操作包括创建所分配的存储位置的副本,该副本移除所分配的存储位置内的空白。通过制作移除空白的副本,新副本没有任何原本包含溢出数据的位置(本文中有时被称为溢出数据的残余)。
随后可以将先前链接(即,使用)所分配的存储位置的旧版本的任何实体从所分配的存储位置的旧版本断开并连接到新副本。此时,云服务的正在进行操作可以以新副本继续,并且系统可以安全地删除所分配的存储位置的旧版本,以便降低恢复敏感数据的可能性。可以执行许多其它操作,如下面更详细描述的。
在一些实施例中,系统提供用户界面,该用户界面允许用户输入将由系统用于清理溢出数据的信息。随后可以使用该信息来创建工作流,该工作流执行清理溢出数据所需要的操作,包括制作副本、利用副本替换现有数据以及安全地删除副本。
描述
图1示出了向并不期望具有数据的系统披露的数据116的示例100。在所示出的示例中,用户通过各种用户设备114(例如膝上型设备、台式机、平板设备、电话或其它设备)访问经授权的服务(例如私有云102中提供的内部服务104)和未经授权的服务(例如公有云106中的所获取服务108)两者。用户设备114通过网络112连接到私有云102,并且通过网络110连接到公有云106。网络112可以表示例如公司的专用网络,而网络110可以表示例如公共网络。尽管该图将两个网络112和110示为单独的网络,但它们也可以是相同的网络。
如果信息116在经授权的系统或服务104外部转移到未经授权的系统或服务108,则发生数据溢出。在本公开内容中,安全和/或经授权旨在传达敏感信息应该驻留的系统,并且不安全和/或未经授权旨在传达敏感信息不应该驻留的系统。另外,在系统或服务之间不进行区分,除非这对于理解本公开内容是重要的,例如在所分配的存储位置驻留在特定存储设备上的情况。
在该代表性示例中,内部服务104表示经授权的服务,而所获取服务108表示未经授权的服务。然而,一些内部服务104可以是未经授权的,并且一些所获取服务108可以被授权。如果信息116从经授权的服务/系统移动到未经授权的服务/系统,则发生溢出。
图2示出了云架构200的示例。该架构表示云架构通常如何对用户、开发者等呈现,并且示出了安全地移除溢出数据的一些技术挑战。该架构通常是实际底层云架构实现方式的抽象表示。例如,云架构202包括多个层,这些层表示与云架构202相关联的不同功能和/或服务。
硬件层218包括数据中心设施和机械系统以及存储、网络和计算基础设施。这些元件中的每个元件都提供启用管理接口以便与架构的较高级别交互。
虚拟化层216表示在云计算架构中使用的虚拟机、虚拟网络、容器等等。该层允许这些虚拟组件共享卷、磁盘、计算资源等等。它是提供资源池以及与云计算相关联的弹性的能力的一部分。
自动化层214、管理层212和编排层210在IT过程自动化方面从最细粒度到最宽宽度构建。自动化层214提供允许较高级管理系统与虚拟和物理资源之间的接口的基本技术和服务。
管理层212提供利用自动化层214技术来执行管理任务(例如检查补丁合规性、部署补丁、验证安装等等)的服务。管理层212提供通常限于服务器管理生命周期的一个特定方面(例如部署、打补丁、监视、备份等等)的基本过程自动化。
编排层210绑定多个产品、技术和过程以实现端到端IT过程自动化。编排层210帮助创建和/或运行IT工作流,该IT工作流对复杂任务(例如集群部署,主机修补,虚拟机供应等)进行自动化。
平台即服务(PAAS)层208可以包括各种平台类型产品,例如数据库、数据库管理系统、测试工具、部署工具、目录服务等等。软件即服务(SAAS)层206可以包括各种服务产品,例如电子邮件/即时消息传送、商业应用、社交网络、办公生产力和自动化、虚拟桌面等等。
租户自服务和管理员接口层204表示提供给用户以提供自助类型功能的那些服务和/或接口。例如,该层可以提供允许用户删除溢出数据的功能(在上述基本功能(即,删除数据的能力、清空垃圾箱等等)和本文所描述的允许安全删除溢出数据的功能两方面)。在一些实施例中,该功能可以是服务本身的一部分(即,数据共享服务、电子邮件服务等等)。在一些实施例中,该功能可以是云服务架构的一部分。在其它实施例中,使用其组合。
数据中心220是各种资源池222连同其组成缩放单元的表示。该数据中心表示示出了云计算架构带来的缩放和弹性。资源池222包括服务器(或计算)缩放单元226、网络缩放单元224和存储缩放单元228。缩放单元是能够在数据中心内部署的最小单元的服务器、网络和/或存储单元。当需求增加或减少时,缩放单元允许部署或移除更多容量。
网络缩放单元224包含可以部署的一个或多个网络230(例如网络接口单元等等)。例如,网络230可以包括虚拟LAN 232、234。计算缩放单元226通常包括包含多个处理单元(例如处理器238、240)的单元236。存储缩放单元228包含一个或多个存储设备,例如磁盘、存储附连网络(SAN)、网络附连存储(NAS)设备等等。这些被统一示出为SAN 242。每个SAN242可包括一个或多个卷,磁盘等242、246。
图2的架构200说明了经常呈现给云计算架构的用户的抽象级别。如果溢出数据最终在特定硬盘驱动器上的特定存储位置集中,则用户通常不能获得对特定存储位置的访问。这种访问最终会否定云计算架构的至少一些优点。为了清理溢出数据,第一道防线是用户使用由服务器和/或系统提供的工具从系统中移除溢出数据。这不会使溢出数据无法自身恢复,但确实移除了对溢出数据的简单访问。
为了降低恢复溢出数据的可能性,图2的逻辑架构200与云计算架构中使用的实际硬件和软件相关。图3示出了云架构300的示例的另一视图。该视图更加关注硬件并且示出了图2的更逻辑架构底层的资源。云计算架构300通常具有多个服务器或其它系统302、304、306、308。这些服务器包括多个真实和/或虚拟服务器。因此,服务器302包括服务器1连同虚拟服务器1A、1B、1C等等。
服务器通过一个或多个网络(例如网络A 310和/或网络B 312)连接和/或互连。服务器还连接到多个存储设备,例如SAN 1(318)、SAN 2(320)以及备份322。虽然备份322通常经由SAN或其它此类存储设备来实现,但出于解释的目的,此处单独调出备份322。SAN通常通过网络(例如SAN访问A 314和/或SAN访问B 316)连接到服务器。
图2的计算缩放单元226通常是服务器302、304、306和/或308的某个方面,如处理器以及与其相关联的其它硬件。网络缩放单元224通常包括或至少利用所示出的网络A(310)和B(312)。存储缩放单元通常包括SAN 1(318)、SAN 2(320)和/或备份322的某个方面。因此,可以将图2的逻辑云架构映射到图3的物理架构。如下面讨论的,该映射对于清除溢出数据是重要的。
图4示出了移除溢出数据的系统400的各个方面之间的示例图和交互。在该特定图中,示出了两个主要系统,服务器402表示与用户交互以收集用于清理溢出数据的信息的系统。该系统可以被称为清理系统和/或提供清理服务。服务器410表示具有溢出数据的云服务和/或系统,即,在所示出的SAN 412中的存储介质或某种其它存储设备或存储设备的组合上。具有溢出数据的云服务和/或系统将被称为目标服务、目标系统等等。
以此方式来架构系统存在益处。一个益处是清理溢出的系统没有溢出数据,并且因此在某种意义上,与数据溢出隔离开。因此,当执行各种操作以清除溢出数据时,服务器402继续以其全部资源来操作,并且在一些实例中,可以更容易地监视具有溢出数据的系统上发生了什么。在其它实施例中,服务器402和服务器410可以是同一机器,并且清理服务和目标服务可以驻留在同一组硬件上。
如先前讨论的,溢出数据通常存储在数据结构中,例如文件、电子邮件、数据库或其它数据结构。这些数据结构最终与驻留在一个或多个存储设备(例如存储器、磁盘(即,SAN 412)或其它设备)上的所分配的存储位置集相关联。存储溢出数据的数据结构可以是在硬件上运行的服务和/或系统的一部分。例如,如果溢出数据在存储在信息共享服务(如某种云存储系统、文档管理、个人云、社交网络、商业智能服务、工作流管理等等)中的文件中,则溢出数据驻留在该信息共享服务中,或者至少与该信息共享服务相关联。因此,信息共享服务和/或信息共享服务的用户连接到SAN上的存储用于该服务的信息(包括溢出数据)的位置。
术语“所分配的存储”和/或“所分配的存储位置”旨在广义地解释并获取用于存储数据的任何结构或机制,并且可以表示逻辑分配的存储位置、物理分配的存储位置或者其组合。在图4中,所分配的存储位置由所分配的存储位置416示出。在所分配的存储位置416内,溢出数据驻留,如由424和426指示的。用户可以利用由服务和/或系统(即,用于删除数据并“清空”垃圾箱或其它此类位置的云服务和/或云架构管理界面)提供的功能以移除溢出数据。如先前讨论的,这不会实际地移除数据,而是会使得存储溢出数据的位置被标记为可供存储系统重用。这在图4中示出,其中一旦删除了溢出数据,所分配的存储424和426就被标记为可用,如由418和420示出的。但是,底层数据不必被覆写并且可以恢复。
在某些实例中,删除数据将文件、数据库记录等等(即,包含溢出数据)放置在垃圾箱或其它保存区域中,其中如果需要则可以恢复数据。如果系统以此方式运行,则如何处理这种情况的暗示取决于系统如何操作的细节。如果系统制作数据的副本,则还应该清除该副本。然而,在许多实施例中,系统简单地将到文件、数据库记录等等的链接放置在垃圾箱中,并且数据继续物理地驻留在其原始位置。换言之,没有创建副本,并且已删除的数据只是标记为“已移除”并“放置”在垃圾箱中。直到清空垃圾箱,存储位置才被标记为可供重用。
因此,用户可以执行以移除溢出数据的第一操作是使用系统功能来移除溢出数据并清空任何垃圾箱。这将使得所分配的存储位置表现为在所分配的存储位置428中示出,其中保存溢出数据418、420的位置被标记为可供重用。本文所描述的方法和系统随后允许用户以不太可能进行恢复的方式安全地移除溢出数据。
为了安全地移除溢出数据,系统402向用户呈现用户界面424以收集由系统用于安全地移除溢出数据的的信息。例如,可以使用呈现引擎406或其它界面层组件来呈现用户界面。所收集的信息允许清理服务跟踪包含/曾包含溢出数据的所分配存储位置。这可以包括但不限于诸如存储数据的服务(即,电子邮件服务、数据共享服务等等)之类的信息、标识数据存储位置的帐户或其它信息、备份集、日期范围或其它标识信息,以允许系统查明应该移除什么备份等等。这将被统称为与溢出数据(或存储或曾经存储溢出数据的数据结构)相关联的“标识符”。因此,这种标识符可以是允许系统402确定存储或曾经存储溢出数据的位置的服务、帐户、系统、数据存储(即,文件、数据库和/或某种其它数据结构)、位置信息、备份集、其组合和/或任何其它标识符或标识符的组合。下面讨论的图5示出了示例性流程图,该流程图示出了收集用于允许安全地移除溢出数据的信息。
一旦清理服务已验证所收集的信息并且从用户接收到授权以便继续,清理服务就可以发起使得安全移除溢出数据的一个或多个功能。图5-图6示出了使得安全移除溢出数据的功能的示例。在一个实施例中,工作流引擎408用于代表用户来执行功能。在该实施例中,清理服务利用所收集的信息来创建工作流任务,并且一旦被用户授权,就将工作流放置到将由例如工作流引擎408执行的队列中。其它实施例可以使用不同的底层技术,例如脚本、或由云服务架构(即,由自动化层214、管理层212、编排层210、和/或其组合)提供的其它自动化。
由用户提供的信息允许工作流引擎408标识哪些所分配的存储位置包含溢出数据(即,418和420)。因此,该信息允许系统标识所分配的存储位置428连同存储位置418和420驻留在其中的服务器410(连同适当的虚拟服务器和其它资源)、SAN 412(或其它存储设备)等等。
工作流引擎408随后可以对信息施加适当的锁定,以防止任何进一步的改变,直到可以进行安全移除。在锁定就位之后,可以移除存储位置428中的空白。因此,在该过程中移除存储位置418和420。这可以以使得移除所分配的存储位置418和420并创建没有溢出数据的任何残余的干净副本422的任何方式来执行。在一个实施例中,执行备份功能以创建所分配的存储位置428的干净副本422,同时移除任何空白。所得到的副本422清除任何残留的溢出数据(即,418和420)。
一旦执行了备份,该备份就可以用于重新创建数据的没有残留的溢出数据的干净副本422。例如,如果恢复所创建的备份(没有空白),则创建数据的新副本,新副本(即,422)将没有任何残留的溢出数据。随后该干净副本422可以通过将任何连接从旧副本428转移到新副本422来替代旧副本428以供服务使用。该服务随后连接到数据422的没有残留的溢出数据的干净副本,并且任何残留数据现在都驻留在服务“外部”,并且可以以如下所述的安全方式进行清理。
图5示出了用于创建工作流以移除溢出数据的示例性流程图500。尽管结合创建工作流来描述流程图,但是可以使用其它自动化功能来执行各种功能(即,通过自动化层、管理层、编排层、自助层等等),如先前所描述的。在执行图5中的操作之前,如果系统/服务针对已删除的数据使用垃圾箱,则用户可以使用系统/服务提供的功能来删除溢出数据并“清空”垃圾。替代地,用户可以提供描述溢出数据的信息,并且移除系统可以删除数据并清空任何相关联的垃圾。
在示例性实施例中,向用户呈现表单502以收集由系统用于安全地移除溢出数据的信息。该信息可以包括但不限于诸如存储溢出数据的服务(即,电子邮件服务、数据共享服务等等)之类的信息、账户、或标识存储溢出数据的位置的其它信息。如果还要移除备份,则该信息还可以包括备份集、日期范围或其它标识信息,以允许系统查明应该移除什么备份等等。
在操作504中,移除系统标识溢出数据曾经驻留(或驻留)的站点。这涉及标识保存溢出数据以及与其相关联的所分配存储位置的文件、数据结构、数据库等等。
操作506标识溢出数据的移除将对服务产生的影响以及可能与移除溢出数据相关联的任何潜在问题。例如,这可以包括估计服务将多久不可用、在移除溢出数据期间中断的广泛程度、关于备份数据丢失的可能性的警告(如果要移除备份)、或影响对服务的使用、利用率、风险等等的任何其它警告和影响。另外,如果包含溢出数据的硬件由不与溢出数据相关联的服务、应用等共享,则所标识的影响还可以包括与要移动到不同硬件的不相关服务等相关联的信息,以便安全清理过程不会影响预期服务之外的服务。
操作508基于所提供的信息来选择要移除的备份(如果存在的话)。在一些实例中,如果备份中包括溢出数据的风险小于丢失重要备份数据的风险或出于其它原因,则用户可以选择不移除备份。
操作510允许用户确认将要发生的事情,并且如果接收到确认(510中的“是”分支),则移除进行,如下面所指示的。如果未接收到确认(510中的“否”分支),则移除过程终止。
示例可以帮助说明操作502-510进行操作的一种可能方式。在该示例中,数据共享服务将信息存储在多个数据库中。溢出数据泄露到数据共享服务上,并存储在特定的数据库中。一旦检测到溢出,用户就从数据库中移除了数据,并清空了与保存已删除的溢出数据相关联的任何垃圾箱或回收站。在操作502中,用户指定发生数据溢出的日期和存储溢出数据的数据库名称/标识符。可选地,用户指定溢出数据泄漏到的数据共享服务。根据该信息,系统在操作504中标识数据库所位于的位置(即,与数据库相关联的所分配的存储位置)。在操作506中,系统估计移除将使得数据共享服务在从经估计时间开始的20分钟内不可用。在操作508中,清理服务标识可能包含溢出数据的备份。该信息连同在操作510中继续的请求经由用户界面呈现给用户。在允许用户做出任何改变(这可能使得操作502-508中的任何操作被重新执行)之后,给予授权并且系统移动到操作512。
在操作512中,基于在操作502-510中提供和确认的信息,利用适当的操作来创建工作流。在操作514中添加与要移除的溢出数据的数据结构相关联的标识符。该标识符可以是允许移除系统标识哪个数据库、文件、数据结构等等包含(曾经包含)溢出数据的任何标识符。
操作516仔细检查以确保与标识符相关联的数据库、文件、数据结构等等还未被处理或调度为由另一工作流程处理。在一个示例性实施例中,图5的方法可以按照任何经授权的用户的请求来执行。因此,该方法的自助性质可以引起针对相同溢出数据做出多个请求。操作516中的检查确保当做出多个请求时,仅执行一个请求。如果标识符(或更具体地,与标识符相关联的数据库、文件、数据结构等等)已经被处理或被调度以进行处理,则从操作516中采取“是”分支并且该方法结束。否则,采取“否”分支并该方法继续。
在操作518中,对工作流程状态进行更新,并且在操作522中保存作业以供执行。在一些实现方式中,这包括将工作流保存到工作队列,该工作队列将由工作流引擎拾取和调度。操作524指示工作流由工作流引擎或其它自动化技术来执行。
图6示出了用于移除溢出数据的示例性流程图600。在该代表性流程图600中,重点在于一旦用户已使用所提供的功能来删除和清空与已删除的数据相关联的任何垃圾,就安全地移除信息。这些操作在图6中由操作602示出,并且包括在创建工作流之前执行的任何工作流前活动以安全地移除溢出数据的任何残余。另外地或替代地,如果需要,则可以使工作流前活动成为工作流的一部分。尽管流程图600中所描述的自动化被称为工作流,但如先前讨论的,可以使用其它自动化、管理和/或编排功能来实现移除溢出数据。
操作604表示发起工作流所需要的任何活动,例如图5的流程图500的操作。一旦发起工作流,操作606就提供期望的任何警报。例如,操作606可以设置状态,该状态指示作为移除方法的目标的受影响服务器和/或其它云基础设施部件正在进行维护。这具有向云服务架构的任何管理员等通知系统正在进行经调度维护并混淆正在执行的实际活动(即安全移除安全数据)的双重目的。因此,日志可以指示执行了维护,但不会留下指向数据溢出的踪迹。
在操作608中,锁定到位以防止进一步改变所分配的存储位置以准备安全地移除安全数据。例如,这可以通过将系统置于维护模式和/或将所分配的安全位置置于只读模式来实现。在操作608中,可以保存锁定的当前状态和其它访问控制信息,以使得当重新启用目标服务/系统时(即,离开维护模式、打开以进行读/写操作等等),可以将锁定和/或访问控制信息设置为与操作608开始之前相同的状态。另外,如果将系统置于只读模式、维护模式、或者作为操作608的一部分来执行的其它操作将影响不与溢出数据相关联的用户和/或服务,则可以将这些服务移动到不同的系统等等以使得他们的操作可以继续不受安全移除过程的影响。从操作608的开始,将发生对目标服务(将从中移除溢出数据的服务)的某种影响。影响取决于在服务中使用所分配的存储位置的广泛程度。如果所有用户和服务使用溢出数据的残余所在的单个数据库、文件和/或其它数据结构,则可能影响服务的整个操作。如果仅一部分用户和/或目标服务利用溢出数据的残余所在的数据库、文件和/或其它结构,则可能仅发生对目标服务的部分影响。
在操作610-612中,创建数据的新副本,该新副本不具有可包含溢出数据的残余的任何空白。例如,这可以通过备份原始数据(操作610)并将数据恢复到新副本612来完成。备份缩小数据并移除任何空白,并经恢复的副本随后不包含可能包括溢出数据的所分配的存储位置。其它机制也可以用于完成创建数据的的新副本,该新副本不包括溢出数据,也不包括可能包含溢出数据的残余的空白。然而,跟踪溢出数据所驻留的所分配存储位置将允许更容易地安全移除溢出数据的残余。否则,如果过程失去对溢出数据所驻留的存储位置的跟踪,则可以覆写所有“可用”位置(见下文),以降低恢复溢出数据的可能性。
在操作612之后,清理服务具有数据的不包含任何溢出数据和/或溢出数据的残余的新副本,并且具有残余的旧副本可以利用新副本来替换。该过程在操作614和操作616中示出,其中操作614将原始(即,“旧”)数据与服务断开,并且操作616将数据的新副本连接到服务。例如,可以通过拆卸或切断服务与原始数据之间的连接的其它操作来执行断开。例如,可以通过安装或在服务与新副本之间建立连接的其它操作来执行连接。在某些情况下,这可以以对服务和正在使用该服务的用户透明的方式来完成。在其它情况下,在安装新副本之后,服务可能需要使用户“重新建立”其与新副本的连接。
如果状态被保留,则操作618将站点锁定恢复到它们在安全移除服务将系统置于操作608中的维护/只读模式之前所处的相同状态。如果状态未被保留,则操作618可以将站点锁定的状态置于默认配置。一旦站点锁定恢复到其原始状态/默认配置,就可以恢复服务的正常操作而不会影响用户。换言之,对目标服务和目标服务的用户的影响仅存在于执行操作608-618所花费的时间。在已执行操作618之后,可以发生剩余操作和安全移除溢出数据,而不会对目标服务的操作产生任何影响。
操作620表示断开、停止和/或移除与即将被移除的所分配的存储位置的任何另外的交互。例如,终止与所分配的存储位置的任何另外的日志记录、镜像和/或其它交互。这些交互通常由云服务基础架构提供,以实现可靠性或其它类似目标。这些交互通常是云架构固有的和/或由云架构的管理和/或编排层提供,并且通常对目标服务和/或目标服务的用户是透明的。
在操作620中终止任何另外的交互之后,操作622将原始数据(包括主副本、镜像副本等等)从任何系统脱离。操作620被设计为完全隔离原始数据的所有副本,以使得可以从系统中安全地移除它们。确切细节可能因不同的实现方式和不同的云架构而不同,但所有这些都将提供用于通过移除与数据的任何正在进行的交互来准备删除数据的机制。
一旦在操作622中终止与数据的正在进行的操作和/或交互,就在操作626中安全地移除数据的所有副本,包括原始副本、镜像副本等等。如果删除文件、数据库记录等等使得如上面讨论地制作副本,则也移除任何副本。此外,如果溢出数据的残余所驻留的空白位置以某种方式丢失(即,出于某种原因,系统丢失了对存储溢出数据的位置的跟踪),则可以使用对存储设备上的所有未分配、可用、未使用等等的空间的安全覆写来确保完全移除溢出数据的任何残余。
安全移除通常通过利用全0、全1、或者1和0的图案(随机或非随机)的某种组合来覆写所分配的存储位置来实现。在一些情况下,可以以任何组合(例如,写入全0,随后全1,随后是1和0的随机图案)来使用多次传递。政府公布了针对安全数据移除的各种规范和标准,并且系统可以利用其中概述的方法来进行安全移除。例如,一些系统可能符合国防部标准DoD 5220.22-M或符合更新的国家标准与技术研究所专刊号NIST SP 800-88。
一旦在操作626中安全地移除了溢出数据和/或溢出数据的残余,系统就可以安全地移除包含溢出数据的任何备份副本(连同镜像副本等等)。通常以与上述相同的方式来完成对备份副本的移除。这可以包括移除备份副本中的任何一个或全部,清空任何垃圾/回收站,并且随后利用1、0、和/或1和0的图案来覆写备份副本所驻留的空白位置,如先前段落中所述。
一旦操作628完成,就已实现了溢出数据的安全移除,并且可以在操作630中移除任何警报,例如移除系统的“维护”状态等等。
当完成流程图600中的各种操作时,系统可以对状态进行更新或以其它方式向用户通知(即,通过用户界面)通过过程流的进展。因此,可以按需要向用户告知工作流何时开始(操作604)、何时发出警报(操作606)等等,以使用户知道工作流进展如何以及是否遇到任何错误。此外,一旦流程图600完成(即,在操作630之后),就可以向用户通知成功完成安全移除溢出数据的完成、任何错误和/或与安全移除有关的其它信息。
由于包括流程图600的工作流和操作的性质,当遇到错误时,用户可以利用对提供给方法的信息的适当改变来重新发起流程图600的移除方法。因此,该方法表示用于安全地移除溢出数据的灵活且稳健的方式。
示例性机器架构和机器可读介质
图7示出了适合于实现用于执行本文所公开的方法的系统、用户设备等的机器的代表性架构。图7的机器被示为适合于实现上述概念的独立设备。对于上述服务器方面,可以使用在数据中心中操作的多个此类机器、云架构的一部分等等。在服务器方面,未使用所有示出的功能和设备。例如,虽然用户用于与服务器和/或云架构交互的系统、设备等等可以具有屏幕、触摸屏输入等等,但服务器通常不具有屏幕、触摸屏、相机等等,并且通常通过具有适当输入和输出方面的连接系统来与用户交互。因此,下面的架构应该被视为包含多种类型的设备和机器,并且取决于其形状因子和目的,在任何特定设备或机器中可以存在或可以不存在各个方面(例如,服务器很少具有相机,而可穿戴设备很少包括磁盘)。然而,图7的示例性说明适合于允许本领域技术人员利用硬件和软件的适当组合来确定如何实现先前描述的实施例。
虽然仅示出了单个机器,但术语“机器”还应该被视为包括单独或联合地执行一组(或多组)指令以执行本文所讨论的任何一种或多种方法的任何机器集合。
机器700的示例包括经由链路708彼此通信的至少一个处理器702(例如,中央处理单元(CPU)、图形处理单元(GPU)、高级处理单元(APU)或者其组合)、一个或多个存储器(例如主存储器704、静态存储器706或其它类型的存储器)。链路708可以是总线或其它类型的连接信道。机器700可以包括另外的可选方面,例如包括任何类型的显示器的图形显示单元710。机器700还可以包括其它可选方面,例如字母数字输入设备712(例如,键盘、触摸屏等等)、用户界面(UI)导航设备714(例如,鼠标、轨迹球、触摸设备等等)、存储单元716(例如,磁盘驱动器或其它存储设备)、信号发生设备718(例如,扬声器)、传感器721(例如,全球定位传感器、加速度计、麦克风、相机等等)、输出控制器728(例如,用于连接和/或与一个或多个其它设备通信的有线或无线连接,例如通用串行总线(USB)、近场通信(NFC)、红外(IR)、串行/并行总线等等)、以及网络接口设备720(例如,有线和/或无线)。
可执行指令和机器可读介质
各种存储器(即,704、706和/或处理器702的存储器)和/或存储单元716可以存储体现本文所描述的一种或多种方法或功能或由这些方法或功能利用的一组或多组指令和数据结构(例如,软件)724。当由处理器702执行时,这些指令使得各种操作实现所公开的实施例。
如本文所使用的,术语“机器可读介质”和“计算机可读介质”表示相同的内容并且可以在本公开内容中互换地使用。这些术语包括存储一个或多个指令或数据结构的单个介质或多个介质(例如,集中式或分布式数据库和/或相关联的高速缓存和服务器)。这些术语还应该被视为包括能够存储、编码或携带由机器执行并使得机器执行本发明的任何一种或多种方法的指令,或者能够存储、编码或携带由这些指令使用或与这些指令相关联的数据结构的任何有形介质。因此,这些术语应该被视为包括但不限于固态存储器、以及光学和磁性介质。机器可读介质/计算机可读介质的具体示例包括非易失性存储器,举例而言包括半导体存储器设备,例如可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、以及闪存设备;磁盘,例如内部硬盘和可移动磁盘;磁光盘;以及CD-ROM和DVD-ROM盘。这些术语明确地排除非法定信号本身,这些信号在下面讨论的术语“信号介质”中涵盖。
信号介质
术语“信号介质”应该被视为包括任何形式的经调制数据信号和信号本身。术语“经调制数据信号”表示如下的信号,该信号的一个或多个特征以将信号编码到该信号中的形式来设置或改变。
示例性实施例
示例1、一种用于移除数据的方法,包括:
从用户接收与数据结构相关联的标识符,所述数据结构包括溢出数据或包括在溢出数据删除之前曾经存储溢出数据的空白;
在与所述数据结构相关联的云服务架构中标识所分配的存储位置;
创建所述数据结构的副本,所述副本包括现在的溢出数据或者在溢出数据删除之前曾经存储溢出数据的空白;
将所述数据结构从利用所述数据结构的任何实体断开;
将所述数据结构的所述副本连接到所述实体;以及
通过利用1、0或者其组合来覆写所述数据结构,将所述数据结构从所分配的存储驻留的任何物理存储设备安全地移除。
示例2、根据示例1所述的方法,还包括:
设置锁定,以使得在创建所述数据结构的所述副本之前所分配的存储位置不能改变;以及
在连接所述数据结构的所述副本之后将所述锁定恢复到先前状况。
示例3、根据示例1所述的方法,还包括:
在与所述数据结构相关联的至少一个系统上设置警报。
示例4、根据示例1、2或3所述的方法,其中,创建所述副本包括:创建所述数据结构的备份并将所述备份恢复到所述数据结构的所述副本。
示例5、根据示例1、2或3所述的方法,还包括:
在安全地移除所分配的存储之前停止对所分配的存储的日志记录和镜像。
示例6、根据示例1、2或3所述的方法,还包括:
在安全地移除所分配的存储之前脱离所分配的存储。
示例7、根据示例1、2或3所述的方法,还包括:
标识所创建的包括溢出数据的备份集;以及
安全地移除所标识的备份集。
示例8、根据示例1所述的方法,还包括:
创建用于执行示例1所述的操作的工作流。
示例9、一种其上编码有可执行指令的机器可读介质,所述可执行指令在由机器的至少一个处理器执行时使得所述机器执行包括以下各项的操作:
从用户接收包括至少一个标识符的信息,所述至少一个标识符指示先前存储溢出数据的位置;
基于所述至少一个标识符来识别所分配的存储;
创建用于移除所分配的存储的工作流,所述工作流执行包括以下各项的操作:
创建所分配的存储的备份以便移除所分配的存储中的空白;
恢复所述备份以创建所分配的存储的新副本;
将所分配的存储从利用所分配的存储的任何实体断开;
将所述新副本连接到所述实体;以及
将所分配的存储从所分配的存储驻留的任何物理存储设备安全地移除。
示例10、根据示例9所述的机器可读介质,其中,所述工作流还执行包括以下各项的操作:
在所分配的存储上设置至少一个锁定,以使得在创建所述备份之前所分配的存储不能被改变;以及
在连接所述新副本之后将所分配的存储上的所述至少一个锁定恢复到先前状态。
示例11、根据示例10所述的机器可读介质,其中,所述工作流还执行包括以下各项的操作:
在安全地移除所分配的存储之前终止对所分配的存储进行日志记录和镜像。
示例12、根据示例10所述的机器可读介质,其中,所述工作流还执行包括以下各项的操作:
标识至少一个先前创建的备份集;
安全地移除所述至少一个先前创建的备份集。
示例13、根据示例9、10、11或12所述的机器可读介质,其中,可执行指令还使得所述机器执行包括以下各项的操作:
评估执行所述工作流的影响;
向所述用户呈现所述工作流的所述影响;
从所述用户接收对执行所述工作流的授权;
识别所分配的存储当前是否正由另一工作流处理;以及
响应于识别所分配的存储当前未由另一工作流处理,发起执行所述工作流。
示例14、根据示例9、10、11或12所述的机器可读介质,其中,安全地移除所分配的存储包括:利用以下至少一项来覆写所述物理设备上包含所分配的存储的物理存储位置:
全0;
全1;以及
0和1的图案。
示例15、一种实现安全移除溢出数据的计算系统,包括:
处理器和在机器可读介质上可访问的可执行指令,所述可执行指令在被执行时使得所述系统执行包括以下各项的操作:
向用户呈现用户界面,所述用户界面包含允许所述用户识别以下各项中的至少一项的表单:
与溢出数据先前驻留的站点相关联的标识符;以及
发生数据溢出的日期;
从所述用户接收所述表单;
基于所述表单中的信息来识别先前存储所述溢出数据的所分配存储;
创建用于从所述站点移除所分配的存储的工作流,所述工作流执行包括以下各项的操作:
创建所分配的存储的备份以便移除所分配的存储中的空白;
恢复所述备份以创建所分配的存储的新副本;
将所分配的存储从利用所分配的存储的任何实体断开;
将所述新副本连接到所述实体;以及
将所分配的存储从所分配的存储驻留的任何物理存储设备安全地移除。
示例16、一种用于移除数据的方法,包括:
从用户接收与数据结构相关联的标识符,所述数据结构包括溢出数据或包括在溢出数据删除之前曾经存储溢出数据的空白;
在与所述数据结构相关联的云服务架构中标识所分配的存储位置;
创建所述数据结构的副本,所述副本包括现在的溢出数据或者在溢出数据删除之前曾经存储溢出数据的空白;
将所述数据结构从利用所述数据结构的任何实体断开;
将所述数据结构的所述副本连接到所述实体;以及
通过利用1、0或者其组合来覆写所述数据结构,将所述数据结构从所分配的存储驻留的任何物理存储设备安全地移除。
示例17、根据示例16所述的方法,还包括:
设置锁定,以使得在创建所述数据结构的所述副本之前所分配的存储位置不能改变;以及
在连接所述数据结构的所述副本之后将所述锁定恢复到先前状况。
示例18、根据任一前述示例所述的方法,还包括:
在与所述数据结构相关联的至少一个系统上设置警报。
示例19、根据任一前述示例所述的方法,其中,创建所述副本包括:创建所述数据结构的备份并将所述备份恢复到所述数据结构的所述副本。
示例20、根据任一前述示例所述的方法,还包括:
在安全地移除所分配的存储之前停止对所分配的存储的日志记录和镜像。
示例21、根据任一前述示例所述的方法,还包括:
在安全地移除所分配的存储之前脱离所分配的存储。
示例22、根据任一前述示例所述的方法,还包括:
标识所创建的包括溢出数据的备份集;以及
安全地移除所标识的备份集。
示例23、根据示例16所述的方法,还包括:
创建用于执行示例16所述的操作的工作流。
示例24、一种其上编码有可执行指令的机器可读介质,所述可执行指令在由机器的至少一个处理器执行时使得所述机器执行包括以下各项的操作:
从用户接收包括至少一个标识符的信息,所述至少一个标识符指示先前存储溢出数据的位置;
基于所述至少一个标识符来识别所分配的存储;
创建用于移除所分配的存储的工作流,所述工作流执行包括以下各项的操作:
创建所分配的存储的备份以便移除所分配的存储中的空白;
恢复所述备份以创建所分配的存储的新副本;
将所分配的存储从利用所分配的存储的任何实体断开(614);
将所述新副本连接到所述实体;以及
将所分配的存储从所分配的存储驻留的任何物理存储设备安全地移除。
示例25、根据示例24所述的机器可读介质,其中,所述工作流还执行包括以下各项的操作:
在所分配的存储上设置至少一个锁定,以使得在创建所述备份之前所分配的存储不能被改变;以及
在连接所述新副本之后将所分配的存储上的所述至少一个锁定恢复到先前状态。
示例26、根据示例24或25所述的机器可读介质,其中,所述工作流还执行包括以下各项的操作:
在安全地移除所分配的存储之前终止对所分配的存储进行日志记录和镜像。
示例27、根据示例24-26中任一项所述的机器可读介质,其中,所述工作流还执行包括以下各项的操作:
标识至少一个先前创建的备份集;
安全地移除所述至少一个先前创建的备份集。
示例28、根据示例24-27中任一项所述的机器可读介质,其中,可执行指令还使得所述机器执行包括以下各项的操作:
评估执行所述工作流的影响;
向所述用户呈现所述工作流的所述影响;
从所述用户接收对执行所述工作流的授权;
识别所分配的存储当前是否正由另一工作流处理(516);以及
响应于识别所分配的存储当前未由另一工作流处理,发起执行所述工作流。
示例29、根据示例24-28中任一项所述的机器可读介质,其中,安全地移除所分配的存储包括:利用以下至少一项来覆写所述物理设备上包含所分配的存储的物理存储位置:
全0;
全1;以及
0和1的图案。
示例30、一种实现安全移除溢出数据的计算系统,包括:
处理器和在机器可读介质上可访问的可执行指令,所述可执行指令在被执行时使得所述系统执行包括以下各项的操作:
向用户呈现用户界面,所述用户界面包含允许所述用户识别以下各项中的至少一项的表单:
与溢出数据先前驻留的站点相关联的标识符;以及
发生数据溢出的日期;
从所述用户接收所述表单;
基于所述表单中的信息来识别先前存储所述溢出数据的分配的存储;
创建用于从所述站点移除所分配的存储的工作流,所述工作流执行包括以下各项的操作:
创建所分配的存储的备份以便移除所分配的存储中的空白;
恢复所述备份以创建所分配的存储的新副本;
将所分配的存储从利用所分配的存储的任何实体断开(614);
将所述新副本连接到所述实体;以及
将所分配的存储从所分配的存储驻留的任何物理存储设备安全地移除。
结论
鉴于可以应用本发明的原理和前述示例的多种可能的实施例,应该认识到,本文所描述的示例意在仅是说明性的,而不应该被视为显示本发明的范围。因此,如本文所描述的本发明构想所有此类实施例可以落入所附权利要求及其等效方案的范围内。

Claims (15)

1.一种用于移除数据的方法,包括:
从用户接收与数据结构相关联的标识符,所述数据结构包括溢出数据或包括在溢出数据删除之前曾经存储溢出数据的空白;
在与所述数据结构相关联的云服务架构中标识所分配的存储位置;
创建所述数据结构的副本,所述副本包括现在的溢出数据或者在溢出数据删除之前曾经存储溢出数据的空白;
将所述数据结构从利用所述数据结构的任何实体断开;
将所述数据结构的所述副本连接到所述实体;以及
通过利用1、0或者其组合来覆写所述数据结构,将所述数据结构从所分配的存储驻留的任何物理存储设备安全地移除。
2.根据权利要求1所述的方法,还包括:
设置锁定,以使得在创建所述数据结构的所述副本之前所分配的存储位置不能被改变;以及
在连接所述数据结构的所述副本之后将所述锁定恢复到先前状况。
3.根据权利要求1所述的方法,还包括:
在与所述数据结构相关联的至少一个系统上设置警报。
4.根据权利要求1、2或3所述的方法,其中,创建所述副本包括:创建所述数据结构的备份并将所述备份恢复到所述数据结构的所述副本。
5.根据权利要求1、2或3所述的方法,还包括:
在安全地移除所分配的存储之前停止对所分配的存储进行日志记录和镜像。
6.根据权利要求1、2或3所述的方法,还包括:
在安全地移除所分配的存储之前脱离所分配的存储。
7.根据权利要求1、2或3所述的方法,还包括:
标识所创建的包括所述溢出数据的备份集;以及
安全地移除所标识的备份集。
8.根据权利要求1所述的方法,还包括:
创建用于执行权利要求1所述的操作的工作流。
9.一种其上编码有可执行指令的机器可读介质,所述可执行指令在由机器的至少一个处理器执行时使得所述机器执行包括以下各项的操作:
从用户接收包括至少一个标识符的信息,所述至少一个标识符指示先前存储溢出数据的位置;
基于所述至少一个标识符来识别所分配的存储;
创建用于移除所分配的存储的工作流,所述工作流执行包括以下各项的操作:
创建所分配的存储的备份以便移除所分配的存储中的空白;
恢复所述备份以创建所分配的存储的新副本;
将所分配的存储从利用所分配的存储的任何实体断开;
将所述新副本连接到所述实体;以及
将所分配的存储从所分配的存储驻留的任何物理存储设备安全地移除。
10.根据权利要求9所述的机器可读介质,其中,所述工作流还执行包括以下各项的操作:
在所分配的存储上设置至少一个锁定,以使得在创建所述备份之前所分配的存储不能被改变;以及
在连接所述新副本之后将所分配的存储上的所述至少一个锁定恢复到先前状态。
11.根据权利要求10所述的机器可读介质,其中,所述工作流还执行包括以下各项的操作:
在安全地移除所分配的存储之前终止对所分配的存储进行日志记录和镜像。
12.根据权利要求10所述的机器可读介质,其中,所述工作流还执行包括以下各项的操作:
标识至少一个先前创建的备份集;
安全地移除所述至少一个先前创建的备份集。
13.根据权利要求9、10、11或12所述的机器可读介质,其中,可执行指令还使得所述机器执行包括以下各项的操作:
评估执行所述工作流的影响;
向所述用户呈现所述工作流的所述影响;
从所述用户接收对执行所述工作流的授权;
识别所分配的存储当前是否正由另一工作流处理;以及
响应于识别所分配的存储当前未由另一工作流处理,发起对所述工作流的执行。
14.根据权利要求9、10、11或12所述的机器可读介质,其中,安全地移除所分配的存储包括:利用以下至少一项来覆写所述物理设备上包含所分配的存储的物理存储位置:
全0;
全1;以及
1和0的图案。
15.一种实现安全移除溢出数据的计算系统,包括:
处理器和在机器可读介质上可访问的可执行指令,所述可执行指令在被执行时使得所述系统执行包括以下各项的操作:
向用户呈现用户界面,所述用户界面包含允许所述用户识别以下各项中的至少一项的表单:
与溢出数据先前驻留的站点相关联的标识符;以及
发生数据溢出的日期;
从所述用户接收所述表单;
基于所述表单中的信息来识别先前存储所述溢出数据的分配的存储;
创建用于从所述站点移除所分配的存储的工作流,所述工作流执行包括以下各项的操作:
创建所分配的存储的备份以便移除所分配的存储中的空白;
恢复所述备份以创建所分配的存储的新副本;
将所分配的存储从利用所分配的存储的任何实体断开;
将所述新副本连接到所述实体;以及
将所分配的存储从所分配的存储驻留的任何物理存储设备安全地移除。
CN201780036813.8A 2016-06-14 2017-06-07 敏感数据的安全移除 Active CN109313631B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/182,382 US10209907B2 (en) 2016-06-14 2016-06-14 Secure removal of sensitive data
US15/182,382 2016-06-14
PCT/US2017/036251 WO2017218248A1 (en) 2016-06-14 2017-06-07 Secure removal of sensitive data

Publications (2)

Publication Number Publication Date
CN109313631A true CN109313631A (zh) 2019-02-05
CN109313631B CN109313631B (zh) 2022-04-19

Family

ID=59091582

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780036813.8A Active CN109313631B (zh) 2016-06-14 2017-06-07 敏感数据的安全移除

Country Status (4)

Country Link
US (1) US10209907B2 (zh)
EP (1) EP3469494A1 (zh)
CN (1) CN109313631B (zh)
WO (1) WO2017218248A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111240579B (zh) * 2018-11-28 2024-03-19 京东方科技集团股份有限公司 用于数据存储的方法和装置
WO2022005914A1 (en) * 2020-06-29 2022-01-06 Illumina, Inc. Temporary cloud provider credentials via secure discovery framework

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060094404A1 (en) * 1999-04-16 2006-05-04 Burgess Shelia J Communications control method and apparatus
US20080263293A1 (en) * 2007-04-19 2008-10-23 Gregory Tad Kishi Method for Selectively Performing a Secure Data Erase to Ensure Timely Erasure
CN101615233A (zh) * 2004-11-12 2009-12-30 索尼计算机娱乐公司 用于保护数据处理和传送安全的方法和设备
CN103238305A (zh) * 2010-05-28 2013-08-07 安全第一公司 用于安全数据储存的加速器系统
US20140201526A1 (en) * 2005-11-16 2014-07-17 Shelia Jean Burgess System, method, and apparatus for data, data structure, or encryption key cognition incorporating autonomous security protection
CN103988199A (zh) * 2011-12-02 2014-08-13 国际商业机器公司 已去重存储云中的数据残留的去除
US20140324917A1 (en) * 2013-04-29 2014-10-30 Sap Ag Reclamation of empty pages in database tables

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6119151A (en) * 1994-03-07 2000-09-12 International Business Machines Corp. System and method for efficient cache management in a distributed file system
US7293175B2 (en) 2000-06-29 2007-11-06 Lockheed Martin Corporation Automatic information sanitizer
CA2326805A1 (en) 2000-11-24 2002-05-24 Ibm Canada Limited-Ibm Canada Limitee Method and apparatus for deleting data in a database
US6721851B2 (en) * 2001-08-07 2004-04-13 Veritas Operating Corporation System and method for preventing sector slipping in a storage area network
US7003621B2 (en) 2003-03-25 2006-02-21 M-System Flash Disk Pioneers Ltd. Methods of sanitizing a flash-based data storage device
US8473451B1 (en) 2004-07-30 2013-06-25 At&T Intellectual Property I, L.P. Preserving privacy in natural language databases
US7509684B2 (en) 2004-10-09 2009-03-24 Microsoft Corporation Strategies for sanitizing data items
US7526620B1 (en) 2004-12-14 2009-04-28 Netapp, Inc. Disk sanitization in an active file system
US8719233B2 (en) 2008-06-24 2014-05-06 Emc Corporation Generic method and apparatus for database sanitizing
US8762642B2 (en) * 2009-01-30 2014-06-24 Twinstrata Inc System and method for secure and reliable multi-cloud data replication
US8495296B2 (en) 2010-05-18 2013-07-23 International Business Machines Corporation System and method for optimizing data remanence over hubrid disk clusters using various storage technologies
US8898776B2 (en) 2010-12-28 2014-11-25 Microsoft Corporation Automatic context-sensitive sanitization
US9152505B1 (en) 2012-03-29 2015-10-06 Amazon Technologies, Inc. Verified hardware-based erasure of data on distributed systems
US9740583B1 (en) * 2012-09-24 2017-08-22 Amazon Technologies, Inc. Layered keys for storage volumes
US9351163B2 (en) 2012-12-26 2016-05-24 Mcafee, Inc. Automatic sanitization of data on a mobile device in a network environment
WO2015084354A1 (en) 2013-12-04 2015-06-11 Hewlett-Packard Development Company, L.P. Data sanitization
US20160034217A1 (en) 2014-07-31 2016-02-04 Samsung Electronics Co., Ltd. Memory controller configured to control data sanitization and memory system including the same
US20160077854A1 (en) * 2014-09-12 2016-03-17 International Business Machines Corporation Expediting host maintenance mode in cloud computing environments
US9934026B2 (en) * 2015-06-23 2018-04-03 Microsoft Technology Licensing, Llc Workflow generation and editing
US9524111B1 (en) * 2016-03-07 2016-12-20 FittedCloud, Inc. Devices, systems, apparatus, and methods for transparent and automated optimization of storage resource allocation in a cloud services system

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060094404A1 (en) * 1999-04-16 2006-05-04 Burgess Shelia J Communications control method and apparatus
CN101615233A (zh) * 2004-11-12 2009-12-30 索尼计算机娱乐公司 用于保护数据处理和传送安全的方法和设备
US20140201526A1 (en) * 2005-11-16 2014-07-17 Shelia Jean Burgess System, method, and apparatus for data, data structure, or encryption key cognition incorporating autonomous security protection
US20080263293A1 (en) * 2007-04-19 2008-10-23 Gregory Tad Kishi Method for Selectively Performing a Secure Data Erase to Ensure Timely Erasure
CN103238305A (zh) * 2010-05-28 2013-08-07 安全第一公司 用于安全数据储存的加速器系统
CN103988199A (zh) * 2011-12-02 2014-08-13 国际商业机器公司 已去重存储云中的数据残留的去除
US20140324917A1 (en) * 2013-04-29 2014-10-30 Sap Ag Reclamation of empty pages in database tables

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
XINYI LI ET AL: "Overflow control in multicast networks", 《IEEE》 *
秦剑 等: "两种抗缓冲区溢出硬件机制的设计与实现", 《广州大学学报:自然科学版》 *

Also Published As

Publication number Publication date
EP3469494A1 (en) 2019-04-17
WO2017218248A1 (en) 2017-12-21
US10209907B2 (en) 2019-02-19
US20170357456A1 (en) 2017-12-14
CN109313631B (zh) 2022-04-19

Similar Documents

Publication Publication Date Title
US11513926B2 (en) Systems and methods for instantiation of virtual machines from backups
CN103164254B (zh) 用于维持镜像虚拟环境中存储装置的一致性的方法和系统
CN104995627B (zh) 片上系统设备中的密钥撤消
CN102981931B (zh) 虚拟机备份方法及装置
CN104380263B (zh) 备份图像复制
CN106528327A (zh) 一种数据处理方法以及备份服务器
US9182968B2 (en) Software signature discovery
CN105556478A (zh) 用于保护虚拟机数据的系统和方法
JP5444178B2 (ja) バックアップ・リストア処理装置とバックアップ・リストア処理方法およびプログラム
CN104133690B (zh) 从一个操作系统级到已更新操作系统级的动态应用迁移
CN103890736A (zh) 灾难恢复期间的消息对账
CN108156003A (zh) 一种应用升级方法及终端、服务器、系统
CN103493003A (zh) 从源存储器向目标存储器调派磁盘映像的拷贝
CN109644203A (zh) 中断对客户端设备与基于云的存储服务之间的内容的同步
CN105518694A (zh) 逆向复制以恢复被损文件
CN109313631A (zh) 敏感数据的安全移除
US9146816B2 (en) Managing system image backup
CN107402839A (zh) 一种备份数据的方法及系统
JP2012208752A (ja) ライセンス管理装置、ライセンス管理方法、及びプログラム
CN104571943B (zh) 控制非易失性数据存储子系统的方法和系统
US11176003B2 (en) Restoration of data when point in time copy operations are performed during asynchronous copy
CN105740095B (zh) 一种恢复出厂设置的方法及装置
JP6467298B2 (ja) サーバ運用作業履歴管理装置、システム、方法、およびプログラム
CN114546705B (zh) 操作响应方法、操作响应装置、电子设备以及存储介质
US20240134760A1 (en) Investigation procedures for virtual machines

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
GR01 Patent grant
GR01 Patent grant