JP5945512B2 - 計算機システム、及び仮想計算機管理方法 - Google Patents

計算機システム、及び仮想計算機管理方法 Download PDF

Info

Publication number
JP5945512B2
JP5945512B2 JP2013025050A JP2013025050A JP5945512B2 JP 5945512 B2 JP5945512 B2 JP 5945512B2 JP 2013025050 A JP2013025050 A JP 2013025050A JP 2013025050 A JP2013025050 A JP 2013025050A JP 5945512 B2 JP5945512 B2 JP 5945512B2
Authority
JP
Japan
Prior art keywords
server
image data
virtual machine
virtual
tpm
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.)
Expired - Fee Related
Application number
JP2013025050A
Other languages
English (en)
Other versions
JP2014154050A (ja
Inventor
敬太郎 上原
敬太郎 上原
直也 服部
直也 服部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2013025050A priority Critical patent/JP5945512B2/ja
Priority to US14/178,895 priority patent/US9288155B2/en
Publication of JP2014154050A publication Critical patent/JP2014154050A/ja
Application granted granted Critical
Publication of JP5945512B2 publication Critical patent/JP5945512B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/105Multiple levels of security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1433Vulnerability analysis

Description

本発明は、クラウドコンピューティング上で安全に仮想計算機を配布し、認証する技術に関する。
半導体技術の進歩による計算機資源の高集積化及び高性能化に伴って、計算機リソースの有効活用及び運用コスト削減を目的とした仮想化技術が進展している。さらに、仮想サーバ(Virtual Machine:VM)をイメージファイルとして配布するための規格(Open Virtual Format:OVF)が浸透し、任意の物理サーバ上で仮想サーバを稼働することが可能となっている。
一方、物理サーバ上で実行されるアプリケーションには、ライセンス等一定の制限の下実行可能なアプリケーションも多数存在する。
前述したようなアプリケーションを実行するVMをクラウドシステム上で多数実行する場合に、各VM上のアプリケーションがライセンス契約にしたがって実行されているかを検証し、また、VMそのものを検証する必要となる。VMそのものを検証するのは、ルートキット又はマルウェア等によってVMそのものが改竄され、アプリケーションが不正に実行されているか否かを確認する必要があるためである。
物理サーバが起動時の整合性(Integrity)を検証するための方法として、TPM(Trusted Platform Module)を用いる方法が知られている(特許文献1及び特許文献2参照)。TPMは、物理サーバのハードウェアに組み込まれたチップであり、Trusted Computing Group(TCG)によってハードウェア及びソフトウェアの仕様が開発されている(例えば、特許文献1及び特許文献2参照)。
さらに、ハイパバイザがVM起動時の整合性を検証するために、仮想TPMを用いて物理TPMをエミュレーションする技術も知られている(例えば、非特許文献1参照)。
米国特許出願公開第2009/0204964号明細書 米国特許出願公開第2011/0202765号明細書
Stefan Berger、外5名、「vTPM: Virtualizing the trusted platform module」、15th USENIX Security Symposium、pp.305-320
アプリベンダは、クラウドを用いてアプリケーションサービスを提供する場合、所定のアプリケーションを実行するVMのOVFイメージファイルをクラウドシステム上に配布する。この場合、クラウドシステム上の管理サーバ等が、VM及びアプリケーションの整合性を検証し、整合性が確認された場合にアプリケーションを実行するVMを起動させる。
管理サーバ等は、整合性報告を第三者機関に送信することによって、VM及びアプリケーションの検証を行う必要がある。また、クラウドシステム上ではユーザの要求に応じてアプリケーションが実行されるため、アプリベンダが当該アプリケーションのライセンス管理を行うための機能が提供されていない。
したがって、クラウドシステムでは、安全なVMの起動を実現する必要があり、また、アプリベンダがクラウドシステム上で実行されるアプリケーションの利用状態を把握する必要がある。
本発明は、前述した課題を解決するためになされた発明である。すなわち、クラウドシステム上で、VM及びアプリケーションの整合性を確保し、かつ、アプリベンダのライセンス管理を実現するシステム及び方法を提供する。
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、プロセッサ、前記プロセッサに接続されるメモリ、前記プロセッサに接続されるネットワークインタフェースを有する複数の計算機を備える計算機システムであって、前記計算機システムは、所定のアプリケーションを実行する仮想計算機に割り当てる計算機リソースを有する仮想計算機システムと、前記仮想計算機に関する整合性を検証する検証システムと、を含み、前記仮想計算機システムは、前記仮想計算機に計算機リソースを提供する複数のサーバと、前記複数のサーバ上で稼働する前記仮想計算機を管理する管理計算機と、前記所定のアプリケーションを実行する仮想計算機を生成するためのイメージデータを格納するイメージデータ格納部と、を含み、前記検証システムは、前記仮想計算機に関する整合性を検証する検証サーバを含み、前記仮想計算機システムは、前記イメージデータ、及び当該イメージデータに基づいて生成される前記仮想計算機の起動に要求されるセキュリティ強度が対応づけられたイメージデータ管理情報と、前記サーバ、及び前記サーバに設定されたセキュリティ強度が対応づけられたサーバ管理情報と、を保持し、前記仮想計算機システムを利用するユーザから、前記所定のアプリケーションを実行する仮想計算機を生成するための対象イメージデータの識別情報を含むデプロイ要求を受け付けるデプロイ要求受付部と、前記イメージデータ管理情報及び前記サーバ管理情報に基づいて、前記対象イメージデータに対応づけられた前記セキュリティ強度以上の前記セキュリティ強度が設定された前記サーバを検索するサーバ検索部と、前記検索されたサーバに前記対象イメージデータのデプロイを指示するデプロイ指示部と、前記対象イメージデータを用いて、前記検索されたサーバ上に前記仮想計算機を生成し、前記生成された仮想計算機の起動時に取得され、前記仮想計算機に関する整合性の検証に用いられる第1の整合性報告を前記検証サーバに対して送信する仮想計算機管理部と、を有し、前記仮想計算機管理部は、前記検証サーバから送信される前記第1の整合性報告に対する検証処理の結果を受信し、前記デプロイ要求受付部は、前記受信した第1の整合性報告に対する検証処理の結果に基づいて、前記対象イメージデータのデプロイ結果を出力することを特徴とする。
本発明によれば、仮想計算機システムでは、仮想計算機に関する整合性が検証されるため、安全なアプリケーションサービスを提供することが可能となる。すなわち、セキュアなアプリケーションサービスを提供することできる。
上記した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
本発明の実施例1における計算機システムの構成の一例を示す説明図である。 本発明の実施例1のVM管理サーバのハードウェア構成及びソフトウェア構成の一例を説明するブロック図である。 本発明の実施例1のTPM搭載物理サーバのハードウェア構成及びソフトウェア構成の一例を示すブロック図である。 本発明の実施例1の物理サーバのハードウェア構成及びソフトウェア構成の一例を示すブロック図である。 本発明の実施例1におけるTPMの構成例を示すブロック図である。 本発明の実施例1のVMパッケージの一例を示す説明図である。 本発明の実施例1のVM割当表の一例を示す説明図である。 本発明の実施例1の物理サーバ構成表の一例を示す説明図である。 本発明の実施例1のVMパッケージ管理表の一例を示す説明図である。 本発明の実施例1におけるVM管理サーバがデプロイ要求を受信した場合に実行する処理を説明するフローチャートである。 本発明の実施例1の物理サーバ検索部が実行する物理サーバの検索処理の一例を説明するフローチャートである。 本発明の実施例1におけるデプロイ指示部が実行するデプロイ処理を説明するフローチャートである。 本発明の実施例1のTPM搭載物理サーバが実行するTrusted VMの起動処理を説明するフローチャートである。 本発明の実施例1のTPM搭載物理サーバが実行するTrusted VMの起動処理を説明するフローチャートである。 本発明の実施例1の認証サーバが実行する処理を説明するフローチャートである。 本発明の実施例2のTPM搭載物理サーバのハードウェア構成及びソフトウェア構成の一例を示すブロック図である。 本発明の実施例2におけるTrustedアプリケーションの認証処理を説明するシーケンス図である。 本発明の実施例3のVMパッケージの一例を示す説明図である。 本発明の実施例3の認証サーバが実行する処理を説明するフローチャートである。
以下、図面を用いて実施例について説明する。
図1は、本発明の実施例1における計算機システムの構成の一例を示す説明図である。
本発明の計算機システムは、図1に示すようにクラウドシステム1000、アプリケーション提供システム400、及び検証機関システム500から構成される。クラウドシステム1000、アプリケーション提供システム400、及び検証機関システム500は、ネットワーク200を介して互いに接続される。なお、本発明はネットワーク200の種別に限定されず、WAN(Wide Area Network)、及びLAN(Local Area Network)等のいずれを用いてもよい。また、本発明はネットワーク200の接続方式に限定されず、有線又は無線いずれであってもよい。
また、ネットワーク200には、ユーザ310が使用する端末300が接続される。ユーザ310は端末300を操作することによって、クラウドサービスを利用することができる。
クラウドシステム1000は、クラウドサービスを提供するプロバイダの計算機システムである。クラウドサービスでは、ユーザ310の希望に応じて、所定のアプリケーションを実行する仮想計算機(VM)から構成される業務システムが提供される。ユーザ310は、提供される業務システムを用いて所定のサービス等を利用する。なお、本発明は、クラウドサービスを用いて提供される業務システムの種類に限定されない。
クラウドシステム1000は、VM管理サーバ1100、複数のTPM搭載物理サーバ1200、複数の物理サーバ1300、及びVMパッケージ管理DB1400を備える。
VM管理サーバ1100、複数のTPM搭載物理サーバ1200、複数の物理サーバ1300、及びVMパッケージ管理DB1400は、管理NW1006を介して互いに接続される。また、VM管理サーバ1100、複数のTPM搭載物理サーバ1200、複数の物理サーバ1300、及びVMパッケージ管理DB1400は、業務NW1005を介してネットワーク200と接続される。
VM管理サーバ1100は、TPM搭載物理サーバ1200及び物理サーバ1300上に生成されるVMを管理する計算機である。VM管理サーバ1100のハードウェア構成及びソフトウェア構成の詳細については図2を用いて後述する。
複数のTPM搭載物理サーバ1200及び複数の物理サーバ1300は、VMに割り当てる計算機リソースを提供する計算機である。TPM搭載物理サーバ1200は後述するようにセキュリティチップであるTPM1270(図3参照)を備える。一方、物理サーバ1300はTPMを備えていない。
TPM搭載物理サーバ1200上では、Trustedハイパバイザ1210が稼働する。また、TPM搭載物理サーバ1200上には、Trustedハイパバイザ1210によって管理される仮想TPM用VM1220、及びTrusted VM1230が稼働する。
ここで、Trustedハイパバイザ1210及びTrusted VM1230は、後述する検証処理によって改ざん等が行われていないことが確認されたハイパバイザ及びVMを示す。すなわち、Trustedハイパバイザ1210及びTrusted VM1230は、セキュアなハイパバイザ及びVMである。
物理サーバ1300上では、ハイパバイザ1310が稼働する。また、物理サーバ1300上には、ハイパバイザ1310によって管理されるVM1330が稼働する。
本実施例では、Trustedハイパバイザ1210及びTrusted VM1230は、後述するように改ざんされていないことが保証されているため、全ての機能が有効化されている。一方、ハイパバイザ1310及びVM1330は、一部の機能のみが有効化されている。
TPM搭載物理サーバ1200及び物理サーバ1300のハードウェア構成及びソフトウェア構成については、図3及び図4を用いて後述する。
なお、TPM搭載物理サーバ1200にはストレージ1500が接続され、また、物理サーバ1300にはストレージ1600が接続される。
VMパッケージ管理DB1400は、VMを稼働させるために必要なVMパッケージ1410を管理するデータベースである。VMパッケージ1410は、後述するようにアプリケーション提供システム400から送信される。
アプリケーション提供システム400は、所定のアプリケーションを提供するアプリベンダの計算機システムである。アプリケーション提供システム400は、クラウドシステム1000に対してVMパッケージ1410を送信する。また、アプリケーション提供システム400は、アプリケーションのライセンスを管理する。
アプリケーション提供システム400は、認証サーバ410、VMパッケージ配信サーバ420、ライセンスDB430、及びVMパッケージDB440を備える。認証サーバ410及びVMパッケージ配信サーバ420は、ネットワーク405を介してネットワーク200と接続される。
認証サーバ410は、クラウドシステム1000から整合性報告を受信し、整合性報告を検証機関システム500に転送する。また、認証サーバ410が、整合性報告に基づいて、ライセンスDB430を更新する。これによって、アプリベンダは、アプリケーションの利用状況を把握することができる。例えば、アプリケーションが実行された処理の回数等を把握することができる。そのため、アプリケーション提供システム400は、アプリケーションの実行回数に応じた課金等を条件とするアプリケーションのライセンスを適切に管理することができる。
なお、ライセンスDB430に格納される情報は、クラウドシステム1000上のアプリケーションの実行状態を把握可能な情報であればどのような情報でもよい。例えば、ライセンスDB430には、VMパッケージ1410の識別情報、ユーザ310の識別情報、及び整合性報告が対応づけられた情報等が格納される。
VMパッケージ配信サーバ420は、VMパッケージDB440に格納されるVMパッケージ1410をクラウドシステム1000に配信する。これによって、不特定多数のユーザ310に対してアプリケーションを提供することが可能となる。
なお、本発明は、VMパッケージ1410が配信されるタイミングに限定されない。アプリベンダが配信を希望する場合にVMパッケージ1410が配信されてもよいし、ユーザ310から要求された場合にVMパッケージ1410が配信されてもよい。本実施例では、予め、ユーザ310が希望するアプリケーションを実現するためのVMパッケージ1410がクラウドシステム1000に配信されているものとする。
検証機関システム500は、VMパッケージ1410を用いて生成されたVMの改ざん、及びアプリケーションの改ざん等を検証する。検証機関システム500は、検証サーバ510、IIDB(Integrity Information DataBase)520、及びVULDB(VULnerability DataBase)530を備える。なお、検証サーバ510は、ネットワーク505を介してネットワーク200と接続される。
IIDB520は、検証処理に必要なデータを格納するデータベースである。本実施例ではIIDB520には、VMパッケージ1410を用いて生成されるVMのハッシュ値の情報が格納される。
VULDB530は、脆弱性に関するデータを格納するデータベースである。検証サーバ510は、IIDB520及びVULDB530に基づいて、VMの改ざん、ユーザのなりすまし等を検証する。また、検証サーバ510は、検証結果をアプリケーション提供システム400に送信する。
なお、検証サーバ510が実行する検証処理は、公知のものを用いればよいため本実施例では詳細な説明を省略する。
本実施例では、アプリケーション提供システム400を経由して、検証結果がクラウドシステム1000に送信される。
図2は、本発明の実施例1のVM管理サーバ1100のハードウェア構成及びソフトウェア構成の一例を説明するブロック図である。
VM管理サーバ1100は、ハードウェアとして、CPU1101、メモリ1102、TPM(Trusted Platform Module)1103、BMC(Baseboard Management Controller)1104、及びネットワークインタフェース1105を備える。
CPU1101は、メモリ1102に格納されるプログラムを実行する。CPU1101がプログラムを実行することによって、VM管理サーバ1100が有する機能を実現することができる。以下、プログラムを主体に処理を説明する場合、CPU1101によってプログラムが実行されていることを示す。
メモリ1102は、CPU1101によって実行されるプログラム、及び当該プログラムの実行に必要な情報を格納する。メモリ1102に格納されるプログラム及び情報については後述する。
TPM1103は、セキュアなVM、OS等の起動を実現するためのチップである。TPM1103は、乱数生成及びRSA暗号処理を行う暗号化コプロセッサ、並びに、鍵等の情報を格納する記憶領域を備える。TPM1103の詳細については、図5を用いて後述する。
BMC1104は、VM管理サーバ1100の管理機能を提供するチップである。BMC1104によって提供される管理機能には、障害検出機能、電源制御機能、及び障害報告機能等が含まれる。
ネットワークインタフェース1105は、ネットワークを介して外部の装置と通信するためのインタフェースである。本実施例では、ネットワークインタフェース1105は、業務NW1005及び管理NW1006に接続される。
ここで、メモリ1102に格納されるプログラム及び情報について説明する。
メモリ1102には、デプロイ要求受付部1130、物理サーバ検索部1131、及びデプロイ指示部1132を実現するためのプログラムが格納される。また、メモリ1102には、VM割当表1110、物理サーバ構成表1120、及びVMパッケージ管理表1140が格納される。
デプロイ要求受付部1130は、ユーザ310からデプロイ要求を受け付ける。デプロイ要求には、VMパッケージ1410の名称等が含まれる。物理サーバ検索部1131は、デプロイ要求に基づいて、所定の条件を満たす物理サーバを検索する。デプロイ指示部1132は、検索された物理サーバに対して、所定のVMパッケージ1410のデプロイ指示を送信する。
VM割当表1110は、各物理サーバ上で稼働するVMを管理するための情報を格納する。VM割当表1110の詳細については、図7を用いて後述する。物理サーバ構成表1120は、クラウドシステム1000における物理サーバの構成を管理するための情報を格納する。物理サーバ構成表1120の詳細については、図8を用いて後述する。
VMパッケージ管理表1140は、VMパッケージ管理DB1400に格納されるVMパッケージ1410に関する情報を格納する。VMパッケージ管理表1140の詳細については、図9を用いて後述する。
なお、メモリ1102に格納されるプログラム及び情報は、図示しないストレージ装置に格納されていてもよい。この場合、CPU1101が、ストレージ装置からプログラム及び情報を読み出し、読み出されたプログラム及び情報をメモリ1102上に展開する。
なお、VM管理サーバ1100は、図2に示す各機能部を一つの機能部として備えていてもよい。例えば、デプロイ処理部として備える形態が考えられる。
図3は、本発明の実施例1のTPM搭載物理サーバ1200のハードウェア構成及びソフトウェア構成の一例を示すブロック図である。図4は、本発明の実施例1の物理サーバ1300のハードウェア構成及びソフトウェア構成の一例を示すブロック図である。
TPM搭載物理サーバ1200は、ハードウェアとしてCPU1250、メモリ1260、TPM1270、BMC1280、及びネットワークインタフェース1290を備える。
CPU1250、メモリ1260、TPM1270、BMC1280、及びネットワークインタフェース1290は、CPU1101、メモリ1102、TPM1103、BMC1104、及びネットワークインタフェース1105と同一のものであるため説明を省略する。
また、TPM搭載物理サーバ1200は、CRTM(Core Root of Trust Measurement)1242、Boot Firmware1244、及びBoot Manager1247を備える。
CRTM1242は、Trusted Bootにおいて最初に実行されるコードであり、TPM搭載物理サーバ1200の基盤上のチップに予め格納される。
Boot Firmware1244は、Trustedハイパバイザ1210を起動するまでにTPM搭載物理サーバ1200を管理するソフトウェアである、例えば、Boot Firmware1244は、BIOSが考えられる。
Boot Manager1247は、ハイパバイザ及びOS等を起動するためのソフトウェアである。Boot Manager1247は、CPU1250によってストレージ1500等からメモリ1260上に読み出され、CPU1250によって実行される。
Trustedハイパバイザ1210は、TPM1270を用いた起動されたハイパバイザである。Trustedハイパバイザ1210は、Kernel Loader1211を含み、仮想TPM用VM1220、及び複数のTrusted VM1230を管理する。
Trusted VM1230は、所定のアプリケーションを実行するVMである。Trusted VM1230は、Trusted OS1235、Trustedアプリケーション1236、及びフロントエンドTPMドライバ(FE−TPMD)1232を備える。
また、Trusted VM1230には、仮想TPM(vTPM)1231が割り当てられる。なお、Trusted VM1230は、図示しない仮想CPU、仮想メモリ、及び仮想ネットワークインタフェース等も割り当てられる。
Trusted OS1235及びTrustedアプリケーション1236は、FE−TPMD1232を介してvTPM1231を操作する。
仮想TPM用VM1220は、vTPMを実現するためのVMであり、vTPMマネージャ1233、TPMドライバ1221、及びバックエンドTPMドライバ(BE−TPMD)1222を備える。
vTPMマネージャ1233は、vTPM1231に対する操作をエミュレーションする。vTPMマネージャ1233は、FE−TPMD1232を介した操作をBE−TPMD1222を介して受け付ける。さらに、vTPMマネージャ1233は、TPMドライバ1221を介して、TPM1270を操作する。
なお、本実施例では、仮想TPM用VM1220がTPM1270のエミュレーションを行うが、本発明はこれに限定されない。例えば、Trustedハイパバイザ1210がTPM1270のエミュレーションを行ってもよい。この場合、Trustedハイパバイザ1210がTPMドライバ1221、及びvTPMマネージャ1233を備える。
物理サーバ1300は、ハードウェアとしてCPU1350、メモリ1360、BMC1380、及びネットワークインタフェース1390を備える。
CPU1350、メモリ1360、BMC1380、及びネットワークインタフェース1390は、CPU1101、メモリ1102、BMC1104、及びネットワークインタフェース1105と同一のものであるため説明を省略する。
また、TPM搭載物理サーバ1200は、Boot Firmware1344、及びBoot Manager1347を備える。Boot Firmware1344、及びBoot Manager1347は、Boot Firmware1244、及びBoot Manager1247と同一であるため説明を省略する。
ハイパバイザ1310は、通常の起動方法を用いて起動されたハイパバイザである。ハイパバイザ1310は、Kernel Loader1311を含み、複数のVM1330を管理する。
VM1330は、所定のアプリケーションを実行するVMである。VM1330は、OS1335、及びアプリケーション1336を備える。
VM1330は、図示しない仮想CPU、仮想メモリ、及び仮想ネットワークインタフェース等も割り当てられる。ただし、VM1330には、vTPM1231が割り当てられていない。
図5は、本発明の実施例1におけるTPM1270の構成例を示すブロック図である。
TPM1270は、暗号化コプロセッサ1271、Opt−in1272、NVRAM1273、Endorsement Key1274、PCR1275、Power Detection1276、Execution Engine1277、Program Code1278、及びI/O1279を備える。
暗号化コプロセッサ1271は、ランダムデータの生成、非対称鍵(公開鍵及び秘密鍵)の生成、及びデータの暗号化等を行う。暗号化コプロセッサ1271は、乱数生成部、SHA−1演算部、及びRSA演算部を備える。また、暗号化コプロセッサ1271は、DSA(Digital Signature Algorithm)演算部、及び楕円曲線演算部を備えていてもよい。
Opt−in1272は、TPM1270の状態を管理する。具体的には、TPM1270の電源ON/OFF、有効化/無効化、及び起動/停止等の状態を制御する。
NVRAM1273は、TPM1270の状態、TPM1270固有の識別情報等を格納する。また、NVRAM1273は、Endorsement Key1274を格納する。ここで、Endorsement Key1274は、公開鍵及び秘密鍵のペアを表す。
PCR1275は、TrustedBoot時の物理サーバの構成に関する予測値(ブートコンポーネントに関するハッシュ値)を格納するレジスタである。ブートコンポーネントに関するハッシュ値は、ブートコンポーネントの状態、構成等を示す計測値に基づいて算出される。なお、TPM1270は、複数のPCR1275を備える。
Power Detection1276は、TPM1270の電源を管理する。Execution Engine1277は、I/O1279を介して受信したTPMコマンドを実行するためのProgram Code1278を実行する。ここで、Program Code1278は、TPM1270の各種処理を実現するためのプログラムコードである。I/O1279は、TPM1270と外部の装置とを接続する。
なお、本発明のTPM1270は図5に示す構成に限定されず、少なくともPCR1275を備えていればよい。
次に、VMパッケージ1410について説明する。
図6は、本発明の実施例1のVMパッケージ1410の一例を示す説明図である。
VMパッケージ1410は、複数のOVFイメージファイル1411、複数のOVF署名1412、及びパッケージ署名1415を含む。
OVFイメージファイル1411は、所定のアプリケーションを実行するVMを生成するためのイメージファイルである。
複数のOVF署名1412は、OVFイメージファイル1411の改ざん等(OVFイメージファイル1411の整合性)を検証するために用いられるデジタル署名である。本実施例では、一つのOVFイメージファイル1411に対して一つのOVF署名1412が対応づけられる。
また、本実施例では、VMパッケージ1410には、TPM搭載物理サーバ1200又は物理サーバ1300上に生成されるVM、及びVM上で実行されるアプリケーションの種類毎に、複数種類のOVFイメージファイル1411が含まれる。また、VMパッケージ1410には、仮想TPM用VM1220を生成するためのOVFイメージファイル1411も含まれる。
パッケージ署名1415は、VMパッケージ1410自体の整合性を検証するために用いられるデジタル署名である。
次に、VM管理サーバ1100が保持するテーブルについて説明する。
図7は、本発明の実施例1のVM割当表1110の一例を示す説明図である。
VM割当表1110は、VM ID1111、OVF種別1112、物理サーバID1113、割当リソース1114、及び通信先VM ID1117を含む。
VM ID1111は、クラウドシステム1000内で稼働するVMを一意に識別するための識別子である。
OVF種別1112は、VM ID1111に対応するVMを生成するために用いられたOVFイメージファイル1411の種別を識別するための情報である。
図7に示す例では、Trusted認証用VM、Trusted実行用VM、認証用VM、及び実行用VMの四つの種類のOVFイメージファイル1411が存在する。
Trusted認証用VM及び認証用VMは、検証機関システム500との間でアプリケーションの認証処理を実行するVMである。Trusted実行用VM及び実行用VMは、アプリケーションを実行するVMである。また、Trusted認証用VM及びTrusted実行用VMは整合性が保証されたセキュアなVMであり、認証用VM及び実行用VMは整合性が保証されていないVMである。
実施例1では、アプリケーションの起動後に行われる認証処理を考慮しないものとする。実施例2において、アプリケーションの起動後の認証処理について説明する。
物理サーバID1113は、VM ID1111に対応するVMが稼働する物理サーバを一意に識別するための識別子である。
割当リソース1114は、VM ID1111に対応するVMに割り当てられる計算機リソースに関する情報である。割当リソース1114は、割当CPUコア1115、及び割当メモリ量1116を含む。割当CPUコア1115は、VMに割り当てられたCPUコアの数である。割当メモリ量1116は、VMに割り当てられたメモリ容量である。
なお、割当リソース1114には、CPUのクロック数、及びネットワーク帯域等の情報が格納されてもよい。
通信先VM ID1117は、VM ID1111に対応するVMが通信する他のVMを一意に識別するための識別子である。
図8は、本発明の実施例1の物理サーバ構成表1120の一例を示す説明図である。
物理サーバ構成表1120は、物理サーバID1121、CPUコア数1122、CPU性能1123、メモリ量1124、TPM搭載1125、管理IPアドレス1126を含む。
物理サーバID1121は、物理サーバを一意に識別するための識別子であり、物理サーバID1113と同一の情報である。
CPUコア数1122は、物理サーバID1121に対応する物理サーバが備えるCPUのコア数である。CPU性能1123は、物理サーバID1121に対応する物理サーバが備えるCPUの性能である。本実施例では、CPUのクロック数がCPU性能として格納される。メモリ量1124は、物理サーバID1121に対応する物理サーバが備えるメモリの容量である。
TPM搭載1125は、物理サーバID1121に対応する物理サーバがTPM1270を備えるか否かを示す情報である。TPM1270を備える物理サーバの場合、TPM搭載1125には「有」が格納され、TPM1270の備えていない物理サーバの場合、TPM搭載1125には「無」が格納される。
これによって、TPM搭載1125が「有」の場合、物理サーバID1121に対応するサーバはTPM搭載物理サーバ1200であり、TPM搭載1125が「無」の場合、物理サーバID1121に対応するサーバは物理サーバ1300であることが分かる。
本実施例では、TPM搭載1125は、物理サーバに設定されたセキュリティ強度に関連するカラムである。したがって、TPM搭載1125の代わりに、設定セキュリティ強度1125というカラムを用いてもよい。この場合、設定セキュリティ強度1125には、図9の要求セキュリティ強度11405と同様に値が格納される。
管理IPアドレス1126は、管理NW1106内における物理サーバID1121に対応する物理サーバのIPアドレスである。
図9は、本発明の実施例1のVMパッケージ管理表1140の一例を示す説明図である。
VMパッケージ管理表1140は、VMパッケージID11401、VMパッケージ名11402、OVF ID11403、OVF種別11404、要求セキュリティ強度11405、要求リソース11406、及び宛先アドレス11410を含む。
VMパッケージID11401は、VMパッケージ管理DB1400内に含まれるVMパッケージ1410を一意に識別するための識別子である。VMパッケージ名11402は、VMパッケージID11401に対応するVMパッケージ1410の名称である。VMパッケージ名11402は、アプリケーションを提供するベンダによって設定される名称である。
OVF ID11403は、パッケージID11401に対応するVMパッケージ1410に含まれるOVFイメージファイル1411の識別子である。OVF種別11404は、OVF ID11403に対応するOVFイメージファイル1411の種別を識別するための情報である。OVF種別11404は、OVF種別1112と同一の情報である。
要求セキュリティ強度11405は、OVF ID11403に対応するOVFイメージファイル1411のデプロイ時に要求されるセキュリティ強度を示す情報である。本実施例では、TPM搭載物理サーバ1200にデプロイするOVFイメージファイル1411の場合、要求セキュリティ強度11405には「1」が格納される。また、物理サーバ1300にデプロイするOVFイメージファイル1411の場合、要求セキュリティ強度11405には「0」が格納される。なお、要求セキュリティ強度11405に格納される値は、「0」又は「1」に限定されない。
要求リソース11406は、OVF ID11403に対応するOVFイメージファイル1411を用いて生成されるVMに必要な計算機リソースの情報である。要求リソース11406は、要求CPU性能11407、要求メモリ量11408、及び要求仮想NW数11409を含む。
要求CPU性能11407は、OVFイメージファイル1411を用いて生成されるVMに必要なCPUの性能に関する情報である。要求メモリ量11408は、OVFイメージファイル1411を用いて生成されるVMに必要なメモリの容量に関する情報である。要求仮想NW数11409は、OVFイメージファイル1411を用いて生成されるVMに必要な仮想ネットワークの数に関する情報である。
宛先アドレス11410は、VMパッケージID11401に対応するVMパッケージ1410を提供するアプリケーション提供システム400のIPアドレスである。本実施例では、デプロイ処理の実行時に、宛先アドレス11410に対応するIPアドレス宛に整合性報告が送信される。
以下、本実施例における処理の詳細についてフローチャートを用いて説明する。
図10は、本発明の実施例1におけるVM管理サーバ1100がデプロイ要求を受信した場合に実行する処理を説明するフローチャートである。
VM管理サーバ1100は、ユーザ310からデプロイ要求を受信すると処理を開始する(ステップS2000)。具体的には、デプロイ要求受付部1130が、ネットワーク200及び業務NW1005を介して、端末300から送信されたデプロイ要求を受信する。
なお、デプロイ要求には、デプロイ対象となるVMパッケージ1410を特定するための情報が含まれる。例えば、VMパッケージ1410の識別子、又はVMパッケージ1410の名称等が含まれる。本実施例では、デプロイ要求には、VMパッケージ1410の名称が含まれているものとする。
以下の説明において、指定されたVMパッケージ1410に含まれるOVFイメージファイル1411を対象OVFイメージファイル1411とも記載する。
VM管理サーバ1100は、受信したデプロイ要求に基づいて、物理サーバの検索処理を実行する(ステップS2100)。具体的には、物理サーバ検索部1131が、対象OVFイメージファイル1411毎に、デプロイ条件を満たす物理サーバを検索する。ここで、デプロイ条件とは、対象OVFイメージファイル1411をデプロイするための条件を示す。
なお、物理サーバの検索処理の詳細については、図11を用いて後述する。
VM管理サーバ1100は、物理サーバの検索処理の結果に基づいて、全ての対象OVFイメージファイル1411のデプロイが可能であるか否かを判定する(ステップS2200)。
全ての対象OVFイメージファイル1411のデプロイができないと判定された場合、VM管理サーバ1100は、ユーザ310に対してデプロイが失敗した旨を応答し(ステップS2500)、処理を終了する。具体的には、デプロイ要求受付部1130が、業務NW1005及びネットワーク200を介して、端末300に対してデプロイが失敗した旨を通知する。
全ての対象OVFイメージファイル1411のデプロイが可能であると判定された場合、VM管理サーバ1100は、デプロイ処理を実行する(ステップS2300)。具体的には、デプロイ指示部1132が、検索された物理サーバに対して、対象OVFイメージファイル1411をデプロイする。なお、デプロイ処理の詳細については、図12を用いて後述する。
VM管理サーバ1100は、ユーザ310に対してデプロイ処理の結果を応答し(ステップS2400)、処理を終了する。具体的には、デプロイ要求受付部1130が業務NW1005及びネットワーク200を介して、端末300に対してデプロイ処理の結果を通知する。
図11は、本発明の実施例1の物理サーバ検索部1131が実行する物理サーバの検索処理の一例を説明するフローチャートである。
物理サーバ検索部1131は、デプロイ要求受付部1130から呼び出されると処理を開始する(ステップS2100)。
物理サーバ検索部1131は、受信したデプロイ要求に基づいてVMパッケージ管理表1140を参照し、対象OVFイメージファイル1411を一つ選択する(ステップS2101)。
具体的には、物理サーバ検索部1131は、VMパッケージ管理表1140を参照し、デプロイ要求に含まれるVMパッケージ1410の名称と一致するVMパッケージ名1142のエントリを検索する。さらに、物理サーバ検索部1131は、当該エントリのOVF ID11403を参照し、一つのOVF ID11403を選択する。
物理サーバ検索部1131は、物理サーバ構成表1120を参照し、処理対象の物理サーバを一つ選択する(ステップS2102)。本実施例では、物理サーバ検索部1131は、物理サーバ構成表1120の上のエントリから順に選択する。なお、計算機リソースの性能に基づいてエントリが選択されてもよい。例えば、CPUコア数1122の値が大きい順に選択する方法が考えられる。
物理サーバ検索部1131は、選択された物理サーバが選択された対象OVFイメージファイル1411のデプロイに必要な要求セキュリティ強度を満たすか否かを判定する(ステップS2103)。具体的には、以下のような処理が実行される。
物理サーバ検索部1131は、VMパッケージ管理表1140を参照し、選択された対象OVFイメージファイル1411に対応するエントリの要求セキュリティ強度11405の値が「0」より大きいか否かを判定する。
要求セキュリティ強度11405の値が「0」以下、すなわち、要求セキュリティ強度11405の値が「0」であると判定された場合、物理サーバ検索部1131は、選択された物理サーバが選択された対象OVFイメージファイル1411のデプロイに必要な要求セキュリティ強度を満たすと判定する。
要求セキュリティ強度11405の値が「0」より大きい、すなわち、要求セキュリティ強度11405の値が「1」であると判定された場合、物理サーバ検索部1131は、物理サーバ構成表1120を参照し、選択された物理サーバに対応するエントリのTPM搭載1125が「有」であるか否かを判定する。
TPM搭載1125が「有」でないと判定された場合、物理サーバ検索部1131は、選択された物理サーバが選択された対象OVFイメージファイル1411のデプロイに必要な要求セキュリティ強度を満たさないと判定する。
TPM搭載1125が「有」であると判定された場合、物理サーバ検索部1131は、選択された物理サーバが選択された対象OVFイメージファイル1411のデプロイに必要な要求セキュリティ強度を満たすと判定する。
以上がステップS2103の処理である。
ステップS2103において選択された物理サーバが選択された対象OVFイメージファイル1411のデプロイに必要な要求セキュリティ強度を満たすと判定された場合、物理サーバ検索部1131は、選択された物理サーバにおける割当可能な計算機リソース量を算出する(ステップS2104)。さらに、物理サーバ検索部1131は、計算機リソースの算出結果に基づいて対象OVFイメージファイル1411のデプロイに必要な計算機リソースを確保できるか否かを判定する(ステップS2105)。具体的には、以下のような処理が実行される。
物理サーバ検索部1131は、VM割当表1110を参照して、物理サーバID1113が選択された物理サーバの識別子(物理サーバID1121)と一致するエントリを抽出する。
物理サーバ検索部1131は、抽出された全てのエントリの割当CPUコア1115の合計値を算出する。物理サーバ検索部1131は、選択された物理サーバのCPUコア数1122から算出された合計値を減算することによって、割当可能なCPUコア数を算出する。
なお、選択されたOVFイメージファイル1411のOVF種別1112が「Trusted認証」又は「Trusted実行」の場合、物理サーバ検索部1131は、前述した合計値に仮想TPM用VM1220に必要なCPUコア数を加算する。物理サーバ検索部1131は、当該合計値を用いて割当可能なCPUコア数を算出する。
物理サーバ検索部1131は、抽出された全てのエントリの割当メモリ量1116の合計値を算出する。物理サーバ検索部1131は、選択された物理サーバのメモリ量1124から算出された合計値を減算することによって、割当可能なメモリ量を算出する。
なお、選択されたOVFイメージファイル1411のOVF種別1112が「Trusted認証」又は「Trusted実行」の場合、物理サーバ検索部1131は、前述した合計値に仮想TPM用VM1220に必要なメモリ量を加算する。物理サーバ検索部1131は、当該合計値を用いて割当可能なメモリ量を算出する。
物理サーバ検索部1131は、算出された割当可能なCPUコアと、CPU性能1123の値とを乗算して、乗算値が要求CPU性能1147より大きいか否かを判定する。
乗算値が要求CPU性能1147以下の場合、物理サーバ検索部1131は、OVFイメージファイル1411のデプロイに必要な計算機リソース量を確保できないと判定する。
乗算値が要求CPU性能1147より大きい場合、物理サーバ検索部1131は、割当可能なメモリ量が要求メモリ量1148より大きいか否かを判定する。
割当可能なメモリ量が要求メモリ量1148以下の場合、物理サーバ検索部1131は、対象OVFイメージファイル1411のデプロイに必要な計算機リソース量を確保できないと判定する。
割当可能なメモリ量が要求メモリ量1148より大きい場合、物理サーバ検索部1131は、対象OVFイメージファイル1411のデプロイに必要な計算機リソース量を確保できると判定する。
以上がステップS2104及びステップS2105の処理である。
ステップS2105において対象OVFイメージファイル1411のデプロイに必要な計算機リソース量を確保できないと判定された場合、物理サーバ検索部1131は、ステップS2108に進む。
ステップS2105において対象OVFイメージファイル1411のデプロイに必要な計算機リソース量を確保できると判定された場合、物理サーバ検索部1131は、VMパッケージ1410に含まれる全ての対象OVFイメージファイル1411の処理が完了したか否かを判定する(ステップS2106)。このとき、物理サーバ検索部1131は、選択された対象OVFイメージファイル1411の識別子と選択された物理サーバの識別子とを対応づけたデプロイ情報を生成又は更新する。また、デプロイ情報には、対象OVFイメージファイル1411を用いたVMの生成に必要な情報、すなわち、割当リソース1114に格納される情報も含まれる。
VMパッケージ1410に含まれる全ての対象OVFイメージファイル1411の処理が完了していないと判定された場合、物理サーバ検索部1131は、ステップS2101に戻り、同様の処理を実行する。
VMパッケージ1410に含まれる全ての対象OVFイメージファイル1411の処理が完了していると判定された場合、物理サーバ検索部1131は、デプロイ情報を含む処理開始指示を出力し(ステップS2107)、処理を終了する。
なお、デプロイ情報には、対象OVFイメージファイル1411の要求セキュリティ強度11405の値も含まれる。
ステップS2103において選択された物理サーバが要求セキュリティ強度を満たさないと判定された場合、又は、対象OVFイメージファイル1411のデプロイに必要な計算機リソース量を確保できないと判定された場合、物理サーバ検索部1131は、選択可能な物理サーバが存在するか否かを判定する(ステップS2108)。
すなわち、物理サーバ構成表1120に含まれる全てのエントリについて処理が完了したか否かが判定される。物理サーバ構成表1120に含まれる全てのエントリについて処理が完了している場合、選択可能な物理サーバが存在しないと判定される。
選択可能な物理サーバが存在すると判定された場合、物理サーバ検索部1131は、ステップS2102に戻り同様の処理を実行する。
選択可能な物理サーバが存在しないと判定された場合、物理サーバ検索部1131は、デプロイ要求受付部1130に対して検索の失敗を応答し(ステップS2109)、処理を終了する。
い。
以下の説明では、OVFイメージファイル1411のデプロイに必要な計算機リソース量を確保できると判定された物理サーバを対象物理サーバとも記載する。
図12は、本発明の実施例1におけるデプロイ指示部1132が実行するデプロイ処理を説明するフローチャートである。
デプロイ指示部1132は、物理サーバ検索部1131から処理開始指示を受信すると処理を開始する(ステップS2300)。
デプロイ指示部1132は、デプロイ情報を参照して、対象OVFイメージファイル1411を一つ選択する(ステップS2301)。
デプロイ指示部1132は、選択された対象OVFイメージファイル1411に対応づけられた要求セキュリティ強度の値が「0」より大きいか否かを判定する(ステップS2302)。すなわち、Trusted VM1230のデプロイ処理であるか否かが判定される。
対象OVFイメージファイル1411に対応づけられた要求セキュリティ強度の値が「0」より大きいと判定された場合、デプロイ指示部1132は、対象物理サーバにTrusted VMの起動指示を送信する(ステップS2303)。さらに、デプロイ指示部1132は、対象物理サーバに対象OVFイメージファイル1411を送信する(ステップS2304)。この場合、TPM搭載物理サーバ1200が対象物理サーバとなる。
このとき、デプロイ指示部1132は、仮想TPM用VM1220を生成するためのOVFイメージファイル1411を対象物理サーバに送信する。また、デプロイ指示部1132は、対象OVFイメージファイル1411を提供するアプリケーション提供システム400の宛先アドレス11410もTPM搭載物理サーバ1200に送信する。
なお、仮想TPM用VM1220を生成するためのOVFイメージファイル1411は、選択された対象OVFイメージファイル1411が含まれるVMパッケージ管理DB1400から取得されるものとする。ただし、本発明はこれに限定されず、Trustedハイパバイザ1210が全てのVMパッケージ1410に共通する仮想TPM用VM1220を生成するための情報を保持していてもよい。
TPM搭載物理サーバ1200は、Trusted VM1230の起動指示及びOVFイメージファイル1411を受信した後、Trusted VM1230の起動処理を実行する。Trusted VM1230の起動処理については図13A及び図13Bを用いて後述する。
デプロイ指示部1132は、対象物理サーバから整合性報告の検証結果を受信し(ステップS2305)、当該検証結果が整合性がある旨を示す検証結果であるか否かを判定する(ステップS2306)。
整合性がある旨を示す検証結果であると判定された場合、デプロイ指示部1132は、ステップS2310に進む。
整合性がない旨を示す検証結果であると判定された場合、デプロイ指示部1132は、デプロイ結果として「NG」を出力し(ステップS2307)、処理を終了する。
このとき、デプロイ指示部1132は、Trusted VM1230の起動指示を送信したTPM搭載物理サーバ1200、及びVM1330の起動指示を送信した物理サーバ1300に、起動処理の中止を送信するものとする。
ステップS2302において対象OVFイメージファイル1411に対応づけられた要求セキュリティ強度の値が「0」である場合、すなわち、通常のVM1330のデプロイ処理である場合、デプロイ指示部1132は、対象物理サーバにVMの起動指示を送信する(ステップS2308)。さらに、デプロイ指示部1132は、対象物理サーバに対象OVFイメージファイル1411を送信する(ステップS2309)。この場合、物理サーバ1300が対象物理サーバとなる。
物理サーバ1300は、VMの起動指示及びOVFイメージファイル1411を受信した後、ハイパバイザ1310がVM1330を生成し、生成されたVM1330上にOS1335を起動させる。なお、VM1330の生成方法、OS1335の起動方法は公知の技術を用いればよいため詳細な説明は省略する。
ステップS2309の処理の後、又は、ステップS2306において整合性がある旨を示す検証結果であると判定された場合、デプロイ指示部1132は、デプロイ情報に含まれる全てのOVFイメージファイル1411について処理が完了したか否かを判定する(ステップS2310)。
デプロイ情報に含まれる全てのOVFイメージファイル1411について処理が完了していないと判定された場合、デプロイ指示部1132は、ステップS2301に戻り、同様の処理を実行する。
デプロイ情報に含まれる全てのOVFイメージファイル1411について処理が完了したと判定された場合、デプロイ指示部1132は、デプロイ結果として「OK」を出力し(ステップS2311)、処理を終了する。
前述したように、本実施例では、Trusted VM1230をデプロイする場合に、要求セキュリティ強度11405が所定の値以上である物理サーバが検索される。すなわち、TPM搭載物理サーバ1200が検索される。これによって、VMの改ざん、及びユーザのなりすまし等を未然に防ぐことができ、また、不正なアプリケーションの実行、及び不正なアプリケーションの拡散等を防ぐことができる。
図13A及び図13Bは、本発明の実施例1のTPM搭載物理サーバ1200が実行するTrusted VM1230の起動処理を説明するフローチャートである。
TPM搭載物理サーバ1200は、VM管理サーバ1100からTrusted VM1230の起動指示及び対象OVFイメージファイル1411を受信すると、Trusted VM1230の起動処理を開始する(ステップS3000)。
まず、TPM搭載物理サーバ1200が起動しているか否かが判定される(ステップS3001)。具体的には、BMC1104が、電源ONの状態である否かを判定する。電源ONの状態である場合には、TPM搭載物理サーバ1200が起動していると判定される。
TPM搭載物理サーバ1200が起動していると判定された場合、ステップS3003の処理から開始される。
一方、TPM搭載物理サーバ1200が起動していないと判定された場合には、BMC1104は、TPM搭載物理サーバ1200の電源をONの状態にする。TPM搭載物理サーバ1200は、電源がONの状態になるとTrusted Boot処理を実行する(ステップS3002)。具体的には、以下のような処理が実行される。
CPU1250がCRTM1242のハッシュ値を取得し、CRTM1242のハッシュ値をPCR1275に書き込む。その後、CPU1250は、CRTM1242を実行する。さらに、CRTM1242を実行するCPU1250は、Boot Firmware1244のハッシュ値を取得し、Boot Firmware1244のハッシュ値をPCR1275に書き込む。その後、CPU1250は、Boot Firmware1244を起動する。
Boot Firmware1244は、Boot Manager1247のハッシュ値を取得し、Boot Manager1247のハッシュ値をPCR1275に書き込む。その後、Boot Firmware1244は、Boot Manager1247を起動する。
以上がステップS3002の処理である。
次に、TPM搭載物理サーバ1200は、Trustedハイパバイザ1210が起動しているか否かを判定する(ステップS3003)。例えば、Trusted Boot処理の途中であるか否かが判定される。
Trustedハイパバイザ1210が起動していると判定された場合、TPM搭載物理サーバ1200は、ステップS3005に進む。
Trustedハイパバイザ1210が起動していないと判定された場合、TPM搭載物理サーバ1200は、Trusted Boot処理を継続する(ステップS3004)。具体的には、以下のような処理が実行される。
Boot Manager1247が、Kernel Loader1211を読み出し、読み出されたKernel Loader1211のハッシュ値を取得し、Kernel Loader1211のハッシュ値をPCR1275に書き込む。その後、Boot Manager1247は、Kernel Loader1211を実行する。
Kernel Loader1211は、Trustedハイパバイザ1210のイメージを読み出し、読み出されたTrustedハイパバイザ1210のイメージのハッシュ値を取得し、Trustedハイパバイザ1210のイメージのハッシュ値をPCR1275に格納する。その後、Kernel Loader1211は、Trustedハイパバイザ1210を起動する。
以上がステップS3004の処理である。
次に、TPM搭載物理サーバ1200は、仮想TPM用VM1220が起動しているか否かを判定する(ステップS3005)。具体的には、Trustedハイパバイザ1210が、仮想TPM用VM1220が起動しているか否かを判定する。
仮想TPM用VM1220が起動していると判定された場合、TPM搭載物理サーバ1200は、ステップS3007に進む。
仮想TPM用VM1220が起動していないと判定された場合、TPM搭載物理サーバ1200は、Trusted Boot処理を継続する(ステップS3006)。具体的には、以下のような処理が実行される。
Trustedハイパバイザ1210が、仮想TPM用VM1220を生成するためのOVFイメージファイル1411を読み出し、読み出されたOVFイメージファイル1411のハッシュ値を取得し、OVFイメージファイル1411のハッシュ値をPCR1275に書き込む。
その後、Trustedハイパバイザ1210は、読み出されたOVFイメージファイル1411を用いて仮想TPM用VM1220を生成し、生成された仮想TPM用VM1220を起動する。なお、仮想TPM用VM1220の生成方法、及び起動方法は公知の技術を用いればよいため説明を省略する。
以上がステップS3006の処理である。
次に、TPM搭載物理サーバ1200は、vTPM1231を生成する(ステップS3007)。TPM搭載物理サーバ1200は、受信した対象OVFイメージファイル1411を用いて所定のTrusted VM1230を生成する(ステップS3008)。
具体的には、Trustedハイパバイザ1210が、仮想TPM用VM1220を制御してvTPM1231を生成する。Trustedハイパバイザ1210は、vTPM1231、及び、所定の計算機リソースを割り当てることによってTrusted VM1230を生成する。
この時点では、計算機リソースが割り当てられた状態であり、Trusted VM1230上ではTrusted OS1235、及びTrustedアプリケーション1236は稼働していない。なお、vTPM1231の生成方法は公知の技術を用いればよいため説明を省略する。
TPM搭載物理サーバ1200は、受信したOVFイメージファイル1411に対応するOVF署名1412を用いて、当該OVFイメージファイル1411を検証する(ステップS3009)。
このとき、TPM搭載物理サーバ1200は、VMパッケージ管理DB1400から、受信したOVFイメージファイル1411に対応するOVF署名1412を取得する。なお、OVF署名1412を用いたOVFイメージファイル1411の検証処理は公知の技術を用いればよいため説明を省略する。
ステップS3009の検証処理の結果がエラーである場合、TPM搭載物理サーバ1200は、VM管理サーバ1100に不正である旨の検証結果を出力し、処理を終了する。ステップS3009の検証処理の結果がエラーでない場合、TPM搭載物理サーバ1200はステップS3010に進む。
TPM搭載物理サーバ1200は、受信したOVFイメージファイル1411のハッシュ値を取得し、OVFイメージファイル1411のハッシュ値をPCR1275に書き込む(ステップS3010)。
具体的には、Trustedハイパバイザ1210が、受信したOVFイメージファイル1411のハッシュ値を取得し、取得されたOVFイメージファイル1411のハッシュ値をPCR1275に書き込む。
TPM搭載物理サーバ1200は、受信したOVFイメージファイル1411を提供するアプリケーション提供システム400に、整合性報告を送信する(ステップS3011)。
具体的には、Trustedハイパバイザ1210が、受信した宛先アドレス11410に対応するIPアドレス宛に、整合性報告を送信する。整合性報告には、PCR1275に格納されるハッシュ値が含まれる。
なお、整合性報告には、生成されたTrusted VM1230に割り当てられたvTPM1231の鍵情報が含まれてもよい。ここで、vTPM1231の鍵情報は、vTPM1231におけるEndorsement Key1274に対応するものである。
なお、アプリケーション提供システム400が実行する処理については、図14を用いて後述する。
TPM搭載物理サーバ1200は、アプリケーション提供システム400から整合性報告の結果を受信すると(ステップS3012)、当該整合性報告の結果が整合性がある旨を示す結果であるか否かを判定する(ステップS3013)。
整合性報告の結果が不正である旨を示す結果であると判定された場合、TPM搭載物理サーバ1200は、整合性報告の結果を応答し(ステップS3016)、処理を終了する。
整合性報告の結果が整合性がある旨を示す結果であると判定された場合、TPM搭載物理サーバ1200は、受信したOVFイメージファイル1411を用いて、Trusted OS1235を起動する(ステップS3014)。
Trusted OS1235の起動処理は様々な形態が考えられる。本実施例では例えば以下のような起動処理が実行される。
Trustedハイパバイザ1210が、仮想的なBIOSのハッシュ値を取得し、仮想的なBIOSのハッシュ値をvTPM1231のPCR1275に書き込む。その後、Trustedハイパバイザ1210が、仮想的なBIOSを起動する。仮想的なBIOSは、Trustedハイパバイザ1210によってエミュレーションされたBIOSである。このとき、vTPM1231へのハッシュ値の書き込みは、仮想TPM用VM1220によってエミュレーションされる。
その後、仮想的なBIOSは仮想的なカーネルローダを呼び出し、仮想的なカーネルローダは、Trusted OS1235を起動する。このとき、仮想的なBIOSは仮想的なカーネルローダのハッシュ値を取得し、仮想的なカーネルローダは、Trusted OS1235のハッシュ値を取得する。仮想的なBIOS及び仮想的なカーネルローダは、それぞれ、取得されたハッシュ値をvTPM1231のPCRに書き込む。このとき、vTPM1231のPCRへのハッシュ値の書き込みは、仮想TPM用VM1220によってエミュレーションされ、PCR1275に書き込まれる。
以上がTrusted OS1235の起動処理の一例である。
次に、TPM搭載物理サーバ1200は、受信したOVFイメージファイル1411を用いて、Trustedアプリケーション1236を起動する(ステップS3015)。
具体的には、Trusted OS1235が、Trustedアプリケーション1236のハッシュ値を取得し、Trustedアプリケーション1236のハッシュ値をvTPM1231のPCRに書き込む。その後、Trusted OS1235がTrustedアプリケーション1236を実行する。
TPM搭載物理サーバ1200は、整合性報告の結果を応答し(ステップS3016)、処理を終了する。
図14は、本発明の実施例1の認証サーバ410が実行する処理を説明するフローチャートである。
認証サーバ410は、TPM搭載物理サーバ1200から整合性報告を受信すると(ステップS4001)、受信した整合性報告を検証機関システム500に転送する(ステップS4002)。
検証機関システム500では、検証サーバ510が、整合性報告、IIDB520、及びVULDB530に基づいて所定の検証処理を実行し、検証結果を出力する。検証サーバ510は、出力された検証結果をアプリケーション提供システム400に送信する。なお、検証処理は公知の技術を用いればよいため説明を省略する。
認証サーバ410は、検証結果を受信すると(ステップS4003)、当該検証結果に基づいてライセンスDB430を更新する(ステップS4004)。具体的には以下のような処理が実行される。
認証サーバ410は、検証結果を解析し、整合性報告の内容が正しい旨の検証結果であるか否かを判定する。
整合性報告の内容が正しい旨の検証結果であると判定された場合、認証サーバ410は、ライセンスDB430に新たに生成されたVMに関する情報を追加する。一方、整合性報告の内容が誤りである旨の検証結果であると判定された場合、認証サーバ410は、ライセンスDB430を更新することなく次のステップに進む。
認証サーバ410は、受信した検証結果をTPM搭載物理サーバ1200に対して転送し(ステップS4005)、処理を終了する。
以上で説明したように、整合性報告がアプリケーション提供システム400に送信される。これによって、アプリケーション提供システムを運用するアプリベンダは、提供するVMパッケージ1410の利用状況を把握することができる。
実施例1によれば、セキュリティ強度に基づいてデプロイ先の物理サーバが選択されるためVM、OS、及びアプリケーションの整合性を保証することができる。これによって、安全なクラウドサービスを実現することができる。また、実施例1では、アプリケーション提供システム400を介して整合性報告が送信される。これによって、アプリケーション提供システム400が、クラウドシステム1000上で稼働するアプリケーションの利用状態を把握することができる。
Trusted OS1235の起動後、Trusted VM1230とアプリケーション提供システム400との間では、Trustedアプリケーション1236の改ざん等を監視するために認証処理が周期的に実行される。ここで、Trustedアプリケーション1236の認証処理では、ライセンス数、アプリケーションの実行状態等の状態が確認される。
この場合、認証処理における通信がボトルネックとなって、ユーザ310が要求する性能を発揮できない場合がある。実施例2では、Trustedアプリケーション1236の整合性を保証し、かつ、Trustedアプリケーション1236の処理性能の低下を抑止するシステムについて説明する。
以下、実施例1との差異を中心に説明する。
計算機システムの構成は、実施例1と同一であるため説明を省略する。また、VM管理サーバ1100、及び物理サーバ1300のハードウェア構成及びソフトウェア構成は、実施例1と同一であるため説明を省略する。
図15は、本発明の実施例2のTPM搭載物理サーバ1200のハードウェア構成及びソフトウェア構成の一例を示すブロック図である。
TPM搭載物理サーバ1200のハードウェア構成は実施例1と同一である。実施例2では、Trusted認証用VM2230及びTrusted実行用VM2240の二つVMが存在する点が実施例1と異なる。その他のソフトウェア構成は、実施例1と同一である。
Trusted認証用VM2230は、アプリケーション提供システム400との間の通信を行うVMである。Trusted認証用VM2230上では、Trustedチェッカ1237が実行される。Trustedチェッカ1237は、Trustedアプリケーション1236の認証処理を実行するアプリケーションである。
また、Trusted実行用VM2240は、アプリベンダが提供するアプリケーションであるTrustedアプリケーション1236を実行するVMである。
したがって、実施例2のVMパッケージ1410には、Trusted認証用VM2230を生成するためのOVFイメージファイル1411と、Trusted実行用VM2240を生成するためのOVFイメージファイル1411とが含まれる。
なお、Trusted実行用VM2240は、Trustedアプリケーション1236の認証を行うため、Trusted認証用VM2230と通信するように設定される。また、TPM搭載物理サーバ1200上では、一つのTrusted認証用VM2230と、一つ以上のTrusted実行用VM2240が稼働する。
次に、実施例2の各処理について説明する。
VM管理サーバ1100が実行する処理は実施例1と同一であるため説明する。実施例2では、Trusted VM1230の起動処理が異なる。
ステップ3001からステップS3007までの処理は実施例1の処理と同一である。
ステップS3008では、TPM搭載物理サーバ1200は、Trusted認証用VM2230及びTrusted実行用VM2240を生成する。
ステップS3009からステップS3013では、TPM搭載物理サーバ1200は、Trusted認証用VM2230及びTrusted実行用VM2240のそれぞれについて整合性報告の送信、及び整合性報告の結果の判定処理を実行する。
ステップS3013において、Trusted認証用VM2230及びTrusted実行用VM2240の両方のVMの整合性報告の結果が整合性がある旨を示す結果であるか否かを判定する。
両方のVMの整合性報告の結果が整合性がある旨を示す結果であると判定された場合、TPM搭載物理サーバ1200は、Trusted認証用VM2230上でTrusted OS1235を起動する。その後、TPM搭載物理サーバ1200は、Trusted実行用VM2240上でTrusted OS1235を起動する。
さらに、TPM搭載物理サーバ1200は、Trusted認証用VM2230上でTrustedチェッカ1237を起動させ、Trusted実行用VM2240上でTrustedアプリケーション1236を起動させる。
これによって、Trusted実行用VM2240及びTrusted認証用VM2230の整合性が保証される。すなわち、VM、OS、及びアプリケーションの改ざん等が行われていないことが保証される。
図16は、本発明の実施例2におけるTrustedアプリケーション1236の認証処理を説明するシーケンス図である。
TPM搭載物理サーバ1200上では、Trusted認証用VM2230及びTrusted実行用VM2240が稼働する。また、Trusted認証用VM2230では、Trustedチェッカ12が実行される。Trusted実行用VM2240上では、Trustedアプリケーション1236が実行される。
Trustedアプリケーション1236は、周期的に、認証報告AをTrustedチェッカ1237に送信する。
Trustedチェッカ1237は、認証報告Aを受信すると、認証報告Aに基づいて認証処理を実行し、認証結果をTrustedアプリケーション1236に送信する。認証報告Aには例えばライセンス番号やアプリケーションの実行回数などが含まれる。
Trustedチェッカ1237は、複数の認証報告Aが含まれる認証報告Bを認証サーバ410に送信する。
認証サーバ410は、認証報告Bに基づいて認証処理を実行する。認証サーバ410が実行する認証処理は公知のものを用いればよいため詳細な説明を省略する。
このとき、認証サーバ410は、少なくとも一つの認証報告Aに対する認証処理の結果が不正である場合、不正である旨の認証結果をTrustedチェッカ1237に送信する。Trustedチェッカ1237は、一度不正であると判定されたTrustedアプリケーション1236に対しては、以降、正当な認証結果を返さないことによって、当該Trustedアプリケーションの不正な実行を防止する。なお、前述した認証処理の判定方法は一例であって、本発明はこれに限定されない。
以上で説明したように、Trustedアプリケーション1236とTrustedチェッカ1237との間の通信はメモリ1260内の通信である。したがって、頻繁な認証処理における通信が、Trustedアプリケーション1236の処理性能に影響しない。
実施例2によれば、アプリケーションの処理性能を低下させることなく、実行中のアプリケーションの認証を行うことができる。
実施例3では、Trustedハイパバイザ1210が整合性報告を暗号化して送信する。
以下、実施例1との差異を中心に説明する。
計算機システムの構成は、実施例1と同一であるため説明を省略する。また、VM管理サーバ1100、及び物理サーバ1300のハードウェア構成及びソフトウェア構成は、実施例1と同一であるため説明を省略する。
図17は、本発明の実施例3のVMパッケージ1410の一例を示す説明図である。
実施例3におけるVMパッケージ1410には、新たに公開鍵1416が含まれる。公開鍵1416は、アプリケーション提供システム400において生成された公開鍵である。
例えば、VMパッケージ配信サーバ420が、予め、公開鍵及び秘密鍵を生成し、生成された公開鍵を含むVMパッケージ1410をクラウドシステム1000に配信する。これによって、図17に示すようなVMパッケージ1410がVMパッケージ管理DB1400に登録される。なお、秘密鍵は、VMパッケージ配信サーバ420から認証サーバ410に出力されるものとする。すなわち、認証サーバ410が秘密鍵を保持する。
前述した鍵の管理方法は一例であって、認証サーバ410が公開鍵及び秘密鍵を生成してもよい。
次に、実施例2の各処理について説明する。
VM管理サーバ1100が実行する処理は実施例1と同一であるため説明する。実施例2では、Trusted VM1230の起動処理が異なる。
ステップS3001からステップS3010の処理は、実施例1と同一の処理である。
ステップS3011において、Trustedハイパバイザ1210は、OVFイメージファイル1411に含まれる公開鍵1416を用いて、整合性報告を暗号化する。例えば、PCR1275に格納される全てのハッシュ値が暗号化される。その後、Trustedハイパバイザ1210は、暗号化された整合性報告を認証サーバ410に送信する。
ステップS3012からステップS3016の処理は、実施例1と同一の処理である。
図18は、本発明の実施例3の認証サーバ410が実行する処理を説明するフローチャートである。
認証サーバ410は、TPM搭載物理サーバ1200から、暗号化された整合性報告を受信すると(ステップS4001)、秘密鍵を用いて暗号化された整合性報告を復号化する(ステップS4101)。さらに、認証サーバ410は、暗号化された整合性報告を復号化できたか否かを判定する(ステップS4102)。
暗号化された整合性報告を復号化できたと判定された場合、認証サーバ410は、ステップ4002からステップS4005の処理を実行する。なお、ステップS4002からステップ4005の処理は実施例1の処理と同一である。
暗号化された整合性報告を復号化できないと判定された場合、認証サーバ410は、受信した整合性報告を検証機関システム500に転送することなく、処理を終了する。
また、実施例3ではTPM搭載物理サーバ1200が実行する処理が一部異なる。
ステップS3012において、TPM搭載物理サーバ1200は、検証結果を受信したか否かを判定する。例えば、予めタイムアウトの時間を設定し、当該時間以上検証結果の応答がない場合、TPM搭載物理サーバ1200は、検証結果を受信していないと判定する。
検証結果を受信したと判定された場合、TPM搭載物理サーバ1200は、ステップS3013からステップS3016までの処理を実行する。
検証結果を受信していないと判定された場合、TPM搭載物理サーバ1200は、不正である旨の検証結果を応答し(ステップS3016)、処理を終了する。
実施例3によれば、不正なアプリケーション提供システム400による認証等を防ぐことができるため、計算機システムにおけるセキュリティを高める効果がある。
なお、本実施例で例示した種々のソフトウェアは、電磁的、電子的及び光学式等の種々の記録媒体(例えば、非一時的な記憶媒体)に格納可能であり、インターネット等の通信網を通じて、コンピュータにダウンロード可能である。本実施例では、ソフトウェアによる制御を用いた例について説明したが、その一部をハードウェアによって実現することも可能である。
以上、本発明を添付の図面を参照して詳細に説明したが、本発明はこのような具体的構成に限定されるものではなく、添付した請求の範囲の趣旨内における様々な変更及び同等の構成を含むものである。
200 ネットワーク
300 端末
400 アプリケーション提供システム
405 ネットワーク
410 認証サーバ
420 VMパッケージ配信サーバ
430 ライセンスDB
440 VMパッケージDB
500 検証機関システム
505 ネットワーク
510 検証サーバ
520 IIDB
530 VULDB
1000 クラウドシステム
1005 業務NW
1006 管理NW
1100 VM管理サーバ
1130 デプロイ要求受付部
1131 物理サーバ検索部
1132 デプロイ指示部
1140 VMパッケージ管理表
1200 TPM搭載物理サーバ
1210 Trustedハイパバイザ
1220 仮想TPM用VM
1221 TPMドライバ
1222 FE−TPMD
1230 Trusted VM
1231 vTPM
1232 BE−TPMD
1233 vTPMマネージャ
1235 Trusted OS
1236 Trustedアプリケーション
1237 Trustedチェッカ
1242 CRTM
1244 Boot Firmware
1247 Boot Manager
1250 CPU
1260 メモリ
1270 TPM
1280 BMC
1290 ネットワークインタフェース
1300 物理サーバ
1310 ハイパバイザ
1330 VM
1335 OS
1336 アプリケーション
1344 Boot Firmware
1347 Boot Manager
1350 CPU
1360 メモリ
1380 BMC
1390 ネットワークインタフェース
1400 VMパッケージ管理DB
1410 VMパッケージ
1411 OVFイメージファイル
1412 OVF署名
1415 パッケージ署名
1416 公開鍵
1500 ストレージ
1600 ストレージ
2230 Trusted認証用VM
2240 Trusted実行用VM

Claims (14)

  1. プロセッサ、前記プロセッサに接続されるメモリ、前記プロセッサに接続されるネットワークインタフェースを有する複数の計算機を備える計算機システムであって、
    前記計算機システムは、
    所定のアプリケーションを実行する仮想計算機に割り当てる計算機リソースを有する仮想計算機システムと、
    前記仮想計算機に関する整合性を検証する検証システムと、を含み、
    前記仮想計算機システムは、
    前記仮想計算機に計算機リソースを提供する複数のサーバと、
    前記複数のサーバ上で稼働する前記仮想計算機を管理する管理計算機と、
    前記所定のアプリケーションを実行する仮想計算機を生成するためのイメージデータを格納するイメージデータ格納部と、を含み、
    前記検証システムは、前記仮想計算機に関する整合性を検証する検証サーバを含み、
    前記仮想計算機システムは、
    前記イメージデータ、及び当該イメージデータに基づいて生成される前記仮想計算機の起動に要求されるセキュリティ強度が対応づけられたイメージデータ管理情報と、
    前記サーバ、及び前記サーバに設定されたセキュリティ強度が対応づけられたサーバ管理情報と、を保持し、
    前記仮想計算機システムを利用するユーザから、前記所定のアプリケーションを実行する仮想計算機を生成するための対象イメージデータの識別情報を含むデプロイ要求を受け付けるデプロイ要求受付部と、
    前記イメージデータ管理情報及び前記サーバ管理情報に基づいて、前記対象イメージデータに対応づけられた前記セキュリティ強度以上の前記セキュリティ強度が設定された前記サーバを検索するサーバ検索部と、
    前記検索されたサーバに前記対象イメージデータのデプロイを指示するデプロイ指示部と、
    前記対象イメージデータを用いて、前記検索されたサーバ上に前記仮想計算機を生成し、前記生成された仮想計算機の起動時に取得され、前記仮想計算機に関する整合性の検証に用いられる第1の整合性報告を前記検証サーバに対して送信する仮想計算機管理部と、
    を有し、
    前記仮想計算機管理部は、前記検証サーバから送信される前記第1の整合性報告に対する検証処理の結果を受信し、
    前記デプロイ要求受付部は、前記受信した第1の整合性報告に対する検証処理の結果に基づいて、前記対象イメージデータのデプロイ結果を出力することを特徴とする計算機システム。
  2. 請求項1に記載の計算機システムであって、
    前記計算機システムは、前記イメージデータ格納部に格納する前記イメージデータを配布するアプリケーション提供システムを含み、
    前記アプリケーション提供システムは、
    前記イメージデータによって生成される仮想計算機上で実行されるアプリケーションの整合性を検証し、また、前記アプリケーションの利用状態を監視する認証サーバと、
    前記アプリケーションの利用状況を示す情報を格納するライセンスデータ格納部と、を含み、
    前記仮想計算機管理部は、前記第1の整合性報告を前記認証サーバに送信し、
    前記認証サーバは、
    前記受信した第1の整合性報告を前記検証サーバに転送し、
    前記受信した第1の整合性報告、及び前記検証サーバから受信した前記第1の整合性報告に対する検証処理の結果に基づいて、前記ライセンスデータ格納部に格納される情報を更新し、
    前記受信した第1の整合性報告に対する検証処理の結果を前記仮想計算機管理部に転送することを特徴とする計算機システム。
  3. 請求項2に記載の計算機システムであって、
    前記アプリケーション提供システムは、秘密鍵及び公開鍵を保持し、
    前記公開鍵と対応づけられた前記イメージデータが前記イメージデータ格納部に登録され、
    前記仮想計算機管理部は、
    前記公開鍵を用いて前記第1の整合性報告を暗号化し、
    前記暗号化された第1の整合性報告を前記認証サーバに送信し、
    前記認証サーバは、
    前記秘密鍵を用いて前記暗号化された第1の整合性報告を復号化できるか否かを判定し、
    前記秘密鍵を用いて前記暗号化された第1の整合性報告を復号化できると判定された場合、前記復号化された第1の整合性報告を前記検証サーバに転送することを特徴とする計算機システム。
  4. 請求項2に記載の計算機システムであって、
    前記イメージデータは、前記アプリケーションを実行する実行用仮想計算機を生成するための第1のイメージデータと、前記実行用仮想計算機上で実行される前記アプリケーションの整合性を検証するための通信を行う認証用仮想計算機を生成する第2のイメージデータと、を含み、
    前記イメージデータ格納部には、一つ以上の前記第1のイメージデータ、及び一つ以上の前記第2のイメージデータを含むソフトウェアが格納され、
    前記デプロイ要求に含まれる前記対象イメージデータの識別情報は、前記ソフトウェアの識別情報であり、
    前記サーバ検索部は、
    前記ユーザから指定された前記ソフトウェアに含まれる前記第1のイメージデータに対応づけられた前記セキュリティ強度以上の前記セキュリティ強度が設定された第1のサーバを検索し、
    前記ユーザから指定されたソフトウェアに含まれる前記第2のイメージデータに対応づけられた前記セキュリティ強度以上の前記セキュリティ強度が設定された第2のサーバを検索し、
    前記デプロイ指示部は、
    前記検索された第1のサーバに、前記ユーザから指定されたソフトウェアに含まれる第1のイメージデータのデプロイを指示し、
    前記検索された第2のサーバに、前記ユーザから指定されたソフトウェアに含まれる第2のイメージデータのデプロイを指示し、
    前記第1のイメージデータによって生成された前記実行用仮想計算機は、第1の期間毎に、前記アプリケーションの実行状態を示す情報を含む第2の整合性報告を前記第2のイメージデータによって生成された前記認証用仮想計算機に送信し、
    前記第2のイメージデータによって生成された前記認証用仮想計算機は、
    前記第1の期間より長い第2の期間毎に、複数の前記第2の整合性報告を含む第3の整合性報告を前記認証サーバに送信し、
    前記認証サーバから受信した前記第3の整合性報告に対する検証結果に基づいて、前記第2の整合性報告の応答を送信することを特徴とする計算機システム。
  5. 請求項2に記載の計算機システムであって、
    前記イメージデータ管理情報は、さらに、前記イメージデータを用いて生成される前記仮想計算機に必要な計算機リソースに関する情報が対応づけられ、
    前記複数のサーバは、TPMを備える第3のサーバを含み、
    前記サーバ検索部は、
    前記対象イメージデータに対応づけられたセキュリティ強度が前記TPMを用いた前記仮想計算機の起動処理が必要であることを示す値である場合に、前記サーバ管理情報を参照して、前記第3のサーバを検索し、
    前記第3のサーバにおける割当可能な計算機リソース量を算出し、
    前記イメージデータ管理情報及び前記算出された割当可能な計算機リソース量に基づいて、前記検索された第3のサーバ上に前記対象イメージデータを用いて前記仮想計算機が生成可能であるか否かを判定し、
    前記検索された第3のサーバ上に前記対象イメージデータを用いて前記仮想計算機が生成可能であると判定された場合、前記対象イメージデータを用いて前記仮想計算機を生成するためのデプロイ情報を出力することを特徴とする計算機システム。
  6. 請求項5に記載の計算機システムであって、
    前記仮想計算機管理部は、前記検索された第3のサーバ上に前記TPMをエミュレーションするための仮想TPM用仮想計算機を生成し、
    前記仮想TPM用仮想計算機は、前記対象イメージデータを用いて生成される仮想計算機に割り当てる仮想TPMを生成し、
    前記仮想計算機管理部は、
    前記対象イメージデータ、前記生成された仮想TPM、及び前記検索された第3のサーバの計算機リソースに基づいて、前記仮想計算機を生成し、
    前記生成された仮想計算機は、前記第1の整合性報告に対する検証処理の結果に基づいて、前記所定のアプリケーションの実行を開始することを特徴とする計算機システム。
  7. 請求項6に記載の計算機システムであって、
    前記検索された第3のサーバは、前記仮想TPMに、前記イメージデータを用いた前記仮想計算機の起動処理時に実行されるプログラムの状態を示す値を書き込み、
    前記仮想TPM用仮想計算機は、前記仮想TPMに対して書き込まれた前記値を前記TPMに書き込み、
    前記仮想計算機管理部は、前記TPMに書き込まれた値を含む前記第1の整合性報告を送信することを特徴とする計算機システム。
  8. プロセッサ、前記プロセッサに接続されるメモリ、前記プロセッサに接続されるネットワークインタフェースを有する複数の計算機を備える計算機システムにおける仮想計算機管理方法であって、
    前記計算機システムは、所定のアプリケーションを実行する仮想計算機に割り当てる計算機リソースを有する仮想計算機システム、及び前記仮想計算機に関する整合性を検証する検証システムを含み、
    前記仮想計算機システムは、
    前記仮想計算機に計算機リソースを提供する複数のサーバと、
    前記複数のサーバ上で稼働する前記仮想計算機を管理する管理計算機と、
    前記所定のアプリケーションを実行する仮想計算機を生成するためのイメージデータを格納するイメージデータ格納部と、を含み、
    前記検証システムは、
    前記仮想計算機の整合性を検証する検証サーバと、
    前記仮想計算機の整合性を検証するための情報を格納する検証用データ格納部と、を含み、
    前記仮想計算機システムは、
    前記イメージデータ、及び当該イメージデータに基づいて生成される前記仮想計算機の起動に要求されるセキュリティ強度が対応づけられたイメージデータ管理情報と、
    前記サーバ、及び前記サーバに設定されたセキュリティ強度が対応づけられたサーバ管理情報と、を保持し、
    前記方法は、
    前記管理計算機が、前記仮想計算機システムを利用するユーザから、所定のアプリケーションを実行する前記仮想計算機を生成するための対象イメージデータの識別情報を含むデプロイ要求を受け付ける第1のステップと、
    前記管理計算機が、前記イメージデータ管理情報及び前記サーバ管理情報に基づいて、前記対象イメージデータに対応づけられた前記セキュリティ強度以上の前記セキュリティ強度が設定された前記サーバを検索する第2のステップと、
    前記管理計算機が、前記検索されたサーバに前記対象イメージデータのデプロイを指示する第3のステップと、
    前記デプロイの指示を受信したサーバが、前記対象イメージデータを用いて前記仮想計算機を生成し、前記生成された仮想計算機の起動時に取得され、前記仮想計算機に関する整合性の検証に用いられる第1の整合性報告を前記検証サーバに対して送信する第4のステップと
    前記デプロイの指示を受信したサーバが、前記検証サーバから送信される前記第1の整合性報告に対する検証処理の結果を受信する第5のステップと、
    前記デプロイの指示を受信したサーバが、前記受信した第1の整合性報告に対する検証処理の結果を前記管理計算機に送信する第6のステップと、
    前記管理計算機が、前記受信した第1の整合性報告に対する検証処理の結果に基づいて、前記対象イメージデータのデプロイ結果を前記ユーザに対して出力する第7のステップと、を含むことを特徴とする仮想計算機管理方法。
  9. 請求項8に記載の仮想計算機管理方法であって、
    前記計算機システムは、前記イメージデータ格納部に格納する前記イメージデータを配布するアプリケーション提供システムを含み、
    前記アプリケーション提供システムは、
    前記イメージデータによって生成される仮想計算機上で実行されるアプリケーションの整合性を検証し、また、前記アプリケーションの利用状態を監視する認証サーバと、
    前記アプリケーションの利用状況を示す情報を格納するライセンスデータ格納部と、を含み、
    前記第4のステップは、
    前記デプロイの指示を受信したサーバが、前記第1の整合性報告を前記認証サーバに送信する第8のステップと、
    前記認証サーバが、前記受信した第1の整合性報告を前記検証サーバに転送する第9のステップと、
    前記認証サーバが、前記受信した第1の整合性報告、及び前記検証サーバから受信した前記第1の整合性報告に対する検証処理の結果に基づいて、前記ライセンスデータ格納部に格納される情報を更新する第10のステップと、
    前記認証サーバが、前記受信した第1の整合性報告に対する検証処理の結果を前記デプロイの指示を受信したサーバに転送する第11のステップと、を含むことを特徴とする仮想計算機管理方法。
  10. 請求項9に記載の仮想計算機管理方法であって、
    前記アプリケーション提供システムは、秘密鍵及び公開鍵を保持し、
    前記公開鍵と対応づけられた前記イメージデータが前記イメージデータ格納部に登録され、
    前記第8のステップは、
    前記デプロイの指示を受信したサーバが、前記公開鍵を用いて前記第1の整合性報告を暗号化するステップと、
    前記デプロイの指示を受信したサーバが、前記暗号化された第1の整合性報告を前記検証サーバに送信するステップと、を含み、
    前記第9のステップは、
    前記認証サーバが、前記秘密鍵を用いて前記暗号化された第1の整合性報告を復号化できるか否かを判定するステップと、
    前記認証サーバが、前記秘密鍵を用いて前記暗号化された第1の整合性報告を復号化できると判定された場合、前記復号化された第1の整合性報告を前記検証サーバに転送するステップと、を含むことを特徴とする仮想計算機管理方法。
  11. 請求項9に記載の仮想計算機管理方法であって、
    前記イメージデータは、前記アプリケーションを実行する実行用仮想計算機を生成するための第1のイメージデータ、及び前記実行用仮想計算機上で実行される前記アプリケーションの整合性を検証するための通信を行う認証用仮想計算機を生成する第2のイメージデータを含み、
    前記イメージデータ格納部には、一つ以上の前記第1のイメージデータ、及び一つ以上の前記第2のイメージデータを含むソフトウェアが格納され、
    前記第1のステップでは、前記ソフトウェアの識別情報を含む前記デプロイ要求を受け付け、
    前記第2のステップは、
    前記管理計算機が、前記ユーザから指定された前記ソフトウェアに含まれる前記第1のイメージデータに対応づけられた前記セキュリティ強度以上の前記セキュリティ強度が設定された第1のサーバを検索するステップと、
    前記管理計算機が、前記ユーザから指定された前記ソフトウェアに含まれる前記第2のイメージデータに対応づけられた前記セキュリティ強度以上の前記セキュリティ強度が設定された第2のサーバを検索するステップと、を含み、
    前記第3のステップは、
    前記管理計算機が、前記検索された第1のサーバに、前記ユーザから指定されたソフトウェアに含まれる第1のイメージデータのデプロイを指示するステップと、
    前記管理計算機が、前記検索された第2のサーバに、前記ユーザから指定されたソフトウェアに含まれる第2のイメージデータのデプロイを指示するステップと、を含み、
    前記方法は、
    前記第1のイメージデータによって生成された前記実行用仮想計算機が、第1の期間毎に、前記アプリケーションの実行状態を示す情報を含む第2の整合性報告を前記第2のイメージデータによって生成された前記認証用仮想計算機に送信するステップと、
    前記第2のイメージデータによって生成された前記認証用仮想計算機が、前記第1の期間より長い第2の期間毎に、複数の前記第2の整合性報告を含む第3の整合性報告を前記認証サーバに送信するステップと、
    前記第2のイメージデータによって生成された前記認証用仮想計算機が、前記認証サーバから受信した前記第3の整合性報告に対する検証処理の結果に基づいて、前記第2の整合性報告の応答を送信するステップと、を含むことを特徴とする仮想計算機管理方法。
  12. 請求項9に記載の仮想計算機管理方法であって、
    前記イメージデータ管理情報は、さらに、前記イメージデータを用いて生成される前記仮想計算機に必要な計算機リソースに関する情報が対応づけられ、
    前記複数のサーバは、TPMを備える第3のサーバを含み、
    前記第2のステップは、
    前記対象イメージデータに対応づけられたセキュリティ強度が前記TPMを用いた前記仮想計算機の起動処理が必要であることを示す値である場合に、前記サーバ管理情報を参照して、前記第3のサーバを検索するステップと、
    前記第3のサーバにおける割当可能な計算機リソース量を算出するステップと、
    前記イメージデータ管理情報及び前記算出された割当可能な計算機リソース量に基づいて、前記検索された第3のサーバ上に前記対象イメージデータを用いて前記仮想計算機が生成可能であるか否かを判定するステップと、
    前記検索された第3のサーバ上に前記対象イメージデータを用いて前記仮想計算機が生成可能であると判定された場合、前記対象イメージデータを用いて前記仮想計算機を生成するためのデプロイ情報を出力するステップと、を含むことを特徴とする仮想計算機管理方法。
  13. 請求項12に記載の仮想計算機管理方法であって、
    前記第4のステップは、
    前記第3のサーバが、前記TPMをエミュレーションするための仮想TPM用仮想計算機を生成する第12のステップと、
    前記仮想TPM用仮想計算機が、前記対象イメージデータを用いて生成される仮想計算機に割り当てる仮想TPMを生成する第13のステップと、
    前記第3のサーバが、前記対象イメージデータ、前記生成された仮想TPM、及び前記検索された第3のサーバの計算機リソースに基づいて、前記仮想計算機を生成する第14のステップと、
    前記生成された仮想計算機が、前記第1の整合性報告に対する検証処理の結果に基づいて、前記所定のアプリケーションの実行を開始する第15のステップと、を含むことを特徴とする仮想計算機管理方法。
  14. 請求項13に記載の仮想計算機管理方法であって、
    前記第14のステップは、
    前記検索された第3のサーバが、前記仮想TPMに、前記イメージデータを用いた前記仮想計算機の起動処理時に実行されるプログラムの状態を示す値を書き込むステップと、
    前記仮想TPM用仮想計算機が、前記仮想TPMに対して書き込まれた前記値を前記TPMに書き込むステップと、を含み、
    前記第8のステップでは、前記TPMに書き込まれた値を含む前記第1の整合性報告が送信されることを特徴とする仮想計算機管理方法。
JP2013025050A 2013-02-13 2013-02-13 計算機システム、及び仮想計算機管理方法 Expired - Fee Related JP5945512B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013025050A JP5945512B2 (ja) 2013-02-13 2013-02-13 計算機システム、及び仮想計算機管理方法
US14/178,895 US9288155B2 (en) 2013-02-13 2014-02-12 Computer system and virtual computer management method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013025050A JP5945512B2 (ja) 2013-02-13 2013-02-13 計算機システム、及び仮想計算機管理方法

Publications (2)

Publication Number Publication Date
JP2014154050A JP2014154050A (ja) 2014-08-25
JP5945512B2 true JP5945512B2 (ja) 2016-07-05

Family

ID=51298445

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013025050A Expired - Fee Related JP5945512B2 (ja) 2013-02-13 2013-02-13 計算機システム、及び仮想計算機管理方法

Country Status (2)

Country Link
US (1) US9288155B2 (ja)
JP (1) JP5945512B2 (ja)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9367339B2 (en) * 2013-07-01 2016-06-14 Amazon Technologies, Inc. Cryptographically attested resources for hosting virtual machines
US9756074B2 (en) * 2013-12-26 2017-09-05 Fireeye, Inc. System and method for IPS and VM-based detection of suspicious objects
US9705920B1 (en) * 2014-01-17 2017-07-11 Amazon Technologies, Inc. Identifying data usage via active data
US10389709B2 (en) * 2014-02-24 2019-08-20 Amazon Technologies, Inc. Securing client-specified credentials at cryptographically attested resources
JP2015184718A (ja) * 2014-03-20 2015-10-22 富士通株式会社 起動管理装置、起動管理方法、及び、起動管理プログラム
US10542049B2 (en) 2014-05-09 2020-01-21 Nutanix, Inc. Mechanism for providing external access to a secured networked virtualization environment
US9961059B2 (en) 2014-07-10 2018-05-01 Red Hat Israel, Ltd. Authenticator plugin interface
US10289814B2 (en) 2014-12-23 2019-05-14 Intel Corporation Licensing in the cloud
US10505742B2 (en) 2015-02-03 2019-12-10 Nec Corporation Virtual network system, control apparatus, control method, and control program
US9542201B2 (en) 2015-02-25 2017-01-10 Quanta Computer, Inc. Network bios management
US10642753B1 (en) 2015-06-30 2020-05-05 Fireeye, Inc. System and method for protecting a software component running in virtual machine using a virtualization layer
US10726127B1 (en) 2015-06-30 2020-07-28 Fireeye, Inc. System and method for protecting a software component running in a virtual machine through virtual interrupts by the virtualization layer
US10395029B1 (en) 2015-06-30 2019-08-27 Fireeye, Inc. Virtual system and method with threat protection
US11113086B1 (en) 2015-06-30 2021-09-07 Fireeye, Inc. Virtual system and method for securing external network connectivity
US10216927B1 (en) 2015-06-30 2019-02-26 Fireeye, Inc. System and method for protecting memory pages associated with a process using a virtualization layer
US10033759B1 (en) 2015-09-28 2018-07-24 Fireeye, Inc. System and method of threat detection under hypervisor control
US9940470B2 (en) * 2015-10-06 2018-04-10 Symantec Corporation Techniques for generating a virtual private container
US9792143B1 (en) * 2015-10-23 2017-10-17 Amazon Technologies, Inc. Platform secure execution modes
US10809998B2 (en) 2016-02-12 2020-10-20 Nutanix, Inc. Virtualized file server splitting and merging
JP6736927B2 (ja) * 2016-03-23 2020-08-05 日本電気株式会社 配備装置、配備方法および配備プログラム
US10133867B1 (en) 2016-03-29 2018-11-20 Amazon Technologies, Inc. Trusted malware scanning
WO2017192116A1 (en) * 2016-05-02 2017-11-09 Hewlett-Packard Development Company, L.P. Authentication using sequence of images
CN106022137B (zh) * 2016-05-10 2018-11-13 北京新云东方系统科技有限责任公司 由tpcm控制power平台可信的实现方法及系统
US11218418B2 (en) 2016-05-20 2022-01-04 Nutanix, Inc. Scalable leadership election in a multi-processing computing environment
US11562034B2 (en) 2016-12-02 2023-01-24 Nutanix, Inc. Transparent referrals for distributed file servers
US11568073B2 (en) 2016-12-02 2023-01-31 Nutanix, Inc. Handling permissions for virtualized file servers
US10728090B2 (en) 2016-12-02 2020-07-28 Nutanix, Inc. Configuring network segmentation for a virtualization environment
US10824455B2 (en) 2016-12-02 2020-11-03 Nutanix, Inc. Virtualized server systems and methods including load balancing for virtualized file servers
US11294777B2 (en) 2016-12-05 2022-04-05 Nutanix, Inc. Disaster recovery for distributed file servers, including metadata fixers
US11288239B2 (en) 2016-12-06 2022-03-29 Nutanix, Inc. Cloning virtualized file servers
US11281484B2 (en) 2016-12-06 2022-03-22 Nutanix, Inc. Virtualized server systems and methods including scaling of file system virtual machines
JP6984138B2 (ja) * 2017-02-20 2021-12-17 日本電気株式会社 サーバ装置、サーバ制御方法、プログラム、サーバシステム
CN106790303B (zh) * 2017-03-23 2019-07-23 西安电子科技大学 云存储中借助第三方完成的数据完整性验证方法
US10783235B1 (en) * 2017-05-04 2020-09-22 Amazon Technologies, Inc. Secure remote access of computing resources
US10684894B2 (en) * 2017-11-10 2020-06-16 Amazon Technologies, Inc. Capacity management in provider networks using dynamic host device instance model reconfigurations
EP3751437A4 (en) * 2018-02-07 2021-06-09 Sony Corporation INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING METHOD AND PROGRAM
US11086826B2 (en) 2018-04-30 2021-08-10 Nutanix, Inc. Virtualized server systems and methods including domain joining techniques
US11194680B2 (en) 2018-07-20 2021-12-07 Nutanix, Inc. Two node clusters recovery on a failure
US11770447B2 (en) 2018-10-31 2023-09-26 Nutanix, Inc. Managing high-availability file servers
US11768809B2 (en) 2020-05-08 2023-09-26 Nutanix, Inc. Managing incremental snapshots for fast leader node bring-up
US20220308907A1 (en) * 2021-03-26 2022-09-29 Red Hat, Inc. Injection and execution of workloads into virtual machines
JP2023003835A (ja) * 2021-06-24 2023-01-17 株式会社日立製作所 ストレージシステム、接続優先度決定方法、及び接続優先度決定プログラム
US11924336B1 (en) * 2021-06-25 2024-03-05 Amazon Technologies, Inc. Cryptographic artifact generation using virtualized security modules

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9450966B2 (en) * 2004-11-29 2016-09-20 Kip Sign P1 Lp Method and apparatus for lifecycle integrity verification of virtual machines
US8549592B2 (en) * 2005-07-12 2013-10-01 International Business Machines Corporation Establishing virtual endorsement credentials for dynamically generated endorsement keys in a trusted computing platform
US7814495B1 (en) * 2006-03-31 2010-10-12 V Mware, Inc. On-line replacement and changing of virtualization software
US20090204964A1 (en) 2007-10-12 2009-08-13 Foley Peter F Distributed trusted virtualization platform
US8819675B2 (en) 2007-11-28 2014-08-26 Hitachi, Ltd. Virtual machine monitor and multiprocessor system
JP5210730B2 (ja) 2007-11-28 2013-06-12 株式会社日立製作所 仮想マシンモニタ及びマルチプロセッサシステム
US20110040812A1 (en) 2007-12-20 2011-02-17 Virtual Computer, Inc. Layered Virtual File System
US20090164994A1 (en) 2007-12-20 2009-06-25 Virtual Computer, Inc. Virtual computing management systems and methods
US8276208B2 (en) * 2007-12-31 2012-09-25 Intel Corporation Security-level enforcement in virtual-machine fail-over
US20110061046A1 (en) 2008-12-18 2011-03-10 Virtual Computer, Inc. Installing Software Applications in a Layered Virtual Workspace
US20100175108A1 (en) * 2009-01-02 2010-07-08 Andre Protas Method and system for securing virtual machines by restricting access in connection with a vulnerability audit
EP2389626A4 (en) * 2009-01-23 2012-12-05 Hewlett Packard Development Co VERIFICATION OF VIRTUAL MACHINERY
JP2010218517A (ja) * 2009-03-19 2010-09-30 Hitachi Information Systems Ltd 仮想環境におけるソフトウェアライセンス管理システム及び同ライセンス管理方法
US9703586B2 (en) 2010-02-17 2017-07-11 Microsoft Technology Licensing, Llc Distribution control and tracking mechanism of virtual machine appliances
US20110202765A1 (en) 2010-02-17 2011-08-18 Microsoft Corporation Securely move virtual machines between host servers
JP5552343B2 (ja) * 2010-03-16 2014-07-16 株式会社日本総合研究所 管理装置、管理方法およびプログラム
US8856504B2 (en) * 2010-06-07 2014-10-07 Cisco Technology, Inc. Secure virtual machine bootstrap in untrusted cloud infrastructures
JP5555903B2 (ja) 2010-09-27 2014-07-23 株式会社日立製作所 I/oアダプタ制御方法、計算機及び仮想計算機生成方法
US20120151209A1 (en) * 2010-12-09 2012-06-14 Bae Systems National Security Solutions Inc. Multilevel security server framework
WO2012081114A1 (ja) * 2010-12-16 2012-06-21 株式会社日立製作所 仮想計算機管理方法、計算機システム及び計算機
US8601583B1 (en) * 2011-04-14 2013-12-03 Trend Micro Incorporated Certification of virtual machine images in cloud computing environments
US9619262B2 (en) * 2011-05-31 2017-04-11 Micro Focus Software Inc. Techniques for security auditing of cloud resources
US20120311575A1 (en) * 2011-06-02 2012-12-06 Fujitsu Limited System and method for enforcing policies for virtual machines
US20130097296A1 (en) * 2011-10-18 2013-04-18 Telefonaktiebolaget L M Ericsson (Publ) Secure cloud-based virtual machine migration
US9185114B2 (en) * 2012-12-05 2015-11-10 Symantec Corporation Methods and systems for secure storage segmentation based on security context in a virtual environment

Also Published As

Publication number Publication date
JP2014154050A (ja) 2014-08-25
US20140230024A1 (en) 2014-08-14
US9288155B2 (en) 2016-03-15

Similar Documents

Publication Publication Date Title
JP5945512B2 (ja) 計算機システム、及び仮想計算機管理方法
Buhren et al. Insecure until proven updated: analyzing AMD SEV's remote attestation
JP6100834B2 (ja) マルチ・テナント・クラウドにおける顧客仮想計算機の保護
McCune et al. Flicker: An execution infrastructure for TCB minimization
Butt et al. Self-service cloud computing
KR100930218B1 (ko) 소프트웨어 기반 보안 코프로세서를 제공하는 방법, 장치및 처리 시스템
US8171295B2 (en) Information processing apparatus, a server apparatus, a method of an information processing apparatus, a method of a server apparatus, and an apparatus executable process
US8856544B2 (en) System and method for providing secure virtual machines
EP3028210B1 (en) Secure server in a system with virtual machines
Krautheim et al. Introducing the trusted virtual environment module: a new mechanism for rooting trust in cloud computing
Bertholon et al. Certicloud: a novel tpm-based approach to ensure cloud iaas security
Chen et al. {cTPM}: A cloud {TPM} for {Cross-Device} trusted applications
US20110289294A1 (en) Information processing apparatus
US20110246778A1 (en) Providing security mechanisms for virtual machine images
US20070094719A1 (en) Method and apparatus for migrating virtual trusted platform modules
Khan et al. Design and deployment of a trusted eucalyptus cloud
Stumpf et al. An approach to a trustworthy system architecture using virtualization
Schear et al. Bootstrapping and maintaining trust in the cloud
Pandey et al. An approach for virtual machine image security
Sun et al. Pileus: Protecting user resources from vulnerable cloud services
Aslam et al. Securely launching virtual machines on trustworthy platforms in a public cloud
Brasser et al. Trusted container extensions for container-based confidential computing
US20220222100A1 (en) Integrity protection of container image disks using secure hardware-based attestation in a virtualized and clustered computer system
Toegl et al. acTvSM: A dynamic virtualization platform for enforcement of application integrity
US11893410B2 (en) Secure storage of workload attestation reports in a virtualized and clustered computer system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150908

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160427

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160524

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160530

R150 Certificate of patent or registration of utility model

Ref document number: 5945512

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees