複数のサーバコンピュータ及び永続的なデータ記憶装置を含むマルチテナントデータセンターの仮想計算機を保護する方法であって、認証モジュールでサーバコンピュータを構成するステップと、ソフトウェアスタックを前記サーバコンピュータにインストールするステップと、前記認証モジュールで前記ソフトウェアスタックの静的特性を測定して、前記測定を格納するステップと、前記測定を外部実体に送信して、それに応答して、前記外部実体から前記ソフトウェアスタックの上で仮想計算機を動作させるためのキーを受信するステップと、前記キーを使用して前記ソフトウェアスタックの上で前記仮想計算機を動作させるステップと、を含む方法。前記外部実体が、前記仮想計算機の所有者、又は前記所有者が機密保護監視責任を委任した第三者機関である請求項1記載の方法。前記ソフトウェアスタックが、選択された管理動作が前記外部実体からの許可なしに前記仮想計算機で実行されることを許可しない請求項1記載の方法。前記選択された管理動作が、前記仮想計算機の別のサーバコンピュータへの移行、前記仮想計算機のスナップショットの生成、及び前記仮想計算機のインプレースなアップグレードを含む請求項3記載の方法。前記仮想計算機の仮想ディスクを暗号化された形で永続的なデータ記憶装置に格納するステップと、前記外部実体から前記仮想ディスクを解読するためのキーを受信するステップと、を更に含む請求項1記載の方法。前記ソフトウェアスタックが、前記仮想計算機が暗号化キーなしに別のサーバコンピュータで動作する識別した仮想計算機と通信することを阻止する請求項1記載の方法。前記暗号化キーの要求を前記外部実体に送信するステップであって、前記要求は別のサーバコンピュータで動作する前記仮想計算機の識別を含むステップを更に含む請求項6記載の方法。前記ソフトウェアスタックが複数の層を有し、そしてソフトウェア層が加えられるたびに、静的特性測定が逐次実行される請求項1記載の方法。前記TPMが複数のレジスタを有し、そして各逐次静的特性測定が前記TPMの前記レジスタの1つに記録される請求項8記載の方法。複数のサーバコンピュータ及び永続的なデータ記憶装置を含むマルチテナントデータセンターの仮想計算機を保護するための非一時的機械可読な記憶媒体において、高信頼仮想化プラットフォームとして構成されたコンピュータに方法を実行させるそこにコード化されたコンピュータ命令を有する機械可読な記憶媒体であって、前記方法は、認証モジュールで構成されたサーバコンピュータで仮想計算機を動作させるキーの要求を受信するステップであって、前記キー要求は前記仮想計算機と関連付けた顧客IDを含むステップと、前記仮想計算機がその上で動作するソフトウェアスタックの静的特性測定値を前記サーバコンピュータに要求し、そして、それに応答して、前記静的特性測定値を受信するステップと、前記静的特性測定値から前記ソフトウェアスタックが高信頼ソフトウェアスタックであることを確認し、そして前記確認の後に、前記サーバコンピュータで前記仮想計算機を動作させるために前記キーを前記サーバコンピュータに送信するステップと、を含む機械可読な記憶媒体。前記方法が、前記サーバコンピュータから前記認証モジュールの公開キーを受信するステップと、前記マルチテナントデータセンターと関連付けた在庫管理において前記公開キーを探索するステップと、を更に含み、そこにおいて、前記公開キーが前記マルチテナントデータセンターと関連付けた前記在庫管理で見つかったことが確認された後に、前記サーバコンピュータで前記仮想計算機を動作させる前記キーが前記サーバコンピュータに送信される請求項10記載の機械可読な記憶媒体。前記方法が、前記サーバコンピュータで動作する前記仮想計算機において動作を実行するための要求を受信するステップと、前記仮想計算機と関連付けたポリシーを調べ、そして前記ポリシーが前記動作を許可する場合は、前記仮想計算機で前記動作を実行するためのキーを送信し、そして前記ポリシーが前記動作を許可しない場合は、前記要求を拒否するメッセージを送信するステップと、を更に含む請求項10記載の機械可読な記憶媒体。前記キーの各々が関連するリース期間を有し、その満期後、前記キーはもはや有効でない請求項12記載の機械可読な記憶媒体。前記方法が、前記仮想計算機で実行される動作の報告書を受信して記録するステップを更に含む請求項10記載の機械可読な記憶媒体。前記方法が、前記仮想計算機が前記サーバコンピュータで動作した後に、前記仮想計算機の仮想ディスクに格納されたデータを暗号化及び解読するためのキーを送信するステップを更に含む請求項10記載の機械可読な記憶媒体。前記方法が、ネットワークパケットを異なるサーバコンピュータで動作する別の仮想計算機に送信するための要求を受信するステップと、前記異なるサーバコンピュータが高信頼ソフトウェアスタックを動作させていて、前記別の仮想計算機が前記高信頼ソフトウェアスタックの上で動作していることを確認するステップと、前記確認をすると、前記別の仮想計算機に送信される前記ネットワークパケットを暗号化するためのキーを前記サーバコンピュータに送信するステップと、を更に含む請求項10記載の機械可読な記憶媒体。前記方法が、前記サーバコンピュータから認証識別キーAIKの公開部分を受信するステップを更に含み、そこにおいて、前記静的特性測定値が前記AIKの私用部分によって暗号化されて、前記AIKの前記公開部分を使用して解読される請求項10記載の機械可読な記憶媒体。前記方法が、ランダムなノンスを前記サーバコンピュータに送信するステップと、前記ランダムなノンスが前記サーバコンピュータからも受信されるときに、前記静的特性測定値が前記サーバコンピュータによって実際に送信されたことを確認するステップと、を含む請求項10記載の機械可読な記憶媒体。複数のサーバコンピュータであって、その各々は、高信頼プラットフォームモジュールと、その上において顧客アプリケーションが実行されることになっている1つ以上のソフトウェア層を有する高信頼仮想化プラットフォームとで構成されるサーバコンピュータと、前記サーバコンピュータに結合する永続的な記憶装置であって、前記顧客アプリケーションを起動するためのファイルが格納され、前記ファイルは、暗号化された部分、並びに前記顧客及び前記顧客と関連付けたネットワーク位置を識別する平分部分を含む記憶装置と、を備えるマルチテナントデータセンターであって、前記高信頼仮想化プラットフォームは、i前記高信頼仮想化プラットフォームに対するいかなる変更も前記顧客と関連付けた前記ネットワーク位置に報告し、ii前記顧客アプリケーションを起動するための前記ファイルの前記暗号化された部分を解読するために、前記顧客と関連付けた前記ネットワーク位置からキーを得て、そしてiii前記仮想計算機のメモリの直接の検査を禁止するようにプログラムされているマルチテナントデータセンター。前記キーが前記仮想計算機の前記メモリに格納されて、管理人によってアクセスすることができない請求項19記載のシステム。前記キーが前記サーバコンピュータによって永続的に格納されない請求項20記載のシステム。前記キーのうちの少なくとも1つがリース期間を有する請求項19記載のシステム。前記アプリケーションが仮想計算機のインスタンスであり、そして前記ファイルが前記仮想計算機のための構成ファイル及び前記仮想計算機の仮想ディスクを含む請求項19記載のシステム。0003クラウド計算センターの最新の構成において、顧客は彼らの作業負荷が実行されるところを制御しない。その結果、顧客の仮想計算機がクラウド計算センター内のホストの電源を入れるときに、仮想計算機の情報はいくつかの方法で危険にさらされ得る。例えば、ホストは、仮想計算機のスナップショットを保持し、メモリ検査を行い、そして顧客の潜在的に機密に関するデータについての知識を得ることができる。加えて、クラウド管理人は、すべての顧客のために動作するすべての仮想計算機のデータ及び状態に実質的に無制限にアクセスできる。これは、直接仮想ディスクを読み取ること、及び彼又は彼女の仮想計算機のうちの2台の間で顧客の個人的な仮想ネットワークトラフィックを嗅ぎまわることを含む。0004本発明の1つ以上の実施形態は、マルチテナントクラウド計算センターで顧客仮想計算機を保護する方法として高信頼仮想化プラットフォームを提供する。高信頼仮想化プラットフォームは、管理人のアクセスをそこで動作する仮想計算機のデータ及び状態に制限し、それになされるいかなる変更も報告して、仮想計算機の管理動作を実行するために、顧客又は顧客の高信頼第三者機関により提供されたキーを要求する。この種の高信頼仮想化プラットフォームを使用することをクラウド計算センターに要求することによって、彼らの仮想計算機をクラウド計算センターにアップロードする顧客は、クラウド管理人が彼らの私用データにアクセスするか、又はそれを変更することができないことを確信できる。更にまた、高信頼仮想化プラットフォームが顧客によってセットされた機密保護ポリシーに従ってすべてのこの種の変更を報告するように構成できるので、顧客は彼らの仮想計算機のすべての重要な状態又は構成の変更を直接監査できる。0005本発明の一実施形態によれば、複数のサーバコンピュータ及び永続的なデータ記憶装置を含むマルチテナントデータセンターにおいて仮想計算機を保護する方法は、高信頼プラットフォームモジュールでサーバコンピュータを構成するステップと、高信頼ソフトウェアスタックをサーバコンピュータにインストールするステップと、ソフトウェアスタックの静的特性を測定して、測定値を格納するステップと、測定値を外部実体に送信するステップと、それに応答して、高信頼ソフトウェアスタックにおいて仮想計算機を動作させるためのキーを外部実体から受信するステップと、キーを使用して高信頼ソフトウェアスタックの上において仮想計算機を動作させるステップとを含む。0006本発明の別の実施形態によれば、複数のサーバコンピュータ及び永続的なデータ記憶装置を含むマルチテナントデータセンターにおいて仮想計算機を保護する方法は、高信頼プラットフォームモジュールで構成されたサーバコンピュータで仮想計算機を動作させるためにキーの要求を受信するステップキーの要求は仮想計算機と関連付けた顧客IDを含むと、サーバコンピュータに仮想計算機が動作するソフトウェアスタックの静的特性測定を要求し、それに応答して、静的特性測定値を受信するステップと、静的特性測定値からソフトウェアスタックが高信頼ソフトウェアスタックであることを確認するステップと、前記確認の後に、サーバコンピュータで仮想計算機を動作させるためにキーをサーバコンピュータに送信するステップとを含む。別の実施形態では、この方法は、サーバコンピュータから高信頼プラットフォームモジュールの公開キーを受信するステップと、マルチテナントデータセンターと関連付けた在庫管理で公開キーを探索するステップとを更に含み、そこにおいて、公開キーがマルチテナントデータセンターと関連付けた在庫管理で見つかったことが確認された後に、サーバコンピュータ上で仮想計算機を動作させるキーはサーバコンピュータに送信される。0007本発明の一実施形態によれば、顧客データを保護するマルチテナントデータセンターは複数のサーバコンピュータを含み、それの各々は高信頼プラットフォームモジュールで構成され、そして高信頼仮想化プラットフォームは、その上で顧客アプリケーションが実行される1つ以上のソフトウェア層と、サーバコンピュータに結合した永続的な記憶装置とを有し、そこでは、顧客仮想計算機のような、顧客アプリケーションを起動するためのファイルが格納され、ファイルは、暗号化された部分と、顧客及び顧客と関連付けたネットワークの位置を識別する平文部分とを含む。一実施形態において、高信頼仮想化プラットフォームは監査を実行して、高信頼仮想化プラットフォームに対するいかなる変更も顧客と関連付けたネットワークの位置に報告するようにプログラムされる。一旦いかなる変更も高信頼仮想化プラットフォームになされなかったことが確認されると、高信頼仮想化プラットフォームは、顧客アプリケーション、例えば顧客の仮想計算機を起動するためのファイルの暗号化された部分を解読するために、顧客と関連付けたネットワークの位置からキーを得ることができる。0008本発明の更なる実施形態は、限定されずに、処理ユニットが上記方法の1つ以上の態様を実施することを可能にする命令を含む非一時的コンピュータ可読の記憶媒体を含む。0014図1は、本発明の1つ以上の実施形態が実践されうるコンピュータシステム100の要素を例示する。コンピュータシステム100は、1つ以上のクラウド計算センタークラウドX130及びクラウドY170と、クラウド計算センターのユーザ又は顧客の計算装置ユーザ計算機110と、ユーザがクラウド計算センターにより提供された計算サービスに関する特定の責任を委任することができた高信頼第三者機関のサーバコンピュータ高信頼第三者機関サーバ112とを含む。図1に示される計算実体の間の通信はネットワーク120を通じて行われ、それはインターネットでもよい。00015クラウド計算センターは、コンピュータネットワーク、例えばインターネットを通じてそれらの顧客に要求あり次第共有ハードウェア資源、ソフトウェア、及び情報を提供する。図1に示される実施例において、クラウドX130は、ユーザAによってセットされた特定の機密保護ポリシーに従ってネットワーク120を通じてこのサービスをユーザAに提供している。機密保護ポリシーは、直接ユーザAによって、又はユーザAの高信頼第三者機関によって、例えば、高信頼第三者機関サーバ112を経由して実施することができる。高信頼第三者機関サーバ112は、機密保護ポリシーを実施する際に使われる、ユーザAのキーを含む、さまざまなユーザのためのキーを維持する。高信頼第三者機関サーバ112は、TPMと関連付けた証明書の形でいろいろなクラウド計算センターにインストールされた高信頼プラットフォームモジュールTPMの在庫管理も維持し、各証明書は、対応するTPMのエンドースメントキーペアEKの公開部分、及びそれが奉仕しているユーザの各々の監査トレイルを含む。在庫管理及び監査トレイルは、更に後述する機密保護チェックを実行するために用いる。0016クラウドX130は、その顧客に奉仕するために仮想計算機図示せずを実施し、そしてクラウドマネージャ137、仮想計算機管理サーバ140、複数の物理的なコンピュータ例えば、物理的なコンピュータ150、152、154、及び共有データ記憶装置160を含む。クラウドマネージャ137は、ユーザに提供されたクラウド計算資源を管理するように構成されたコンピュータであり、そしてネットワーク120に対するインタフェースを含む。ユーザ要求に応じて、又は管理人により促されて、クラウドマネージャ137は、仮想計算機管理サーバ140により行われる特定の動作、例えば仮想計算機の電源のオンとオフを発行できる。仮想計算機管理サーバ140は、仮想計算機管理動作、例えば、仮想計算機の電源のオンとオフ、仮想計算機を物理的なコンピュータ間で移行させること、仮想計算機の永続的な状態をデータ記憶装置間で移行させること、仮想計算機スナップショットを生成する/元に戻す/破壊すること、仮想計算機から装置を追加/除去すること、処理及びメモリ資源を仮想計算機に割り当てることなどを実行するように構成された計算装置である。これらの仮想計算機管理動作は、クラウドマネージャ137、ロードバランシング又はスケジューリングモジュールによって、あるいは管理人によって開始することができる。0017物理的なコンピュータは、仮想化ソフトウェア158及びハードウェア159を各々含み、そして1つ以上の共有データ記憶装置160を含む共有の永続的な記憶装置に連結されている。仮想化ソフトウェア158は、ハードウェア159の上にインストールされて、複数の仮想計算機実行空間をサポートし、それの各々の中で仮想計算機プロセスは対応する仮想計算機のインスタンスを生成するために実行されることができる。インスタンスを生成された仮想計算機の各々に対して、仮想化ソフトウェア158は、エミュレートされたハードウェア装置、例えば仮想プロセッサ、ゲスト物理メモリ、仮想ネットワークインターフェイスカード、仮想ディスクなどを含む対応する仮想ハードウェアプラットフォームを管理する。0018ハードウェア159は、TPM161及びコンピュータシステムの標準構成要素、例えば、プロセッサ図示せず、メモリ図示せず、データネットワーク131に接続しているネットワークインターフェイスカードNIC162、及び記憶ネットワーク132に接続しているディスクインタフェース163を含む。物理的なコンピュータ150、152、154の各々のための永続的な記憶装置は、共有データ記憶装置160により提供される。0019説明のために、図1に示す実施例で、物理的なコンピュータ150及び物理的なコンピュータ152のハードウェアはTPMを含むが、物理的なコンピュータ154のハードウェアはそうではない。TPMによって、高信頼仮想化プラットフォームTVPは物理的なコンピュータにおいて実施されることが可能である。物理的なコンピュータ150のTVPは図2に更に詳細に示される。0020図2を参照すると、物理的なコンピュータ150のTVP201は、前実行環境PXEブート画像202、仮想計算機カーネル203、及びアプリケーション204例えば、VM210の実行をサポートするためのいろいろなアプリケーションを含む。TVP201は、いかなる変更もそれにもたらすことからルート管理ユーザを締め出すように特別に構成されている。例えば、SSHアクセスは使用禁止である。加えて:1インプレース実行可能なアップグレードは許可されない。2ルートプログラムは、仮想計算機のゲスト物理メモリを検査するためにインストールすることができない。3管理人がモジュールをロードするか又は仮想計算機定義ファイルを操作することを可能にするAPI呼出しは提供されない。4仮想計算機で実行されるすべての管理人動作は、それらがモニタされることができるように、ユーザの高信頼第三者機関に報告書をトリガーする。0021上記の特性に加えて、TVP201は記憶及びネットワーク通信の保護を提供する。記憶保護は仮想計算機の仮想ディスクを暗号化することによって提供される。図2において、VM210の仮想ディスクはvmdk214として示され、そしてVM220の仮想ディスクはvmdk234として示される。各仮想ディスクは、VMの仮想ディスク毎にディスク画像又はその部分を各々含む1つ以上のデータファイル例えば、vmdk拡張を有するファイルを含む。仮想ディスク画像ファイルは、暗号化された形でデータ記憶装置160に格納されて、ネットワーク132を通じてホストバスアダプタHBA163、263のそれぞれの1つを通してアクセスされる。仮想計算機が仮想ディスクに格納したデータに作用できる入出力動作を実行する前に、暗号化キーを顧客又は顧客の高信頼第三者機関から得る必要がある。解読されたデータがメモリに格納されて、仮想計算機に利用可能となるが、管理人によってアクセスできないままであると認識しなければならない。加えて、顧客又は顧客の高信頼第三者機関によってTVP201に提供されたキー212は、メモリ211に格納されて、管理人によってアクセスできない。仮想ディスクに格納されたデータのインテグラリティはまた、キーの付いたハッシュ、別名MACメッセージ認証コードを使用してモニタされる。0022同じ顧客により所有されたVMの間のネットワーク通信の保護は、すべてのこの種の通信が暗号化されることを要求することにより提供される。暗号化キーは顧客又は顧客の高信頼第三者機関から得られる。TVP上で動作する仮想計算機、例えば、TVP221で動作するVM220は、顧客又は顧客の高信頼第三者機関から暗号化キーを得て、そして、ネットワーク131を通じてNIC262によって、VM210と暗号化メッセージの交換をすることによって、VM210と通信に携わることが可能である。一方で、VM210又はVM220とTVPで動作していない仮想計算機例えば、物理的なコンピュータ154で動作する仮想計算機、又は異なる顧客の仮想計算機の間のネットワーク通信は、この種の暗号化を被らない。一実施形態において、同じ顧客により所有されたVMの間の通信を保護するために用いる暗号化キーは、その顧客のすべてのアプリケーション又は動作に対して同じである。別の実施形態では、同じ顧客により所有されたVMの間の通信を保護するために用いられる暗号化キーは、その顧客の異なるアプリケーション又は動作に対して異なる。0023更なる実施形態において、機密保護要件に応じて、TVP201は、機器として動作する機密保護サービスを無効にする/制限するか、又は修正する必要があり得る。加えて、TVP201に提供されたキーはリース期間を有して構成できる。一実施形態において、リース期間は顧客のポリシーで規定されて、リース期間が期限切れになるときに、リース期間を有して構成されたキーはメモリから自動的に除去される。0024図3は、TPMがどのようにTVPの静的特性を測定するために用いられるかについて示す概念図である。TVPの静的特性測定値は、TVPがいかなる形であれ高信頼バージョンから変更されなかったことを確実にする。静的特性測定値は、TPMのPCRプラットフォーム構成レジスタのうちの1つ、例えばPCR316―1に格納される。図3において、TPM161はN個のPCRを有することを示す。ソフトウェア層がTVPに加えられるたびに、チェックサムはそのソフトウェア層に対して計算されて、PCRに拡張される。拡張動作は、計算されたチェックサムを以前に計算されてPCRに格納されたハッシュ値に連結して、連結された値の新しいハッシュを生成する。新しく生成されたハッシュ値は、同じPCRにまた格納される。任意のステップである最終ステップとして、イベントログ317はPCRに拡張される。メモリに維持されたイベントログ317のエントリは、それらがTVPに加えられた順序で、ソフトウェア層、それらのバージョン番号、及び対応するPCRを識別する。イベントログ317の最後のエントリは、イベントログのためであり、そしてイベントログに対応するPCRを識別する。PCRに格納された値のいずれも期待値に一致しないときに、その高信頼バージョンからのTVPの変更は検出される。代わりの実施形態では、新しく生成されたハッシュ値はいろいろなPCRに格納されることができて、イベントログ3171は静的特性測定値とPCRの間の対応を示す。0025図4は、本発明の1つ以上の実施形態による仮想計算機の電源を入れる方法を例示するフロー図である。ステップ410で、ユーザは、彼又は彼女の仮想計算機の電源を入れる要求をクラウドマネージャに送信し、その人は要求に応じて仮想計算機管理サーバに渡す。ステップ412で、仮想計算機がTVP上で動作することが決定される場合は、方法はステップ416へ進む。一方で、TVPが要求されない場合は、仮想計算機はステップ414で通常電源を入れられる。0026ステップ416で、TVPは、記憶装置から要求された仮想計算機に対応するVM構成ファイルを検索する。VM構成ファイルは、暗号化された構成情報を提供して、顧客ID及び顧客又はユーザあるいは顧客の高信頼第三者機関以下、キープロバイダと称するのドメイン名を含む平文部分を含む。ステップ418で、TVPは、キープロバイダとの機密保護関係例えば、SSL暗号化セッションを構築する。このステップは、最初に、キープロバイダのためのSSL証明書を得ること、そしてその次に、SSL証明書が適当な認証機関により承認されたことを確認することを含む。ステップ420で、TVPは、仮想計算機の電源を入れるために必要な1つ以上のキーをキープロバイダに要求する。キーによって、TVPはVM構成ファイル及び関連するデータファイルの剰余、例えば、仮想計算機の仮想ディスクを解読できる。この要求の一部として、それは顧客IDも送る。ステップ422で要求を受け取ると、キープロバイダは、認証のために使われるAIK認証識別キーを起動する。AIKがない場合は、キープロバイダはTVPから1つを要求し、それに応答して、TVPのTPMはAIKの公開及び私用の部分を生成する。TVPは、それからAIKの公開部分をEKの公開部分に結合させ、キープロバイダに結合したキーを送る。AIK起動ステップの一部として、キープロバイダは、AIKの公開部分を検索して、更にその在庫管理を点検して、AIKの公開部分に結合されたEKの公開部分が顧客のクラウドプロバイダの在庫管理の一部であることを確認する。0027AIKの起動の後、ステップ424で、キープロバイダはTPMのPCRの引用符をTVPに要求する。キープロバイダはまたランダムなノンスを生成して、ステップ424で要求を付したランダムなノンスを送信する。TVPはPCRの引用符及びランダムなノンスの要求を受信し、そしてステップ426で、TPMはPCRの引用符を生成して、AIKの私用部分を用いてランダムなノンスとともにPCRの引用符を暗号化する。PCRの引用符及びランダムなノンスは、ステップ428でキープロバイダに送信される。ランダムなノンスの交換がリプレーアタックから保護することを認識しなければならない。0028ステップ430で、キープロバイダは、PCRの引用符を確認するステップを実行する。このステップは、AIKの公開部分を使用してTVPから受け取ったデータを解読すること、予想されるPCR値に対してPCRの引用符に含まれるPCR値を比較すること、解読されたランダムなノンスをステップ424で送られたランダムなノンスと比較することを含む。ステップ432で、これらのチェックの全てが合格したと決定される場合は、キープロバイダはステップ434でキーを送信し、そしてTVPは、VM構成ファイルを読取るためにキーを使用して、ステップ436で仮想計算機の電源を入れる。一方で、チェックのいずれかが失敗した場合は、キープロバイダはステップ438でエラーメッセージを送信して、TVPによって試みられる仮想計算機の電源投入は不成功であるステップ440。0029仮想計算機の電源が入れられた後でさえ、TVPは、特定の管理動作が仮想計算機において実行されることを可能にするだけである。図5は、本発明の1つ以上の実施形態による、TVP上で動作する仮想計算機において実行される管理動作を処理する方法を例示するフロー図である。管理動作は、仮想計算機の電源遮断、物理的なコンピュータ間で仮想計算機を移行させること、仮想計算機スナップショットを生成する/元に戻す/破壊すること、仮想計算機から装置を追加/除去すること、及び処理及びメモリ資源を仮想計算機に割り当てることを含む。0030ステップ510で、クラウドマネージャ、仮想計算機管理サーバ、又は管理人は、仮想計算機の管理動作を開始する。特定の管理動作は仮想計算機の機密保護を危うくしない、それで、それらはステップ514で通常の方法で処理される。ステップ512で、ステップ510で開始された管理動作が機密保護関連事項を有し、従って制限された動作であると決定される場合は、TVPは、ステップ516で管理動作を行う許可をキープロバイダに要求する。キープロバイダは、ステップ518でこの要求を受け取って、ステップ520で、要求された管理動作が顧客のポリシーにより許可されるか否か決定する。それが許可される場合は、要求された管理動作を実行するためのキーはステップ522でTVPに送られて、TVPはステップ528で仮想計算機の管理動作を実行する。それが許可されない場合は、要求の拒否を示すメッセージがステップ522でTVPに送られる。0031キープロバイダが仮想計算機で実行される管理動作のトレイルを監査できるように、ステップ530はTVPにおいて実施される。一実施形態において、ステップ514及びステップ524が実施された後に、仮想計算機で実行された管理動作はステップ530でキープロバイダに報告される。別の実施形態では、報告されるステップ514又はステップ524において実行された管理動作のタイプは、顧客の機密保護ポリシーに規定される。ステップ532で、キープロバイダは、報告された動作を格納して、ステップ534で、仮想計算機の機密保護を危うくするかもしれないいかなる動作に対してもそれをモニタする。ありうる機密保護侵害がステップ536で検出される場合は、仮想計算機の電源を切るか、あるいは顧客によって、又は顧客のポリシーに従って予め設定され得るいくつかの他の改善動作を実行する要求は、ステップ538で送られる。実施例は、顧客に送られるか、又はVMを顧客の私用クラウド、すなわち、顧客自身のデータセンターに移行する警報を含むことができる。ステップ540で、仮想計算機は電源を切られるか、あるいは何か他の是正措置は、顧客によって予め設定されるように、又は顧客のポリシーに従って取られる。ありうる機密保護侵害がステップ536で検出されない場合は、フローはステップ534に戻り、そして監査トレイルはモニタされ続けられる。0032一つの実施例として、仮想計算機管理サーバ140内で動作するロードバランシングモジュールが、物理的なコンピュータ150で動作する仮想計算機の目標物理的なコンピュータへの移行を推奨している場合は、図5に記載されている方法はこの管理動作のためのキーを得るために実施されるだろう。目標物理的なコンピュータが物理的なコンピュータ154である場合は、物理的なコンピュータ154がTVPを動作させないので、要求は拒否される。一方で、目標物理的なコンピュータが物理的なコンピュータ152である場合は、要求は、物理的なコンピュータ152のTPMのPCRの引用符を確認した後に、そして物理的なコンピュータ152のTPMがクラウドX130内のTPMの在庫管理で見つかることを確認した後に与えられる。TVPに送信されるキーは、ネットワークを通じて物理的なコンピュータ150から物理的なコンピュータ152へ動作している仮想計算機のメモリ状態を確実に送信するためのキー、VM構成ファイルを解読するためのキー、及びVMの仮想ディスクを解読するためのキーを含む。代替実施形態では、動作している仮想計算機のメモリ状態が移行した後に、物理的なコンピュータ152のTVPは、図4に関連して記載した方法に従って物理的なコンピュータ152の仮想計算機の電源を入れるためにキーを求めてキープロバイダに連絡する。0033図5に図示される、TVP上で動作する仮想計算機で実行される管理動作を処理する方法の実施例において、制限された管理動作が行われた後に、監査トレイルメッセージは送られる。本発明の他の実施形態において、管理動作がステップ512の制限された動作であると決定された後に、そしてこの種の管理動作が実際に行われる前に、例えば、ステップ512と516の間に、監査トレイルメッセージは送られる。0034管理人又はサポートエンジニアが特定の種類の問題をデバッグすることを可能にするために、新しいシェルモードをTVPに含ませてもよい。この新しいシェルモードは、物理的なコンピュータ及びそこにおいて動作するハイパーバイザへのシェルアクセスを与えるが、TVPがすべてのメモリ及び記憶をスクラブした後にのみであり、それは顧客データを潜在的に漏らす可能性がある。スクラブした後に、PCRの引用符が、サポートシェルが物理的なコンピュータで開始されたという事実を反映するように、TVPによって、TPMは、TVPのハッシュが記録されたPCRの中へ入るためにシェルのバイナリコードのハッシュを拡張する。この後、仮想計算機は、リブートプロセスを行わずにこの物理的計算機で再開されることができない。複数の仮想計算機がTVP上で動作している場合は、いずれか1つの仮想計算機のポリシーもサポートシェルを許可しない場合、それは許可されない。0035本発明の別の実施形態において、高信頼ソフトウェアスタックは高信頼仮想化プラットフォームではないが、通常のユーザアプリケーションを実行できる高信頼プラットフォームである。このような実施形態では、高信頼ソフトウェアスタックは、仮想計算機カーネルの代わりにオペレーティングシステムカーネルを含み、そして暗号化されるデータ記憶装置160に格納されるファイルは、アプリケーションのための構成ファイル及びアプリケーションにより作成されて修正されるファイルを含む。0036図1に示される本発明の実施形態は、遠隔認証を実行するためのモジュールとしてTPMを含むが、本発明の他の実施形態がいろいろなモジュールを使用して遠隔認証機能を提供できることを認識しなければならない。更にまた、代替の実施形態で、キープロバイダは、制限された管理動作を実行するためのキーをあらゆるサーバに送る前に、目標サーバの公開キーを使用してキーを暗号化する。暗号化されたキーは、公開キーと関連付けた私用キー、すなわち、目標サーバの私用キーによってだけ解読することができて、その結果、他のサーバが暗号化されたキーを横取りする場合は、それを解読することができない。更に、高信頼プラットフォームの現在の静的特性が高信頼プラットフォームの前に測定されて記録された静的特性にマッチしないように、目標サーバの高信頼プラットフォームが変化した場合は、暗号化されたキーはその私用キーを使用する目標サーバによってさえも解読することができない。0037本発明の更なる実施形態それは遠隔認証を実行するためのモジュールとしてTPMを用いる本発明の実施形態の拡張であるにおいて、VMで制限された管理動作を実行するための1つ以上のキーは、キープロバイダからサーバが受け取った時に暗号化されて、暗号化されたキーはキープロバイダへ送り返される。サーバが後で制限された管理動作を実行するためにキーのうちの1つを必要とする場合は、キープロバイダは、サーバ上で遠隔認証を実行して、サーバの高信頼プラットフォームが変化しなかったことを確認した後に、暗号化されたキーをサーバに送信する。このように制限された管理動作を実行するためのキーの暗号化がキーのための機密保護の別の層を提供すると認識しなければならない。0038本願明細書に記載されているさまざまな実施形態は、コンピュータシステムに格納されたデータを含むさまざまなコンピュータ実行動作を用いることができる。例えば、これらの動作は、通常、しかし必然的にではなく、電気又は磁気信号という形をとる物理的な量の物理的操作を必要とすることがあり、そこではそれら、又はそれらの表現が格納され、移され、結合され、比較されるか、又は操作できる。更に、この種の操作は、生成、識別、決定、又は比較のような用語でしばしば呼ばれる。本発明の1つ以上の実施形態の一部を形成する本願明細書に記載のいかなる動作も、有用な計算機動作であり得る。加えて、本発明の1つ以上の実施形態は、これらの動作を実行する装置又は器具にも関する。器具は特定の必要な目的のために特別に構成されることができるか、あるいは、それはコンピュータに格納されたコンピュータプログラムによって選択的に作動するか又は構成される多目的コンピュータでもよい。特に、さまざまな多目的計算機が、ここに提供されている説明によって記述されるコンピュータプログラムとともに用いられることが可能であるか、又は、必要な動作を実行するためにより専門の器具を構成することがより便利であり得る。0039本願明細書に記載されているさまざまな実施形態は、携帯用装置、マイクロプロセッサシステム、マイクロプロセッサベースであるかプログラム可能な家電、ミニコンピュータ、メインフレームコンピュータなどを含む、他のコンピュータシステム構成によって実践できる。0040本発明の1つ以上の実施形態は、1つ以上のコンピュータプログラムとして、又は1つ以上の計算機可読の媒体で実現される1つ以上のコンピュータプログラムモジュールとして実施することができる。用語計算機可読の媒体は、その後でコンピュータシステムに入力できるデータを格納できるあらゆるデータ記憶装置を指し、計算機可読の媒体は、コンピュータプログラムをそれらがコンピュータによって読み取られることを可能にする方法で実現するためにいかなる既存又はその後に開発された技術にも基づいてもよい。計算機可読の媒体の例は、ハードディスク、ネットワーク接続ストレージNAS、読出し専用メモリ、ランダムアクセスメモリ例えば、フラッシュメモリ装置、CD―ROMコンパクトディスク―ROM、CD―R、又はCD―RW、DVDデジタル多用途ディスク、磁気テープ、並びに他の光学及び非光学データ記憶装置を含む。計算機可読のコードが分散方法で格納されて、実行されるように、計算機可読の媒体はネットワーク結合コンピュータシステムにわたって分散することもできる。0041本発明の1つ以上の実施形態が、明確に理解するために少し詳細に説明されたけれども、特定の改変と変更態様が請求の範囲内で行われうることは明らかである。したがって、記載されている実施形態は例示的であり、且つ限定的ではないと考えるべきであり、そして請求の範囲は本願明細書に与えられた細部に限定されるべきではなくて、請求の範囲及び相当物の中で変更することができる。請求項において、要素及び/又はステップは、請求項で明確に述べられない限り、動作のいかなる特定の順序も意味しない。0042複数の例は、単一の例として本願明細書に記載されている構成要素、動作、又は構造のために提供されることができる。最後に、さまざまな構成要素、動作、及びデータ記憶装置の間の境界はいくぶん任意であり、そして特定の動作は特定の例示的構成との関係において示される。機能の他の配分が構想されて、本発明の範囲内に納まることができる。一般に、例示的な構成において、別々の構成要素として提示される構造及び機能は、複合構造又は構成要素として実施できる。同様に、単一の構成要素として提示される構造及び機能は別々の構成要素として実施できる。これらの、そして他の変形、変更態様、追加、及び改善は、添付の請求の範囲に納まることができる。