(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-11-13
(54)【発明の名称】マルチ領域ログイン
(51)【国際特許分類】
G06F 21/31 20130101AFI20241106BHJP
【FI】
G06F21/31
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2024525481
(86)(22)【出願日】2022-10-28
(85)【翻訳文提出日】2024-06-14
(86)【国際出願番号】 US2022078936
(87)【国際公開番号】W WO2023077105
(87)【国際公開日】2023-05-04
(32)【優先日】2021-10-29
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2022-10-27
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】502303739
【氏名又は名称】オラクル・インターナショナル・コーポレイション
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】ファン・デン・ダンゲン,マルティヌス・ペトルス・ランベルトゥス
(72)【発明者】
【氏名】ウィルソン,グレッグ・アラン
(72)【発明者】
【氏名】ナガラジャ,ギリシュ
(72)【発明者】
【氏名】アーメッド,ガザンファ
(72)【発明者】
【氏名】リー,タオラン
(57)【要約】
本明細書では、複数の領域を介してクラウドサービスプロバイダのネットワークへのログインを提供するシステムについて説明する。例えば、システムは、クラウドサービスプロバイダ(CSP)のネットワークにログインするための要求を受信することと、要求内で受信されたログインクレデンシャルを識別すること、要求に関連する認証情報を取得すること、パスコードが以前に使用されたか否かを決定することと、ネットワークへのアクセスを提供するか否かを決定することと、ネットワークへのアクセスを提供するという決定に従ってネットワークへのアクセスを提供することと、を含む動作を実行する。
【特許請求の範囲】
【請求項1】
方法であって、
コンピューティング装置が、クラウドサービスプロバイダ(CSP)のネットワークにログインするための要求を受信することと、
前記コンピューティング装置が、前記要求内で受信された、パスコードを含むログインクレデンシャルを識別することと、
前記コンピューティング装置が、第1の領域に位置する前記クラウドサービスプロバイダの第1のデータセンタに、前記要求に関連する第1の認証情報をクエリすることと、を含み、前記第1の認証情報は、前記ネットワークへのログインに使用されるパスコードの第1のセットを含み、前記方法はさらに、
前記コンピューティング装置が、第2の領域に位置する前記クラウドサービスプロバイダの第2のデータセンタに、前記要求に関連する第2の認証情報をクエリすることを含み、前記第2の認証情報は、前記ネットワークへのログインに使用されるか、またはパスコードの前記第1のセットから複製されるパスコードの第2のセットを含み、前記方法はさらに、
前記コンピューティング装置が、前記第1のデータセンタへの前記クエリおよび/または前記第2のデータセンタへ前記クエリしたことに応答して受信された1つまたは複数の応答に少なくとも部分的に基づいて、前記パスコードが以前に使用されたか否かを決定することと、
前記コンピューティング装置が、前記パスコードが以前に使用されたか否かに少なくとも部分的に基づいて、前記ネットワークへのアクセスを提供するか否かを決定することと、
前記コンピューティング装置が、前記ネットワークへのアクセスを提供するという決定に従って、前記ネットワークへのアクセスを提供することと、を含む、方法。
【請求項2】
前記第1の領域は、前記要求に関連付けられるアカウントのホーム領域を含み、前記第2の領域は、前記アカウントに関連付けられる第1の加入領域を含む、請求項1に記載の方法。
【請求項3】
前記コンピューティング装置が、前記1つまたは複数の応答を受信することをさらに含み、前記1つまたは複数の応答は、前記第1のデータセンタからのパスコードの前記第1のセットと、前記第2のデータセンタからのパスコードの前記第2のセットとを含み、前記方法はさらに、
パスコードの前記第1のセットとパスコードの前記第2のセットを結合してパスコードの結合セットを生成することを含み、前記パスコードが以前に使用されたことがあるか否かを決定することは、パスコードの前記結合セットに少なくとも部分的に基づく、請求項1または請求項2に記載の方法。
【請求項4】
パスコードの前記第1のセットとパスコードの前記第2のセットを結合することは、
パスコードの前記第1のセットからの第1のパスコードと、パスコードの前記第2のセットからの第2のパスコードとを含むパスコードの組み合わせセットを生成することと、
パスコードの前記組み合わせセット内の特定のパスコードの第1のコピーを識別することと、を含み、前記特定のパスコードの前記第1のコピーは、パスコードの前記第1のセットからのものであり、パスコードの前記第1のセットとパスコードの前記第2のセットを結合することはさらに、
パスコードの前記組み合わせセット内の前記特定のパスコードの第2のコピーを識別することを含み、前記特定のパスコードの前記第2のコピーは、パスコードの前記第2のセットからのものであり、パスコードの前記第1のセットとパスコードの前記第2のセットを結合することはさらに、
パスコードの前記組み合わせセットから前記特定のパスコードの前記第1のコピーまたは前記第2のコピーのいずれかを削除して、パスコードの前記結合セットを生成することを含む、請求項3に記載の方法。
【請求項5】
パスコードの前記第1のセットは、前記要求に関連付けられるアカウントに対応する、以前に使用された1つまたは複数の使い捨てパスワードの第1のセットを含み、パスコードの前記第2のセットは、前記アカウントに対応する、以前に使用された1つまたは複数の使い捨てパスワードの第2のセットを含み、前記パスコードは、前記要求で提供される使い捨てパスワードを含み、前記パスコードが以前に使用されたか否かを決定することは、前記使い捨てパスワードが、以前に使用された1つまたは複数の使い捨てパスワードの前記第1のセットに含まれているか、または以前に使用された1つまたは複数の使い捨てパスワードの前記第2のセットに含まれているかを決定することを含む、請求項1~請求項4のいずれか1項に記載の方法。
【請求項6】
前記ログインクレデンシャルに含まれる認証データを識別することと、
将来のログイン試行に使用するために前記認証データを前記第1のデータセンタに記憶することと、
前記将来のログイン試行に使用するために前記認証データを前記第2のデータセンタに記憶することと、をさらに含む、請求項1~請求項5のいずれか1項に記載の方法。
【請求項7】
前記第2のデータセンタに前記認証データを記憶することは、前記第1のデータセンタと前記第2のデータセンタとの間の同期されるバックチャネル通信を介して、前記第1のデータセンタから前記第2のデータセンタに前記認証データを複製することを含む、請求項6に記載の方法。
【請求項8】
前記要求は、前記第1の領域および前記第2の領域とは別の第3の領域に位置する前記クラウドサービスプロバイダの第3のデータセンタで受信され、前記第1のデータセンタへのクエリは、前記第1のデータセンタへの第1のバックチャネル呼び出しを行ってパスコードの前記第1のセットを取得することを含み、前記第2のデータセンタへのクエリは、前記第2のデータセンタへの第2のバックチャネル呼び出しを行ってパスコードの前記第2のセットを取得することを含む、請求項1~請求項7のいずれか1項に記載の方法。
【請求項9】
前記第1のデータセンタが使用できないことを決定することをさらに含み、
前記第1のデータセンタへのクエリは、前記第1のデータセンタが使用できないという決定に少なくとも部分的に基づいて、前記第1のデータセンタへの第1のバックチャネル呼び出しをバイパスしてパスコードの前記第1のセットを取得することを含み、
前記第2のデータセンタへのクエリは、前記第2のデータセンタへの第2のバックチャネル呼び出しを行ってパスコードの前記第2のセットを取得することを含む、請求項1~請求項8のいずれか1項に記載の方法。
【請求項10】
ログインに使用可能な1つまたは複数の領域を決定することと、
前記1つまたは複数の使用可能な領域からログイン領域を選択するための、前記1つまたは複数の使用可能な領域を示すユーザインターフェイスを提示することと、
前記1つまたは複数の使用可能な領域から前記第1の領域の選択を識別することと、をさらに含み、前記要求は、前記第1の領域の前記選択の前記識別に少なくとも部分的に基づいて、前記第1の領域内の前記コンピューティング装置で受信される、請求項1~請求項9のいずれか1項に記載の方法。
【請求項11】
命令が記憶されている1つまたは複数の非一時的なコンピュータ可読媒体であって、前記命令が1つまたは複数のプロセッサによって実行されると、前記1つまたは複数のプロセッサに複数の動作を実行させ、前記複数の動作は、
クラウドサービスプロバイダ(CSP)のネットワークへのログイン要求を受信することと、
前記要求内で受信されたログインクレデンシャルを識別することと、を含み、前記ログインクレデンシャルはパスコードを含み、前記複数の動作は、
第1の領域に位置する前記クラウドサービスプロバイダの第1のデータセンタに、前記要求に関連する第1の認証情報をクエリすることを含み、前記第1の認証情報は、前記ネットワークへのログインに使用されるパスコードの第1のセットを含み、前記複数の動作は、
第2の領域に位置する前記クラウドサービスプロバイダの第2のデータセンタに、前記要求に関連する第2の認証情報をクエリすることを含み、前記第2の認証情報は、前記ネットワークへのログインに使用されるか、またはパスコードの前記第1のセットから複製されるパスコードの第2のセットを含み、前記複数の動作は、
前記第1のデータセンタへの前記クエリおよび/または前記第2のデータセンタへ前記クエリしたことに応答して受信された1つまたは複数の応答に少なくとも部分的に基づいて、前記パスコードが以前に使用されたか否かを決定することと、
前記パスコードが以前に使用されたか否かに少なくとも部分的に基づいて、前記ネットワークへのアクセスを提供するか否かを決定することと、
前記ネットワークへのアクセスを提供するという決定に従って、前記ネットワークへのアクセスを提供することと、を含む、1つまたは複数の非一時的なコンピュータ可読媒体。
【請求項12】
前記第1の領域は、前記要求に関連付けられるアカウントのホーム領域を含み、前記第2の領域は、前記アカウントの第1の加入領域を含み、前記命令は、前記1つまたは複数のプロセッサによって実行されると、前記1つまたは複数のプロセッサにさらに、
パスコードの前記第1のセットとパスコードの前記第2のセットを結合して、パスコードの結合セットを生成することを含む、動作を実行させる、請求項11に記載の非一時的な1つまたは複数のコンピュータ可読媒体。
【請求項13】
パスコードの前記第1のセットは、前記要求に関連付けられるアカウントに対応する、以前に使用された1つまたは複数の使い捨てパスワードの第1のセットを含み、パスコードの前記第2のセットは、前記アカウントに対応する、以前に使用された1つまたは複数の使い捨てパスワードの第2のセットを含み、前記パスコードは、前記要求で提供される使い捨てパスワードを含み、前記パスコードが以前に使用されたか否かを決定することは、前記使い捨てパスワードが、以前に使用された1つまたは複数の使い捨てパスワードの前記第1のセットに含まれているか、または以前に使用された1つまたは複数の使い捨てパスワードの前記第2のセットに含まれているかを決定することを含む、請求項11または請求項12に記載の非一時的な1つまたは複数のコンピュータ可読媒体。
【請求項14】
前記命令は、前記1つまたは複数のプロセッサによって実行されると、前記1つまたは複数のプロセッサにさらに、
前記ログインクレデンシャルに含まれる認証データを識別することと、
前記認証データを第1のデータセンタに提供して記憶し、将来のログイン試行に使用することと、
前記認証データを前記第2のデータセンタに提供して記憶し、前記将来のログイン試行に使用することと、を含む複数の動作を実行させる、請求項11~請求項13のいずれか1項に記載の非一時的な1つまたは複数のコンピュータ可読媒体。
【請求項15】
前記第1のデータセンタへのクエリは、前記第1のデータセンタへの第1のバックチャネル呼び出しを行うことを含み、前記第2のデータセンタへのクエリは、前記第2のデータセンタへの第2のバックチャネル呼び出しを行うことを含む、請求項11~請求項14のいずれか1項に記載の非一時的な1つまたは複数のコンピュータ可読媒体。
【請求項16】
前記命令は、前記1つまたは複数のプロセッサによって実行されると、前記1つまたは複数のプロセッサにさらに、
前記第1のデータセンタが使用できないことを決定することを含む複数の動作を実行させ、
前記第1のデータセンタへのクエリは、前記第1のデータセンタが使用できないという前記決定に少なくとも部分的に基づいて、前記第1のデータセンタへの第1のバックチャネル呼び出しをバイパスしてパスコードの前記第1のセットを取得することを含み、
前記第2のデータセンタへのクエリは、前記第2のデータセンタへの第2のバックチャネル呼び出しを行ってパスコードの前記第2のセットを取得することを含む、請求項11~請求項15のいずれか1項に記載の非一時的な1つまたは複数のコンピュータ可読媒体。
【請求項17】
前記命令は、前記1つまたは複数のプロセッサによって実行されると、前記1つまたは複数のプロセッサにさらに、
ログインに使用可能な1つまたは複数の領域を決定することと、
前記1つまたは複数の使用可能な領域からログイン領域を選択するための、前記1つまたは複数の使用可能な領域を示すユーザインターフェイスを提示することと、
前記1つまたは複数の使用可能な領域から前記第1の領域の選択を識別することと、を含む複数の動作を実行させ、前記要求は、前記第1の領域の前記選択の前記識別に少なくとも部分的に基づいて前記第1の領域で受信される、請求項11~請求項16のいずれか1項に記載の非一時的な1つまたは複数のコンピュータ可読媒体。
【請求項18】
サーバ装置であって、
要求内で受信されたログインクレデンシャルを記憶するメモリと、
前記メモリに結合された1つまたは複数のプロセッサと、を備え、前記1つまたは複数のプロセッサは、
クラウドサービスプロバイダ(CSP)のネットワークへの前記ログイン要求を受信するように構成されており、
前記要求内で受信された、パスコードを含む前記ログインクレデンシャルを識別するように構成されており、
前記ログインクレデンシャルを前記メモリに記憶するように構成されており、
第1の領域に位置する前記クラウドサービスプロバイダの第1のデータセンタに、前記要求に関連する第1の認証情報をクエリするように構成されており、前記第1の認証情報は、前記ネットワークへのログインに使用されるパスコードの第1のセットを含み、前記1つまたは複数のプロセッサはさらに、
第2の領域に位置する前記クラウドサービスプロバイダの第2のデータセンタに、前記要求に関連する第2の認証情報をクエリするように構成されており、前記第2の認証情報は、前記ネットワークへのログインに使用される、またはパスコードの前記第1のセットから複製されるパスコードの第2のセットを含み、前記1つまたは複数のプロセッサはさらに、
前記第1のデータセンタへの前記クエリおよび/または前記第2のデータセンタへ前記クエリしたことに応答して受信された1つまたは複数の応答に少なくとも部分的に基づいて、前記パスコードが以前に使用されたか否かを決定するように構成されており、
前記パスコードが以前に使用されたか否かに少なくとも部分的に基づいて、前記ネットワークへのアクセスを提供するか否かを決定するように構成されており、
前記ネットワークへのアクセスを提供するという決定に従って、前記ネットワークへのアクセスを提供するように構成されている、サーバ装置。
【請求項19】
前記第1の領域は、前記要求に関連付けられるアカウントのホーム領域を含み、前記第2の領域は、前記アカウントの第1の加入領域を含む、請求項18または請求項19に記載のサーバ装置。
【請求項20】
パスコードの前記第1のセットは、前記要求に関連付けられるアカウントに対応する、以前に使用された1つまたは複数の使い捨てパスワードの第1のセットを含み、パスコードの前記第2のセットは、前記アカウントに対応する、以前に使用された1つまたは複数の使い捨てパスワードの第2のセットを含み、前記パスコードは、前記要求で提供される使い捨てパスワードを含み、前記パスコードが以前に使用されたか否かを決定することは、前記使い捨てパスワードが、以前に使用された1つまたは複数の使い捨てパスワードの前記第1のセットに含まれているか、または以前に使用された1つまたは複数の使い捨てパスワードの前記第2のセットに含まれているかを決定することを含む、請求項18に記載のサーバ装置。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、2021年10月29日に出願された「MULTI-REGION LOGIN」と題される米国仮出願第63/273,806号、および2022年10月27日に出願された「MULTI-REGION LOGIN」と題される米国特許出願第18/050,453号に対する優先権を主張し、これらの出願の開示は、あらゆる目的のために、その全体が参照により本明細書に組み込まれる。
【0002】
分野
本開示は、異なる領域のデータセンタを介したログインを可能にするクラウドサービスプロバイダインフラストラクチャに関する。
【背景技術】
【0003】
背景
クラウドサービスプロバイダ(CSP)は、1つまたは複数のネットワークを使用して、オンデマンドで顧客にさまざまなサービスを提供する。CSPでは、サービスを使用するために顧客がネットワークにアクセスする際にサインインすることが求められることがよくある。顧客は、ネットワークへのアクセスを提供するか否かを決定するために使用するログインクレデンシャルをCSPに提供する。
【0004】
多くの場合、ログインクレデンシャルは、時間ベースのワンタイムパスワード(TOTP)などの使い捨てパスワードを含む。顧客が以前に使用した使い捨てパスワードを使用してネットワークに再度ログインしようとした場合、CSPはセキュリティ上の理由からネットワークへのアクセスを拒否できる。さらに、CSPは失敗したログイン試行回数を保持し、失敗したログイン試行に関連付けられるアカウントへのログインを禁止することを選択できる。これらのセキュリティ保護を実現するには、ログインに使用されるエンティティが、以前にログインに使用された使い捨てパスワードと失敗したログイン試行回数とを決定できる必要がある。従来のCSPは、以前使用されていた使い捨てパスワードと失敗したログイン試行回数を1つのエンティティに記憶し、顧客のすべてのログイン試行をその特定のエンティティに誘導することで、この問題に対処した。
【発明の概要】
【0005】
概要
本開示は、一般的には、クラウドサービスプロバイダのネットワークへのマルチ領域ログインのためのフレームワークに関する。本明細書では、方法、システム、1つまたは複数のプロセッサによって実行可能なプログラム、コード、または命令を記憶する非一時的なコンピュータ可読記憶媒体などを含む、さまざまな実施形態が説明される。これらの例示的な実施形態は、開示を制限または定義するためではなく、理解を助けるための例を示すために言及されている。追加の実施形態は詳細な説明セクションで説明されており、そこでさらに詳しく説明されている。
【課題を解決するための手段】
【0006】
本開示の一態様は、クラウドサービスプロバイダ(CSP)のネットワークにログインするための要求を受信し、要求内で受信されたログインクレデンシャルを識別することを含む、マルチ領域ログインを容易にする方法に関する。この方法は、さらに、クラウドサービスプロバイダの2つ以上の領域から、要求に関連する認証情報を取得し、ログインクレデンシャルと認証情報に少なくとも部分的に基づいて、ネットワークへのアクセスを提供するか否かを決定することを含み得る。さらに、この方法は、ネットワークへのアクセスを提供する決定に従ってネットワークへのアクセスを提供すること、またはネットワークへのアクセスを提供しない決定に従ってネットワークへのアクセスを拒否することと、を含み得る。
【0007】
本開示の一態様は、命令が記憶されている1つまたは複数のコンピュータ可読媒体に関し、命令は、1つまたは複数のプロセッサによって実行されると、1つまたは複数のプロセッサに、クラウドサービスプロバイダ(CSP)のネットワークにログインするための要求を受信し、要求内で受信されたログインクレデンシャルを識別することを含む動作を実行させる。動作は、さらに、クラウドサービスプロバイダの2つ以上の領域から、要求に関連する認証情報を取得し、ログインクレデンシャルと認証情報に少なくとも部分的に基づいて、ネットワークへのアクセスを提供するか否かを決定することを含み得る。さらに、動作は、ネットワークへのアクセスを提供するという決定に従ってネットワークへのアクセスを提供すること、またはネットワークへのアクセスを提供しないという決定に従ってネットワークへのアクセスを拒否することと、を含み得る。
【0008】
本開示の一態様は、サーバ装置に関するものであり、要求内で受信されたログインクレデンシャルを記憶するメモリと、メモリに結合される1つまたは複数のプロセッサとを含み得る。1つまたは複数のプロセッサは、クラウドサービスプロバイダ(CSP)のネットワークにログインするための要求を受信し、要求内で受信されたログインクレデンシャルを識別することができる。1つまたは複数のプロセッサは、さらに、ログインクレデンシャルをメモリに記憶し、クラウドサービスプロバイダの2つ以上の領域から、要求に関連する認証情報を取得し、ログインクレデンシャルと認証情報に少なくとも部分的に基づいて、ネットワークへのアクセスを提供するか否かを決定することができる。さらに、1つまたは複数のプロセッサは、ネットワークへのアクセスを提供するという決定に従ってネットワークへのアクセスを提供するか、またはネットワークへのアクセスを提供しないという決定に従ってネットワークへのアクセスを拒否することができる。
【0009】
本開示の一態様は、コンピューティング装置が、クラウドサービスプロバイダ(CSP)のネットワークにログインするための要求を受信することと、コンピューティング装置が、要求内で受信されたログインクレデンシャル(パスコードを含む)を識別することと、を含む方法に向けられている。当該方法は、さらに、コンピューティング装置が、第1の領域に位置するクラウドサービスプロバイダの第1のデータセンタに、要求に関連する第1の認証情報をクエリすることを含むことができ、第1の認証情報は、第1の領域が使用可能であることに応じてネットワークへのログインに使用されるパスコードの第1のセットを含み、当該方法はさらに、コンピューティング装置が、第2の領域に位置するクラウドサービスプロバイダの第2のデータセンタに、要求に関連する第2の認証情報をクエリすることを含むことができ、第2の認証情報は、ネットワークへのログインに使用されるか、または第2の領域が使用可能であることに応じてパスコードの第1のセットから複製されるパスコードの第2のセットを含む。当該方法はさらに、コンピューティング装置が、第1のデータセンタのクエリまたは第2のデータセンタのクエリに応答して受信した1つまたは複数の応答に少なくとも部分的に基づいて、パスコードが以前に使用されたか否かを決定することと、当該コンピューティング装置が、パスコードが以前に使用されたか否かに少なくとも部分的に基づいて、ネットワークへのアクセスを提供するか否かを決定することと、当該コンピューティング装置が、ネットワークへのアクセスを提供するという決定に従ってネットワークへのアクセスを提供することと、を含み得る。
【0010】
本開示の一態様は、命令が記憶されている1つまたは複数の非一時的なコンピュータ可読媒体に向けられており、当該命令は、1つまたは複数のプロセッサによって実行されると、当該1つ以上のプロセッサに複数の動作を行なわせ、当該複数の動作は、クラウドサービスプロバイダ(CSP)のネットワークにログインするための要求を受信することと、要求内で受信されたログインクレデンシャルを識別することを含み、当該ログインクレデンシャルは、パスコードを含む。当該複数の動作は、要求に関連する第1の認証情報について、第1の領域に位置するクラウドサービスプロバイダの第1のデータセンタにクエリすることを含み、当該第1の認証情報は、使用可能な第1の領域に従ってネットワークへのログインに使用されるパスコードの第1のセットを含み、当該複数の動作はさらに、第2の領域に位置するクラウドサービスプロバイダの第2のデータセンタに要求に関連する第2の認証情報をクエリすることを含み、当該第2の認証情報は、ネットワークへのログインに使用される、または、使用可能な第2の領域に従ってパスコードの第1のセットから複製されるパスコードの第2のセットを含む。当該複数の動作はさらに、第1のデータセンタのクエリまたは第2のデータセンタへクエリしたことに応答して受信された1つまたは複数の応答に少なくとも部分的に基づいて、パスコードが以前に使用されたか否かを決定することと、パスコードが以前に使用されたか否かに少なくとも部分的に基づいてネットワークへのアクセスを提供するか否かを決定することと、ネットワークへのアクセスを提供するという決定に従ってネットワークへのアクセスを提供することとを含み得る。
【0011】
本開示の一態様は、サーバ装置に向けられており、当該サーバ装置は、要求内で受信されたログインクレデンシャルを記憶するメモリと、当該メモリに結合される1つまたは複数のプロセッサとを含み、当該1つまたは複数のプロセッサは、クラウドサービスプロバイダ(CSP)のネットワークにログインするための要求を受信し、要求内で受信されたログインクレデンシャルを識別し、当該ログインクレデンシャルはパスコードを含み、当該ログインクレデンシャルをメモリに記憶することができる。当該1つまたは複数のプロセッサは、さらに、第1の領域に位置するクラウドサービスプロバイダの第1のデータセンタに、要求に関連する第1の認証情報をクエリすることができ、第1の認証情報は、第1の領域が使用可能であることに応じてネットワークへのログインに使用されるパスコードの第1のセットを含み、第2の領域に位置するクラウドサービスプロバイダの第2のデータセンタに、要求に関連する第2の認証情報をクエリすることができ、第2の認証情報は、ネットワークへのログインに使用されるか、または第2の領域が使用可能であることに応じてパスコードの第1のセットから複製されるパスコードの第2のセットを含む。1つまたは複数のプロセッサは、さらに、第1のデータセンタのクエリまたは第2のデータセンタへクエリしたことに応答して受信された1つまたは複数の応答に少なくとも部分的に基づいて、パスコードが以前に使用されたか否かを決定し、パスコードが以前に使用されたか否かに少なくとも部分的に基づいてネットワークへのアクセスを提供するか否かを決定し、ネットワークへのアクセスを提供するという決定に従ってネットワークへのアクセスを提供することができる。
【0012】
前述の内容、ならびに他の特徴および実施形態は、以下の明細書、特許請求の範囲、および添付の図面を参照することでさらに明らかになるであろう。
【図面の簡単な説明】
【0013】
【
図1】少なくとも1つの実施形態による例示的なシステム構成を示す図である。
【
図2】少なくとも1つの実施形態による別の例示的なシステム構成を示す図である。
【
図3】少なくとも1つの実施形態による例示的な認証情報の結合シナリオを示す図である。
【
図4】少なくとも1つの実施形態による別の例示的なシステム構成を示す図である。
【
図5】少なくとも1つの実施形態による例示的なサインオンインターフェイスを示す図である。
【
図6】少なくとも1つの実施形態による、クラウドサービスプロバイダ(CSP)へのサインインに関連する例示的な手順を示す図である。
【
図7】少なくとも1つの実施形態による、
図6の例示的な手順の第2の部分を示す図である。
【
図8】少なくとも1つの実施形態による、クラウドインフラストラクチャをサービスシステムとして実装するための1つのパターンを示すブロック図である。
【
図9】少なくとも1つの実施形態による、クラウドインフラストラクチャをサービスシステムとして実装するための別のパターンを示すブロック図である。
【
図10】少なくとも1つの実施形態による、クラウドインフラストラクチャをサービスシステムとして実装するための別のパターンを示すブロック図である。
【
図11】少なくとも1つの実施形態による、クラウドインフラストラクチャをサービスシステムとして実装するための別のパターンを示すブロック図である。
【
図12】少なくとも1つの実施形態による例示的なコンピュータシステムを示すブロック図である。
【発明を実施するための形態】
【0014】
詳細な説明
以下、さまざまな実施形態について説明する。説明の目的で、実施形態を完全に理解できるように、特定の構成および詳細が記載されている。しかし、当業者には、特定の詳細がなくても実施形態を実施できることも明らかであろう。さらに、説明されている実施形態を不明瞭にしないために、よく知られる特徴が省略または簡略化され得る。
【0015】
クラウドサービスプロバイダ(CSP)は、加入顧客に複数のクラウドサービスを提供することができる。これらのサービスは、サービスとしてのソフトウェア(SaaS)、サービスとしてのプラットフォーム(PaaS)、サービスとしてのインフラストラクチャ(IaaS)モデルなどのさまざまなモデルで提供され得る。CSPは、1つまたは複数のネットワークを介して複数のクラウドサービスを提供し得る。各ネットワークは、サービスを提供できるコンピュータとソフトウェアを含み得る。
【0016】
クラウド環境では、通常、クラウドサービスによって提供または使用されるリソースへのユーザアクセスを制御するために、CSPによってID管理システムが提供される。ID管理システムによって提供される一般的なサービスまたは機能は、限定ではなく、ユーザ向けの単一サインオン機能、認証および認証サービス、その他のIDベースのサービスを含む。
【0017】
ID管理システムによって保護されるリソースは、コンピューティングインスタンス、ブロック記憶ボリューム、仮想クラウドネットワーク(VCN)、サブネット、ルートテーブル、さまざまな呼び出し可能なAPI、内部アプリケーションまたは従来のアプリケーションなど、さまざまなタイプにすることができる。これらのリソースは、クラウドに記憶されているリソースおよび/または顧客のオンプレミスリソースを含む。通常、各リソースは、リソースの作成時にリソースに割り当てられる一意の識別子(例えば、ID)によって識別される。
【0018】
本明細書では、顧客および/またはクライアント(本開示では総称して顧客と呼ぶ)が複製領域および/またはCSPの一部にログインできるようにする技術について説明する。特に、CSPは1つまたは複数の領域(例えば、特定の地理的領域内のデータセンタ)に編成され得、各領域はCSPによってサービス提供される異なる地理的エリア内のデータセンタによって定義され得る。例えば、第1の領域は、CSPによってサービス提供される第1の地理的エリアに位置する第1のデータセンタに対応し、第2の領域は、CSPによってサービス提供される第2の地理的エリアに位置する第2のデータセンタに対応し得る。この場合、第2の地理的エリアは、第1の地理的エリアとは異なる。各領域は1つまたは複数のデータセンタで構成され得る。本開示全体を通じて、動作は領域によって実行されるものとして説明できるが、その領域の1つまたは複数のデータセンタが動作を実行し得ることを理解する必要がある。例えば、第1の領域が動作を実行すると説明されている場合、第1の領域内の1つまたは複数のデータセンタによって提供される1つまたは複数のサービスが動作を実行することを理解する必要がある。
【0019】
いくつかの実施形態では、CSPはCSPの領域に対して加入サービスを提供し得る。例えば、CSPは顧客がCSPの1つまたは複数の領域に加入することを許可し得る。CSPは、領域に加入している顧客がその領域で提供されるサービスを使用できるようにし、領域に加入していない顧客/ユーザがその領域で提供されるサービスを使用できないようにすることができる。CSPは各顧客のアカウントを維持することができ、顧客のアカウントは顧客が加入している領域を示すことができる。アカウントは、本開示全体を通じてさらに説明されているように、当該アカウントに関連付けられる顧客に関するその他の情報もさらに含み得る。
【0020】
顧客が加入している領域には、顧客に対して異なる役割が割り当てられ得る。例えば、領域はホーム領域または加入領域として割り当てられ得る。顧客に割り当てられるホーム領域は1つだけであり得る。ホーム領域として割り当てられる領域では、顧客は領域に記憶されているデータに対して書き込み動作や読み取り動作を実行できる。加入者には複数の加入領域が割り当てられ得る。加入領域として割り当てられる領域は、領域によって記憶されるデータの少なくとも一部に対する書き込み動作を防止し、それによって、データの一部に対して読み取り動作のみを実行できるようにする。加入領域には、第1の加入領域、第2の加入領域、第3の加入領域などのランクが割り当てられ得る。加入領域のランキングに応じて加入領域の動作が異なり得る。例えば、第1の加入領域は、本開示全体にわたってさらに説明されるように、顧客の認証に使用され得る顧客の認証情報を記憶し得る。役割は顧客および/またはCSPによって割り当てられ得る。例えば、CSPは、場合によっては、顧客が領域に加入する順序に基づいて役割を割り当てることができる。これらの場合の一部では、顧客が加入する第1の領域がホーム領域として割り当てられ得、顧客が加入する第2の領域が第1の加入領域として割り当てられ得るなどである。場合によっては、顧客はホーム領域、加入領域、および/または加入領域のランクを割り当てることができる。
【0021】
1つまたは複数のドメインがデータセンタに記憶され得、ドメインは、情報を記憶し、データセンタのリソースを使用できるコンテナを含み得る。各ドメインには、ドメインのホーム領域が割り当てられ得る。これは、ドメインホーム領域と呼ばれ得る。通常、顧客は、CSPにログインするために、対応する領域(テナンシホーム領域と呼ばれ得る)に誘導される。テナンシホーム領域は、顧客に対してインフラストラクチャIDおよびアクセス管理(IAM)関連情報の更新が許可される領域であり得る。しかし、動作中にCSPの1つまたは複数の領域が使用できなくなり得る(例えば、領域がダウンしたり、領域内のサービスにアクセスできなくなったりし得る)。従来のアプローチでは、顧客がログインしようとしたときに顧客に対応するテナンシホーム領域が使用できない場合、テナンシホーム領域にアクセスできず、顧客は壊れた状態のままになる。
【0022】
本明細書に記載の技術は、異なる領域に1つまたは複数の複製ドメインを有することを含み得る。例えば、テナントのアイデンティティ・クラウド・サービス(Identity Cloud Services:IDCS)ストライプは、顧客に関連付けられるホーム領域内に配置され得る。IDCSストライプは、ホーム領域に加えて、1つまたは複数の他の領域に複製され得る。IDCSストライプは、同期されるバックチャネル通信を介して領域内で複製され得る。ログイン選択により、顧客が選択できるログイン可能な1つまたは複数のドメインが顧客に提供され得る。使用可能なドメインのリストは、顧客に対応するホーム領域および/または第1の複製領域から取得できる。表示される使用可能なドメインは、ログイン時に使用可能な領域にあり得る。使用可能なドメインのリストからドメインを選択すると、CSPは、顧客がログインするために、選択されるドメインに対応する領域のIDCSストライプに顧客を誘導し得る。ログインに使用されるIDCSストライプは、認証中に、領域間のIDCSストライプを調整するために、1つまたは複数の他の領域との間で一部のデータを読み取ったりおよび/または書き込んだりし得る。場合によっては、データの読み取り元および/または書き込み先の領域は、ドメインホーム領域と、顧客に対応する第1の複製領域を含み得る。
【0023】
場合によっては、顧客は、ダウンしている領域内のログイン用のドメインに誘導されるか、またはそのドメインを選択できる。これらの場合、CSPは、領域が再び正常に動作し始めたと決定されるまで、顧客がログインのためにドメインに誘導されたり、ドメインを選択したりしないように情報を更新できる。CSPは、さらに顧客がログインに使用できる他の使用可能なドメインも提供し得る。その後、顧客はログインに使用可能な他のドメインのいずれかを選択できる。
【0024】
場合によっては、顧客が別の領域にログインしている間、ドメインのホーム領域および/または第1の複製領域が使用できなくなることがある。顧客がログインする領域はドメインホーム領域および/または第1の複製領域に書き込むことができないため、領域はドメインホーム領域および/または第1の複製領域と調整して、領域間の競合をマージし得る。例えば、領域はドメインホーム領域および/または第1の複製領域と調整して、ログインに関連する記憶情報を最新の更新される記憶情報に更新し得る。
【0025】
図1は、少なくとも1つの実施形態による例示的なシステム構成100を示す。システム構成100は、CSPの複数の領域に複製されるIDCSストライプまたはその一部を持つシステムの例を示す。例えば、システムは複数の領域に複製される認証情報を持ち得る。複製される認証情報はIDCSストライプ内に存在し、認証情報は1人または複数のユーザがCSPへのアクセスを許可されている顧客であるか否かを決定するために使用され得る。
【0026】
システム構成100はCSP102を含み得る。CSP102は、顧客にサービスを提供できるソフトウェアを実装するコンピュータハードウェアのネットワークを含み得る。CSP102のコンピュータハードウェアおよび/またはソフトウェアはリソースと呼ばれ得、顧客は動作を実行するためにリソースを使用したり要求したりできる。CSP102にはIAMが含まれ得、IAMはCSP102へのユーザのアクセスを制御し得る。
【0027】
CSP102は、1つまたは複数の領域に編成され得、各領域はCSP102のネットワークの一部を形成する。例えば、図示のCSP102は、ログイン領域104、第1の領域106、および第2の領域108を含み得る。各領域は、CSP102のコンピュータハードウェアの一部を含み得る。例えば、ログイン領域104にはCSP102のコンピュータハードウェアの第1の部分が含まれ得、第1の領域106にはCSP102のコンピュータハードウェアの第2の部分が含まれ得、第2の領域108にはCSP102のコンピュータハードウェアの第3の部分が含まれ得る。いくつかの実施形態では、各領域は特定の地理的エリアに対応し、領域内のコンピュータハードウェアは対応する地理的エリア内に配置され得る。領域内のコンピュータハードウェアは、その領域を1つまたは複数の他の領域に接続する1つまたは複数のルータおよび/またはスイッチに対応し得る。例えば、ログイン領域104内のコンピュータハードウェアは、図示の実施形態では、ログイン領域104を、第1の領域106に対応する1つまたは複数のルータおよび/またはスイッチ、および第2の領域108に対応する1つまたは複数のルータおよび/またはスイッチに接続する1つまたは複数のルータおよび/またはスイッチに対応し得る。領域に対応するルータおよび/またはスイッチは、領域へのアクセスポイントとして機能し、領域との間の電子通信トラフィックがルータおよび/またはスイッチの少なくとも1つを通過するようになる。対応するルータおよび/またはスイッチは、いくつかの実施形態では、インターネットおよび/またはユーザに関連付けられるユーザ装置などの1つまたは複数の他の外部装置に領域をさらに接続し得る。
【0028】
いくつかの実施形態では、CSP102の1つまたは複数の領域は、1つまたは複数のバックチャネルによってCSP102内の1つまたは複数の他の領域に接続され得る。例えば、図示の実施形態では、ログイン領域104は、バックチャネル110によって第1の領域106および第2の領域108に接続されている。バックチャネルは、領域のルータおよび/またはスイッチに接続することができ、ルータおよび/またはスイッチは、バックチャネルの領域へのアクセスポイントとして機能し得る。バックチャネルが接続されているルータおよび/またはスイッチは、領域を外部装置に接続するルータおよび/またはスイッチとは別のものであり得る。バックチャネルは、CSP102内の2つ以上の領域間の接続を提供し得る。例えば、バックチャネルは、CSP102内の2つの領域間の直接接続を提供したり、CSP102内の2つ以上の領域間の共有接続を提供したりすることができる。例えば、図示の実施形態のバックチャネル110は、ログイン領域104、第1の領域106、および第2の領域108間の共有接続を提供することができる。いくつかの実施形態では、バックチャネル110は、CSP102の外部のユーザ装置など、CSP102の外部の要素からはアクセスできない場合がある。バックチャネルは、領域間でデータを交換できる同期メッセージまたは非同期メッセージを領域間で送信できるようにする。
【0029】
システム構成100は、CSP102に接続可能な1つまたは複数のユーザ装置を含み得る。例えば、図示の実施形態では、システム構成100にはユーザ装置112が含まれる。ユーザ装置はCSP102の外部にあり、インターネット経由の接続など、1つまたは複数の有線または無線接続によってCSP102に接続できる。明確にするために、本明細書の説明ではユーザ装置112について言及しているが、ユーザ装置112によって実行される、および/またはユーザ装置112に関して実行される1つまたは複数の動作は、1つまたは複数の他のユーザ装置によって実行されるか、または1つまたは複数の他のユーザ装置に関して実行され得ることを理解する必要がある。
【0030】
システム構成100は、ユーザ装置112のログインに関連する要素を示すことができる。特に、システム構成100は、ユーザ装置112がCSP102のサービスを使用できるように、ユーザ装置112とCSP102の要素との間で交換される要素を示し得、これらの要素は、ユーザ装置112がCSP102にログインするために使用され得る。
【0031】
ユーザは、ユーザ装置112を使用してCSP102へのアクセスを要求することができる。例えば、ユーザは、CSP102(またはその一部)に対応するインターネットプロトコル(IP)アドレスをユーザ装置112のブラウザに入力し得、CSP102(またはその一部)は、ユーザ装置112にCSP102にアクセスするためのユーザインターフェイスを表示するように命令し得る。ユーザインターフェイスは、ユーザがCSP102にアクセスする権限があるか否かを決定するために使用されるログインクレデンシャル114の入力フィールドを含み得る。いくつかの実施形態では、ログインクレデンシャル114はパスコードを含み得る。いくつかの実施形態では、パスコードは使い捨てパスワードであり得る。いくつかの実施形態では、CSP102は、ログインクレデンシャル114の一部として、ユーザ装置112の特性情報および/または以前のログイン試行の結果の表示を要求し得る。
【0032】
ユーザ装置112は、ユーザ装置112を使用するユーザのログインのためのログインクレデンシャル114を取得することができる。例えば、ユーザ装置112は、ユーザ装置112を使用するユーザからログインクレデンシャル114を受信したり、および/またはユーザ装置112の特性を示す情報(例えば、ユーザ装置112に関連付けられる識別子、キー、および/またはその他の値)を取得したりすることができる。ログインクレデンシャル114は、パスコードおよび/または使い捨てパスワードなどのユーザからの入力を含み得る。いくつかの実施形態では、使い捨てパスワードは、時間ベースのワンタイムパスワード(TOTP)であり得る。使い捨てパスワードは、CSP102に関連するプログラムによって生成され得る。特に、プログラムは使い捨てパスワードを生成し、その使い捨てパスワードをユーザおよびCSP102に提供することができる。プログラムは、ユーザに関連付けられる電子メールアカウント、ユーザに関連付けられる電話番号(例えば、テキストメッセージおよび/または音声メッセージ)、CSP102に関連するプログラムから使い捨てパスワードを受信できるユーザ装置112上で実行されるソフトウェア、および/またはユーザに使い捨てパスワードを提供するための当技術分野で知られているその他の方法を介して、ユーザに使い捨てパスワードを提供できる。ログインプロセス中に、CSP102は、例えば表示されるログインインターフェイスで、ユーザ装置112のユーザから使い捨てパスワードの入力を要求し得る。ユーザは、他のユーザ認証情報(例えば、ユーザに関連付けられるパスワード)とともに、使い捨てパスワードをユーザ装置112に入力することができる。ログインプロセス中に、ユーザ装置112は、CSP102にログインクレデンシャル114を提供し、CSP102はこれを使用して、ユーザがCSP102にログインできるか否かを決定する。
【0033】
いくつかの実施形態では、ユーザ装置112から受信されるログインクレデンシャル114は、ユーザ装置112によって開始される以前のログイン試行および/または以前のログインに関連する情報をさらに含み得る。例えば、ユーザ装置112は、ユーザ装置112のユーザがCSP102にログインしようとして失敗した連続回数のカウントを維持し得る。ユーザ装置112は、ログインクレデンシャル114に、ユーザがCSP102へのログインに連続して失敗した回数の表示を含み得る。他の実施形態では、CSP102は、ユーザ装置112によるログイン試行および/または特定の顧客のアカウントへのアクセスが連続して何回失敗したかのカウントを維持し得る。CSP102は、連続して失敗したログイン試行の回数が閾値の試行回数を超えたか否かを決定し、連続して失敗したログイン試行の回数が閾値の試行回数を超えたことに基づいて、ユーザにCSP102へのアクセスを提供しないことを決定し得る。
【0034】
図示の実施形態では、ユーザ装置112は、CSP102へのログインプロセス中にログイン領域104に誘導され得る。ユーザ装置112は、CSP102の他の領域と比較してログイン領域104に地理的に最も近いユーザ装置112、使用可能なユーザ装置112に地理的に最も近いCSP102の領域であるログイン領域104、ログイン領域104に対応するログインプロセスの一部としてユーザ装置112によって使用されるIPアドレス、ログインプロセスに使用されるログイン領域104の選択を示すユーザ装置112、またはそれらの組み合わせに基づいてログイン領域104に誘導され得る。ログイン領域104に誘導された結果、ユーザ装置112は、ログインプロセスの一部としてログイン領域104にログインクレデンシャル114を提供する。
【0035】
ログイン領域104は、ユーザ装置112によって提供されるログインクレデンシャル114を使用して、ユーザ装置112のユーザがCSP102へのアクセスを許可されるか否かを決定することができる。例えば、ログイン領域104は、ログインクレデンシャル114と結合して認証情報を使用することにより、ユーザがCSP102へのアクセスを許可されるか否かを決定できる。ユーザがCSP102にアクセスすることを許可するか否かを決定するための認証情報は、CSP102の2つ以上の領域に記憶され得る。しかし、CSP102には、ユーザに対応する認証情報が記憶されていない領域が存在する可能性があり、その場合、ユーザは、ユーザに対応する認証情報が記憶されていない領域でもCSP102にログインできる可能性がある。
【0036】
いくつかの実施形態では、ユーザに対応する認証情報は、ユーザに対応するホーム領域と、ユーザに対応する第1の加入領域とに記憶され得る。図示の実施形態では、第1の領域106にはユーザに対応する第1の認証情報116が記憶され、第2の領域108にはユーザに対応する第2の認証情報118が記憶される。第1の認証情報116は、第1の領域106内に維持されるIDCSストライプであるか、またはその一部であり得、第2の認証情報118は、第2の領域108内に複製されるIDCSストライプであるか、またはその一部であり得る。いくつかの実施形態では、第1の領域106はユーザのホーム領域であり得、第2の領域108は第1の加入領域であり得る。ユーザ、またはユーザに関連付けられるエンティティは、ユーザに対応するホーム領域および/または第1の加入領域を定義でき得る。図示の実施形態では、ログイン領域104は、ユーザに対応する認証情報を記憶しない。
【0037】
認証情報は、ユーザがCSP102にアクセスする権限があるか否かを決定するための情報、および/またはユーザの以前のログインに関連する情報を含み得る。例えば、認証情報は、ユーザに対応する1つまたは複数のパスコード、ユーザがCSP102にログインするために使用した1つまたは複数の装置の表示、ユーザがCSP102にアクセスするために以前に使用した使い捨てパスワード、CSP102にアクセスするためにまだ有効な使い捨てパスワード、またはそれらの組み合わせを含み得る。認証情報は、CSP102へのユーザログインに基づいて更新され得る。例えば、CSP102は、CSP102へのアクセスに使用される使い捨てパスワードを使用して認証情報を更新し得るため、ユーザがCSP102へのアクセスに以前に使用した使い捨てパスワードを更新して、CSP102へのアクセスに使用される追加の使い捨てパスワードを含み得る。いくつかの実施形態では、以前に使用された使い捨てパスワードの更新は、アクセスに使用されている使い捨てパスワードのコピーを、ログインに使用される領域からバックチャネル110を使用したバックチャネル通信を介して他の領域に送信することを含み得る。いくつかの実施形態では、バックチャネル通信は同期バックチャネル通信である。
【0038】
場合によっては、領域に記憶されている認証情報のコピーが異なり得る。例えば、第1の領域106に記憶される第1の認証情報116は、第2の領域108に記憶される第2の認証情報118と異なり得る。領域間で認証情報の複製および/または更新に遅延が発生し得、異なる領域に記憶されている認証データが異なり得る。例えば、第2の領域108の第2の認証情報118は、第1の領域106の第1の認証情報116の後に遅延される時間に複製および/または更新され得る。第1の認証情報116が更新および/または複製される時点と、第2の認証情報118が更新および/または複製される時点との間に、領域が第1の認証情報116および第2の認証情報118を取得しようと試みる場合、取得される第1の認証情報116は、第2の認証情報118とは異なり得る。さらに、認証情報の更新および/または複製を実行するときに、認証情報の更新および/または複製の対象となる1つまたは複数の領域が使用できない場合は、それらの1つまたは複数の領域の認証情報が他の領域と異なり得る。
【0039】
ログイン領域104は、ユーザに対応する認証情報を取得して、ユーザにCSP102へのアクセスを提供するか否かを決定することができる。例えば、ログイン領域104は、ユーザにアクセスを提供するか否かを決定するために、1つまたは複数の領域から認証情報を取得することができる。いくつかの実施形態では、ログイン領域104は、ログインクレデンシャル114および/またはユーザ装置112から受信したCSP102へのアクセス要求に基づいて、どの領域から認証情報を取得するかを決定することができる。例えば、ログインクレデンシャル114および/または要求は、ユーザに対応するホーム領域および/または第1の加入領域を示すことができる。ログイン領域104は、認証情報を取得する領域について、ホーム領域および/または第1の加入領域にクエリすることができる。例えば、ログインクレデンシャル114および/または要求は、図示される実施形態では、第1の領域106がホーム領域であること、および/または第2の領域108が第1の加入領域であることを示すことができる。ログイン領域104は、表示に基づいて第1の領域106および/または第2の領域108にクエリを実行し、どの領域から認証情報を取得するかを決定できる。いくつかの実施形態では、第1の領域106および/または第2の領域108へのクエリは、バックチャネル110上で行われた呼び出しなど、バックチャネル呼び出しによって行われ得る。第1の領域106および/または第2の領域108は、バックチャネル110を使用して、認証情報を取得する領域を示すことができる。他の実施形態では、ログイン領域104は、ユーザの認証情報を取得する領域の表示を記憶し得、ログイン領域104は、記憶される表示に基づいて、認証情報を取得する領域を決定することができる。
【0040】
ログイン領域104は、ユーザ装置112のユーザがCSP102へのアクセスを許可されるか否かを決定するために使用される認証情報を取得するために、領域へのバックチャネル呼び出しを行うことができる。図示の実施形態では、ログイン領域104は、認証情報を第1の領域106および第2の領域108から取得することを決定している可能性がある。ログイン領域104は、バックチャネル110を介して第1の領域106および第2の領域108にバックチャネル呼び出しを送信することができる。バックチャネル呼び出しは、第1の領域106が第1の認証情報116を提供し、第2の領域108が第2の認証情報118をログイン領域104に提供することを要求できる。バックチャネル呼び出しに応答して、第1の領域106は第1の認証情報116をログイン領域104に提供し、第2の領域108は第2の認証情報118をログイン領域104に提供することができる。第1の領域106および第2の領域108は、バックチャネル110を介してログイン領域104に情報を提供することができる。
【0041】
ログイン領域104は、第1の領域106から第1の認証情報116を受信し、第2の領域108から第2の認証情報118を受信することができる。ログイン領域104は、第1の認証情報116と第2の認証情報118、またはその一部を結合して、ユーザにCSP102へのアクセスを提供するか否かを決定するための認証情報を生成することができる。例えば、ログイン領域104は、第1の認証情報116と第2の認証情報118を比較して、第1の認証情報116と第2の認証情報118内の重複した情報を識別することができる。ログイン領域104は、第1の認証情報116と第2の認証情報118とを重複させずに含む結合認証情報を生成し得る。結合認証情報は、ユーザがCSP102へのアクセスを許可されるか否かを決定するための認証情報として使用され得る。
【0042】
ログイン領域104は、ユーザ装置112からログインクレデンシャル114を受信し、第1の領域106からの第1の認証情報116と第2の領域108からの第2の認証情報118に基づいて認証情報を生成することができる。ログイン領域104は、ログインクレデンシャル114と認証情報に基づいて、ユーザにアクセスを提供するか否かを決定できる。ログイン領域104は、ユーザに対応する認証情報からのパスコードを、ログインクレデンシャル114で受信したパスコードと比較することができる。さらに、ログイン領域104は、ログインクレデンシャル114で受信した使い捨てパスワードを、認証情報からの以前に使用された使い捨てパスワードおよび/または認証情報からのまだ有効な使い捨てパスワードと比較することができる。いくつかの実施形態では、ログイン領域104は、ログインクレデンシャル114および/または認証情報に基づいて、ユーザ装置112がユーザが使用する既知のユーザ装置であるか否かをさらに決定でき、ユーザ装置112がユーザが使用する既知のユーザ装置でない場合は、さらに他の検証を要求することができる。
【0043】
ログイン領域104は、ログインクレデンシャル114内に提供されるパスコードが、認証情報からのパスコードと一致し、ログインクレデンシャル114からの使い捨てパスワードは、認証情報から以前に使用された使い捨てパスワードには含まれず、ログインクレデンシャル114からの使い捨てパスワードが、認証情報からのまだ有効な使い捨てパスワードの1つと一致し、ユーザ装置112は、ユーザによって使用される既知のユーザ装置であり、さらに他の検証は、ユーザ装置112がユーザによって使用される既知のユーザ装置ではないことに基づいて受信され、またはそれらの組み合わせに基づいて、CSP102へのアクセスを提供することを決定することができる。ログイン領域104は、ログインクレデンシャル114で提供されるパスコードが認証情報のパスコードと一致しないこと、ログインクレデンシャル114の使い捨てパスワードが認証情報の以前に使用された使い捨てパスワードに含まれていること、ログインクレデンシャル114の使い捨てパスワードが認証情報のまだ有効な使い捨てパスワードの1つと一致しないこと、またはそれらの組み合わせに基づいて、CSP102へのアクセスを拒否することを決定できる。
【0044】
システム構成100に関連して説明したように、認証情報は複数の領域に複製され、バックチャネルを介して取得可能であるため、CSP102内の複数の領域からCSP102にログインすることが可能になる。例えば、複数の領域から取得される認証情報により、ユーザが同じ使い捨てパスワードを使用して複数の領域にログインするリスクを軽減しながら、ユーザはCSP102にログインできるようになる。したがって、このアプローチは、セキュリティを提供しながら、CSP102内の任意の領域にログインできるという使いやすさの利点を持つ可能性がある。
【0045】
図2は、少なくとも1つの実施形態による別の例示的なシステム構成200を示す。システム構成200は、CSPの複数の領域に複製されるIDCSストライプまたはその一部を持つシステムの例を示している。図に示すシステム構成200は、複製されるIDCSストライプを持つ領域を介したユーザログインの例を示している。
【0046】
システム構成200は、CSP202を含み得る。CSP202は、CSP102(
図1)の1つまたは複数の機能を含み得る。例えば、CSP202は、第1の領域204および第2の領域206などの1つまたは複数の領域を含み得る。第1の領域204は、第1の領域106(
図1)の機能の1つまたは複数を含み得、第2の領域206は、第2の領域108(
図1)の機能の1つまたは複数を含み得る。第1の領域204は第1の認証情報208を記憶することができ、第1の認証情報208は第1の認証情報116(
図1)の機能の1つまたは複数を含み得る。第2の領域206は第2の認証情報210を記憶することができ、第2の認証情報210は第2の認証情報118(
図1)の機能の1つまたは複数を含み得る。
【0047】
システム構成200は、ユーザ装置212をさらに含み得る。ユーザ装置212は、ユーザ装置112(
図1)の1つまたは複数の機能を含み得る。ユーザは、ユーザ装置212を使用してCSP202へのアクセスを試みることができる。図示の実施形態では、ユーザ装置212は、CSP202にログインするために第1の領域204に誘導され得る。ユーザ装置212は、ユーザ装置212がCSP202の領域のうちの第1の領域204に地理的に最も近いこと、ユーザがユーザ装置212で第1の領域204に対応するIPアドレスを使用してCSP202へのアクセスを要求すること、またはそれらの組み合わせに基づいて、第1の領域204に誘導され得る。CSP202は、第1の領域204を介して、ユーザ装置212にCSP202にアクセスするためのインターフェイスを表示するように命令することができる。ユーザインターフェイスは、ユーザがCSP202にアクセスする権限があるか否かを決定するために使用されるログインクレデンシャル214の入力フィールドを含み得る。いくつかの実施形態では、CSP202は、ログインクレデンシャル214の一部として、ユーザ装置212の特性情報および/または以前のログイン試行の結果の表示をさらに要求し得る。ログインクレデンシャル214は、ログインクレデンシャル114(
図1)の1つまたは複数の機能を含み得る。
【0048】
第1の領域204は、ユーザ装置212からユーザのログインクレデンシャル214を受信することができる。第1の領域204は、ユーザ装置212によって提供されるログインクレデンシャル214を使用して、ユーザ装置212のユーザがCSP202へのアクセスを許可されるか否かを決定できる。特に、第1の領域204は、ログインクレデンシャル214と認証情報を使用して、ユーザがCSP202にアクセスする権限があるか否かを決定できる。
【0049】
第1の領域204は、第1の領域204の第1の認証情報208と、第2の領域206からの第2の認証情報210とを取得することができる。第1の領域204は、バックチャネル216を介して第2の領域206にバックチャネル呼び出しを行い、第2の領域206から第2の認証情報210を取得することができる。バックチャネル216は、バックチャネル110(
図1)の1つまたは複数の機能を含み得る。第2の領域206は、バックチャネル216を介して第2の認証情報210を第1の領域204に提供することができる。例えば、第2の領域206は、第1の領域204からのバックチャネル呼び出しに応答して第2の認証情報210を提供することができる。
【0050】
第1の領域204は、第1の認証情報208と第2の認証情報210を結合して、ユーザがCSP202へのアクセスを許可されるか否かを決定するために使用される認証情報を生成することができる。第1の認証情報208と第2の認証情報210の結合は、第1の認証情報116と第2の認証情報118の結合と同様に実行することができる。例えば、第1の領域204は、第1の認証情報208と第2の認証情報210内の重複した情報を識別することができる。第1の領域204は、重複した情報のない第1の認証情報208と第2の認証情報210を含む結合認証情報を生成することができ、結合認証情報は、ユーザがCSP202へのアクセスを許可されるか否かを決定するための認証情報として使用されることができる。
【0051】
第1の領域204は、ログインクレデンシャル214および認証情報に基づいて、CSP202へのアクセスを提供するか否かを決定し得る。第1の領域204によるCSP202へのアクセスを提供するか否かの決定は、ログイン領域104(
図1)によって実行されるCSP102へのアクセスを提供するか否かの決定の機能の1つまたは複数を含み得る。例えば、第1の領域204は、認証情報からのユーザに対応するパスコードを、ログインクレデンシャル214で受信したパスコードと比較し得る。さらに、第1の領域204は、ログインクレデンシャル214で受信した使い捨てパスワードを、認証情報からの以前に使用された使い捨てパスワードおよび/または認証情報からのまだ有効な使い捨てパスワードと比較し得る。いくつかの実施形態では、第1の領域204は、ログインクレデンシャル214および/または認証情報に基づいて、ユーザ装置212がユーザによって使用される既知のユーザ装置であるか否かをさらに決定し得、ユーザ装置212がユーザによって使用される既知のユーザ装置でない場合は、さらに他の検証を要求することができる。
【0052】
第1の領域204は、ログインクレデンシャル214に提供されるパスコードが認証情報からのパスコードと一致すること、ログインクレデンシャル214からの使い捨てパスワードが認証情報からの以前に使用された使い捨てパスワードに含まれていないこと、ログインクレデンシャル214からの使い捨てパスワードが認証情報からのまだ有効な使い捨てパスワードの1つと一致すること、ユーザ装置212がユーザが使用する既知のユーザ装置であること、さらに他の検証が、ユーザ装置212がユーザが使用する既知のユーザ装置ではないことに基づいて受信されること、またはそれらの組み合わせに基づいて、CSP202へのアクセスを提供することを決定し得る。第1の領域204は、ログインクレデンシャル214で提供されるパスコードが認証情報のパスコードと一致しないこと、ログインクレデンシャル214の使い捨てパスワードが認証情報の以前に使用された使い捨てパスワードに含まれていること、ログインクレデンシャル214の使い捨てパスワードが認証情報のまだ有効な使い捨てパスワードの1つと一致しないこと、またはそれらの組み合わせに基づいて、CSP202へのアクセスを拒否することを決定できる。
【0053】
図3は、少なくとも1つの実施形態による認証情報の結合シナリオ300の例を示している。特に、結合シナリオ300は、いくつかの実施形態に従った第1の認証情報302と第2の認証情報304との結合の例を示している。結合シナリオ300に示されている結合は、ログイン領域104(
図1)および/または第1の領域204(
図2)によって実行できる認証情報の結合の例であり得る。
【0054】
結合シナリオ300は、例示的な第1の認証情報302と例示的な第2の認証情報304とを示している。簡潔さと明確さのために、第1の認証情報302および第2の認証情報304に含まれる情報は、以前に使用された使い捨てパスワードに限定されている。第1の認証情報302および第2の認証情報304は、実施形態において追加情報を含み、結合シナリオ300に関連して説明した結合のアプローチに従って追加情報を結合し得ることを理解されたい。例えば、第1の認証情報302および第2の認証情報304は、実施形態では、ユーザに対応する1つまたは複数のパスコード、ユーザに関連付けられていることがわかっている1つまたは複数の装置の表示、ユーザに関連付けられる1つまたは複数の以前に使用された使い捨てパスワード、1つまたは複数のまだ有効な使い捨てパスワード、またはそれらの組み合わせを含み得る。
【0055】
第1の認証情報302は、第1の領域106(
図1)および/または第1の領域204(
図2)などの第1の領域に記憶され得る。第2の認証情報304は、第2の領域108(
図1)および/または第2の領域206(
図2)などの第2の領域に記憶され得る。例えば、第1の認証情報302は第1の領域のメモリに記憶され、第2の認証情報304は第2の領域のメモリに記憶され得る。いくつかの実施形態では、メモリは1つまたは複数のキャッシュを含み、キャッシュに記憶される情報は、記憶されてから一定時間が経過した後に削除および/または消去され得る。第1の認証情報302および第2の認証情報304は、複製されるIDCSストライプまたはその一部を含み得る。例えば、第1の認証情報302および第2の認証情報304は、ユーザに関連する情報を含むIDCSストライプ(またはその一部)のコピーであり得る。
【0056】
図示の実施形態では、第1の認証情報302は、以前に使用された使い捨てパスワードの第1のセット306を含み得、第2の認証情報304は、以前に使用された使い捨てパスワードの第2のセット308を含み得る。以前に使用された使い捨てパスワードの第1のセット306と以前に使用された使い捨てパスワードの第2のセット308は、ユーザがCSP(例えば、CSP102(
図1)および/またはCSP202(
図2))にサインインするために以前に使用した使い捨てパスワードを含み得る。第1のセットの使い捨てパスワード306と第2のセットの使い捨てパスワード308は、第1の認証情報302と第2の認証情報304とに対応する領域に複製されるIDCSストライプに含まれる、以前に使用された使い捨てパスワードのセットのコピーであり得る。
【0057】
図示の実施形態では、第1のセットの使い捨てパスワード306と第2のセットの使い捨てパスワード308は、異なる使い捨てパスワードを含む。第1のセットの使い捨てパスワード306と第2のセットの使い捨てパスワード308との間の使い捨てパスワードの違いは、第1の認証情報302と第2の認証情報304が更新された時間が異なることによるものであり得る。例えば、第1の認証情報302または第2の認証情報304のいずれかの更新は、CSPが対応する領域を更新する際の遅延、および/または更新時に領域の1つが使用できないことが原因で、他方と比較して更新が遅れている可能性がある。図示の実施形態では、第2の認証情報304の更新が遅れた可能性があり、その結果、第2のセットの使い捨てパスワード308には、第1のセットの使い捨てパスワード306よりも使い捨てパスワードが1つ少なくなる(図示の実施形態ではパスワード「241972」として示されている)。
【0058】
ユーザへのアクセスを提供するか否かを決定するCSPの領域は、第1の認証情報302および第2の認証情報304を取得し得る。領域は、第1の認証情報302と第2の認証情報304を結合して、結合認証情報310を生成することができる。領域は、第1の認証情報302と第2の認証情報304を結合して、結合認証情報310を生成することができる。
【0059】
結合の一環として、領域は、第1の認証情報302と第2の認証情報304内の重複した情報および/または情報の違いを識別することができる。領域が第1の認証情報302と第2の認証情報304に重複する情報を識別する場合、領域は、結合認証情報310を生成する際に情報の重複を削除し得る。領域が情報の違いを識別する場合、領域は、異なる情報を含めるか除外するかを決定して、結合認証情報310を生成することができる。異なる情報が含まれるか除外されるかは、情報のタイプに基づいて決定され得る。
【0060】
図示の実施形態では、結合認証情報310は、以前に使用された使い捨てパスワードの第1のセット312のコピーと、以前に使用された使い捨てパスワードの第2のセット314のコピーとともに示されている。領域は、以前に使用された使い捨てパスワードの第1のセット312のコピーと、以前に使用された使い捨てパスワードの第2のセット314のコピー内の重複した使い捨てパスワードとを識別し得る。図示の例では、領域は、「561232」、「243852」、「792163」、および「555292」の値が、以前に使用された使い捨てパスワードの第1のセット312のコピーと、以前に使用された使い捨てパスワードの第2のセット314のコピーとに重複していることを決定し得る。領域は、以前に使用された使い捨てパスワードのコピーの1つから重複した使い捨てパスワードを削除して、結合認証情報310を生成することができる。図示の例では、以前に使用された使い捨てパスワードの第2のセット314のコピーから重複した使い捨てパスワードを削除して、結合認証情報310を生成するように領域が決定されており、これは以前に使用された使い捨てパスワードの第2のセット314のコピー内の重複した使い捨てパスワードに取り消し線が引かれていることで示されている。場合によっては、領域は、結合認証情報310内の残りの以前に使用された使い捨てパスワードを使用して、ユーザにCSPへのアクセスを許可するか否かを決定し得る。
【0061】
いくつかの実施形態では、領域は、第1の認証情報302と第2の認証情報304との間の違いをさらにまたは代替的に定義することができる。図示の実施形態では、領域は、以前に使用された使い捨てパスワードの第1のセット312のコピーと、以前に使用された使い捨てパスワードの第2のセット314のコピーとの間の違いを識別することができる。特に、領域は、「241972」の値が、以前に使用された使い捨てパスワードの第1のセット312のコピーに存在するが、以前に使用された使い捨てパスワードの第2のセット314のコピーには含まれていないと決定し得る。領域は、異なる情報のタイプに基づいて、違いを削除するか維持するかを決定できる。例えば、領域は、以前に使用された使い捨てパスワードの情報のタイプの違いに基づいて、「241972」という値を維持することを決定し得る。その他のタイプの情報については、違いは削除されるか、または維持され得る。したがって、結合認証情報310は、「241972」という値を含む。
【0062】
結合認証情報310が生成されると、結合認証情報310は、ユーザがCSPにアクセスすることを許可するか否かを決定するために使用され得る。特に、領域は、結合認証情報310を、ユーザがCSPへのアクセスを許可されるか否かを決定するための認証情報として使用することができる。例えば、領域は、結合認証情報310を、ユーザから受信したログインクレデンシャル(例えば、ログインクレデンシャル114(
図1)および/またはログインクレデンシャル214(
図2))と比較して、ユーザがCSPにアクセスすることを許可するか否かを決定できる。図示の実施形態では、領域は、ログインクレデンシャルでユーザによって提供される使い捨てパスワードを、結合認証情報310に含まれる以前に使用された使い捨てパスワードの第1のセット312と比較することができる。領域が、ユーザによって提供される使い捨てパスワードが、以前に使用された使い捨てパスワードの第1のセット312内の使い捨てパスワードのいずれかと一致すると決定した場合、領域は、ユーザによって提供される使い捨てパスワードに少なくとも部分的に基づいて、ユーザにCSPへのアクセスを許可しないことを決定し得る。
【0063】
図4は、少なくとも1つの実施形態による別の例示的なシステム構成400を示す。システム構成400は、CSPの複数の領域に複製されるIDCSストライプまたはその一部を持つシステムの例を示している。図示されるシステム構成400は、ログイン領域を介したユーザログインの例を示している。システム構成400は、利用できない1つまたは複数の領域を有し得る。
【0064】
システム構成400は、CSP402を含み得る。CSP402は、CSP102(
図1)および/またはCSP202(
図2)の1つまたは複数の機能を含み得る。CSP402は、ログイン領域404を含み得る。ログイン領域404は、ログイン領域104(
図1)の1つまたは複数の機能を含み得る。ログイン領域104は、CSP402へのログインに使用され得、ユーザがCSP402にログインする権限があるか否かを決定できる。CSP402は、第1の領域406と第2の領域408をさらに含み得る。第1の領域406は、第1の領域106(
図1)および/または第1の領域204(
図2)の機能の1つまたは複数を含み得る。第2の領域408は、第2の領域108(
図1)および/または第2の領域206(
図2)の機能の1つまたは複数を含み得る。
【0065】
ログイン領域404は、第1の領域406および第2の領域408に結合され得る。例えば、ログイン領域404は、バックチャネル410を介して第1の領域406および第2の領域408に結合され得る。バックチャネル410は、バックチャネル110(
図1)および/またはバックチャネル216(
図2)の1つまたは複数の機能を含み得る。バックチャネル410は、ログイン領域404、第1の領域406、および/または第2の領域408を接続することができる。バックチャネル410は、領域間の直接接続または領域間の共有接続を提供できる。例えば、バックチャネル410は、いくつかの実施形態では、ログイン領域404と第1の領域406との間の直接接続、ログイン領域404と第2の領域408との間の別の直接接続、および/または第1の領域406と第2の領域408との間の別の直接接続を提供し得る。他の実施形態では、バックチャネル410は、ログイン領域404、第1の領域406、および第2の領域408の間で共有接続を提供することができる。
【0066】
システム構成400は、CSP402に接続する1つまたは複数のユーザ装置を含み得る。例えば、図示の実施形態では、システム構成400にはユーザ装置412が含まれる。ユーザ装置412は、ユーザ装置112(
図1)および/またはユーザ装置212(
図2)の1つまたは複数の機能を含み得る。ユーザは、ユーザ装置412を使用してCSP402へのアクセスを要求することができる。例えば、ユーザは、CSP402(またはその一部)に対応するIPアドレスをユーザ装置412のブラウザに入力して、CSP402へのアクセスを要求することができる。CSP402(またはその一部)は、ユーザ装置412に、CSP402にアクセスするためのユーザインターフェイスを表示するように命令することができる。ユーザインターフェイスは、ユーザがCSP402にアクセスする権限があるか否かを決定するために使用されるログインクレデンシャル414の入力フィールドを含み得る。いくつかの実施形態では、CSP402は、ログインクレデンシャル414の一部として、ユーザ装置412の特性情報および/または以前のログイン試行の結果の表示を要求し得る。
【0067】
ユーザ装置412は、ユーザ装置412を使用するユーザのログインのためのログインクレデンシャル414を取得することができる。例えば、ユーザ装置412は、ユーザ装置412を使用するユーザからログインクレデンシャル414を受信したり、および/またはユーザ装置412の特性を示す情報(例えば、ユーザ装置412に関連付けられる識別子、キー、および/またはその他の値)を取得したりすることができる。ログインクレデンシャル414は、パスコードおよび/または使い捨てパスワードなどのユーザからの入力を含み得る。いくつかの実施形態では、使い捨てパスワードはTOTPであり得る。使い捨てパスワードは、CSP402に関連するプログラムによって生成され得る。特に、プログラムは使い捨てパスワードを生成し、その使い捨てパスワードをユーザとCSP402に提供することができる。プログラムは、ユーザに関連付けられる電子メールアカウント、ユーザに関連付けられる電話番号(例えば、テキストメッセージおよび/または音声メッセージを介して)、CSP402に関連するプログラムから使い捨てパスワードを受信できるユーザ装置412上で実行されるソフトウェア、および/またはユーザに使い捨てパスワードを提供するための当技術分野で知られているその他の方法を介して、ユーザに使い捨てパスワードを提供できる。ログインプロセス中に、CSP402は、例えば表示されるログインインターフェイスで、ユーザ装置412のユーザから使い捨てパスワードの入力を要求し得る。ユーザは、使い捨てパスワードを他のユーザ認証情報(例えば、ユーザに関連付けられるパスワード)とともにユーザ装置412に入力することができ、ユーザ装置412は、使い捨てパスワードと他のユーザ認証情報を含むログインクレデンシャルを生成することができる。ログインプロセス中に、ユーザ装置412は、CSP402にログインクレデンシャル414を提供し、CSP402はこれを使用して、ユーザがCSP402にログインできるか否かを決定することができる。
【0068】
いくつかの実施形態では、ユーザ装置412から受信されるログインクレデンシャル414は、ユーザ装置412によって開始される以前のログイン試行および/または以前のログインに関連する情報をさらに含み得る。例えば、ユーザ装置412は、ユーザ装置412のユーザがCSP402にログインしようとして失敗した連続回数のカウントを維持しておくことができる。ユーザ装置412は、ログインクレデンシャル414に、ユーザがCSP402へのログインに連続して失敗した回数の表示を含み得る。他の実施形態では、CSP402は、ユーザ装置412によるログイン試行および/または特定の顧客のアカウントへのアクセスが連続して何回失敗したかのカウントを維持し得る。CSP402は、連続して失敗したログイン試行の回数が閾値の試行回数を超えたか否かを判定し、連続して失敗したログイン試行の回数が閾値の試行回数を超えたことに基づいて、ユーザにCSP402へのアクセスを提供しないことを決定し得る。
【0069】
図示の実施形態では、ユーザ装置412は、CSP402へのログインプロセス中に、ログイン領域404に誘導され得る。ユーザ装置412は、CSP402の他の領域と比較してログイン領域404に地理的に最も近いユーザ装置412、使用可能なユーザ装置412に地理的に最も近いCSP402の領域であるログイン領域404、ログイン領域404に対応するログインプロセスの一部としてユーザ装置412によって使用されるIPアドレス、ログインプロセスに使用されるログイン領域404の選択を示すユーザ装置412、またはそれらの組み合わせに基づいて、ログイン領域404に誘導され得る。ログイン領域404に誘導された結果、ユーザ装置412は、ログインプロセスの一部としてログイン領域404にログインクレデンシャル414を提供する。
【0070】
ログイン領域404は、ユーザ装置412によって提供されるログインクレデンシャル414を使用して、ユーザ装置412のユーザがCSP402へのアクセスを許可されるか否かを決定し得る。例えば、ログイン領域404は、ログインクレデンシャル414と結合して認証情報を使用することにより、ユーザがCSP402へのアクセスを許可されるか否かを決定できる。ユーザがCSP402にアクセスすることを許可するか否かを決定するための認証情報は、CSP402の2つ以上の領域に記憶され得る。しかし、CSP402には、ユーザに対応する認証情報が記憶されていない領域が存在する可能性があり、その場合、ユーザは、ユーザに対応する認証情報が記憶されていない領域でもCSP402にログインできる可能性がある。
【0071】
いくつかの実施形態では、ユーザに対応する認証情報は、ユーザに対応するホーム領域と、ユーザに対応する第1の加入領域とに記憶され得る。図示の実施形態では、第1の領域406は、ユーザに対応する第1の認証情報416を記憶でき、第2の領域408は、ユーザに対応する第2の認証情報418を記憶し得る。第1の認証情報416は、第1の領域406内に維持されるIDCSストライプであるか、またはその一部であり得、第2の認証情報418は、第2の領域408内に複製されるIDCSストライプであるか、またはその一部であり得る。いくつかの実施形態では、第1の領域406はユーザのホーム領域であり得、第2の領域408は第1の加入領域であり得る。ユーザ、またはユーザに関連付けられるエンティティは、ユーザに対応するホーム領域および/または第1の加入領域を定義でき得る。図示の実施形態では、ログイン領域404は、ユーザに対応する認証情報を記憶しない。
【0072】
認証情報は、ユーザがCSP402にアクセスする権限があるか否かを決定するための情報、および/またはユーザの以前のログインに関連する情報を含み得る。例えば、認証情報は、ユーザに対応するパスコード、ユーザがCSP402にログインするために使用した1つまたは複数の装置の表示、ユーザがCSP402にアクセスするために以前に使用した使い捨てパスワード、CSP402にアクセスするためにまだ有効な使い捨てパスワード、またはそれらの組み合わせを含み得る。認証情報は、CSP402へのユーザログインに基づいて更新され得る。例えば、CSP402は、CSP402へのアクセスに使用される使い捨てパスワードを使用して認証情報を更新できるため、ユーザがCSP402へのアクセスに以前に使用した使い捨てパスワードを更新して、CSP402へのアクセスに使用される追加の使い捨てパスワードを含める。使い捨てパスワードを含めるように更新することは、ログイン時に使い捨てパスワードを受信しなかった1つまたは複数の領域に、バックチャネル410を介して使い捨てパスワードのコピーを提供することを含み得る。いくつかの実施形態では、使い捨てパスワードは、バックチャネル410上の同期通信によって提供され得る。例えば、第1の領域406がログインの一部として使い捨てパスワードを受信した場合、第1の領域406は、バックチャネル410上の同期通信を介して使い捨てパスワードのコピーを第2の領域408に提供し、第2の認証情報418を使い捨てパスワードで更新する。
【0073】
ログインクレデンシャル414を使用してCSP402へのアクセス要求を受信すると、ログイン領域404は、ユーザの認証情報が記憶されているCSP402の2つ以上の領域に認証情報をクエリすることができる。例えば、図示の実施形態では、ログイン領域404は、第1の認証情報416について第1の領域406にクエリし、第2の認証情報418について第2の領域408にクエリすることができる。図示の例では、第1の領域406は使用できない。第1の領域406は使用できないため、第1の領域406は、第1の認証情報416のクエリを受信できない可能性があり、および/または第1の認証情報416のクエリに応答して、第1の認証情報416をログイン領域404に提供できない可能性もある。第2の領域408は依然として、第2の認証情報418のクエリを受信し、第2の認証情報418をログイン領域404に提供することができる。
【0074】
第1の認証情報416のクエリを第1の領域406に送信し、第2の認証情報418のクエリを第2の領域408に送信した後、ログイン領域404は、第1の領域406と第2の領域408からの応答を待つことができる。ログイン領域404は、第1の領域406からの応答を受信しないことに基づいて、第1の領域406が使用できないと決定し得る。いくつかの実施形態では、ログイン領域404は、定義される時間内に第1の領域406から応答が受信されないことに基づいて、第1の領域406が使用できないと決定し得る。
【0075】
他の実施形態では、ログイン領域404は、第1の領域406が使用できないことを認識し得る。これらの実施形態では、ログイン領域404は、CSP402へのアクセス要求の受信に基づいて、第2の認証情報418について第2の領域408にクエリし、第1の認証情報416について第1の領域406にクエリすることをスキップすることができる。ログイン領域404は、第1の領域406が使用できないことを認識しているため、第1の領域406へのクエリを回避することができる。これらの実施形態では、ログイン領域404は、第1の領域406が応答しないか否かを決定するために一定期間待機しない場合がある。したがって、第1の領域406が第1の認証情報416の問い合わせに応答しないか否かを決定するために待機する必要がないため、ユーザ装置412のユーザがCSP402へのアクセスを許可されるか否かを決定するために使用される認証情報を取得する際の遅延が少なくなり得る。
【0076】
ログイン領域404は、第1の領域406が使用できないという決定に基づいて、第2の領域408から受信した第2の認証情報418を使用して、ユーザがCSP402にアクセスできるか否かを決定することを決定することができる。例えば、ログイン領域404は、ログインクレデンシャル414と第2の認証情報418に基づいて、ユーザがCSP402にアクセスすることを許可されているか否かを決定できる。ログイン領域404は、ユーザに対応する第2の認証情報418からのパスコードを、ログインクレデンシャル414で受信したパスコードと比較し得る。さらに、ログイン領域404は、ログインクレデンシャル414で受信した使い捨てパスワードを、第2の認証情報418からの以前に使用された使い捨てパスワードおよび/または第2の認証情報418からのまだ有効な使い捨てパスワードと比較することができる。いくつかの実施形態では、ログイン領域404は、ログインクレデンシャル414および/または第2の認証情報418に基づいて、ユーザ装置412がユーザによって使用される既知のユーザ装置であるか否かをさらに決定し、ユーザ装置412がユーザによって使用される既知のユーザ装置でない場合は、さらに他の検証を要求することができる。
【0077】
ログイン領域404は、ログインクレデンシャル414で提供されるパスコードが第2の認証情報418のパスコードと一致すること、ログインクレデンシャル414の使い捨てパスワードが第2の認証情報418の以前に使用された使い捨てパスワードに含まれていないこと、ログインクレデンシャル414の使い捨てパスワードが第2の認証情報418のまだ有効な使い捨てパスワードの1つと一致すること、ユーザ装置412がユーザが使用する既知のユーザ装置であること、さらに他の検証はユーザ装置412がユーザが使用する既知のユーザ装置ではないことに基づいて受信されること、またはそれらの組み合わせに基づいて、CSP402へのアクセスを提供することを決定し得る。ログイン領域404は、ログインクレデンシャル414で提供されるパスコードが第2の認証情報418のパスコードと一致しないこと、ログインクレデンシャル414の使い捨てパスワードが第2の認証情報418の以前に使用された使い捨てパスワードに含まれていること、ログインクレデンシャル414の使い捨てパスワードが第2の認証情報418のまだ有効な使い捨てパスワードの1つと一致しないこと、またはそれらの組み合わせに基づいて、CSP402へのアクセスを拒否することを決定できる。
【0078】
ユーザのホーム領域が使用できない場合、またはユーザがユーザに対応するホーム領域以外の領域にログインすることを選択した場合、ユーザは、CSP402へのアクセスが許可されたか否かを決定するために使用された使用可能な領域の1つを介してCSP402へのアクセスを提供され得る。例えば、ユーザは、第1の加入領域を介して認証され、ユーザがCSP402へのアクセスを許可されているか否かが決定され得、ホーム領域が使用できない場合、またはユーザが第1の加入領域にログインすることを選択した場合に、第1の加入領域がユーザにCSP402へのアクセスを提供し得る。ホーム領域以外の領域の1つがユーザにCSP402へのアクセスを提供する場合、ユーザが実行できる動作は、ある意味で制限され得る。例えば、ホーム領域以外の領域がCSP402へのアクセスを提供する場合、ユーザはCSP402への読み取り専用アクセスに制限され得る。対照的に、ホーム領域がCSP402へのアクセスを提供する場合、ユーザはCSP402への読み取りアクセスと書き込みアクセスの両方を持つことができる。
【0079】
図示の実施形態では、第1の領域406は、ユーザ装置412のユーザのホーム領域として定義され得、第2の領域408は、ユーザの第1の加入領域として定義され得る。図示の実施形態では、ユーザが第2の領域408にサインインすると、第2の領域408は、ユーザがCSP402を使用して実行できる動作を制限し得る。例えば、第2の領域408は、CSP402への読み取り専用アクセスを提供し得る。
【0080】
第2の領域408がCSP402へのアクセスを提供する場合、第2の領域408は、ログインクレデンシャル414からの情報の少なくとも一部を含むように第2の認証情報418を更新することができる。例えば、第2の領域408は、ログインクレデンシャル414で受信した使い捨てパスワードを記憶し得る。いくつかの実施形態では、第2の領域408は、使い捨てパスワードを、第2の認証情報418内の以前に使用された他の使い捨てパスワードとともに記憶し得る。第1の領域406は使用できないため、第1の領域406は、ログインクレデンシャル414の情報の一部を使用して第1の認証情報416を更新しない可能性がある。例えば、第1の領域406は、ログインクレデンシャル414からの使い捨てパスワードを使用して第1の認証情報416を更新しない場合がある。したがって、第2の領域408が第2の認証情報418を更新し、第1の領域406が第1の認証情報416を更新しないことに基づいて、第1の認証情報416と第2の認証情報418に違いが生じる可能性がある。
【0081】
第1の領域406が再び使用可能になると、いくつかの実施形態では、第1の領域406が使用できないことに基づいて、第1の領域406に対して1つまたは複数の動作が実行され得る。例えば、ログイン領域404が第1の領域406が使用できないことを認識している実施形態では、第1の領域406が再び使用可能であることをログイン領域404に示す動作が実行され得る。いくつかの実施形態では、ログイン領域404は、ある間隔で、および/またはある動作の実行時に、第1の領域406に応答をクエリして、第1の領域406が再び使用可能になったか否かを決定できる。これらの実施形態では、第1の領域406は、第1の領域406が使用可能になると、第1の領域406が再び使用可能になったことを示す応答を返すことができる。いくつかの実施形態では、第1の領域406は、第1の領域406が再び使用可能になったことに応答して、第1の領域406が使用可能であるという表示をログイン領域404に送信することができる。
【0082】
いくつかの実施形態では、第1の領域406は、第1の領域406が再び使用可能になったことに応答して、第1の認証情報416を更新することができる。例えば、第1の領域406は、第1の領域406が使用できなくなってから他の領域が認証を更新したか否かを決定するために、1つまたは複数の他の領域にクエリを送信できる。図示の実施形態では、第1の領域406は、第1の領域406が再び使用可能になったことに応答して、バックチャネル410を介して第2の領域408にクエリを送信することができる。第2の領域408は、クエリに応答して第2の認証情報418を第1の領域406に送信することができる。いくつかの実施形態では、第1の領域406は、第1の認証情報416を第2の認証情報418と比較して、第1の領域406が使用できなかった間に第2の認証情報418に何らかの更新が行われたか否かを決定することができる。いくつかの実施形態では、第1の領域406は、第1の領域406が使用できなくなった時間を認識し、第1の領域406が使用できなくなった時間の後、かつ、第1の領域406が再び使用可能になる時間の前に、第2の認証情報418に適用される更新を決定することができる。第1の領域406は、決定される更新に基づいて第1の認証情報416を更新することができる。他の実施形態では、第1の領域406によって第2の領域408に送信されるクエリは、第1の領域406が使用できなくなった時間を示すことができる。これらの実施形態では、第2の領域408は、指定される時間後に更新される第2の認証情報418の一部を提供することができる。第1の領域406は、第2の領域408によって提供される指定される時間後に更新される第2の認証情報418の一部を使用して第1の認証情報416を更新することができる。
【0083】
図5は、少なくとも1つの実施形態による、サインオンインターフェイス500の一例を示す。例えば、サインオンインターフェイス500は、CSP(例えば、CSP102(
図1)、CSP202(
図2)、および/またはCSP402(
図4))へのサインインのために、ユーザ装置(例えば、ユーザ装置112(
図1)、ユーザ装置212(
図2)、および/またはユーザ装置412(
図4))上に表示され得る。サインオンインターフェイス500は、ログイン領域(例えば、ログイン領域104(
図1)および/またはログイン領域404(
図4))、第1の領域(例えば、第1の領域106(
図1)、第1の領域204(
図2)、および/または第1の領域406(
図4))、第2の領域(例えば、第2の領域108(
図1)、第2の領域206(
図2)、および/または第2の領域408(
図4))、またはそれらの組み合わせなど、CSPの領域ごとにユーザ装置に提供され得る。
【0084】
サインオンインターフェイス500は、ユーザ装置上に表示されるユーザインターフェイスを含み得る。サインオンインターフェイス500は、ユーザ装置のユーザがUEにサインインを試みる可能性のある1つまたは複数のエンティティの表示を含み得る。エンティティは、ドメイン、領域、またはそれらの組み合わせを含み得る。いくつかの実施形態では、ユーザインターフェイスは、エンティティの1つまたは複数の特性をさらに示すことができる。例えば、ユーザインターフェイスは、エンティティが読み取り機能および/または書き込み機能を提供するか、または読み取り専用機能を提供するかを示し得る。
【0085】
図示の実施形態では、サインオンインターフェイス500は、ユーザがCSPのドメイン1、ドメイン2、ドメイン3、およびドメイン4にサインインしようとし得ることを示している。例えば、第1の表示502は、ユーザがドメイン1にサインインを試みる可能性があることを示す。第2の表示504と第3の表示506は、ユーザがドメイン2にサインインを試みる可能性があることを示す。第4の表示508は、ユーザがドメイン3にサインインを試みる可能性があることを示す。第5の表示510と第6の表示512は、ユーザがドメイン4にサインインを試みる可能性があることを示す。
【0086】
さらに、サインオンインターフェイス500は、図示される実施形態においてドメインにアクセスするために使用できる領域を示す。例えば、第1の表示502は、領域1がドメイン1へのサインインに使用できることを示す。第2の表示504は、領域1がドメイン2へのサインインに使用できることを示す。第3の表示506は、領域2がドメイン2へのサインインに使用できることを示す。第4の表示508は、領域2がドメイン3へのサインインに使用できることを示す。第5の表示510は、領域1がドメイン4へのサインインに使用できることを示す。第6の表示512は、領域2がドメイン4へのサインインに使用できることを示す。
【0087】
図示の実施形態では、サインオンインターフェイス500は、いくつかの表示の特性を示している。例えば、第3の表示506は、第3の表示506に対応するサインインオプションが読み取り専用アクセスを提供することを示す。さらに、第6の表示512は、第6の表示512に対応するサインインオプションが読み取り専用アクセスを提供することを示す。
【0088】
ユーザ装置のユーザは、エンティティを介してCSPへのサインインを試みるために、表示の1つを選択することができる。例えば、ユーザは第1の表示502を選択して、ドメイン1および領域1経由でCSPにサインインを試みることができる。表示の選択に基づいて、選択されるエンティティにログイン要求が提供され得る。例えば、ユーザが第1の表示502を選択した場合、CSPのドメイン1へのログインを要求するログイン要求が領域1に送信され得る。領域1が使用できない場合は、第1の表示502が表示されずに表示のリストが更新され得る。その後、ユーザは別の表示を選択して、別のエンティティへのサインインを試みることができる。領域1が使用可能な場合、領域1はログイン要求に応答し得る。
【0089】
使用可能な領域がログイン要求に応答すると、ログインクレデンシャルの少なくとも一部(例えば、ログインクレデンシャル114(
図1)、ログインクレデンシャル214(
図2)、および/またはログインクレデンシャル414(
図4))の要求がユーザ装置上に表示され得る。ユーザはログインクレデンシャルの少なくとも一部を入力することができ、ログイン手順は本開示全体にわたって説明されているとおりに進み得る。
【0090】
図6は、少なくとも1つの実施形態による、CSPへのサインインに関連する例示的な手順600の第1の部分を示す。
図7は、少なくとも1つの実施形態による、
図6の例示的な手順600の第2の部分を示す。手順600は、CSPまたはその一部によって実行され得る。例えば、手順600は、ログイン領域(例えば、ログイン領域104(
図1)および/またはログイン領域404(
図4))、第1の領域(例えば、第1の領域106(
図1)、第1の領域204(
図2)、および/または第1の領域406(
図4))、第2の領域(例えば、第2の領域108(
図1)、第2の領域206(
図2)、および/または第2の領域408(
図4))、またはそれらの組み合わせによって実行され得る。
【0091】
602では、CSPはログインに使用可能な1つまたは複数の領域を決定することができる。例えば、CSPは、ログインに使用できる1つまたは複数の使用可能な領域の表示を記憶し得る。CSPは、記憶される表示に基づいて1つまたは複数の使用可能な領域を決定できる。他の実施形態では、CSPは1つまたは複数の領域をクエリして、どの領域がログインに使用可能かを決定し得る。CSPは、クエリへの応答に基づいて、ログイン可能な領域を決定できる。いくつかの実施形態では、602は省略され得る。
【0092】
604では、CSPは、選択のための1つまたは複数の使用可能な領域を示すユーザインターフェイスを提示することができる。例えば、CSPは、1つまたは複数の使用可能な領域からログイン領域を選択するための、1つまたは複数の使用可能な領域を示すユーザインターフェイスを提示し得る。いくつかの実施形態では、ユーザインターフェイスは、サインオンインターフェイス500(
図5)などのサインオンインターフェイスを含み得る。いくつかの実施形態では、604は省略され得る。
【0093】
606では、CSPは、1つまたは複数の使用可能な領域からログイン領域の選択を識別することができる。例えば、CSPは、ユーザインターフェイス内に表示される1つまたは複数の使用可能な領域から、ログイン領域として使用される領域の1つをユーザが選択したことを識別し得る。いくつかの実施形態では、選択される領域は、第1の領域(例えば、第1の領域106(
図1)、第1の領域204(
図2)、および/または第1の領域406(
図4))または第2の領域(例えば、第2の領域108(
図1)、第2の領域206(
図2)、および/または第2の領域408(
図4))であり得る。いくつかの実施形態では、606は省略され得る。
【0094】
608では、CSPはネットワークへのログイン要求を受信し得る。例えば、CSPはCSPのネットワークにログインする要求を受信し得る。いくつかの実施形態では、ログイン領域の選択の識別に少なくとも部分的に基づいて、606のログイン領域で要求が受信され得る。いくつかの実施形態では、要求は、当該要求に関連する認証情報が取得される2つ以上の領域とは別のCSPの第1の領域で受信され得る。
【0095】
610では、CSPは要求内で受信されたログインクレデンシャルを識別することができる。例えば、CSPは608で受信した要求内で受信されたログインクレデンシャルを識別し得る。いくつかの実施形態では、ログインクレデンシャルは、608で受信される要求で提供される使い捨てパスワードを含み得る。
【0096】
612では、CSPは要求に関連する認証情報を取得することができる。例えば、CSPは、CSPの2つ以上の領域から、608で受信した要求に関連する認証情報を取得し得る。認証情報は、第1の認証情報(例えば、第1の認証情報116(
図1)、第1の認証情報208(
図2)、および/または第1の認証情報416(
図4))、第2の認証情報(例えば、第2の認証情報118(
図1)、第2の認証情報210(
図2)、および/または第2の認証情報418(
図4))、またはそれらの組み合わせを含み得る。いくつかの実施形態では、認証情報は、608で受信される要求に関連付けられるアカウントに対応する、以前に使用された1つまたは複数の使い捨てパスワードを含み得る。いくつかの実施形態では、認証情報を取得することは、2つ以上の領域へのバックチャネル呼び出しを行うことを含む。
【0097】
いくつかの実施形態では、認証情報を取得することは、要求に関連付けられるアカウントのホーム領域およびアカウントの第1の加入領域から認証情報を取得することを含み得る。いくつかの実施形態では、認証情報を取得することは、ホーム領域から第1の認証情報を取得することと、第1の加入領域から第2の認証情報を取得することと、を含む。
【0098】
CSPは、第1の認証情報と第2の認証情報を結合して認証情報を生成することができる。例えば、CSPは、
図3に関連して説明した情報の結合の説明に従って、第1の認証情報と第2の認証を結合することができる。いくつかの実施形態では、第1の認証情報と第2の認証情報を結合することは、第1の認証情報と第2の認証情報を含む結合認証情報を生成することを含み得る。CSPは、結合認証内の特定の認証情報の第1のコピーを識別することができ、特定の認証情報の第1のコピーは、第1の認証情報からのものである。CSPは、結合認証情報内の特定の認証情報の第2のコピーをさらに識別することができ、特定の認証情報の第2のコピーは、第2の認証情報からのものである。CSPは、結合認証情報から特定の認証情報の第1のコピーまたは第2のコピーのいずれかを削除して、認証情報を生成し得る。
【0099】
614では、CSPは第1の領域が使用できないと決定し得る。例えば、認証情報が取得される2つ以上の領域は、第1の領域と第2の領域とを含み得る。CSPは、第1の領域が使用できないと決定し得る。これらの場合、認証情報を取得することは、第1の領域が使用できないという決定に少なくとも部分的に基づいて、第1の領域への第1のバックチャネル呼び出しをバイパスして認証情報を取得することを含み得る。認証情報を取得することは、認証情報を取得するために第2の領域に第2のバックチャネル呼び出しを行うことを含み得る。場合によっては、614が省略され得る。
【0100】
手順600は614から616に進むことができる。
図6の616と
図7の616は、手順600が
図6から
図7に続くことを示している。
図7の616が702に進むと、手順600は
図6の614から
図7の702に進み得る。
【0101】
702では、CSPはネットワークへのアクセスを提供するか否かを決定できる。例えば、CSPは、ログインクレデンシャルと認証情報に少なくとも部分的に基づいて、ネットワークへのアクセスを提供するか否かを決定し得る。いくつかの実施形態では、ネットワークへのアクセスを提供するか否かを決定することは、ログインクレデンシャルからの使い捨てパスワードが、612で取得される認証情報に含まれる1つまたは複数の以前に使用された使い捨てパスワードに存在しないことに少なくとも部分的に基づいて、ネットワークへのアクセスを提供することを決定することを含む。
【0102】
702での決定結果に基づいて、手順700は702から704または706に進むことができる。特に、CSPがネットワークへのアクセスを提供しないことを決定した場合、手順700は702から704に進むことができる。CSPがネットワークへのアクセスを提供することを決定した場合、手順700は702から706に進むことができる。
【0103】
704では、CSPはネットワークへのアクセスを拒否し得る。例えば、CSPは、702でネットワークへのアクセスを提供しないという決定に従って、ネットワークへのアクセスを拒否し得る。704が実行される場合、手順700は704の後に終了し得る。
【0104】
706では、CSPはネットワークへのアクセスを提供することができる。例えば、CSPは、ネットワークへのアクセスを提供するという決定に従って、ネットワークへのアクセスを提供し得る。706が実行される場合、手順700は706から708に進み得る。
【0105】
708では、CSPはログインクレデンシャルに含まれる認証データを識別することができる。いくつかの実施形態では、認証データは、610で識別されるログインクレデンシャルまたはその一部を含み得る。いくつかの実施形態では、708は省略され得る。
【0106】
710では、CSPは認証データを第1の領域に記憶することができる。例えば、CSPは、認証が取得される2つ以上の領域の第1の領域に認証データを記憶することができる。記憶される認証データは、将来のログイン試行に使用され得る。いくつかの実施形態では、710は省略され得る。
【0107】
712では、CSPは認証データを第2の領域に記憶することができる。例えば、CSPは、認証情報が取得される2つ以上の領域のうちの第2の領域に認証データを記憶し得る。記憶される認証データは、将来のログイン試行に使用され得る。いくつかの実施形態では、第2の領域に認証データを記憶することは、第1の領域と第2の領域との間の同期されるバックチャネル通信を介して、第1の領域から第2の領域に認証データを複製することを含み得る。いくつかの実施形態では、712は省略され得る。
【0108】
図7は手順700の順序を暗示するものと解釈され得るが、手順700の動作は他の実施形態では異なる順序で適用され得、および/または手順700の動作の1つまたは複数が同時に実行され得ることを理解されたい。さらに、他の実施形態では、手順700の1つまたは複数の動作が省略され得、および/または他の実施形態では、1つまたは複数の追加の動作が手順700に含まれ得ることを理解されたい。
【0109】
本開示全体にわたって説明されるアプローチおよび手順により、ユーザは複数の領域からログインできるようになる。例えば、従来のアプローチでは、ログインがホーム領域などの単一の領域に制限され得る。従来のアプローチでは、認証情報が第三者によって不適切に取得される可能性を制限し、異なる領域間で認証情報に違いが生じ得るのを防ぐために、ログインを単一の領域に制限し得る。本明細書で説明するアプローチと手順は、これらの問題に対処し、認証情報の適切な保護を提供することを継続しながら、複数の領域を介したログインを提供し、異なる領域の認証情報間で生じ得る違いを処理することができる。
【0110】
サービスとしてのインフラストラクチャアーキテクチャの例
前述のように、サービスとしてのインフラストラクチャ(IaaS)は、クラウドコンピューティングの特定のタイプである。IaaSは、パブリックネットワーク(例えば、インターネット)経由で仮想化されるコンピューティングリソースを提供するように構成できる。IaaSモデルでは、クラウドコンピューティングプロバイダがインフラストラクチャ構成要素(例えば、サーバ、記憶装置、ネットワークノード(例えば、ハードウェア)、展開ソフトウェア、プラットフォーム仮想化(例えば、ハイパーバイザーレイヤ)など)をホストできる。場合によっては、IaaSプロバイダが、これらのインフラストラクチャ構成要素に付随するさまざまなサービス(例えば、課金、監視、ログ記録、負荷分散、クラスタリングなど)も提供できる。したがって、これらのサービスはポリシー駆動型であり得るため、IaaSユーザは、アプリケーションの可用性と性能を維持するために負荷分散を促進するポリシーを実装できる可能性がある。
【0111】
場合によっては、IaaS顧客はインターネットなどの広域ネットワーク(WAN)を介してリソースやサービスにアクセスし、クラウドプロバイダのサービスを使用してアプリケーションスタックの残りの要素をインストールできる。例えば、ユーザはIaaSプラットフォームにログインして仮想機械(VM)を作成し、各VMにオペレーティングシステム(OS)をインストールし、データベースなどのミドルウェアを展開し、ワークロードとバックアップ用の記憶バケットを作成し、そのVMにエンタープライズソフトウェアをインストールすることもできる。顧客はプロバイダのサービスを使用して、ネットワークトラフィックの分散、アプリケーションの問題のトラブルシューティング、性能の監視、災害復旧の管理など、さまざまな機能を実行できる。
【0112】
ほとんどの場合、クラウドコンピューティングモデルではクラウドプロバイダの参加が必要になる。クラウドプロバイダは、IaaSの提供(例えば、提供、レンタル、販売)を専門とする第三者サービスである場合もあるが、そうである必要はない。エンティティはプライベートクラウドを導入し、独自のインフラストラクチャサービスのプロバイダになることを選択することもできる。
【0113】
いくつかの例では、IaaSデプロイ(IaaS deployment)は、新しいアプリケーション、またはアプリケーションの新しいバージョンを、準備されるアプリケーションサーバなどに配置するプロセスである。それはまた、サーバの準備プロセス(例えば、ライブラリ、デーモンなどのインストール)も含み得る。これは多くの場合、ハイパーバイザーレイヤ(例えば、サーバ、ストレージ、ネットワークハードウェア、仮想化)の下でクラウドプロバイダによって管理される。したがって、顧客は、OS、ミドルウェア、および/またはアプリケーションの展開(例えば、(例えば、オンデマンドで起動できる)セルフサービス仮想機械)などの処理を担当し得る。
【0114】
いくつかの例では、IaaSプロビジョニングは、使用するためにコンピュータまたは仮想ホストを取得し、必要なライブラリまたはサービスをそれらにインストールすることを指し得る。ほとんどの場合、展開にはプロビジョニングは含まれず、最初にプロビジョニングを実行する必要があり得る。
【0115】
場合によっては、IaaSプロビジョニングには2つの異なる課題がある。まず、何かを実行する前に、インフラストラクチャの初期セットをプロビジョニングするという最初の課題がある。第2に、すべてがプロビジョニングされた後、既存のインフラストラクチャを進化させる(例えば、新しいサービスの追加、サービスの変更、サービスの削除など)という課題がある。場合によっては、インフラストラクチャの構成を宣言的に定義できるようにすることで、これら2つの課題に対処できる。つまり、インフラストラクチャ(例えば、必要な構成要素やそれらの対話方法)は、1つまたは複数の構成ファイルによって定義できる。したがって、インフラストラクチャの全体的なトポロジ(例えば、どのリソースがどのリソースに依存しているか、また、各々のリソースがどのように調整するか)を宣言的に記述できる。場合によっては、トポロジが定義されると、構成ファイルに記述されているさまざまな構成要素を作成および/または管理するワークフローを生成できる。
【0116】
いくつかの例では、インフラストラクチャは相互接続される多くの要素を持ち得る。例えば、コアネットワークとも呼ばれる、1つまたは複数の仮想プライベートクラウド(VPC)(例えば、潜在的にオンデマンドで構成可能なおよび/または共有コンピューティングリソースのプール)が存在し得る。いくつかの例では、ネットワークの受信トラフィックおよび/または送信トラフィックの設定方法と1つまたは複数の仮想機械(VM)を定義するためにプロビジョニングされる1つまたは複数の受信/送信トラフィックグループルールが存在する場合もある。ロードバランサ、データベースなどの他のインフラストラクチャ要素もプロビジョニングされ得る。より多くのインフラストラクチャ要素が求められたりおよび/または追加されたりするにつれて、インフラストラクチャは段階的に進化し得る。
【0117】
場合によっては、継続的展開技術を使用して、さまざまな仮想コンピューティング環境にわたってインフラストラクチャコードの展開を可能にすることができる。さらに、説明した技術により、これらの環境内でのインフラストラクチャ管理が可能になる。いくつかの例では、サービスチームは、1つまたは複数の、多くの場合は多数の異なる動作環境(例えば、さまざまな地理的な場所、場合によっては世界中)に展開する必要があるコードを作成できる。しかし、一部の例では、コードが展開されるインフラストラクチャを最初に設定する必要がある。場合によっては、プロビジョニングを手動で実行したり、プロビジョニングツールを使用してリソースをプロビジョニングしたり、および/またはインフラストラクチャがプロビジョニングされたら展開ツールを使用してコードを展開したりすることもできる。
【0118】
図8は、少なくとも1つの実施形態によるIaaSアーキテクチャの例示的なパターンを示すブロック
図800である。サービスオペレータ802は、仮想クラウドネットワーク(VCN)806およびセキュアホストサブネット808を含み得るセキュアホストテナンシ804に通信可能に接続され得る。いくつかの例では、サービスオペレータ802は、1つまたは複数のクライアントコンピューティング装置を使用している可能性がある。これらの装置は、ポータブルハンドヘルド装置(例えば、iPhone(登録商標)、携帯電話、iPad(登録商標)、コンピューティングタブレット、パーソナルデジタルアシスタント(PDA))またはウェアラブル装置(例えば、Google(登録商標)Glassヘッドマウントディスプレイ)であり、Microsoft Windows Mobile(登録商標)などの実行ソフトウェア、および/またはiOS、Windows Phone、Android、BlackBerry8、PalmOSなどのさまざまなモバイルオペレーティングシステム、インターネット、電子メール、ショートメッセージサービス(SMS)、BlackBerry(登録商標)、またはその他の有効な通信プロトコルであり得る。あるいは、クライアントコンピューティング装置は、例えば、Microsoft Windows(登録商標)、Apple Macintosh(登録商標)、および/またはLinux(登録商標)オペレーティングシステムのさまざまなバージョンを実行するパーソナルコンピュータおよび/またはラップトップコンピュータを含む、汎用パーソナルコンピュータにすることができる。クライアントコンピューティング装置は、さまざまな市販のUNIX(登録商標)またはUNIXライクなオペレーティングシステム(例えば、Google Chrome OSなどのさまざまなGNU/Linuxオペレーティングシステムを含むがこれに限定されない)のいずれかを実行するワークステーションコンピュータであり得る。代替的に、または追加的に、クライアントコンピューティング装置は、シンクライアントコンピュータ、インターネット対応ゲームシステム(例えば、Kinect(登録商標)ジェスチャ入力装置の有無にかかわらずMicrosoft Xboxゲームコンソール)、および/または個人用メッセージング装置など、VCN806および/またはインターネットにアクセスできるネットワークを介して通信できるその他の電子装置であり得る。
【0119】
VCN806は、SSH VCN812に含まれるLPG810を介してセキュアシェル(SSH)VCN812に通信可能に接続され得るローカルピアリングゲートウェイ(LPG)810を含み得る。SSH VCN812にはSSHサブネット814が含まれ得、SSH VCN812は、制御プレーンVCN816に含まれるLPG810を介して制御プレーンVCN816に通信可能に接続され得る。また、SSH VCN812は、LPG810を介してデータプレーンVCN818に通信可能に接続され得る。制御プレーンVCN816とデータプレーンVCN818は、IaaSプロバイダが所有および/または動作できるサービステナンシ819に含めることができる。
【0120】
制御プレーンVCN816は、境界ネットワーク(例えば、企業イントラネットと外部ネットワーク間の企業ネットワークの一部)として機能する制御プレーン非武装地帯(DMZ)層820を含み得る。DMZベースのサーバは、制限された責任を有し、侵害の封じ込めに役立ち得る。さらに、DMZ層820は、1つまたは複数のロードバランサ(LB)サブネット822、アプリサブネット826を含み得る制御プレーンアプリ層824、データベース(DB)サブネット830(例えば、フロントエンドDBサブネットおよび/またはバックエンドDBサブネット)を含み得る制御プレーンデータ層828を含み得る。制御プレーンDMZ層820に含まれるLBサブネット822は、制御プレーンアプリ層824に含まれるアプリサブネット826および制御プレーンVCN816に含まれ得るインターネットゲートウェイ834と通信可能に結合することができ、アプリサブネット826は、制御プレーンデータ層828に含まれるDBサブネット830およびサービスゲートウェイ836およびネットワークアドレス変換(NAT)ゲートウェイ838と通信可能に結合することができる。制御プレーンVCN816は、サービスゲートウェイ836とNATゲートウェイ838を含み得る。
【0121】
制御プレーンVCN816は、アプリサブネット826を含み得るデータプレーンミラーアプリ層840を含み得る。データプレーンミラーアプリ層840に含まれるアプリサブネット826は、コンピューティングインスタンス844を実行できる仮想ネットワークインターフェイスコントローラ(VNIC)842を含み得る。コンピューティングインスタンス844は、データプレーンミラーアプリ層840のアプリサブネット826を、データプレーンアプリ層846に含めることができるアプリサブネット826に通信可能に接続され得る。
【0122】
データプレーンVCN818は、データプレーンアプリ層846、データプレーンDMZ層848、およびデータプレーンデータ層850を含み得る。データプレーンDMZ層848は、データプレーンアプリ層846のアプリサブネット826およびデータプレーンVCN818のインターネットゲートウェイ834に通信可能に接続され得るLBサブネット822を含み得る。アプリサブネット826は、データプレーンVCN818のサービスゲートウェイ836およびデータプレーンVCN818のNATゲートウェイ838に通信可能に接続され得る。データプレーンデータ層850は、データプレーンアプリ層846のアプリサブネット826と通信可能に接続され得るDBサブネット830も含み得る。
【0123】
制御プレーンVCN816およびデータプレーンVCN818のインターネットゲートウェイ834は、パブリックインターネット854に通信可能に接続され得るメタデータ管理サービス852に通信可能に接続され得る。パブリックインターネット854は、制御プレーンVCN816およびデータプレーンVCN818のNATゲートウェイ838に通信可能に接続され得る。制御プレーンVCN816およびデータプレーンVCN818のサービスゲートウェイ836は、クラウドサービス856と通信可能に接続され得る。
【0124】
いくつかの例では、制御プレーンVCN816またはデータプレーンVCN818のサービスゲートウェイ836は、パブリックインターネット854を経由せずにクラウドサービス856へのアプリケーションプログラミングインターフェイス(API)呼び出しを行うことができる。サービスゲートウェイ836からクラウドサービス856へのAPI呼び出しは一方向にすることができる。つまり、サービスゲートウェイ836はクラウドサービス856へのAPI呼び出しを行うことができ、クラウドサービス856は要求されるデータをサービスゲートウェイ836に送信することができる。しかし、クラウドサービス856は、サービスゲートウェイ836へのAPI呼び出しを開始できない場合がある。
【0125】
いくつかの例では、セキュアホストテナンシ804は、そうでなければ分離され得るサービステナンシ819に直接接続することができる。セキュアホストサブネット808は、そうでなければ分離されるシステム上で双方向通信を可能にし得るLPG810を介してSSHサブネット814と通信できる。セキュアホストサブネット808をSSHサブネット814に接続すると、セキュアホストサブネット808は、サービステナンシ819内の他のエンティティにアクセスできるようになる。
【0126】
制御プレーンVCN816は、サービステナンシ819のユーザが所望のリソースを設定またはプロビジョニングすることを可能にすることができる。制御プレーンVCN816でプロビジョニングされる必要なリソースは、データプレーンVCN818に展開されるか、または使用され得る。いくつかの例では、制御プレーンVCN816はデータプレーンVCN818から分離され得、制御プレーンVCN816のデータプレーンミラーアプリ層840は、データプレーンミラーアプリ層840およびデータプレーンアプリ層846に含まれ得るVNIC842を介して、データプレーンVCN818のデータプレーンアプリ層846と通信できる。
【0127】
いくつかの例では、システムのユーザ、または顧客は、メタデータ管理サービス852に要求を通信できるパブリックインターネット854を介して、例えば、作成、読み取り、更新、または削除(CRUD)動作の要求を行うことができる。メタデータ管理サービス852は、インターネットゲートウェイ834を介して制御プレーンVCN816に要求を通信できる。要求は、制御プレーンDMZ層820に含まれるLBサブネット822によって受信され得る。LBサブネット822は、要求が有効であると決定でき、この決定に応答して、制御プレーンアプリ層824に含まれるアプリサブネット826に要求を送信できる。要求が検証され、パブリックインターネット854への呼び出しが必要な場合、パブリックインターネット854への呼び出しは、パブリックインターネット854への呼び出しを行うことができるNATゲートウェイ838に送信され得る。要求によって記憶される必要があり得るメタデータは、DBサブネット830に記憶できる。
【0128】
いくつかの例では、データプレーンミラーアプリ層840は、制御プレーンVCN816とデータプレーンVCN818との間の直接通信を容易にすることができる。例えば、データプレーンVCN818に含まれるリソースに、構成の変更、更新、またはその他の適切な修正を適用することが望まれ得る。制御プレーンVCN816は、VNIC842を介して、データプレーンVCN818に含まれるリソースと直接通信し、それによって、構成の変更、更新、またはその他の適切な修正を実行できる。
【0129】
いくつかの実施形態では、制御プレーンVCN816およびデータプレーンVCN818は、サービステナンシ819内に含まれることができる。この場合、システムのユーザまたは顧客は、制御プレーンVCN816またはデータプレーンVCN818のいずれも所有または動作できない場合がある。代わりに、IaaSプロバイダは、制御プレーンVCN816とデータプレーンVCN818を所有または動作することができ、その両方がサービステナンシ819に含まれ得る。この実施形態は、ユーザまたは顧客が他のユーザまたは他の顧客のリソースと対話することを妨げる可能性のあるネットワークの分離を可能にすることができる。また、この実施形態により、システムのユーザまたは顧客は、記憶のための脅威防止のレベルが十分でない可能性のあるパブリックインターネット854に頼ることなく、データベースを非公開で記憶できるようになる。
【0130】
他の実施形態では、制御プレーンVCN816に含まれるLBサブネット822は、サービスゲートウェイ836からの信号を受信するように構成することができる。この実施形態では、制御プレーンVCN816およびデータプレーンVCN818は、パブリックインターネット854を呼び出すことなく、IaaSプロバイダの顧客によって呼び出されるように構成できる。IaaSプロバイダの顧客は、顧客が使用するデータベースがIaaSプロバイダによって制御され得、パブリックインターネット854から分離されている可能性があるサービステナンシ819に記憶され得るため、この実施形態を所望し得る。
【0131】
図9は、少なくとも1つの実施形態によるIaaSアーキテクチャの別の例のパターンを示すブロック
図900である。サービスオペレータ902(例えば、
図8のサービスオペレータ802)は、仮想クラウドネットワーク(VCN)906(例えば、
図8のVCN806)およびセキュアホストサブネット908(例えば、
図8のセキュアホストサブネット808)を含み得るセキュアホストテナンシ904(例えば、
図8のセキュアホストテナンシ804)に通信可能に接続され得る。VCN906は、SSH VCN912に含まれるLPG810を介してセキュアシェル(SSH)VCN912(例えば、
図8のSSH VCN812)に通信可能に接続され得るローカルピアリングゲートウェイ(LPG)910(例えば、
図8のLPG810)を含み得る。SSH VCN912は、SSHサブネット914(例えば、
図8のSSHサブネット814)を含むことができ、SSH VCN912は、制御プレーンVCN916に含まれるLPG910を介して制御プレーンVCN916(例えば、
図8の制御プレーンVCN816)に通信可能に結合されることができる。制御プレーンVCN916は、サービステナンシ919(例えば、
図8のサービステナンシ819)に含めることができ、データプレーンVCN918(例えば、
図8のデータプレーンVCN818)は、システムのユーザまたは顧客が所有または動作する可能性のある顧客テナンシ921に含めることができる。
【0132】
制御プレーンVCN916は、LBサブネット922(例えば、
図8のLBサブネット822)を含み得る制御プレーンDMZ層920(例えば、
図8の制御プレーンDMZ層820)、アプリサブネット926(例えば、
図8のアプリサブネット826)を含み得る制御プレーンアプリ層924(例えば、
図8の制御プレーンアプリ層824)、データベース(DB)サブネット930(例えば、
図8のDBサブネット830と同様)を含み得る制御プレーンデータ層928(例えば、
図8の制御プレーンデータ層828)を含み得る。制御プレーンDMZ層920に含まれるLBサブネット922は、制御プレーンアプリ層924に含まれるアプリサブネット926および制御プレーンVCN916に含まれ得るインターネットゲートウェイ934(例えば、
図8のインターネットゲートウェイ834)と通信可能に結合することができ、アプリサブネット926は、制御プレーンデータ層928に含まれるDBサブネット930およびサービスゲートウェイ936(例えば、
図8のサービスゲートウェイ836)およびネットワークアドレス変換(NAT)ゲートウェイ938(例えば、
図8のNATゲートウェイ838)と通信可能に結合することができる。制御プレーンVCN916は、サービスゲートウェイ936とNATゲートウェイ938を含み得る。
【0133】
制御プレーンVCN916は、アプリサブネット926を含み得るデータプレーンミラーアプリ層940(例えば、
図8のデータプレーンミラーアプリ層840)を含み得る。データプレーンミラーアプリ層940に含まれるアプリサブネット926には、コンピューティングインスタンス944(例えば、
図8のコンピューティングインスタンス844と同様)を実行できる仮想ネットワークインターフェイスコントローラ(VNIC)942(例えば、842のVNIC)を含み得る。コンピューティングインスタンス944は、データプレーンミラーアプリ層940に含まれるVNIC942とデータプレーンアプリ層946に含まれるVNIC942を介して、データプレーンミラーアプリ層940のアプリサブネット926と、データプレーンアプリ層946(例えば、
図8のデータプレーンアプリ層846)に含まれ得るアプリサブネット926との間の通信を容易にすることができる。
【0134】
制御プレーンVCN916に含まれるインターネットゲートウェイ934は、パブリックインターネット954(例えば、
図8のパブリックインターネット854)に通信可能に接続され得るメタデータ管理サービス952(例えば、
図8のメタデータ管理サービス852)に通信可能に接続され得る。パブリックインターネット954は、制御プレーンVCN916に含まれるNATゲートウェイ938と通信可能に接続され得る。制御プレーンVCN916に含まれるサービスゲートウェイ936は、クラウドサービス956(例えば、
図8のクラウドサービス856)と通信可能に接続され得る。
【0135】
いくつかの例では、データプレーンVCN918は顧客テナンシ921に含まれることができる。この場合、IaaSプロバイダは、各顧客に制御プレーンVCN916を提供することができ、また、IaaSプロバイダは、各顧客に対して、サービステナンシ919に含まれる固有のコンピューティングインスタンス944を設定することができる。各コンピューティングインスタンス944は、サービステナンシ919に含まれる制御プレーンVCN916と、顧客テナンシ921に含まれるデータプレーンVCN918との間の通信を可能にすることができる。コンピューティングインスタンス944は、サービステナンシ919に含まれる制御プレーンVCN916でプロビジョニングされるリソースを、顧客テナンシ921に含まれるデータプレーンVCN918に展開したり、その他の方法で使用したりすることを可能にできる。
【0136】
他の例では、IaaSプロバイダの顧客は、顧客テナンシ921内に存在するデータベースを有し得る。この例では、制御プレーンVCN916は、アプリサブネット926を含み得るデータプレーンミラーアプリ層940を含み得る。データプレーンミラーアプリ層940はデータプレーンVCN918内に存在できるが、データプレーンミラーアプリ層940はデータプレーンVCN918内に存在できない場合がある。つまり、データプレーンミラーアプリ層940は顧客テナンシ921にアクセスできる可能性があるが、データプレーンミラーアプリ層940はデータプレーンVCN918に存在しないか、IaaSプロバイダの顧客によって所有または動作されていない可能性がある。データプレーンミラーアプリ層940は、データプレーンVCN918への呼び出しを行うように構成できるが、制御プレーンVCN916に含まれるエンティティへの呼び出しを行うように構成することはできない。顧客は、制御プレーンVCN916にプロビジョニングされるリソースをデータプレーンVCN918に展開したり、その他の方法で使用したりすることを所望する場合があり、データプレーンミラーアプリ層940は、顧客のリソースの所望する展開、またはその他の使用を容易にすることができる。
【0137】
いくつかの実施形態では、IaaSプロバイダの顧客は、データプレーンVCN918にフィルタを適用することができる。この実施形態では、顧客はデータプレーンVCN918がアクセスできるものを決定でき、顧客はデータプレーンVCN918からパブリックインターネット954へのアクセスを制限できる。IaaSプロバイダは、フィルタを適用したり、データプレーンVCN918から外部のネットワークやデータベースへのアクセスを制御できない場合がある。顧客テナンシ921に含まれるデータプレーンVCN918に顧客によるフィルタと制御を適用すると、データプレーンVCN918を他の顧客やパブリックインターネット954から分離するのに役立ち得る。
【0138】
いくつかの実施形態では、クラウドサービス956は、サービスゲートウェイ936によって呼び出され、パブリックインターネット954、制御プレーンVCN916、またはデータプレーンVCN918に存在しない可能性があるサービスにアクセスすることができる。クラウドサービス956と制御プレーンVCN916またはデータプレーンVCN918との間の接続は、ライブまたは継続的ではない場合がある。クラウドサービス956は、IaaSプロバイダが所有または動作する別のネットワーク上に存在し得る。クラウドサービス956は、サービスゲートウェイ936からの呼び出しを受信するように構成され、パブリックインターネット954からの呼び出しを受信しないように構成され得る。一部のクラウドサービス956は他のクラウドサービス956から分離され得、制御プレーンVCN916は、制御プレーンVCN916と同じ領域にない場合があるクラウドサービス956から分離され得る。例えば、制御プレーンVCN916は「領域1」に配置され得、クラウドサービス「展開8」は領域1と「領域2」に配置され得る。領域1に位置する制御プレーンVCN916に含まれるサービスゲートウェイ936によって展開8への呼び出しが行われた場合、その呼び出しは領域1の展開8に送信され得る。この例では、制御プレーンVCN916、つまり領域1の展開8は、領域2の展開8と通信可能に結合されていないか、または通信していない可能性がある。
【0139】
図10は、少なくとも1つの実施形態による、IaaSアーキテクチャの別の例のパターンを示すブロック
図1000である。サービスオペレータ1002(例えば、
図8のサービスオペレータ802)は、仮想クラウドネットワーク(VCN)1006(例えば、
図8のVCN806)およびセキュアホストサブネット1008(例えば、
図8のセキュアホストサブネット808)を含み得るセキュアホストテナンシ1004(例えば、
図8のセキュアホストテナンシ804)に通信可能に接続され得る。VCN1006は、SSH VCN1012に含まれるLPG1010を介してSSH VCN1012(例えば、
図8のSSH VCN812)に通信可能に接続され得るLPG1010(例えば、
図8のLPG810)を含み得る。SSH VCN1012は、SSHサブネット1014(例えば、
図8のSSHサブネット814)を含むことができ、SSH VCN1012は、制御プレーンVCN1016に含まれるLPG1010を介して制御プレーンVCN1016(例えば、
図8の制御プレーンVCN816)に通信可能に結合され、データプレーンVCN1018に含まれるLPG1010を介してデータプレーンVCN1018(例えば、
図8のデータプレーン818)に通信可能に結合されることができる。制御プレーンVCN1016およびデータプレーンVCN1018は、サービステナンシ1019(例えば、
図8のサービステナンシ819)に含めることができる。
【0140】
制御プレーンVCN1016には、ロードバランサ(LB)サブネット1022(例えば、
図8のLBサブネット822)を含み得る制御プレーンDMZ層1020(例えば、
図8の制御プレーンDMZ層820)、アプリサブネット1026(例えば、
図8のアプリサブネット826と同様)を含み得る制御プレーンアプリ層1024(例えば、
図8の制御プレーンアプリ層824)、DBサブネット1030を含み得る制御プレーンデータ層1028(例えば、
図8の制御プレーンデータ層828)が含まれ得る。制御プレーンDMZ層1020に含まれるLBサブネット1022は、制御プレーンアプリ層1024に含まれるアプリサブネット1026および制御プレーンVCN1016に含まれ得るインターネットゲートウェイ1034(例えば、
図8のインターネットゲートウェイ834)と通信可能に結合することができ、アプリサブネット1026は、制御プレーンデータ層1028に含まれるDBサブネット1030およびサービスゲートウェイ1036(例えば、
図8のサービスゲートウェイ)およびネットワークアドレス変換(NAT)ゲートウェイ1038(例えば、
図8のNATゲートウェイ838)と通信可能に結合することができる。制御プレーンVCN1016は、サービスゲートウェイ1036とNATゲートウェイ1038を含み得る。
【0141】
データプレーンVCN1018は、データプレーンアプリ層1046(例えば、
図8のデータプレーンアプリ層846)、データプレーンDMZ層1048(例えば、
図8のデータプレーンDMZ層848)、およびデータプレーンデータ層1050(例えば、
図8のデータプレーンデータ層850)を含み得る。データプレーンDMZ層1048は、データプレーンアプリ層1046の信頼できるアプリサブネット1060および信頼できないアプリサブネット1062、およびデータプレーンVCN1018に含まれるインターネットゲートウェイ1034に通信可能に接続され得るLBサブネット1022を含み得る。信頼できるアプリサブネット1060は、データプレーンVCN1018に含まれるサービスゲートウェイ1036、データプレーンVCN1018に含まれるNATゲートウェイ1038、およびデータプレーンデータ層1050に含まれるDBサブネット1030に通信可能に接続され得る。信頼できないアプリサブネット1062は、データプレーンVCN1018に含まれるサービスゲートウェイ1036およびデータプレーンデータ層1050に含まれるDBサブネット1030に通信可能に接続され得る。データプレーンデータ層1050は、データプレーンVCN1018に含まれるサービスゲートウェイ1036に通信可能に接続され得るDBサブネット1030を含み得る。
【0142】
信頼できないアプリサブネット1062は、テナント仮想機械(VM)1066(1)~(N)に通信可能に接続され得る1つまたは複数のプライマリVNIC1064(1)~(N)を含み得る。各テナントVM1066(1)~(N)は、それぞれの顧客テナンシ1070(1)~(N)に含まれ得るそれぞれのコンテナ出口VCN1068(1)~(N)に含まれ得るそれぞれのアプリサブネット1067(1)~(N)に通信可能に結合することができる。それぞれのセカンダリVNIC1072(1)~(N)は、データプレーンVCN1018に含まれる信頼できないアプリサブネット1062とコンテナ出口VCN1068(1)~(N)に含まれるアプリサブネット間の通信を容易にすることができる。各コンテナ出口VCN1068(1)~(N)は、パブリックインターネット1054(例えば、
図8のパブリックインターネット854)に通信可能に接続され得るNATゲートウェイ1038を含み得る。
【0143】
制御プレーンVCN1016に含まれ、データプレーンVCN1018に含まれるインターネットゲートウェイ1034は、パブリックインターネット1054に通信可能に接続され得るメタデータ管理サービス1052(例えば、
図8のメタデータ管理システム852)に通信可能に接続され得る。パブリックインターネット1054は、制御プレーンVCN1016に含まれ、データプレーンVCN1018に含まれるNATゲートウェイ1038に通信可能に接続され得る。制御プレーンVCN1016に含まれ、データプレーンVCN1018に含まれるサービスゲートウェイ1036は、クラウドサービス1056と通信可能に接続され得る。
【0144】
いくつかの実施形態では、データプレーンVCN1018は顧客テナンシ1070と統合することができる。この統合は、コード実行時にサポートが必要な場合など、IaaSプロバイダの顧客にとって役立つ、または望ましい場合がある。顧客は、破壊的であったり、他の顧客リソースと通信したり、その他の望ましくない影響を引き起こす可能性のあるコードを実行するように提供し得る。これに応じて、IaaSプロバイダは、顧客からIaaSプロバイダに提供されるコードを実行するか否かを決定できる。
【0145】
いくつかの例では、IaaSプロバイダの顧客は、IaaSプロバイダに一時的なネットワークアクセスを許可し、データプレーンアプリ層1046に接続する機能を要求することができる。機能を実行するコードはVM1066(1)~(N)で実行される可能性があり、コードはデータプレーンVCN1018上の他の場所で実行されるように構成されない可能性がある。各VM1066(1)~(N)は1つの顧客テナンシ1070に接続できる。VM1066(1)~(N)に含まれるそれぞれのコンテナ1071(1)~(N)は、コードを実行するように構成され得る。この場合、二重の分離(例えば、コンテナ1071(1)~(N)がコードを実行し、コンテナ1071(1)~(N)が少なくとも信頼できないアプリサブネット1062に含まれるVM1066(1)~(N)に含まれ得る)が存在する可能性があり、これにより、誤ったコードまたは望ましくないコードがIaaSプロバイダのネットワークに損害を与えたり、別の顧客のネットワークに損害を与えたりするのを防ぐことができる。コンテナ1071(1)~(N)は、顧客テナンシ1070に通信可能に結合され、顧客テナンシ1070からデータを送信または受信するように構成され得る。コンテナ1071(1)~(N)は、データプレーンVCN1018内の他のエンティティからデータを送信または受信するように構成されない場合がある。コードの実行が完了すると、IaaSプロバイダはコンテナ1071(1)~(N)を強制終了するか、その他の方法で処分することができる。
【0146】
いくつかの実施形態では、信頼できるアプリサブネット1060は、IaaSプロバイダが所有または動作し得るコードを実行し得る。この実施形態では、信頼できるアプリサブネット1060は、DBサブネット1030と通信可能に結合され、DBサブネット1030でCRUD動作を実行するように構成され得る。信頼できないアプリサブネット1062はDBサブネット1030と通信可能に結合され得るが、この実施形態では、信頼できないアプリサブネットはDBサブネット1030で読み取り動作を実行するように構成され得る。各顧客のVM1066(1)~(N)に含まれ、顧客からのコードを実行する可能性のあるコンテナ1071(1)~(N)は、DBサブネット1030と通信可能に結合されていない可能性がある。
【0147】
他の実施形態では、制御プレーンVCN1016とデータプレーンVCN1018は通信可能に直接結合されない場合がある。この実施形態では、制御プレーンVCN1016とデータプレーンVCN1018との間に直接通信が存在しない場合がある。しかし、少なくとも1つの方法を通じて間接的に通信が行われ得る。IaaSプロバイダによって、制御プレーンVCN1016とデータプレーンVCN1018間の通信を容易にし得るLPG1010が確立され得る。別の例では、制御プレーンVCN1016またはデータプレーンVCN1018は、サービスゲートウェイ1036を介してクラウドサービス1056を呼び出すことができる。例えば、制御プレーンVCN1016からクラウドサービス1056への呼び出しには、データプレーンVCN1018と通信できるサービスの要求が含まれ得る。
【0148】
図11は、少なくとも1つの実施形態による、IaaSアーキテクチャの別の例のパターンを示すブロック
図1100である。サービスオペレータ1102(例えば、
図8のサービスオペレータ802)は、仮想クラウドネットワーク(VCN)1106(例えば、
図8のVCN806)およびセキュアホストサブネット1108(例えば、
図8のセキュアホストサブネット808)を含み得るセキュアホストテナンシ1104(例えば、
図8のセキュアホストテナンシ804)に通信可能に接続され得る。VCN1106は、SSH VCN1112に含まれるLPG1110を介してSSH VCN1112(例えば、
図8のSSH VCN812)に通信可能に接続され得るLPG1110(例えば、
図8のLPG810)を含み得る。SSH VCN1112は、SSHサブネット1114(例えば、
図8のSSHサブネット814)を含むことができ、SSH VCN1112は、制御プレーンVCN1116に含まれるLPG1110を介して制御プレーンVCN1116(例えば、
図8の制御プレーンVCN816)に通信可能に結合され、データプレーンVCN1118に含まれるLPG1110を介してデータプレーンVCN1118(例えば、
図8のデータプレーン818)に通信可能に結合されることができる。制御プレーンVCN1116およびデータプレーンVCN1118は、サービステナンシ1119(例えば、
図8のサービステナンシ819)に含めることができる。
【0149】
制御プレーンVCN1116には、LBサブネット1122(例えば、
図8のLBサブネット822)を含み得る制御プレーンDMZ層1120(例えば、
図8の制御プレーンDMZ層820)、アプリサブネット1126(例えば、
図8のアプリサブネット826)を含み得る制御プレーンアプリ層1124(例えば、
図8の制御プレーンアプリ層824)、DBサブネット1130(例えば、
図10のDBサブネット1030)を含み得る制御プレーンデータ層1128(例えば、
図8の制御プレーンデータ層828)が含まれ得る。制御プレーンDMZ層1120に含まれるLBサブネット1122は、制御プレーンアプリ層1124に含まれるアプリサブネット1126および制御プレーンVCN1116に含まれ得るインターネットゲートウェイ1134(例えば、
図8のインターネットゲートウェイ834)と通信可能に結合することができ、アプリサブネット1126は、制御プレーンデータ層1128に含まれるDBサブネット1130およびサービスゲートウェイ1136(例えば、
図8のサービスゲートウェイ)およびネットワークアドレス変換(NAT)ゲートウェイ1138(例えば、
図8のNATゲートウェイ838)と通信可能に結合することができる。制御プレーンVCN1116は、サービスゲートウェイ1136とNATゲートウェイ1138を含み得る。
【0150】
データプレーンVCN1118は、データプレーンアプリ層1146(例えば、
図8のデータプレーンアプリ層846)、データプレーンDMZ層1148(例えば、
図8のデータプレーンDMZ層848)、およびデータプレーンデータ層1150(例えば、
図8のデータプレーンデータ層850)を含み得る。データプレーンDMZ層1148は、データプレーンアプリ層1146の信頼できるアプリサブネット1160(例えば、
図10の信頼できるアプリサブネット1060)および信頼できないアプリサブネット1162(例えば、
図10の信頼できないアプリサブネット1062)、およびデータプレーンVCN1118に含まれるインターネットゲートウェイ1134に通信可能に接続され得るLBサブネット1122を含み得る。信頼できるアプリサブネット1160は、データプレーンVCN1118に含まれるサービスゲートウェイ1136、データプレーンVCN1118に含まれるNATゲートウェイ1138、およびデータプレーンデータ層1150に含まれるDBサブネット1130と通信可能に接続され得る。信頼できないアプリサブネット1162は、データプレーンVCN1118に含まれるサービスゲートウェイ1136およびデータプレーンデータ層1150に含まれるDBサブネット1130に通信可能に接続され得る。データプレーンデータ層1150は、データプレーンVCN1118に含まれるサービスゲートウェイ1136に通信可能に接続され得るDBサブネット1130を含み得る。
【0151】
信頼できないアプリサブネット1162は、信頼できないアプリサブネット1162内に存在するテナント仮想機械(VM)1166(1)~(N)と通信可能に接続され得るプライマリVNIC1164(1)~(N)を含み得る。各テナントVM1166(1)~(N)は、それぞれのコンテナ1167(1)~(N)内でコードを実行し、コンテナ出口VCN1168内に含まれ得るデータプレーンアプリ層1146内に含まれ得るアプリサブネット1126に通信可能に結合することができる。それぞれのセカンダリVNIC1172(1)~(N)は、データプレーンVCN1118に含まれる信頼できないアプリサブネット1162とコンテナ出口VCN1168に含まれるアプリサブネット間の通信を容易にすることができる。コンテナ出口VCNは、パブリックインターネット1154(例えば、
図8のパブリックインターネット854)に通信可能に接続され得るNATゲートウェイ1138を含み得る。
【0152】
制御プレーンVCN1116に含まれ、データプレーンVCN1118に含まれるインターネットゲートウェイ1134は、パブリックインターネット1154に通信可能に接続され得るメタデータ管理サービス1152(例えば、
図8のメタデータ管理システム852)に通信可能に接続され得る。パブリックインターネット1154は、制御プレーンVCN1116に含まれ、データプレーンVCN1118に含まれるNATゲートウェイ1138に通信可能に接続され得る。制御プレーンVCN1116に含まれ、データプレーンVCN1118に含まれるサービスゲートウェイ1136は、クラウドサービス1156と通信可能に接続され得る。
【0153】
いくつかの例では、
図11のブロック
図1100のアーキテクチャによって示されるパターンは、
図10のブロック
図1000のアーキテクチャによって示されるパターンの例外とみなされ得、IaaSプロバイダが顧客と直接通信できない場合(例えば、切断される領域)には、IaaSプロバイダの顧客にとって望ましい場合がある。各顧客のVM1166(1)~(N)に含まれるそれぞれのコンテナ1167(1)~(N)は、顧客がリアルタイムでアクセスできる。コンテナ1167(1)~(N)は、コンテナ出口VCN1168に含まれ得るデータプレーンアプリ層1146のアプリサブネット1126に含まれるそれぞれのセカンダリVNIC1172(1)~(N)を呼び出すように構成できる。セカンダリVNIC1172(1)~(N)は、NATゲートウェイ1138に呼び出しを送信することができ、NATゲートウェイ1138は、呼び出しをパブリックインターネット1154に送信することができる。この例では、顧客がリアルタイムでアクセスできるコンテナ1167(1)~(N)は、制御プレーンVCN1116から分離でき、データプレーンVCN1118に含まれる他のエンティティからも分離できる。コンテナ1167(1)~(N)も、他の顧客のリソースから分離され得る。
【0154】
他の例では、顧客はコンテナ1167(1)~(N)を使用してクラウドサービス1156を呼び出すことができる。この例では、顧客はコンテナ1167(1)~(N)内でクラウドサービス1156からサービスを要求するコードを実行し得る。コンテナ1167(1)~(N)は、この要求をセカンダリVNIC1172(1)~(N)に送信し得、セカンダリVNIC1172(1)~(N)は、要求をNATゲートウェイに送信し得、NATゲートウェイは、要求をパブリックインターネット1154に送信できる。パブリックインターネット1154は、インターネットゲートウェイ1134を介して、制御プレーンVCN1116に含まれるLBサブネット1122に要求を送信できる。要求が有効であると決定されることに応答して、LBサブネットは、サービスゲートウェイ1136を介してクラウドサービス1156に要求を送信できるアプリサブネット1126に要求を送信できる。
【0155】
図に示されるIaaSアーキテクチャ800、900、1000、1100は、図示されるもの以外の構成要素を有し得ることを理解されたい。さらに、図に示される実施形態は、本開示の実施形態を組み込むことができるクラウドインフラストラクチャシステムのいくつかの例にすぎない。いくつかの他の実施形態では、IaaSシステムは、図に示されているよりも多くの構成要素またはより少ない構成要素を有し得、2つ以上の構成要素を結合したり、構成要素の構成または配置が異なったりし得る。
【0156】
特定の実施形態では、本明細書で説明するIaaSシステムは、セルフサービス、加入ベース、弾力的にスケーラブル、信頼性、可用性が高く、安全な方法で顧客に提供されるアプリケーション、ミドルウェア、およびデータベースサービスオファリングのスイートを含み得る。このようなIaaSシステムの一例としては、本譲受人が提供するオラクル・クラウド・インフラストラクチャ(OCI)が挙げられる。
【0157】
図12は、さまざまな実施形態が実装され得る例示的なコンピュータシステム1200を示す。システム1200は、上記のいずれかのコンピュータシステムを実装するために使用できる。図に示すように、コンピュータシステム1200は、バスサブシステム1202を介して多数の周辺サブシステムと通信する処理装置1204を含む。これらの周辺サブシステムは、処理加速装置1206、I/Oサブシステム1208、記憶サブシステム1218、および通信サブシステム1224を含み得る。記憶サブシステム1218は、有形のコンピュータ可読記憶媒体1222とシステムメモリ1210を含む。
【0158】
バスサブシステム1202は、コンピュータシステム1200のさまざまな構成要素とサブシステムが意図したとおりに相互に通信できるようにするメカニズムを提供する。バスサブシステム1202は単一のバスとして概略的に示されているが、バスサブシステムの代替の実施形態では複数のバスを使用し得る。バスサブシステム1202は、メモリバスまたはメモリコントローラ、周辺バス、およびさまざまなバスアーキテクチャのいずれかを使用するローカルバスを含む、いくつかのタイプのバス構造のいずれかになり得る。例えば、このようなアーキテクチャは、業界標準アーキテクチャ(ISA)バス、マイクロチャネルアーキテクチャ(MCA)バス、拡張ISA(EISA)バス、ビデオエレクトロニクス標準協会(VESA)ローカルバス、および周辺機器相互接続(PCI)バスを含み得、これらはIEEE P1386.1標準に従って製造されるメザニンバスとして実装できる。
【0159】
処理装置1204は、1つまたは複数の集積回路(例えば、従来のマイクロプロセッサまたはマイクロコントローラ)として実装することができ、コンピュータシステム1200の動作を制御する。処理装置1204は、1つまたは複数のプロセッサを含み得る。これらのプロセッサは、単一コアプロセッサまたはマルチコアプロセッサを含み得る。特定の実施形態では、処理装置1204は、各処理装置に単一またはマルチコアプロセッサが含まれる1つまたは複数の独立した処理装置1232および/または1234として実装され得る。他の実施形態では、処理装置1204は、2つのデュアルコアプロセッサを1つのチップに統合して形成されるクアッドコア処理装置として実装されることもできる。
【0160】
さまざまな実施形態において、処理装置1204は、プログラムコードに応じてさまざまなプログラムを実行することができ、複数の同時実行プログラムまたはプロセスを維持することができる。任意の時点で、実行されるプログラムコードの一部またはすべてが、プロセッサ1204および/または記憶サブシステム1218に存在し得る。適切なプログラミングにより、プロセッサ1204は上記のさまざまな機能を提供できる。コンピュータシステム1200は、さらに、デジタル信号プロセッサ(DSP)、専用プロセッサなどを含み得る処理加速装置1206を含み得る。
【0161】
I/Oサブシステム1208は、ユーザインターフェイス入力装置とユーザインターフェイス出力装置を含み得る。ユーザインターフェイス入力装置は、キーボード、マウスやトラックボールなどのポインティング装置、ディスプレイに組み込まれたタッチパッドまたはタッチスクリーン、スクロールホイール、クリックホイール、ダイヤル、ボタン、スイッチ、キーパッド、音声コマンド認識システムを備えたオーディオ入力装置、マイク、その他のタイプの入力装置を含み得る。ユーザインターフェイス入力装置は、例えば、Microsoft Kinect(登録商標)モーションセンサなどのモーションセンシング装置および/またはジェスチャ認識装置を含み得る。Microsoft Kinect(登録商標)モーションセンサを使用すると、ユーザはジェスチャや音声コマンドを使用した自然なユーザインターフェイスを通じて、Microsoft Xbox(登録商標)360ゲームコントローラなどの入力装置を制御でき、また対話できる。ユーザインターフェイス入力装置は、ユーザの目の動き(例えば、写真を撮影しているときおよび/またメニューを選択しているときの「まばたき」)を検出し、その目のジェスチャを入力装置(例えば、Google Glass(登録商標))への入力として変換するGoogle Glass(登録商標)まばたき検出器などの目のジェスチャ認識装置も含み得る。さらに、ユーザインターフェイス入力装置は、ユーザが音声コマンドを通じて音声認識システム(例えば、Siri(登録商標)ナビゲータ)と対話できるようにする音声認識センシング装置を含み得る。
【0162】
ユーザインターフェイス入力装置は、3次元(3D)マウス、ジョイスティックまたはポインティングスティック、ゲームパッドおよびグラフィックタブレット、ならびにスピーカ、デジタルカメラ、デジタルビデオカメラ、ポータブルメディアプレーヤ、ウェブカメラ、画像スキャナ、指紋スキャナ、バーコードリーダ3Dスキャナ、3Dプリンタ、レーザー距離計、視線追跡装置などのオーディオ/ビジュアル装置も含み得るが、これらに限定されない。さらに、ユーザインターフェイス入力装置は、例えば、コンピュータ断層撮影、磁気共鳴画像化、位置放射断層撮影、医療用超音波検査装置などの医療用画像化入力装置を含み得る。ユーザインターフェイス入力装置は、例えば、MIDIキーボード、デジタル楽器などのオーディオ入力装置も含み得る。
【0163】
ユーザインターフェイス出力装置は、表示サブシステム、インジケータライト、またはオーディオ出力装置などの非視覚ディスプレイなどを含み得る。表示サブシステムは、ブラウン管(CRT)、液晶ディスプレイ(LCD)やプラズマディスプレイを使用するフラットパネル装置、投影装置、タッチスクリーンなどであり得る。一般に、「出力装置」という用語の使用は、コンピュータシステム1200からユーザまたは他のコンピュータに情報を出力するためのあらゆるタイプの装置およびメカニズムを含むことを意図している。例えば、ユーザインターフェイス出力装置は、モニタ、プリンタ、スピーカ、ヘッドフォン、自動車ナビゲーションシステム、プロッタ、音声出力装置、モデムなど、テキスト、グラフィック、オーディオ/ビデオ情報を視覚的に伝えるさまざまな表示装置を含み得るが、これらに限定されない。
【0164】
コンピュータシステム1200は、システムメモリ1210内に現在配置されているように示されるソフトウェア要素を含む記憶サブシステム1218を含み得る。システムメモリ1210は、処理装置1204でロードおよび実行可能なプログラム命令、およびこれらのプログラムの実行中に生成されるデータを記憶し得る。
【0165】
コンピュータシステム1200の構成およびタイプに応じて、システムメモリ1210は揮発性(例えば、ランダムアクセスメモリ(RAM))および/または不揮発性(例えば、読み取り専用メモリ(ROM)、フラッシュメモリなど)であり得る。RAMには通常、処理装置1204によってすぐにアクセス可能であり、および/または現在処理装置1204によって動作および実行されているデータおよび/またはプログラムモジュールが含まれている。いくつかの実装では、システムメモリ1210は、静的ランダムアクセスメモリ(SRAM)や動的ランダムアクセスメモリ(DRAM)などの複数の異なるタイプのメモリを含み得る。いくつかの実装では、起動時などコンピュータシステム1200内の要素間で情報を転送するのに役立つ基本ルーチンを含む基本入出力システム(BIOS)が、通常、ROMに記憶され得る。限定ではなく例として、システムメモリ1210は、クライアントアプリケーション、Webブラウザ、中間層アプリケーション、リレーショナルデータベース管理システム(RDBMS)などを含み得るアプリケーションプログラム1212、プログラムデータ1214、およびオペレーティングシステム1216も例示し得る。一例として、オペレーティングシステム1216は、Microsoft Windows(登録商標)、Apple Macintosh(登録商標)、および/またはLinuxオペレーティングシステムのさまざまなバージョン、市販のさまざまなUNIX(登録商標)またはUNIXライクなオペレーティングシステム(さまざまなGNU/Linuxオペレーティングシステム、Google Chrome(登録商標)OSなどを含むがこれらに限定されない)、および/またはiOS、Windows(登録商標)Phone、Android(登録商標)OS、BlackBerry(登録商標)OS、およびPalm(登録商標)OSオペレーティングシステムなどのモバイルオペレーティングシステムを含み得る。
【0166】
記憶サブシステム1218は、いくつかの実施形態の機能を提供する基本的なプログラミングおよびデータ構造を記憶するための有形のコンピュータ可読記憶媒体も提供することができる。プロセッサによって実行されると上記の機能を提供するソフトウェア(プログラム、コードモジュール、命令)は、記憶サブシステム1218に記憶され得る。これらのソフトウェアモジュールまたは命令は、処理装置1204によって実行され得る。記憶サブシステム1218は、本開示に従って使用されるデータを記憶するためのリポジトリも提供することができる。
【0167】
記憶サブシステム1200は、コンピュータ可読記憶媒体1222にさらに接続できるコンピュータ可読記憶媒体リーダ1220も含み得る。コンピュータ可読記憶媒体1222は、システムメモリ1210と一緒に、またオプションで結合して、リモート、ローカル、固定、および/または取り外し可能な記憶装置に加えて、コンピュータ可読情報を一時的および/またはより永続的に含有、記憶、送信、および取得するための記憶媒体を包括的に表すことができる。
【0168】
コードまたはコードの一部を含むコンピュータ可読記憶媒体1222は、情報の記憶および/または送信のための任意の方法または技術で実装される揮発性および不揮発性、取り外し可能および取り外し不可能な媒体などであるがこれらに限定されない、記憶媒体および通信媒体を含む、当該技術分野で既知または使用されている任意の適切な媒体も含み得る。これは、RAM、ROM、電子的に消去可能なプログラム可能なROM(EEPROM)、フラッシュメモリまたはその他のメモリテクノロジ、CD-ROM、デジタル多用途ディスク(DVD)、またはその他の光学式記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置またはその他の磁気記憶装置、またはその他の有形のコンピュータ可読媒体などの有形のコンピュータ可読記憶媒体を含み得る。これは、データ信号、データ送信などの無形のコンピュータ可読媒体または必要な情報を送信するために使用でき、コンピューティングシステム1200によってアクセスできるその他の媒体も含み得る。
【0169】
一例として、コンピュータ可読記憶媒体1222は、取り外し不可能な不揮発性磁気媒体から読み取りまたは書き込みを行うハードディスクドライブ、取り外し可能な不揮発性磁気ディスクから読み取りまたは書き込みを行う磁気ディスクドライブ、およびCD ROM、DVD、Blu-Ray(登録商標)ディスクなどの取り外し可能な不揮発性光ディスク、またはその他の光媒体から読み取りまたは書き込みを行う光ディスクドライブを含み得る。コンピュータ可読記憶媒体1222は、Zip(登録商標)ドライブ、フラッシュメモリカード、ユニバーサルシリアルバス(USB)フラッシュドライブ、セキュアデジタル(SD)カード、DVDディスク、デジタルビデオテープなどを含み得るが、これらに限定されない。コンピュータ可読記憶媒体1222は、フラッシュメモリベースのSSD、エンタープライズフラッシュドライブ、ソリッドステートROMなどの不揮発性メモリに基づくソリッドステートドライブ(SSD)、ソリッドステートRAM、動的RAM、静的RAM、DRAMベースのSSD、磁気抵抗RAM(MRAM)SSD、およびDRAMとフラッシュメモリベースのSSDの組み合わせを使用するハイブリッドSSDなどの揮発性メモリに基づくSSDも含み得る。ディスクドライブおよびそれに関連するコンピュータ可読媒体は、コンピュータシステム1200のコンピュータ可読命令、データ構造、プログラムモジュール、およびその他のデータの不揮発性記憶を提供し得る。
【0170】
通信サブシステム1224は、他のコンピュータシステムおよびネットワークへのインターフェイスを提供する。通信サブシステム1224は、コンピュータシステム1200から他のシステムとの間でデータを送受信するためのインターフェイスとして機能する。例えば、通信サブシステム1224は、コンピュータシステム1200がインターネットを介して1つまたは複数の装置に接続できるようにする。いくつかの実施形態では、通信サブシステム1224は、無線音声および/またはデータネットワーク(例えば、携帯電話技術、3G、4G、EDGE(世界的な進化に合わせてデータレートを強化)などの高度なデータネットワーク技術、WiFi(IEEE802.11ファミリ標準、またはその他のモバイル通信技術、またはそれらの任意の組み合わせ)にアクセスするための無線周波数(RF)トランシーバー構成要素、グローバルポジショニングシステム(GPS)受信機構成要素、および/またはその他の構成要素を使用)を含み得る。いくつかの実施形態では、通信サブシステム1224は、無線インターフェイスに加えて、または無線インターフェイスの代わりに、有線ネットワーク接続(例えば、イーサネット(登録商標))を提供できる。
【0171】
いくつかの実施形態では、通信サブシステム1224は、コンピュータシステム1200を使用する可能性のある1人または複数のユーザに代わって、構造化データフィードおよび/または非構造化データフィード1226、イベントストリーム1228、イベント更新1230などの形式で入力通信を受信することもできる。
【0172】
一例として、通信サブシステム1224は、Twitter(登録商標)フィード、Facebook(登録商標)アップデート、リッチ・サイト・サマリー(RSS)フィードなどのWebフィード、および/または1つまたは複数の第三者情報ソースからのリアルタイム更新など、ソーシャルネットワークおよび/またはその他の通信サービスのユーザからデータフィード1226をリアルタイムで受信するように構成できる。
【0173】
さらに、通信サブシステム1224は、連続データストリームの形式でデータを受信するように構成することもできる。連続データストリームは、リアルタイムイベントのイベントストリーム1228および/またはイベント更新1230が含まれ得、明示的な終了がなく、本質的に連続的または無制限であり得る。連続データを生成するアプリケーションの例としては、例えば、センサデータアプリケーション、金融ティッカー、ネットワーク性能測定ツール(例えば、ネットワーク監視およびトラフィック管理アプリケーション)、クリックストリーム分析ツール、自動車交通監視などを含み得る。
【0174】
通信サブシステム1224は、構造化データフィードおよび/または非構造化データフィード1226、イベントストリーム1228、イベント更新1230などを、コンピュータシステム1200に結合される1つまたは複数のストリーミングデータソースコンピュータと通信できる1つまたは複数のデータベースに出力するように構成することもできる。
【0175】
コンピュータシステム1200は、ハンドヘルドポータブル装置(例えば、iPhone(登録商標)携帯電話、iPad(登録商標)コンピューティングタブレット、PDA)、ウェアラブル装置(例えば、Google Glass(登録商標)ヘッドマウントディスプレイ)、PC、ワークステーション、メインフレーム、キオスク、サーバラック、またはその他のデータ処理システムを含む、さまざまなタイプのいずれかであり得る。
【0176】
コンピュータおよびネットワークの常に変化する性質のため、図に示すコンピュータシステム1200の説明は、特定の例としてのみ意図されている。図に示されているシステムよりも多くの構成要素またはより少ない構成要素を持つ他の多くの構成が可能である。例えば、カスタマイズされるハードウェアも使用され得、および/または特定の要素がハードウェア、ファームウェア、ソフトウェア(アプレットを含む)、またはそれらの組み合わせで実装され得る。さらに、ネットワーク入出力装置などの他のコンピューティング装置への接続も使用できる。本明細書で提供される開示および教示に基づいて、当業者は、さまざまな実施形態を実装するための他の方法および/または手法を理解するであろう。
【0177】
特定の実施形態について説明したが、さまざまな修正、変更、代替構成、および同等のものも本開示の範囲内に含まれる。実施形態は、特定のデータ処理環境内での動作に限定されず、複数のデータ処理環境内で自由に動作することができる。例えば、実施形態は、プロセッサによって実行されると、プロセッサに本開示で説明されている方法のいずれかを実行させるコンピュータプログラム/命令を含むコンピュータプログラム製品を使用して実装することができる。さらに、実施形態は特定の一連のトランザクションおよびステップを使用して説明されているが、本開示の範囲は、説明されている一連のトランザクションおよびステップに限定されないことは、当業者には明らかであるはずである。上述の実施形態のさまざまな特徴および態様は、個別にまたは結合して使用することができる。
【0178】
さらに、実施形態は特定のハードウェアとソフトウェアの組み合わせを使用して説明されているが、他のハードウェアとソフトウェアの組み合わせも本開示の範囲内にあることを認識すべきである。実施形態は、ハードウェアのみ、ソフトウェアのみ、またはそれらの組み合わせを使用して実装することができる。本明細書で説明するさまざまなプロセスは、同じプロセッサまたは異なるプロセッサの任意の組み合わせで実装できる。したがって、構成要素またはモジュールがある動作を実行するように構成されていると説明されている場合、そのような構成は、例えば、動作を実行するための電子回路を設計することによって、動作を実行するためのプログラム可能な電子回路(例えば、マイクロプロセッサ)をプログラミングすることによって、またはそれらの任意の組み合わせによって実現できる。プロセスは、プロセス間通信の従来の技術を含むがこれに限定されないさまざまな技術を使用して通信することができ、異なるプロセスのペアが異なる技術を使用することも、同じプロセスのペアが異なる時間に異なる技術を使用することもできる。
【0179】
したがって、本明細書および図面は、限定的な意味ではなく、例示的な意味としてみなされるべきである。しかし、請求項に規定されるより広い趣旨および範囲から逸脱することなく、追加、減算、削除、およびその他の修正および変更が可能であることは明らかである。したがって、特定の開示実施形態が説明されているが、これらは限定することを意図するものではない。さまざまな修正および同等のものが、以下の請求項の範囲内にある。
【0180】
開示される実施形態を説明する文脈(特に以下の請求項の文脈)における用語「a」および「an」および「the」および類似の表示対象の使用は、本明細書で別途記載されていない限り、または文脈によって明らかに矛盾しない限り、単数形と複数形の両方をカバーするものと解釈される。「含む」、「有する」、「含む」、および「含有する」という用語は、特に明記されていない限り、オープンエンドの用語(つまり、「含むが、これらに限定されない」という意味)として解釈される。「接続」という用語は、何かが介在している場合でも、部分的または全体的に含まれている、接続されている、または結合されていると解釈される。本明細書における値の範囲の記載は、本明細書に別途記載がない限り、その範囲内に含まれる各個別の値を個別に参照するための簡略な方法として機能することのみを目的としており、各個別の値は、本明細書に個別に記載されるかのように明細書に組み込まれる。本明細書で説明するすべての方法は、本明細書で別途記載されている場合、または文脈によって明らかに矛盾している場合を除き、任意の適切な順序で実行できる。本明細書で提供されるあらゆる例、または例示的な文言(例えば、「など」)の使用は、実施形態をよりわかりやすく説明することのみを意図しており、特に請求されない限り、開示の範囲を制限するものではない。明細書中のいかなる文言も、請求されていない要素が開示の実施に必須であることを示すものとして解釈されるべきではない。
【0181】
「X、Y、またはZのうちの少なくとも1つ」という語句などの離接語は、特に明記されていない限り、一般的に、項目、用語などがX、Y、Zのいずれか、またはそれらの任意の組み合わせ(例えば、X、Y、および/またはZ)であり得ることを示すために使用される文脈内で理解されることが意図されている。したがって、このような離接語は、一般的に、ある実施形態がXの少なくとも1つ、Yの少なくとも1つ、またはZの少なくとも1つを各々存在させる必要があることを暗示することを意図しておらず、また暗示すべきではない。
【0182】
本開示の好ましい実施形態は、本開示を実施するために知られている最良の形態を含めて、本明細書に記載されている。これらの好ましい実施形態の変形は、前述の説明を読めば、当業者には明らかになるであろう。当業者であれば、必要に応じてこのような変形を採用することができ、開示は、本明細書に具体的に記載されるものとは別の方法で実施され得る。したがって、本開示は、適用法によって許可される限り、本明細書に添付される請求項に記載される主題のすべての修正および同等物を含む。さらに、本明細書に別途記載がない限り、上記要素のあらゆる可能な変形の任意の組み合わせが本開示に包含される。
【0183】
本明細書に引用されている出版物、特許出願、特許を含むすべての参考文献は、各参考文献が個別に具体的に参照により組み込まれることが示され、本明細書にその全体が記載される場合と同程度に、参照により本明細書に組み込まれる。
【0184】
例
以下のセクションでは、さらに他の例示的な実施形態が提供される。
【0185】
例1は、マルチ領域ログインを容易にする方法を含み得、当該方法は、クラウドサービスプロバイダ(CSP)のネットワークにログインするための要求を受信することと、要求内で受信されたログインクレデンシャルを識別することと、クラウドサービスプロバイダの2つ以上の領域から要求に関連する認証情報を取得することと、ログインクレデンシャルおよび認証情報に少なくとも部分的に基づいて、ネットワークへのアクセスを提供するか否かを決定することと、ネットワークへのアクセスを提供するという決定に従ってネットワークへのアクセスを提供すること、またはネットワークへのアクセスを提供しないという決定に従ってネットワークへのアクセスを拒否することと、を含む。
【0186】
例2は、例1の方法を含み得、認証情報を取得することは、要求に関連付けられるアカウントのホーム領域およびアカウントの第1の加入領域から認証情報を取得することを含む。
【0187】
例3は、例2の方法を含み得、認証情報を取得することは、ホーム領域から第1の認証情報を取得することと、第1の加入領域から第2の認証情報を取得することと、第1の認証情報と第2の認証情報を結合して認証情報を生成することと、を含む。
【0188】
例4は、例3の方法を含み得、第1の認証情報と第2の認証情報を結合することは、第1の認証情報と第2の認証情報とを含む結合認証情報を生成することと、結合認証情報内の特定の認証情報の第1のコピーを識別することと(特定の認証情報の第1のコピーは第1の認証情報からのものである)、結合認証情報内の特定の認証情報の第2のコピーを識別することと(特定の認証情報の第2のコピーは第2の認証情報からのものである)、結合認証情報から特定の認証情報の第1のコピーまたは第2のコピーのいずれかを削除して認証情報を生成することと、を含む。
【0189】
例5は、例1の方法を含み得、認証情報は、要求に関連付けられるアカウントに対応する1つまたは複数の以前に使用された使い捨てパスワードを含み、ログインクレデンシャルは、要求で提供される使い捨てパスワードを含み、ネットワークへのアクセスを提供するか否かの決定は、使い捨てパスワードが1つまたは複数の以前に使用された使い捨てパスワードに存在しないことに少なくとも部分的に基づいて、ネットワークへのアクセスを提供することを決定することを含む。
【0190】
例6は、例1の方法を含み得、さらに、ログインクレデンシャルに含まれる認証データを識別し、将来のログイン試行に使用される2つ以上の領域のうちの第1の領域に認証データを記憶し、将来のログイン試行に使用される2つ以上の領域のうちの第2の領域に認証データを記憶することを含む。
【0191】
例7は、例6の方法を含み得、認証データを第2の領域に記憶することは、第1の領域と第2の領域との間の同期されるバックチャネル通信を介して、第1の領域から第2の領域に認証データを複製することを含む。
【0192】
例8は、例1の方法を含み得、要求は、2つ以上の領域とは別のクラウドサービスプロバイダの第1の領域で受信され、認証情報を取得することは、認証情報を取得するために2つ以上の領域へのバックチャネル呼び出しを行うことを含む。
【0193】
例9は、例1の方法を含み得、2つ以上の領域は第1の領域と第2の領域とを含み、方法は、第1の領域が使用できないと決定することをさらに含み、認証情報を取得することは、第1の領域が使用できないという決定に少なくとも部分的に基づいて、第1の領域への第1のバックチャネル呼び出しをバイパスして認証情報を取得し、第2の領域への第2のバックチャネル呼び出しを行って認証情報を取得することを含む。
【0194】
例10は、例1の方法を含み得、さらに、ログインに使用可能な1つまたは複数の領域を決定することと、1つまたは複数の使用可能な領域を示すユーザインターフェイスを提示して、1つまたは複数の使用可能な領域からログイン領域を選択することと、1つまたは複数の使用可能な領域からログイン領域の選択を識別することと、を含み、ログイン領域の選択の識別に少なくとも部分的に基づいて、ログイン領域で要求が受信される。
【0195】
例11は、命令が記憶されている1つまたは複数のコンピュータ可読媒体を含み得、命令は、1つまたは複数のプロセッサによって実行されると、1つまたは複数のプロセッサに、クラウドサービスプロバイダ(CSP)のネットワークにログインするための要求を受信することと、要求内で受信されたログインクレデンシャルを識別することと、クラウドサービスプロバイダの2つ以上の領域から要求に関連する認証情報を取得することと、ログインクレデンシャルおよび認証情報に少なくとも部分的に基づいて、ネットワークへのアクセスを提供するか否かを決定することと、ネットワークへのアクセスを提供するという決定に従ってネットワークへのアクセスを提供すること、またはネットワークへのアクセスを提供しないという決定に従ってネットワークへのアクセスを拒否することと、を含む動作を実行させる。
【0196】
例12は、例11の1つまたは複数のコンピュータ可読媒体を含み得、認証情報の取得は、要求に関連付けられるアカウントのホーム領域から第1の認証情報を取得することと、アカウントの第1の加入領域から第2の認証情報を取得することと、第1の認証情報と第2の認証情報を結合して認証情報を生成することと、を含む。
【0197】
例13は、例11の1つまたは複数のコンピュータ可読媒体を含み得、認証情報には、要求に関連付けられるアカウントに対応する1つまたは複数の以前に使用された使い捨てパスワードが含まれ、ログインクレデンシャルには、要求で提供される使い捨てパスワードが含まれ、ネットワークへのアクセスを提供するか否かの決定には、使い捨てパスワードが1つまたは複数の以前に使用された使い捨てパスワードに存在しないことに少なくとも部分的に基づいて、ネットワークへのアクセスを提供することを決定することが含まれる。
【0198】
例14は、例11の1つまたは複数のコンピュータ可読媒体を含み得、命令は、1つまたは複数のプロセッサによって実行されると、1つまたは複数のプロセッサに、ログインクレデンシャルに含まれる認証データを識別することと、認証データを2つ以上の領域の第1の領域に提供して記憶し、将来のログイン試行で使用することと、認証データを2つ以上の領域の第2の領域に提供して記憶し、将来のログイン試行で使用することと、を含む動作をさらに実行させる。
【0199】
例15は、例11の1つまたは複数のコンピュータ可読媒体を含み得、認証情報を取得することは、認証情報を取得するために2つ以上の領域へのバックチャネル呼び出しを行うことを含む。
【0200】
例16は、例11の1つまたは複数のコンピュータ可読媒体を含み得、2つ以上の領域は第1の領域と第2の領域とを含み、命令は、1つまたは複数のプロセッサによって実行されると、1つまたは複数のプロセッサに、第1の領域が使用できないと決定することを含む動作をさらに実行させ、認証情報の取得には、第1の領域が使用できないという決定に少なくとも部分的に基づいて、第1の領域への第1のバックチャネル呼び出しをバイパスして認証情報を取得し、第2の領域への第2のバックチャネル呼び出しを行って認証情報を取得することが含まれる。
【0201】
例17は、例11の1つまたは複数のコンピュータ可読媒体を含み得、命令は、1つまたは複数のプロセッサによって実行されると、1つまたは複数のプロセッサに、ログインに使用可能な1つまたは複数の領域を決定することと、1つまたは複数の使用可能な領域からログイン領域を選択するために1つまたは複数の使用可能な領域を示すユーザインターフェイスを提示することと、1つまたは複数の使用可能な領域からログイン領域の選択を識別することと、を含む動作をさらに実行させ、要求は、ログイン領域の選択の識別に少なくとも部分的に基づいて、ログイン領域で受信される。
【0202】
例18は、要求内で受信されたログインクレデンシャルを記憶するメモリと、メモリに結合される1つまたは複数のプロセッサとを備えたサーバ装置を含み得、1つまたは複数のプロセッサは、クラウドサービスプロバイダ(CSP)のネットワークにログインするための要求を受信し、要求内で受信されたログインクレデンシャルを識別し、ログインクレデンシャルをメモリに記憶し、クラウドサービスプロバイダの2つ以上の領域から、要求に関連する認証情報を取得し、ログインクレデンシャルと認証情報に少なくとも部分的に基づいて、ネットワークへのアクセスを提供するか否かを決定し、ネットワークへのアクセスを提供するという決定に従ってネットワークへのアクセスを提供し、または、ネットワークへのアクセスを提供しないという決定に従ってネットワークへのアクセスを拒否する。
【0203】
例19は、例18のサーバ装置を含み得、要求に関連付けられるアカウントのホーム領域およびアカウントの第1の加入領域から認証情報を取得する。
【0204】
例20は、例18のサーバ装置を含み得、認証情報には、要求に関連付けられるアカウントに対応する1つまたは複数の以前に使用された使い捨てパスワードが含まれ、ログインクレデンシャルには、要求で提供される使い捨てパスワードが含まれ、ネットワークへのアクセスを提供するか否かを決定することは、使い捨てパスワードが1つまたは複数の以前に使用された使い捨てパスワードに存在しないことに少なくとも部分的に基づいて、ネットワークへのアクセスを提供することを決定することを含む。
【0205】
例21は、コンピューティング装置が、クラウドサービスプロバイダ(CSP)のネットワークにログインするための要求を受信することと、コンピューティング装置が、要求内で受信されたログインクレデンシャル(パスコードを含む)を識別することと、コンピューティング装置が、第1の領域に位置するクラウドサービスプロバイダの第1のデータセンタに、要求に関連する第1の認証情報をクエリすることと(第1の認証情報には、第1の領域が使用可能であることに応じて、ネットワークへのログインに使用されるパスコードの第1のセットが含まれる)、コンピューティング装置が、第2の領域に位置するクラウドサービスプロバイダの第2のデータセンタに、要求に関連する第2の認証情報をクエリすることと(第2の認証情報には、ネットワークへのログインに使用されるパスコードの第2のセットまたは第2の領域が使用可能であることに応じて、パスコードの第1のセットから複製されるパスコードの第2のセットが含まれる)、コンピューティング装置が、第1のデータセンタへのクエリまたは第2のデータセンタへクエリしたことに応答して受信された1つまたは複数の応答に少なくとも部分的に基づいて、パスコードが以前に使用されたか否かを決定することと、コンピューティング装置が、パスコードが以前に使用されたか否かに少なくとも部分的に基づいてネットワークへのアクセスを提供するか否かを決定することと、ネットワークへのアクセスを提供するという決定に従ってコンピューティング装置がネットワークへのアクセスを提供することと、を含む方法を含み得る。
【0206】
例22は、例21の方法を含み得、第1の領域は、要求に関連付けられるアカウントのホーム領域を含み、第2の領域は、アカウントに関連付けられる第1の加入領域を含む。
【0207】
例23は、例22の方法を含み得、さらに、コンピューティング装置が、1つまたは複数の応答を受信することであって、1つまたは複数の応答は、第1のデータセンタからのパスコードの第1のセットおよび第2のデータセンタからのパスコードの第2のセットを含む、ことと、パスコードの第1のセットおよびパスコードの第2のセットを結合してパスコードの結合セットを生成することと、を含み、パスコードが以前に使用されたか否かの決定は、パスコードの結合セットに少なくとも部分的に基づく。
【0208】
例24は、例23の方法を含み得、パスコードの第1のセットとパスコードの第2のセットを結合することは、パスコードの第1のセットからの第1のパスコードとパスコードの第2のセットからの第2のパスコードを含むパスコードの組み合わせセットを生成することと、パスコードの組み合わせセット内の特定のパスコードの第1のコピーを識別することと(特定のパスコードの第1のコピーはパスコードの第1のセットからのものである)、パスコードの組み合わせセット内の特定のパスコードの第2のコピーを識別することと(特定のパスコードの第2のコピーはパスコードの第2のセットからのものである)、およびパスコードの組み合わせセットから特定のパスコードの第1のコピーまたは第2のコピーのいずれかを削除して、パスコードの結合セットを生成することと、を含む。
【0209】
例25は、例21の方法を含み得、パスコードの第1のセットには、要求に関連付けられるアカウントに対応する、以前に使用された1つまたは複数の使い捨てパスワードの第1のセットが含まれ、パスコードの第2のセットには、アカウントに対応する、以前に使用された1つまたは複数の使い捨てパスワードの第2のセットが含まれ、パスコードには、要求で提供される使い捨てパスワードが含まれ、パスコードが以前に使用されたか否かを決定することは、使い捨てパスワードが、以前に使用された1つまたは複数の使い捨てパスワードの第1のセットに含まれているか、以前に使用された1つまたは複数の使い捨てパスワードの第2のセットに含まれているかを決定することを含む。
【0210】
例26は、例21の方法を含み得、さらに、ログインクレデンシャルに含まれる認証データを識別し、将来のログイン試行に使用するために認証データを第1のデータセンタに記憶し、将来のログイン試行に使用するために認証データを第2のデータセンタに記憶することを含む。
【0211】
例27は、例26の方法を含み得、第2のデータセンタに認証データを記憶することは、第1のデータセンタと第2のデータセンタとの間の同期されるバックチャネル通信を介して、第1のデータセンタから第2のデータセンタに認証データを複製することを含む。
【0212】
例28は、例21の方法を含み得、要求は、第1の領域および第2の領域とは別の第3の領域に位置するクラウドサービスプロバイダの第3のデータセンタで受信され、第1のデータセンタへのクエリは、第1のデータセンタへの第1のバックチャネル呼び出しを行ってパスコードの第1のセットを取得することを含み、第2のデータセンタへのクエリは、第2のデータセンタへの第2のバックチャネル呼び出しを行ってパスコードの第2のセットを取得することを含む。
【0213】
例29は、例21の方法を含み得、さらに、第1のデータセンタが使用できないことを決定することを含み、第1のデータセンタへのクエリは、第1のデータセンタが使用できないという決定に少なくとも部分的に基づいて、第1のデータセンタへの第1のバックチャネル呼び出しをバイパスしてパスコードの第1のセットを取得することを含み、第2のデータセンタへのクエリは、第2のデータセンタへの第2のバックチャネル呼び出しを行ってパスコードの第2のセットを取得することを含む。
【0214】
例30は、例21の方法を含み得、さらに、ログインに使用可能な1つまたは複数の領域を決定することと、1つまたは複数の使用可能な領域を示すユーザインターフェイスを提示して、1つまたは複数の使用可能な領域からログイン領域を選択することと、1つまたは複数の使用可能な領域から第1の領域の選択を識別することと、を含み、要求は、第1の領域の選択の識別に少なくとも部分的に基づいて、第1の領域内のコンピューティング装置で受信される。
【0215】
例31は、命令が記憶されている1つまたは複数の非一時的なコンピュータ可読媒体を含み得、命令は、1つまたは複数のプロセッサによって実行されると、1つまたは複数のプロセッサに動作を実行させ、動作は、クラウドサービスプロバイダ(CSP)のネットワークにログインするための要求を受信することと、要求内で受信されたログインクレデンシャルを識別することと(ログインクレデンシャルにはパスコードが含まれる)、第1の領域に位置するクラウドサービスプロバイダの第1のデータセンタに、要求に関連する第1の認証情報をクエリすることと(第1の認証情報には、第1の領域が使用可能であることに応じてネットワークへのログインに使用されるパスコードの第1のセットが含まれる)、第2の領域に位置するクラウドサービスプロバイダの第2のデータセンタに、要求に関連する第2の認証情報をクエリすることと(第2の認証情報には、ネットワークへのログインに使用されるか、または第2の領域が使用可能であることに応じてパスコードの第1のセットから複製されるパスコードの第2のセットが含まれる)、第1のデータセンタのクエリまたは第2のデータセンタへクエリしたことに応答して受信された1つまたは複数の応答に少なくとも部分的に基づいて、パスコードが以前に使用されたことがあるか否かを決定することと、パスコードが以前に使用されたか否かに少なくとも部分的に基づいてネットワークへのアクセスを提供するか否かを決定することと、ネットワークへのアクセスを提供する決定に従ってネットワークへのアクセスを提供することと、を含む。
【0216】
例32は、例31の非一時的な1つまたは複数のコンピュータ可読媒体を含み得、第1の領域は、要求に関連付けられるアカウントのホーム領域を含み、第2の領域は、アカウントの第1の加入領域を含み、命令は、1つまたは複数のプロセッサによって実行されると、1つまたは複数のプロセッサに、パスコードの第1のセットとパスコードの第2のセットを結合してパスコードの結合セットを生成することを含む動作をさらに実行させる。
【0217】
例33は、例31の非一時的な1つまたは複数のコンピュータ可読媒体を含み得、パスコードの第1のセットは、要求に関連付けられるアカウントに対応する、以前に使用された1つまたは複数の使い捨てパスワードの第1のセットを含み、パスコードの第2のセットは、アカウントに対応する、以前に使用された1つまたは複数の使い捨てパスワードの第2のセットを含み、パスコードには、要求で提供される使い捨てパスワードが含まれ、パスコードが以前に使用されたか否かを決定することは、使い捨てパスワードが、以前に使用された1つまたは複数の使い捨てパスワードの第1のセットに含まれているか、または、以前に使用された1つまたは複数の使い捨てパスワードの第2のセットに含まれているかを決定することを含む。
【0218】
例34は、例31の非一時的な1つまたは複数のコンピュータ可読媒体を含み得、命令は、1つまたは複数のプロセッサによって実行されると、1つまたは複数のプロセッサに、ログインクレデンシャルに含まれる認証データを識別することと、認証データを第1のデータセンタに提供して記憶し、将来のログイン試行で使用することと、認証データを第2のデータセンタに提供して記憶し、将来のログイン試行で使用することと、を含む動作をさらに実行させる。
【0219】
例35は、例31の非一時的な1つまたは複数のコンピュータ可読媒体を含み得、第1のデータセンタへのクエリは、第1のデータセンタへの第1のバックチャネル呼び出しを行うことを含み、第2のデータセンタへのクエリは、第2のデータセンタへの第2のバックチャネル呼び出しを行うことを含む。
【0220】
例36は、例31の非一時的な1つまたは複数のコンピュータ可読媒体を含み得、命令は、1つまたは複数のプロセッサによって実行されると、1つまたは複数のプロセッサに、第1のデータセンタが使用できないことを決定することを含む動作をさらに実行させ、第1のデータセンタにクエリすることは、第1のデータセンタが使用できないという決定に少なくとも部分的に基づいて、第1のデータセンタへの第1のバックチャネル呼び出しをバイパスしてパスコードの第1のセットを取得することを含み、第2のデータセンタにクエリすることは、第2のデータセンタへの第2のバックチャネル呼び出しを行ってパスコードの第2のセットを取得することを含む。
【0221】
例37は、例31の非一時的な1つまたは複数のコンピュータ可読媒体を含み得、命令は、1つまたは複数のプロセッサによって実行されると、1つまたは複数のプロセッサに、ログインに使用可能な1つまたは複数の領域を決定することと、1つまたは複数の使用可能な領域からログイン領域を選択するために1つまたは複数の使用可能な領域を示すユーザインターフェイスを提示することと、1つまたは複数の使用可能な領域から第1の領域の選択を識別することと、を含む動作をさらに実行させ、要求は、第1の領域の選択の識別に少なくとも部分的に基づいて第1の領域で受信される。
【0222】
例38は、要求内で受信されたログインクレデンシャルを記憶するメモリと、メモリに結合される1つまたは複数のプロセッサとを含むサーバ装置を含み得、1つまたは複数のプロセッサは、クラウドサービスプロバイダ(CSP)のネットワークにログインするための要求を受信し、要求内で受信されたログインクレデンシャル(パスコードを含む)を識別し、ログインクレデンシャルをメモリに記憶し、第1の領域に位置するクラウドサービスプロバイダの第1のデータセンタに、要求に関連する第1の認証情報をクエリし、第1の認証情報には、第1の領域が使用可能であることに応じてネットワークへのログインに使用されるパスコードの第1のセットが含まれ、第2の領域に位置するクラウドサービスプロバイダの第2のデータセンタに、要求に関連する第2の認証情報をクエリし、第2の認証情報には、ネットワークへのログインに使用されるか、または第2の領域が使用可能であることに応じてパスコードの第1のセットから複製されるパスコードの第2のセットが含まれ、第1のデータセンタへのクエリまたは第2のデータセンタへクエリしたことに応答して受信された1つまたは複数の応答に少なくとも部分的に基づいて、パスコードが以前に使用されたか否かを決定し、パスコードが以前に使用されたか否かに少なくとも部分的に基づいてネットワークへのアクセスを提供するか否かを決定し、ネットワークへのアクセスを提供するという決定に従ってネットワークへのアクセスを提供する。
【0223】
例39は、例38のサーバ装置を含み得、第1の領域は、要求に関連付けられるアカウントのホーム領域を含み、第2の領域は、アカウントの第1の加入領域を含む。
【0224】
例40は、例38のサーバ装置を含み得、パスコードの第1のセットには、要求に関連付けられるアカウントに対応する、以前に使用された1つまたは複数の使い捨てパスワードの第1のセットが含まれ、パスコードの第2のセットには、アカウントに対応する、以前に使用された1つまたは複数の使い捨てパスワードの第2のセットが含まれ、パスコードには、要求で提供される使い捨てパスワードが含まれ、パスコードが以前に使用されたか否かを決定することは、使い捨てパスワードが、以前に使用された1つまたは複数の使い捨てパスワードの第1のセットに含まれているか、以前に使用された1つまたは複数の使い捨てパスワードの第2のセットに含まれているかを決定することを含む。
【0225】
前述の明細書では、本開示の態様は、その特定の実施形態を参照して説明されているが、当業者であれば、本開示は、それらに限定されないことを理解するであろう。上述の開示のさまざまな特徴および態様は、個別にまたは結合して使用することができる。さらに、さまざまな修正および同等物には、実施形態で開示される特徴の関連する適切な組み合わせが含まれる。実施形態は、本明細書のより広い趣旨および範囲から逸脱することなく、本明細書で説明されているもの以外の任意の数の環境および用途で使用することができる。したがって、明細書および図面は、制限的なものではなく、例示的なものとしてみなされる必要がある。
【国際調査報告】