(58)【調査した分野】(Int.Cl.,DB名)
多要素認証を実施するためのコンピュータ実施方法であって、前記方法の少なくとも一部分が少なくとも1つのプロセッサを備えるコンピューティングデバイスによって実施され、前記方法が、
2次認証システムの一部として、クライアントシステムから、前記2次認証システムを介して前記クライアントシステムを認証するように構成されるアクセスマネージャにより開始された認証要求を受信する工程と、
前記認証要求の受信を受けて1次認証システムで第1認証を最初に実施するように前記クライアントシステムをリダイレクトする工程と、
前記第1認証が成功したことを証明する前記クライアントシステムからの前記第1認証のアサーションを受信する工程と、
前記第1認証の前記アサーションの受信を受けて前記クライアントシステムで第2認証を実施する工程と、を含む、コンピュータ実施方法。
前記1次認証システムが、前記クライアントシステムから認証クレデンシャルを受信し、前記第1認証の前記アサーションと同時に前記クライアントシステムを前記2次認証システムにリダイレクトする、請求項1に記載のコンピュータ実施方法。
前記認証モジュールが、前記第2認証の実施後に、前記第2認証のアサーションと同時に前記クライアントシステムを前記アクセスマネージャにリダイレクトするように更にプログラムされる、請求項9に記載のシステム。
【発明を実施するための形態】
【0016】
図1〜2を参照することにより、以下に多要素認証を実施するための例示的なシステムの詳細な説明が提供される。対応するコンピュータ実装方法の詳細な説明はまた、
図3と併せて提供される。加えて、本明細書に記載の実施形態のうちの1つ以上を実装することが可能な、例示的なコンピューティングシステム及びネットワークアーキテクチャの詳細な説明は、それぞれ、
図6及び7と併せて提供される。
【0017】
図1は、多要素認証を実施するための例示的なシステム100のブロック図である。この図に例示されるように、例示的なシステム100は、1つ以上のタスクを実施するための1つ以上のモジュール102を含み得る。例えば、以下により詳細に説明されるように、例示的なシステム100は、2次認証システムの一部として、クライアントシステムから認証要求を受信するようにプログラムされた受信モジュール104を含み得る。例示的なシステム100はまた、認証要求の受信を受けて1次認証システムと第1認証を最初に実施するようにクライアントシステムをリダイレクトするようにプログラムされたリダイレクションモジュール106も含み得る。
【0018】
更に、以下により詳細に記載されるように、例示的なシステム100は、第1認証が成功したことを証明するクライアントシステムからの第1認証のアサーションを受信するようにプログラムされたアサーションモジュール108を含み得る。例示的なシステム100は、第1認証のアサーションの受信を受けてクライアントシステムで第2認証を実施するようにプログラムされた認証モジュール110も含み得る。別個の要素として例示されるが、
図1のモジュール102のうちの1つ以上は、単一のモジュール又はアプリケーションの部分を表し得る。
【0019】
ある実施形態において、
図1のモジュール102のうちの1つ以上は、コンピューティングデバイスにより実行されるとき、コンピューティングデバイスに1つ以上のタスクを実施させ得る、1つ以上のソフトウェアアプリケーション又はプログラムを表し得る。例えば、以下により詳細に記載されるように、モジュール102のうちの1つ以上は、
図2に例示されるデバイス(例えば、コンピューティングデバイス202、クライアントシステム206、及び/若しくは認証サーバ208)、
図6にあるコンピューティングシステム610、並びに/又は
図7にある例示的なネットワークアーキテクチャ700の部分のような1つ以上のコンピューティングデバイス上で実行されるように記憶及び構成されるソフトウェアモジュールを表し得る。
図1のモジュール102のうちの1つ以上はまた、1つ以上のタスクを実施するように構成される、1つ以上の特殊目的のコンピュータの全て又は部分を表し得る。
【0020】
図1の例示的なシステム100は、多様な方法で実装されてもよい。例えば、例示的なシステム100の全て又は一部分は、
図2の例示的なシステム200の部分を表し得る。
図2に示されるように、システム200は、(例えば、コンピューティングデバイス202により提供される認証要素及び認証サーバ208により提供される認証要素を使用してクライアントシステム206のユーザのアイデンティティを認証するために)ネットワーク204を介してクライアントシステム206及び認証サーバ208と通信しているコンピューティングデバイス202を含み得る。
【0021】
一実施形態では、
図1のモジュール102のうちの1つ以上は、コンピューティングデバイス202の少なくとも1つのプロセッサによって実行されるとき、多要素認証の実施においてコンピューティングデバイス202を支援することができる。例えば、以下により詳細に記載されるように、モジュール102のうちの1つ以上は、コンピューティングデバイス202に、1)(例えば、コンピューティングデバイス202上の)2次認証システムの一部として、クライアントシステム206から認証要求210を受信させ、2)要求210の受信を受けて(例えば、認証サーバ208上の)1次認証システムと第1認証を最初に実施するようにクライアントシステム206をリダイレクトさせ、3)第1認証が成功したことを証明するクライアントシステム206からの(例えば、認証サーバ208との)第1認証のアサーション210を受信させ、4)第1認証のアサーション210の受信を受けてクライアントシステム206と第2認証を実施させ得る。
【0022】
コンピューティングデバイス202は、概して、コンピュータで実行可能な命令を読み取ることが可能な任意のタイプ又は形態のコンピューティングデバイスを表す。コンピューティングデバイス202の例としては、ラップトップ、タブレット、デスクトップ、サーバ、携帯電話、個人用デジタル補助装置(PDA)、マルチメディアプレーヤ、組み込みシステム、これらの1つ以上の組み合わせ、
図6の例示的なコンピューティングシステム610、又は任意の他の好適なコンピューティングデバイスが挙げられるが、これらに限定されない。いくつかの例では、コンピューティングデバイス202は、認証サーバ、及び/又は認証サービスの一部として動作するコンピューティングデバイスを表し得る。
【0023】
クライアントシステム206は、概して、コンピュータで実行可能な命令を読み取ることが可能な任意のタイプ又は形態のコンピューティングデバイスを表す。コンピューティングデバイス202の例としては、ラップトップ、タブレット、デスクトップ、サーバ、携帯電話、個人用デジタル補助装置(PDA)、マルチメディアプレーヤ、組み込みシステム、これらの1つ以上の組み合わせ、
図6の例示的なコンピューティングシステム610、又は任意の他の好適なコンピューティングデバイスが挙げられるが、これらに限定されない。
【0024】
認証サーバ208は、概して、1つ以上の認証動作を実施することが可能な任意のタイプ又は形態のコンピューティングデバイスを表す。認証サーバ208の例としては、多様なデータベースサービスを提供する及び/又は特定のソフトウェアアプリケーションを作動させるように構成されるアプリケーションサーバ及びデータベースサーバが挙げられるが、これらに限定されない。
【0025】
ネットワーク204は、概して、通信又はデータ転送を容易にすることが可能な任意の媒体又はアーキテクチャを表す。ネットワーク204の例としては、イントラネット、広域ネットワーク(WAN)、ローカルエリアネットワーク(LAN)、パーソナルエリアネットワーク(PAN)、インターネット、電力線通信(PLC)、セルラーネットワーク(例えば、GSMネットワーク(「GSM」は登録商標))、
図7の例示的なネットワークアーキテクチャ700などが挙げられるが、これらに限定されない。ネットワーク204は、無線又は有線接続を使用して通信又はデータ転送を容易にし得る。一実施形態において、ネットワーク204は、コンピューティングデバイス202、クライアントシステム206、及び認証サーバ208との間の通信を容易にし得る。
【0026】
図3は、多要素認証を実施するための例示的なコンピュータ実施方法300のフローチャートである。
図3に示される工程は、任意の好適なコンピュータで実行可能なコード及び/又はコンピューティングシステムにより実施されてもよい。一部の実施形態において、
図3に示される工程は、
図1のシステム100の構成要素のうちの1つ以上、
図2のシステム200、
図6のコンピューティングシステム610、及び/又は
図7の例示的なネットワークアーキテクチャ700の一部により実施されてもよい。
【0027】
図3に示されるように、工程302において、本明細書に記載の1つ以上のシステムは、2次認証システムの一部として、クライアントシステムから認証要求を受信し得る。例えば、工程302において、受信モジュール104は、
図2のコンピューティングデバイス202の一部として、(例えば、コンピューティングデバイス202上の)2次認証システムの一部として、クライアントシステム206から認証要求210を受信し得る。
【0028】
本明細書で使用するとき、語句「認証システム」は、ユーザ及び/又はクライアントのアイデンティティを実証及び/又は確認する任意の方法を指すことができる。認証システムは、任意の様々なクレデンシャルを使用し得る。認証システムに使用され得るクレデンシャルの例としては、知識によるクレデンシャル(例えば、ユーザが知っている何か)、トークンによるクレデンシャル(例えば、ユーザが所有する何か)、生体によるクレデンシャル(例えば、ユーザ自身の何か)、及び/又はこれらの任意の組み合わせが挙げられるが、これらに限定されない。例えば、知識によるクレデンシャルには、パスワード、暗証番号(PIN)、及び/又はパスフレーズが挙げられ、トークンによるクレデンシャルには、モバイル及び/又はデスクトップコンピューティングデバイス(例えば、スマートフォン)により生成又は受信されるワンタイムパスワード及び/又はセキュリティコードが挙げられ、生体によるクレデンシャルには、指紋、声紋、及び/又は虹彩スキャンが挙げられ得る。
【0029】
したがって、本明細書で使用するとき、語句「2次認証システム」は、ユーザ及び/又はクライアントを認証するために1つ以上の追加の認証システムと組み合わせて使用され得る認証システムを指すことができる。いくつかの例では、語句「2次認証システム」は、リモート及び/又はオフサイト認証システムを指すことができる。いくつかの例では、語句「2次認証システム」は、多要素認証システムを作成するために、これまで単一要素認証システムで構成されていた企業に導入される認証システムを指すことができる。
【0030】
本明細書で使用するとき、語句「認証要求」は、認証システムに対して認証を求める任意の要求を指すことができる。例えば、認証要求には、セキュリティ表明マーク付け言語(「SAML」)要求が挙げられ得る。本明細書で使用するとき、語句「クライアントシステム」は、認証を要求できる任意のコンピューティングデバイス、クライアントソフトウェア、及び/又はユーザエージェントを指すことができる。
【0031】
いくつかの例では、認証要求を受信する工程は、2次認証システムを介してクライアントシステムを認証するように構成されるアクセスマネージャにより開始された認証要求を受信する工程を含み得る。本明細書で使用するとき、語句「アクセスマネージャ」は、(例えば、企業内の)リソースにアクセスするための要求及び/又は試行を裁定する任意のシステムを指すことができる。いくつかの例では、アクセスマネージャは、クライアントシステムとのアクティブ認証セッションを検索できないことに基づいて認証要求を開始し得る。例えば、アクセスマネージャは、クライアントシステムからの保護リソースの要求を阻止した時点で認証要求を開始していてもよい。本明細書で使用するとき、用語「リソース」は、任意のファイル、データ、ドキュメント、及び/又はサービスを指すことができる。したがって、語句「保護リソース」は、ユーザアイデンティティに基づいて(例えば、アクセスマネージャにより)アクセスが制御される任意のリソースを指すことができる。
【0032】
いくつかの例では、1次認証システム及びアクセスマネージャは、共に単一企業ネットワーク内にインストールされて動作してもよい。例えば、1次認証システム及びアクセスマネージャは、単一LANネットワーク上で、及び/又は単一企業内の多数の組織サイトに接続する企業プライベートネットワーク上で動作し得る。これらの例では、2次認証システムは、単一企業ネットワーク外で動作するように構成されたサーバを含んでもよい。例えば、企業プライベートネットワーク及び2次認証システムのサーバは、別個のエンティティにより所有、制御、管理、保守、及び/又は運営され得る。加えて、又は代替的に、企業プライベートネットワーク及び2次認証システムのサーバは、異なるドメイン内で動作してもよい。いくつかの例では、2次認証システムは、単一企業ネットワーク外で動作するように構成されたサービスを含んでもよい。したがって、単一企業ネットワークの管理者は、2次認証システムを保守することなく、単一企業ネットワークを2次認証システムに加入させることができる。
【0033】
図4は、多要素認証を実施するための例示的なシステム400を示す。
図4に示されるように、例示的なシステム400は、ゲートウェイ420を介してネットワーク430に接続される企業402と、同様にネットワーク430に接続される認証サーバ440とを含み得る。企業402は、クライアントシステム412、企業アクセスマネージャ414、企業認証サーバ415、及びサーバ416に接続する、企業ネットワーク410を含み得る。例として
図4を使用すると、工程302において、受信モジュール104は、認証サーバ440の一部として、クライアントシステム412から認証要求を受信し得る。いくつかの例では、認証要求は、企業アクセスマネージャ414により開始されていてもよい。例えば、クライアントシステム412は、サーバ416上の保護リソース418にアクセスするために試行及び/又は要求を行っていてもよい。したがって、企業アクセスマネージャ414は、企業アクセスマネージャ414に(例えば、クライアントシステム412を介した)認証サーバ440への認証要求を開始させる、リソース418にアクセスするための試行を阻止し、及び/又は要求を確認していてもよい。
【0034】
図5は、例示的な多要素認証500を示す。
図5に示されるように、例示的な多要素認証500は、ユーザエージェント502、企業アクセスマネージャ504、クラウド認証サーバ506、及び企業認証サーバ508を含み得る。例として
図5を使用すると、工程510において、企業アクセスマネージャ504は、ユーザエージェント502による保護リソースにアクセスするための試行を阻止し得る。工程512において、企業アクセスマネージャ504は、認証要求(例えば、SAML要求)と同時にユーザエージェント502をクラウド認証サービス506にリダイレクトし得る。したがって、クラウド認証サービス506は、認証要求を受信し得る。
【0035】
図3に戻ると、工程304において、本明細書に記載の1つ以上のシステムは、認証要求の受信を受けて1次認証システムと第1認証を最初に実施するようにクライアントシステムをリダイレクトし得る。例えば、工程304において、リダイレクションモジュール106は、
図2のコンピューティングデバイス202の一部として、要求210の受信を受けて(例えば、認証サーバ208上の)1次認証システムと第1認証を最初に実施するようにクライアントシステム206をリダイレクトし得る。
【0036】
リダイレクションモジュール106は、任意の好適な方法で1次認証システムと第1認証を実施するようにクライアントシステムをリダイレクトし得る。例えば、リダイレクションモジュール106は、新たな認証要求(例えば、新たなSAML要求)と同時にクライアントシステムを1次認証システムにリダイレクトし得る。
【0037】
いくつかの例では、1次認証システムは、次いで、クライアントシステムで第1認証を実施し得る。例えば、1次認証システムは、クライアントシステムから認証クレデンシャルを受信し、第1認証のアサーションと同時にクライアントシステムを2次認証にリダイレクトし得る。本明細書で使用するとき、用語「アサーション」は、認証を表明できる任意のメッセージを指すことができる。いくつかの例では、アサーションは、認証の時間、認証の発行者、認証の対象者、及び/又は認証の条件を含み得る。前述したように、認証システムは、任意の様々なクレデンシャルを使用することができる。例えば、第1認証の認証クレデンシャルは、ユーザ名及びパスワードの組み合わせを含み得る。
【0038】
例として
図4を使用すると、工程304において、リダイレクションモジュール106は、認証サーバ440の一部として、企業認証サーバ415と認証を最初に実施するようにクライアントシステム412をリダイレクトし得る。いくつかの例では、次いで、企業認証サーバ415は、クライアントシステム412で認証を実施し得る。
【0039】
例として
図5を使用すると、工程514において、クラウド認証サーバ506は、企業認証サーバ508に向けた新たな認証要求と同時にユーザエージェント502をリダイレクトし得る。工程516において、企業認証サーバ508は、ユーザエージェント502で第1認証を実施し得る。
【0040】
図3に戻ると、工程306において、本明細書に記載の1つ以上のシステムは、第1認証が成功したことを証明するクライアントシステムからの第1認証のアサーションを受信し得る。例えば、工程306において、アサーションモジュール108は、
図2のコンピューティングデバイス202の一部として、第1認証が成功したことを証明するクライアントシステム206からの(例えば、認証サーバ208との)第1認証のアサーション210を受信し得る。
【0041】
いくつかの例では、アサーションモジュール108はまた、アサーションが有効であると確認し得る。例えば、アサーションは、SAMLアサーションを含むことができ、アサーションモジュール108は、Holder−of−Key方法及び/又はSender−Vouches方式を使用してアサーションを確認することができる。
【0042】
例として
図4を使用すると、工程306において、アサーションモジュール108は、認証サーバ440の一部として、クライアントシステム412と企業認証サーバ415との間で実施された第1認証のアサーションを受信及び確認し得る。
【0043】
例として
図5を使用すると、工程518において、企業認証サーバ508は、工程516で実施された第1認証のアサーションと同時にユーザエージェント502をリダイレクトし得る。企業認証サーバ508は、それによってユーザエージェント502からアサーションを受信し得る。
【0044】
図3に戻ると、工程308において、本明細書に記載の1つ以上のシステムは、第1認証のアサーションの受信を受けてクライアントシステムと第2認証を実施し得る。例えば、工程308において、認証モジュール110は、
図2のコンピューティングデバイス202の一部として、第1認証のアサーション210の受信を受けてクライアントシステム206で第2認証を実施し得る。
【0045】
認証モジュール110は、任意の好適な方法で第2認証を実施し得る。いくつかの例では、認証モジュール110は、第1認証のアサーションからユーザ識別情報を取得し、クライアントシステムからユーザ識別情報を要求する代わりにユーザ識別情報を使用して第2認証を実施し得る。例えば、認証モジュール110は、アサーションからユーザ名及びそのユーザ名に適用されるドメイン、電子メールアドレスなどを取得し得る。このように、認証モジュール110は、潜在的にコンピューティングリソースを保存し、認証プロセスを加速し得る。
【0046】
前述したように、いくつかの例では、アクセスマネージャは、(例えば、クライアントシステムからの保護リソースの要求を阻止した後)2次認証システムに向けた認証要求を開始していてもよい。これらの例では、認証モジュール110はまた、第2認証の実施後に、第2認証のアサーションと同時にクライアントシステムをアクセスマネージャにリダイレクトし得る。これらの例では、アクセスマネージャは、第2認証のアサーションの受信及び確認後に、クライアントシステムに保護リソースへのアクセスを許可するように構成され得る。
【0047】
例として
図4を使用すると、工程308において、認証モジュール110は、認証サーバ440の一部として、クライアントシステム412からの(例えば、企業認証サーバ415で実施した)第1認証のアサーションの受信及び確認を受けてクライアントシステム412と第2認証を実施し得る。認証モジュール110はまた、第2認証のアサーションと同時にクライアントシステム412を企業アクセスマネージャ414にリダイレクトし得る。企業アクセスマネージャ414は、第2認証を確認した時点でリソース418へのアクセスを許可するように構成されてもよい。したがって、企業アクセスマネージャ414は、クライアントシステム412をリソース418にアクセスさせ得る。企業アクセスマネージャ414がクライアントシステム412から第2認証のみを求め得るが、認証サーバ440はクライアントシステム412から第1認証を求めるため、本明細書に記載のシステム及び方法は、企業402への妨害を最小限に抑えて多要素認証を容易にすることができる。
【0048】
例として
図5を使用すると、工程520において、クラウド認証サーバ506は、ユーザエージェント502で第2認証を実施し得る。工程522において、クラウド認証サービス506は、第2認証からの属性を第2認証のアサーション(例えば、SAMLアサーション)の属性にマップし得る。例えば、クラウド認証サーバ506は、第2認証に使用されたユーザ識別子を第2認証のアサーション内のユーザ識別子フィールドにマップし得る。工程524において、クラウド認証サービス506は、第2認証のアサーションと同時にユーザエージェント502をアクセスマネージャ504にリダイレクトし得る。企業アクセスマネージャ504は、次いで、工程526において、アサーションを確認し、保護リソースをユーザエージェント502に提供し得る。
【0049】
上述したように、1つのドメインで認証サービスを起動し、別のドメインで別の認証サービスの使用を試みることにより、本明細書に記載のシステム及び方法は、既に単一要素認証を実施している企業内で、元の単一要素認証システムの制御及び/又はそれに関する機密データを企業から移すことなく、多要素認証の実施を可能にすることができる。更に、これらのシステム及び方法は、費用がかかり複雑な基盤の変更及び保守を必要とせずに、2次認証要素の追加を可能にすることができる。例えば、これらのシステム及び方法は、第2要素認証システムからの認証要求を承認及び信頼するように第1要素認証システムを企業内で再構成するだけで、2次認証要素の追加を可能にすることができる。更に、これらのシステム及び方法は、機密企業認証データへのアクセスをシステム外へ開放することで潜在的にセキュリティホールを生じることなく、企業の単一要素認証システムに2次認証要素の追加を可能にすることができる。
【0050】
図6は、本明細書に記載される及び/又は例示される実施形態のうちの1つ以上を実装することが可能な例示的なコンピューティングシステム610のブロック図である。例えば、コンピューティングシステム610の全て又は一部分は、単独で、又は他の要素と組み合わせて、本明細書に記載される受信、開始、阻止、リダイレクト、実施、取得、及び許可の工程のうちの1つ以上を実施し得る、及び/又は実施するための手段であり得る。コンピューティングシステム610の全て又は一部分はまた、本明細書に記載される及び/又は例示される任意の他の工程、方法、又は過程を実施し得る、及び/又は実施するための手段であってもよい。
【0051】
コンピューティングシステム610は、広範に、コンピュータ可読命令を実行することが可能な任意の単一又は複数プロセッサのコンピューティングデバイス又はシステムを表し得る。コンピューティングシステム610の実施例は、これに限定されないが、ワークステーション、ラップトップ、クライアント側端末、サーバ、分散型コンピューティングシステム、携帯デバイス、又は任意の他のコンピューティングシステム若しくはデバイスを含む。その最も基本的な構成において、コンピューティングシステム610は、少なくとも1つのプロセッサ614及びシステムメモリ616を含み得る。
【0052】
プロセッサ614は、概して、データを処理する又は命令を解釈及び実行することが可能な処理ユニットの任意のタイプ又は形態を表し得る。ある実施形態において、プロセッサ614は、ソフトウェアアプリケーション又はモジュールから命令を受信することができる。これらの命令は、プロセッサ614に、本明細書に記載及び/又は例示される例示的な実施形態のうちの1つ以上の機能を実施させ得る。
【0053】
システムメモリ616は、概して、データ及び/又は他のコンピュータ可読命令を記憶することが可能な揮発性又は非揮発性記憶デバイス又は媒体の任意のタイプ又は形態を表し得る。コンピューティングシステム616の実施例は、これに限定されないが、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、フラッシュメモリ、又は任意の他の好適なメモリデバイスを含む。必ずしも必要ではないが、ある実施形態において、コンピューティングシステム610は、揮発性メモリユニット(例えば、システムメモリ616など)及び非揮発性記憶デバイス(例えば、以下に詳細に説明される主要記憶デバイス632など)を含み得る。一実施例において、
図1のモジュール102のうちの1つ以上は、システムメモリ616にロードされ得る。
【0054】
ある実施形態において、例示的なコンピューティングシステム610はまた、プロセッサ614及びシステムメモリ616に加えて、1つ以上の構成要素又は要素を含んでもよい。例えば、
図6に例示されるように、コンピューティングシステム610は、通信基盤612を介して各々が相互接続され得る、メモリコントローラ618、入力/出力(I/O)コントローラ620、及び通信インタフェース622を含んでもよい。通信基盤612は、概して、コンピューティングデバイスの1つ以上の構成要素の間の通信を容易にすることが可能な基盤の任意のタイプ又は形態を表し得る。通信基盤612の実施例は、通信バス(ISA、PCI、PCIe、又は類似のバスなど)及びネットワークを含むが、これらに限定されない。
【0055】
メモリコントローラ618は、概して、コンピューティングシステム610の1つ以上の構成要素の間でメモリ若しくはデータの処理、又は通信の制御を行うことが可能なデバイスの任意のタイプ又は形態を表し得る。例えば、ある実施形態において、メモリコントローラ618は、通信基盤612を介して、プロセッサ614、システムメモリ616、及びI/Oコントローラ620の間の通信を制御することができる。
【0056】
I/Oコントローラ620は、概して、コンピューティングデバイスの入力及び出力機能を調整及び/又は制御することが可能なモジュールの任意のタイプ又は形態を表し得る。例えば、ある実施形態において、I/Oコントローラ620は、プロセッサ614、システムメモリ616、通信インタフェース622、ディスプレイアダプタ626、入力インタフェース630、及び記憶インタフェース634など、コンピューティングシステム610の1つ以上の要素の間のデータの転送を制御するか、又は容易にすることができる。
【0057】
通信インタフェース622は、広範に、例示的なコンピューティングシステム610と1つ以上の追加のデバイスとの間の通信を容易にすることが可能な通信デバイス又はアダプタの任意のタイプ又は形態を表し得る。例えば、ある実施形態において、通信インタフェース622は、コンピューティングシステム610と追加のコンピューティングシステムを含む私的又は公的なネットワークとの間の通信を容易にすることができる。通信インタフェース622の実施例は、これに限定されないが、有線ネットワークインタフェース(ネットワークインタフェースカードなど)、無線ネットワークインタフェース(無線ネットワークインタフェースカードなど)、モデム、及び任意の他の好適なインタフェースを含む。少なくとも1つの実施形態において、通信インタフェース622は、インターネットなど、ネットワークへの直接的な接続を介して、リモートサーバへ直接的な接続を提供し得る。通信インタフェース622はまた、例えば、ローカルエリアネットワーク(イーサネットネットワーク(「イーサネット」は登録商標、以下同じ)など)、パーソナルエリアネットワーク、電話若しくはケーブルネットワーク、携帯電話接続、衛星データ接続、又は任意の他の好適な接続を通じて、かかる接続を間接的に提供してもよい。
【0058】
ある実施形態において、通信インタフェース622はまた、外部バス又は通信チャネルを介してコンピューティングシステム610と1つ以上の追加のネットワーク又は記憶デバイスとの間の通信を容易にするように構成されるホストアダプタを表し得る。ホストアダプタの例としては、SCSIホストアダプタ、USBホストアダプタ、IEEE 1394ホストアダプタ、SATA及びeSATAホストアダプタ、ATA及びPATAホストアダプタ、ファイバチャネルインタフェースアダプタ、イーサネットアダプタなどが挙げられるが、これらに限定されない。通信インタフェース622はまた、コンピューティングシステム610が、分散型又はリモートコンピューティングに関与するのを可能にし得る。例えば、通信インタフェース622は、実行のためにリモートデバイスから命令を受信するか、又はリモートデバイスへ命令を送信することができる。
【0059】
図6に例示されるように、コンピューティングシステム610はまた、ディスプレイアダプタ626を介して通信基盤612に連結される少なくとも1つのディスプレイデバイス624を含んでもよい。ディスプレイデバイス624は、概して、ディスプレイアダプタ626によって転送された情報を視覚的に表示することが可能なデバイスの任意のタイプ又は形態を表し得る。同様に、ディスプレイアダプタ626は、概して、ディスプレイデバイス624上での表示のために、通信基盤612から(又は当該分野で周知のフレームバッファから)のグラフィック、テキスト、及び他のデータを転送するように構成されるデバイスの任意のタイプ又は形態を表し得る。
【0060】
図6に例示されるように、例示的なコンピューティングシステム610はまた、入力インタフェース630を介して通信基盤612に連結される少なくとも1つの入力デバイス628を含んでもよい。入力デバイス628は、概して、例示的なコンピューティングシステム610に、コンピュータ又は人間のいずれかが生成した入力を提供することが可能な入力デバイスの任意のタイプ又は形態を表し得る。入力デバイス628の実施例は、キーボード、指先指示デバイス、音声認識デバイス、又は任意の他の入力デバイスを含むが、これらに限定されない。
【0061】
図6に例示されるように、例示的なコンピューティングシステム610はまた、記憶インタフェース634を介して通信基盤612に連結される一次記憶デバイス632及びバックアップ記憶デバイス633を含んでもよい。記憶デバイス632及び633は、概して、データ及び/又は他のコンピュータ可読命令を記憶することが可能な記憶デバイス又は媒体の任意のタイプ又は形態を表し得る。例えば、記憶デバイス632及び633は、磁気ディスクドライブ(例えば、いわゆるハードドライブ)、ソリッドステートドライブ、フロッピーディスクドライブ(「フロッピー」は登録商標、以下同じ)、磁気テープドライブ、光ディスクドライブ、フラッシュドライブなどであり得る。記憶インタフェース634は、概して、記憶デバイス632及び633とコンピューティングシステム610の他の構成要素との間でデータを転送するためのインタフェース又はデバイスの任意のタイプ又は形態を表してもよい。
【0062】
ある実施形態において、記憶デバイス632及び633は、コンピュータソフトウェア、データ、又は他のコンピュータ可読情報を記憶するように構成される取り外し可能な記憶ユニットから読み出す及び/又は取り外し可能な記憶ユニットに書き込むように構成されてもよい。好適な取り外し可能な記憶ユニットの例としては、フロッピーディスク、磁気テープ、光ディスク、フラッシュメモリデバイスなどが挙げられるが、これらに限定されない。記憶デバイス632及び633はまた、コンピュータソフトウェア、データ、又は他のコンピュータ可読命令がコンピューティングシステム610にロードされることを可能にするための他の類似の構造又はデバイスを含んでもよい。例えば、記憶デバイス632及び633は、ソフトウェア、データ、又は他のコンピュータ可読情報を読み出し、書き込むように構成され得る。記憶デバイス632及び633はまた、コンピューティングシステム610の一部であってもよく、又は他のインタフェースシステムを通じてアクセスされる別個のデバイスであってもよい。
【0063】
多くの他のデバイス又はサブシステムが、コンピューティングシステム610に接続され得る。反対に、本明細書に記載及び/又は例示される実施形態を実践するために、
図6に例示される全ての構成要素及びデバイスが存在する必要はない。上に参照されるデバイス及びサブシステムはまた、
図6に示されるものとは異なる方法で相互接続されてもよい。コンピューティングシステム610はまた、任意の数のソフトウェア、ファームウェア、及び/又はハードウェア構成を用いてもよい。例えば、本明細書に開示される例示的な実施形態のうちの1つ以上は、コンピュータ可読記憶媒体にコンピュータプログラム(コンピュータソフトウェア、ソフトウェアアプリケーション、コンピュータ可読命令、又はコンピュータ制御論理とも称される)としてコード化されてもよい。語句「コンピュータ可読記憶媒体」は一般的に、コンピュータ可読命令を記憶又は実施することができるあらゆる形態のデバイス、キャリア、又は媒体を指す。コンピュータ可読記憶媒体の例としては、これらに限定されないが、搬送波などの伝送型媒体、並びに磁気記憶媒体(例えば、ハードディスクドライブ及びフロッピーディスク)、光記憶媒体(例えば、CD−又はDVD−ROM)、電子記憶媒体(例えば、ソリッドステートドライブ及びフラッシュメディア)、及び他の分散システムなどの非一時的型媒体が挙げられる。
【0064】
コンピュータプログラムを含むコンピュータ可読記憶媒体は、コンピューティングシステム610にロードされ得る。コンピュータ可読記憶媒体上に記憶される全て又は一部分のコンピュータプログラムは、次いで、システムメモリ616並びに/又は記憶デバイス632及び633の多様な部分に記憶され得る。プロセッサ614により実行されると、コンピューティングシステム610にロードされたコンピュータプログラムは、プロセッサ614に、本明細書に記載及び/又は例示される例示的な実施形態のうちの1つ以上の機能を実施させ得る、及び/又は実施するための手段であり得る。加えて、又は代替的に、本明細書に記載及び/又は図示される例示的な実施形態のうちの1つ以上は、ファームウェア及び/又はハードウェアに実装されてもよい。例えば、コンピューティングシステム610は、本明細書に開示される例示的な実施−形態のうちの1つ以上を実装するように適合される、特定用途向け集積回路(ASIC)として構成されてもよい。
【0065】
図7は、クライアントシステム710、720、及び730、並びにサーバ740及び745が、ネットワーク750に連結され得る、例示的なネットワークアーキテクチャ700のブロック図である。上に詳述されたように、ネットワークアーキテクチャ700の全て又は一部分は、単独で、又は他の要素と組み合わせて、本明細書に開示される受信、開始、阻止、リダイレクト、実施、取得、及び許可の工程のうちの1つ以上を実施し得る、及び/又は実施するための手段であり得る。ネットワークアーキテクチャ700の全て又は一部分はまた、本開示に記載される他の工程及び特性を実施するために使用され得る、及び/又は実施する手段であり得る。
【0066】
クライアントシステム710、720、及び730は、概して、
図6の例示的なコンピューティングシステム610など、コンピューティングデバイス又はシステムの任意のタイプ又は形態を表し得る。同様に、サーバ740及び745は、概して、アプリケーションサーバ又はデータベースサーバなど、多様なデータベースサービスを提供する、及び/又はあるソフトウェアアプリケーションを起動するように構成される、コンピューティングデバイス又はシステムを表す。ネットワーク750は、概して、例えば、イントラネット、広域ネットワーク(WAN)、ローカルエリアネットワーク(LAN)、パーソナルエリアネットワーク(PAN)、又はインターネットを含む、任意の電気通信又はコンピュータネットワークを表す。一実施例において、クライアントシステム710、720、及び/若しくは730、並びに/又はサーバ740及び/若しくは745は、
図1からのシステム100の全て又は一部分を含み得る。
【0067】
図7に例示されるように、1つ以上の記憶デバイス760(1)−(N)は、直接的にサーバ740に接続され得る。同様に、1つ以上の記憶デバイス770(1)−(N)は、直接的にサーバ745に接続され得る。記憶デバイス760(1)−(N)及び記憶デバイス770(1)−(N)は、概して、データ及び/又は他のコンピュータ可読命令を記憶することが可能な記憶デバイス又は媒体の任意のタイプ又は形態を表す。ある実施形態において、記憶デバイス760(1)−(N)及び記憶デバイス770(1)−(N)は、NFS、SMB、又はCIFSなど、多様なプロトコルを使用してサーバ740及び745と通信するように構成されるネットワーク接続記憶(NAS)デバイスを表し得る。
【0068】
サーバ740及び745はまた、記憶エリアネットワーク(SAN)ファブリック780に接続され得る。SANファブリック780は、概して、複数の記憶デバイスの間の通信を容易にすることが可能なコンピュータネットワーク又はアーキテクチャの任意のタイプ又は形態を表す。SANファブリック780は、サーバ740及び745と複数の記憶デバイス790(1)−(N)及び/又は知的記憶アレイ795との間の通信を容易にし得る。SANファブリック780はまた、デバイス790(1)−(N)及びアレイ795が、クライアントシステム710、720、及び730にローカルで接続されたデバイスとして現れるような様式で、ネットワーク750並びにサーバ740及び745を介して、クライアントシステム710、720、及び730と記憶デバイス790(1)−(N)及び/又は知的記憶アレイ795との間の通信を容易にする可能性がある。記憶デバイス760(1)−(N)及び記憶デバイス770(1)−(N)と同様に、記憶デバイス790(1)−(N)及び知的記憶アレイ795は、概して、データ及び/又は他のコンピュータ可読命令を記憶することが可能な記憶デバイス又は媒体の任意のタイプ又は形態を表す。
【0069】
ある実施形態において、及び
図6の例示的なコンピューティングシステム610を参照して、
図6にある通信インタフェース622などの通信インタフェースは、各々のクライアントシステム710、720、及び730とネットワーク750との間の接続性を提供するために使用することができる。クライアントシステム710、720、及び730は、例えば、ウェブブラウザ又は他のクライアントソフトウェアを使用して、サーバ740及び745上の情報にアクセスすることが可能であり得る。そのようなソフトウェアは、クライアントシステム710、720、及び730がサーバ740、サーバ745、記憶デバイス760(1)−(N)、記憶デバイス770(1)−(N)、記憶デバイス790(1)−(N)、又は知的記憶アレイ795によってホストされるデータにアクセスすることを可能にし得る。
図7は、データを交換するためのネットワーク(インターネットなど)の使用を描写するが、本明細書に記載及び/又は例示される実施形態は、インターネット又は他の特定のネットワークに基づく環境に限定されない。
【0070】
少なくとも1つの実施形態において、本明細書に開示される例示的な実施形態のうちの1つ以上の全て又は一部分は、コンピュータプログラムとしてコード化され、サーバ740、サーバ745、記憶デバイス760(1)−(N)、記憶デバイス770(1)−(N)、記憶デバイス790(1)−(N)、知的記憶アレイ795、又はそれらの任意の組み合わせ上にロードされ、それによって実行され得る。本明細書に開示される例示的な実施形態のうちの1つ以上の全て又は一部分は、コンピュータプログラムとしてコード化され、サーバ740に記憶され、サーバ745によって起動され、ネットワーク750を通じてクライアントシステム710、720、及び730に分散され得る。
【0071】
上に詳述されるように、コンピューティングシステム610及び/又はネットワークアーキテクチャ700の1つ以上の構成要素は、単独で、又は他の要素と組み合わせて、多要素認証を実施するための例示的な方法の1つ以上の工程を実施し得る、及び/又は実施するための手段であり得る。
【0072】
前述の開示は、特定のブロック図、フローチャート、及び実例を使用して様々な実施形態を記載するが、本明細書に記載及び/又は図示される各ブロック図の構成要素、フローチャートの工程、動作、及び/又は構成要素は、様々なハードウェア、ソフトウェア、又はファームウェア(又はこれらの任意の組み合わせ)構成を使用して、個別及び/又は集合的に実装されてもよい。加えて、他の構成要素内に含まれた構成要素のあらゆる開示は、多くの他のアーキテクチャが同じ機能を達成するために実装され得ることにより、本質的に例示的であると考慮されるべきである。
【0073】
一部の実施例において、
図1の例示的なシステム100の全て又は一部分は、クラウドコンピューティング又はネットワークに基づく環境の部分を表し得る。クラウドコンピューティング環境は、インターネットを介して様々なサービス及びアプリケーションを提供することができる。これらのクラウドベースのサービス(例えば、サービスとしてのソフトウェア、サービスとしてのプラットフォーム、サービスとしての基盤など)は、ウェブブラウザ又は他のリモートインタフェースを介してアクセス可能であってもよい。本明細書に記載される様々な機能は、リモートデスクトップ環境又は任意の他のクラウドベースのコンピューティング環境を通じて提供されてもよい。
【0074】
本明細書に記載及び/又は図示される工程のプロセスパラメータ及びシーケンスは、例としてのみ付与され、必要に応じて変更され得る。例えば、本明細書に図示及び/又は記載される工程は、特定の順序で示され、又は考察され得るが、これらの工程は、図示され、又は考察される順序で実行される必要は必ずしもない。本明細書に記載及び/又は図示される様々な例示的な方法はまた、本明細書に記載及び/又は図示される工程のうちの1つ以上を省略するか、又は開示されるものに加えて追加の工程を含むことができる。
【0075】
様々な実施形態は、完全に機能的なコンピューティングシステムとの関連で本明細書に記載及び/又は図示されているが、これらの例示的な実施形態のうちの1つ以上は、実際に配布を実行するために使用される特定のタイプのコンピュータ可読記憶媒体にかかわらず、様々な形態でプログラム製品として配布されてもよい。本明細書に開示される実施形態はまた、特定のタスクを実行するソフトウェアモジュールを使用して実装されてもよい。これらのソフトウェアモジュールは、コンピュータ可読記憶媒体に、又はコンピューティングシステム内に記憶され得るスクリプト、バッチ、又は他の実行可能なファイルを含むことができる。いくつかの実施形態では、これらのソフトウェアモジュールは、本明細書に開示される例示的な実施形態のうちの1つ以上を実行するようにコンピューティングシステムを構成することができる。
【0076】
加えて、本明細書に記載されるモジュールのうちの1つ以上は、データ、物理的デバイス、及び/又は物理的デバイスの表現をある形態から別の形態に変換することができる。例えば、本明細書に列挙されるモジュールのうちの1つ以上は、コンピューティングデバイスを、多要素認証を実施するためのデバイスに変換することができる。別の例としては、本明細書に記載されるモジュールのうちの1つ以上は、企業を、多要素認証を有する企業に変換することができる。
【0077】
前述の説明は、当業者が本明細書に開示される例示的な実施形態の様々な態様を最良に利用するのを可能にするために提供されている。この例示的な説明は、包括的であるか、又は開示されるあらゆる正確な形態に限定されることを意図しない。本開示の趣旨及び範囲から逸脱することなく、多くの修正及び変形が可能である。本明細書に開示される実施形態は、あらゆる点で例示的であり、限定的ではないと見なされるべきである。本開示の範囲を決定する際に添付の特許請求の範囲及びその等価物を参照するべきである。
【0078】
特に記載されない限り、用語「1つ(a)」又は「1つ(an)」は本明細書及び特許請求の範囲に使用される際、「少なくとも1つの(at least one of)」を意味すると解釈されるべきである。加えて、使いやすさのために、語「含む(including)」及び「有する(having)」は、本明細書及び特許請求の範囲に使用される際、語「含む、備える(comprising)」と同義的であり、それと同じ意味を有する。