CN108604188B - 操作者迁移 - Google Patents

操作者迁移 Download PDF

Info

Publication number
CN108604188B
CN108604188B CN201680080873.5A CN201680080873A CN108604188B CN 108604188 B CN108604188 B CN 108604188B CN 201680080873 A CN201680080873 A CN 201680080873A CN 108604188 B CN108604188 B CN 108604188B
Authority
CN
China
Prior art keywords
runtime environment
operator
target
instance
target runtime
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
CN201680080873.5A
Other languages
English (en)
Other versions
CN108604188A (zh
Inventor
H·古斯塔夫松
H·恩隆德
C·耶尔克比
B·斯梅茨
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.)
Telefonaktiebolaget LM Ericsson AB
Original Assignee
Telefonaktiebolaget LM Ericsson AB
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 Telefonaktiebolaget LM Ericsson AB filed Critical Telefonaktiebolaget LM Ericsson AB
Publication of CN108604188A publication Critical patent/CN108604188A/zh
Application granted granted Critical
Publication of CN108604188B publication Critical patent/CN108604188B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/6281Protecting 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 at program execution time, where the protection is within the operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • 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/604Tools and structures for managing or administering access control systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Automation & Control Theory (AREA)
  • Stored Programmes (AREA)
  • Storage Device Security (AREA)

Abstract

提供了用于迁移应用的操作者的实例的方法和对应的运行时环境。初始运行时环境执行一种方法,该方法包括基于所获得的针对一组目标运行时环境的安全属性,从该组目标运行时环境中选择目标运行时环境以用于该操作者的实例的迁移。该方法还包括一旦已经选择了目标运行时环境就将操作者的实例迁移到所选择的目标运行时环境。

Description

操作者迁移
技术领域
本文给出的实施例涉及用于迁移应用的操作者(actor)的实例的方法、运行时环境、计算机程序和计算机程序产品。
背景技术
在通信网络中,对于给定的通信协议、其参数和部署通信网络的物理环境而言获得良好性能和容量可能存在挑战。
例如,在为通信网络中的给定通信协议提供良好性能和容量中的一个参数是在通信网络中的至少两个运行时环境之间分布应用的能力。
因此,运行时环境能够允许将表示为操作者的应用模块部署分布在若干个设备上(每个设备包括运行时环境)。一般而言,操作者可被视为通过消息进行通信的分布式应用的一部分,参阅http://arxiv.org/abs/1008.1459(根据在2016年1月29日时访问的)。操作者具有条件以指导在运行时环境上的操作者的实例的布置。运行时环境具有描述运行时环境功能以及其他信息的属性。用于处理分布式应用的通信网络中的运行时环境的当前实现缺乏对安全性的支持。
能够将诸如applet(小应用程序)之类的软件组件移动到运行时环境中的环境是Java。Java为applet提供运行时安全性。根据Java框架,applet(连同访问许可)被签名,运行时环境在开始执行applet之前,将验证applet和许可。然而,Java框架不允许applet来验证运行时的可信度(超出了证书的拥有的要求,该证书具有对于applet签名所需的公钥)。
因此,需要对运行时环境上的分布式应用的改进处理。
发明内容
本文的实施例的目的是提供对运行时环境上的分布式应用的处理。
根据第一方面,提出了一种用于迁移应用的操作者的实例的方法。该方法由初始运行时环境执行。该方法包括:基于所获得的一组目标运行时环境的安全属性,从所述一组目标运行时环境中选择目标运行时环境以用于所述操作者的实例的迁移。该方法包括:一旦已经选择了目标运行时环境,就将所述操作者的实例迁移到所选择的目标运行时环境。
根据第二方面,提出了一种运行时环境,该运行时环境担当用于迁移应用的操作者的实例的初始运行时环境。运行时环境包括处理电路。处理电路被配置为使该运行时环境基于所获得的担当目标运行时环境的一组运行时环境的安全属性,从担当目标运行时环境的一组运行时环境中选择担当目标运行时环境的运行时环境以用于所述操作者的实例的迁移。处理电路被配置为一旦已经选择了担当目标运行时环境的运行时环境,就将所述操作者的实例迁移到担当目标运行时环境的所选择的运行时环境。
根据第三方面,提出了一种运行时环境,所述运行时环境担当用于迁移应用的操作者的实例的初始运行时环境。运行时环境包括:选择模块,其被配置为基于所获得的担当目标运行时环境的一组运行时环境的安全属性,从担当目标运行时环境的一组运行时环境来选择担当目标运行时环境的运行时环境以用于所述操作者的实例的迁移。运行时环境包括迁移模块,其被配置为一旦选择了担当目标运行时环境的运行时环境,就将操作者的实例迁移到担当目标运行时环境的所选择的运行时环境。
根据第四方面,提供了一种用于迁移应用的操作者的实例的计算机程序,该计算机程序包括计算机程序代码,当在担当初始运行时环境的运行时环境的处理电路上运行时,该计算机程序代码使得运行时环境执行根据第一方面的方法。
根据第五方面,提出了一种用于迁移应用的操作者的实例的方法。该方法由目标运行时环境执行。该方法包括识别安全属性,该安全属性使得初始运行时环境能够选择目标运行时环境以用于操作者的实例的迁移。该方法包括基于所识别的安全属性从初始运行时环境获得用于实例化操作者的实例所需的数据。该方法包括当满足针对操作者的实例的目标运行时环境的授权策略时,实例化操作者的实例,从而允许操作者的实例访问至少一个资源对象。
根据第六方面,提出了一种担当目标运行时环境的运行时环境,其用于迁移应用的操作者的实例,该运行时环境包括处理电路。处理电路被配置为使运行时环境识别安全属性,该安全属性使得担当初始运行时环境的运行时环境能够选择用于操作者的实例的迁移的目标运行时环境。处理电路被配置为使运行时环境基于所识别的安全属性从担当初始运行时环境的运行时环境获得用于实例化操作者的实例所需的数据。处理电路被配置为当满足针对操作者的实例的担当目标运行时环境的运行时环境的授权策略时,使运行时环境实例化操作者的实例,从而允许操作者的实例访问至少一个资源对象。
根据第七方面,提出了一种担当目标运行时环境的运行时环境,其用于应用的操作者的实例的迁移。运行时环境包括:识别模块,其被配置为识别安全属性,该安全属性使得担当初始运行时环境的运行时环境能够选择用于操作者的实例的迁移的目标运行时环境。运行时环境包括:获取模块,该获取模块被配置为基于所识别的安全属性从担当初始运行时环境的运行时环境获得用于实例化操作者的实例所需的数据。运行时环境包括:实例化模块,其被配置为当满足针对操作者的实例的担当目标运行时环境的运行时环境的授权策略时,实例化操作者的实例,从而允许操作者的实例访问至少一个资源对象。
根据第八方面,提供了一种用于迁移应用的操作者的实例的计算机程序,该计算机程序包括计算机程序代码,当该计算机程序代码在担当目标运行时环境的运行时环境的处理电路上运行时,该计算机程序代码使得运行时环境执行根据第五方面的方法。
根据第九方面,提供了一种计算机程序产品,包括根据第四方面和第八方面中的至少一个的计算机程序以及在其上存储计算机程序的计算机可读存储介质。计算机可读存储介质可以是非暂时性的计算机可读存储介质。
有利地,这些方法,这些运行时环境和这些计算机程序提供了操作者的实例的高效迁移。
有利地,这些方法,这些运行时环境和这些计算机程序使得能够分布式应用的操作者的安全迁移。分布式应用的操作者的这种安全迁移进而使得能够在运行时环境上的分布式应用的高效处理。
注意的是,在适当的情况下,第一、第二、第三、第四、第五、第六、第七、第八和第九方面的任何特征可以应用于任何其他方面。同样地,第一方面的任何优点可以分别同样地应用于第二、第三、第四、第五、第六、第七、第八和/或第九方面,反之亦然。从以下详细的公开内容,所附从属权利要求以及附图,所公开的实施例的其他目标、特征和优点将显而易见。
通常,除非本文另有明确定义,否则权利要求中使用的所有术语将根据它们在技术领域中的普通含义来解释。除非另有明确说明,否则所有提及的“一个/一种/元素、装置、组件、元件、步骤等”将被公开地解释为指代元素、装置、组件、元件、步骤等的至少一个实例。除非明确说明,否则本文公开的任何方法的步骤不必以所公开的确切顺序执行。
附图说明
现在通过示例的方式参考附图来描述本发明构思,其中:
图1a是示出根据实施例的通信网络的示意图;
图1b是示出根据实施例的操作者的实例的迁移的示意图;
图2a是示出根据实施例的运行时环境的功能单元的示意图;
图2b是示出根据实施例的运行时环境的功能模块的示意图;
图3示出了根据一个实施例的包括计算机可读元件的计算机程序产品的一个示例;和
图4、5、6和7是根据实施例的方法的流程图。
具体实施方式
现在在下文中将参考附图更全面地描述本发明构思,附图中示出了本发明构思的某些实施例。然而,本发明构思可以以许多不同的形式来体现,并且不应该被解释为限于本文阐述的实施例;相反,这些实施例是通过示例提供的,以便本公开将是彻底的和完全的,并且将本发明构思的范围完全传达给本领域技术人员。在整个说明书中,相同的数字指代相同的元素。虚线所示的任何步骤或特征应当被视为是可选的。
图1a示意性地示出了通信网络100。通信网络100包括:三个实体(实体1、实体2、实体3)120a、120b、120c,其表示设备、计算节点和存储节点的任何组合。每个实体120a、120b、120c可以具有其自己的硬件(HW)并且可以具有其自己的操作系统(OS)。可替代地,硬件和/或操作系统在实体120a、120b、120c中的至少两个实体之间共享。
实体120a、120b、120c托管第一应用(App 1)130和第二应用(App 2)140,它们中的每个应用分布在实体120a、120b、120c之间。应用130、140透明地分布在通信网络100上,并包括操作者(A1、A2、A3、A4、A5、A6)。在操作者A1、A2、A3、A4、A5、A6和实体120a、120b、120c之间没有一对一的映射。例如,在图1a的说明性示例中,操作者A5和A6都驻留在同一实体120b(即,实体2)上。操作者(A1、A2、A3、A4、A5、A6)可以凭借运行时环境200a、200b、200c中的至少一个运行时环境来访问资源对象160。每个资源对象160可以是文件系统、传感器、执行器、网络接口等,通过运行时环境200a、200b、200c提供对其的访问。
通信网络100还包括:分布式执行环境150,其由一组运行时环境200a、200b、200c的网络形成,被应用130、140看作单个平台。
每个操作者A1、A2、A3、A4、A5、A6可以作为一个或多个实例110来运行。本文公开的实施例涉及用于迁移应用的操作者的实例110的机制。为了获得这样的机制,提供了担当初始运行时环境和/或担当目标运行时环境的运行时环境200a、200b、200c,由运行时环境200a、200b、200c执行的方法,包括例如以计算机程序的形式的代码的计算机程序产品,当代码在运行时环境200a、200b、200c的处理电路上运行时,使得运行时环境200a、200b、200c执行该方法。
一般而言,操作者或操作者的实例110可以被视为数据(例如,可执行文件,状态,部署条件和凭证)的集合中的任何集合。在这方面,只有实例可以被认为具有状态,而操作者可以被认为是无状态的。从概念上讲,部署条件和凭证可以是分离的,并由初始化操作者的实例化或执行的实体应用在操作者上。某些部署条件与目标运行时环境的特定安全性属性相关,操作者的实例被允许迁移(推送或实例化)到目标运行时环境。操作者的每个实例具有安全属性的需求值,为简单起见,它们被称为安全条件。
操作者的实例可以具有应用属性和潜在地具有操作者特定的安全属性。接下来将概述这些属性的示例。
目标运行时策略是对资源属性和值的条件,例如,能够获得的安全个人识别号(PIN)代码,在目标运行时环境处能够获得的安全用户接口、安全引导等。
部署凭证是应用于操作者的实例的安全属性(在该安全属性下,操作者的实例将运行),例如,角色、用户名和密码、域证书、应用证书等。部署凭证可以是应用用户凭证。部署凭证可以是开始操作者的实例的迁移的运行时环境的凭证。虽然在提供凭证时,命名的部署凭证不会招致在时间上的任何限制;但是在部署之前或部署之后也可以提供部署凭证。
操作者凭证是操作者实例的属性,例如签名。操作者凭证的示例是操作者的开发者签名,以及证明用于签名的凭证的相应证书。
运行时环境可以具有运行时安全属性。接下来将概述此类属性的示例。
操作者策略是具有如下的条件:给定操作者的部署以及关于在操作者签名上的要求或运行时环境的操作者凭证。
运行时凭证是当前托管操作者实例的运行时环境的安全属性,可以是域证书、实体证书、口令、秘密密钥或公钥,或基于非证书的PKI结构(如Web of Trust)
资源对象160(见下文)可以具有安全属性。接下来将概述此类属性的示例。
访问策略是具有如下的条件:对资源对象160的操作者实例和操作者凭证权限、部署凭证权限以及运行时凭证权限。
图4和5是示出如由担当初始运行时环境的运行时环境200a执行的用于迁移应用的操作者的实例110的方法的实施例的流程图。图6和7是示出如由担当目标运行时环境的运行时环境200b执行的用于迁移应用的操作者的实例110的方法的实施例的流程图。见下文,有利地提供这些方法作为计算机程序320a,320b。
本文公开的实施例中的至少一些实施例基于初始运行时环境200a将操作者的实例110迁移到目标运行时环境200b,同时在目标运行时环境200b上实施操作者的安全条件,其中目标运行时环境200b强制对操作者的他的安全条件。
始终并行参考图1b。在图1b中,在(a)处示出了初始运行时环境200a和目标运行时环境200b,并且其中初始运行时环境200a拥有应用的操作者的实例110。
现在参考图4,其示出了根据实施例的如由担当初始运行时环境的运行时环境200a执行的用于迁移应用的操作者的实例110的方法。
S106:初始运行时环境200a从一组目标运行时环境200b、200c中选择目标运行时环境200b以用于操作者的实例110的迁移。基于所获得的针对一组目标运行时环境200b、200c的安全属性来选择目标运行时环境200。下面将公开如何获得这种安全属性的示例。在图1b中,在(b)处示出了初始运行时环境200a和目标运行时环境200b,并且其中初始运行时环境200a已经选择目标运行时环境200b用于操作者的实例110的迁移(如箭头170所示)。
S108:一旦已经选择了目标运行时环境200b,初始运行时环境200a就将操作者的实例110迁移到所选择的目标运行时环境200b。在图1b中,在(c)处示出了初始运行时环境200a和目标运行时环境200b,并且其中已经将操作者的实例110迁移到目标运行时环境200b。
现在将公开与如由初始运行时环境200a执行的迁移应用的操作者的实例110的进一步细节有关的实施例。
可以以分布式或集中式方式获得安全属性。因此,根据一个实施例,直接从目标运行时环境200b、200c中的至少一个目标运行时环境来获得在一组目标运行时环境200b、200c中的目标运行时环境200b、200c中的至少一个目标运行时环境的(各自的)安全属性。根据另一实施例,从安全属性服务来获得在一组目标运行时环境200b、200c中的目标运行时环境200b、200c中的至少一个目标运行时环境的安全属性。可以有安全属性服务的不同示例。例如,安全属性服务可以是被配置为管理(创建,提供,验证和撤销中的至少一个)运行时环境200a、200b、200c的安全属性的服务,存储至少一个运行时环境200a、200b、200c的安全属性的中央服务,和/或存储至少一个运行时环境200a、200b、200c的安全属性的分布式服务。
可以有安全属性的不同示例。例如,安全属性可以包括用户认证信息、授权策略、授权凭证、安全个人识别号(PIN)代码的可用性的信息、安全用户接口的可用性的信息、和/或安全引导的可用性的信息。
现在参考图5,其示出了根据进一步的实施例的如由担当初始运行时环境的运行时环境200a执行的用于迁移应用的操作者的实例110的方法。假设如参考图4所公开的那样来执行步骤S106和S108。
对于初始运行时环境200a而言可以有不同的方式来选择目标运行时环境200b。现在将依次描述与其相关的不同实施例。
例如,初始运行时环境200a可以请求关于安全属性的信息。因此,根据一个实施例,初始运行时环境200a被配置为执行作为目标运行时环境200b的选择的一部分的步骤S106a:
S106a:初始运行时环境200a获得针对一组目标运行时环境200b、200c的安全属性。可以执行步骤S106a作为上述步骤S106的一部分。因此,启动迁移的初始运行时环境200a可以首先请求关于安全属性的信息,然后选择第一潜在的目标运行时环境200b。
例如,初始运行时环境200a可以验证目标运行时环境200b满足安全属性条件。因此,根据一个实施例,初始运行时环境200a被配置为执行作为目标运行时环境200b的选择的一部分的步骤S106b:
S106b:初始运行时环境200a验证所获得的针对所选择的目标运行时环境200b的安全属性满足操作者的实例110的安全属性条件。可以执行步骤S106b作为上述步骤S106的一部分。
例如,初始运行时环境200a可以通过与目标运行时环境200b交互来验证目标运行时环境200b满足安全属性条件。这种验证可以由初始运行时环境200a将挑战传送到目标运行时环境200b来进行,其中目标运行时环境200b使用其他私有安全属性来导出对挑战的响应并将响应返回到初始运行时环境200a。因此,根据一个实施例,初始运行时环境200a被配置为执行作为目标运行时环境200b的选择的一部分的步骤S106c:
S106c:初始运行时环境200a验证所获得的针对所选择的目标运行时环境200b的安全属性由目标运行时环境200b正确地识别。可以执行步骤S106d作为上述步骤S106的一部分。
例如,在将操作者的实例110迁移到目标运行时环境200b之前,如果目标运行时环境200b可以接受该操作者,则初始运行时环境200a可以执行部分检查。因此,根据一个实施例,初始运行时环境200a被配置为执行步骤S106d,作为目标运行时环境200b的选择的一部分:
S106d:在开始将操作者的实例110迁移到所选择的目标运行时环境200b之前,初始运行时环境200a验证目标运行时环境200b将接受操作者的实例110到目标运行时环境200b的迁移的开始。这可以增加成功迁移的机会。可以执行步骤S106d作为上述步骤S106的一部分。
对于初始运行时环境200a而言可以有不同的方式将操作者的实例110迁移到目标运行时环境200b。例如,初始运行时环境200a可以向目标运行时环境200b提供对操作者的实例110的(重新)实例化而言所需的数据。因此,根据一个实施例,初始运行时环境200a被配置为执行步骤S108a,作为操作者的实例110到目标运行时环境200b的迁移的一部分:
S108a:初始运行时环境200a将实例化操作者的实例110所需的数据提供给所选择的目标运行时环境200b。可以执行步骤S108a作为上述步骤S108的一部分。
迁移可以是先前已被其他目标运行时环境200b拒绝的操作者的实例110的结果。因此,根据一个实施例,响应于将操作者的实例110迁移到另一个目标运行时环境200c已经是不成功的,执行步骤S106中的目标运行时环境200b的选择。
同样地,迁移可以是操作者的实例110先前已经被推送到初始运行时环境200a但是初始运行时环境200a未被允许该访问操作者的实例110的结果。因此,根据一个实施例,初始运行时环境200a被配置为执行步骤S102和S104:
S102:初始运行时环境200a从另一个初始运行时环境200c获得作为操作者的实例110的迁移的操作者的实例110。在已经获得了操作者的实例110之后,初始运行时环境200a执行步骤S104:
S104:初始运行时环境200a确定针对操作者的实例110的初始运行时环境200a的授权策略是不满足的。然后,响应于此,执行步骤S106中的目标运行时环境的选择。因此,在步骤s106之前,针对操作者的相同实例110执行步骤S102和S104。
现在参考图6,其示出了根据实施例的如由担当目标运行时环境的运行时环境200b执行的用于迁移应用的操作者的实例110的方法。
S202:目标运行时环境200b识别安全属性,该安全属性使初始运行时环境200a能够选择目标运行时环境200b以用于迁移操作者的实例110。
S204:目标运行时环境200b从初始运行时环境200a获得用于实例化操作者的实例110所需的数据。所获得的数据基于所识别的安全属性。
S206:当针对操作者的实例110的目标运行时环境200b的授权策略是满足的时,目标运行时环境200b实例化操作者的实例110。因此,目标运行时环境200b允许操作者的实例110访问至少一个资源对象160。
现在将公开与如由目标运行时环境200b执行的迁移应用的操作者的实例110的进一步细节有关的实施例。
可能存在授权策略的不同示例。根据示例,授权策略限定了对于操作者访问目标运行时环境200b的至少一个资源对象160而言需要满足哪个操作者,至少一个资源对象160中的哪个资源对象,以及哪些操作属性。
可以存在资源对象160的不同示例。每个资源对象160可以是表示诸如以下的资源的接口:传感器、致动器、处理、相机、网络接口、消息服务、存储、数据库、面部识别服务/模块、模式匹配服务/模块、分析服务/模块、求解器服务/模块等。
现在参考图7,其示出了根据进一步的实施例的如由作为目标运行时环境的运行时环境200b执行的用于迁移应用的操作者的实例110的方法。假设如参考图6所公开的那样执行步骤S202、S204和S206。
如上所述,在步骤S206中,当针对操作者的实例110的目标运行时环境200b的授权策略是满足的时,目标运行时环境200b实例化操作者的实例110。对于目标运行时环境200b而言可以有不同的方式来确定是否满足针对操作者的实例110的目标运行时环境200b的授权策略。现在将依次描述与其相关的不同实施例。
例如,如果授权策略需要,则目标运行时环境200b可以验证操作者的实例110是真实的。为了这样做,根据一个实施例,目标运行时环境200b被配置为执行步骤S206a:
S206a:目标运行时环境200b根据授权策略验证用于实例化操作者的实例110所需的数据的真实性。可以执行步骤S206a作为上述步骤S206的一部分。为了这样做,目标运行时环境200b可以检查用于实例化操作者的实例110所需的数据是否用目标运行时环境200b接受的凭证进行签名。
例如,如果目标运行时环境200b请求,则要求操作者证明所要求的属性的合法所有权。为了这样做,根据一个实施例,目标运行时环境200b被配置为执行步骤S206b:
S206b:目标运行时环境200b从用于实例化操作者的实例110所需的数据来验证所要求的属性的所有权。可以执行步骤S206b作为上述步骤S206的一部分。
在步骤S206b上的验证可以涉及与初始运行时环境200a或驻留在初始运行时环境200a上的负责实体凭证的保护和认证的相同应用的操作者的交互。为了这样做,根据一个实施例,目标运行时环境200b被配置为执行步骤S206c:
S206c:目标运行时环境200b执行与实例化的运行时环境200a的认证验证。可以执行步骤S206c作为上述步骤S206的一部分。挑战例如可以是对挑战进行认证和签名并返回响应的实体。这种认证验证的一个非限制性示例是加密的挑战-响应认证,因此它可以在目标运行时环境200b和实例化的运行时环境200a之间执行。
见下文,如果任何安全条件验证失败,则可以阻止操作者在目标运行时环境200b上的执行,并且初始运行时环境200a或目标运行时环境200b将启动将操作者的实例110迁移到新目标运行时环境200c的新尝试。
因此,根据一个实施例,当验证步骤S206a、S206b、S206c中的任何验证步骤失败时,阻止操作者的实例110在目标运行时环境200b上的执行。
此外,当未满足授权策略时,可以阻止对资源对象160的访问。因此,根据一个实施例,目标运行时环境200b被配置为执行步骤S208:
S208:在未满足授权策略时,目标运行时环境200b防止操作者的实例110访问至少一个资源对象160。可以在步骤S206之后执行步骤S208。
一旦已经发生了操作者的实例110的失败迁移和/或当已经阻止操作者的实例110访问至少一个资源对象160时,对于目标运行时环境200b而言可以有不同方式进行动作。根据一个实施例,目标运行时环境200b向初始运行时环境200a通知失败的迁移/阻止,因此执行步骤S210:
S210:目标运行时环境200b响应于已经阻止操作者的实例110的执行或者已经防止操作者的实例110访问至少一个资源对象160,向初始运行时环境200a通知操作者的实例110的不成功的迁移。步骤S210可以在步骤S208之后执行。在图1b中,在(d)处示出了初始运行时环境200a和目标运行时环境200b,并且其中目标运行时环境200b已经向初始运行时环境200a通知(如箭头170所示)操作者实例110的不成功迁移。
根据一个实施例,目标运行时环境200b针对新的目标运行时环境200c开始操作者的实例110的迁移尝试,因此执行步骤S212和S214:
S212:目标运行时环境200b基于所获得的针对一组其他目标运行时环境200c的安全属性,从该组目标运行时环境200c中选择另一个目标运行时环境200c以用于操作者的实例110的迁移。在图1b中,在(e)处示出了初始运行时环境200a、目标运行时环境200b和另一个目标运行时环境200c,并且其中目标运行时环境200b已选择该另一个目标运行时环境200c用于操作者的实例110的(进一步)迁移(如由箭头170所示)。
S214:响应于已经阻止操作者的实例110的执行,一旦已经选择了另一个目标运行时环境200c,目标运行时环境200b就将操作者的实例110迁移S214到所选择的另一个目标运行时环境200c。
因此,步骤S212和S214类似于如上所公开的步骤S106和S108,但是步骤S212和S214因此由目标运行时环境200b与作为所选择的目标运行时环境的另一个目标运行时环境200c来执行。如本领域技术人员所理解的,目标运行时环境200b可能还没有从所获得的用于实例化操作者所需的数据来实例化操作者,因此可以直接利用所获得的用于实例化操作者所需的数据来迁移操作者的实例110。
一般而言,如果目标运行时环境200b拒绝正被迁移的操作者的实例110,则目标运行时环境200b或初始运行时环境200c可以开始操作者的实例110向新的目标运行时环境200c的新迁移。例如,初始运行时环境200a然后可以重复或重用来自先前信息收集的结果,并选择另一个目标运行时环境200b以成为操作者的实例110的目标运行时环境并重做迁移尝试。在图1b中,在(f)处示出了初始运行时环境200a、目标运行时环境200b和另一个目标运行时环境200c,并且其中初始运行时环境200a已经选择了另一个目标运行时环境200c用于操作者的实例110的迁移(如箭头170所示)。
如上所述,初始运行时环境200a基于所获得的安全属性来选择目标运行时环境200b。为了这样做,初始运行时环境200a可以强制将目标运行时环境200b的策略与部署凭证和运行时环境凭证组合,以便在操作者的实例110被迁移到目标运行时环境200b之前,满足对目标运行时环境200b的要求。此类要求的示例是安全性能力,安全性保证(例如安全启动的证实),以及运行时环境所有权具有已知的可信方。
可以经由公钥基础设施(PKI)来建立初始运行时环境200a和目标运行时环境200b之间的信任关系,即,证书结构表达信任另一个运行时环境的方式。每个运行时环境200a、200b可以共享公共的证书颁发机构(CA),或者可以通过交叉核证建立CA之间的信任。使用这样的PKI,例如在上面的步骤S106c中,运行时环境200a、200b可以相互认证,建立共享密码密钥并且例如通过传输层安全性(TLS)协议、数据报传输层安全性(DTLS)协议或使用对象安全性协议安全地通信。
应用属性可能要求能够建立这样的信任关系,但是也可能要求目标运行时环境200b具有特定的CA,或者甚至是一组指定的设备的成员。如上所述,其他安全属性是安全计算属性;应用的实例110可能需要目标运行时环境200b已经执行了安全的测量的引导的可验证的证实证据。可信执行环境、可信平台模块、智能卡的可用性、对可信用户输入和输出的支持、安全视频/音频路径是可以使用的属性的其他示例。
当初始运行时环境200a认为满足对目标运行时环境200b的要求时,初始运行时环境200a将操作者的实例110迁移到目标运行时环境200b。目标运行时环境200b强制由操作者的迁移实例110满足与凭证组合的它的操作者策略和访问策略。这种要求的示例是用户认证和授权,对签名代码的要求,但也可以是与操作和将执行操作者的实例110的环境相关的属性,例如,一天中的时间。安全策略描述了主体(subject)的什么属性、什么资源对象160、什么环境和操作是必须满足的以允许操作者的实例110对由目标运行时环境200b提供的资源对象160执行所请求的操作。在这方面,主体是负责运行应用的实体的计算机化表示,通常是用户或组织。主体属性用于描述用户身份。身份可以与对运行时环境资源的访问特权相关联;它可以是用户名、组和角色成员资格的形式,但也可以是密码密钥或口令的拥有。例如,对于运行时环境200a、200b、200c而言可能足够的是确保操作者的实例110与密码密钥相关联,参见上文,密码密钥的拥有可以通过密码质询响应过程或零知识证明协议来证明。策略可以列出关于用户的身份证明和认证的要求,用户能够访问的资源,以及关于被允许对操作者和应用进行签名的实体的要求。
图2a按照多个功能单元示意性地示出了根据实施例的运行时环境200a、200b、200c的组件。根据多个方面,运行时环境200a、200b、200c被配置为担当初始运行时环境200a和目标运行时环境200b两者。
使用能够执行存储在计算机程序产品310a(例如以存储介质230的形式)(如在图4中)中的软件指令的合适的中央处理单元(CPU)、多处理器、微控制器、数字信号处理器(DSP)等中的一个或多个的任何组合来提供处理电路210。处理电路210还可以被提供为至少一个专用集成电路(ASIC)或现场可编程门阵列(FPGA)。
具体地,处理电路210被配置为使运行时环境200a、200b、200c执行如上所述的一组操作或步骤S102-S108,S202-S214。例如,存储介质230可以存储该组操作,并且处理电路210可以被配置为从存储介质230检索该组操作以使运行时环境200a、200b、200c执行该组操作。可以作为一组可执行指令提供该组操作。因此,处理电路210由此被布置为运行如本文所公开的方法。
存储介质230还可以包括持久存储器,其例如可以是磁存储器、光存储器、固态存储器或甚至远程安装的存储器中的任何单个或组合。
运行时环境200a、200b、200c还可以包括通信接口220,用于至少与另一个运行时环境200a、200b、200c通信。这样,通信接口220可以包括一个或多个发射器和接收器,其包括模拟和数字组件以及用于无线通信的适当数量的天线和用于有线通信的端口。
处理电路210通过以下来控制运行时环境200a、200b、200c的一般操作:例如,将数据和控制信号发送到通信接口220和存储介质230,从通信接口220接收数据和报告,以及从存储介质230检索数据和指令。运行时环境200a、200b、200c的其他组件以及相关功能被省略以便不使本文提出的构思模糊。
图2b按照多个功能模块示意性地示出了根据实施例的运行时环境200a、200b、200c的组件。图2b的运行时环境200a、200b、200c包括多个功能模块。
为了使运行时环境担当初始运行时环境200a,运行时环境包括:被配置为执行步骤S106的选择模块210a,以及被配置为执行步骤S108的迁移模块210b。担当初始运行时环境200a的图2b的运行时环境可以进一步包括多个可选功能模块,例如以下中的任何一个:被配置为执行步骤S106a的获得模块210c,被配置为执行步骤S106b的验证模块210d,被配置为执行步骤S106c的验证模块210e,被配置为执行步骤S106d的验证模块210f,被配置为执行步骤S108a的提供模块210g,被配置为执行步骤S102的获得模块210h,以及被配置为执行步骤S104的确定模块210j。
为了使运行时环境担当目标运行时环境200b,运行时环境包括:被配置为执行步骤S202的识别模块210k,被配置为执行步骤S204的获得模块210m;以及被配置为执行步骤S206的实例化模块210n。担当目标运行时环境200b的图2b的运行时环境可以进一步包括多个可选功能模块,例如以下中的任何一个:被配置为执行步骤S206a的验证模块210p,被配置为执行步骤S206b的验证模块210q,被配置为执行步骤S206c的认证验证模块210r,被配置为执行步骤S208的防止模块210s,被配置为执行步骤S210的通知模块210t,被配置为执行步骤S212的选择模块210u,被配置为执行步骤S214的迁移模块210w。
一般而言,每个功能模块210a-210w可以被实现在硬件或软件中。优选地,一个或多个或所有功能模块210a-210w可以由处理电路210实现,可能与功能单元220和/或230协作。因此,处理电路210可以被布置为从存储介质230取回如由功能模块210a-210w提供的指令并执行这些指令,从而执行将在下文中公开的任何步骤。
图3示出了包括计算机可读元件330的计算机程序产品310a、310b的一个示例。在该计算机可读元件330上,能够存储计算机程序320a,该计算机程序320a可以使处理电路210及与其可操作地耦合的实体和设备(例如通信接口220和存储介质230)以执行根据本文描述的实施例的方法。因此,计算机程序320a和/或计算机程序产品310a可以提供用于执行担当如本文所公开的初始运行时环境的运行时环境200a的任何步骤的元件。在该计算机可读元件330上,可以存储计算机程序320b,该计算机程序320b可以使处理电路310及与其可操作地耦合的实体和设备(例如通信接口320和存储介质330)执行根据本文描述的实施例的方法。因此,计算机程序320b和/或计算机程序产品310b可以提供用于执行担当如本文所公开的目标运行时环境的运行时环境200b的任何步骤的元件。
在图3的示例中,计算机程序产品310a、310b被示为光盘,诸如CD(压缩盘)或DVD(数字多功能盘)或蓝光盘。计算机程序产品310a、310b还可以具体化为存储器,例如随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)或电可擦除可编程只读存储器(EEPROM),更具体地被具体化为外部存储器中的设备的非易失性存储介质,例如USB(通用串行总线)存储器或闪存(例如紧凑型闪存)。因此,虽然计算机程序320a、320b在本文中被示意性地示出为所描绘的光盘上的轨道,但是计算机程序320a、320b可以以适合于计算机程序产品310a、310b的任何方式存储。
以上主要参考几个实施例描述了本发明构思。然而,如本领域技术人员容易理解的,除了以上公开的实施例之外的其他实施例在由所附权利要求限定的本发明构思的范围内同样是可能的。

