CN105164633B - 由可信提供商进行的配置和验证 - Google Patents

由可信提供商进行的配置和验证 Download PDF

Info

Publication number
CN105164633B
CN105164633B CN201480024881.9A CN201480024881A CN105164633B CN 105164633 B CN105164633 B CN 105164633B CN 201480024881 A CN201480024881 A CN 201480024881A CN 105164633 B CN105164633 B CN 105164633B
Authority
CN
China
Prior art keywords
data
configuration
code
virtual machine
request
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.)
Active
Application number
CN201480024881.9A
Other languages
English (en)
Other versions
CN105164633A (zh
Inventor
皮特·扎卡里·鲍文
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.)
Amazon Technologies Inc
Original Assignee
Amazon Technologies Inc
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 Amazon Technologies Inc filed Critical Amazon Technologies Inc
Publication of CN105164633A publication Critical patent/CN105164633A/zh
Application granted granted Critical
Publication of CN105164633B publication Critical patent/CN105164633B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0866Checking the configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0895Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/28Restricting access to network management systems or functions, e.g. using authorisation function to access network configuration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities

Abstract

给计算资源加载代码或数据,并且生成所述加载的代码或数据的已审核记录。另外,基于所述加载的代码或数据的所述记录来生成配置完整性。将配置完整性验证工具发送至请求验证所述代码或数据的请求者,所述配置完整性验证工具可用作对所述加载的代码或数据的可信验证。

Description

