Миграция актора

Изобретение относится к области вычислительной техники. Техническим результатом является обеспечение миграции актора приложения. Раскрыт способ осуществления миграции экземпляра актора приложения, причем способ выполняется инициирующей средой исполнения, при этом способ содержит этапы, на которых: выбирают на основе полученных атрибутов безопасности для набора целевых сред исполнения целевую среду исполнения из набора целевых сред исполнения для осуществления миграции экземпляра актора, причем данный выбор целевой среды исполнения содержит этап, на котором проверяют, что полученные атрибуты безопасности для выбранной целевой среды исполнения удовлетворяют условиям атрибутов безопасности экземпляра актора, и осуществляют миграцию экземпляра актора в выбранную целевую среду исполнения после выбора целевой среды исполнения. 6 н. и 17 з.п. ф-лы, 9 ил.

 

ОБЛАСТЬ ТЕХНИКИ

Варианты осуществления, представленные в настоящем описании, относятся к способам, средам исполнения, компьютерным программам и компьютерному программному продукту для осуществления миграции экземпляра актора приложения.

УРОВЕНЬ ТЕХНИКИ

В сетях связи может быть сложно получить хорошую производительность и пропускную способность для данного протокола связи, его параметров и физической среды, в которой развернута сеть связи.

Например, одним параметром в обеспечении хорошей производительности и пропускной способности для данного протокола связи в сети связи является возможность распределения приложения по меньшей мере между двумя средами исполнения в сети связи.

Следовательно, среда исполнения может позволять модулям приложения, называемым акторами, быть развернутыми распределенными между несколькими устройствами (каждое устройство содержит среду исполнения). Говоря в общем, акторы могут рассматриваться как части распределенного приложения, которые осуществляют связь с помощью сообщений, см. http://arxi v.org/abs/1008.1459 (по состоянию на 29 января 2016). Акторы имеют условия для сопровождения размещения экземпляра актора в среде исполнения. Среды исполнения имеют атрибуты, которые описывают функциональность среды исполнения, а также другую информацию. В текущих реализациях сред исполнения в сети связи для обработки распределенных приложений отсутствует поддержка безопасности.

Средой, в которой программные компоненты, такие как мини-программы, могут быть перемещены в среду исполнения, является Java. Java обеспечивает безопасность среды исполнения для мини-программ. В соответствии с программной платформой Java, мини-программы подписаны (наряду с правами доступа), и среда исполнения проверяет мини-программы и разрешения до начала исполнения. Однако программная платформа Java не позволяет мини-программам проверять степень доверия к среде исполнения (помимо требования наличия сертификата с необходимым открытым ключом, необходимым для подписи мини-программы).

Следовательно, имеется потребность в улучшенной обработке распределенных приложений в средах исполнения.

СУЩНОСТЬ ИЗОБРЕТЕНИЯ

Задачей вариантов осуществления в настоящем описании является обеспечение обработки распределенных приложений в средах исполнения.

В соответствии с первым аспектом представлен способ осуществления миграции экземпляра актора приложения. Способ выполняется инициирующей средой исполнения. Способ содержит этап, на котором выбирают на основе полученных атрибутов безопасности для набора целевых сред исполнения целевую среду исполнения из набора целевых сред исполнения для осуществления миграции экземпляра актора. Способ содержит этап, на котором осуществляют миграцию экземпляра актора в выбранную целевую среду исполнения после выбора целевой среды исполнения.

В соответствии со вторым аспектом представлена среда исполнения, выступающая в качестве инициирующей среды исполнения для осуществления миграции экземпляра актора приложения. Среда исполнения содержит обрабатывающую схему. Обрабатывающая схема выполнена с возможностью предписывать среде исполнения выбирать, на основе полученных атрибутов безопасности для набора сред исполнения, выступающих в качестве целевых сред исполнения, среду исполнения, выступающую в качестве целевой среды исполнения, из набора сред исполнения, выступающих в качестве целевых сред исполнения, для осуществления миграции экземпляра актора. Обрабатывающая схема выполнена с возможностью предписывать среде исполнения осуществлять миграцию экземпляра актора в выбранную среду исполнения, выступающую в качестве целевой среды исполнения, после выбора среды исполнения, выступающей в качестве целевой среды исполнения.

В соответствии с третьим аспектом представлена среда исполнения, выступающая в качестве инициирующей среды исполнения для осуществления миграции экземпляра актора приложения. Среда исполнения содержит модуль выбора, выполненный с возможностью выбирать, на основе полученных атрибутов безопасности для набора сред исполнения, выступающих в качестве целевых сред исполнения, среду исполнения, выступающую в качестве целевой среды исполнения, из набора сред исполнения, выступающих в качестве целевых среды исполнения, для осуществления миграции экземпляра актора. Среда исполнения содержит модуль миграции, выполненный с возможностью осуществления миграции экземпляра актора в выбранную среду исполнения, выступающую в качестве целевой среды исполнения, после выбора среды исполнения, выступающей в качестве целевой среды исполнения.

В соответствии с четвертым аспектом представлена компьютерная программа для осуществления миграции экземпляра актора приложения, причем компьютерная программа содержит код компьютерной программы, который при исполнении в обрабатывающей схеме среды исполнения, выступающей в качестве инициирующей среды исполнения, вызывает выполнение средой исполнения способа в соответствии с первым аспектом.

В соответствии с пятым аспектом представлен способ осуществления миграции экземпляра актора приложения. Способ выполняется целевой средой исполнения. Способ содержит этап, на котором идентифицируют атрибуты безопасности, которые обеспечивают инициирующей среде исполнения возможность выбрать целевую среду исполнения для миграции экземпляра актора. Способ содержит этап, на котором получают данные, необходимые для создания экземпляра (инстанцирования) актора, от инициирующей среды исполнения на основе идентифицированных атрибутов безопасности. Способ содержит этап, на котором создают экземпляр актора, когда политика авторизации целевой среды исполнения для экземпляра актора удовлетворяется, тем самым позволяя экземпляру актора доступ к по меньшей мере одному ресурсному объекту.

