(57)【要約】  クラウド環境における機密情報の安全な記憶および伝送のためのシステムおよび方法。本方法は、第１のクラウドに関連付けられる第１のリソースに対応する機密情報を受信すること、機密情報を暗号化するための暗号化鍵を生成すること、暗号化鍵を使用して機密情報を暗号化すること、暗号化された機密情報を第１の通信チャネルを経由してクラウドコネクタに送信すること、暗号化鍵をコンフィギュレーションサービスに送信することを含む。コンフィギュレーションサービスは、第２のクラウドに関連付けられる。本方法は、クラウドコネクタによって、第２のクラウドに関連付けられた第２のリソースから暗号化鍵を受信し、暗号化された機密情報を解読するために暗号化鍵を使用することをさらに含み得る。【選択図】図１
2020524950.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサによって、
第１のクラウドに関連する第１のリソースに対応する機密情報を受け取ることと、
前記機密情報を暗号化するための暗号化鍵を生成することと、
前記暗号化鍵を用いて前記機密情報を暗号化することと、
暗号化された前記機密情報を第１の通信チャネルを経由してクラウドコネクタに送信することと、
第２のクラウドに関連付けられるコンフィギュレーションサービスに前記暗号化鍵を送信することと
を含む、クラウド環境における機密情報の安全な記憶および伝送のための方法。
【請求項２】
前記コンフィギュレーションサービスに前記暗号化鍵を送信することは、第２の通信チャネルを経由して前記暗号化鍵を送信することを含み、前記第２の通信チャネルが前記第１の通信チャネルとは異なる、請求項１に記載の方法。
【請求項３】
前記クラウドコネクタが前記第２のクラウドとは異なるクラウドに関連付けられる、請求項１に記載の方法。
【請求項４】
さらに、前記プロセッサによって、前記コンフィギュレーションサービスに前記暗号化鍵を送信した後に前記暗号化鍵を削除する、請求項１に記載の方法。
【請求項５】
さらに、前記第２のクラウドに関連付けられる第２のリソースによって、前記第１のリソースにアクションを実行させる要求をユーザから受信する、請求項１に記載の方法。
【請求項６】
さらに、前記第２のリソースによって、前記要求を受け取ることに対応して、
前記コンフィギュレーションサービスから前記暗号化鍵を回収することと、
前記暗号化鍵および前記要求を前記クラウドコネクタに送信することと
を含む、請求項５に記載の方法。
【請求項７】
前記暗号化鍵は、第３の通信チャネルを経由して前記クラウドコネクタに送信される、請求項６に記載の方法。
【請求項８】
さらに、前記クラウドコネクタによって、
前記第２のクラウドに関連付けられた第２のリソースから前記暗号化鍵を受信することと、
暗号化された前記機密情報を解読するために前記暗号化鍵を使用することと、
暗号化された前記秘密情報を用いてユーザを認証することと、
認証が成功すると、前記要求を前記第１のリソースに送信することとを含む、請求項１に記載の方法。
【請求項９】
さらに、前記クラウドコネクタによって、
前記第２のクラウドに関連付けられた前記第２のリソースから前記暗号化鍵を受信することと、
暗号化された前記機密情報を解読するために前記暗号化鍵を使用することと、
前記要求と解読された前記機密情報を前記第１のリソースに送信することとを含む、請求項６に記載の方法。
【請求項１０】
さらに、前記クラウドコネクタによって、解読された前記機密情報を削除する、請求項８に記載の方法。
【請求項１１】
前記第１の通信チャネルまたは前記第２の通信チャネルのうちの一又は複数が、セキュリティ保護された通信チャネルである、請求項２に記載の方法。
【請求項１２】
前記機密情報は、前記第１のリソースへのアクセスを要求するユーザを認証するためのアイデンティティ証明書を含む、請求項１に記載の方法。
【請求項１３】
クラウドベースのコンピューティングシステムであり、
前記クラウドベースのコンピューティングシステムが、
プロセッサと、
前記クラウドベースのコンピューティングシステムにおける機密情報の安全な記憶および伝送のための方法をプロセッサに実装させるように構成されているプログラミング命令を含む非一時的なコンピュータ可読記憶媒体と
を含み、
前記プログラミング命令が、
前記クラウドベースのコンピューティングシステムにおける第１のクラウドに関連付けられる第１のリソースに対応する機密情報を受け取ることと、
前記機密情報を暗号化するための暗号化鍵を生成することと、
前記暗号化鍵を用いて前記機密情報を暗号化することと、
暗号化された前記機密情報を第１の通信チャネルを経由してクラウドコネクタに送信することと、
コンフィギュレーションサービスに前記暗号化鍵を送信することと
を含み、前記コンフィギュレーションサービスが前記クラウドベースのコンピューティングシステムの第２のクラウドに関連付けられる、コンピューティングシステム。
【請求項１４】
前記コンフィギュレーションサービスに前記暗号化鍵を送信するための前記プログラミング命令が、第２の通信チャネルを経由して前記暗号化鍵を送信するための命令を含み、前記第２の通信チャネルが前記第１の通信チャネルとは異なる、請求項１３に記載のシステム。
【請求項１５】
前記クラウドコネクタは、前記第２のクラウドとは異なるクラウドに関連付けられる、請求項１３に記載のシステム。
【請求項１６】
前記プログラミング命令は、前記暗号化鍵を前記コンフィギュレーションサービスに送信した後に、前記暗号化鍵を削除する命令を、さらに含む、請求項１３に記載のシステム。
【請求項１７】
前記プログラミング命令は、前記クラウドベースのコンピューティングシステムの前記第２のクラウドに関連付けられた第２のリソースによって、前記第１のリソースにアクションを実行させる要求をユーザから受信する命令をさらに含む、請求項１３に記載のシステム。
【請求項１８】
前記プログラミング命令は、
前記第２のリソースによって、前記要求を受け取ることに対応して、
前記コンフィギュレーションサービスから前記暗号化鍵を回収させ、
前記暗号化鍵および前記要求を前記クラウドコネクタに送信させる命令を含む、請求項１７に記載のシステム。
【請求項１９】
前記暗号化鍵が第３の通信チャネルを経由して前記クラウドコネクタに送信される、請求項１８に記載のシステム。
【請求項２０】
前記プログラミング命令は、前記クラウドコネクタに、
前記第２のクラウドに関連付けられた第２のリソースから前記暗号化鍵を受信させ、
暗号化された前記機密情報を解読するために前記暗号化鍵を使用させ、
暗号化された前記秘密情報を用いてユーザを認証させ、
認証が成功すると、前記要求を前記第１のリソースに送信させる命令をさらに含む、請求項１３に記載のシステム。
【請求項２１】
前記プログラミング命令は、前記クラウドコネクタに、
前記第２のクラウドに関連付けられた前記第２のリソースから前記暗号化鍵を受信させ、
暗号化された前記機密情報を解読するために前記暗号化鍵を使用させ、
前記要求および解読された前記機密情報を前記第１のリソースに送信させる命令を、さらに含む、請求項１８に記載のシステム。
【請求項２２】
前記プログラミング命令は、前記クラウドコネクタに、解読された前記機密情報を削除させる命令を、さらに含む、請求項２０に記載のシステム。
【請求項２３】
前記第１の通信チャネルまたは前記第２の通信チャネルのうちの１つまたは複数が、セキュリティ保護された通信チャネルである、請求項１４に記載のシステム。
【請求項２４】
前記機密情報は、前記第１のリソースへのアクセスを要求するユーザを認証するためのアイデンティティ証明書を含む、請求項１３に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願のクロスリファレンス］
本出願は、２０１７年６月２２日に出願された米国特許出願第１５／６３０，５０１号の優先権を主張し、その開示は、参照により本書に組み込まれる。
【０００２】
本開示は、概して、クラウドコンピューティングシステムに関する。より詳細には、本発明は、クラウド環境におけるデータの安全な記憶および伝送のためのシステムおよび方法の実施に関する。
【背景技術】
【０００３】
クラウドコンピューティングは、ユーザがユーザのローカルコンピュータ上というよりは遠隔に位置するコンピュータ上で実行されるアプリケーションまたはサービスを利用することを可能にする。例えば、データはクライアントコンピュータからサーバコンピュータにデータを転送することによってクラウド内で処理されてもよく、サーバコンピュータでは処理されたデータをクライアントコンピュータに戻す前にデータが処理される。このようにして、クライアントコンピュータは、クラウド内のコンピュータに処理タスクをオフロードする。クラウドコンピューティングは多くの利点を有するが、クラウド内のデータを処理することにはリスクがないわけではない。処理されるべきデータはコンピュータネットワークを経由して転送される必要があるので、データは、いくつかの例を挙げると盗聴および傍受などのオンラインコンピュータセキュリティ脅威に対して特に脆弱である。したがって、情報セキュリティは、１人または複数のユーザにクラウドサービスを提供する際に最も重要である。
【０００４】
しばしば、クラウドコンピューティング環境では、エンティティの幾つかのリソースが外部で管理され、クラウドサービスプロバイダのクラウド内に配置され、エンティティの他のリソースはエンティティによって内部で管理され、それ自体のサーバまたは他のコンピューティングデバイス内に配置される。しかしながら、外部クラウドサーバはパブリックに面しており、したがって、幾つかのエンティティは、機密情報へのアクセスを必要とするアプリケーションを使用することに消極的であり得る。さらに、ユーザは機密情報または情報（アイデンティティ証明書など）を、エンティティのコンピューティングデバイスのうちの１つに位置する内部管理アプリケーションまたは他のリソースに送信することができ、そこにおいて、機密情報は、クラウドサービスプロバイダによって提供される外部クラウドを経由してユーザのデバイスから内部リソースに送信することができる。その結果、クラウドサービスプロバイダは、機密情報へのアクセスを不利に有することがある。例えば、クラウドサービスプロバイダは単一のサインオンシステムを経由して様々なリソースまたはアプリケーションへのアクセスを制御することができ、クラウドサービスプロバイダのネットワークまたはシステム上で実行されるパスワードマネージャ（ソフトウェアアプリケーション／エージェント／プロセス／その他）は、セキュアなアプリケーションにユーザ信用証明書を提供する責任を負う。特定のユーザのユーザ信用証明書は、通常、ユーザに関連付けられた暗号化鍵を使用して暗号化された後、パスワードマネージャにアクセス可能な位置に暗号化形式で格納される。ユーザ証明書を必要とするセキュアアプリケーションにアクセスするための認証されたユーザによる要求は、パスワードマネージャによって傍受され、したがって、クラウドサービスプロバイダによってアクセス可能であり得る。さらに、ユーザに関連付けられた完全な暗号化鍵の格納は、その鍵が悪意のあるエンティティによって盗まれる可能性があり、それによってアイデンティティ証明書などの機密情報を漏洩するため、セキュリティの脆弱性を表す。
【０００５】
さらに、クラウドサービスプロバイダが任意の所与の時点で何千もの通信を中継するので、クラウドサービスプロバイダが機密情報を間接的にルーティングする場合、意図しない受信者も機密情報を取得する可能性がある。
【発明の概要】
【０００６】
クラウド環境における機密情報の安全な記憶および伝送のためのシステムおよび方法を実施すること。その方法は、プロセッサによって、第１のクラウドに関連付けられている第１のリソースに対応する機密情報を受信すること、その機密情報を暗号化するための暗号化鍵を生成すること、暗号化鍵を使用して機密情報を暗号化すること、暗号化された機密情報を第１の通信チャネルを経由してクラウドコネクタに送信すること、コンフィギュレーションサービスに暗号化鍵を送信すること、を含む。コンフィギュレーションサービスは、第２のクラウドに関連付けられ得る。幾つかのシナリオでは、クラウドコネクタが第２のクラウドとは異なるクラウドに関連付けられる。機密情報は、第１のリソースへのアクセスを要求するユーザを認証するためのアイデンティティ証明書を含むことができる。
【０００７】
幾つかのシナリオでは、暗号化鍵をコンフィギュレーションサービスに送信することは、第２の通信チャネルを経由して暗号化鍵を送信することを含むことができ、第２の通信チャネルは第１の通信チャネルとは異なる。幾つかのそのようなシナリオでは、第１の通信チャネルおよび／または第２の通信チャネルがセキュリティ保護された通信チャネルである。
【０００８】
幾つかのシナリオでは、それらの方法が暗号化鍵をコンフィギュレーションサービスに送信した後に暗号化鍵を削除することも含み得る。
【０００９】
幾つかの他のシナリオでは、それらの方法が第２のクラウドに関連付けられた第２のリソースによって、第１のリソースにアクションを実行させるための要求をユーザから受信することをさらに含むことができる。それらのようなシナリオでは、方法が、第２のリソースによって、要求を受信することに応答して、コンフィギュレーションサービスから暗号化鍵を取り出すことと、暗号化鍵および要求をクラウドコネクタに送信することとを含むこともできる。そのようなまたは他のシナリオでは、暗号化鍵が第３の通信チャネルを経由してクラウドコネクタに送信され得る。次いで、クラウドコネクタは第２のリソースから暗号化鍵を受信し、暗号化された機密情報を解読するために暗号化鍵を使用し、要求および解読された機密情報を第１のリソースに送信することができる。
【００１０】
幾つかのシナリオでは、方法が、クラウドコネクタによって、第２のクラウドに関連付けられた第２のリソースから暗号化鍵を受信することと、暗号化された機密情報を解読するために暗号化鍵を使用することと、解読された機密情報を使用してユーザを認証することと、認証が成功すると、要求を第１のリソースに送信することとを含むこともできる。そのようなシナリオでは、クラウドコネクタが解読された機密情報を削除することができる。
【図面の簡単な説明】
【００１１】
実施形態は以下の図面を参照して説明され、図面において、同様の数字は図面全体を通して同様のアイテムを表す。
【００１２】
【図１】図１は例示的なシステムの図である。
【００１３】
【図２】図２は例示的なコンピューティングデバイスの図である。
【００１４】
【図３】図３は例示的なクラウドコンピューティング環境の図である。
【００１５】
【図４】図４はクラウド環境を介した機密情報のセキュアな伝送および記憶のための例示的な方法を示すフローチャートである。
【００１６】
【図５】図５はクラウドコンピューティング環境におけるアイデンティティ証明書の安全な記憶のための例示的な方法を示すメッセージフローダイヤグラムである。
【発明を実施するための形態】
【００１７】
本明細書で一般的に説明され、添付の図面に示される実施形態の構成要素は、多種多様な異なる構成で配置および設計され得ることが容易に理解されるであろう。したがって、図面に表されるような様々な実施形態の以下のより詳細な説明は、本開示の範囲を限定することを意図するものではなく、単に様々な実施形態を代表するものである。実施形態の様々な態様が図面に示されているが、図面は特に示されていない限り、必ずしも一定の縮尺で描かれているわけではない。
【００１８】
本発明は、本発明の思想及び基本的特徴から逸脱することなく、他の特定の形で具体化することができる。説明された実施形態は、あらゆる点で例示的なものにすぎず、限定的なものではないとみなすべきである。したがって、本発明の範囲は、この詳細な説明ではなく、添付の特許請求の範囲によって示される。特許請求の範囲と等価の意味および範囲内にある全ての変更は、その範囲内で含まれるものとする。
【００１９】
本明細書全体を通して、特徴、利点または同様の言葉への言及は本発明で実現され得る特徴および利点のすべてが、本発明の任意の単一の実施形態であるべきであること、または本発明の任意の単一の実施形態にあることを暗示するものではない。むしろ、特徴および利点に言及する言葉は、実施形態に関連して説明された特定の特徴、利点または特性が本発明の少なくとも１つの実施形態に含まれることを意味すると理解される。したがって、本明細書全体にわたる特徴および利点、ならびに類似の言語の議論は必ずしもそうではないが、同じ実施形態を指すことがある。
【００２０】
さらに、本発明の記載された特徴、利点および特性は、１つまたは複数の実施形態において任意の適切な方法で組み合わせることができる。当業者は、本書の説明に照らして、本発明が特定の実施形態の特定の特徴または利点のうちの１つまたは複数なしで実施され得ることを認識するであろう。他の例では、本発明のすべての実施形態には存在しない可能性がある特定の実施形態において、追加の特徴および利点を認識することができる。
【００２１】
本明細書全体を通して、「或る実施形態」、「一実施形態」、または、同様の言語への参照は、示された実施形態に関連して説明された特定の特徴、構成または特性が本発明の実施形態の少なくとも１つに含まれることを意味する。したがって、本明細書全体を通して、「或る実施形態において」、「一実施形態において」、および同様の言語の語句は必ずしもそうではないが、すべてが同じ実施形態を指すことがある。
【００２２】
本書面で使用されるように、単数形「ａ」、「ａｎ」および「ｔｈｅ」は文脈がそぐわないことを明確に指示しない限り、複数の参照を含む。別途定義しない限り、本書で使用されるすべての技術的および科学的用語は、当業者によって一般に理解されるのと同じ意味を有する。本書で使用されるように、「comprising」という語は「including」が、これに限定されない」ことを意味する。
【００２３】
本書で使用される「機密情報」という用語は、ユーザまたはエンティティのプライバシーおよび／またはセキュリティを保護するために、許可されていないアクセスから保護されなければならないデータを指す。幾つかの例は、リソース（例えば、ユーザ名、パスワード、個人識別番号、バイオメトリック情報、２ファクタ認証証明書、知識ベース認証証明書など）、個人情報、医療情報、金融情報、社会保障情報などの固有識別子、バイオメトリックデータ、企業秘密、顧客および供給者情報、従業員データなどにアクセスするために必要なアクセス証明書を含むことができる。本書で使用される「アイデンティティ証明書」は、限定しないが、ユーザがアクセスを要求しているセキュアリソースをホストしているネットワークまたはシステムに対してユーザを認証するために、ドメインパスワード、ユーザＩＤ、トークン、またはスマートカード、バイオメトリック、ＳＡＭＬアサーション、他のタイプのアサーションおよびユーザによって、またはユーザの代わりに提供される任意の他の情報が含まれる。
【００２４】
本書で使用される「通信チャネル」という語は、経路、コンジット、論理チャネル、またはクラウドコンピューティング環境内の様々なコンピューティングデバイスなど、２つの当事者間の通信対話または情報交換を可能にするかまたはサポートする任意の手段の通信である。通信チャネルは、有線であっても無線であってもよい。
【００２５】
ここで、図１を参照すると、本書で説明する実施形態を実施することができる例示的なコンピューティング環境を示すブロック構成図が示されている。図１は、１つまたは複数のサーバ１０６Ａ〜１０６Ｎ（本書では一般に「サーバ１０６Ａ〜Ｎ」と呼ぶ）と通信する１つまたは複数のクライアントマシン１０２Ａ〜１０２Ｎ（本書では一般に「クライアントマシン１０２Ａ〜Ｎ」と呼ぶ）を含むコンピューティング環境１０１の一実施形態を示す。クライアントマシン１０２Ａ〜Ｎとサーバ１０６Ａ〜Ｎとの間には、ネットワーク１０４がインストールされている。
【００２６】
或る実施形態では、コンピューティング環境１０１がサーバ１０６Ａ〜Ｎとクライアントマシン１０２Ａ〜Ｎとの間にインストールされたアプライアンス（ここでは図示せず）を含むことができる。このアプライアンスは、クライアント／サーバ接続を管理することができ、場合によっては、複数のバックエンドサーバ間でクライアント接続をロードバランスすることができる。例えば、アプライアンスはクラウドベースの環境においてサーバ１０６Ａ〜Ｎによってホストされるコンピューティングリソース（クラウドハードウェアおよびソフトウェアリソース）にアクセスするために、クライアントマシン１０２Ａ〜Ｎとサーバ１０６Ａ〜Ｎとの間の通信リンクを提供することができるクラウド管理サーバおよび／またはクラウドコネクタとすることができる。クラウドハードウェアおよびソフトウェアリソースは、プライベートコンポーネントおよび／またはパブリックコンポーネントを含むことができる。例えば、クラウドは、１つまたは複数の特定の顧客またはクライアントコンピュータによって、および／またはプライベートネットワークを経由して使用されるプライベートクラウドとして構成することができる。他の実施形態では、パブリッククラウドまたはパブリックプライベートクラウドがオープンまたはクローズされた複数のネットワークを経由して他の顧客によって使用されてもよい。
【００２７】
クライアントマシン１０２Ａ〜Ｎは、幾つかの実施形態では、単一のクライアントマシンまたはクライアントマシンの単一のグループと呼ぶことができ、サーバ１０６Ａ〜Ｎは、単一のサーバまたはサーバの単一のグループと呼ぶことができる。或る実施形態では、単一のクライアントマシンが複数のサーバと通信し、別の実施形態では単一のサーバが複数のクライアントマシンと通信する。さらに別の実施形態では、単一のクライアントマシンが単一のサーバと通信する。
【００２８】
クライアントマシン１０２Ａ〜Ｎは、幾つかの実施形態では、以下の用語、すなわち、クライアントマシン、クライアント、クライアントコンピュータ、クライアントデバイス、クライアントコンピューティングデバイス、ローカルマシン、リモートマシン、クライアントノード、エンドポイント、エンドポイントノード、または第２のマシンのいずれか１つによって参照され得る。サーバ１０６Ａ〜Ｎは、幾つかの実施形態では、以下の用語、すなわち、サーバ、ローカルマシン、リモートマシン、サーバファーム、ホストコンピューティングデバイス、または第１のマシンのうちのいずれか１つによって参照され得る。
【００２９】
或る実施形態では、一つまたは複数のクライアントマシン１０２Ａ〜Ｎは仮想マシンであり得る。仮想マシンは任意の仮想マシンとすることができるが、幾つかの実施形態では、仮想マシンがシトリックス・システムズ、ＩＢＭ、ヴイエムウェア、または任意の他のハイパーバイザによって開発されたハイパーバイザによって管理される任意の仮想マシンとすることができる。他の実施形態では、仮想マシンは任意のハイパーバイザによって管理することができ、さらに他の実施形態では、仮想マシンはサーバ上で実行されるハイパーバイザまたはクライアントマシン上で実行されるハイパーバイザによって管理することができる。
【００３０】
幾つかの実施形態では、クライアントマシン１０２Ａ〜Ｎが、ソフトウェア、プログラム、実行可能命令、仮想マシン、ハイパーバイザ、ウェブブラウザ、ウェブベースクライアント、クライアントサーバアプリケーション、シンクライアントコンピューティングクライアント、ＡｃｔｉｖｅＸ制御、Ｊａｖａ（登録商標）アプレット、ソフトＩＰ電話のようなボイスオーバーインターネットプロトコル（ＶｏＩＰ）通信に関連するソフトウェア、ビデオおよび／またはオーディオをストリーミングするためのアプリケーション、リアルタイムデータ通信を容易にするためのアプリケーション、ＨＴＴＰクライアント、ＦＴＰクライアント、Ｏｓｃａｒクライアント、Ｔｅｌｎｅｔクライアント、または、任意の他の実行可能命令セットのうちのいずれか１つとすることができるアプリケーションを実行、動作、または提供することができる。さらに他の実施形態は、サーバ１０６Ａ〜Ｎまたは他の遠隔配置されたマシン上で遠隔実行するアプリケーションによって生成されたアプリケーション出力を表示する１つまたは複数のクライアントマシン１０２Ａ〜Ｎを含む。これらの実施形態では、クライアントマシン１０２Ａ〜Ｎがアプリケーションウィンドウ、ブラウザ、または他の出力ウィンドウにアプリケーション出力を表示することができる。或る実施形態ではアプリケーションはデスクトップであり、他の実施形態ではアプリケーションはデスクトップを生成するアプリケーションである。
【００３１】
サーバ１０６Ａ〜Ｎは、幾つかの実施形態では、シンクライアントまたはリモートディスプレイプロトコルを使用して、サーバ上で実行されるアプリケーションによって生成されるディスプレイ出力をキャプチャし、アプリケーションディスプレイ出力をリモートクライアントマシン１０２Ａ〜Ｎに送信する、リモートプレゼンテーションクライアントまたは他のクライアントまたはプログラムを実行する。シンクライアントまたはリモートディスプレイプロトコルは、以下のプロトコル、すなわち、フロリダ州フォートローダーデールのシトリックス・システムズによって製造されているＩｎｄｅｐｅｎｄｅｎｔ  Ｃｏｍｐｕｔｉｎｇ  Ａｒｃｈｉｔｅｃｔｕｒｅ（ＩＣＡ）プロトコル、またはワシントン州レドモンドのマイクロソフト社によって製造されているＲｅｍｏｔｅ  Ｄｅｓｋｔｏｐ  Ｐｒｏｔｏｃｏｌ（ＲＤＰ）の何れか１つとすることができる。
【００３２】
コンピューティング環境１０１は、サーバ１０６Ａ〜Ｎが論理的に一緒にサーバファームにグループ化されるように、複数のサーバ１０６Ａ〜Ｎを含むことができる。サーバファームは、地理的に分散され、サーバファーム内で論理的に一緒にグループ化されたサーバ、または、互いに近接して配置されてサーバファーム内で論理的に一緒にグループ化されたサーバを含むことができる。サーバファーム内の地理的に分散されたサーバは、幾つかの実施形態では、ＷＡＮ、ＭＡＮまたはＬＡＮを使用して通信することができ、異なる地理的領域は、異なる大陸、大陸の異なる領域、異なる国、異なる州、異なる都市、異なるキャンパス、異なる部屋または前述の地理的位置の任意の組合せとして特徴付けることができる。幾つかの実施形態では、サーバファームは単一のエンティティとして管理することができ、他の実施形態では、サーバファームは複数のサーバファームを含むことができる。
【００３３】
幾つかの実施形態では、実質的に類似したタイプのオペレーティングシステムプラットフォーム（例えば、レドモンドのマイクロソフト社によって製造されたウィンドウ、Ｗａｓｈ．、ＵＮＩＸ（登録商標）、ＬＩＮＵＸまたはｍａｃＯＳ．）を実行するサーバ１０６Ａ〜Ｎを含むことができる。他の実施形態では、サーバファームが第１のタイプのオペレーティングシステムプラットフォームを実行する第１グループのサーバ、および、第２タイプのオペレーティングシステムプラットフォームを実行する第２グループのサーバを含むことができる。他の実施形態では、サーバファームは、異なるタイプのオペレーティングシステムプラットフォームを実行するサーバを含むことができる。
【００３４】
幾つかの実施形態では、コンピューティング環境１０１は、複数のサーバ１０６Ａ〜Ｎを含むことができ、その結果、サーバ１０６Ａ〜Ｎは１つ以上のサブグループに分割され、そのサブグループの各々は異なるエンティティによって管理および／または操作される。例えば、第１のエンティティは構内、プライベートクラウドまたはパブリッククラウドでサーバの第１のサブグループを動作および／または管理することができ、第２のエンティティは構内、プライベートクラウドまたはパブリッククラウドでサーバの第２のサブグループを動作および／または管理することができ、第３のエンティティは、構内、プライベートクラウドまたはパブリッククラウドでサーバの第３のサブグループを動作および／または管理することができる。
【００３５】
サーバ１０６Ａ〜Ｎは、幾つかの実施形態では、任意のサーバタイプとすることができる。例えば、サーバは、以下のサーバタイプ、すなわち、ファイルサーバ、アプリケーションサーバ、ウェブサーバ、プロキシサーバ、アプライアンス、ネットワークアプライアンス、ゲートウェイ、アプリケーションゲートウェイ、ゲートウェイサーバ、仮想化サーバ、デプロイメントサーバ、ＳＳＬ  ＶＰＮサーバ、ファイアウォール、ウェブサーバ、アプリケーションサーバまたはマスタアプリケーションサーバとして、アクティブディレクトリを実行するサーバまたはファイアウォール機能、アプリケーション機能または負荷分散機能を提供するアプリケーション加速プログラムを実行するサーバのうちのいずれかであり得る。幾つかの実施形態では、サーバがリモート認証ダイヤルインユーザサービスを含むＲＡＤＩＵＳサーバであってもよい。サーバがアプライアンスを含む実施形態では、サーバが以下の製造業者、Ｃｉｔｒｉｘ  Ａｐｐｌｉｃａｔｉｏｎ  Ｎｅｔｗｏｒｋｉｎｇ  グループ、Ｓｉｌｖｅｒ  Ｐｅａｋ  Ｓｙｓｔｅｍｓ  Ｉｎｃ．、Ｒｉｖｅｒｂｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ｉｎｃ．、Ｆ５  Ｎｅｔｗｏｒｋｓ  Ｉｎｃ.、またはＪｕｎｉｐｅｒ  Ｎｅｔｗｏｒｋｓ  Ｉｎｃ．の何れか１つによって製造されるアプライアンスであり得る。幾つかの実施形態は、１つまたは複数のクライアントマシン１０２Ａ〜Ｎから要求を受信し、その要求を第２のサーバ１０６Ｂに転送し、第２のサーバ１０６Ｂからの応答でクライアントマシン１０２Ａ〜Ｎによって生成された要求に応答する第１のサーバ１０６Ａを含む。第１のサーバ１０６Ａは、クライアントマシン１０２Ａ〜Ｎに利用可能なアプリケーションの列挙ならびにアプリケーションの列挙内で識別されたアプリケーションをホストするアプリケーションサーバに関連するアドレス情報を取得することができる。次に、第１のサーバ１０６Ａはウェブインターフェースを使用してクライアントの要求に対する応答を提示し、クライアントマシン１０２Ａ〜Ｎと直接通信して、クライアントマシン１０２Ａ〜Ｎに識別されたアプリケーションへのアクセスを提供することができる。
【００３６】
サーバ１０６Ａ〜Ｎは、幾つかの実施形態では、以下のアプリケーション、すなわち、シンクライアントプロトルを使用してアプリケーション表示データをクライアントに送信するシンクライアントアプリケーション、リモートディスプレイプレゼンテーションアプリケーションなどのアプリケーションのうちの何れか１つを実行することができる。別の実施形態では、マイクロソフト社によって製造されるＭＩＣＲＯＳＯＦＴ  ＥＸＣＨＡＮＧＥなどの電子メールサービスを提供する電子メールサーバ、ウェブサーバまたはインターネットサーバ、デスクトップ共有サーバ、コラボレーションサーバまたは任意の他のタイプのアプリケーションサーバなどのアプリケーションサーバであるサーバを含む。さらに他の実施形態は、以下のタイプのホストサーバアプリケーション、すなわち、カリフォルニア州サンタ・クララのＷｅｂＥｘ，Ｉｎｃ．によって提供されるＷＥＢＥＸ、またはマイクロソフト社によって提供されるＭｉｃｒｏｓｏｆｔ  Ｏｆｆｉｃｅ  ＬＩＶＥ  ＭＥＥＴＩＮＧのうちの何れか１つを実行するサーバを含む。
【００３７】
クライアントマシン１０２Ａ〜Ｎは、幾つかの実施形態では、サーバによって提供されるリソースへのアクセスを求めるクライアントノードとすることができる。他の実施形態では、サーバ１０６Ａ〜Ｎがクライアントマシン１０２Ａ〜Ｎにホストされたリソースへのアクセスを提供することができる。サーバ１０６Ａ〜Ｎは、幾つかの実施形態では、１つまたは複数のクライアントマシン１０２Ａ〜Ｎまたはサーバ１０６Ａ〜Ｎと通信するように、マスタノードとして機能することができる。幾つかの実施形態では、マスタノードは、要求されたアプリケーションをホストするサーバに関連するアドレス情報を識別し、１つまたは複数のクライアントまたはサーバに提供することができる。さらに他の実施形態では、マスタノードがサーバファーム、クライアントマシン、クライアントノードのクラスタまたはアプライアンスとすることができる。
【００３８】
１つまたは複数のクライアントマシン１０２Ａ〜Ｎおよび／または１つまたは複数のサーバ１０６Ａ〜Ｎは、コンピューティング環境１０１内のマシンとアプライアンスとの間にインストールされたネットワーク１０４を介してデータを送信することができる。ネットワーク１０４は１つまたは複数のサブネットワークを備えることができ、１つまたは複数のクライアントマシン１０２Ａ〜Ｎ、１つまたは複数のサーバ１０６Ａ〜Ｎ、コンピューティング環境１０１内に含まれるコンピューティングマシンおよびアプライアンスの任意の組合せの間にインストールすることができる。幾つかの実施形態では、ネットワーク１０４は、ローカルエリアネットワーク（ＬＡＮ）、メトロポリタンエリアネットワーク（ＭＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、クライアントマシン１０２Ａ〜Ｎとサーバ１０６Ａ〜Ｎとの間に位置する複数のサブネットワークからなるプライマリネットワーク、プライベートサブネットワークを有するプライマリパブリックネットワーク、パブリックサブネットワーク４を有するプライマリプライベートネットワーク、または、プライベートサブネットワークを有するプライマリプライベートネットワークとすることができる。さらに別の実施形態は、以下のネットワークタイプ、すなわち、ポイントツーポイントネットワーク、ブロードキャストネットワーク、電気通信ネットワーク、データ通信ネットワーク、コンピュータネットワーク、ＡＴＭ(非同期転送モード）ネットワーク、ＳＯＮＥＴ(同期光ネットワーク）ネットワーク、ＳＤＨ(同期デジタル階層）ネットワーク、無線ネットワーク、有線ネットワーク、または、赤外線チャネルまたは衛星帯域とすることができる無線リンクを含むネットワーク１０４のうちの何れかとすることができるネットワーク１０４を含む。ネットワーク１０４のネットワークトポロジは異なる実施形態内で異なってもよく、可能なネットワークトポロジはバスネットワークトポロジ、スターネットワークトポロジ、リングネットワークトポロジ、リピータベースのネットワークトポロジ、または、階層スターネットワークトポロジを含む。追加の実施形態では、モバイルデバイス間で通信するためのプロトコルを使用するモバイル電話ネットワークのネットワーク１０４を含むことができ、このプロトコルは、ＡＭＰＳ、ＴＤＭＡ、ＣＤＭＡ、ＧＳＭ（登録商標）、ＧＰＲＳ  ＵＭＴＳ、または、モバイルデバイス間でデータを送信することができる任意の他のプロトコルのうちの何れか１つとすることができる。
【００３９】
図２を参照すると、コンピューティングデバイス２００の例示的なアーキテクチャの詳細なブロック図が示されており、図１に示すクライアントマシン１０２およびサーバ１０６はコンピューティングデバイス２００の任意の実施形態として配備されることができ、かつ／またはコンピューティングデバイス２００の任意の実施形態上で実行することができる。したがって、コンピューティングデバイス２００の以下の説明は、図１のクライアントマシン１０２および／またはサーバ１０６を理解するのに十分である。
【００４０】
コンピューティングデバイス２００は、図２に示すものよりも多いまたは少ないコンポーネントを含むことができる。しかしながら、示された構成要素は、本解決策を実施する例示的な実施形態を開示するのに十分である。図２のハードウェアアーキテクチャは、クラウドコンピューティング環境における機密情報の記憶および／または伝送を容易にするように構成された代表的なコンピューティングデバイスの或る実施形態を表す。したがって、図２のコンピューティングデバイス２００は以下で説明するように、（ａ）機密情報の暗号化、（ｂ）複数の通信チャネルを経由したクラウドコンピューティング環境における暗号化された機密情報の伝送および／または記憶のための方法の少なくとも一部を実装する。
【００４１】
コンピューティングデバイス２００のコンポーネントの幾つかまたは全ては、ハードウェア、ソフトウェアおよび／またはハードウェアとソフトウェアとの組合せとして実装することができる。ハードウェアは一つ又はそれ以上の電子回路を含むが、これに限定されない。電子回路は複数の受動素子（例えば、抵抗器とコンデンサ）および／または能動素子（例えば、複数の増幅器および／または複数のマイクロプロセッサ）を含むことができるが、これらに限定されない。受動素子および／または能動素子は、本書で説明される方法、手順または機能のうちの１つまたは複数を実行するように適合され、配置され、かつ／またはプログラムされることができる。
【００４２】
図２に示すように、コンピューティングデバイス２００は、ユーザインターフェース２０２、中央処理装置（「ＣＰＵ」）２０６、システムバス２１０、システムバス２１０を経由してコンピューティングデバイス２００の他の部分に接続され、それによってアクセス可能なメモリ２１２、および、システムバス２１０に接続されたハードウェアエンティティ２１４を含む。ユーザインターフェースは入力デバイス（例えばキーパッド２５０）および出力デバイス（例えばスピーカ２５２、ディスプレイ２５４および／または発光ダイオード２５６）を含むことができ、これらは、コンピューティングデバイス２００の動作を制御するためのユーザソフトウェア対話を容易にする。
【００４３】
ハードウェアエンティティ２１４の少なくとも幾つかは、ＲＡＭ、ディスクドライバおよび／またはコンパクトディスク読取り専用メモリ（「ＣＤ−ＲＯＭ」）とすることができるメモリ２１２へのアクセスおよびメモリ２１２の使用を含むアクションを実行する。ハードウェアエンティティ２１４は本書で説明される方法、手順または機能のうちの１つまたは複数を実装するように構成された１つまたは複数の命令セット２２０（例えばソフトウェアコード）が格納されるコンピュータ可読記憶媒体２１８を備えるディスクドライブユニット２１６を含むことができる。命令２２０は、コンピューティングデバイス２００による実行中に、メモリ２１２内および／またはＣＰＵ２０６内に、完全にまたは少なくとも部分的に存在することもできる。メモリ２１２およびＣＰＵ２０６は、機械可読媒体で構成することもできる。ここで使用される「機械可読媒体」という用語は、１つまたは複数の命令セット２２０を格納する単一の媒体または複数の媒体（例えば、集中型または分散型データベース、および／または、関連するキャッシュおよびサーバ）を指す。ここで使用される「機械可読媒体」という用語は、コンピューティングデバイス２００による実行のための命令２２２のセットを格納、符号化または搬送することができ、ここで説明されるように、コンピューティングデバイス２００に方法のうちの任意の１つまたは複数を実行させる任意の媒体も指す。
【００４４】
幾つかのシナリオでは、ハードウェアエンティティ２１４は、（ａ）機密情報の暗号化、および（ｂ）クラウドコンピューティング環境における、複数の通信チャネルを経由した暗号化された機密情報の伝送および／または記憶を容易にするようにプログラムされた電子回路（例えば、プロセッサ）を含む。この点に関して、電子回路は、コンピューティングデバイス２００にインストールされたソフトウェアアプリケーション２２４にアクセスし、実行することができることを理解されたい。ソフトウェアアプリケーション２２４の機能は、議論が進むにつれて明らかになるであろう。
【００４５】
次に図３を参照すると、本書で説明する１つまたは複数の例示的な態様を実装するために使用することができる例示的なクラウドコンピューティングシステムが示されている。クラウドコンピューティング環境３００は、図３に示すものよりも多いまたは少ないコンポーネントを含むことができる。しかしながら、示されたコンポーネントは、本解決策を実施する例示的な実施形態を開示するのに十分である。コンピューティング環境３００のコンポーネントの幾つかまたは全ては、本書で説明する方法、手順または機能のうちの１つまたは複数を実行するように構成され、かつ／またはプログラムされた、ハードウェア、ソフトウェアおよび／またはハードウェアとソフトウェアの組合せとして実装することができる。
【００４６】
図３に示すように、クラウドコンピューティング環境３００は、パブリッククラウドサービスおよびリソースを提供するための外部クラウドサービスプロバイダ３１４を備える。クラウドコンピューティング環境は、クライアントデバイス３０２と、内部クラウドと外部クラウドサービスプロバイダ３１４との間の通信を容易にするクラウドコネクタ３１０を備える内部クラウドとをさらに備える。
【００４７】
システム３００は、エンティティの幾つかのリソースが外部で管理され、クラウドサービスプロバイダのクラウド内に配置され、エンティティの他のリソースがエンティティによって内部で管理されエンティティ自体のサーバまたは他のコンピューティングデバイス（内部リソース３０８）内に配置されるクラウドコンピューティング環境の形態とすることができる。ここで使用されるように、「内部」という用語のバリエーションは、エンティティ自体によって管理され、かつ／または、エンティティによって制御され外部クラウドサービスプロバイダによって制御されない１つまたは複数のコンピューティングデバイス上に格納されたリソースおよびアプリケーションを指すことができる。一例として、リソースはエンティティに関連付けられた許可されたユーザによるリモートアクセスのために、エンティティの構内サーバに格納され得る。例えば、特定のソフトウェアアプリケーション（例えば、内部リソース）は、雇用主によって制御され管理されるサーバ上に格納されてもよく、その従業員のうちの１人以上によってアクセスされてもよい。本書で使用されるように、「外部」という用語のバリエーションはクラウドサービスプロバイダによって管理されるリソースおよびアプリケーションを指すことができ、かつ／または外部クラウドサービスプロバイダによって制御される１つまたは複数のコンピューティングデバイス上に格納される。一例として、外部リソースはエンティティに関連付けられた許可されたユーザによるアクセスのために、外部クラウドサービスプロバイダのクラウドベースのサーバに格納され得る。そのような例では、外部リソースはエンティティに関連付けられてもよい。リソース（外部および／または内部）はネットワーク、ファイル、データ、コンピューティングデバイス、アプリケーション、モジュール、クラウドサービス、機能、または任意の他のエンティティを含むことができるが、これらに限定されない。
【００４８】
クラウドコンピューティング環境（例えば、クラウドコンピューティング環境３００）のユーザは、地理的にリモートの内部コンピューティングデバイス上にインストールされた内部リソースにアクセスすること、および／または、外部サーバ上に位置する外部リソースにアクセスすることまたは外部リソースを使用することを望むことがある。ユーザは、外部クラウドサービスを経由して内部リソースおよび／または外部リソースに接続し、かつ／または、あるいは通信することができる。場合によっては、ユーザは、内部リソースおよび／または外部リソースへのアクセスを得るために、認証のために内部リソースおよび／または外部リソースにアイデンティティ証明書（例えば、ユーザ名およびパスワード）を提供しなければならない場合がある。そのような場合、アイデンティティ証明書は、可逆的に暗号化され、外部クラウドサービスを経由して内部リソースおよび／または外部リソースに送信されてもよく、次に、以下でさらに詳細に説明するように、内部リソースおよび／または外部リソースによって解読され、使用されてもよい。他のタイプの機密情報も、可逆的に暗号化され、本書で説明される原理を使用して、外部クラウドサービスを経由して内部リソースおよび／または外部リソースに送信され得ることが理解されるのであろう。
【００４９】
クラウドコンピューティング環境３００は、パブリッククラウドサービスおよびリソースを提供するための外部クラウドサービスプロバイダ３１４を含むことができる。外部クラウドサービスプロバイダ３１４は、ユーザがインターネットを経由してアクセスすることができるそのコンピューティングデバイス（図示せず）に格納されたアプリケーションおよび／または他のリソースを含むことができる。外部クラウドサービスプロバイダ３１４は、また、特定の内部コンピューティングデバイスから、外部クラウドサービスプロバイダ３１４の一部ではないかもしれないエンティティの異なる構内にある別の内部コンピューティングデバイスに情報を転送することもできる。一例として、特定の地理的ロケーションに位置するプライベートクラウドの一部であるコンピューティングデバイスは、外部クラウドを経由して、異なる地理的ロケーションに位置するエンティティのプライベートクラウドの一部でもある（またはエンティティの異なるプライベートクラウドであってもよい）別のコンピューティングデバイスに情報を送信することができる。
【００５０】
外部クラウドサービスプロバイダ３１４は、様々な外部リソースおよび／またはサービス（「クラウドサービス３１８」）を含むことができる。クラウドサービスの例にはコンフィギュレーションサービス、構内アクティブディレクトリのシングルサインオンパスワードサービス、認証サービス（例えば、知識ベース認証サービス、第２ファクタ認証サービスなど）、セルフサービスパスワードリセットサービス（ＳＳＰＲサービス）、構内アクティブディレクトリアクセスサービス、データストアアクセスサービスなどが含まれるが、これらに限定されない。
【００５１】
一実施形態では、コンフィギュレーションサービス３１６（「コンフィギュレーションサービス」とも呼ばれる）がクラウドサービスプロバイダ３１４（および／または内部リソース）のためのクラウド内のすべてのサービス間通信を処理することができる。コンフィギュレーションサービス３１６は、外部クラウドサービスプロバイダのためのすべてのサービスのリストを保持し管理することができ、それにより、外部クラウドサービスプロバイダは、それらのアドレスまたは外部クラウドサービスプロバイダが提供する機能を含むエンドポイントを通知することができる。サービスがコンフィギュレーションサービスに正常に登録した後にのみ、サービスはアクティブになり、他のサービスおよびアプリケーションと通信することができる。いったん行われると、コンフィギュレーションサービス３１６は、アクティブなサービスであるとして、すべてのアクティブなサービスおよび登録されたサービスのリストを共有する。コンフィギュレーションサービス３１６は、任意のサービスディレクトリまたはリストおよび関連情報をコンフィギュレーションストレージに記憶することができる。コンフィギュレーションストレージは、図１および図２に関連して説明したものなど、任意のタイプおよび形式のストレージおよび／またはメモリを含むことができる。各サービスに関連する情報はコンフィギュレーションストレージに別々にまたは一緒に記憶することができ、任意のタイプのフォーマットで記憶することができる。一実施形態では、コンフィギュレーションサービス３１６はアイデンティティ証明書、暗号化鍵、機密情報などを格納することもできる。
【００５２】
クラウドコンピューティング環境３００はパーソナルコンピュータ、ラップトップ、タブレット、スマートフォンなどとすることができるクライアントデバイス３０２を含むことができ、上述のコンピューティングデバイスの１つまたは複数のコンポーネントを含むことができる。一実施形態では、クライアントデバイス３０２はユーザのパーソナルデバイスなどのリモートコンピューティングデバイスとすることができ（例えば、ユーザがクライアントデバイス３０２を所有することができる）、ユーザが認証された後に内部クラウドおよび／または外部にログインおよび／または他の方法でアクセスすることができる。他の幾つかの例では、クライアントデバイス３０２が内部クラウド（例えば、雇用者提供ラップトップ）を管理および制御するエンティティによって所有されてもよい。そのような場合、ユーザがエンティティの構内の端末からクライアントデバイス３０２に接続するとき、クライアントデバイス３０２は、内部クラウドの一部であってもよい。そうでない場合、ユーザがエンティティの構内外（例えば、ユーザの家庭）でクライアントデバイス３０２を使用するとき、クライアントデバイス３０２は内部クラウドの一部ではない場合があるが、ユーザが認証された後に（例えば、仮想プライベートネットワーク（ＶＰＮ）接続を経由して）、ログインすること、および／または、内部クラウドにアクセスすることが可能である場合がある。
【００５３】
クライアントデバイス３０２は、ウェブブラウザ３０６と、クライアントデバイス３０２上にインストールされたクライアントソフトウェアであってもよいレシーバー３０４などのプログラムとを含んでもよい。レシーバー３０４は、クライアントデバイス３０２が内部および／または外部クラウドサービスにアクセスすることを可能にし得る。ウェブブラウザ３０６はクライアントデバイス３０２が外部クラウドサービスプロバイダによって管理され、構成され、および／または提供されるが（リモートセッションを経由するのではなく）クライアントデバイス３０２上で実行される特定のアプリケーションに安全にアクセスすることを可能にし得る。これにより、ユーザは管理者がライセンスおよびコンフィギュレーションを集中的に管理することを可能にしながら、ローカル処理能力を利用することができる。例えば、管理者はネットワーク遅延を招くことなくローカルプロセッサを利用するためにクライアントデバイス３０２上で実行することができる、例えば、暗号化アプリケーション、認証アプリケーションなどを構成し、発行することができる。そのようなアプリケーションは、例えば、管理ユーザインターフェース（「Ａｄｍｉｎ  ＵＩ」）３５０によって、クライアントデバイス３０２による使用のために発行されてもよい。他の例としては、グラフィックスＵＩ、低レベルソフトウェア開発キット（ＳＤＫ）などが挙げられるが、これらに限定されない。別の例では、クライアントデバイス３０２がレシーバー３０４を使用して、内部および／または外部クラウドに格納されたアプリケーション、仮想デスクトップ、およびデータに安全にアクセスすることができる。一例では、レシーバー３０４がフロリダ州フォートローダーデールのシトリックス・システムズ社によって開発されたＣｉｔｒｉｘ  Ｒｅｃｅｉｖｅｒとすることができる。
【００５４】
クライアントデバイス３０２は、また、機密情報の暗号化のために構成されたデータ暗号化モジュール３２０を含むことができる。代替としておよび／または追加として、クライアントデバイスはＡｄｍｉｎ  ＵＩ３５０によって公開されかつウェブブラウザ３０４を使用してクライアントデバイス３０２によってアクセスされる機密情報の暗号化のために構成されたデータ暗号化モジュール３２０にアクセスし、それを使用することができる。データ暗号化モジュール３２０は、鍵生成器３２１、鍵交換モジュール３２２および暗号化器３２３を含むことができる。鍵生成器３２１は、機密情報の暗号化のための（以下で説明する）対称および／または非対称暗号化鍵を生成することができる。鍵は、ランダム鍵生成器、擬似ランダム鍵生成器または任意の他の鍵生成器を使用して生成され得る。
【００５５】
鍵交換モジュール３２２は、通信チャネルを経由して外部クラウドのコンフィギュレーションサービス３１６に１つまたは複数の対称暗号化鍵または非対称暗号化鍵を安全に送信するように構成され得る。一実施形態では、外部クラウドサービスプロバイダ３１４または許可されていないエンティティが暗号化鍵にアクセスできないように、通信チャネルをセキュアまたは暗号化することもできる。セキュリティ保護された通信チャネルは、例えば、伝送制御プロトコル（ＴＣＰ）、トランスポート層セキュリティ（ＴＬＳ）などの任意のトランスポート層プロトコルのトップ上に実装されたセキュリティ保護されたソケット層（ＳＳＬ）プロトコルに基づくことができる。ＳＳＬプロトコルは、（ＨＴＴＰＳを形成するための）ＨＴＴＰ、ＦＴＰなどのアプリケーション固有のプロトコルと共に使用することもできる。
【００５６】
コンフィギュレーションサービス３１６は暗号化鍵を格納することができ、格納された暗号化鍵を、別の通信チャネルを経由して内部リソースおよび／または外部リソースまたはサービスに送信することができる。コンフィギュレーションサービス３１６で鍵を受信すると、鍵生成器３２１はそのメモリから鍵を破棄（例えば削除）することができる。
【００５７】
暗号化部３２３は、鍵生成部３２１によって生成された暗号化鍵を用いて機密情報などのデータを可逆的に暗号化して暗号化データを生成するように構成されてもよい。暗号化器３２３は、当業者に現在または今後知られる任意のタイプの操作をデータに対して実行することによって、データを暗号化することができることは明らかである。
【００５８】
或る実施形態では、暗号化器３２３は、暗号化された機密情報を作成するために、鍵および機密情報に対して数学的アルゴリズムを実行するソフトウェアモジュールであってもよい。当業者は、本発明を実施するために使用される正確な暗号化技術が本書に記載される実施形態の範囲内で変更し得ることを認識するであろう。
【００５９】
暗号化は、本書で使用される場合、解釈された形式からデータを変換し、暗号化されたデータを解読することができるものを除いて、データを誰に対しても解釈不能にするプロセスによってデータを保護するための、様々な手段、方法、システム、機能などのうちの任意の１つまたは複数を含むことができる。暗号化は、また、秘密鍵および公開鍵暗号化を含む、多種多様な暗号化規格および技術を含むことができる。暗号化および解読は、パスワード、鍵または両方の組合せを実装するシステムを経由して達成され得る。暗号化スキームは、データを暗号化しようとする当事者とデータを解読しようとする当事者との間で秘密鍵が交換される対称鍵暗号化スキームを含むことができる。そのようなスキームは、また、「共有秘密」または「事前共有」暗号化スキームを含むことができる。そのような暗号化スキームの例は、Ａｄｖａｎｃｅｄ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ、Ｂｌｏｗｆｉｓｈ、Ｔｗｏｆｉｓｈ、Ｓｅｒｐｅｎｔ、ＣＡＳＴ５、ＲＣ４、３ＤＥＳおよびＩＤＥＡを含むことができる。
【００６０】
本書で説明されるいくつかの態様、特徴または実施形態は、公開／秘密鍵暗号化を利用することができる。公開鍵暗号化は、意図された受信者、受信者または他の意図された視聴者によってのみ解釈され得る形式にデータを変換するための任意の１つまたは複数の方法を含むことができる。公開鍵暗号化方法は非対称鍵アルゴリズム（例えば、ＤＳＳおよびＲＳＡ）の使用を含み得、ここで、データを暗号化するために必要な鍵は、データを解読するために必要な鍵とは異なる。これにより、前記データを暗号化するための鍵である「公開鍵」を広く共有することができる。暗号化された情報を解読するための別個の鍵が秘密のままであるため、セキュリティの完全性が維持される。秘密鍵はプライベイト鍵であってもよく、公開鍵及び対応するプライベート鍵との組み合わせは、公開鍵とプライベイト鍵との対であってもよい。したがって、公開鍵暗号化は、１つまたは複数の秘密鍵の安全な初期交換を必要としない。
【００６１】
本書で説明される幾つかの態様、特徴または実施形態は公開鍵または公開鍵暗号化を使用することができ、あるいは、その代わりにまたはそれに加えて、プライベイト鍵暗号化または任意の他の形態の暗号化を含む、任意の他の形態の暗号化を使用することができる。
【００６２】
本書で説明される幾つかの態様、特徴または実施形態は、対称鍵または共有秘密暗号化を利用することができる。あるいは、幾つかの態様、特徴または実施形態は公開鍵暗号化または任意の他の形態の暗号化を含む、本書で開示されるシステムおよび方法をうまく実施するために、任意の他の形態の暗号化を使用することができる。
【００６３】
本書で説明される幾つかの態様、特徴または実施形態は、暗号化または解読の目的のために、「共有鍵（ｓｈａｒｅｄ  ｋｅｙ）」または「共有鍵（ｓｈａｒｉｎｇ  ｋｅｙｓ）」を利用することができる。共有鍵は、ユーザの特定のグループ間で共有され得る鍵を含み得る。共有鍵は、暗号化スキームまたは標準の任意のタイプまたは形式で使用される任意のタイプまたは形式の鍵であってもよい。幾つかの例では、共有鍵が特定のファイルに固有であってもよく、または単一のユーザ、アプリケーションまたはプロセスのみと共有されてもよい。加えて、または代替として、共有鍵は、非対称プライベイト／公開鍵ペアであってもよい。
【００６４】
図３に戻って参照すると、クラウドコンピューティング環境３００の内部クラウドはクラウドコネクタ３１０も含むことができ、クラウドコネクタ３１０は外部クラウドから内部クラウドに送信されているメッセージを分析し、インターセプトし、および／または転送することができ、その逆も同様である。一実施形態では、クラウドコネクタ３１０が内部クラウドの一部でなくてもよい。内部クラウドは、１つまたは複数の内部リソース３０８も含むことができる。クラウドコネクタは、パブリッククラウド（クラウドサービス３１８）内のサービスと内部リソース３０８との間の通信を可能にする。一実施形態では、クラウドコネクタ３１０がセキュアリソースへのアクセスを要求するユーザを認証するための１つまたは複数の認証モジュールまたはサービスを含むことができ、またはアクセスすることができる。認証モジュールは、パスワードベース認証、知識ベース認証、バイオメトリックベース認証、第２のファクタ認証などのようなアイデンティティクレデンシャルに基づいてユーザを認証することができ、これらの認証に限定されない。
【００６５】
一実施形態では、クラウドサービス３１８がクラウドサービスの提供中に内部リソース３０８によって１つまたは複数のアクションが実行されることを要求し、かつ／または実行させることができるように構成することができる。しかしながら、そのようなアクションの実行を許可する前に、内部リソース３０８は機密情報（例えば、パスワード）の提示を要求することができる。例えば、クラウドサービス（例えば、ＳＳＰＲサービス）を用いて内部リソース（例えば、構内アクティブディレクトリ）に関連付けられたパスワードを変更するためのパスワードリセットサービスの実行は、ＳＳＰＲサービスに、構内アクティブディレクトリにパスワードリセットを実行させることを要求する。しかしながら、構内アクティブディレクトリは、パスワードリセットを許可する前に、古いパスワード、ユーザを認証するための認証情報などの機密情報を提供することをＳＳＰＲサービスに要求することができる。しかしながら、そのような機密情報をクラウドサービス３１８に格納することは、セキュリティ問題につながる可能性がある。
【００６６】
したがって、一実施形態では、クライアントデバイス３０２において、最初に機密情報を受信すると、クラウドサービス３１８によって後に使用されて内部リソース３０８に所望のアクションを実行させることができ、クライアントデバイス３０２によって含まれ、かつ／または（例えば、Ａｄｍｉｎ  ＵＩを経由して）アクセスされる暗号化モジュール３２０を使用して、鍵を作成し、その鍵を用いて機密情報を暗号化することができる。次に、暗号化モジュール３２０は生成された鍵をクラウドサービス提供者３１４のコンフィギュレーションサービス３１６に送信し、暗号化された機密情報をクラウド接続部３１０に送信することができる。これは、クラウドサービス３１８が機密情報にアクセスしないこと、および／または、機密情報を暗号化された形式および／または暗号化されていない形式で記憶しないことを保証する。後に、クラウドサービス３１８が内部サービス３０８によって実行されるべきアクションを要求するとき、クラウドサービス３１８はコンフィギュレーションサービス３１６から暗号化鍵のコピーを要求し、クラウドコネクタ３１０がクライアントデバイス３０２から到達可能であるかどうかに応じて、受信した鍵を（暗号化された機密情報を格納する）クラウドコネクタ３１０に直接または間接的に（別のクラウドサービスを介して）送信することができる。クラウドコネクタ３１０は、受信された鍵を使用して、格納された暗号化された機密情報を解読するために、その鍵を使用し、解読された機密情報を認証のために提供することによって、内部サービス３０８に必要なアクションを要求することができる。
【００６７】
当業者であれば、内部クラウドと外部クラウドとの間で情報を伝送および記憶するための上述のクラウド環境は例示を目的としたものであり、本書に記載の実施形態をサポートするために展開されることができるアーキテクチャのタイプに関して、決して限定するものではないことを理解されよう。同様の原理は２つの異なるエンティティの内部クラウド、単一エンティティの内部クラウド、２つの外部クラウド、および／または内部クラウドおよび外部クラウドなどであるが、これらに限定されない、任意の２つのクラウド環境間の情報の記憶および伝送に適用され得る。
【００６８】
ここで図４を参照すると、クラウド環境における機密情報の安全な送信および／または記憶のための例示的な方法４００が示されている。クラウド環境３００の一例が図３に示されている。プロセス４００は、システム１００などのシステムによって実行することができる。例えば、一つまたは複数の実施形態では、図４に示すプロセス４００および／またはその１つまたは複数のステップがコンピューティングデバイス（例えば、図１〜２の任意のデバイス）によって実行され得る。他の実施形態では、図４に示すプロセスおよび／またはその１つまたは複数のステップが非一時的なコンピュータ可読メモリなどのコンピュータ可読媒体に格納されたコンピュータ実行可能命令で実施することができる。代替として、または追加として、プロセス４００のステップのいずれかは、任意のクライアントデバイス、ゲートウェイデバイス、クラウドコネクタ、外部クラウドプロバイダ、および／またはサードパーティサーバ、またはコンピューティングデバイス上で実行され得る。代替として、または追加として、プロセス４００のステップのいずれかは、任意のブラウザプラグイン、Ａｄｍｉｎ  ＵＩなどで実行されてもよい。
【００６９】
方法４００は、クラウド環境のクライアントデバイスが機密情報を受信すると、４０２で開始することができる。一実施形態では、クライアントデバイスが（第１のクラウドに関連付けられた）第１のリソースにアクセスするために、および／または第１のリソースに所望のアクションを実行させるために後で使用され得るアイデンティティ証明書を受信することができる。例えば、クライアントデバイスは、ログオン中のユーザの初期認証中にリソースにアクセスするためのアイデンティティ証明書を受信することができる。一実施形態では、クライアントデバイスが後続のログイン使用のために、例えば、第１のリソース、第１のクラウドに関連付けられた別のリソース、および／または、第１のリソースとは異なるクラウド上の別のリソースなどの、受信者への送信のための情報を受信することができる。しかしながら、クライアントデバイスは、以下に説明するように、機密情報を傍受し、それをクラウドコネクタにおいて暗号化された形式で記憶することができる。これは、暗号化されていない機密情報が例えば、第１のクラウドではないクラウド、または第１のリソースではないリソースなどの信頼されていないエンティティに送信および／または格納されないことを保証する。例えば、管理者は、ＳＳＰＲサービスを使用して１つまたは複数のリソースに対応するユーザのアクセス証明書を変更することをユーザに許可するための特権パスワードを含む機密情報を提供することができる。第１のリソースは、任意の内部および／または外部リソースとすることができる。
【００７０】
一実施形態では、クライアントデバイスは、受信された情報が例えば情報のコンテンツ（例えば、キーワード、タグなど）、情報のタイプ、ユーザ情報（例えば、ユーザが管理者である場合）、送信者デバイス情報、受信者リソースまたはアプリケーション記述、情報の意図された使用などに基づいて、第１のリソースにアクセスし、かつ／または、第１のリソースに所望のアクションを実行させるために使用され得る機密情報を含むことを識別し得る。例えば、クライアントデバイスは、受信した情報がパスワード、ユーザ名、社会保障番号、口座番号などのキーワードを含む場合、受信した情報が機密情報を含むと判定することができる。別の例では、クライアントデバイスは、受信された情報がユーザまたはデバイスを認証するための認証トークンを含む場合、その情報が機密情報を含むと判定することができる。機密情報はユーザ識別（例えば、ユーザ番号、ユーザ名など）および／またはパスワード、個人識別番号（ＰＩＮ）、スマートカード識別、セキュリティ証明（例えば、公開鍵証明）、および、（例えば、指紋読取装置、虹彩スキャン、音声認識装置、または他のバイオメトリックなどのセンサによって取り込まれる）ユーザの特徴、または特定のアプリケーションまたはリソースにアクセスするための認証に使用される任意のデータを含むことができるが、これらに限定されない。
【００７１】
機密情報を受信すると、クライアントデバイスは、（クライアントデバイスに含まれ、および／またはブラウザを介してＡｄｍｉｎ  ＵＩによってパブリッシュされる）暗号化モジュールを使用して、機密情報の暗号化のための鍵を生成し（４０４）、上述のように機密情報を暗号化することができる（４０６）。
【００７２】
暗号化されると、クライアントデバイスは、生成された鍵を、第１の通信チャネルを経由して、記憶のためにコンフィギュレーションサービス（または別のサービス、リソース、またはコンピューティングデバイス）に送信することができる（４０８）。代替実施形態では、コンフィギュレーションサービスは、第１のクラウドではない第２のクラウドに関連付けることができる。
【００７３】
一実施形態では、クライアントデバイスは、メモリから鍵を削除することができる（４１０）。クライアントデバイスは、コンフィギュレーションサービスから鍵の受信を確認するメッセージを受信すると、メモリから鍵を削除する。これにより、コンフィギュレーションサービスが鍵を正常に受信する前にクライアントデバイスが鍵を削除することが防止される。アクノレッジメントメッセージを受信するまで鍵を削除しないことによって、クライアントデバイスは、送信の失敗の際にコンフィギュレーションサービスに鍵を再送信することができる。あるいは、クライアントデバイスが暗号化鍵をコンフィギュレーションサービスに送信するとすぐに鍵を削除することができる。鍵を削除することによって、クライアントデバイスは、暗号化された情報を解読するために必要とされるメカニズムを有さない。したがって、許可されていないエンティティは例えば、デバイスにハッキングすることによってのみ暗号化された情報を取り出すことができるが、暗号化された情報を解読することはできない（したがって、情報を使用することはできない）。
【００７４】
一実施形態では、クライアントデバイスが暗号化後に、暗号化されていない機密情報をメモリから削除することもできる。
【００７５】
暗号化されると、クライアントデバイスは、第１の通信チャネルとは分離された別個の第２の通信チャネルを経由して、暗号化された機密情報を、記憶のためにクラウドコネクタに送信する（４１２）こともできる。一実施形態では、通信チャネルが接続時間、位置、媒体タイプ、信号変調のモード、信号偏波、搬送波周波数などの様々な態様で異なることがある。例えば、第１の通信チャネル上の通信プロトコル、通信ネットワーク、および／または通信媒体は、第２の通信チャネル上の通信プロトコル、通信ネットワーク、および／または通信媒体とは異なる。幾つかの実施形態では、通信チャネルがワイヤ、ケーブル、または他の物理的信号搬送媒体などの物理的伝送媒体、あるいは無線信号または電磁波信号などの無線通信媒体を指すことができる。一実施形態では、通信チャネルの各々は、盗聴者が複数の関連するサーバからの送信を相関させることによって、鍵および暗号化されたメッセージを識別する可能性を排除するために、固有のＩＰアドレスを用いて構成され得る。あるいは、プロキシサーバを使用して、データが固有のＩＰアドレスから確実に配信されるようにしてもよい。さらに、上述したように、１つ以上の通信チャネルは、追加のセキュリティのために確保されてもよい。
【００７６】
一実施形態では、クライアントデバイスが暗号化された機密情報をクラウドコネクタに直接送信することができる。代替的におよび／または追加的に、クライアントデバイスは暗号化された機密情報を、例えば、クラウド環境のリソース及び／又はサービスを介して間接的にクラウドコネクタに送信することができる。
【００７７】
一実施形態では、クラウドコネクタは、第２のクラウドではなく、したがってコンフィギュレーションサービスに関連付けられていないクラウドに関連付けることができる。一実施形態では、クラウドコネクタが第１のクラウドに関連付けられてもよい。したがって、第１のリソースにアクセスするために必要な機密情報は１つのクラウドに関連付けられたクラウドコネクタに暗号化形式で格納され、情報を解読するための鍵はクラウドコネクタに関連付けられたクラウドとは異なる別のクラウドに関連付けられたコンフィギュレーションサービスに格納される。さらに、鍵を送信するために使用される通信チャネルとは分離された別個の通信チャネルを介して暗号化された情報を送信することによって、許可されていないエンティティは第２の通信チャネルから暗号化された情報のみを取り出すことができるが、異なるチャネルを使用して送信される鍵なしでは暗号化された情報を解読することができない（したがって、その情報を使用することができない）。さらに、転送中（すなわち、意図された受信者への配信前）に、鍵および暗号化された情報、−１つのクラウドに関連付けられたコンフィギュレーションサービスにおける鍵、および別のクラウドに関連付けられたクラウドコネクタにおける暗号化された情報−は、クラウドコンピューティング環境の分離されたコンポーネントによって格納され、さらなるセキュリティが確保される。
【００７８】
４１４において、第２のリソースは、その後、第１のリソースにアクションを実行させるための要求をユーザから受信することができる。一実施形態では、第２のリソースは第１のクラウドであるクラウドに関連付けることができる。あるいは、第２のリソースは第１のクラウドではないクラウドに関連付けられてもよい。例えば、ユーザは、ＳＳＰＲサービス（第２のリソース）を経由して、ユーザのパスワード（アクション）を変更するためにアクティブディレクトリ（第１のリソース）へのアクセスを要求することができる。一実施形態では、その要求は、第１のリソースに要求されたアクションを実行させる依頼が許可される前に、例えば、格納されたアイデンティティ証明書との比較によって認証されなければならないユーザのアイデンティティ証明書を含むことができる。一実施形態では、第２のリソースがクライアントデバイス（例えば、レシーバー）を経由してユーザから要求を受信することができる。
【００７９】
要求を受信すると、第２のリソースは、コンフィギュレーションサービスから機密情報の暗号化に使用される鍵を取り出すことができ（４１６）、その鍵およびユーザ要求を、機密情報（アイデンティティ証明書を含む）が格納されているクラウドコネクタに送信することができる（４１８）。一実施形態では、第２のリソースは、コンフィギュレーションサービスから鍵を取り出すために第３の通信チャネルを使用することができ、鍵およびユーザ要求をクラウドコネクタに送信するための第４の通信チャネルを使用することができ、クラウドコネクタは第３の通信チャネルおよび第４の通信チャネルにある。一実施形態では、第３および第４の通信チャネルが分離されており、互いに別個である。代替実施形態では、第３および第４の通信チャネルは同じである。さらに別の実施形態では、第３の通信チャネルは第１の通信チャネルおよび／または第２の通信チャネルとは分離されておりかつ別個であり、第４の通信チャネルは第１の通信チャネルおよび／または第２の通信チャネルとは分離されておりかつ別個である。
【００８０】
クラウドコネクタは鍵を使用して機密情報を解読し（４２０）、解読された機密情報を使用して、（例えば、受信されたアイデンティティ証明書を、適切な認証モジュールを使用して、解読された機密情報に含まれるアイデンティティ証明書と比較することによって）ユーザを認証する（４２２）ことができる。
【００８１】
ユーザがクラウドコネクタによって認証される場合、クラウドコネクタは、アクションを実行するためにユーザが認証されたというコンファメーションを第１のリソースに提供するアサーションを用いて、ユーザ要求を第１のリソースに送信することができる（４２４）。代替的におよび／または追加的に、クラウドコネクタは認証を実行することなく、ユーザ要求とともに、解読された機密情報を第１のリソースに転送することができ、第１のリソースは、解読された機密情報を使用してユーザを認証することができる。
【００８２】
４２６において、第１のリソースはユーザが要求したアクションを実行し、クラウドコネクタにコンファメーションを送信することができる。要求されたアクションが正常に実行されたというコンファメーションを受信すると、クラウドコネクタは、解読された機密情報を廃棄することができる（４２８）。クラウドコネクタは、コンファメーションをユーザに転送することもできる。
【００８３】
本書で説明される実施形態はコンフィギュレーションサービスで暗号化鍵を格納することを含むが、第１のクラウドではないクラウドの他のコンピューティングデバイスまたはモジュールは本明細書で開示される原理から逸脱することなく、キーを格納することができることが当業者には理解されよう。例えば、暗号化鍵は、第２のクラウドのシングルサインオンサービスによって格納されてもよい。本書で説明される実施形態では、暗号化された機密情報をクラウドコネクタに格納することを含むが、第１のクラウドおよび／または別のクラウド（すなわち、第２のクラウドではない）の他のコンピューティングデバイスまたはモジュールは本明細書で開示される原理から逸脱することなく、暗号化された機密情報を格納することができることも当業者には理解されよう。例えば、第１のクラウドのローカルストレージサーバ、デバイス、および／または内部リソースは、暗号化された機密情報を記憶することができる。
【００８４】
ここで図５を参照すると、例示的なメッセージフロー図のステップは、本書で説明される方法を使用するクラウドコンピューティング環境においてＳＳＰＲサービスを使用してパスワードを変更するためのアイデンティティ証明書の安全な記憶のための方法を説明する。図５はクラウドコンピューティング環境におけるセルフサービスパスワードリセットサービスのためのアイデンティティ証明書（例えば、システム管理者の特権パスワード）の安全な記憶および伝送のための方法を示しているが、実施形態はそのように限定するものではなく、類似の原理は（上述のように）他のリソースにアクセスするために、クラウド環境における他のタイプの機密情報の安全な記憶および伝送のために使用することができることに留意されたい。
【００８５】
メッセージフローは、外部クラウドサービスプロバイダによって提供されるＡｄｍｉｎ  ＵＩがクラウド環境への送信および／またはクラウド環境内の記憶のためにユーザ（例えば、管理者）からアイデンティティ証明書を受信する５０２で開始することができる。一実施形態では、アイデンティティ証明書は、外部クラウドのＳＳＰＲサービスを使用して、構内アクティブディレクトリに格納されたパスワードの変更を要求するユーザを認証するために後で使用され得る。一実施形態では、アイデンティティ証明書は、ユーザなど、証明書の所有者を識別および／または認証するために使用される任意の情報を含むことができる。例えば、証明書はユーザアイデンティティ（例えば、ユーザ番号、ユーザ名など）および／またはパスワード、個人識別番号（ＰＩＮ）、スマートカードアイデンティティ、セキュリティ証明書（例えば、公開鍵証明書）、および（例えば、指紋読取装置、虹彩スキャン、音声認識装置、または他のバイオメトリックなどのセンサによって取り込まれるような）ユーザの特徴、または特定の内部／外部アプリケーションまたはリソース（ここではＳＳＰＲサービス）にアクセスするための認証に使用される任意のデータを含むが、これらに限定されない。
【００８６】
通常、アイデンティティ証明書は、ＳＳＰＲまたは外部クラウドの別のサービス（コンフィギュレーションサービスなど）によって、暗号化されたおよび／または暗号化されていない形式で記憶される。しかしながら、そのような記憶装置は、アイデンティティ証明書の悪用および／または盗難を起こしやすい。したがって、Ａｄｍｉｎ  ＵＩは以下で説明するように、アイデンティティ証明書を傍受し、それらを暗号化することができる。
【００８７】
一実施形態ではアイデンティティ証明書を受信すると、Ａｄｍｉｎ  ＵＩは暗号化鍵を生成し（５０４）、暗号化鍵を使用してアイデンティティ証明書を暗号化することができる（５１０）。Ａｄｍｉｎ  ＵＩは、第１の通信チャネルを経由して、記憶（５０８）のためにコンフィギュレーションサービスに暗号化鍵を送信することができる（５０６）。Ａｄｍｉｎ  ＵＩはまた、暗号化されたアイデンティティ証明書を、第１の通信チャネルと分離された別個の第２の通信チャネルを経由して、記憶（５１８）のためにクラウドコネクタに送信することができる（５１４）。一実施形態では、Ａｄｍｉｎ  ＵＩは、暗号化されたアイデンティティ証明書をクラウドコネクタに直接および／または別の外部サービス（例えば、ＳＳＰＲリレー）を経由して間接的に送信することができる。アイデンティティ証明書は、暗号化され、内部クラウドに格納され、外部クラウドは鍵のみを格納するので、外部クラウドサービスプロバイダはアイデンティティ証明書にアクセスすることができず、したがって、セキュリティが維持される。さらに、鍵および暗号化された証明書を送信するために異なる通信チャネルを使用することにより、送信中の攻撃からのセキュリティが保証される。
【００８８】
Ａｄｍｉｎ  ＵＩは、暗号化鍵ならびに暗号化されていないアイデンティティ証明書を削除することができる（５１２）。
【００８９】
５３０で、ＳＳＰＲサービスは内部クラウド内の１つまたは複数のリソース（たとえば、アクティブディレクトリに格納されたアイデンティティ証明書）にアクセスするための、パスワードまたはユーザの他のアイデンティティ証明書をリセットするための要求（「アクション要求」）を受信することができる。アクション要求を受信すると、ＳＳＰＲは、コンフィギュレーションサービスからの暗号化鍵を要求することができ（５３２）、アクション要求と共に暗号化鍵をクラウドコネクタに送信することができる（５３４）。クラウドコネクタは、暗号化されたアイデンティティ証明書を解読するために（５３８）、暗号化鍵を使用することができる。クラウドコネクタは、ユーザを認証するために解読されたアイデンティティ証明書を使用することができ（５４０）、ユーザの認証に成功した場合、アクション要求をアクティブディレクトリに送信することができる（５４２）。代替的に及び／又は追加的に、クラウドコネクタはアクション要求と共に解読されたアイデンティティ証明書をアクティブディレクトリに送信することができ、アクティブディレクトリは、解読されたアイデンティティ証明書を使用して認証を実行することができる。アクティブディレクトリは要求されたアクション（例えば、パスワードリセット）を実行することができ、確認（５４４）をクラウドコネクタに送ることができ、次いで、クラウドコネクタは、解読されたアイデンティティ証明書を廃棄することができる（５４６）。クラウドコネクタは、要求されたアクションが正常に実行されたというメッセージをユーザに送信することもできる。
【００９０】
本発明を、１つまたは複数の実施形態に関して図示し、説明したが、本明細書および添付の図面を読んで理解すると、他の当業者は同等の変更および修正を思いつくであろう。さらに、本発明の特定の特徴はいくつかの実装形態のうちの１つのみに関して開示されているが、そのような特徴は任意の所与のまたは特定のアプリケーションに対して所望され、有利であり得るように、他の実装形態の１つまたは複数の他の特徴と組み合わせることができる。したがって、本発明の幅および範囲は、上述の実施形態のいずれによっても限定されるべきではない。むしろ、本発明の範囲は、以下の特許請求の範囲およびその均等物に従って定義されるべきである。
【図１】
2020524950.tif 000003
【図２】
2020524950.tif 000004
【図３】
2020524950.tif 000005
【図４】
2020524950.tif 000006
【図５】
2020524950.tif 000007
2020524950.tif 000008
2020524950.tif 000009
2020524950.tif 000010
2020524950.tif 000011
【国際調査報告】
2020524950.tif 000012
2020524950.tif 000013