由可信提供商进行的配置和验证
相关申请的交叉引用
本申请要求2013年3月4日提交的美国专利申请号13/784,276的权益,所述申请的公开内容全部以引用的方式并入本文。
背景技术
数据中心是容纳计算机系统和各种网络组件、存储组件和其他相关组件的设施。数据中心例如可向商家和个人提供计算服务作为远程计算服务或提供“软件即服务”(例如,云计算)。由数据中心提供的计算资源可包括各种类型的资源,如数据处理资源、数据存储资源、数据通信资源等。
为了便于增加数据中心资源的使用,虚拟化技术可允许单个物理计算机将作为为独立计算机出现并操作的虚拟机的一个或多个实例托管到连接的计算机用户上。利用虚拟化,单个物理计算装置可以动态的方式创建、保持或删除虚拟机。当数据中心的客户请求新的虚拟机实例时,数据中心可提供虚拟机管理服务,这个服务识别用于执行新的实例的“槽”。客户有时可以请求具有特定配置的虚拟机实例。在一些情况下,所述配置可包括由客户或由第三方供应商提供的软件和数据。
附图说明
在所有附图中,参考数字可被重复使用来指示所参考元件之间的对应关系。提供附图来示出本文所述的示例性实施方案,并且并不意图限制本公开的范围。
图1是示出根据本公开的用于提供配置验证服务的机制的图;
图2是示出可以在一些实施方案中使用的示例性计算机系统的图。
图3是示出根据本公开的用于提供配置验证服务的机制的图;
图4是示出根据本公开的审核记录的图;
图5是示出根据本公开的用于提供配置验证服务的机制的图;
图6是描述根据本公开的用于提供配置验证服务的示例性程序的流程图;并且
图7是描述根据本公开的用于提供配置验证服务的示例性程序的流程图。
具体实施方式
本文中大体描述了用于使用和验证可信平台的硬件和软件技术。描述了用于由计算资源服务提供商认证计算资源是处于已知或所需配置的系统和方法的实施方案。例如,可提供对虚拟机已被引导进入已知配置的确认。在各种实施方案中,计算资源服务提供商(如数据中心)可充当可信第三方,所述第三方与加载和配置过程交互以提供对配置的可信第三方认证。在一些实施方案中,第三方认证可由在数据中心中执行的过程提供。例如,可实施加载验证服务或配置验证服务,所述服务与引导过程交互并且可被带外查询。加载验证服务或配置验证服务可负责供应所请求的虚拟资源、建立引导加载程序和与虚拟资源交互。引导加载程序可与加载验证服务或配置验证服务通信来记录或审核检测到的配置。由引导加载程序提供的值通常被写入一次并且仅通过重新引导系统被重置。加载验证服务或配置验证服务也可生成并提供已加载文件的加密校验和。加载验证服务或配置验证服务可向被授权方提供校验和值以及引导配置,从而允许被授权方在不依赖于其自己的验证方法的情况下确定虚拟资源的引导配置的完整性。
图1是示出系统100的图,所述系统包括根据本公开的用于提供加载验证服务或配置验证服务的机制。在本公开中,加载验证服务也可称为第三方验证服务或配置验证服务。所述术语可互换使用。参考图1,系统100可包括例如可在一个或多个服务器计算机130和140上执行的虚拟机实例110和120。应理解,一些实施方案可包括可在系统100中另外的服务器计算机上被实例化的另外的虚拟机实例。
图1也示出可包括一个或多个计算装置(如计算机160和170)的公共网络150。根据一个实施方案,虚拟机实例110可被配置来经由网关190以及计算机160和170向公共网络150的计算机用户(未展示)提供计算服务。例如,虚拟机实例110可向一群用户提供一组远程访问企业应用程序,所述用户例如可以是企业客户的雇员。
客户、用户、管理员或系统100中的任何计算资源可请求具有特定软件配置的资源实例。在一个实施方案中,可以提供与引导和加载过程交互的配置校验服务180。所请求的虚拟资源可由系统100供应,并且配置验证服务180可被配置来与虚拟资源交互。例如,实例管理程序(例如,监控程序或Dom0)可识别在引导期间加载到虚拟机上的文件,追踪检测到的配置,并且报告文件列表或向配置验证服务180发送文件本身。类似地,用来启动实例的引导加载程序可被配置来与配置验证服务180通信,以便追踪并报告检测到的配置。在实施方案中,实例管理程序或配置验证服务180可提供已加载文件的审核并且生成校验和。配置验证服务180可向被授权方提供审核结果和校验和值,从而允许被授权方验证虚拟资源的引导配置的完整性。通过提供配置验证,系统100可有效地提供对特定配置的可信确认。可由数据中心的客户、由数据中心的管理员、特定软件产品的提供商或出售商或在数据中心内的任何计算资源(如服务器130)直接请求所述可信确认。服务器130也可代表其本身或代表其他服务器来发送请求。
关于某些实施例和实施方案描述了本公开的各方面,所述实施例和实施方案意图说明本公开而不是限制本公开。
数据中心可向一组分散的客户端提供可经由因特网访问的一个或多个服务,如各种类型的基于云的计算或存储。数据中心可托管各种资源池,如物理和虚拟化计算机服务器、存储装置、网络设备等的集合,所述资源池是实施并分布由数据中心提供的服务所需要的。数据中心也可提供其数据服务的专用且独立的部分,其中客户可在由用户定义的虚拟网络中启动计算资源。在一些实施方案中,网络接口虚拟化服务的功能的不同部分可并入到若干种不同的协作软件组件和/或装置内,如在提供商网络的各种硬件平台上运行的监控程序或操作系统软件的模块、在边缘装置上的路由器软件等。
在一个实施方案中,数据中心可给客户提供虚拟化计算机资源和/或存储资源的一个或多个实例,所述实例中的每一个需要网络可寻址性来允许客户与资源交互。
图2示出可在其中实施本文所述的实施方案的示例性计算环境。图2是示意性地示出数据中心210的实施例的图,所述数据中心可经由通信网络230、经由用户计算机202a和202b(其在本文中以单数形式可被称为“一个计算机202”或以复数形式可被称为“这些计算机202”)向用户200a和200b(其在本文中以单数形式可被称为“一个用户200”或以复数形式可被称为“这些用户200”)提供计算资源。数据中心210可被配置来提供用于永久性地或根据需要执行应用程序的计算资源。由数据中心210提供的计算资源可包括各种类型的资源,如数据处理资源、数据存储资源、数据通信资源等。每种类型的计算资源可以是通用的或在许多特定配置中可用。例如,数据处理资源可作为虚拟机实例使用。所述实例可被配置来执行应用程序,包括网络服务器、应用程序服务器、媒体服务器、数据库服务器等。数据存储资源可包括文件存储装置、块存储装置等。
每种类型或配置的计算资源可在不同的大小中使用,如由许多处理器、大量存储器和/或大的存储容量组成的大资源和由较少的处理器、较少量存储器和/或较小的存储容量组成的小资源。例如,客户可选择将许多小的处理资源分配为网络服务器和/或将一个大的处理资源分配为数据库服务器。
数据中心210可包括服务器216a和216b(其在本文以单数形式可被称为“一个服务器216”或以复数形式可被称为“这些服务器216”),所述服务器提供可作为虚拟机实例218a和218b(其在本文以单数形式可被称为“一个虚拟机实例218”或以复数形式可被称为“这些虚拟机实例218”)使用的计算资源。虚拟机实例218可被配置来执行应用程序,包括网络服务器、应用程序服务器、媒体服务器、数据库服务器等。可以提供的其他资源包括数据存储资源(未展示),并且可包括文件存储装置、块存储装置等。
虚拟化技对于计算硬件的可用性对为客户提供大规模的计算资源并且允许在多个客户之间有效且安全地共享计算资源提供了益处。例如,虚拟化技术(如由VMware或其他虚拟化系统提供的那些虚拟化技术)可允许通过给每个用户提供由物理计算装置托管的一个或多个虚拟机实例而在多个用户之间共享物理计算装置。虚拟机实例可以是充当独特逻辑计算系统的特定物理计算系统的软件仿真。这种虚拟机实例在共享给定的物理计算资源的多个操作系统之间提供隔离。此外,一些虚拟化技术可提供跨越一个或多个物理资源的虚拟资源,如具有跨越多个不同物理计算系统的多个虚拟处理器的单个虚拟机。
参考图2,通信网络230例如可以是链接网络中的公共可访问网络并且可能由各个不同方操作,如因特网。在其他实施方案中,通信网络230可以是专用网络,例如像完全或部分地不能被非特许用户访问的公司或大学网络。在再其他的实施方案中,通信网络230可包括具有对因特网的访问和/或从因特网进行的访问的一个或多个专用网络。
通信网络230可提供对计算机202的访问。用户计算机202可以是由用户200或数据中心210的其他用户使用的计算机。例如,用户计算机202a或202b可以是服务器、台式或便携式个人计算机、平板计算机、无线电话、个人数字助理(PDA)、电子书阅读器、游戏控制台、机顶盒或能够访问数据中心210的任何其他计算装置。用户计算机202a或202b可(例如,经由电缆调制解调器或数字用户线路(DSL))直接连接至因特网。虽然仅描述了两个用户计算机202a和202b,但是应理解可存在多个用户计算机。
用户计算机202也可用来配置由数据中心210提供的计算资源的各方面。就这一点而言,数据中心210可提供网络接口,通过所述网络接口,可通过使用在用户计算机202上执行的网络浏览器应用程序来配置数据中心的操作的各方面。或者,在用户计算机202上执行的独立应用程序可访问由数据中心210公开的应用程序编程接口(API)以便执行配置操作。也可使用用于配置数据中心210的操作(包括部署对应用程序的更新)的其他机制。
图2所示的服务器216可以是被适当地配置用于提供上文所述的计算资源的标准服务器,并且可提供用于执行一个或多个应用程序的计算资源。在一个实施方案中,计算资源可以是虚拟机实例218。在虚拟机实例的实施例中,服务器216中的每一个可被配置来执行能够执行虚拟机实例218的实例管理程序220a或220b(其在本文中以单数形式可被称为“一个实例管理程序220”或以复数形式可被称为“这些实例管理程序220”)。例如,实例管理程序220可以是虚拟机监视程序(VMM)或被配置来允许在服务器216上执行虚拟机实例218的另一类型的程序。如上文所述,虚拟机实例218中的每一个可被配置来执行应用程序的全部或一部分。
应理解,尽管上文所公开的实施方案讨论了虚拟机实例的情形,但是其他类型的实施方式可与本文所公开的概念和技术一起使用。例如,本文所公开的实施方案也可与并不使用虚拟机实例的计算系统一起使用。
在图2所示的示例性数据中心210中,路由器214可用来互连服务器216a和216b。路由器214也可连接至网关220,网关220连接至通信网络230。路由器214可在数据中心210中管理网络内的通信,例如通过基于这些通信的特性(例如,包括源地址和/或目的地地址、协议标识符等的标头信息)和/或专用网络的特性(例如,基于网络拓扑等的路由)适当地转发数据包或其他数据通信来管理通信。应理解,为了简单起见,示出了这个实施例的计算系统和其他装置的各方面,而并未展示某些常规的细节。另外,计算系统和其他装置在其他实施方案中可被互连并且可以不同的方式互连。
应理解,在图2中示出的网络拓扑已大大简化,并且可使用更多的网络和网络装置来互连本文所公开的各种计算系统。这些网络拓扑和装置对本领域技术人员来说应是显而易见的。
应理解,在图2中所述的数据中心210仅是说明性的,并且也可使用其他实施方式。另外,应理解,本文所公开的功能可以软件、硬件或软件与硬件的组合来实施。其他实施方式对本领域技术人员来说是应显而易见的。应理解,服务器、网关或其他计算装置可包括可交互并且执行所述类型的功能的硬件或软件的任何组合,其包括但不限于台式计算机或其他计算机、数据库服务器、网络存储装置和其他网络装置、PDA、平板计算机、移动电话、无线电话、寻呼机、电子管理器、因特网电器、(例如,使用机顶盒和/或个人/数字视频记录器的)基于电视的系统和包括适当通信能力的各种其他消费品。另外,由所示出模块提供的功能可在一些实施方案中以较少的组件来组合或分布于另外的模块中。类似地,在一些实施方案中,可以不提供所示出模块中的一些的功能且/或可使用其他另外的功能。
由数据中心210提供的所购买计算资源的容量可响应于需求而进行缩放。就这一点而言,缩放是指响应于需求而使计算资源的实例实例化(其在本文中也可称为“启动”或“创建”)或终止(其在本文中也可称为“停止缩放”)的过程。以这种方式,数据中心210的客户所购买的资源的容量可按需求进行缩放。
自动缩放是一种用于响应于对这些资源的需求的增加或减弱来对计算资源进行缩放的机制。自动缩放允许数据中心210的客户配置数据中心210来根据客户所定义的条件对客户所购买的计算资源进行缩放。例如,可定义规则以用于响应于指定的条件(如需求高峰)的发生而以特定方式放大容量。类似地,也可定义规则来响应于其他条件(如需求减弱)的发生而以特定方式缩小容量。当实例由客户手动地启动或当实例由在数据中心210中的自动缩放组件启动时,可使用本文所公开的用于启动虚拟机实例的机制。
数据中心210也可被配置有部署组件来辅助客户部署计算资源的新实例。部署组件可从客户接收配置,所述配置包括描述新实例应如何被配置的数据。例如,所述配置可以:指定应在新实例中安装的一个或多个应用程序或软件组件,提供将要在新实例中执行的脚本和/或其他类型的代码,提供指定应如何准备应用程序高速缓存的高速缓存热身逻辑以及其他类型的信息。部署组件使用客户提供的配置和高速缓存热身逻辑来启动、配置并预先准备计算资源的新实例。
在许多情况下,数据中心的客户或数据中心的软件或数据供应商可请求验证指定的计算配置未被修改或篡改。例如,客户可能想要接收到指定的操作系统已被加载的保证。在一些实施方案中,客户可能想要接收到特定软件应用程序已被加载并且未被篡改的保证。提供例如云计算服务的数据中心可能处于有利的位置来提供这种保证。服务提供商或数据中心通常拥有并且操作计算基础结构,而内容提供商可能向服务提供商或数据中心仅提供软件和/或数据。许多软件/数据供应商(如向数据中心和基于云的服务分布软件和内容的内容供应商)可请求由数据中心和基于云的服务提供的计算服务满足某些标准(如数据加载的完整性、处理某些数据的能力等)的保证。
在提供虚拟化服务的基于云的服务中,服务提供商关于软件/数据加载过程的位置将所述提供商置于通过客户端提供可信服务并且为客户端提供可信服务的位置。许多组织和商家依靠由服务提供商提供的计算资源来提供计算服务和信息服务,以便支持其日常操作。由服务提供商提供的计算服务对商家来说极其重要,因为连续的且可靠的计算服务可用性对商家正在进行的操作来说很重要。安全性不仅对服务可靠性来说而且对保护客户的有价值的且专有的信息来说是重要的考虑因素。因此,有必要使客户能够信任由数据中心提供的计算服务的可靠性和安全性。例如,如果客户请求安装指定的操作系统,那么基于云的服务被信任来启动具有指定的操作系统的虚拟机。当客户注册了基于云的服务时所假定的信任可因此被利用来允许通过利用服务提供商的信誉来将所述信任经由服务提供商所提供的可信服务转移至第三方。例如,服务提供商可审核并验证客户的软件配置并且提供针对所述配置的唯一标识符,所述标识符可用作第三方验证所述配置的完整性的凭据。因此,关于由将软件托管在服务提供商的资源上的客户所提供的服务,服务提供商扮演审核者的角色。
在一个实施方案中,客户可请求实例并且请求部署特定的软件配置和数据。在数据中心中的服务器操作员可负责在所述实例上加载客户所请求的软件和数据。另外,客户可请求数据中心提供审核证书。在一些实施方案中,审核证书可以是数字证书,但是应理解,可提供任何类型的证书(电子证书或其他形式的证书)。随后,可将审核证书呈现给第三方以便验证部署情况。由于第三方信任服务提供商,因而审核证书可作为对所部署软件和/或数据的确认而被接受。
因此,在各种实施方案中,服务提供商可充当验证部署情况的可信方,并且提供用于提供对部署的可信验证的手段。在一些实施方案中,使用由服务提供商作为服务来操作的资源的客户可使用如上文所述的审核证书机制来向其用户确认:实例正在使用由服务提供商加载并验证的软件。例如,提供数字视频或音乐服务的客户可向其用户提供特殊化媒体播放器软件,以便呈现视频或音乐文件,同时防止对所述文件的未授权复制。为了向视频或音乐提供商提供用户正在使用并未被篡改的合法呈现软件的保证,服务提供商可向视频或音乐提供商提供审核证书,以证明呈现软件的托管在服务提供商的计算资源上的实例已被加载并且针对已知配置被验证。
因此,作为部署软件和数据的计算硬件的拥有者/操作者,服务提供商可使用验证方法(如计算配置完整性验证工具)来审核所部署的软件和数据。在一个实施方案中,可计算所加载的软件和数据的校验和。校验和是从可用来检测数据在传输或存储期间的变化或误差的数据块计算出的值。通过重新计算校验和并且将其与所存储校验和进行比较来检查所传输或存储的数据的完整性,所存储校验和表示用来启动实例的文件的已知或期望状态的校验和。在其他实施方案中,可使用其他验证方法,如散列函数和指纹。
由于服务提供商的客户可能仅愿意下载数据来与可信用户交互或者以其他方式与可信用户交互,因而由服务提供商提供的配置完整性验证工具可通过提供可靠的数据完整性机制来提供这种信任。以这种方式,如本文所述的信任模型可在三方之间提供信任机制,这三方是:服务提供商(信任提供者)、服务提供商的客户(信任请求者),和服务提供商的客户的产品或服务的终端用户。在一个实施方案中,通常拥有并操作计算硬件的服务提供商可接收客户所提供的软件配置。服务提供商可使用如校验和的数据完整性机制来记录或审核在客户所请求的虚拟资源上加载的内容。在软件配置被加载时或以其他方式在被客户请求时(如在终端用户与虚拟资源交互之前),校验和可由服务提供商提供给客户。服务提供商也可提供其他信息,如模版和包括所加载文件的名称的审核日志。由于服务提供商可提供第三方请求者所需的全部验证,因而请求具有所述软件配置的实例的客户并不需要向任何第三方请求者提供任何另外的验证。
在实施方案中,审核信息可从服务提供商发送至第三方请求者,因此允许第三方请求者依靠直接来自服务提供商的审核以及校验和信息。第三方请求者可验证从服务提供商接收的校验和以及其他信息与第三方请求者所期望的信息相匹配。在一些实施方案中,第三方请求者可提供用于使虚拟机实例化的一组详细信息,如硬盘图像、引导加载程序、引导加载程序配置、硬件配置(例如,处理器和存储器)等。
校验和是可在本文所公开的实施方案中使用的数据完整性机制的一个实例。如上文所提及的,可使用用于验证数据完整性的任何机制,如散列函数算法或指纹算法。在一个实施方案中,可使用公钥基础结构(PKI)。在一些实施方案中,可信平台模块功能可包括在计算装置中。可信平台模块可包括独特地识别可信平台模块并且因此识别物理主机的认可私钥。可信平台模块也可包括加密功能。硬件制造商可签署对应的公钥来保证可信平台模块的完整性和秘钥的有效性。可信平台可利用可信平台模块的特征来实现验证。例如,在引导时,主机(例如,实例管理程序)可计算测量列表,这个测量列表由引导序列中所涉及的软件(例如,BIOS、引导加载程序和实施所述平台的软件)的散列组成。测量列表可被安全地存储在主机的可信平台模块中。为了提供对配置验证服务180的确认,服务可利用现时标志(nonce)(例如,用来签署加密通信的序列)来质询主机。配置验证服务180可请求本地可信平台模块来创建包含测量列表和现时标志的消息。这个消息可利用可信平台模块的私钥进行加密。随后,主机可向配置验证服务180发送所述消息,配置验证服务180随后可使用所述私钥的对应公钥来解密所述消息,从而对主机进行身份验证。随后,配置验证服务180可存储验证后的列表并且向第三方请求者发送验证后的列表或至少部分地基于所述验证后的列表的信息。通过检查现时标志是否匹配和测量列表是否对应于被视为可信的配置,第三方请求者可识别在不可信主机上的平台。通过使用可信平台模块,内容的提供商可确保内容仅被下载到并未被篡改或更改的可信装置上。
在一些实施方案中,另外一方或第四方可用作验证服务来提供任选等级或另外等级的验证。例如,第四方验证工具可审核并验证:服务提供商正在采用可靠的加载和验证过程并且将是可信的。
图3示出在其中提供配置验证服务的一个实施方案。图3包括虚拟机实例302、304、306和308。在图中,虚拟机实例302包括文件A、B、G和H以及校验和。虚拟机实例304包括文件A、B、C、D、E和F以及校验和。虚拟机实例306包括文件A和B以及校验和。虚拟机实例308包括文件G、H、M和N以及校验和。虚拟机实例302、304、306和308中的每一个可与相应的软件配置312、314、316和318相关联。作为实例,软件配置312可包括特定操作系统。
图4示出审核记录400的实施例。在一些实施方案中可实施图4所示的元素或字段的子集,而且并不是全部所实施字段都可被填充。当创建审核记录400时,可创建可用来独特地识别审核记录400的新的审核ID 401。在一些实施方案中,描述字段402可由用户或管理员提供。在一些实施方案中,可在其中使用审核记录的数据中心网络可包括如虚拟机实例的多个计算资源。在这些情况下,审核记录400可包含资源ID 403。例如,通过留出一组服务平台、一组网络地址范围、其他设备或资源和网络管理能力以供特定客户专用,提供商网络的操作员可建立用于所述客户的逻辑分区。
客户ID 404可用来识别请求了资源的客户。第三方ID 405可识别可被授权来请求审核记录400的内容中的一些或全部的一个或多个第三方。在一个实施方案中,授权第三方来请求并接收审核记录400的策略可由客户创建。配置验证服务180可接收针对审核记录的请求,并且检查所述策略来确定所述策略是否授权发出请求的第三方查看或接收所述记录。
审核记录400可包括配置验证服务180的数字签名410。文件列表440可包括数据列表,如在资源ID 403上识别的资源上下载的文件名。例如,文件列表440可包括文件450、451、452和453。完整性验证工具类型460可识别用来验证文件列表440的内容的数据完整性方法的类型。完整性验证工具数据470可存储完整性验证工具的值。
在一个实施方案中,图4所示的字段中的一些可由指向其他对象的引用或指针替换。例如,可将针对审核记录400的数据存储在单独的数据对象中,并且审核记录400可存储指向数据对象的引用。
图5示出可在其中实施本文所述的实施方案的示例性计算环境。参考这个图,服务器计算机502、510、520和530可与配置验证服务504通信,以使得可审核软件和数据信息。审核信息可存储在服务器计算机502、510、520和530中的一个上的数据存储中,或存储在是配置验证服务504的一部分的数据存储(未展示)中。在一些实施方案中,配置验证服务504可对应于如图1中所述的配置验证服务180。服务器计算机502可托管虚拟机实例506和508。类似地,服务器计算机510可托管虚拟机实例512;服务器计算机520可托管虚拟机实例522、524和526;并且服务器计算机530可托管虚拟机实例532。
服务器计算机502可向配置验证服务504发送虚拟机532将被启动的指示,并且作为响应,配置验证服务504可发起配置验证过程。配置验证服务504可与服务器计算机502的加载和配置过程交互以便生成用来启动所述实例的文件和数据的记录。另外,配置验证服务504可基于所安装的文件和数据来生成配置完整性验证工具。在另一种配置中,服务器502可生成用于虚拟机506或508的所安装文件和数据的记录,并且将所述记录发送至配置验证服务504以供存储。配置验证服务504可将所述记录或基于所述记录的信息出售给第三方。在实施方案中,实例管理程序可被配置来响应于来自客户的请求而生成记录。例如,客户可(经由控制台或API)向服务提供商提交请求来指示如下偏好:由配置验证服务504生成针对某些实例的记录。类似地,当启动实例时,客户可向API调用添加参数,这个参数指示已实现记录生成。当实例由服务提供商启动时,对生成记录的请求可被传播给主机,主机又可实现配置验证过程。
在一些实施方案中,可从服务器计算机502代表其他服务器计算机510、520和530将针对配置验证的请求发送至配置验证服务504。在其他实施方案中,第三方(如在服务器计算机502、510、520和530中的一个上执行或在另一计算装置上执行的服务)可代表服务器计算机502、510、520和530中的一个或多个发送请求。
配置验证服务504可实施为分布式系统并且可驻留在一个或多个数据中心中的一个或多个服务器计算机和/或其他计算资源上。在一些实施方案中,配置验证服务504可由VMM或在数据中心中执行的其他管理软件管理。配置验证服务504也可在一个或多个虚拟机上执行。
图6示出用于提供配置验证服务的示例性操作程序。在实施方案中,数据中心可给客户提供虚拟化计算机资源和/或存储资源的一个或多个实例。在操作600中,客户可请求计算资源(如虚拟实例)并且请求部署特定的软件配置和数据。例如,客户可向计算服务提交API调用,这个API调用指示要执行的动作(例如,RunInstances)和要启动的图像。客户也可请求验证针对图像的配置。在一个实施方案中,客户可创建用来允许将配置验证信息提供给第三方的策略。所述策略也可指定是否将允许第三方访问配置审核记录或仅访问配置验证的结果。针对验证配置的请求和/或策略可存储为附接至实例图像的元数据。可调用如上文所述的配置验证服务,所述配置验证服务例如对应于图1中所述的网络配置验证服务180和/或图5中所述的配置验证服务504。在操作610中,在数据中心中运行的放置服务(未示出)可识别可提供所请求的计算资源的资源,如在数据组中心中的计算机服务器。
在操作620中,可将所请求的计算资源联机。如果所请求的计算资源是虚拟机,那么可在所识别的服务器计算机上使虚拟机实例化。在操作622中,可读取配置验证元数据,并且可将对实现配置验证功能的请求作为启动请求的一部分推送给主机。在操作624中,可加载所请求的软件和数据。在一个实施方案中,实例的成功启动可包括向客户发送实例ID或映射到所述实例ID的某一其他令牌。在一些实施方案中,令牌可能是实例ID的加密版本。
在操作625中,可审核由主机加载的软件和数据。例如,实例管理程序可追踪由实例加载的软件文件和数据并且使用所述信息生成记录。在操作630中,可生成完整性验证工具,如校验和。例如,实例管理程序可针对被加载的每个文件和/或针对作为引导程序的一部分由实例加载的文件的集合生成校验值。或者,可由配置验证服务生成配置完整性验证工具。例如,可将在引导操作期间用来引导的文件发送至配置验证服务,配置验证服务可生成一个或多个校验和。如上文所述,这些操作的顺序不需要是相继进行的,并且可并行执行。例如,配置验证服务可审核所加载的软件和数据,并且在加载所述软件和数据时生成完整性验证工具。
在操作635中,确定是否已接收到验证请求。如果已接收到验证请求,那么在操作640中可将实例ID或令牌提供给请求所述验证的第三方。在一些实施方案中,第三方可查询用于验证的API并且通过经由所述API传递实例ID或令牌。可检查由客户创建的策略来确定第三方是否被授权接收验证信息。取决于所述策略,可提供审核结果和/或配置完整性验证工具。
图7示出用于验证计算配置的示例性操作程序。参考图7,操作700开始进行操作程序。操作700之后可以是操作702。操作702示出接收针对虚拟资源和用于所述虚拟资源的配置的请求。在实施方案中,可在包括多个计算装置的计算环境中接收所述请求,所述计算装置提供计算资源。另外,且任选地,所述配置可包括至少一个软件配置,所述至少一个软件配置的提供商已请求对所述至少一个软件配置进行完整性验证。
操作702之后可以是操作704。操作704示出响应于接收到针对虚拟资源的请求而根据所请求的配置使所请求的虚拟资源实例化。操作704之后可以是操作706。操作706示出审核实例化虚拟资源来生成所加载的软件和数据的记录。操作706之后可以是操作708。操作708示出基于所加载的软件和数据的记录和所请求的配置来计算配置完整性验证工具。
操作708之后可以是操作710。操作710示出确定是否已接收到对验证所加载的配置的请求。如果并未接收到请求,那么操作710之后可以是操作702。
如果已接收到对验证所加载的配置的请求,那么操作710之后可以是操作712。操作712示出提供配置完整性验证工具。在实施方案中,服务提供商可公开用于查询给定实例的完整性的API,并且第三方(如使用由所述实例提供的功能的公司)在与所述实例交互之前可向所述API提交查询。当与API交互时,第三方可指定如VerifyInstanceConfiguration的动作并且将实例的实例ID、实例的公共IP地址和/或令牌作为参数加以传递。在接收到请求之后,可将对验证实例配置的请求选路传送至配置验证服务。配置验证服务可对来自第三方的请求进行身份验证并且确定第三方是否被授权接收所述实例的配置信息。例如,配置验证服务可与标识服务通信来检查第三方是否有足够的权限。如果第三方有足够的权限,那么配置验证服务可将记录发送至第三方。或者,配置验证服务可将“正确”或“已验证”响应返回给第三方。这种配置可用来防止将实际上已加载的软件的细节分布给第三方并且可在策略中指定。配置完整性验证工具可用作对所加载的软件和数据提供了所请求的配置的可信第三方验证。例如,响应于至少一个软件配置的提供商对进行验证的请求,或响应于实例化虚拟资源的用户对验证至少一个软件配置的请求,将配置完整性验证工具和关于审核后的实例化虚拟资源的信息以及所加载软件和数据的记录发送至至少一个软件配置的提供商。
本公开的实施方案可基于以下条款来描述:
1.一种计算系统,其包括:
至少一个计算装置;以及
与所述至少一个计算装置通信的至少一个存储器,所述至少一个存储器在其上存储有计算机可读指令,所述指令在由所述计算系统执行时,使所述计算系统至少进行以下操作:
接收针对实例的请求;
响应于接收到针对所述实例的请求,使所述请求的实例实例化,其中使所述请求的实例实例化包括加载操作系统软件或数据;
审核所述实例来生成所述加载的操作系统软件或数据的记录;
基于所加载的操作系统软件或数据的记录和用于所述实例的配置来计算配置完整性验证工具;以及
响应于对验证所述操作系统软件或数据的请求,提供所述配置完整性验证工具、关于所述审核后的实例化实例的信息和所加载的操作系统软件或数据的记录,以作为对所述操作系统软件或数据被用来使所述实例实例化的可信第三方验证。
2.根据条款1所述的系统,其中所述配置完整性验证工具包括校验和。
3.根据条款1所述的系统,其中对验证所述操作系统软件或数据的所述请求是从所述配置的提供商或所述实例的用户接收的。
4.根据条款1所述的系统,其中所述配置完整性验证工具的提供商是由验证服务来认证。
5.根据条款1所述的系统,其中所述配置完整性验证工具是由公钥基础结构中的数字证书来认证。
6.根据条款1所述的系统,其中提供对操作系统或数据的验证的许可是由所述实例的请求者授权的。
7.一种用于验证计算配置的方法,所述方法包括:
接收针对计算资源的请求,其中提供所述计算资源包括加载代码或数据;
响应于接收到针对所述计算资源的所述请求,通过加载所述代码或数据使所述请求的计算资源实例化;
审核所述加载的代码或数据来生成所述加载的代码或数据的记录;
基于所述加载的代码或数据的所述记录来计算配置完整性验证工具;以及
响应于对验证所述加载的代码或数据的请求而发送所述配置完整性验证工具,所述配置完整性验证工具可用作对所述加载的代码或数据的可信验证。
8.根据条款7所述的方法,其中在包括多个计算装置的计算环境中接收所述请求,所述计算装置提供计算资源。
9.根据条款7所述的方法,其中所述计算资源是虚拟机。
10.根据条款7所述的方法,其中响应于来自所述代码或数据的提供商的对验证所述代码或数据的请求,将所述配置完整性验证工具发送至所述代码或数据的提供商。
11.根据条款7所述的方法,其中响应于所述计算资源的用户对验证所述代码或数据的请求,将所述配置完整性验证工具发送至所述代码或数据的用户。
12.根据条款7所述的方法,其中在所述计算资源的用户访问所述计算资源之前,将所述配置完整性验证工具发送至所述代码或数据的提供商。
13.根据条款7所述的方法,其中所述配置完整性验证工具包括校验和。
14.根据条款7所述的方法,其中所述配置完整性验证工具是由公钥基础结构中的数字证书来认证。
15.一种非暂时性计算机可读存储介质,所述非暂时性计算机可读存储介质在其上存储有计算机可读指令,所述计算机可读指令包括在计算节点上被执行时至少导致以下操作的指令:
响应于接收到针对计算资源的请求,其中所述请求包括需要加载代码或数据的配置,根据包括所述代码或数据的所述请求的配置来提供所述请求的计算资源;
审核所述计算资源来生成所述加载的代码或数据的记录;
基于所述加载的代码或数据的记录来计算配置完整性验证工具;以及
呈现所述配置完整性验证工具,以作为对所述加载的代码或数据的可信验证。
16.根据条款15所述的非暂时性计算机可读存储介质,其中所述呈现是响应于所述计算资源对访问由所述代码或数据提供的功能的请求。
17.根据条款16所述的非暂时性计算机可读存储介质,其中所述呈现包括将所述配置完整性验证工具发送至所述代码或数据的提供商。
18.根据条款16所述的非暂时性计算机可读存储介质,其中所述呈现包括将所述配置完整性验证工具发送至由所述代码或数据的提供商授权的服务提供商。
19.根据条款16所述的非暂时性计算机可读存储介质,其中所述计算资源是虚拟实例。
20.根据条款16所述的非暂时性计算机可读存储介质,其中所述配置完整性验证工具包括校验和。
21.一个或多个非暂时性计算机可读存储介质,所述非暂时性计算机可读存储介质总体上在其上存储有可执行指令,所述指令在由计算机系统的一个或多个处理器执行时,使所述计算机系统至少实施:
应用程序编程接口子系统,其被配置来进行以下操作:
接收第一电子消息,所述第一电子消息编码指示针对计算资源的请求的标识符,其中提供所述计算资源包括加载代码或数据;以及
响应于接收到所述电子消息中的一个,发送第二电子消息,所述第二电子消息指示导致以下操作的指令:
加载包括所述代码或数据的所述请求的计算资源;
审核所述加载来生成所述加载的代码或数据的记录;以及
基于所述加载的代码或数据的所述记录来计算配置完整性验证工具。
22.根据条款21所述的非暂时性计算机可读存储介质,其中所述第二电子消息指示导致以下操作的指令:响应于第三电子消息而发送所述配置完整性验证工具,所述第三电子消息编码指示对验证所述加载的代码或数据的请求的标识符,所述配置完整性验证工具可用作对所述加载的代码或数据的可信验证。
在前述部分中所述的过程、方法和算法中的每一个可体现在由一个或多个计算机或计算机处理器执行的代码模块中,并且完全或部分地由所述代码模块自动进行。所述代码模块可存储在任何类型的非暂时性计算机可读存储介质或计算机存储装置(如硬盘、固态存储器、光盘和/或类似装置)上。所述过程和算法可部分地或全部地在专用电路中实施。所公开的过程和处理步骤的结果可永久地或以其他方式存储在任何类型的非暂时性计算机存储器(例如像易失性或非易失性存储装置)中。
上文所述的各种特征和过程可彼此独立地使用或可以各种方方式进行组合。所有可能的组合和子组合意图落入本公开的范围内。另外,某些方法和过程块可在一些实施方式中省略掉。本文所述的方法和过程也不限于任何特定的顺序,并且与之相关的块或状态可按其他适当的顺序执行。例如,所述的块或状态可按不同于已特别公开的次序的次序执行,或多个块或状态可组合在单个块或状态中。示例性块或状态可串行地、并行地或以其他方式执行。块或状态可被添加至所公开的示例性实施方案或可从这些实施方案中移除。本文所述的示例性系统和组件可以不同于所述方式的方式被配置。例如,与所公开的示例性实施方案相比,元件可被添加、移除或重新布置。
还应了解,尽管各种项目被示出为在使用时存储在存储器中或者存储装置上,但是为了存储器管理和数据完整性,可在存储器与其他存储装置之间传送这些项目或它们的部分。或者,在其他实施方案中,软件模块和/或系统中的一些或全部可在另一装置上的存储器中执行,并且经由计算机间的通信来与所示出的计算机系统通信。另外,在一些实施方案中,可以其他方式(如,至少部分地在固件和/或硬件中)实施或提供所述系统和/或模块中的一些或全部,所述硬件包括但不限于一个或多个专用集成电路(ASIC)、标准集成电路、控制器(例如,通过执行适当的指令并且包括微控制器和/或嵌入式控制器)、现场可编程门阵列(FPGA)、复杂可编程逻辑装置(CPLD)等。所述模块、系统和数据结构中的一些或全部也可(例如作为软件指令或结构化数据)存储在计算机可读介质(如硬盘、存储器、网络或通过适当驱动器或经由适当连接来读取的便捷式媒体物品)上。所述系统、模块和数据也可作为所生成的数据信号(例如,作为载波或其他模拟或数字传播信号的一部分)在各种计算机可读传输介质(包括基于无线的介质和基于有线/电缆的介质)上传输,并且可采取多种形式(例如,作为单个模拟信号或多路复用的模拟信号的一部分,或作为多个离散的数字数据包或帧)。在其他实施方案中,这类计算机编程产品也可采取其他形式。因此,本发明可用其他计算机系统配置来实践。
除非另外特别说明,或者在所用上下文中另外加以理解,否则如“能够”、“可”、“可能”、“可以”、“例如”等等本文所使用的条件语言通常意图表达:某些实施方案包括某些特征、元件和/或步骤,但其他实施方案不包括这些特征、元件和/或步骤。因此,这种条件语言通常并非意图暗示所述特征、元件和/或步骤无论如何都是一个或多个实施方案所必需的,或者并非暗示一个或多个实施方案必须包括用于在借助和不借助输入或者提示的情况下决定是否包括这些特征、元件和/或步骤或是否在任何特定实施方案中实施这些特征、元件和/或步骤的逻辑。术语“包含”、“包括”、“具有”等是同义的,并且都可以开放式的方式使用,并且并不排除另外的元件、特征、动作、操作等。同样地,术语“或者”是在包括性意义上(而不是它的排他性意义上)使用,因此例如在用来连接元素的列表时,术语“或者”意为所述列表中的元素中的一个、一些或全部。
尽管已经描述某些示例性实施方案,但是这些实施方案仅仅通过实例呈现,且并非意图限制本文所公开的发明的范围。因此,前文所述的内容并非意图暗示任何特定的特征、特性、步骤、模块或块是必需的或不可或缺的。实际上,本文所述的新颖方法和系统可以多种其他形式体现;另外,在不脱离本文所公开的发明的精神的情况下,可以对本文所述的方法和系统做出各种省略、替代和形式变化。所附权利要求书和其等效物意图涵盖将会落在本文所公开的发明的范围和精神内的这类形式或修改。

Claims (15)

1.一种被配置为代表多个用户管理虚拟机实例的计算系统,所述计算系统包括:
至少一个计算装置;以及
与所述至少一个计算装置通信的至少一个存储器,所述至少一个存储器在其上存储有计算机可读指令,所述指令在由所述计算系统执行时使所述计算系统至少进行以下操作:
接收针对一个或多个虚拟机实例的请求;
响应于接收到针对所述一个或多个虚拟机实例的所述请求,使虚拟机实例实例化,其中使虚拟机实例实例化包括加载与所述虚拟机实例的配置相关联的软件和数据;
审核实例化的虚拟机实例来生成所述加载的软件和数据的记录;
基于软件和数据的所述记录和用于所述实例化的虚拟机实例的配置来计算配置完整性验证工具;以及
响应于对验证所述软件和数据的请求,提供所述配置完整性验证工具、关于所述审核后的实例化的虚拟机实例的信息和所加载的软件和数据的所述记录,以作为对所述软件和数据被用来使所述虚拟机实例实例化的可信第三方验证。
2.根据权利要求1所述的系统,其中所述配置完整性验证工具包括校验和。
3.根据权利要求1所述的系统,其中对验证所述软件和数据的所述请求是从所述配置的提供商或所述实例的用户接收的。
4.根据权利要求1所述的系统,其中所述配置完整性验证工具的提供商是由验证服务来认证。
5.根据权利要求1所述的系统,其中所述配置完整性验证工具是由公钥基础结构中的数字证书来认证。
6.根据权利要求1所述的系统,其中对提供所述软件和数据的验证的许可是由所述实例的请求者授权。
7.一种用于通过提供商网络向多个用户提供虚拟化计算资源来验证计算配置的方法,所述方法包括:
接收针对一个或多个虚拟化计算资源的请求,其中提供所述一个或多个虚拟化计算资源包括加载代码和数据;
响应于接收到针对所述一个或多个虚拟化计算资源的所述请求,通过加载与实例化的虚拟化计算资源相关联的代码和数据使虚拟化计算资源实例化;
审核所述加载的与实例化的虚拟化计算资源相关联的代码和数据来生成所述加载的与实例化的虚拟化计算资源相关联的代码和数据的记录;
基于所述加载的与实例化的虚拟化计算资源相关联的代码和数据的所述记录来计算配置完整性验证工具;以及
响应于对验证所述加载的与实例化的虚拟化计算资源相关联的代码和数据的请求而发送所述配置完整性验证工具,所述配置完整性验证工具可用作对所述加载的与实例化的虚拟化计算资源相关联的代码和数据的可信验证。
8.根据权利要求7所述的方法,其中在包括多个计算装置的计算环境中接收所述请求,所述计算装置提供计算资源。
9.根据权利要求7所述的方法,其中所述虚拟化计算资源是虚拟机。
10.根据权利要求7所述的方法,其中响应于来自所述代码和数据的提供商的对验证所述代码和数据的请求,将所述配置完整性验证工具发送至所述代码和数据的所述提供商。
11.根据权利要求7所述的方法,其中响应于所述计算资源的用户对验证所述代码和数据的请求,将所述配置完整性验证工具发送至所述代码和数据的所述用户。
12.根据权利要求7所述的方法,其中在所述计算资源的用户访问所述计算资源之前,将所述配置完整性验证工具发送至所述代码和数据的提供商。
13.根据权利要求7所述的方法,其中所述配置完整性验证工具包括校验和。
14.根据权利要求7所述的方法,其中所述配置完整性验证工具是由公钥基础结构中的数字证书来认证。
15.根据权利要求7所述的方法,其中将所述配置完整性验证工具发送至由所述代码和数据的提供商授权的服务提供商。
CN201480024881.9A 2013-03-04 2014-03-03 由可信提供商进行的配置和验证 Active CN105164633B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/784,276 2013-03-04
US13/784,276 US9407505B2 (en) 2013-03-04 2013-03-04 Configuration and verification by trusted provider
PCT/US2014/020025 WO2014137939A1 (en) 2013-03-04 2014-03-03 Configuration and verification by trusted provider