В соответствии с шестым аспектом представлена среда исполнения, выступающая в качестве целевой среды исполнения для осуществления миграции экземпляра актора приложения, причем среда исполнения содержит обрабатывающую схему. Обрабатывающая схема выполнена с возможностью предписывать среде исполнения идентифицировать атрибуты безопасности, которые обеспечивают среде исполнения, выступающей в качестве инициирующей среды исполнения, возможность выбрать целевую среду исполнения для осуществления миграции экземпляра актора. Обрабатывающая схема выполнена с возможностью предписывать среде исполнения получать данные, необходимые для создания экземпляра актора, от среды исполнения, выступающей в качестве инициирующей среды исполнения, на основе идентифицированных атрибутов безопасности. Обрабатывающая схема выполнена с возможностью предписывать среде исполнения создавать экземпляр актора, когда политика авторизации среды исполнения, выступающей в качестве целевой среды исполнения, для экземпляра актора удовлетворяется, тем самым позволяя экземпляру актора доступ к по меньшей мере одному ресурсному объекту.

В соответствии с седьмым аспектом представлена среда исполнения, выступающая в качестве целевой среды исполнения, для осуществления миграции экземпляра актора приложения. Среда исполнения содержит модуль идентификации, выполненный с возможностью идентификации атрибутов безопасности, которые позволяют среде исполнения, выступающей в качестве инициирующей среды исполнения, выбрать целевую среду исполнения для миграции экземпляра актора. Среда исполнения содержит модуль получения, выполненный с возможностью получения данных, необходимых для создания экземпляра актора, от среды исполнения, выступающей в качестве инициирующей среды исполнения, на основе идентифицированных атрибутов безопасности. Среда исполнения содержит модуль инстанцирования, выполненный с возможностью создания экземпляра актора, когда политика авторизации среды исполнения, выступающей в качестве целевой среды исполнения, для экземпляра актора удовлетворяется, тем самым позволяя экземпляру актора доступ к по меньшей мере одному ресурсному объекту.

В соответствии с восьмым аспектом представлена компьютерная программа для осуществления миграции экземпляра актора приложения, при этом компьютерная программа содержит код компьютерной программы, который при его исполнении в обрабатывающей схеме среды исполнения, выступающей в качестве целевой среды исполнения, вызывает выполнение средой исполнения способа в соответствии с пятым аспектом.

В соответствии с девятым аспектом представлен компьютерный программный продукт, содержащий компьютерную программу в соответствии по меньшей мере с одним из: четвертым аспектом или восьмым аспектом и машиночитаемый носитель данных, в котором сохранена компьютерная программа. Машиночитаемый носитель данных может быть долговременным машиночитаемым носителем данных.

Выгодный эффект заключается в том, что способы, эти среды исполнения и эти компьютерные программы обеспечивают эффективную миграцию экземпляра актора.

Выгодный эффект заключается в том, что эти способы, эти среды исполнения и эти компьютерные программы позволяют обеспечить безопасную миграцию актора распределенного приложения. Такая безопасная миграция актора распределенного приложения, в свою очередь, позволяет обеспечить эффективную обработку распределенных приложений в средах исполнения.

Следует отметить, что любой признак первого, второго, третьего, четвертого, пятого, шестого, седьмого, восьмого и девятого аспектов может быть применен к любому другому аспекту, где это необходимо. Аналогично, любое преимущество первого аспекта может быть в равной степени применено ко второму, третьему, четвертому, пятому, шестому, седьмому, восьмому и/или девятому аспекту, соответственно, и наоборот. Другие цели, признаки и преимущества раскрытых вариантов осуществления будут очевидны из следующего подробного раскрытия, из прикрепленных зависимых пунктов формулы изобретения, а также из чертежей.

В общем все термины, используемые в формуле изобретения, должны интерпретироваться в соответствии с их обычным значением в области техники, если в настоящем описании явно не определено иное. Все ссылки на "один элемент, устройство, компонент, средство, этап и т.д." должны интерпретироваться как относящиеся по меньшей мере к одному экземпляру элемента, устройства, компонента, средства, этапа и т.д., если явно не указано иное. Этапы любого способа, раскрытого в настоящем описании, не обязательно должны выполняться в точности в раскрытом порядке, если явно не указано иное.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

Далее в качестве примера описывается идея изобретения со ссылкой на прилагаемые чертежи, на которых:

фиг. 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 содержат первое приложение (Приложение 1) 130 и второе приложение (Приложение 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) могут осуществлять доступ к ресурсному объекту 160 посредством по меньшей мере одной из сред 200a, 200b, 200c исполнения. Каждый ресурсный объект 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 не на основе сертификатов, такие как ресурсные объекты 160 (см. ниже) сети доверия. Ниже приводятся примеры таких атрибутов.

Политики доступа являются условиями с правами идентификационных данных экземпляра актора и актора, правами идентификационных данных развертывания, и правами идентификационных данных среды исполнения для ресурсных объектов 160.

Фиг. 4 и 5 являются блок-схемами последовательности операций, изображающими варианты осуществления способов для миграции экземпляра 110 актора приложения, выполняемых средой 200a исполнения, выступающей в качестве инициирующей среды исполнения. Фиг. 6 и 7 являются блок-схемами последовательности операций, изображающими варианты осуществления способов для осуществления миграции экземпляра 110 актора приложения, выполняемых средой 200b исполнения, выступающей в качестве целевой среды исполнения. Способы преимущественно обеспечиваются в виде компьютерных программ 320a, 320b, см. ниже.

По меньшей мере, некоторые из раскрытых в настоящем описании вариантов осуществления основаны на осуществлении миграции инициирующей средой 200a исполнения экземпляра 110 актора в целевую среду 200b исполнения, при этом обеспечивая выполнение условий безопасности актора для целевой среды 200b исполнения, и при этом целевая среда 200b исполнения обеспечивает выполнение своих условий безопасности для актора.

Параллельная ссылка делается везде на фиг. 1b. На фиг. 1b под (a) изображена инициирующая среда 200a исполнения и целевая среда 200b исполнения, и при этом инициирующая среда 200a исполнения содержит экземпляр 110 актора приложения.

Теперь делается ссылка на фиг. 4, изображающую способ миграции экземпляра 110 актора приложения, выполняемый средой 200a исполнения, выступающей в качестве инициирующей среды исполнения в соответствии с одним вариантом осуществления.

S106: инициирующая среда 200a исполнения выбирает целевую среду 200b исполнения из набора целевых сред исполнения 200b, 200c для осуществления миграции экземпляра 110 актора. Целевая среда 200 исполнения выбирается на основе полученных атрибутов безопасности для набора целевых сред 200b, 200c исполнения. Примеры того, как получить такие атрибуты безопасности, будут раскрыты ниже. На фиг. 1b под (b) изображена инициирующая среда 200a исполнения и целевая среда 200b исполнения, и при этом инициирующая среда 200a исполнения выбрала целевую среду 200b исполнения для осуществления миграции (как указано с помощью стрелки 170) экземпляра 110 актора.

S108: инициирующая среда 200a исполнения осуществляет миграцию экземпляра 110 актора в выбранную целевую среду 200b исполнения, уже выбранную целевой средой 200b исполнения. На фиг. 1b под (c) изображена инициирующая среда 200a исполнения и целевая среда 200b исполнения, и при этом была осуществлена миграция экземпляра 110 актора в целевую среду 200b исполнения.

Теперь будут раскрыты варианты осуществления, относящиеся к дополнительным подробностям осуществления миграции экземпляра 110 актора приложения, выполняемой инициирующей средой 200a исполнения.

Атрибуты безопасности могут быть получены распределенным или централизованным образом. Следовательно, в соответствии с одним вариантом осуществления, (соответствующие) атрибуты безопасности по меньшей мере одной из целевых сред 200b, 200c исполнения в наборе целевых сред 200b, 200c исполнения получают непосредственно от по меньшей мере одной из целевых сред 200b, 200c исполнения. В соответствии с другим вариантом осуществления атрибуты безопасности по меньшей мере одной из целевых сред 200b, 200c исполнения в наборе целевых сред 200b, 200c исполнения получают от службы атрибутов безопасности. Имеются различные примеры служб атрибутов безопасности. Например, служба атрибутов безопасности может быть службой, выполненной с возможностью управления (по меньшей мере одного из: создания, предоставления, верификации и аннулирования) атрибутами безопасности для сред 200a, 200b, 200c исполнения, централизованной службой, которая хранит атрибуты безопасности по меньшей мере одной среды 200a, 200b, 200c исполнения, и/или распределенной службой, которая хранит атрибуты безопасности по меньшей мере одной среды 200a, 200b, 200c исполнения.

Имеются различные примеры атрибутов безопасности. Например, атрибуты безопасности могут содержать аутентификационную информацию пользователя, политику авторизации, авторизованные идентификационные данные, информацию о доступности кода безопасного персонального идентификационного номера (PIN), информацию о доступности безопасного пользовательского интерфейса и/или информацию о доступности защищенной начальной загрузки.

Теперь обратимся к фиг. 5, изображающей способы осуществления миграции экземпляра 110 актора приложения, выполняемой средой 200a исполнения, выступающей в качестве инициирующей среды исполнения в соответствии с дополнительными вариантами осуществления. Предполагается, что этапы S106 и S108 выполняются как раскрыто со ссылкой на фиг. 4.

Имеются различные способы выбора инициирующей средой 200a исполнения целевой среды 200b исполнения. Теперь в свою очередь будут описаны различные варианты осуществления, относящиеся к этому.

Например, инициирующая среда 200a исполнения может запросить информацию об атрибутах безопасности. Следовательно, в соответствии с одним вариантом осуществления инициирующая среда 200a исполнения выполнена с возможностью выполнения этапа S106a как части выбора целевой среды 200b исполнения:

S106a: инициирующая среда 200a исполнения получает атрибуты безопасности для набора целевых сред 200b, 200c исполнения. Этап S106a может выполняться как часть упомянутого выше этапа S106. Инициирующая среда 200a исполнения, которая начинает миграцию, может, таким образом, сначала запросить информацию об атрибутах безопасности, а затем выбрать первую потенциальную целевую среду 200b исполнения.

Например, инициирующая среда 200a исполнения может проверить, что целевая среда 200b исполнения удовлетворяет условиям атрибутов безопасности. Следовательно, в соответствии с одним вариантом осуществления инициирующая среда 200a исполнения выполнена с возможностью выполнения этапа S106b как части выбора целевой среды 200b исполнения:

S106b: инициирующая среда 200a исполнения проверяет, что полученные атрибуты безопасности для выбранной целевой среды 200b исполнения удовлетворяют условиям атрибутов безопасности экземпляра 110 актора. Этап S106b может выполняться как часть упомянутого выше этапа S106.

Например, инициирующая среда 200a исполнения может проверить, что целевая среда 200b исполнения удовлетворяет условиям атрибутов безопасности путем взаимодействия с целевой средой 200b исполнения. Такая проверка может быть сделана путем передачи инициирующей средой 200a исполнения запроса целевой среде 200b исполнения, при этом целевая среда 200b исполнения, используя другие личные атрибуты безопасности, получает ответ на запрос и возвращает ответ инициирующей среде 200a исполнения. Следовательно, в соответствии с одним вариантом осуществления инициирующая среда 200a исполнения выполнена с возможностью выполнения этапа S106c как части выбора целевой среды 200b исполнения:

S106c: инициирующая среда 200a исполнения проверяет, что полученные атрибуты безопасности для выбранной целевой среды 200b исполнения правомерно идентифицированы целевой средой 200b исполнения. Этап S106d может выполняться как часть упомянутого выше этапа S106.

Например, инициирующая среда 200a исполнения может выполнить частичную проверку, может ли целевая среда 200b исполнения принять актор до осуществления миграции экземпляра 110 актора в целевую среду 200b исполнения. Следовательно, в соответствии с одним вариантом осуществления инициирующая среда 200a исполнения выполнена с возможностью выполнения этапа S106d как части выбора целевой среды 200b исполнения:

S106d: инициирующая среда 200a исполнения проверяет, что целевая среда 200b исполнения примет инициирование миграции экземпляра 110 актора в целевую среду 200b исполнения до инициирования миграции экземпляра 110 актора в выбранную целевую среду 200b исполнения. Это может увеличивать шанс успешной миграции. Этап S106d может выполняться как часть упомянутого выше этапа S106.

Имеются различные способы осуществления миграции инициирующей средой 200a исполнения экземпляра 110 актора в целевую среду 200b исполнения. Например, инициирующая среда 200a исполнения может предоставить данные, необходимые для (повторного) создания экземпляра 110 актора в целевой среде 200b исполнения. Следовательно, в соответствии с одним вариантом осуществления инициирующая среда 200a исполнения выполнена с возможностью выполнения этапа S108a как части осуществления миграции экземпляра 110 актора в целевую среду 200b исполнения:

S108a: инициирующая среда 200a исполнения предоставляет данные, необходимые для создания экземпляра 110 актора в выбранной целевой среде 200b исполнения. Этап S108a может выполняться как часть упомянутого выше этапа S108.

Миграция может быть результатом предшествующего отклонения экземпляра 110 актора другой целевой средой 200b исполнения. Следовательно, в соответствии с одним вариантом осуществления выбор целевой среды 200b исполнения на этапе S106 выполняется в ответ на неуспешную миграцию экземпляра 110 актора в другую целевую среду 200c исполнения.

Аналогично, миграция может быть результатом предшествующего выталкивания экземпляра 110 актора в инициирующую среду выполнения 200a, но при этом экземпляру 110 актора не разрешен доступ инициирующей средой 200a исполнения. Следовательно, в соответствии с одним вариантом осуществления инициирующая среда 200a исполнения выполнена с возможностью выполнения этапов S102 и S104:

S102: инициирующая среда 200a исполнения получает экземпляр 110 актора как миграцию экземпляра 110 актора из другой инициирующей среды 200c исполнения. После получения экземпляра 110 актора инициирующая среда 200a исполнения выполняет этап S104:

S104: инициирующая среда 200a исполнения определяет, что политика авторизации инициирующей среды 200a исполнения для экземпляра 110 актора не удовлетворяется. Затем в ответ на это выполняется выбор целевой среды исполнения на этапе S106. Следовательно, этапы S102 и S104 выполняются перед этапом s106 для того же самого экземпляра 110 актора.

Теперь обратимся к фиг. 6, изображающей способ для осуществления миграции экземпляра 110 актора приложения, выполняемого средой 200b исполнения, выступающей в качестве целевой среды исполнения в соответствии с одним вариантом осуществления.

S202: целевая среда 200b исполнения идентифицирует атрибуты безопасности, которые позволяют инициирующей среде 200a исполнения выбрать целевую среду 200b исполнения для миграции экземпляра 110 актора.

S204: целевая среда 200b исполнения получает данные, необходимые для создания экземпляра 110 актора от инициирующей среды 200a исполнения. Полученные данные основаны на идентифицированных атрибутах безопасности.

S206: целевая среда 200b исполнения создает экземпляр 110 актора, когда политика авторизации целевой среды 200b исполнения для экземпляра 110 актора удовлетворяется. Целевая среда 200b исполнения, таким образом, позволяет экземпляру 110 актора доступ к по меньшей мере одному ресурсному объекту 160.

Теперь будут раскрыты варианты осуществления, относящиеся к дополнительным подробностям осуществления миграции экземпляра 110 актора приложения, выполняющейся целевой средой 200b исполнения.

Имеются различные примеры политик авторизации. В соответствии с одним примером политика авторизации определяет, какой актор, какой по меньшей мере один ресурсный объект 160 и какие операционные атрибуты должны удовлетворяться, чтобы актор получил доступ по меньшей мере к одному ресурсному объекту 160 целевой среды 200b исполнения.

Имеются различные примеры ресурсных объектов 160. Каждый ресурсный объект 160 может быть интерфейсом, представляющим ресурс, такой как датчик, привод, обработка, камеру, сетевой интерфейс, служба сообщений, хранилище, база данных, сервис/модуль распознавания лиц, сервис/модуль распознавания шаблонов, сервис/модуль аналитики, сервис/модуль инструмента решения и т.д.

Обратимся теперь к фиг. 7, изображающей способ осуществления миграции экземпляра 110 актора приложения, выполняемой средой 200b исполнения, выступающей в качестве целевой среды исполнения, в соответствии с дополнительными вариантами осуществления. Предполагается, что этапы S202, S204 и S206 выполняются как раскрыто со ссылкой на фиг. 6.

Как было раскрыто выше, на этапе S206 целевая среда 200b исполнения создает экземпляр 110 актора, когда удовлетворяется политика авторизации целевой среды 200b исполнения для экземпляра 110 актора. Имеются различные способы определения целевой средой 200b исполнения, удовлетворяется ли политика авторизации целевой среды 200b исполнения для экземпляра 110 актора или нет. Теперь в свою очередь будут описаны различные варианты осуществления, относящиеся к этому.

Например, если это требуется политикой авторизации, целевая среда 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 исполнения, см. ниже.

Следовательно, в соответствии с одним вариантом осуществления выполнение экземпляра 110 актора блокируется в целевой среде 200b исполнения, когда любой из этапов S206a, S206b, S206c проверки завершается неудачей.

Кроме того, доступ к ресурсному объекту 160 может быть блокирован, когда политика авторизации не удовлетворяется. Следовательно, в соответствии с одним вариантом осуществления целевая среда 200b исполнения выполнена с возможностью выполнения этапа S208:

S208: целевая среда 200b исполнения предотвращает доступ экземпляра 110 актора к по меньшей мере одному ресурсному объекту 160, когда политика авторизации не удовлетворяется. Этап S208 может выполняться после этапа S206.

Имеются различные пути, как действовать целевой среде 200b исполнения после неуспешной миграции экземпляра 110 актора, и/или когда экземпляру 110 актора было отказано в доступе к по меньшей мере одному ресурсному объекту 160. В соответствии с одним вариантом осуществления целевая среда 200b исполнения сообщает инициирующей среде 200a исполнения о неуспешной миграции/блокировании, следовательно, выполняет этап S210:

S210: целевая среда 200b исполнения уведомляет инициирующую среду 200a исполнения о неуспешной миграции экземпляра 110 актора в ответ на блокирование исполнения экземпляра 110 актора или предотвращение доступа экземпляра 110 актора к по меньшей мере одному ресурсному объекту 160. Этап S210 может выполняться после этапа S208. На фиг. 1b под (d) изображена инициирующая среда 200a исполнения и целевая среда 200b исполнения, и при этом целевая среда 200b исполнения уведомила (как указано с помощью стрелки 170) инициирующую среду 200a исполнения о неуспешной миграции экземпляра 110 актора.

В соответствии с одним вариантом осуществления целевая среда исполнения 200b инициирует попытку миграции экземпляра 110 актора для новой целевой среды 200c исполнения и, следовательно, выполняет этапы S212 и S214:

S212: целевая среда исполнения 200b выбирает на основе полученных атрибутов безопасности для набора других целевых сред 200c исполнения другую целевую среду 200c исполнения из набора целевых сред 200c исполнения для миграции экземпляра 110 актора. На фиг. 1b под (e) изображены инициирующая среда 200a исполнения, целевая среда 200b исполнения и другая целевая среда 200c исполнения, и при этом целевая среда 200b исполнения выбрала эту другую целевую среду 200c исполнения для (все еще будущей) осуществления миграции (как указано с помощью стрелки 170) экземпляра 110 актора.

S214: целевая среда 200b исполнения осуществляет миграцию S214 экземпляра 110 актора в выбранную другую целевую среду 200c исполнения после выбора этой другой целевой среды 200c исполнения в ответ на блокирование исполнения экземпляра 110 актора.

Этапы 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 исполнения для миграции (как указано с помощью стрелки 170) экземпляра 110 актора.

Как было раскрыто выше, инициирующая среда 200a исполнения выбирает целевую среду 200b исполнения на основе полученных атрибутов безопасности. Для этого инициирующая среда 200a исполнения может обеспечить, чтобы политика целевой среды 200b исполнения комбинировалась с идентификационными данными развертывания и идентификационными данными среды исполнения, так что требования к целевой среде 200b исполнения удовлетворяются до миграции экземпляра 110 актора в целевую среду 200b исполнения. Примерами таких требований являются возможности безопасности, гарантии безопасности (такие как аттестация защищенной начальной загрузки), и что среда исполнения принадлежит известной доверенной стороне.

Доверительные отношения между инициирующей средой 200a исполнения и целевой средой 200b исполнения могут быть установлены через инфраструктуру управления открытыми ключами (PKI), то есть когда структуры сертификатов выражают способ доверять другой среде исполнения. Каждая среда 200a, 200b исполнения может совместно использовать общий центр сертификации (CA), или доверительные отношения между CA могут быть установлены посредством взаимной сертификации. Используя такую PKI, среды 200a, 200b исполнения могут аутентифицировать друг друга, как в упомянутом выше этапе S106c, установить общие криптографические ключи и безопасно передавать информацию, например, с помощью протокола безопасности транспортного уровня (TLS), протокола безопасности датаграммного транспортного уровня (DTLS) или используя протокол обеспечения безопасности объекта.

Атрибуты приложения могут требовать, чтобы такие доверительные отношения могли быть установлены, но также могут требовать, чтобы целевая среда 200b исполнения имела конкретный CA, или даже была одним из набора указанных устройств. Другие атрибуты безопасности, как упоминалось выше, являются атрибутами безопасных вычислений; экземпляр 110 приложения может требовать проверяемого доказательства аттестации, что целевая среда 200b исполнения выполнила защищенную отслеживаемую начальную загрузку. Доступность доверенной среды исполнения, доверенного платформенного модуля, смарт-карты, поддержки доверенного пользовательского ввода и вывода, безопасного видео/аудио-канала являются другими примерами атрибутов, которые могут использоваться.

Когда инициирующая среда 200a исполнения считает, что требования к целевой среде 200b исполнения удовлетворяются, инициирующая среда 200a исполнения осуществляет миграцию экземпляра 110 актора в целевую среду 200b исполнения. Целевая среда 200b исполнения обеспечивает, чтобы ее политика актора и политика доступа в комбинации с идентификационными данными удовлетворялись мигрируемым экземпляром 110 актора. Примерами таких требований являются аутентификация и авторизация пользователя, требованиями к подписанному коду, но также могут быть атрибутами, относящимися к операциям и среде, в которой экземпляр 110 актора будет исполняться, например, время суток. Политика безопасности описывает, какие атрибуты субъекта, ресурсный объект 160, среда и операции должны удовлетворяться, чтобы позволить экземпляру 110 актора выполнять запрошенные операции над ресурсными объектами 160, обеспеченными целевой средой 200b исполнения. В этом отношении субъектом является компьютеризированное представление объекта, ответственного за исполнение приложения, обычно пользователь или организация. Атрибуты субъекта используются для описания идентификатора пользователя. Идентификатор может быть ассоциирован с правами доступа к ресурсам среды исполнения; он может быть в форме имени пользователя, принадлежностей к группам и ролям, но также и владения криптографическими ключами или паролями. Например, для среды 200a, 200b, 200c исполнения может быть достаточно гарантировать, что экземпляр 110 актора ассоциирована с криптографическими ключами, владение которыми может быть доказано через криптографическую процедуру ответа на запрос или протокол доказательства с нулевым разглашением, см. выше. Политика может перечислять требования к идентификации и аутентификации пользователей, ресурсы, доступные пользователям, и требования к объектам, которым позволено подписывать акторы и приложения.

Фиг. 2a схематично изображает, в терминах ряда функциональных блоков, компоненты среды 200a, 200b, 200c исполнения в соответствии с одним вариантом осуществления. В соответствии с аспектами среда 200a, 200b, 200c исполнения выполнена с возможностью выступать в качестве как инициирующей среды 200a исполнения, так и целевой среды 200b исполнения.

Обрабатывающая схема 210 обеспечена с использованием любой комбинации одного или нескольких из: подходящего центрального процессора (CPU), многопроцессорной системы, микроконтроллера, цифрового сигнального процессора (DSP) и т.д., способных исполнять программные инструкции, сохраненные в компьютерном программном продукте 310a (как на фиг. 4), например, в форме среды 230 хранения данных. Обрабатывающая схема 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 исполнения в соответствии с одним вариантом осуществления. Среда 200a, 200b, 200c исполнения на фиг. 2b содержит ряд функциональных модулей.

Для того, чтобы среда исполнения выступала в качестве инициирующей среды 200a исполнения, среда исполнения содержит модуль 210a выбора, выполненный с возможностью выполнения этапа S106, и модуль 210b миграции, выполненный с возможностью выполнения этапа S108. Среда исполнения на фиг. 2b, выступающая в качестве инициирующей среды 200a исполнения, может дополнительно содержать ряд опциональных функциональных модулей, таких как любой из: модуль 210c получения, выполненный с возможностью выполнения этапа S106a, модуль 210d проверки, выполненный с возможностью выполнения этапа S106b, модуль 210e проверки, выполненный с возможностью выполнения этапа S106c, модуль 210f проверки, выполненный с возможностью выполнения этапа S106d, модуль 210g обеспечения, выполненный с возможностью выполнения этапа S108a, и модуль 210h получения, выполненный с возможностью выполнения этапа S102, и модуль 210j определения, выполненный с возможностью выполнения этапа S104.

