(57)【要約】      （修正有）【課題】ハードウェアセキュリティモジュールなどの装置をサービスとして提供する。【解決手段】環境１００において、コンピュータ資源プロバイダ１０２の顧客１０４は、コンピュータ資源プロバイダによってホストされる顧客のネットワークに装置１０８の追加を要求できる。コンピュータ資源プロバイダは、あたかも装置が顧客自身のネットワーク内にいるかのように顧客の装置がその装置と通信できるようにコンピュータ資源のセットを再構成する。【選択図】図１
2019023908.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータ実行方法であって、
第１のネットワークの上で、ハードウェアセキュリティモジュールについての第１の要求をコンピュータ資源サービスプロバイダによって管理される複数のハードウェアセキュリティモジュールから取得することと、
前記第１の要求に含まれるパラメータに少なくとも一部基づいて、前記コンピュータ資源サービスプロバイダに、前記複数のハードウェアセキュリティモジュールの前記ハードウェアセキュリティモジュールを第２のネットワークに接続させることと、
前記第１のネットワークにて第２の要求を、前記第２のネットワークの前記ハードウェアセキュリティモジュールにルーティングすることと
を備えるコンピュータ実行方法。
【請求項２】
前記第１のネットワークは、前記第２のネットワークを実装するコンピュータ資源サービスプロバイダの顧客に関連付けられる構内ネットワークである、請求項１のコンピュータ実行方法。
【請求項３】
前記ハードウェアセキュリティモジュールを識別した結果、前記第２のネットワークは、仮想ネットワークを前記ハードウェアセキュリティモジュールに関連付けるように実装する、請求項１のコンピュータ実行方法。
【請求項４】
前記第１のネットワークの上のデバイスによって、暗号要求を生成することと、
前記暗号要求を提示して、前記第２のネットワークに、前記暗号要求を識別された前記ハードウェアセキュリティモジュールに前記仮想ネットワークを介してルーティングさせることと、
前記暗号要求の結果を前記デバイスにルーティングすることと
をさらに備える、請求項３のコンピュータ実行方法。
【請求項５】
前記パラメータは、前記ハードウェアセキュリティモジュールに関連付けられる認証情報を含む、請求項１のコンピュータ実行方法。
【請求項６】
前記第１のネットワークの上の前記ハードウェアセキュリティモジュールを前記第１のネットワークのローカルデバイスとして示すことをさらに備える、請求項１のコンピュータ実行方法。
【請求項７】
システムであって、
命令を格納するメモリを備え、
前記命令は、前記システムの１または複数のプロセッサによって実行されると、前記システムに、
第１のネットワークの上で、ハードウェアセキュリティモジュールについての第１の要求をコンピュータ資源サービスプロバイダによって管理される複数のハードウェアセキュリティモジュールから取得させ、
前記第１の要求に含まれるパラメータに少なくとも一部基づいて、前記コンピュータ資源サービスプロバイダに、前記複数のハードウェアセキュリティモジュールの前記ハードウェアセキュリティモジュールを第２のネットワークに接続させ、
前記第１のネットワークにて第２の要求を、前記第２のネットワークの前記ハードウェアセキュリティモジュールにルーティングさせる、
システム。
【請求項８】
前記命令は、実行されると、前記システムにさらに、
前記第２のネットワークに、識別された前記ハードウェアセキュリティモジュールに関連付けるために仮想ネットワークを追加させ、
前記仮想ネットワークを前記第１のネットワークの上のネットワークインターフェースに関連付けさせ、
暗号要求を識別された前記ハードウェアセキュリティモジュールに前記ネットワークインターフェースを介してルーティングさせる、
請求項７のシステム。
【請求項９】
前記第１の要求は、前記第２のネットワークを介して提供されたアプリケーションプログラミングインターフェース（ＡＰＩ）へのＡＰＩコールである、請求項７のシステム。
【請求項１０】
前記ハードウェアセキュリティモジュールは、前記第２のネットワークの複数のハードウェアセキュリティモジュールから識別される、請求項７のシステム。
【請求項１１】
前記第２の要求は、前記第１のネットワークの前記ハードウェアセキュリティモジュールによって行われることになる暗号操作に関連付けられる、請求項７のシステム。
【請求項１２】
前記ハードウェアセキュリティモジュールは、前記第２のネットワークの上の他のデバイスへのアクセス困難なやり方で、前記第１のネットワークの上のデバイスの代わりに、暗号情報を格納する、請求項７のシステム。
【請求項１３】
集合的に格納された命令を有する、１または複数のコンピュータ可読記憶媒体であって、前記命令は、コンピュータシステムの１または複数のプロセッサによって実行されると、前記コンピュータシステムに、
第１のネットワークの上で、ハードウェアセキュリティモジュールについての第１の要求をコンピュータ資源サービスプロバイダによって管理される複数のハードウェアセキュリティモジュールから取得させ、
前記第１の要求に含まれるパラメータに少なくとも一部基づいて、前記コンピュータ資源サービスプロバイダに、前記複数のハードウェアセキュリティモジュールの前記ハードウェアセキュリティモジュールを第２のネットワークに接続させ、
前記第１のネットワークにて第２の要求を、前記第２のネットワークの前記ハードウェアセキュリティモジュールにルーティングさせる、
１または複数のコンピュータ可読記憶媒体。
【請求項１４】
前記命令は、実行されると、前記コンピュータシステムに、前記ハードウェアセキュリティモジュールへの接続を前記第１のネットワークにさせることを可能にするネットワークインターフェースを生成させる、請求項１３の１または複数のコンピュータ可読記憶媒体。
【請求項１５】
前記第１のネットワークは、前記第２のネットワークから離れている物理ネットワークである、請求項１３の１または複数のコンピュータ可読記憶媒体。
【請求項１６】
前記第２のネットワークは、前記第１のネットワークによる排他的な使用のために前記ハードウェアセキュリティモジュールを識別する、請求項１３の１または複数のコンピュータ可読記憶媒体。
【請求項１７】
前記第２のネットワークは、コンピュータ資源サービスプロバイダによってホストされ、かつ前記第１のネットワークに関連付けられるデバイスによって管理される、請求項１３の１または複数のコンピュータ可読記憶媒体。
【請求項１８】
前記第２のネットワークは、前記デバイスによって指定されたネットワークアドレスを含む、請求項１７の１または複数のコンピュータ可読記憶媒体。
【請求項１９】
前記第２の要求は、前記第１のネットワークの上の第１のネットワークアドレスと前記ハードウェアセキュリティモジュールの第２のネットワークアドレスとの間のネットワークアドレス変換を介して前記ハードウェアセキュリティモジュールにルーティングされる、請求項１３の１または複数のコンピュータ可読記憶媒体。
【請求項２０】
前記第１の要求は、前記第２のネットワークを実装するコンピュータ資源サービスプロバイダのインターフェースへのウェブサービスコールである、請求項１３の１または複数のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【背景技術】
【０００１】
本出願は、参照することによってその内容が全体として本願に組み込まれる、2013年3月14日に「サービスとしての装置の提供」という名称として出願された米国特許出願第13/830,114号に対する優先権の利益を主張する。
【０００２】
分散配置されたコンピュータシステムは多数のタイプのサービスを提供する効果的な方法を増加させている。しかしながら、分散配置されたコンピュータシステムの複雑さと遍在は増加しているので、データの安全性を維持することは、より努力を必要とするものになっている。少なくとも観察された限りでは、安全性の脆弱性の取り扱いに対する定常的な努力が存在する。コンピュータシステムとそれらの使用の進展、及びそこでの危険の度合いが増加する速度は、努力の必要性を激化させる。同時に多くの文脈の中でデータの安全性は非常に重要である。多くの人々が、相対的に稀な状況を除いて、例えば内密に保たれることを意図されたデータを備えた会社を信用している。従って、安全性の欠陥は、安全性の欠陥によって引き起こされるシステムの機能不全に起因するビジネスの無能力に対し、信用と善意の喪失から、組織の運営に有害な影響を与えうる。
【０００３】
長年に渉り、データの安全性に対して増加し続ける脅威に対応するために、多くの戦略が開発されてきた。例えばデータの暗号化は、データに対する認可されていないアクセスを防ぐ効果的な方法として提供できる。結果として、暗号キーのような暗号情報を安全に保管することが開発されてきた。それらの装置はしばしば種々の目的に対して良く機能したが、それらの装置を種々のインフラストラクチャ戦略に統合することは、多くの挑戦を示すことができる。その上それらの装置はしばしば大きな投資を必要とし、それは多くの組織に対する障害であり得る。
【図面の簡単な説明】
【０００４】
本開示に基づく種々の実施形態は、図によって参照され、記載される。
【図１】本開示の種々の実施形態が実施されうる環境の図示的実施例を示す。
【図２】少なくとも１つの実施形態に従ってハードウェア安全モジュールがサービスとして提供されうる環境の図示的実施例を示す。
【図３】少なくとも１つの実施形態に従ってサービスとしてのハードウェア安全モジュールの使用を提供する方法を説明する図の図示的実施例を示す。
【図４】少なくとも１つの実施形態に従ってハードウェア安全モジュールがサービスとして提供されうる方法を説明する図の例示的実施例を示す。
【図５】少なくとも１つの実施形態に従ってハードウェア安全モジュールが冗長性を備えて提供されうる方法の例示的実施例を示す。
【図６】少なくとも１つの実施形態に従ってハードウェア安全モジュールに対する要求を処理するためのプロセスの例示的実施例を示す。
【図７】少なくとも１つの実施形態に従ってハードウェア安全モジュールの使用を提供するサービスを使用するためのプロセスの例示的実施例を示す。
【図８】種々の実施形態が実行できる環境を図示する。
【発明を実施するための形態】
【０００５】
下の説明の中に、種々の実施形態が記述されている。説明のために特定の構成と詳細が、実施形態を通じての理解を提供するために記載される。しかし、実施形態が特別な詳細なしに実施されることは、当業者には自明である。さらに記述された実施形態を分かりにくくしないために、よく知られた事象は省略または単純化されている。
【０００６】
本開示の実施形態は、サービスとしての装置の使用の提供に関連する。幾つかの実施例では、装置はハードウェア安全モジュール（ＨＳＭ：hardware security module）であり、ＨＳＭは、顧客により遠隔で管理され操作される種々のコンピュータ資源を遠隔でホストするコンピュータ資源プロバイダによってサービスとして顧客に提供され、その実施例は後述される。コンピュータ資源プロバイダの顧客は、例えばコンピュータ資源プロバイダがホストしたバーチャルローカルエリアネットワーク（ＶＬＡＮ）などのプライベートネットワークを維持するためにコンピュータ資源のサービスを使用することができる。ＶＬＡＮは、例えば、コンピュータ資源プロバイダにより操作されうるインフラストラクチャによって支援される。
【０００７】
インターネットプロトコルセキュリティ（ＩＰｓｅｃ）トンネルを通じたバーチャルプライベートネットワーク接続などの安全な接続は、顧客の構内でホストされたネットワークに、遠隔でホストされたネットワークを接続してもよい。遠隔でホストされたネットワークへの、およびそこからのトラフィックは、コンピュータ資源プロバイダによって管理され、顧客の構内の装置の視点からの、遠隔でホストされたネットワークの装置との通信が、あたかも遠隔でホストされたネットワークの装置が、顧客の構内のネットワークに置かれた装置であるかのように起こる。例えば、遠隔でホストされたネットワークの中の装置への通信は、顧客により管理されるネットワークアドレス（例えば、顧客により管理されるネットワークのサブネットにおけるネットワークアドレス）のスペースの中でアドレス指定するために顧客装置によりアドレス指定されるかも知れない。コンピュータ資源プロバイダは、適切な宛先に対する自身のネットワークを介したネットワーク通信を経路制御するために、ネットワークアドレス変換（ＮＡＴ）などの様々な技術を用いることができる。
【０００８】
本開示の様々な実施形態に於いて、顧客は遠隔でホストされたネットワークを管理する目的で、コンピュータ資源プロバイダ（例えば、コンピュータ資源プロバイダが操作する適切なシステムを通して）と相互作用できる。顧客は例えば、１または複数の装置を遠隔でホストされたネットワークに追加するために、１または複数の装置を遠隔でホストされたネットワークから除去するために、遠隔でホストされたネットワークのトポロジーを再構築するために、および他の目的のために、コンピュータ資源プロバイダに電子的な要求を提出することができる。要求は例えば、種々のウェブサーバ技術を使用しうる、適切に構築されたアプリケーションプログラミングインターフェース（ＡＰＩ）コールを通じて発生しうる。コンピュータ資源プロバイダは、要求を処理して、もしそれが適切であれば、要求に従って顧客のネットワークを再構築することができる。
【０００９】
幾つかの実施形態では、顧客は、１または複数のＨＳＭを遠隔でホストされたネットワークに加えるために、コンピュータ資源プロバイダと相互作用することができる。ＨＳＭが顧客のネットワークに追加されるための要求を処理するために、コンピュータ資源プロバイダは、適切なＨＳＭを使用可能なＨＳＭのセットから選択し、ＨＳＭを顧客に割り当てる、例えば、ＨＳＭが特定の顧客に割り当てられる間、ＨＳＭが他の顧客のために割り当てられることを防ぐように、データストアの中で顧客に対するＨＳＭの割り当てをマークすることができる。コンピュータ資源プロバイダは、ＨＳＭのためにＶＬＡＮなどのネットワーク（サービスネットワーク）を構成し、及び顧客の遠隔でホストされたネットワークの中のサービスネットワークに対しネットワークインターフェースを追加することができる。サービスネットワークに対するネットワークインターフェースは、顧客のＩＰ空間にアドレスを持つことができ、そして顧客はＨＳＭに対してＨＳＭが、顧客自身のネットワークの中にあるかのように通信できる。顧客は１または複数のＨＳＭクライエントを顧客の構内ネットワークの中、構外ネットワークの中、またはその両方で構成することができる。この処理は、例えば、可用性を増加させるため、またはレイテンシー（待ち時間）を減少させるためなど、複数のＨＳＭの顧客の使用を提供するために繰り返されることができる。
【００１０】
種々の技術を顧客のデータセキュリティの強化のために採用することができる。例えば、ある実施例では、ＨＳＭは少なくとも２つの管理インターフェースを有する。第１の管理インターフェースは、恒久的に（即ち変更不能に）ＨＳＭに保管された何らかの暗号情報を削除するなどの種々の管理機能を実行するためにコンピュータ資源プロバイダによって用いられうる。第１の管理インターフェースを通じた他の管理機能は、幾つかの実施形態では、第２の管理インターフェースへのアクセスを有するアカウントを作ることである。第１の管理インターフェースにアクセスできるアカウントは、恒久的に暗号情報を削除できる能力のような特権を第２の管理インターフェースにアクセスできる１または複数のアカウントと共有することができる。しかし、第１の管理インターフェースにアクセスできるアカウントは、幾つかの異なるアクセス権を有している。例えば、幾つかの実施形態では、第１の管理インターフェースは、ＨＳＭによって保管される暗号情報にはアクセスできない。しかし、第２の管理インターフェースは、安全オフィサーアカウントを作る能力のような追加の管理能力を持つことができる。安全オフィサーアカウントは、ＨＳＭのパーティションを作る及び／または削除する能力を持つことができ、クライエントを作り、及びＨＳＭに暗号操作を実行させることができる。
【００１１】
コンピュータ資源プロバイダがＨＳＭの中に保管された顧客の暗号情報へのアクセスを有しないことを顧客に対して保証するために、コンピュータ資源プロバイダは、ＨＳＭ暗号情報にアクセスできる制御権を顧客に与える方法でＨＳＭへのアクセス権を顧客に提供することができる。例えば、コンピュータ資源プロバイダは、第１の管理インターフェースを用いて、第２の管理インターフェースにアクセスできるアカウントを作ることができる。作られたアカウントに対する認証情報は、認証情報を変える（例えば、パスワードを変更する）ために認証情報を用いることができる顧客に対して提供されることができ、その結果、コンピュータ資源プロバイダから第２の管理インターフェースへのアクセスを取り除く。顧客は、第２の管理インターフェースを用いて、コンピュータ資源プロバイダがＨＳＭによって保管された暗号情報へアクセスすることができないようにＨＳＭを秘密に構成することができる。更なる詳細と形状は下に詳細に記載する。
【００１２】
図１は、本開示の種々の実施形態が実施されうる環境１００の例示的実施例を示す。この実施例では、環境１００は、コンピュータ資源プロバイダ１０２、及びコンピュータ資源プロバイダの顧客１０４を含んでいる。コンピュータ資源プロバイダ１０２は、１または複数の顧客に代わり、種々のコンピュータ資源をホストする組織でもよい。例えば、コンピュータ資源プロバイダは、ハードウェアサーバ、データ保管装置、ネットワーク装置、ここで議論する他の装置及びサーバラック、ネットワークケーブルなどの他の機器などの様々なコンピュータハードウェア資源をホストするために用いられる１または複数の施設を運用することができる。コンピュータ資源ハードウェアは、１または複数のサービスを運営するために、そのコンピュータハードウェア資源を使用することができる。それらのサービスは、顧客の操作を支援するために、顧客の物理的な機器への投資の必要性を減少または削除しながら、コンピュータ資源プロバイダの顧客に遠隔でコンピュータ資源を管理させるサービスを含むことができる。実施例のサービスは、種々のデータ保管サービス（オブジェクトベースデータ保管サービス、保存データ保管サービス、データベースサービス等）、プログラム実行サービス、及び他のサービスを含んでいるがそれだけに限らない。サービスは、ウェブサイトの運営、組織を支援する企業システムの運営、分散型コンピュータ及び／または他の活動などの広い種々の活動を支援するのに顧客によって用いられるかも知れない。
【００１３】
上述したように、コンピュータ資源プロバイダは、そのコンピュータハードウェア資源を使用して、サービスとしての１または複数のハードウェアセキュリティモジュール（ＨＳＭ）の使用を顧客に提供することができる。ＨＳＭは、不正な情報開示から、情報（例えば、暗号キー）を保護し、保護された情報を用いて操作を実行するために貢献するハードウェア装置（例えば、ハードウェア器具）である。ＨＳＭは、プラグインカード（コンピュータ装置の回路に挿入するように構成されている）、またはコンピュータ装置に接続できるまたはネットワークを介してアクセス可能でありうる外部のＴＣＰ／ＩＰセキュリティ装置、などの種々の方法で実行されうる。ＨＳＭは、暗号化、暗号解読、または電子署名発生などの、１または複数の種類の暗号操作を実行するために用いられうる暗号キーを格納することができる。ＨＳＭは、改竄やバスプロービングを防止するための１または複数の安全暗号化プロセッサチップを使用することができる。さらにＨＳＭは１または複数の安全基準に適合するように構成されうる。ある実施例では、ＨＳＭは、ここに参照として組み込まれるＦＩＰＳ出版物１４０−２の安全レベル（例えばレベル１、レベル２、レベル３、またはレベル４）のような、１または複数の国立国家標準・技術研究所（ＮＩＳＴ‘ｓ）連邦情報処理標準（ＦＩＰＳ）に適合するように構成される。
【００１４】
本開示は、例示的な実施例を提供する時のＨＳＭを用いる一方、本開示の技術は一般的に安全モジュール（暗号化モジュールとも呼ぶ）に適応可能であることに留意するべきである。例えば、多くの安全モジュール（例えばＨＳＭ）は特定化された暗号化プロセッサ、及び／または他のハードウェアを用いるとしても、１または複数の上記の特徴は、ソフトウェアを用いて実行されることができる。例えば、安全モジュールは、商品ハードウェアを用いて、ＦＩＰＳ出版物１４０−２の１または複数のレベルに適応するように作られているかも知れず、しばしば商用ＨＳＭに見られるような特別なハードウェアの代わりに、ソフトウェアで適切に構成されている。
【００１５】
図１に示された環境１００の中で、コンピュータ資源プロバイダ１０２は、顧客１０４の代わりにプロバイダホスト顧客ネットワーク１０６をホストする。プロバイダホスト顧客ネットワーク１０６は、顧客１０４によって管理されるコンピュータ装置ネットワークであってよい。プロバイダホスト顧客ネットワーク１０６は、コンピュータ資源プロバイダ１０４の装置の物理的なネットワークで実行される仮想ネットワークであってよく、それはコンピュータ資源プロバイダ１０２の他の顧客のための仮想装置及び／または仮想ネットワーク（図示せず）を実行するかも知れない。適切なプロバイダホスト顧客ネットワークは、しばしばバーチャルプライベートクラウド（ＶＰＣ）と呼ばれる。通常、プロバイダホスト顧客ネットワークは限定的で、構成可能及び／またはそうでなければコンピュータ資源プロバイダ１０２に対する適切に構成されたアプリケーションプログラムインターフェース（ＡＰＩ）コールを介して顧客により管理可能である。プロバイダホスト顧客ネットワークは、例えば顧客が自身のデータセンタの中で操作している従来のネットワークに酷似した仮想ネットワークトポロジーを有するように顧客１０４により構成されてもよい。コンピュータ資源プロバイダ１０２は、互いに他と隔離されるようにプロバイダホスト顧客ネットワークを実行することができる。例えば、顧客のプロバイダホスト顧客ネットワークは、ネットワークの中の装置は通信可能でない、またはそうでなければ、顧客がそのようなアクセスを許可するように構成していない限り、コンピュータ資源プロバイダの他の顧客にアクセス可能でないように実装されているかもしれない。
【００１６】
注記として、顧客１０４はプロバイダホスト顧客ネットワークを種々の方法で構成することができる。例えば顧客は、（コンピュータ資源プロバイダ１０２によって割り当てられたＩＰアドレスの代わりに）顧客自身のＩＰアドレス範囲から、装置にＩＰアドレスを割り当て、１または複数のサブネットを作り、ルーチンテーブルを構成し、ネットワークゲートウェイを構成し、及び／またはそうでなければネットワークを構成することができる。顧客が自身のＩＰアドレス空間からＩＰアドレスを割り当てる場合には、コンピュータ資源プロバイダは、コンピュータ資源プロバイダによってホストされた種々の装置の間のネットワークトラフィックを管理するためのネットワークアドレス変換（ＮＡＴ）技術を用いることができる。例えば、コンピュータ資源プロバイダは、顧客１０４のＩＰアドレス宛てのパケットを、コンピュータ資源プロバイダにより管理される種々の装置の間の伝送のために、コンピュータ資源プロバイダ１０２に管理されるＩＰアドレス宛てのパケットの中にラップ（wrap）することができる。顧客ＩＰ空間から宛てられたＩＰアドレスを有する顧客装置へ配達されると、コンピュータ資源プロバイダはパケットをアンラップ（unwrap）することができる。
【００１７】
サブネット構成と管理に関しては、多くのアレンジメントが顧客により用いられうる。例えば、顧客１０４はインターネットへのアクセスを有するウェブサーバに対する一般向けのサブネットを作るかも知れない。顧客はインターネットアクセスを有しないバックエンドシステムのプライベート向けのサブネットを作るかも知れない。顧客は、各サブネットの中の装置へのアクセスの制御を助けるためのファイアウォール及びネットワークアクセス制御リストを含むセキュリティの多層を活用するかも知れない。
【００１８】
さらに、図１に示されたように、顧客は自身のセルフホスト顧客ネットワーク１０８を有することができる。セルフホスト顧客ネットワークは、顧客１０４の自身のハードウェアを用いてホストされたネットワーク（物理的、仮想的、または物理的と仮想的の組み合わせ）のネットワークかも知れない。図１に示されたように、セルフホスト顧客ネットワーク１０８とプロバイダホスト顧客ネットワーク１０６は、インターネットプロトコルセキュリティ（ＩＰｓｅｃ）トンネル、または直接接続などの安全なチャンネル１１０を通して互いに通信するが、安全な通信のための他のメカニズムも使用されることができる。ある実施例として、安全なチャンネル１１０は、ＩＰｓｅｃのような適切な安全プロトコルを用いる仮想プライベートネットワーク（ＶＰＮ）接続である。この方法で、安全なチャンネル１１０は、あたかも両方のネットワークの資源が単一の施設のハードウェア資源を用いて一緒に置かれていたように顧客１０４のセルフホストネットワーク１０８とプロバイダホスト顧客ネットワーク１０６とを効果的に拡張する。
【００１９】
しかし、図１に示された環境１００の特定の構成は例示目的であり、他の構成も本開示の範囲内にあると考えられる。例えば、ここに記述された技術を用いる環境は、安全なチャンネルを介してプロバイダホスト顧客ネットワークに接続されたセルフホスト顧客ネットワークを必ずしも含む必要はない。顧客は例えば、何らかのセルフホスト顧客ネットワークから分離したプロバイダホスト顧客ネットワークを維持するかも知れない。さらに、図１に示すよりもより少ないまたは大きな数のネットワークを、本開示の種々の実施形態に用いた環境に含めることができる。さらに、顧客とコンピュータ資源プロバイダの関係は、説明のために本開示を通して広く用いられているが、本開示はそれらの関係を用いる環境に限られない。本明細書に記述されている様々な技術は、例えば、１または複数の装置（例えばＨＳＭ）の使用を１または複数の実体（entity）に提供することを可能にするために用いられるかも知れない。さらに、サービスを提供する実体とサービスを消費する実体は、同じ実体のサブ実体であるかも知れない。例えば、コンピュータ資源プロバイダは、本明細書に記述された技術を使用してＨＳＭの使用をコンピュータ資源プロバイダのサブ実体（例えば顧客に他のタイプのサービスを提供するビジネスユニット）に提供するかも知れない。
【００２０】
上述したように、本開示の実施形態は、遠隔で要求して、ＨＳＭをプロバイダホスト顧客ネットワークの一部になるように構成する能力を顧客に提供する。例示されたように、顧客１０４は、要求をコンピュータ資源プロバイダ１０２に提出することができる（図面で「ＨＳＭ要求」と表示される）。顧客は例えば、適切に構成されたＡＰＩコールを、ＡＰＩコールを処理するように構成された１または複数のシステムを含むコンピュータ資源プロバイダに送信することができる。コンピュータ資源プロバイダは、コンピュータ資源プロバイダのコンピュータ資源が、要求に応えて、１または複数のＨＳＭ１１２を論理的にプロバイダホスト顧客ネットワークの一部とするようにさせるワークフローを開始することができる。言い変えると、コンピュータ資源プロバイダは、ＨＳＭが顧客自身のネットワーク内にあったかのように、顧客がＨＳＭ１１２と通信することができるように適切なコンピュータ資源を構成することができる。例えば、ＨＳＭ１１２に対する要求は、顧客自身のＩＰスペース（例えば、顧客が所有し、若しくは制御しているパブリックＩＰアドレスまたは顧客のプライベートＩＰアドレス）の一部であるＨＳＭに対するＩＰアドレスに宛てられるかも知れない。
【００２１】
図２は、１または複数のＨＳＭのサービスとしての使用を提供するために使用されうる環境２００の例示的な実施例である。図２に示されたように、環境２００は、顧客論理ネットワーク２０２と仮想コンピュータシステム（ＶＣＳ）サービス基板２０４を含み、これはサービスとして提供された仮想コンピュータシステムを実行するために用いられるネットワークを構成する装置の集合であってよい。例えば、ＶＣＳサービス基板２０４は、仮想サーバなどの１または複数の仮想コンピュータシステムを実行するために、それぞれ構成可能／構成された１または複数のハードウェアサーバ装置を含むことができる。ＶＣＳサービス基板２０４はまた、スイッチ、ルータ、及び／またはＶＣＳ基板２０４の装置へ／から／内部で通信を可能にする他の装置のようなＶＣＳサービスを可能にする他の装置を含むことができる。
【００２２】
顧客論理ネットワーク２０２は、図１に関連して上述したように、１または複数の自己ホスト顧客ネットワーク、及び１または複数のプロバイダホスト顧客ネットワークを含むネットワークでもよい。図示されているように、顧客論理ネットワークは、コンピュータ資源プロバイダ（例えば、ＶＣＳサービス基板２０４と顧客論理ネットワーク２０２の両方の内部に示された資源）によってホストされた資源とコンピュータ資源プロバイダ（例えば、顧客論理ネットワーク２０２の中に示されているが、ＶＣＳサービス基板２０４の外側）の顧客によってホストされた資源とを含む。例えば図２に示されているように、顧客論理ネットワーク２０２は、顧客の構内ネットワーク２０６（例えば自己ホスト顧客ネットワーク）及び顧客仮想ネットワーク（ＶＮ）２０８（例えば、プロバイダホスト顧客ネットワーク）を含む。顧客構内ネットワーク２０６及び顧客ＶＮ２０８は、仮想ローカルエリアネットワーク（ＶＬＡＮ）であってよく、それぞれのより大きなネットワークの論理部門で互いに遮断されていてもよい。
【００２３】
顧客構内ネットワーク２０６と顧客ＶＮ２０８は、単一のネットワークとして運営するように構成されうる。例えば、図示されているように、顧客構内ネットワーク２０６及び顧客ＶＮ２０８は、データが２つのネットワークの間を安全に流れうるように構成されることができる。例えば、顧客構内ネットワーク２０６と顧客ＶＮ２０８の間の直接接続が用いられうる。他の実施例では、顧客構内ネットワーク２０６と顧客ＶＮ２０８は、仮想プライベートネットワーク（ＶＰＮ）接続（例えば、ＩＰｓｅｃ経由）で接続されている。顧客論理ネットワーク２０２は、構内仮想ゲートウェイ（ＶＧＷ）及びＶＣＳサービス基板２０４（構外ＶＧＷ）で実行されるＶＧＷなどの操作を可能にする様々な装置を含むことができる。構内ＶＧＷと構外ＶＧＷは、顧客の構内装置とコンピュータ資源プロバイダの構内装置の間の通信を可能にするように構成されたゲートウェイ装置であってよい。ＶＧＷとＶＧＷの各々は、例えば、１つの通信プロトコルと他の通信プロトコルの間を変換し、及び／または、顧客とコンピュータ資源プロバイダの装置の間の通信を可能にするような、何らかの他の操作を実行するように構成されることができる。幾つかの実施例では、構内ＶＧＷと構外ＶＧＷは、ＩＰｓｅｃトンネルまたは直接接続などの安全なチャンネルを介して通信する。また図示されているが、顧客ネットワークは１または複数の顧客遠隔パーソナル識別番号（ＰＩＮ）入力装置（ＲＰＥＤ）２１４を含むことができる。顧客ＲＰＥＤ２１４は、実施形態では、１または複数のＨＳＭ認証を目的として特別に構成された装置である。例えば、顧客が特定な形のＨＳＭを要求する場合に、顧客は、要求された特定の形のＨＳＭのために顧客ＲＰＥＤ２１４を購入し、顧客ＲＰＥＤ２１４を顧客論理ネットワーク２０６に加えるように、顧客ＲＰＥＤ２１４は特定製造者でもよい。顧客ＲＰＥＤ２１４は、改竄防止であり、キーロギング及び他のセキュリティ侵害を防止する他のセキュリティ特徴を含むことができる。顧客のオペレータ（例えば承認されたユーザ）は、ＲＰＥＤ２１４を用いて、対応するＨＳＭ（またはＨＳＭのセット）によって保管された情報へのアクセスを得るためのパスワード入力することができる。
【００２４】
図２に示されたように、顧客論理ネットワーク２０２は、顧客の構内ＨＳＭ２１６を含むことができる。顧客構内ＨＳＭは、安全に情報（例えば暗号キー）を保管し、及び安全に保管した情報で暗号操作を行うための、顧客にホストされたＨＳＭであってよい。従って、顧客論理ネットワーク２０２は、顧客構内ネットワーク２０６の一部として、構内ＨＳＭに対して（及び、後述するように、１または複数の構外ＨＳＭに対して）要求を提出するように構成された装置（または、装置にロードされたプログラムモジュールなどの装置の構成要素）である、１または複数の構内ＨＳＭクライエント２１８を含むことができる。幾つかの実施例では、構内ＨＳＭクライエント２１８及び顧客論理ネットワーク２０２は、（後述するように）各顧客ＨＳＭクライエントが構外ＨＳＭアプライアンスに対して要求を提出することができるように集合的に構成されている。そのような要求（及び要求に対する応答）は、後述するように安全なチャンネル（例えばＩＰｓｅｃトンネル）を介し、構内ＶＧＭ２１０と構外ＶＧＭを通して経路制御されうる。
【００２５】
顧客論理ネットワーク２０２はまた、顧客ＶＮ２０８の一部として、顧客によってホストされていないが、コンピュータ資源プロバイダによってホストされうる１または複数の装置を含むことができる。例えば、図２は、コンピュータ資源プロバイダによってホストされた構外顧客ＨＳＭクライエント２２０を含む顧客論理ネットワーク２０２を示している。この特定の実施例では、構外顧客ＨＳＭクライエント２２０は、ＶＣＳサービス基板２０４によって（例えば、ＶＣＳサービス基板の物理的サーバによって実行される仮想コンピュータシステムとして）実行される。構外顧客ＨＳＭクライエント２２０は、ＨＳＭ（例えば、構内顧客ＨＳＭ２１６または下に述べる顧客構外ＨＳＭ）と通信するように構成された、上に述べた構内ＨＳＭクライエント２１８のような装置（例えば仮想コンピュータシステム）であってよい。図示されたように、この実施例では、顧客ＶＧＷ２１２はまた、ＶＣＳサービス基板２０４によって実行される。
【００２６】
ある実施形態では、ＶＣＳ基板は、顧客の視点から顧客のサブネットのＩＰアドレスへ宛てられるＨＳＭアプライアンスへの通信を可能とすることにより、コンピュータ資源プロバイダにサービスとしてＨＳＭの使用を可能にさせる、顧客論理ネットワーク２０２の外側の装置の集合を実行する。例えば、ある実施形態では、ＶＣＳサービス基板はサービスＶＮ２２２を含み、これはＨＳＭサービスＶＣＳネットワークアドレス変換プロキシ（ＮＡＴインスタンス２２４）及びサービスＶＮ拠点２２６を含むＶＬＡＮとすることができる。ＮＡＴインスタンス２２４は、後述するように、ＨＳＭアプライアンスと顧客ＶＮ２０８内のサブネットの間のネットワークアドレス変換（ＮＡＴ）を実行するように構成された装置（例えば、ＶＣＳサービス基板により実行される仮想コンピュータシステム）であってよい。手短に言えば、ＮＡＴインスタンスにより実行されるＮＡＴは、顧客ＩＰ空間のＩＰアドレスに宛てた通信を可能にするが、一方でコンピュータ資源プロバイダは、自身のＩＰ空間のＩＰアドレスを用いてそのような通信を経路制御することができる。
【００２７】
サービスＶＮ拠点２２６は、インターネットゲートウェイを備えたパブリックサブネットに構成された装置（例えば、ＶＣＳサービス基板により実行される仮想コンピュータシステム）であってよい。サービスＶＮ拠点２２６はＨＳＭアプライアンスの監視に関連してメッセージを受信するように構成されてもよい。ＶＮ拠点２２６は、例えば、モニタリングシステム、ロギングアーカイブサービス及びコンピュータ資源プロバイダの種々の他のサービス（例えば、モニタリングデータ及び／またはキューサービスを保管するデータ保管サービス）の使用などのメトリクスシステムからメッセージを受信することができる。ＶＮ拠点２２６はまたコンピュータ資源プロバイダファイアーウォールからのある接続（例えば、セキュアシェル（ＳＳＨ）接続）を単に許可する適切なセキュリティ制御を伴うように構成されることができる。サービスＶＮ拠点とＮＡＴインスタンス２２４の間のファイアウォールは、サービスＶＮ拠点２２６とＮＡＴインスタンス２２４の間のＳＳＨ接続のような望ましくない接続を防ぐように構成されることができる。
【００２８】
図示されているように、サービスＶＮ拠点２２６はサービスＶＮ統合ゲートウェイ（ＩＧＷ）２２８を介してインターネットを通じて、データ保管サービス２３０及びＨＳＭ管理並びにモニタリングサービス２３２などの種々のサービスに通信する。ＨＳＭ管理及びモニタリングサービス２３２は、サービスとして提供されたＨＳＭの種々の管理とモニタリングを遂行するために構成されたシステムであってよい。ＨＳＭ管理及びモニタリングサービス２３２は、ネットワークタイムプロトコル（ＮＴＰ）サーバ、モニタリングサブサービス、及びＨＳＭサービス診断及び管理サブサービスなどの種々の構成要素を含むことができる。データ保管サービス２３０は、他のシステムによる他の方法で提供された他のデータとともに、他のサービスでの消費及び／または保管理由のためにサービスＶＮ  ＩＧＷ２２８を通してサービスに送信されたデータを保管するサービスであってよい。モニタリングサブサービスは、サービスＶＮ拠点２２６からのデータを消費し、該当する場合は、機能不全及び／または他の出来事を検出するサービスであってよい。ＨＳＭサービス診断及び管理サブサービスは、サービスＶＮ拠点２２６及び／またはモニタリングサブサービスからのデータを消費し、及びデータの解析を行って診断情報を提供し、そして管理機能（例えば、損傷した装置の再プロビジョニングにより、ＨＳＭサービス及び／または他の管理機能を支援させる）を実行するために構成されることができる。
【００２９】
上記したように、顧客論理ネットワーク２０２は、ＨＳＭアプライアンスと通信する装置を含み、幾つかの実施例では、それは物理的ＨＳＭの抽出概念である。従って、図２に示されたように、様々な実施形態に於いて、環境２００は、コンピュータ資源プロバイダ（ＣＲＰ）ＨＳＭ２３８を含んでいる。ＣＲＰ  ＨＳＭ  ２３８は、顧客ＨＳＭ２１６と同様、物理的ＨＳＭ装置であってよい。物理的ＨＳＭの例は、ＳａｆｅＮｅｔ、Ｉｎｃ．のＬｕｎａ  ＳＡ  ＨＳＭであるが、他のモデルも本開示の範囲の中にあると考えられる。ＣＲＰ  ＨＳＭ  ２３８は、一実施形態の中では、排他的に単一の顧客に割り当てられる。このようにして、サービスとして提供された他のコンピュータ資源とは異なり、他の顧客は装置を使用しない（ＣＲＰ  ＨＳＭ  ２３８が割り当てられている顧客により認証されない限り）。図示されているように、ネットワークトラフィックが、顧客ＶＮ２０８とＣＲＰ  ＨＳＭ  ２３８の間をサービスＶＮを通じて経路制御されうるように、ＣＲＰ  ＨＳＭ  ２３８は通信可能なようにサービスＶＮ２２２に接続される。図２に示された実施例では、ＣＲＰ  ＨＳＭ  ２３８は、ＶＣＳサービスオーバーレイ装置２４０を通してサービスＶＮ２２２と通信するように構成されている。ＣＲＰ  ＨＳＭ  ２３８は、ＶＣＳサービス基板２０４と接続される物理的ハードウェア装置としてサービスＶＮ２２２の外側にいるので、ＶＣＳサービスオーバーレイ装置２４０は、ＣＲＰ  ＨＳＭ  ２３８からのトラフィックをサービスＶＮ２２２を通じて顧客ＶＮ２０８へ、及びその逆に伝送させるのに適切なように、ネットワークアドレス変換を使用することができる。
【００３０】
一実施例の実施形態に於いて、ＣＲＰ  ＨＳＭ  ２３８は、ＣＲＰ  ＨＳＭ  ２３８からサービスＶＮ２２２を含むオーバーレイネットワークに対する直接接続（ＤＸ）へのトラフィックを経路制御するように構成されたＨＳＭラックの頭部（ＴｏＲ）スイッチへ接続されている。例えば、ＣＲＰ  ＨＳＭ  ２３８は、サービスＶＮ２２２とＣＲＰ  ＨＳＭ  ２３８の間のネットワークトラフィックを経路制御するように構成されたＤＸルータを通してサービスＶＮ２２２に接続されることができる。ＤＸルータは、ＶＣＳサービスオーバーレイ装置２４０へと／からのトラフィックを経路制御することができる。同様に、ＤＸルータは、パケットが適切な宛先（例えば、ＣＲＰ  ＨＳＭ  ２３８に要求を送った適切な顧客ＨＳＭクライエント）に適切に提供されるように、ＣＲＰ  ＨＳＭ  ２３８からのパケット（ＨＳＭサービスＴｏＲスイッチを介して受信された）を経路制御することができる。
【００３１】
要約すれば、コンピュータ資源プロバイダは、物理的なＣＲＰ  ＨＳＭ  ２３８をホストする。あたかもＣＲＰ  ＨＳＭ  ２３８が顧客自身のデータセンタ内にあったかのように、種々の技術を使用してコンピュータ資源プロバイダの顧客にＣＲＰ  ＨＳＭ  ２３８を使用させることができる。例示の実施形態では、ＣＲＰ  ＨＳＭ  ２３８はコンピュータ資源プロバイダのサービスラックの中にあり、イーサーネット接続などの適切な物理的接続により、ＴｏＲスイッチ（例えば、同じラックの中のＴｏＲスイッチ）に接続されている。ＴｏＲスイッチは、ＤＸルータに対する物理的接続を有し、ＣＲＰ  ＨＳＭ  ２３８とＶＣＳサービスオーバーレイ装置へと／からのネットワークトラフィックを伝送するように構成されている。ＶＣＳサービスオーバーレイ装置２４０は、ある実施例では、プライベートＶＬＡＮ（サービスＶＮ２２２）を通じて顧客ＶＧＷ２１２へ／からトラフィックを経路制御するために構成されている。ＮＡＴインスタンス２２４は、サービスＶＮ２２２及び顧客２０８の異なるインターフェースを横切ってパケットを経路制御するためにネットワークアドレス変換を用いる。
【００３２】
コンピュータ資源プロバイダの顧客は、顧客の視点からはＨＳＭアプライアンスであるが、図２に示された例のネットワークトポロジーに関してはＮＡＴインスタンス２２４のインターフェースであるＩＰアドレスへ要求を送ることにより、ＣＲＰ  ＨＳＭ  ２３８に要求を提出することができ、それは要求をサービスＶＮ２２２を通じてＣＲＰ  ＨＳＭ  ２３８に経路制御するように構成され、ＣＲＰ  ＨＳＭはＮＡＴインスタンス２２４と異なるＩＰアドレスを有している。同様に、ＣＲＰ−ＨＳＭ２３８が（例えば１または複数の暗号操作を遂行することにより、及び／またはそれに応えて１または複数の暗号操作の遂行の結果を提供することにより）要求に対する応答を生成するとき、応答は、ルーティングが正しく実行されることを可能にするように実行されるネットワークアドレス変換で適切なＨＳＭクライエント（例えば、構外顧客ＨＳＭクライエント２２０または構内顧客ＨＳＭクライエント２１８）に経路制御され、従って顧客の視点からは、あたかも応答が顧客自身のネットワークから始まったように応答が始まりのアドレスを有することを可能にする。
【００３３】
同じく図２に示されているのはＣＲＰ管理システム２４２であり、それはＶＣＳサービス基板及びＨＳＭのコンピュータ資源などのコンピュータ資源プロバイダの資源を管理するために構成されたコンピュータ装置のネットワークであってよい。ＣＲＰ管理システム２４２は、ある実施形態では、資源の管理に関連して種々の操作を遂行するように構成される。例えば、ＣＲＰ管理システムは、顧客にネットワーク（例えばインターネット）を通じて要求を提出することができるアプリケーションプログラミングインターフェース（ＡＰＩ）を提供する。幾つかの実施例では、ＣＲＰ管理システム２４２は、ウェブサービス要求の形のＡＰＩコールを受信するように構成された、１または複数のウェブサーバ（下に詳細を記述する）を含む。ウェブサーバは、ウェブサービス要求を受け取ると、要求を満たすための１または複数のワークフローを実行することで、要求を処理するように構成されたＣＲＰ管理システム２４２のサブシステムへ要求を送信する（例えば、要求を転送する、またはウェブサービス要求に少なくとも部分的に基づいて生成された新しい要求を送信する）ように構成されることができる。例示の要求は、仮想コンピュータシステムの供給または非供給に対する要求、ＶＮの作成に対する要求、ＶＮの再構成に対する要求、１または複数のＨＳＭのＶＮへの追加の要求、保管装置（データ保管サービス（図示せず））を供給する要求などを含む。ＣＲＰ管理システムは、ある実施形態に於いて、要求を処理し、要求処理（例えば認証）に関連する追加の操作を実行するように構成される。要求の処理は、ＣＲＰ管理システム２４２により管理されたワークフローの処理を含みうる。ワークフローは、対応する要求を処理するために実行される操作のセットを含むことができる。例えば、仮想コンピュータシステムを供給するための操作は、仮想コンピュータシステムを実行するためのハードウェア資源（例えばハードウェアサーバ）の選択、選択したハードウェア資源の上へのマシンイメージのロード、ネットワークルーティングの再構成及び／または他の操作などの操作を含むことができる。
【００３４】
上述したように、遠隔でホストされたＨＳＭを含むようにネットワークを構成することを顧客に許容する種々の技術が本明細書に記述されている。図３はそれによってこれがなされる１つの例示的実施例を示している。図３は、コンピュータ資源プロバイダの顧客に、コンピュータ資源プロバイダのサービスとしてのＨＳＭの使用の提供を利用させることを可能にする環境３００の実施例を図示している。図３に示されたように、環境は顧客ＶＮ３０２及びＨＳＭサービスＶＮ３０４を含み、これは各々上述した顧客ＶＮ２０８及びサービスＶＮ２２２であってよい。
【００３５】
顧客ＶＮ３０２のコンピュータ資源は、１または複数のデータゾーンの中にホストされたコンピュータ資源を含むことができる。データゾーンは他のデータゾーンのコンピュータ資源の他のセットから分離されたコンピュータ資源のセットを含むことができる。データゾーンは、フォールトトレランスの目的のために設計されることができ、１または複数のコンピュータ資源データゾーンの操作不作動を起こす出来事は、１または複数の他のデータゾーンの中の論理的に独立したコンピュータ資源の操作可能性にほとんど影響しないか全く影響を有しない。図示された実施例では、第１のデータセンタの中でホストされたコンピュータ資源のセットは、第１のデータゾーンを含むことができ、第２のデータセンタの中でホストされたコンピュータ資源の他のセットは、第２のデータゾーンを含むことができる。第１のデータゾーンの１または複数のコンピュータ資源の操作不能を引き起こす第１のデータセンタの電源喪失は、第２のデータゾーンのコンピュータ資源に対する電源喪失を引き起こさないであろう。従って、例えば第２のデータゾーンのコンピュータ資源が第１のデータゾーンの操作不能なコンピュータ資源（例えば仮想サーバ）のクライエントでない限り、電源喪失は第２のデータゾーンのコンピュータ資源の操作可能性に影響することは無い。
【００３６】
データゾーンは種々の方法で実行されうる。例えば、データゾーンは、データセンタまたは、地理的な領域に束ねられ、そして互いの間で直接の通信接続を有しているデータセンタの集合によって実行されうる。他の実施例としては、データゾーンは、その各々が異なる発電機で供給されるデータセンタの異なる部屋で実行されうる。通常、データゾーンは、１または複数の他のデータゾーンで起こる事象（電源喪失、火事、地震、オペレータのエラー等）に関して１つのデータゾーンのフォールトトレランスを増加させる何らかの方法の中で実行されうる。コンピュータ資源プロバイダ（または通常、任意の実体）は、より大きなフォールトトレランス、フェイルオーバーオプション及び待機時間を減少させるなどの他の利益を顧客に提供するために、多数のデータゾーンを操作することができる。コンピュータ資源プロバイダは例えば、処理能力とフォールトトレランスのための多数のオプションを顧客に提供するために世界中で多数のデータゾーンを操作することができる。
【００３７】
従って、図３に示したように、顧客ＶＮ３０２はデータゾーン３０６に資源を含む。単一データゾーン３０６が示されているが、以下で詳述するように、顧客ＶＮ３０２は多数のデータゾーンからのコンピュータ資源を含みうる。顧客３０２のサブネット（ＶＮサブネット３０８）は、この実施例ではデータゾーン３０６の資源を用いて実行されている。クラスレスインタードメインルーティング（ＣＩＤＲ）表記法を用いて、ＶＮサブネットは、ＩＰアドレスの例示的実施例を用いると、この場合は１０．０．０．０／１６である。説明の目的のため、ＩＰアドレスは、インターネットプロトコルバージョン４（ＩＰｖ４）ＩＰアドレスとして図示的には提供されることに留意しなければならない。しかし、異なるアドレス表示方法がインターネットプロトコルバージョン６（ＩＰｖ６）を含むが、それに限定されずに、様々な実施形態に於いて用いられるかもしれない。
【００３８】
ＶＮサブネット３０８は、この実施例では１０．０．０．０／１６領域の顧客のＩＰアドレスを有する種々の装置３１０（それは恐らく、例えば仮想コンピュータシステムまたは仮想記憶装置）を含んでいる。顧客ＶＮ３０２のＶＮサブネット３０８はまた、顧客サービスゲートウェイ（顧客ＳＧ２１２）を含み、仮想ネットワークインターフェース（ＶＮＩ）３１４で構成されたゲートウェイ装置であってよい。ＶＮＩ３１４は図示されているように、ＩＰアドレス１０．０．０．２０１を有している。
【００３９】
顧客ＶＮ３０２と同様に、ＨＳＭサービスＶＮ３０４は、データゾーン３１６のコンピュータ資源を用いて実行されることができ、それは顧客ＶＮ３０２のデータゾーン３０６として同じデータゾーンであってよく、またはデータゾーン３０６と異なってもよい。この実施例では、データゾーン３１６のコンピュータ資源が、ＩＰアドレス空間１９２．１６８．０．０／２４を有するＶＮサブネット３１８を実行するのに用いられる。ＶＮサブネット３１８は、ＮＡＴインスタンス３２２（これは上に述べたようなＮＡＴインスタンスであってもよい）及びＶＮＩ３２４を含むサービスＳＧ３２０を含む。ＶＮＩ３２４は例示的実施例として、ＶＮサブネット３１８のＩＰ空間の中にＩＰアドレスを有し、アドレスは１９２．１６８．０．５５である。
【００４０】
また、図３に示すように、環境３００は、この実施例ではＩＰアドレス１０．１０．０．３を有する物理的ＨＳＭアプライアンス３２６を含む。ＨＳＭアプライアンスは、直接ＶＮＩ３２４に接続されることができ、ＮＡＴインスタンスは、適切なネットワークアドレス変換を実行するように構成されることができる。
【００４１】
一実施形態では、ＮＡＴインスタンス３２２はネットワークアドレス変換を実行する。例えば、ＶＮＩ３１４に向いている顧客からのネットワークトラフィックは、ＨＳＭアプライアンス３２６のＩＰアドレスである１０．１０．０．３に転送されることができる。ＮＡＴインスタンス３２２は、ネットワークトラフィックの宛先ＩＰアドレスを１０．１０．０．３に変更するために、ネットワークアドレス変換を実行することができる。ＨＳＭアプライアンス３２６からの返信トラフィックが同じＮＡＴインスタンス（例えば、多数のＮＡＴインスタンスが用いられている場合）に届くことを確実にするために、ＮＡＴインスタンス３２２は同様に、ソースＩＰアドレスを、その自身の入口面ＩＰアドレスの１９２．１６８．０．５５に変更することができる。ネットワークトラフィックはＨＳＭから同じ装置に戻るので、ＮＡＴインスタンスはトラフィックが正しい宛先に届くことを確実にすることができる。例えば、ＮＡＴインスタンス３２２は、ＮＡＴが適切に実行するように、ＨＳＭアプライアンス３２６からＮＡＴインスタンス３２２へのトラフィックを適切な顧客装置（例えば、初めに要求をＨＳＭに出した装置）に転送するようにプログラムされうる。
【００４２】
このようにして、ＨＳＭアプライアンス３２６の視点から、ＮＡＴインスタンスのＩＰアドレスの１９２．１６８．０．５５からクライエントトラフィックが生じる。さらに、ＨＳＭアプライアンス３２６は、顧客ＶＮ３０２の何らかの特性識別情報（例えばＩＰアドレス）を欠いているかも知れない。顧客装置３１０の観点から、ＶＮＩ３１４のＩＰアドレス（１０．０．０．２０１）はＨＳＭアプライアンス３２６のＩＰアドレスであるように見える。例えば、顧客装置３１０は、１または複数の暗号操作を１０．０．０．２０１に実行する要求を送信し、１０．０．０．２０１から応答を受信することができるが、異なるＩＰアドレス（即ち、ＨＳＭアプライアンス３２６）の装置は実際には要求された暗号操作を遂行する。
【００４３】
本開示の様々な実施形態は、コンピュータ資源プロバイダに、サービスとしてのＨＳＭの使用の提供を許容し、同様に様々な安全に対する懸念を提示している。例えば、コンピュータ資源プロバイダの幾つかの顧客は、コンピュータ資源プロバイダは顧客の代わりにＨＳＭに保管された何らかの暗号化された情報（例えば顧客に使用されるキー）へのアクセスを欠いていることを要求するかも知れない。図４はこれが達成されるかも知れない実施例の方法のダイアグラム４００を示したものである。しかし、図４に示され、本明細書で議論されたプロセスは説明的な性質のものであり、ＨＳＭによって保管された情報へのアクセスを維持するコンピュータ資源プロバイダ無しでサービスとしてのＨＳＭを提供する他の方法が使用されうることは留意されるべきである。例えば、異なるＨＳＭ製造者は、ＨＳＭの上に保管された敏感な顧客の情報に、コンピュータ資源プロバイダがアクセスできないことを確実にするための異なる方法で使用されうる異なるプロセス及び／またはインターフェースを使用することができる。
【００４４】
特に、図４のダイアグラム４００はＨＳＭアプライアンス４０２を示し、これはコンピュータ資源プロバイダの顧客から要求されたＨＳＭアプライアンスかも知れず、上述されたように、コンピュータ資源プロバイダにホストされている。ＨＳＭアプライアンス４０２は、ＨＳＭ管理インターフェース４０６と物理的に安全な暗号情報（図４の中の物理的ＨＳＭ４０４と表示されている）を含むＨＳＭアプライアンスの一部とを含む論理的コンテナであるかも知れない。一実施形態では、ＨＳＭアプライアンス４０２は、アクセス可能性で規定された構成要素を備えるアプライアンスと考えることができる。例えば、一実施形態では、ＨＳＭアプライアンス４０２は、ある管理的役割を有するものによってアクセス可能な管理インターフェースを含む。この実施例では、役割はＣＲＰ管理者４０８と顧客管理者４１０を含む。管理インターフェース４０６へのアクセスは、適切な認証（例えば資格証明書の提示）が要求されるかも知れず、アクセスの回数は特定の役割に依存しうる。さらに管理インターフェース４０６へのアクセスは、例えば、ＳＳＨを経由するなどの安全な接続を要求されうる。一実施形態では、認証されたＣＲＰ  ＨＳＭ管理者４０８は、ＨＳＭアプライアンス４０２のために、１または複数の顧客ＨＳＭ管理者４１０を作る能力を有することができる。ＣＲＰ  ＨＳＭ管理者により実行されうる他のアクションは、種々の実施形態に於いて、ポリシーの作成及び管理、ネットワークの設定、ロギング及び／または他の管理的活動を含む。
【００４５】
顧客ＨＳＭ管理者４１０は、ＨＳＭアプライアンス４０２にＨＳＭ初期化命令をサブミットすることなどによって、ＨＳＭアプライアンス４０２の初期化などの種々の管理活動を実行するためにＨＳＭ管理インターフェースとの相互作用を行う能力を有することができる。ＨＳＭの初期化は、１または複数のセキュリティオフィサー（ＳＯ）の役割を作る結果を生じさせうる。認証されたセキュリティオフィサー（顧客セキュリティオフィサー４１２と表示されている）は、パーティションの作成、クライエント（対応するパーティションに関連するＨＳＭに要求を提出するために十分なアクセス権を備えた装置のセット）の作成、パーティションへのクライエントの割り当て（即ち、各クライエントがどのパーティションにアクセスできるかの規定）などにより、ＨＳＭの構成を管理する能力を有することができる。クライエントの作成は、クライエントがＨＳＭを使用するために承認されていることを示すＨＳＭアプライアンスのデータストアの中のエントリを更新することを含みうる。クライエント（または他のオペレータ）を作ったＳＯは、ＨＳＭの使用を可能にする適切なソフトウェアを備えたクライエント装置を構成することができる。言い換えれば、装置にＨＳＭアプライアンス４０２の使用を可能にすることは、ＨＳＭアプライアンス４０２及びＨＳＭのクライエントとして動作する装置の両方の適切な構成を含むことができる。
【００４６】
ＨＳＭアプライアンス４０２は、顧客ＨＳＭ管理者４１０と、ＨＳＭ管理者４１０によって作られたセキュリティオフィサー４１２アカウントとだけがＨＳＭにより記憶された暗号情報へのアクセスを有するように構成されうる。言い換えれば、ＨＳＭアプライアンス４０２は、ＣＲＰ  ＨＳＭ管理者役割がＨＳＭアプライアンス４０２により記憶された暗号マテリアルへのアクセスを欠いているように構成されうる。このようにして、コンピュータ資源プロバイダは、ＣＲＰ  ＨＳＭ管理者４０８の役割を使用して、顧客ＨＳＭ管理者４１０アカウントを作ることができる。認証情報（例えばログインとパスワード）は、顧客の承認された者に対して提供でき、承認された者は、ログインとパスワードを変えることができるので、コンピュータ資源プロバイダは、引き続き作成された論理パーティションへのアクセスができないようになる。従って、コンピュータ資源プロバイダが、幾らかの管理権限（例えば顧客とのビジネス関係の終了後に安全に暗号マテリアルを消去するための、及び新しい顧客ＨＳＭ管理者アカウントを作るための）を保持している間、コンピュータ資源プロバイダは、一度顧客が顧客ＨＳＭ管理者４１０アカウントのログイン認証を変更すると、安全に記憶された暗号マテリアルへのアクセスを欠く。
【００４７】
本開示の種々の実施形態はまた、必要な場合にはＨＳＭが操作可能である可能性を増加させる方法で、及び／または性能（例えば、レイテンシー）を改良する方法で、コンピュータ資源プロバイダのＨＳＭｓの使用をコンピュータ資源プロバイダの顧客に許容する。図５は、そのような技術的な利点が達成しうる環境５００の図示的実施例を示す。図５の実施例の中で、顧客ＶＮ５０４のＶＮサブネット５０２は、種々のコンピュータ資源を含むことができ、少なくともその幾つかは上述したように、コンピュータ資源プロバイダによりホストされることができる。例えば、図５に示すように、環境５００のＶＮサブネット５０２は、１または複数のＨＳＭクライエント５０６を含む。サービスゲートウェイと通信する代わりに、図３、図５に関して上述したように、ＨＳＭクライエント５０４は負荷分散装置５０８と通信する。負荷分散装置５０８はＨＳＭクライエント５０６からの要求を分散するために、１または複数の負荷分散技術（例えば、ラウンドロビン及びそのバリエーション）を用いるように構成された装置（例えば、仮想コンピュータシステムサービスにより提供された仮想コンピュータシステム）であってよい。この実施例では、負荷分散装置５０８は、上述したように、複数の物理的ＨＳＭアプライアンス５１０の１つとの通信を促進するように構成される。しかし、負荷分散装置５０８の能力は、１または複数のＨＳＭクライエントに組み込まれうることに留意すべきである。例えば、１または複数のクライエントは、負荷分散機能、または、通常、冗長的に情報保管を必要としない多数のＨＳＭと通信する能力を達成する負荷分散アプリケーションを有することができる。
【００４８】
例えば、負荷分散装置５０８は、図３に関連して述べたように、対応するサービスゲートウェイと、ＶＮサブネット５０２の仮想ネットワークインターフェース（ＳＧ／ＶＮＩ５１２）とを通して、及びサービスゲートウェイ、ＮＡＴ装置、並びにサービスＶＮサブネット５１６のＶＮＩ（ＳＧ／ＮＡＴ／ＶＮＩ５１４）を通してＨＳＭクライエント５０４からＨＳＭアプライアンス５０８へトラフィックを経路制御することができる。従って、このようにして、顧客ＶＮ５０４のＶＮサブネット５０２の視点（特に、負荷分散装置５０８からの視点）から、ＨＳＭアプライアンス５１０への通信は、対応するＳＧ／ＶＮＩ５１２のサービスゲートウェイに向けられる。従って、ＨＳＭクライエント５０６がＨＳＭに要求を提出するために、クライエント装置５０６は、負荷分散装置５０８のＩＰアドレスに対して要求をアドレス指定することができ、負荷分散装置５０８は、要求を適切なＨＳＭアプライアンス５１０に転送し、何らかの応答を受信し、そして要求者に対して応答を転送することができる。
【００４９】
このようにして、ＨＳＭの高い可用性が達成される一方、顧客視点からの単純な構成が維持される。さらに図５に示した技術、及びそれのバリエーションは、多数の技術的利点を提供するために用いられうる。例えば、図５に示したように、各ＨＳＭアプライアンスは異なるデータゾーン５１８に属することができる。異なるデータゾーンは、フォールトトレランス及び／または低いレイテンシー（ＨＳＭクライアントが異なるデータゾーンに分散されている場合のように）を提供するために用いられうる。
【００５０】
本明細書に記述した全ての環境のように、バリエーションは本開示の範囲内にあると考えられる。例えば、環境５００のＳＧ／ＶＮＩ構成要素は、幾つかの実施形態では、異なるＨＳＭが異なる目的に用いられる場合などには（例えば、各々が異なるキースペースを保管する多数のＨＳＭが用いられている場合）、負荷分散装置の背後にある必要は無い。また、図中に示されたものに加えられた形態は、本開示の範囲の中にあると考えられる。例えば、多数のＨＳＭが冗長性の目的のために用いられる環境では、安全な方法は、ＨＳＭにより重複して記憶された情報を同期するために用いられうる。例えば、パブリックキー暗号スキームは、１つのＨＳＭから他のＨＳＭに安全に情報を送るために用いることができる。ＨＳＭは、他のＨＳＭで用いられるパブリック―プライベートキー対のパブリックキーを用いて情報を暗号化できる。暗号化された情報はネットワーク上で他のＨＳＭに送信され、パブリック―プライベートキー対のプライベート鍵で解読されうる。
【００５１】
上述したように、本開示の種々の実施形態は、コンピュータ資源プロバイダがＨＳＭをホストしているが、顧客はあたかも顧客の自身のデータセンタの中に居るかのようにＨＳＭを使うことができるように、仮想資源プロバイダの顧客に仮想ネットワークにＨＳＭを加えることを許容する。図６は、少なくとも１つの実施形態に基づくＨＳＭに対する要求を処理するためのプロセス６００の例示的実施例を示す。プロセス６００は、図２に関連して上述されたＣＲＰ管理システムなどの、またはコンピュータ資源プロバイダに提出された要求の処理に含まれた何らかのシステムの何らかの適切なシステムで遂行されるかも知れない。ある実施形態の中で、プロセス６００は、顧客（例えば顧客のコンピュータ装置）からＨＳＭに対する要求を受け取ること６０２を含み、ここで要求はＨＳＭに対するパラメータのセットを含んでいる。要求は例えば、ＨＳＭパラメータをエンコードするＡＰＩパラメータを備えたＡＰＩコールかも知れない。しかし、図６は要求の一部として、パラメータが含まれていることに留意されるべきで、ＨＳＭに対するパラメータは、要求とは分離して提供されることができる。実施例のパラメータは、コンピュータ資源プロバイダにホストされた顧客のＶＮの識別子、コンピュータ資源プロバイダにホストされた顧客のＶＮのサブネットの識別子、ＨＳＭに対するモデル識別子（顧客が多数のＨＳＭモデルから選択する能力を宛てられているところの実施形態では）、ＩＰアドレススペース、ＩＰアドレスタイプ（例えば、ＩＰｖ４またはＩＰｖ６）、通知モード（例えば、Ｅメールアドレス、メッセージキュー識別子または通知に対して用いられる他の識別子）、及び／または他の関連する情報を含む。さらに、ＨＳＭパラメータは、認証された顧客ＶＮの中に置かれるネットワークインターフェースに適用される１または複数のファイアウォールパラメータを明示することができる。通常、パラメータは、コンピュータ資源プロバイダがＨＳＭを、コンピュータ資源プロバイダによりホストされた顧客のＶＮと一緒に統合させることができるコンピュータ資源プロバイダ情報を提供する。
【００５２】
要求を受け取る６０２と、プロセス６００は、適切なＨＳＭ装置（例えばＨＳＭパラメータに一致するモデル番号の装置）に付属したサービスＶＮ２２２のようなサービスＶＮを作成すること６０４を含むことができる。サービスＶＮを作成すること６０４は、サービスＶＮを含む１または複数のコンピュータ資源を事前設定し、かつ／または構成することを含むことができる。サービスＶＮは、図２に関連して上述したような構成要素を含むことができる。さらに、サービスＶＮは、パブリックとプライベートのサブネットと共にＶＬＡＮとして作成されることができ、パブリックサブネットはモニタリングと診断目的に使用され、プライベートサブネットは顧客ＶＮとの通信に用いられる。サービスは、サービスＶＮが、顧客ＶＮのＩＰ領域と重ならないＩＰ領域を有していることが確実になるように作成されることができる。
【００５３】
サービスＶＮを作成すること６０４は、種々の実施形態に従って種々の方法で達成されうることに留意されるべきである。例えば、ある実施形態では、コンピュータ資源プロバイダは、処理される場合に、サービスＶＮを利用するＨＳＭに対する要求を受信する前にサービスＶＮを事前設定し、準備する。そのような実施形態では、サービスＶＮを作成することは、要求の中で明示された顧客ＶＮと統合される既存の資源を再構成することを含むことができる。言い換えれば、コンピュータ資源プロバイダは、要求の受け取りに先だってサービスＶＮを作成するための幾らかの操作を遂行することができる。さらに、サービスＶＮを作成すること６０４は、顧客がサービスＶＮを通して通信するＨＳＭ装置を構成することのような追加の操作を含むことができる。ＨＳＭ装置の構成は、様々なＨＳＭ製造者とモデルに従って変わる様々な方法で達成されるかも知れない。通常、ＨＳＭ装置の構成は、顧客のためのＨＳＭとしてのＨＳＭ装置の操作を可能にし、かつ／または促進する何らかの動作を取ることを含むことができる。
【００５４】
サービスＶＮを作成する６０４と、プロセス６００は、サービスチーム管理システムからのこれらに対する通信を制限するためにサービスに対するアクセス制御リスト（ＡＣＬ）を修正すること６０６を含むことができる。この方法で、サービスＶＮは、種々の不必要な通信から分離されているが、それでも、そのような介在が必要になると、コンピュータ資源プロバイダによる介在は許容される。サービスＶＮに対するファイアウォールは、サービスインスタンスを起動させる場合（例えば、仮想コンピュータシステムがサービスＶＮの一部になる場合）、使用のために作成されることができる６０８。１または複数のサービスインスタンスは、サービスＶＮの中で起動させられ６１０、作成されたファイアウォールを参照することができる。サービスインスタンスは、図２に関連して上述した、ＮＡＴインスタンス２２４やサービスＶＮ拠点２２６のようなサービスＶＮの内側で動作する仮想コンピュータシステムであるかも知れない。サービスインスタンスの起動は、上述したように、サービスインスタンスに対する事前設定ワークフローを処理することを含むかも知れない。さらにすでに述べたように、インスタンスは異なる時間に起動され、そして単純に再構成されるかも知れない。このようにして、要求の受け取り６０２と、顧客によるＨＳＭが使用できる時間との間の時間は減らされるかも知れない。サービスインスタンスを起動することはまた、ソフトウェアのローディング及び／またはサービスＶＮの中でインスタンスを可能にするための構成に必要な何らかの設定の構成のような操作を再構成することを含むことができる。
【００５５】
図６に示したように、プロセス６００は、顧客の仮想ネットワーク、例えばＨＳＭパラメータの中に明示されている顧客ＶＮの中に、ネットワークインターフェースを作成すること６１２を含んでいる。上述したように、ネットワークインターフェースは、コンピュータ資源プロバイダにより作成されホストされているＶＮＩとすることができる。ある実施形態では、ネットワークインターフェースの作成は、顧客の適切なサブネット（例えば、ＨＳＭパラメータで明示されたサブネット）の中にネットワークインターフェースを作るためのアカウント人格化を用いることを含むかも知れない。ネットワークインターフェースを作成すること６１２はまた、ＨＳＭサービスに対応する記述をネットワークインターフェースに与えるような他の操作を含むことができる。記述は、例えば、ＨＳＭを、またはネットワークインターフェースがＨＳＭに接続するためのものであることを識別することができる。本方法で、顧客は（例えばコンピュータ資源プロバイダによってホストされた顧客装置の目録の中）コンピュータ資源プロバイダにホストされた顧客がその仮想ネットワークの中に有しているかも知れない何か別のネットワークインターフェースから、作成されたネットワークインターフェース６１２を区別することができる。ネットワークインターフェース作成の中に含まれる他の操作は、プライベートＩＰアドレスのネットワークインターフェースへの割り当てと、何らかのセキュリティ設定（例えば、コンピュータ資源プロバイダからのネットワークインターフェースを管理するための能力の喪失になるかも知れないネットワークインターフェースのファイアウォール変更から顧客を守るため）の構成を含むことができる。
【００５６】
ある実施形態では、プロセス６００は、作成された６１２ネットワークインターフェースを適切なサービスインスタンス（例えば、図２に関連して議論されたＮＡＴインスタンス２２４）にアタッチすること６１４を含む。作成された６０４ネットワークインターフェースを作成されたサービスインスタンスにアタッチすることは、サービス仮想ネットワークへ進む及び逆方向へのネットワークインターフェースに対する通信を許容するための、サービス仮想ネットワークとネットワークインターフェースの両方に対する何らかの設定を構成することを含むことができる。例えば、顧客ＶＮは分離されているので、アカウント人格化は、顧客ＶＮがサービスインスタンスと通信することを許容するための、顧客ＶＮに対する設定を修正するために用いられることができる。一度ネットワークインターフェースがサービスインスタンスにアタッチされると、プロセス６００は、ＨＳＭの可能性を顧客に通知することを含むことができる。通知は、電子メール、インスタントメッセージ、通知キューの中への通知メッセージの配置、及び／または他の方法などの、種々の実施形態に基づいて種々の方法で起こりうる。さらに、通知が起こる方法は、要求に関連して受け取ったＨＳＭパラメータの中に明示されることができる。
【００５７】
図７は、コンピュータ資源プロバイダにより、サービスとして提供されたＨＳＭを使用するために、顧客により実行されうるプロセス７００の例示的実施例である。プロセス７００は、オペレータの管理下で、顧客のコンピュータ装置などの何か適切なシステムで実行されることができる。ある実施形態では、プロセス７００は、サービスとしてのＨＳＭの使用を提供するコンピュータ資源プロバイダを備えた遠隔でホストされた仮想ネットワーク（例えば、遠隔でホストされたＶＬＡＮ）を生成することを含んでいる。遠隔でホストされた仮想ネットワークは、種々の実施形態に従って種々の方法で生成されることができる。例えば、幾つかの実施形態では、適切に構成されたＡＰＩコールは、コンピュータ資源プロバイダの管理システムに対して、１または複数のコンピュータ資源（例えば仮想コンピュータシステム）の供給、ＶＮ（即ちＩＰアドレス領域）のために適切なパラメータの供給、遠隔でホストされたＶＮと構内ネットワークの間のプライベートネットワーク（ＶＰＮ）その他の供給のために作られることができる。通常、遠隔でホストされた顧客ＶＮが作られうる何らかの方法が使用されることができる。
【００５８】
一度生成されると、遠隔でホストされた仮想ネットワークは、遠隔でホストされたＨＳＭとの接続のために構成されることができる７０４。遠隔でホストされた仮想ネットワークを構成すること７０４は、例えば、コンピュータ資源プロバイダの管理システムに、ＡＰＩコールを提出することにより実行されることができる。遠隔でホストされた仮想ネットワークを構成すること７０４は、コンピュータ資源プロバイダが遠隔でホストされた仮想ネットワークの内側にネットワークインターフェースを生成することができる、適切なアクセス許可を設定することを含むことができる。例えば、適切なＡＰＩコールは、コンピュータ資源プロバイダにネットワークインターフェースを生成してアタッチすることを許容する新しい役割を生成するためになされることができる。役割は仮想ネットワークにアクセスすることができる第三者の役割であってもよい。ポリシーは、コンピュータ資源プロバイダにネットワークインターフェースの生成を許容する役割のために生成されることができる。役割に対する情報は、コンピュータ資源プロバイダに提供されることができ、コンピュータ資源プロバイダはその情報を使用してネットワークインターフェースを生成し、さらなる指示を顧客に送ることができる。
【００５９】
図示されているように、プロセス７００は、遠隔でホストされたＨＳＭに対する要求をコンピュータ資源プロバイダに提出することを含む。要求は、上述のように、ＨＳＭパラメータを備えた適切に構成されたＡＰＩコールであってもよい。コンピュータ資源プロバイダは、ネットワークアドレスとＨＳＭに対する信任状を提供することができる。ネットワークアドレスは、顧客の仮想ネットワークの中に作られたネットワークインターフェースなどの、ＨＳＭの管理インターフェースにアクセスできるネットワークアドレスであることができる。従ってプロセス７００は、ネットワークアドレス及び遠隔でホストされたＨＳＭアプライアンスに対する認証を取得すること７０８を含む。
【００６０】
ＨＳＭアプライアンスに対するネットワークアドレスと認証情報を備え、プロセス７００は、遠隔でホストされたＨＳＭを初期化し、構成すること７１０を含むことができる。遠隔でホストされたＨＳＭを初期化し、構成すること７１０は、ＳＳＨ（または他の適切な方法）を通じてＨＳＭに接続し、１または複数の操作を実行することを含むことができる。操作は、コンピュータ資源プロバイダのＨＳＭで保管された情報へアクセスする能力を制限するための認証情報の変更（例えば、パスワードを変更する）を含むことができる。他の操作は、タイムゾーン、ＨＳＭに対するシステム日時の設定、モニタリングができるようにシスログエンドポイントのＨＳＭに対する構成の追加、単一のネットワーク管理プロトコル（ＳＮＭＰ）及びシスログ構成をコンピュータ資源プロバイダにより設定されていた既存の設定に対して追加することを含むことができる。さらに、ＨＳＭを初期化し、構成すること７１０は、ＨＳＭパーティションを再初期化し、ＨＳＭの任意のキー及び／または暗号ドメインを永久に（即ち、取り消しできない）削除すること、及び上に述べたように、他のＨＳＭと通信するためのＨＳＭに対するパブリック／プライベートキーの対の構成を生成することを含むことができる。公開／プライベート鍵の対の作成は、パブリック／プライベート電子キー署名スキームを用いて、１または複数のＨＳＭクライエントに他のＨＳＭとの通信を可能にするために提供されるパブリック鍵からの証明の発行を含むことができる。上記に加えて、遠隔でホストされたＨＳＭを初期化し、構成すること７１０は、上述されたように、ＨＳＭ（即ち、どのクライアントがＨＳＭを使用するために認可されているかの明示）の中に１または複数のＨＳＭクライエントを生成することを含むことができる。
【００６１】
図示されているように、プロセス７００は、１または複数のＨＳＭクライエントがＨＳＭを使用できるように、１または複数のＨＳＭクライエントを構成すること７１２を含んでいる。例えば、ある実施形態では、ＨＳＭクライエントを構成することは、ＨＳＭクライエントのためのパブリック／プライベートキーの対を作成することを含むことができ、それは上述したように、パブリック／プライベートキーの対からのパブリックキーから証明を発生させる。証明はＨＳＭ（例えばＨＳＭのパブリックキーを用いて証明を暗号化し、ＨＳＭにより暗号を解読するために、対応するプライベートキーを使用する）に提供されることができ、ＨＳＭクライエントに検証のために、提供された電子署名を発生させるために、パブリックキーの使用をＨＳＭに可能にする。他の操作は、ＨＳＭへのＨＳＭクライエントを登録すること、及びＨＳＭの１または複数のパーティションへのＨＳＭクライエントを割り当てることを含むことができる。
【００６２】
本明細書に記述されたような全てのプロセスに関し、プロセスのバリエーションは本開示の範囲内にあると考えられる。例えば、図示された操作は、表された順序で実行される必要ない。さらに、追加の操作は、ＨＳＭを種々の環境の中に統合するためなどの種々の目的のために含まれているかも知れない。例えば、多数の操作が、多数のＨＳＭと顧客ＶＮのために実行されるかも知れない。多数のＨＳＭは、ＨＳＭの能力の増加、性能の増加及び全体の操作上の欠陥減少（例えば、フェイルオーバーのためのオプションを提供することではＨＳＭを操作不能にする。）の目的のために設定されるかも知れない。さらに、顧客は、彼ら自身の構内ＨＳＭをホストするかも知れない。本開示の種々の実施形態は、１または複数の構内ＨＳＭを、１または複数の遠隔でホストされたＨＳＭと同期させることを含むかも知れず、従って例えば、顧客は構内ＨＳＭを使用し、構内ＨＳＭが故障すると、遠隔でホストされたＨＳＭを使用する。さらに、顧客がコンピュータ資源プロバイダとのビジネス関係の終わりを選択すると、顧客はＨＳＭの中に保管された情報（例えば、暗号キー）を自身のＨＳＭの中に保持する。
【００６３】
さらに、本開示の種々の実施形態は、顧客にはすでに必要とされていないＨＳＭの再使用を許容する。例えば、ある実施形態では、顧客はサービスとしてのＨＳＭの使用を終了する前に、顧客により使用された遠隔でホストされたＨＳＭの中に保管された暗号キーを取り消し不可能な形で消去することを、コンピュータ資源プロバイダにより要求される（例えば契約により）。不良債権（例えば、顧客が払わないまたは払えない、恐らく破産により）の場合には、コンピュータ資源プロバイダは、顧客により使用された何か遠隔でホストされたＨＳＭに遠隔アクセスし（例えばネットワークからＨＳＭの接続を外す、電源を外す等）、及びまだ顧客がＨＳＭにアクセスして再保管するための機会が提供される間の期間のために、情報をまだ保持するかも知れない（負債を即金で払うまたはほかの方法でアクセスをアレンジする）。ある期間が過ぎた後では、コンピュータ資源プロバイダは、ＨＳＭで保管された何らかの暗号情報を取消不可能な形での消去をＨＳＭに引き起こすために、適用可能なＨＳＭに命令を送信するための管理的なアクセスを用いるかも知れない。この時点でコンピュータ資源プロバイダは、上述したような方法で、他の顧客に奉仕するために回収されたＨＳＭを使用するかも知れない。
【００６４】
多数の他のバリエーションは、本開示の範囲の中にあると考えられる。例えば、上記したように、コンピュータ資源プロバイダは、顧客の使用のためにサービスの多くの形を提供する。本開示の種々の実施形態は、ＨＳＭがこれらのサービスの使用に繋がって用いられることができるように、サービスと顧客論理ネットワークの統合が含まれている。例示的実施例として、図２を参照して、顧客はコンピュータ資源プロバイダ（または他のコンピュータ資源プロバイダ）により提供されるデータ保管サービスと通信するための顧客ＶＮを構成するかも知れない。１または複数の顧客ＶＮの仮想コンピュータシステムは、例えば、インターネットを通じて通信し、データ保管サービスのウェブサーバインターフェースを使用するように構成されているかも知れない。データ保管サービスで保管されているデータ保管対象物の許可は、例えば、対象物は、顧客ＶＮからのみアクセス可能であるように、データ対象物へのアクセスが限られているかも知れない。本開示の種々の実施形態は、例えばサーバ側での暗号を許容するために、データ保管サービスとの統合を許容する。顧客ＶＮは、データ保管サービスサーバが暗号化されるためのデータを提供できるように構成されているかも知れない。サーバはＨＳＭに平文を提供するかも知れず、そしてＨＳＭは適切なキーを用いて暗号文を返すことができる（例えば、キーはサーバで明示された識別子を有しているまたはデフォルトで明示されている）。平文はデータ対象物を暗号化するためにサーバに用いられるキーであるかも知れず、そしてサーバは暗号化されたデータ対象物、暗号キーを保管することができる。同様に、サーバは、解読するために、暗号キーをＨＳＭに提供することができ、そしてＨＳＭは、キーの暗号を解除することができ、暗号を解除したキーをサーバで使用するために暗号を解除した対象物の中で提供する。他のバリエーションは同じく本開示の範囲の内にあると考えられる。
【００６５】
本開示の実施形態は下の条項に照らして記述することができる。
１．コンピュータ実行方法であって、
実行可能命令で構成された１または複数のコンピュータシステムの制御下で、
コンピュータ資源プロバイダの顧客から、コンピュータ資源プロバイダによってホストされ、かつ顧客によって遠隔で管理される顧客ネットワークにハードウェアセキュリティモジュールを追加する要求を受信することと；
要求を受信した結果として、コンピュータ資源プロバイダの複数の可能なハードウェアセキュリティモジュールからハードウェアセキュリティモジュールを選択することと；
顧客ネットワークの中で、顧客に割り当てられた選択されたハードウェアセキュリティモジュールと通信する他のネットワークに対するネットワークインターフェースを生成することと；
ネットワークインターフェースと他のネットワークを構成して、顧客ネットワークを通してネットワークインターフェースへ宛てられる要求が選択されたハードウェアセキュリティモジュールに提供されることと
を備えるコンピュータ実行方法。
２．顧客ネットワークが顧客によって定義された割り当てられた対応するネットワークアドレスを有する１または複数の装置をさらに備え、
顧客ネットワークが仮想プライベートネットワーク接続によって顧客によりホストされた構内ネットワークに接続されている
条項１のコンピュータ実行方法。
３．ネットワークインターフェースは、顧客によって定義されたネットワークアドレスのセットの中にネットワークアドレスを備える、条項１または２のコンピュータ実行方法。
４．顧客の装置から、インターフェースのネットワークアドレスに宛てられた通信を受信することと；
ハードウェアセキュリティモジュールにネットワークトラフィックをルーティングするためにコンピュータ資源プロバイダによって使用される選択されたハードウェアセキュリティモジュールのアドレスに通信のネットワークアドレスを変換することと
をさらに備える、条項１〜３のいずれか一項のコンピュータ実行方法。
５．ハードウェアセキュリティモジュールの第１の管理アカウントを使用し、装置管理の権限を備えた第２の管理アカウントを作ることと；
第２の管理アカウントのための認証情報を提供して、顧客に認証情報を変更することを可能にさせ、コンピュータ資源プロバイダから第２のアカウントへのアクセスを取り消すことと
をさらに備える、条項１〜４のいずれか一項のコンピュータ実行方法。
６．顧客ネットワークにおいて、顧客に割り当てられた第２の選択されたハードウェアセキュリティモジュールと通信する第２のネットワークに対する第２のネットワークインターフェースを生成することと；
第２のネットワークインターフェース及び他のネットワークを構成して、顧客ネットワークを通り、第２のネットワークインターフェースに宛てられた要求が第２の選択されたハードウェアセキュリティモジュールに提供されることと
をさらに備える、付記１〜５のいずれか一項のコンピュータ実行方法。
７．コンピュータ実行方法であって、
実行可能命令で構成された１または複数のコンピュータシステムの制御下で、
実体（entity）から、装置をネットワークへ追加する要求を受信することと；
要求を満たすのに使用可能な装置のセットから装置を選択することと；
選択した装置を、実体によって排他的使用可能なように割り当てることと；
コンピュータ資源のセットを再構成して、ネットワークがネットワークインターフェースと装置に接続する他のネットワークに対するネットワークインターフェースを含み、ネットワークインターフェースに宛てられたネットワークトラフィックが、他のネットワークを通じて選択された装置に転送されることと
を備えるコンピュータ実行方法。
８．装置がハードウェアセキュリティモジュールである、条項７のコンピュータ実行方法。
９．実体がコンピュータ資源プロバイダの顧客を備え；
ネットワークがコンピュータ資源プロバイダによってホストされ、かつ顧客によって管理される、
条項７または８のコンピュータ実行方法。
１０．ネットワークは実体によって定義されたネットワークアドレスを有する装置を備える、条項７〜９のいずれか一項のコンピュータ実行方法。
１１．ネットワークは実体とは異なる組織によってホストされ；
ネットワークインターフェースは実体のプライベートネットワークアドレスであるネットワークアドレスを備える、
条項７〜１０のいずれか一項のコンピュータ実行方法。
１２．要求は、要求を満たすためのパラメータを有するアプリケーションプログラミングインターフェースコールをさらに備える、条項７〜１１のいずれか一項のコンピュータ実行方法。
１３．システムであって、
ネットワークを実装するコンピュータ資源のセットと；
要求を受信するように構成されたウェブサーバと；
対応するネットワークアドレスのセットを有するネットワークにセキュリティモジュールを追加する要求をウェブサーバから受信し、
要求を受信した結果、コンピュータ資源のセットの少なくとも１つのサブセットを構成して、ネットワークの１または複数の装置が、ネットワークアドレスのセットからのネットワークアドレスでセキュリティモジュールへの通信を宛てることによってセキュリティモジュールと通信できる、
ように構成された管理サブシステムと
を備えたシステム。
１４．コンピュータ資源のセットのサブセットを構成することは、
ネットワークインターフェースがさらにネットワークアドレスを備えるように、ネットワークインターフェースをネットワークに追加することを含み；
コンピュータ資源のセットによって実行される他のネットワークを通じてネットワークインターフェースをセキュリティモジュールに接続することをさらに備える
条項付記１３のシステム。
１５．ネットワーク及び他のネットワークは仮想ローカルネットワークをさらに備える、条項１３または１４のシステム。
１６．セキュリティモジュールはハードウェアセキュリティモジュールをさらに備える、条項１３〜１５のいずれか一項のシステム。
１７．コンピュータ資源のセットがコンピュータ資源プロバイダによってホストされ、
要求はコンピュータ資源プロバイダの顧客からのウェブサービスコールをさらに備える、条項１３〜１６のいずれか一項のシステム。
１８．コンピュータ資源のセットがコンピュータ資源プロバイダによってホストされ、
コンピュータ資源のセットを構成した後、セキュリティモジュールは、コンピュータ資源プロバイダへのアクセス困難なやり方で、コンピュータ資源プロバイダの顧客のための暗号情報を格納する、条項１３〜１７のいずれか一項のシステム。
１９．集合的に格納された命令を有する、１または複数のコンピュータ可読記憶媒体であって、命令は、コンピュータシステムの１または複数のプロセッサによって実行されると、コンピュータシステムに、
セキュリティモジュールをネットワークに追加する要求を受信し、ネットワークがサードパーティの実体の代わりにホストされ、及びネットワークアドレスの対応するセットを有し、
要求を受信した結果、セキュリティモジュールに対する通信が、ネットワークアドレスの対応するセットからのネットワークアドレスを使用してアドレス可能なように、コンピュータ資源のセットのコンピュータ資源を再構成する
ことを実行させる、１または複数のコンピュータ可読記憶媒体。
２０．コンピュータ資源の再構成をすることは、ネットワークをセキュリティモジュールに接続するネットワークに対するネットワークインターフェースをネットワークの一部にさせることをさらに備える、条項１９の１または複数のコンピュータ可読記憶媒体。
２１．セキュリティモジュールはハードウェアセキュリティモジュールをさらに備える、条項１９または２０の１または複数のコンピュータ可読記憶媒体。
２２．コンピュータ資源の再構成をすることは、セキュリティモジュールをサードパーティ実体による排他的な使用ための割り当てを生じさせることをさらに備える、条項１９〜２１のいずれか一項の１または複数のコンピュータ可読記憶媒体。
２３．セキュリティモジュールはネットワークアドレスのセットの外側のネットワークアドレスをさらに備え、
コンピュータ資源の再構成をすることは、ネットワークを、ネットワークとセキュリティモジュールの間で通信できるようにネットワークアドレスを変換するネットワークアドレス変換装置に接続することをさらに含む、条項１９〜２２のいずれか一項の１または複数のコンピュータ可読記憶媒体。
２４．ネットワークアドレスの対応するセットはプライベートインターネットプロトコルアドレスをさらに備える、条項１９〜２３のいずれか一項の１または複数のコンピュータ可読記憶媒体。
【００６６】
図８は、様々な実施形態に従う態様を実行するための例示的な環境８００の態様を図示している。上記の内容から分かることであるが、ウェブベースの環境は説明のために用いられ、異なる環境が適当なものとして種々の実施形態を実行するために用いられるかも知れない。環境は電子クライエント装置８０２を含み、それは要求、メッセージまたは情報を適切なネットワーク８０４を通じて送信及び受信し、そして情報を搬送して装置のユーザに戻す操作が可能な任意の適切な装置を含むことができる。それらのクライエント装置の実施例は、パーソナルコンピュータ、携帯電話、ハンドヘルドメッセージ装置、ラップトップコンピュータ、タブレットコンピュータ、セットトップボックス、パーソナルデータアシスタンス、エンベデッドコンピュータシステム、電子書籍リーダー等を含む。ネットワークは、任意の適切なネットワークを含み、イントラネット、インターネット、セルラーネットワーク、ローカルエリアネットワークまたは他の同様のネットワークまたはこれらの組み合せを含んでいる。そのようなシステムに用いられる構成要素は、少なくとも部分的にはネットワークのタイプ及び／または選択された環境に依存する。それらのネットワークを介した通信のためのプロトコルと構成要素は、よく知られており、本明細書では詳細には議論しない。ネットワークを通じた通信は、有線または無線接続及びその組み合わせにより可能となる。この実施例では、ネットワークは、インターネットを含み、環境としては、要求を受け取り、それに応答してコンテンツを提供するウェブサーバ８０６を含み、しかし他のネットワークに対しても、同様の目的に資する代わりの装置も使えることは当業者には明らかである。
【００６７】
図示した環境は、少なくとも１つのアプリケーションサーバ８０８とデータストア８１０を含む。そこにはいくつかのアプリケーションサーバ、レイヤー、または他の要素、プロセス、または構成要素が存在し得て、それらは繋げられまたは構成され、適切なデータストアからデータを得るなどの仕事を達成するために、相互に作用できることに留意しなければならない。本明細書で使用されるサーバとはハードウェア装置または仮想コンピュータシステムのような様々な方法で実行される。幾つかの環境では、サーバはコンピュータシステムの上で実行されるプログラミングモジュールを参照することができる。本明細書で使用されている用語「データストア」は格納でき、データにアクセスして検索する装置または装置の組み合わせを示すことができ、任意の組み合わせまたは任意の数のデータサーバ、データベース、データ記憶装置、及びデータ記憶媒体を含むことができ、任意の基準、分散したまたは統合された環境の中にある。アプリケーションサーバは、クライエント装置のために、１または複数のアプリケーションの態様を実行するために必要なデータストアと統合し、データアクセス及びアプリケーションのためのビジネスロジックの幾つか（むしろ主たる）を取り扱うための任意の適切なハードウェア及びソフトウェアを含むことができる。アプリケーションサーバは、データストアと協力してアクセスコントロールサービスを提供することができ、ユーザに運ばれるテキスト、グラフィック、オーディオ及び／またはビデオなどのコンテンツを作ることができ、これらはハイパーテキストマークアップ言語（「ＨＴＭＬ」）、拡張可能マークアップ言語（「ＸＭＬ」）またはこの実施例の中の他の適切に構成された言語でユーザに提供されることができる。全ての要求と応答の取り扱いは、クライエントサーバ８０２とアプリケーションサーバ８０８の間のコンテンツの配信と同様に、ウェブサーバで取り扱われることができる。本明細書で議論される構築されたコードは、本明細書のどこかで議論された何か適切な装置またはホストマシン上で実行されうるので、ウェブとアプリケーションサーバは必要では無く、単なる例としての構成要素であることは理解されるべきである。さらに、本明細書で記述された単一の装置で実行される操作は、文脈から明らかでない限り、分散システムを形成しうる多数の装置で集団的に実行されることができる。
【００６８】
データストア８１０は、幾つかの分かれたデータ表、データベース、または他のデータ記憶機構と本開示の特定の態様に関連するデータ保管のための媒体を含むことができる。例えば、図示されたデータストアは、製造データ８１２及びユーザ情報８１６を保管するための機構を含むことができ、これは製造側のためのコンテンツを提供するために使用されうる。データストアは同じくログデータ８１４を保管するための機構を含むことが示され、それはレポート、分析または他のそのような目的に用いられることが可能である。データストアの中に格納される必要があると思われる多くの他の態様、例えばイメージ情報をページし、正しい情報にアクセスするためなどの態様が存在することができ、それらはデータストア８１０の中に、適切なまたは追加の機構として上にリストされた任意の機構の中に格納されることができることは理解されるべきである。データストア８１０は、関連付けられた論理を通してアプリケーションサーバ８０８から指示を受け取り、それに応答してデータを取得し、更新し、または、そうでなければ処理するために操作可能である。ある実施例では、ユーザは、ユーザに操作される装置を通して、項目のあるタイプに対する探索要求を提出したかも知れない。この場合、データストアは、ユーザの身元を確かめるためにユーザ情報にアクセスするかも知れず、そしてそのタイプの項目に関する情報を得るために、詳細情報一覧表にアクセスできる。ユーザがユーザ装置８０２のブラウザを介して見ることが可能なウェブページの上にリストされた結果の中などの情報がユーザに戻されることができる。興味のある特定の項目に対する情報は、ブラウザの特定のページまたはウィンドウの中で見ることができる。しかし、本開示の実施形態は、ウェブページのコンテキストに限定される必要性は無く、通常、より一般的に要求の処理に応用可能で、要求はコンテントに対して必然ではないことは留意されるべきである。
【００６９】
各サーバは典型的には、サ−バの通常の管理と操作のための実行可能なプログラム命令を提供するオペレーティングシステムを含み、及び典型的には、コンピュータ可読記憶媒体（例えば、ハードディスク、ランダムアクセスメモリ、読取専用メモリ等）、格納された命令は、サーバのプロセッサで実行されると、サーバにその意図する機能の実行を許容する。サーバのオペレーションシステムと一般機能性の適切な実施は、本明細書の開示を考慮すれば、既知または市販のもので、当業者に容易に実行できる。
【００７０】
１つの実施形態での環境は、幾つかのコンピュータシステム及び、１または複数のコンピュータネットワークまたは直接接続の通信リンクを介して相互に繋がれた構成要素を用いている分散型コンピュータ環境である。しかしそのようなシステムは、図８に示したよりも、より少ない、または多い数の構成要素を有するシステムに於いても同様に操作可能なことは、当業者には受け入れられる。従って、図８のシステム８００の記述は説明的な性質のものとして受け取られるべきもので、本開示の範囲を制限するものではない。
【００７１】
さらに、種々の実施形態が、オペレーティング環境の広い変化の中で実行可能であり、ある場合には、１または複数のユーザコンピュータ、コンピュータ装置または多くのアプリケーションを操作するために用いることができる処理装置を含むことができる。ユーザまたはクライエント装置は、幾つでも一般目的の、標準オペレーティングシステムで実行するデスクトップ、ラップトップまたはタブレットコンピュータなどのパーソナルコンピュータを含むことができ、同様に、セルラー、無線及びモバイルソフトウェアを走らせ、多くのネットワーク及びメッセージプロトコルをサポートできるハンドヘルド装置を含むことができる。そのようなシステムは、同じく商業的に可能なオペレーティングシステムの多様性の幾らか、及び開発とデータベース管理などを目的とする既知のアプリケーションを実行するワークステーションを含むことができる。これらの装置は、同じくダミーターミナル、シンクライアント、ゲームシステムネットワークを介して通信できる他の装置を含むことができる。
【００７２】
本開示の種々の実施形態は、専門家にはありふれた商業的に使用可能な、伝送制御プロトコル／インターネットプロトコル（「ＴＣＰ／ＩＰ」）、オープンシステムインターコネクション（「ＯＳＩ」）モデルの様々なレイヤーで操作されるプロトコル、ファイル転送プロトコル（ＦＴＰ），ユニバーサルプラグアンドプレイ（「ＵｐｎＰ」）、ネットワークファイルシステム（「ＮＦＳ」）、コモンインターネットファイルシステム（「ＣＩＦＳ」）、及びアップルトークなどの何か１つのプロトコルを用いる通信を支援するための少なくとも１ネットワークを用いる。ネットワークは例えば、ローカルエリアネットワーク、広域エリアネットワーク、仮想プライベートネットワーク、インターネット、イントラネット、エクストラネット、公衆交換電話網、赤外線ネットワーク、無線ネットワーク及びこれらの何らかの組み合わせあり得る。
【００７３】
ウェブサーバを用いる実施形態では、ウェブサーバは、ハイパーテキスト転送プロトコル（「ＨＴＴＰ」）サーバ、ＦＴＰサーバ、コモンゲートウェイインターフェース（「ＣＧＩ」）サーバ、データサーバ、Ｊａｖａサーバ及びビジネスアプリケーションサーバなどのサーバの任意の様々な、または中間層アプリケーションも走らせることができる。サーバは同じく、１または複数のＪａｖａ（登録商標）、Ｃ、Ｃ＃、またはＣ＋＋、またはＰｅｒｌ、Ｐｈｔｈｏｎ、またはＴＣＬなどの同じくこれらの組み合わせなどの何か記述言語で書かれた１または複数のスクリプトまたはプログラムとして実行されるウェブアプリケーションを実行することにより、ユーザ装置からの要求に応えてプログラムまたはスクリプトを実行することができる。サーバは同じくデータベースサーバを含み、商業的に使用可能な、Ｏｒａｃｌｅ（登録商標）、Ｍｉｃｒｏｓｏｆｔ（登録商標）、Ｓｙｂａｓｅ（登録商標）、ＩＢＭ（登録商標）を制限なく含んでいる。
【００７４】
環境は、種々のデータストレージ、及び他のメモリ及び上で議論した記憶媒体を含むことができる。これらは、１または複数のコンピュータに置かれた（及び／または駐在）記憶媒体または何らかの離れたまたはネットワークを横切る全てのコンピュータのような様々な場所に備えることが可能である。実施形態の特定のセットの中で、情報は当業者にはなじみのストレージエリアネットワーク（「ＳＡＮ」）の中に置かれているかも知れない。同様に、コンピュータ、サーバまたは他のネットワーク装置に帰する機能を実行するために必要なファイルは、適切なものとしてローカルに、及び／または遠隔に格納されるかも知れない。システムがコンピュータ化された装置を含んでいると、そのような装置の各々は、バスを介して電気的に繋がったハードウェア要素を含むことができ、要素は、例えば少なくとも１つの中央演算ユニット（「ＣＰＵ」または「プロセッサ」）、少なくとも１つの入力装置（例えばマウス、キーボード、コントローラ、タッチスクリーンまたはキーパッド）及び、少なくとも１つの出力装置（例えば、ディスプレイ装置、プリンタ、またはスピーカ）を含むことができる。そのようなシステムは、同様に、ディスクドライブ、光学記憶装置及び、ランダムアクセスメモリ（「ＲＡＭ」）または読取専用メモリ（「ＲＯＭ」）などの固体記憶装置、同様にリムーバブル媒体装置、メモリカード、フラッシュカードなどの１または複数の記憶装置を含むかも知れない。
【００７５】
それらの装置は、同じくコンピュータ可読記憶媒体リーダー、通信装置（例えばモデム、ネットワークカード（無線または有線）、赤外線通信装置他）、及び上述したようなワーキングメモリを含むことができる。コンピュータ可読記憶媒体リーダーは、遠隔、ローカル、固定、及び／または取り外し可能記憶装置、コンピュータ可読記憶媒体、同様に、臨時及び／または恒久的に含有し、記憶、伝送、及びコンピュータ可読情報の検索と接続ができ、または受け取りするために構成されうる。システムと種々の装置は同じく、典型的に、少なくとも１ワーキングメモリの中に置かれた、多数のソフトウェアアプリケーション、モジュール、サービスまたは他の要素を含み、クライエントアプリケーションまたはウェブブラウザのようなオペレーティングシステム及びアプリケーションプログラムを含む。代替の実施形態は、上述したものから多数の派生型を有するかも知れないことが受け入れられるべきである。例えば、カスタム化されたハードウェアが同様に使用されるかも知れず、及び／または特定の要素がハードウェア、ソフトウェア（アプレットのような可搬ソフトウェアを含む）または両方で実行されたかも知れない。さらにネットワーク入力／出力装置のような他のコンピュータ装置への接続が採用されるかも知れない。
【００７６】
コードまたはコードの１部の含有のための記憶媒体、及びコンピュータ可読媒体は、記憶及び／またはコンピュータ可読命令、データ構造、プログラムモジュールまたは他のデータ、ＲＡＭ、ＲＯＭ、電気的に消去可能プログラマブル読取専用メモリ（「ＥＥＰＲＯＭ」）、フラッシュメモリまたは他のメモリ技術、コンパクトディスク読取専用メモリ（「ＣＤ−ＲＯＭ」），ディジタル多用途ディスク（「ＤＶＤ」）または他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージまたは他の磁気記憶装置または他の望ましい情報とシステム装置でアクセスできるものに限らない、揮発性または不揮発性、取り外し可能及び取り外し不能媒体の、既知の何か適切な媒体または従来技術を含むことができる。本明細書に提供された開示と教訓に基づき、当業者は様々な実施形態を実施するための方法を受け入れる。
【００７７】
従って、仕様書と図面は、制限する感覚よりも説明的なものであると見做されるべきである。しかし、請求項に記載された発明の広い精神と範囲から離れることなく全ての種々の修正と変更がなされるかも知れない。
【００７８】
他のバリエーションも本開示の精神の範囲内である。従って、開示された技術は、様々な修正と代替構成に対して影響しやすく、ここのある図式的実施形態は、図面に示され、そして上に詳細に述べられている。しかし、発明を形または開示された形に限定する意図は無く、反対に、意図は、全ての修正と代替え構築と同等の脱落は、付加された請求項に定義したように、本発明の精神と範囲の内側である。
【００７９】
用語「ａ」及び「ａｎ」及び「ｔｈｅ」及び本開示の実施形態（特に続く請求項の中の）記述の文脈の中の類似の参照体での使用は、特にここで明示するか、または文脈の中で明確に否定していない限り、単数と複数の両方をカバーすると解釈されるべきである。用語「構築」、「有する」、「含む」及び「含有する」は特に注記しない限り、開いた用語で（即ち「含む」、しかしこれに限らない）である。用語「接続された」は修正せず及び物理的な接続を参照しなければ、部分的にまたは全体的に内部に含む、取り付ける、または一緒に混ざる、たとえ何か挟まっていても、と解釈されるべきである。ここでの価値の範囲の記述は、ここで示していない限り、及び分かれた価値が、あたかも個別に、ここに記述されているかのように、仕様書に統合されていると、単に範囲の中に落ちる各々の分かれた価値を、個別に参照するための速記方法として、提供されることを意図しているに過ぎない。用語「セット」は（例えば「項目のセット」）または「サブセット」の使用は、注記しない限り、または文脈で否定しない限り、１または複数のメンバーで構成された空でない集合体と解釈されるべきである。さらにほかに注記しない限り、または文脈で否定しない限り、対応するセットの用語「サブセット」は対応するセットの適当なサブセットを意味する必要はない、しかしセットとサブセットは同等かも知れない。
【００８０】
ここに記述されたプロセスの操作は、ここに示されていない限り、または別途文脈で否定されていない限り何らかの適切な順序で達成される。ここに記述されたプロセス（またはバリエーション及び／またはこれらの組み合わせ）は、実行可能な命令が構成された１または複数のコンピュータシステムの管理下で達成され、そして集団的に遂行される１または複数のプロセッサ、ハードウェアまたはそれらの組み合わせにより、コード（例えば、実行可能命令、１または複数のコンピュータプログラムまたは１または複数のアプリケーション）として実行される。コードは例えば、１または複数のプロセッサで実行される命令の複数で構成されたコンピュータプログラムの形の中でコンピュータ可読記憶媒体に格納されるかも知れない。コンピュータ可読記憶媒体は固定かも知れない。
【００８１】
何らかのまたは全ての実施例、または本明細書に提供された代表的な用語（例えば「のような」）は、単に発明をより良く明らかにするためのもので、請求されていない限り発明の範囲の制限を提示しない。この仕様書の中で用語の無いものは、発明の実務の重要なものとして何も請求していない要素であることを示すものとして見なされるべきである。
【００８２】
本開示の望ましい実施形態が本明細書に記述され、発明を成し遂げるための発明者にとって最良のモードとして知られるものを含んでいる。これらの望ましい実施形態のバリエーションは前述の記述を読めば、当業者には明らかになるかも知れない。発明者は、専門家にそれらのバリエーションを明らかなものとして受け入れ、そして発明者は本開示の実施形態が、明確に記述されたものとして、実用化されざるを得ないものとして意図されることを期待する。従って、本開示の範囲は、全ての修正及び請求項に列挙した内容と同等なもので、適用できる法律で許容された付加物を含んでいる。さらに全ての可能なバリエーションの中の上に記載された要素の何らかの組み合わせは、ここに示されない限り、または文脈で明確に否定されなければ、本開示の範囲に包含される。
【００８３】
全ての参照、ここに記載された、出版物、特許出願及び特許は、もし各参照が独立して、特別に参照として統合されるべきものとして示されていれば、同じ程度に参照として統合される。
【図１】
2019023908.tif 000003
【図２】
2019023908.tif 000004
【図３】
2019023908.tif 000005
【図４】
2019023908.tif 000006
【図５】
2019023908.tif 000007
【図６】
2019023908.tif 000008
【図７】
2019023908.tif 000009
【図８】
2019023908.tif 000010