Claims (25)

1.一种用于迁移应用(130、140)的操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的方法,所述方法由初始运行时环境(200a)执行,所述方法包括:
基于所获得的针对一组目标运行时环境(200b、200c)的安全属性,从所述一组目标运行时环境(200b、200c)选择(S106)目标运行时环境(200b)以用于所述操作者(A1、A2、A3、A4、A5、A6,A6)的实例(110)的迁移,其中选择所述目标运行时环境(200b)包括:通过向所述目标运行时环境(200b)传送挑战和从所述目标运行时环境(200b)接收针对所述挑战的由所述目标运行时环境(200b)导出的响应,来验证(S106b)所获得的针对所选择的目标运行时环境(200b)的安全属性满足所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的安全属性条件,其中所述响应是使用与由所述初始运行时环境(200a)获得的所述安全属性不同的私有安全属性来导出的;和
一旦已经选择了目标运行时环境(200b),就将所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)迁移(S108)到所选择的目标运行时环境(200b)。
2.根据权利要求1所述的方法,其中,选择目标运行时环境(200b)包括:
获得(S106a)针对所述一组目标运行时环境(200b、200c)的安全属性。
3.根据权利要求1所述的方法,其中,选择目标运行时环境(200b)包括:
验证(S106c)所获得的针对所选择的目标运行时环境(200b)的安全属性由所述目标运行时环境(200b)正确地识别。
4.根据权利要求1所述的方法,其中,选择目标运行时环境(200b)包括:
在开始所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)到所选择的目标运行时环境(200b)的迁移之前,验证(S106d)目标运行时环境(200b)将接受所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)到所述目标运行时环境(200b)的迁移的开始。
5.根据权利要求1所述的方法,其中,迁移所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)包括:
向所选择的目标运行时环境(200b)提供(S108a)用于实例化所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)所需的数据。
6.根据权利要求1所述的方法,还包括:
从另一个初始运行时环境获得(S102)作为所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的迁移的所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110);
确定(S104)未满足针对所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的初始运行时环境(200a)的授权策略,其中响应于此,执行所述目标运行时环境的选择。
7.根据权利要求1所述的方法,其中,响应于所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)到另一个目标运行时环境的迁移已经是不成功的,执行所述目标运行时环境的选择。
8.根据权利要求1所述的方法,其中,所述一组目标运行时环境(200b、200c)中的目标运行时环境(200b、200c)中的至少一个目标运行时环境的安全属性是直接从所述目标运行时环境(200b、200c)中的所述至少一个目标运行时环境获得的。
9.根据权利要求1所述的方法,其中,所述一组目标运行时环境(200b、200c)中的目标运行时环境(200b、200c)中的至少一个目标运行时环境的安全属性是从安全属性服务获得的。
10.根据权利要求1所述的方法,其中,所述安全属性包括以下中的至少一个:用户认证信息、授权策略、授权凭证、安全个人识别号,PIN,代码的可用性信息、安全用户接口的可用性信息、安全引导的可用性的信息。
11.一种用于迁移应用(130、140)的操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的方法,所述方法由目标运行时环境(200b)执行,所述方法包括:
识别(S202)安全属性,所述安全属性使得初始运行时环境(200a)能够选择目标运行时环境(200b)以用于所述操作者的实例(110)(A1、A2、A3、A4、A5、A6、A6)的迁移;
基于所识别的安全属性,从所述初始运行时环境(200a)获得(S204)用于实例化所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)所需的数据;和
当针对所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的目标运行时环境(200b)的授权策略是满足的时,实例化(S206)所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110),从而允许所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)访问至少一个资源对象(160),
其中所述目标运行时环境(200b)是由所述初始运行时环境(200a)通过以下来选择的:通过向所述目标运行时环境(200b)传送挑战和从所述目标运行时环境(200b)接收针对所述挑战的由所述目标运行时环境(200b)导出的响应,来验证所获得的针对所选择的目标运行时环境(200b)的安全属性满足所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的安全属性条件,其中所述响应是使用与由所述初始运行时环境(200a)获得的所述安全属性不同的私有安全属性来导出的。
12.根据权利要求11所述的方法,其中,实例化所述操作者(A1、A2、A3、A4、A5、A6、A6)访问的实例(110)包括:
根据所述授权策略,验证(S206a)用于实例化所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)所需的数据的真实性。
13.根据权利要求11所述的方法,其中,实例化所述操作者(A1、A2、A3、A4、A5、A6、A6)访问的实例(110)包括:
从用于实例化所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)所需的数据来验证(S206b)所要求的属性的所有权。
14.根据权利要求13所述的方法,其中,验证所要求的属性的所有权包括:
执行(S206c)与实例化的运行时环境(200a)的认证验证。
15.根据权利要求12、13或14所述的方法,其中,当验证中的任何验证失败时,阻止所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)在所述目标运行时环境(200b)上的执行。
16.根据权利要求11所述的方法,还包括:
当所述授权策略是不满足的时,防止(S208)所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)访问所述至少一个资源对象(160)。
17.根据权利要求15或16所述的方法,还包括:
响应于已经阻止了所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的执行或者已经防止了所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)访问所述至少一个资源对象(160),向所述初始运行时环境(200a)通知(S210)所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的不成功迁移。
18.根据权利要求15或16所述的方法,还包括:
基于所获得的针对一组其他目标运行时环境(200c)的安全属性,从所述一组目标运行时环境(200c)选择(S212)另一个目标运行时环境(200c)以用于所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的迁移;和
响应于已经阻止了所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的执行,一旦已经选择了所述另一个目标运行时环境(200c),就将所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)迁移(S214)到所选择的另一个目标运行时环境(200c)。
19.根据权利要求11所述的方法,其中,所述授权策略限定对于所述操作者(A1、A2、A3、A4、A5、A6、A6)访问目标运行时环境(200b)的至少一个资源对象(160)而言需要满足哪个操作者(A1、A2、A3、A4、A5、A6、A6),所述至少一个资源对象(160)中的哪个资源对象,以及哪些操作属性。
20.一种担当初始运行时环境的运行时环境(200a),其用于迁移应用(130、140)的操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110),运行时环境包括处理电路(210),所述处理电路被配置为使所述运行时环境(200a):
基于所获得的针对担当目标运行时环境(200b、200c)的一组运行时环境(200b、200c)的安全属性,从担当目标运行时环境(200b、200c)的所述一组运行时环境(200b、200c)选择担当目标运行时环境(200b)的运行时环境(200b)以用于所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的迁移,其中选择所述目标运行时环境(200b)包括:通过向所述目标运行时环境(200b)传送挑战和从所述目标运行时环境(200b)接收针对所述挑战的由所述目标运行时环境(200b)导出的响应,来验证(S106b)所获得的针对所选择的目标运行时环境(200b)的安全属性满足所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的安全属性条件,其中所述响应是使用与由所述初始运行时环境(200a)获得的所述安全属性不同的私有安全属性来导出的;和
一旦已经选择了担当目标运行时环境(200b)的运行时环境(200b),就将所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)迁移到担当目标运行时环境(200b)的所选择的运行时环境(200b)。
21.一种担当初始运行时环境的运行时环境(200a),其用于迁移应用(130、140)的操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110),运行时环境包括:
选择模块(210a),被配置为基于所获得的针对担当目标运行时环境(200b、200c)的一组运行时环境(200b、200c)的安全属性,从担当目标运行时环境(200b、200c)的所述一组运行时环境(200b、200c)选择担当目标运行时环境(200b)的运行时环境(200b)以用于所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的迁移,其中所述目标运行时环境(200b)是由所述初始运行时环境(200a)通过以下来选择的:通过向所述目标运行时环境(200b)传送挑战和从所述目标运行时环境(200b)接收针对所述挑战的由所述目标运行时环境(200b)导出的响应,来验证所获得的针对所选择的目标运行时环境(200b)的安全属性满足所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的安全属性条件,其中所述响应是使用与由所述初始运行时环境(200a)获得的所述安全属性不同的私有安全属性来导出的;和
迁移模块(210b),被配置为一旦已经选择了担当目标运行时环境(200b)的运行时环境(200b),就将所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)迁移到担当目标运行时环境(200b)的所选择的运行时环境(200b)。
22.一种担当目标运行时环境的运行时环境(200b),其用于迁移应用(130、140)的操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110),运行时环境包括处理电路(210),所述处理电路被配置为使运行时环境(200b):
识别安全属性,所述安全属性使得担当初始运行时环境(200a)的运行时环境(200a)能够选择目标运行时环境(200b)以用于所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的迁移;
基于所识别的安全属性,从担当初始运行时环境(200a)的运行时环境(200a)获得用于实例化所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)所需的数据;和
当针对所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的担当目标运行时环境(200b)的运行时环境(200b)的授权策略是满足的时,实例化所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110),从而允许所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)访问至少一个资源对象(160),
其中所述目标运行时环境(200b)是由所述初始运行时环境(200a)通过以下来选择的:通过向所述目标运行时环境(200b)传送挑战和从所述目标运行时环境(200b)接收针对所述挑战的由所述目标运行时环境(200b)导出的响应,来验证所获得的针对所选择的目标运行时环境(200b)的安全属性满足所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的安全属性条件,其中所述响应是使用与由所述初始运行时环境(200a)获得的所述安全属性不同的私有安全属性来导出的。
23.一种担当目标运行时环境的运行时环境(200b),其用于迁移应用(130、140)的操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110),运行时环境包括:
识别模块(210k),被配置为识别安全属性,所述安全属性使得担当初始运行时环境(200a)的运行时环境(200a)能够选择目标运行时环境(200b)以用于所述操作者的实例(110)(A1、A2、A3、A4、A5、A6、A6)的迁移;
获得模块(210m),被配置为基于所识别的安全属性,从担当初始运行时环境(200a)的运行时环境(200a)获得用于实例化所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)所需的数据;和
实例化模块(210n),被配置为当针对所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的担当目标运行时环境(200b)的运行时环境(200b)的授权策略是满足的时,实例化所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110),从而允许所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)访问至少一个资源对象(160),
其中所述目标运行时环境(200b)是由所述初始运行时环境(200a)通过以下来选择的:通过向所述目标运行时环境(200b)传送挑战和从所述目标运行时环境(200b)接收针对所述挑战的由所述目标运行时环境(200b)导出的响应,来验证所获得的针对所选择的目标运行时环境(200b)的安全属性满足所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的安全属性条件,其中所述响应是使用与由所述初始运行时环境(200a)获得的所述安全属性不同的私有安全属性来导出的。
24.一种计算机可读存储介质(330),其存储用于迁移应用(130、140)的操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的计算机程序(320a),所述计算机程序包括计算机代码,当在担当初始运行时环境的运行时环境(200a)的处理电路(210)上运行所述计算机代码时,所述计算机代码使运行时环境(200a):
基于所获得的针对担当目标运行时环境(200b、200c)的一组运行时环境(200b、200c)的安全属性,从担当目标运行时环境(200b、200c)的所述一组运行时环境(200b、200c)选择(S106)担当目标运行时环境(200b)的运行时环境(200b)以用于所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的迁移,其中选择所述目标运行时环境(200b)包括:通过向所述目标运行时环境(200b)传送挑战和从所述目标运行时环境(200b)接收针对所述挑战的由所述目标运行时环境(200b)导出的响应,来验证(S106b)所获得的针对所选择的目标运行时环境(200b)的安全属性满足所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的安全属性条件,其中所述响应是使用与由所述初始运行时环境(200a)获得的所述安全属性不同的私有安全属性来导出的;和
一旦已经选择了担当目标运行时环境(200b)的运行时环境(200b),就将所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)迁移(S108)到担当目标运行时环境(200b)的所选择的运行时环境(200b)。
25.一种计算机可读存储介质(330),其存储用于迁移应用(130、140)的操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的计算机程序(320b),所述计算机程序包括计算机代码,当所述计算机代码在担当目标运行时环境的运行时环境(200b)的处理电路(210)上运行时,所述计算机代码使运行时环境(200b):
识别(S202)安全属性,所述安全属性使得担当初始运行时环境(200a)的运行时环境(200a)能够选择担当目标运行时环境(200b)的运行时环境(200b)以用于所述操作者的实例(110)(A1、A2、A3、A4、A5、A6、A6)的迁移;
基于所识别的安全属性,从担当初始运行时环境(200a)的运行时环境(200a)获得(S204)用于实例化所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)所需的数据;和
当针对所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的担当目标运行时环境(200b)的运行时环境(200b)的授权策略是满足的时,实例化(S206)所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110),从而允许所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)访问至少一个资源对象(160),
其中所述目标运行时环境(200b)是由所述初始运行时环境(200a)通过以下来选择的:通过向所述目标运行时环境(200b)传送挑战和从所述目标运行时环境(200b)接收针对所述挑战的由所述目标运行时环境(200b)导出的响应,来验证所获得的针对所选择的目标运行时环境(200b)的安全属性满足所述操作者(A1、A2、A3、A4、A5、A6、A6)的实例(110)的安全属性条件,其中所述响应是使用与由所述初始运行时环境(200a)获得的所述安全属性不同的私有安全属性来导出的。
CN201680080873.5A 2016-02-04 2016-02-04 操作者迁移 Active CN108604188B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2016/052362 WO2017133771A1 (en) 2016-02-04 2016-02-04 Actor migration

Publications (2)

Publication Number Publication Date
CN108604188A CN108604188A (zh) 2018-09-28
CN108604188B true CN108604188B (zh) 2022-03-04

Family

ID=55304994

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680080873.5A Active CN108604188B (zh) 2016-02-04 2016-02-04 操作者迁移

Country Status (6)

Country Link
US (2) US11080428B2 (zh)
EP (1) EP3411786A1 (zh)
JP (1) JP6656388B2 (zh)
CN (1) CN108604188B (zh)
RU (1) RU2707718C1 (zh)
WO (1) WO2017133771A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11316757B1 (en) * 2020-06-23 2022-04-26 Amdocs Development Limited System, method, and computer program for consumer requirement based management for physical edge deployment of an application

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101937357A (zh) * 2009-07-01 2011-01-05 华为技术有限公司 一种虚拟机迁移决策方法、装置及系统
CN105718246A (zh) * 2014-07-31 2016-06-29 格马尔托股份有限公司 在电子设备中管理应用程序包的方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7080159B2 (en) * 2000-12-15 2006-07-18 Ntt Docomo, Inc. Method and system for effecting migration of application among heterogeneous devices
FI114416B (fi) * 2001-06-15 2004-10-15 Nokia Corp Menetelmä elektroniikkalaitteen varmistamiseksi, varmistusjärjestelmä ja elektroniikkalaite
US20030037327A1 (en) * 2001-08-15 2003-02-20 International Business Machines Corporation Run-time rule-based topological installation suite
JP2003233521A (ja) 2002-02-13 2003-08-22 Hitachi Ltd ファイル保護システム
US8707383B2 (en) * 2006-08-16 2014-04-22 International Business Machines Corporation Computer workload management with security policy enforcement
EP1927956A1 (en) 2006-11-30 2008-06-04 Incard SA Multi-applications IC Card with secure management of applications
US20080147530A1 (en) * 2006-12-19 2008-06-19 Kwan Shu-Leung Programmatically transferring applications between handsets based on license information
US9027143B1 (en) 2009-08-26 2015-05-05 Adobe Systems Incorporated System and method for multipronged authentication
JP4937387B2 (ja) * 2010-08-05 2012-05-23 株式会社東芝 自動書き換えプログラムおよび自動書き換え装置
JP5961638B2 (ja) * 2011-02-17 2016-08-02 ターセーラ, インコーポレイテッド アプリケーション証明のためのシステムおよび方法
US20140366084A1 (en) 2012-01-25 2014-12-11 Nec Corporation Management system, management method, and non-transitory storage medium
US9253209B2 (en) * 2012-04-26 2016-02-02 International Business Machines Corporation Policy-based dynamic information flow control on mobile devices
CN103973441B (zh) * 2013-01-29 2016-03-09 腾讯科技(深圳)有限公司 基于音视频的用户认证方法和装置
JP6160253B2 (ja) * 2013-05-30 2017-07-12 富士通株式会社 仮想機械管理装置、仮想機械管理方法及び情報処理システム
CN105164690A (zh) 2013-07-12 2015-12-16 惠普发展公司,有限责任合伙企业 分析目标软件的安全漏洞
EP3058500A4 (en) * 2013-10-18 2018-01-17 Nokia Technologies Oy Method and system for operating and monitoring permissions for applications in an electronic device
US9563771B2 (en) 2014-01-22 2017-02-07 Object Security LTD Automated and adaptive model-driven security system and method for operating the same
US10389709B2 (en) * 2014-02-24 2019-08-20 Amazon Technologies, Inc. Securing client-specified credentials at cryptographically attested resources

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101937357A (zh) * 2009-07-01 2011-01-05 华为技术有限公司 一种虚拟机迁移决策方法、装置及系统
CN105718246A (zh) * 2014-07-31 2016-06-29 格马尔托股份有限公司 在电子设备中管理应用程序包的方法

Also Published As

Publication number Publication date
JP6656388B2 (ja) 2020-03-04
US20190042793A1 (en) 2019-02-07
US11080428B2 (en) 2021-08-03
JP2019507920A (ja) 2019-03-22
WO2017133771A1 (en) 2017-08-10
US11687673B2 (en) 2023-06-27
CN108604188A (zh) 2018-09-28
RU2707718C1 (ru) 2019-11-28
EP3411786A1 (en) 2018-12-12
US20200356698A1 (en) 2020-11-12

Similar Documents

Publication Publication Date Title
US11109229B2 (en) Security for network computing environment using centralized security system
US11722517B1 (en) Predictive modeling for anti-malware solutions
KR102563795B1 (ko) 자원 구동 동적 권한부여 프레임워크
EP3061027B1 (en) Verifying the security of a remote server
KR101296065B1 (ko) 복수의 프로비저닝된 가입자 식별 모듈(sim) 서비스로부터 보안 가입자 식별 모듈(sim) 서비스를 선택하기 위해 컴퓨터로 구현되는 방법, 복수의 프로비저닝된 가입자 식별 모듈(sim) 서비스로부터 보안 가입자 식별 모듈(sim) 서비스를 선택하는 장치 및 컴퓨터 판독가능 저장매체
US20170295025A1 (en) Method, hardware and digital certificate for authentication of connected devices
GB2527285A (en) Resource access control using a validation token
US10812272B1 (en) Identifying computing processes on automation servers
US9323911B1 (en) Verifying requests to remove applications from a device
CN107358118B (zh) Sfs访问控制方法及系统、sfs及终端设备
EP3429155B1 (en) Providing credentials in an automated machine-to-machine communication system environment
CN108604188B (zh) 操作者迁移
CN110771087B (zh) 私钥更新
CN113301107A (zh) 节点计算平台及其实现方法、可信云平台实现方法
US10419439B1 (en) Authentication and authorization without the use of supplicants
US20090327704A1 (en) Strong authentication to a network
US20240205225A1 (en) Open id connect electronic access control system
US20240224051A1 (en) Dynamic identification generation for telecommunications network user equipment
Falk et al. Advanced Device Authentication for the Industrial Internet of Things
Keshta Secure Mobile Application Management Framework

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