Чтобы среда исполнения выступала в качестве целевой среды 200b исполнения, среда исполнения содержит модуль 210k идентификации, выполненный с возможностью выполнения этапа S202, модуль 210m получения, выполненный с возможностью выполнения этапа S204, и модуль 210n инстанцирования, выполненный с возможностью выполнения этапа S206. Среда исполнения на фиг. 2b, выступающая в качестве целевой среды 200b исполнения, может дополнительно содержать ряд опциональных функциональных модулей, таких как любой из: модуль 210p проверки, выполненный с возможностью выполнения этапа S206a, модуль 210q проверки, выполненный с возможностью выполнения этапа S206b, модуль 210r проверки аутентификации, выполненный с возможностью выполнения этапа S206c, модуль 210s предотвращения, выполненный с возможностью выполнения этапа S208, модуль 210t уведомления, выполненный с возможностью выполнения этапа S210, модуль 210u выбора, выполненный с возможностью выполнения этапа S212, и модуль 210w миграции, выполненный с возможностью выполнения этапа S214.

Говоря в общем, каждый функциональный модуль 210a-210w может быть реализован с помощью аппаратного обеспечения или программного обеспечения. Предпочтительно, один, несколько или все функциональные модули 210a-210w могут быть реализованы с помощью обрабатывающей схемы 210, возможно в кооперации с функциональными блоками 220 и/или 230. Таким образом, обрабатывающая схема 210 может быть выполнена с возможностью извлечения инструкций из среды 230 хранения данных, обеспеченных функциональным модулем 210a-210w, и исполнения этих инструкций, тем самым выполняя любые этапы, как будет раскрыто далее.

Фиг. 3 показывает один пример компьютерного программного продукта 310a, 310b, содержащего машиночитаемое средство 330. На этом машиночитаемом средстве 330 может храниться компьютерная программа 320a, эта компьютерная программа 320a может вызывать исполнение обрабатывающей схемой 210 и функционально связанными с ней узлами и устройствами, такими как интерфейс 220 связи и среда 230 хранения данных, способов в соответствии с вариантами осуществления, описанными в настоящем описании. Таким образом, компьютерная программа 320a и/или компьютерный программный продукт 310a могут обеспечивать средство для выполнения любых этапов среды 200a исполнения, выступающей в качестве инициирующей среды исполнения, как раскрыто в настоящем описании. На этом машиночитаемом средстве 330 может храниться компьютерная программа 320b, эта компьютерная программа 320b может вызывать исполнение обрабатывающей схемой 310 и функционально связанными с ней узлами и устройствами, такими как интерфейс 320 связи и среда 330 хранения данных, способов в соответствии с вариантами осуществления, описанными в настоящем описании. Таким образом, компьютерная программа 320b и/или компьютерный программный продукт 310b могут обеспечивать средство для выполнения любых этапов среды 200b исполнения, выступающей в качестве целевой среды исполнения, как раскрыто в настоящем описании.

В примере на фиг. 3 компьютерный программный продукт 310a, 310b изображен как оптический диск, такой как CD (компакт-диск) или DVD (цифровой универсальный диск) или диск Blu-ray. Компьютерный программный продукт 310a, 310b также может быть воплощен в виде памяти, такой как оперативная память (RAM), постоянная память (ROM), стираемая программируемая постоянная память (EPROM) или электрически стираемая программируемая постоянная память (EEPROМ) и, в частности, в виде энергонезависимой среды хранения данных устройства во внешней памяти, такой как память USB (универсальная последовательная шина) или флэш-память, такая как компактная флэш-память. Таким образом, хотя компьютерная программа 320a, 320b схематично показана здесь как дорожка на изображенном оптическом диске, компьютерная программа 320a, 320b может быть сохранена в любом виде, подходящем для компьютерного программного продукта 310a, 310b.

Идея изобретения, главным образом, была описана выше со ссылкой на несколько вариантов осуществления. Однако, как будет очевидно специалисту в области техники, другие варианты осуществления, помимо раскрытых выше, в равной степени возможны в рамках идеи изобретения, определенной в прилагаемой формуле изобретения.

1. Способ осуществления миграции экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6) приложения (130, 140), причем способ выполняется инициирующей средой (200a) исполнения, при этом способ содержит этапы, на которых:

выбирают (S106) на основе полученных атрибутов безопасности для набора целевых сред (200b, 200c) исполнения целевую среду (200b) исполнения из набора целевых сред (200b, 200c) исполнения для осуществления миграции экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6), причем данный выбор целевой среды (200b) исполнения содержит этап, на котором проверяют (S106b), что полученные атрибуты безопасности для выбранной целевой среды (200b) исполнения удовлетворяют условиям атрибутов безопасности экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6); и

осуществляют миграцию (S108) экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6) в выбранную целевую среду (200b) исполнения после выбора целевой среды (200b) исполнения.

2. Способ по п. 1, в котором этап, на котором выбирают целевую среду (200b) исполнения, содержит этап, на котором получают (S106a) атрибуты безопасности для набора целевых сред (200b, 200c) исполнения.

3. Способ по п. 1, в котором этап, на котором выбирают целевую среду (200b) исполнения, содержит этап, на котором проверяют (S106c), что полученные атрибуты безопасности для выбранной целевой среды (200b) исполнения правомерно идентифицированы целевой средой (200b) исполнения.

4. Способ по п. 1, в котором этап, на котором выбирают целевую среду (200b) исполнения, содержит этап, на котором проверяют (S106d), что целевая среда (200b) исполнения одобрит инициирование миграции экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6) в целевую среду (200b) исполнения перед инициированием миграции экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6) в выбранную целевую среду (200b) исполнения.

5. Способ по п. 1, в котором этап, на котором осуществляют миграцию экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6), содержит этап, на котором предоставляют (S108a) данные, необходимые для создания экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6), в выбранную целевую среду (200b) исполнения.

6. Способ по п. 1, дополнительно содержащий этапы, на которых:

получают (S102) экземпляр (110) актора (A1, A2, A3, A4, A5, A6, A6) как миграцию экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6) из другой инициирующей среды исполнения;

определяют (S104), что политика авторизации инициирующей среды (200a) исполнения для экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6) не удовлетворяется, причем выбор целевой среды исполнения осуществляют в ответ на это.

7. Способ по п. 1, в котором выбор целевой среды исполнения выполняется в ответ на неуспешную миграцию экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6) в другую целевую среду исполнения.

8. Способ по п. 1, в котором атрибуты безопасности по меньшей мере одной из целевых сред (200b, 200c) исполнения в наборе целевых сред (200b, 200c) исполнения получаются непосредственно от упомянутой по меньшей мере одной из целевых сред (200b, 200c) исполнения.

9. Способ по п. 1, в котором атрибуты безопасности по меньшей мере одной из целевых сред (200b, 200c) исполнения в наборе целевых сред (200b, 200c) исполнения получаются от службы атрибутов безопасности.

10. Способ по п. 1, в котором атрибуты безопасности содержат по меньшей мере одно из: пользовательской аутентификационной информации, политики авторизации, авторизованных идентификационных данных, информации о доступности кода безопасного персонального идентификационного номера (PIN), информации о доступности безопасного пользовательского интерфейса, информации о доступности защищенной начальной загрузки.

11. Способ осуществления миграции актора (A1, A2, A3, A4, A5, A6, A6) приложения (130, 140), причем способ выполняется целевой средой (200b) исполнения, при этом способ содержит этапы, на которых:

идентифицируют (S202) атрибуты безопасности, которые обеспечивают инициирующей среде (200a) исполнения возможность выбрать целевую среду (200b) исполнения для миграции экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6);

получают (S204) данные, необходимые для создания экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6), от инициирующей среды (200a) исполнения на основе идентифицированных атрибутов безопасности; и

создают (S206) экземпляр (110) актора (A1, A2, A3, A4, A5, A6, A6), когда политика авторизации целевой среды (200b) исполнения для экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6) удовлетворяется, тем самым позволяя экземпляру (110) актора (A1, A2, A3, A4, A5, A6, A6) доступ к по меньшей мере одному ресурсному объекту (160).

12. Способ по п. 11, в котором этап, на котором создают экземпляр (110) актора (A1, A2, A3, A4, A5, A6, A6), содержит этап, на котором проверяют (S206a) в соответствии с политикой авторизации подлинность данных, необходимых для создания экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6).

13. Способ по п. 12, в котором этап, на котором создают экземпляр (110) актора (A1, A2, A3, A4, A5, A6, A6), содержит этап, на котором проверяют (S206b) наличие требуемых атрибутов в данных, необходимых для создания экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6).

14. Способ по п. 13, в котором этап, на котором проверяют наличие требуемых атрибутов, содержит этап, на котором выполняют (S206c) проверку аутентификации с помощью инициирующей среды (200a) исполнения.

15. Способ по п. 14, в котором исполнение экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6) блокируется в целевой среде (200b) исполнения, когда любая из проверок оказалась неуспешной.

16. Способ по п. 11, дополнительно содержащий этап, на котором предотвращают (S208) доступ экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6) к по меньшей мере одному ресурсному объекту (160), когда политика авторизации не удовлетворяется.

17. Способ по п. 15 или 16, дополнительно содержащий этап, на котором уведомляют (S210) инициирующую среду (200a) исполнения о неуспешной миграции экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6) в ответ на блокирование исполнения экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6) или предотвращение доступа экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6) к по меньшей мере одному ресурсному объекту (160).

18. Способ по п. 15 или 16, дополнительно содержащий этапы, на которых:

выбирают (S212) на основе полученных атрибутов безопасности для набора других целевых сред (200c) исполнения другую целевую среду (200c) исполнения из набора целевых сред (200c) исполнения для осуществления миграции экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6); и

осуществляют миграцию (S214) экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6) в выбранную другую целевую среду (200c) исполнения после выбора другой целевой среды (200c) исполнения в ответ на блокирование исполнения экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6).

19. Способ по п. 11, в котором политика авторизации определяет, какой актор (A1, A2, A3, A4, A5, A6, A6), какой из по меньшей мере одного ресурсного объекта (160) и какие операционные атрибуты должны удовлетворяться для актора (A1, A2, A3, A4, A5, A6, A6), чтобы осуществлять доступ к по меньшей мере одному ресурсному объекту (160) целевой среды (200b) исполнения.

20. Среда (200a) исполнения, выступающая в качестве инициирующей среды исполнения для осуществления миграции экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6) приложения (130, 140), причем среда исполнения содержит обрабатывающую схему (210), при этом обрабатывающая схема выполнена с возможностью предписывать среде (200a) исполнения:

выбирать на основе полученных атрибутов безопасности для набора сред (200b, 200c) исполнения, выступающих в качестве целевых сред (200b, 200c) исполнения, среду (200b) исполнения, выступающую в качестве целевой среды (200b) исполнения, из набора сред (200b, 200c) исполнения, выступающих в качестве целевых сред (200b, 200c) исполнения, для осуществления миграции экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6), при этом обрабатывающая схема выполнена с возможностью предписывать среде (200a) исполнения выбирать целевую среду (200b) исполнения посредством проверки того, что полученные атрибуты безопасности для выбранной целевой среды (200b) исполнения удовлетворяют условиям атрибутов безопасности экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6); и

осуществлять миграцию экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6) в выбранную среду (200b) исполнения, выступающую в качестве целевой среды (200b) исполнения, после выбора среды (200b) исполнения, выступающей в качестве целевой среды (200b) исполнения.

21. Среда (200b) исполнения, выступающая в качестве целевой среды исполнения для осуществления миграции актора (A1, A2, A3, A4, A5, A6, A6) приложения (130, 140), причем среда исполнения содержит обрабатывающую схему (210), при этом обрабатывающая схема выполнена с возможностью предписывать среде (200b) исполнения:

идентифицировать атрибуты безопасности, которые обеспечивают среде (200a) исполнения, выступающей в качестве инициирующей среды (200a) исполнения, возможность выбрать целевую среду (200b) исполнения для осуществления миграции экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6);

получать данные, необходимые для создания экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6), от среды (200a) исполнения, выступающей в качестве инициирующей среды (200a) исполнения, на основе идентифицированных атрибутов безопасности; и

создавать экземпляр (110) актора (A1, A2, A3, A4, A5, A6, A6), когда политика авторизации среды (200b) исполнения, выступающей в качестве целевой среды (200b) исполнения, для экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6) удовлетворяется, тем самым позволяя экземпляру (110) актора (A1, A2, A3, A4, A5, A6, A6) доступ к по меньшей мере одному ресурсному объекту (160).

22. Машиночитаемый носитель, на котором сохранена компьютерная программа (320a) для осуществления миграции экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6) приложения (130, 140), причем компьютерная программа содержит компьютерный код, который при его исполнении в обрабатывающей схеме (210) среды (200a) исполнения, выступающей в качестве инициирующей среды исполнения, предписывает среде (200a) исполнения:

выбирать (S106) на основе полученных атрибутов безопасности для набора сред (200b, 200c) исполнения, выступающих в качестве целевых сред (200b, 200c) исполнения, среду (200b) исполнения, выступающую в качестве целевой среды (200b) исполнения, из набора сред (200b, 200c) исполнения, выступающих в качестве целевых сред (200b, 200c) исполнения, для осуществления миграции экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6), причем данный выбор целевой среды (200b) исполнения содержит проверку (S106b) того, что полученные атрибуты безопасности для выбранной целевой среды (200b) исполнения удовлетворяют условиям атрибутов безопасности экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6); и

осуществлять миграцию (S108) экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6) в выбранную среду (200b) исполнения, выступающую в качестве целевой среды (200b) исполнения, после выбора среды (200b) исполнения, выступающей в качестве целевой среды (200b) исполнения.

23. Машиночитаемый носитель, на котором сохранена компьютерная программа (320b) для осуществления миграции актора (A1, A2, A3, A4, A5, A6, A6) приложения (130, 140), причем компьютерная программа содержит машинный код, который при его исполнении в обрабатывающей схеме (210) среды (200b) исполнения, выступающей в качестве целевой среды исполнения, предписывает среде (200b) исполнения:

идентифицировать (S202) атрибуты безопасности, которые обеспечивают среде (200a) исполнения, выступающей в качестве инициирующей среды (200a) исполнения, возможность выбрать среду (200b) исполнения, выступающую в качестве целевой среды (200b) исполнения, для осуществления миграции экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6);

получать (S204) данные, необходимые для создания экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6), от среды (200a) исполнения, выступающей в качестве инициирующей среды (200a) исполнения, на основе идентифицированных атрибутов безопасности; и

создавать (S206) экземпляр (110) актора (A1, A2, A3, A4, A5, A6, A6), когда политика авторизации среды (200b) исполнения, выступающей в качестве целевой среды (200b) исполнения для экземпляра (110) актора (A1, A2, A3, A4, A5, A6, A6), удовлетворяется, тем самым позволяя экземпляру (110) актора (A1, A2, A3, A4, A5, A6, A6) доступ к по меньшей мере одному ресурсному объекту (160).



 

Похожие патенты:
Изобретение относится к технике обработки цифровых данных с использованием программируемых специализированных вычислительных устройств и может быть использовано при разработке специализированных вычислительных устройств обработки цифровых данных на борту боевых летательных аппаратов.

Изобретение относится к вычислительной технике. Технический результат заключается в повышении скорости ввода данных.

Изобретение относится к области вычислительной техники для обработки потоковых данных. Технический результат заключается в повышении скорости обработки потоковых данных.

Изобретение относится к системе и способу для рендеринга контента рукописного ввода на устройстве отображения. Технический результат заключается в снижении времени задержки при отображении рукописного ввода и достигается за счет использования отдельного потока процесса рендеринга рукописного ввода, который работает в операционной системе и параллельно с другими потоками приложений.

Изобретение относится к вычислительной технике и может быть использовано в системах цифровой вычислительной техники как средство преобразования кодов. Техническим результатом является реализация любой из простых симметричных булевых функций τ0,5×(n+1)-1, τ0,5×(n+1), τ0,5×(n+1)+1, зависящих от n аргументов - входных двоичных сигналов, при n=5.

Изобретение относится к средствам обеспечения непрерывности задач между устройствами. Технический результат заключается в обеспечении непрерывности выполнения задач между устройствами.

Изобретение предназначено для выполнения селекции и идентификации меньшего, либо селекции и идентификации большего, либо селекции произвольно назначенного из двух n-разрядных двоичных чисел, задаваемых двоичными сигналами, и может быть использовано в системах цифровой вычислительной техники как средство предварительной обработки информации.

Изобретение относится к автоматике и аналоговой вычислительной технике, предназначено для ранговой обработки аналоговых сигналов и может быть использовано в системах аналоговой вычислительной техники как средство предварительной обработки информации.

Изобретение относится к средствам параметрической инерции и API. Технический результат заключается в обеспечении отображения разнообразных эффектов инерции, которые применяются в отношении объекта перемещения в пользовательском интерфейсе.

Изобретение относится к вычислительной технике. Технический результат заключается в обеспечении пользователю, использующему разные приложения, унифицированного восприятия при использовании, даже когда каждое приложение имеет отличный от других пользовательский интерфейс (UI), отличную от других компоновку UI и отличную от других технологию.

Изобретение относится к системе и способу для рендеринга контента рукописного ввода на устройстве отображения. Технический результат заключается в снижении времени задержки при отображении рукописного ввода и достигается за счет использования отдельного потока процесса рендеринга рукописного ввода, который работает в операционной системе и параллельно с другими потоками приложений.

Изобретение относится к средствам обеспечения непрерывности задач между устройствами. Технический результат заключается в обеспечении непрерывности выполнения задач между устройствами.

Изобретение относится к средствам обеспечения непрерывности задач между устройствами. Технический результат заключается в обеспечении непрерывности выполнения задач между устройствами.

Способ может быть применен на практике в распределенном вычислительном окружении, которое предоставляет вычислительные ресурсы множеству арендаторов. Технический результат заключается в предотвращении запуска рабочих нагрузок, превышающих некоторую продолжительность.

Изобретение относится к средствам отображения окон посредством использования группы работ. Технический результат заключается в сокращении времени, требуемом для переключения между окнами.

Изобретение относится к средствам для продолжения задач между пользовательскими устройствами. Технический результат заключается в скорости продолжения выполнения задачи.

Изобретение относится к средствам для продолжения задач между пользовательскими устройствами. Технический результат заключается в скорости продолжения выполнения задачи.

Изобретение относится к средствам для реализации измененной приоритетной маршрутизации прерываний ввода/вывода (I/O). Технический результат заключается в расширении арсенала технических средств для реализации измененной приоритетной маршрутизации прерываний ввода/вывода.

Изобретение относится к области вычислительной техники. Технический результат заключается в возможности исполнения без помех двух задач с разделением времени, даже если шкалы времени двух задач являются разными.

Изобретение относится к области вычислительной техники. Технический результат заключается в возможности исполнения без помех двух задач с разделением времени, даже если шкалы времени двух задач являются разными.

Изобретение относится к способам передачи пакетов, содержащих цифровые данные. Технический результат заключается в обеспечении защищенной передачи данных.
Наверх