Publications (2)

Publication Number Publication Date
CN105164633A CN105164633A (zh) 2015-12-16
CN105164633B true CN105164633B (zh) 2018-12-21

Family

ID=51421590

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480024881.9A Active CN105164633B (zh) 2013-03-04 2014-03-03 由可信提供商进行的配置和验证

Country Status (9)

Country Link
US (1) US9407505B2 (zh)
EP (1) EP2965192B1 (zh)
JP (1) JP6022718B2 (zh)
KR (1) KR101791768B1 (zh)
CN (1) CN105164633B (zh)
AU (1) AU2014226162B2 (zh)
CA (1) CA2903376C (zh)
SG (1) SG11201506949TA (zh)
WO (1) WO2014137939A1 (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10506026B1 (en) * 2013-03-13 2019-12-10 Amazon Technologies, Inc. Resource prestaging
US11087340B1 (en) * 2013-12-17 2021-08-10 EMC IP Holding Company LLC Systems and methods for configuring converged infrastructure components
GB2522032A (en) 2014-01-10 2015-07-15 Ibm Controlling the configuration of computer systems
US9542558B2 (en) * 2014-03-12 2017-01-10 Apple Inc. Secure factory data generation and restoration
US20170364381A1 (en) * 2015-01-13 2017-12-21 Hewlett Packard Enterprise Development Lp Data center configuration
US10437621B2 (en) * 2015-04-22 2019-10-08 Cisco Technology, Inc. Monitoring and managing applications on virtual machines using a proxy agent
US10228924B2 (en) * 2016-04-19 2019-03-12 International Business Machines Corporation Application deployment and monitoring in a cloud environment to satisfy integrity and geo-fencing constraints
KR102522778B1 (ko) * 2016-04-27 2023-04-19 한국전자통신연구원 분산 대리자 기반 무결성 검증을 수행하는 개별 기기, 그를 포함하는 개별 기기 무결성 검증 시스템 및 그 방법
US10684906B2 (en) * 2016-06-15 2020-06-16 Microsoft Technology Licensing, Llc Monitoring peripheral transactions
US20180288101A1 (en) * 2017-03-29 2018-10-04 Hewlett Packard Enterprise Development Lp Verifying that usage of virtual network function (vnf) by a plurality of compute nodes comply with allowed usage rights
US10404471B1 (en) * 2017-04-26 2019-09-03 Wells Fargo Bank, N.A. Secure ledger assurance tokenization
US11075925B2 (en) * 2018-01-31 2021-07-27 EMC IP Holding Company LLC System and method to enable component inventory and compliance in the platform
JP7314935B2 (ja) 2018-06-05 2023-07-26 日本電気株式会社 システム、サーバ、検証方法及びプログラム
JP7195796B2 (ja) * 2018-07-23 2022-12-26 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、及び、プログラム
CN111008026B (zh) 2018-10-08 2024-03-26 阿里巴巴集团控股有限公司 集群管理方法、装置及系统
US11599422B2 (en) 2018-10-16 2023-03-07 EMC IP Holding Company LLC System and method for device independent backup in distributed system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080235793A1 (en) * 2007-03-22 2008-09-25 International Business Machines Corporation Integrity protection in data processing systems
US20090300049A1 (en) * 2008-06-03 2009-12-03 Samsung Electronics Co., Ltd. Verification of integrity of computing environments for safe computing
CN101621520A (zh) * 2008-06-30 2010-01-06 英特尔公司 用于多方验证的基于平台的可信性验证服务的方法和系统
US20100293373A1 (en) * 2009-05-15 2010-11-18 International Business Machines Corporation Integrity service using regenerated trust integrity gather program
US8125243B1 (en) * 2007-03-12 2012-02-28 Cypress Semiconductor Corporation Integrity checking of configurable data of programmable device

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050223362A1 (en) * 2004-04-02 2005-10-06 Gemstone Systems, Inc. Methods and systems for performing unit testing across multiple virtual machines
CA2621245A1 (en) * 2005-09-08 2007-03-15 Telefonaktiebolaget Lm Ericsson (Publ) Method and arrangement for user friendly device authentication
US8380987B2 (en) * 2007-01-25 2013-02-19 Microsoft Corporation Protection agents and privilege modes
WO2008146677A1 (ja) * 2007-05-24 2008-12-04 Nec Corporation 仮想マシン管理装置、仮想マシン管理方法および仮想マシン管理プログラム
US20110093847A1 (en) * 2009-10-15 2011-04-21 Shah Dharmesh R Application Hosting Service for Cloud Environments Using Dynamic Machine Images
US8910278B2 (en) * 2010-05-18 2014-12-09 Cloudnexa Managing services in a cloud computing environment
US8724473B2 (en) * 2010-07-16 2014-05-13 Ixia Locating signatures in packets
US8924791B2 (en) * 2010-08-30 2014-12-30 Hewlett-Packard Development Company, L.P. System including a vendor computer system for testing software products in a cloud network

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8125243B1 (en) * 2007-03-12 2012-02-28 Cypress Semiconductor Corporation Integrity checking of configurable data of programmable device
US20080235793A1 (en) * 2007-03-22 2008-09-25 International Business Machines Corporation Integrity protection in data processing systems
US20090300049A1 (en) * 2008-06-03 2009-12-03 Samsung Electronics Co., Ltd. Verification of integrity of computing environments for safe computing
CN101621520A (zh) * 2008-06-30 2010-01-06 英特尔公司 用于多方验证的基于平台的可信性验证服务的方法和系统
US20100293373A1 (en) * 2009-05-15 2010-11-18 International Business Machines Corporation Integrity service using regenerated trust integrity gather program

Also Published As

Publication number Publication date
KR20160008507A (ko) 2016-01-22
WO2014137939A1 (en) 2014-09-12
EP2965192A1 (en) 2016-01-13
AU2014226162B2 (en) 2017-01-12
EP2965192A4 (en) 2016-11-02
US9407505B2 (en) 2016-08-02
SG11201506949TA (en) 2015-09-29
JP6022718B2 (ja) 2016-11-09
CN105164633A (zh) 2015-12-16
US20140250215A1 (en) 2014-09-04
JP2016510960A (ja) 2016-04-11
CA2903376C (en) 2018-05-15
AU2014226162A1 (en) 2015-10-29
KR101791768B1 (ko) 2017-11-20
EP2965192B1 (en) 2020-05-06
CA2903376A1 (en) 2014-09-12

Similar Documents

Publication Publication Date Title
CN105164633B (zh) 由可信提供商进行的配置和验证
CN111201530B (zh) 用于安全应用监测的系统和方法
CN109981679B (zh) 在区块链网络中执行事务的方法和装置
US10790980B2 (en) Establishing trust in an attribute authentication system
US9871821B2 (en) Securely operating a process using user-specific and device-specific security constraints
US8943319B2 (en) Managing security for computer services
US20150188944A1 (en) System and method for hardware-based trust control management
CN112671720B (zh) 一种云平台资源访问控制的令牌构造方法、装置及设备
US10733238B2 (en) Script manager for distributed systems
CN104969201A (zh) 用于调用特权操作的安全接口
US10027658B1 (en) Seamless provision of secret token to cloud-based assets on demand
CN106716957A (zh) 高效且可靠的认证
KR20140014295A (ko) 멀티-테넌트 서비스 제공자에 의한 동적 플랫폼 재구성
US20120210436A1 (en) System and method for fingerprinting in a cloud-computing environment
KR20130101964A (ko) 플랫폼 컴포넌트들의 보안 업그레이드 또는 다운그레이드를 위한 방법 및 시스템
CN109842616A (zh) 账号绑定方法、装置及服务器
WO2023072817A1 (en) Control of access to computing resources implemented in isolated environments
CN102685115B (zh) 一种资源的访问方法、资源管理设备和系统
CN116707849A (zh) 针对飞地实例的云服务访问权限设置方法和云管理平台
CN109802927A (zh) 一种安全服务提供方法及装置
Tamrakar et al. On rehoming the electronic id to TEEs
US20230229752A1 (en) Attestation of application identity for inter-app communications
CN117439771A (zh) 身份认证方法及装置
Rivera-Dourado DebAuthn: a Relying Party Implementation as a WebAuthn Authenticator Debugging Tool
CN116263817A (zh) 一种数据访问控制方法及相关系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant