(57)【要約】  リモート・クライアント・コンピューティング・デバイスと企業アセット・プラットフォームとの間に安全な接続の作成するための方法は、登録要求またはアセット・プラットフォームにアクセスする要求のいずれかであり、クライアント・コンピューティング・デバイス（ＣＣＤ）からＣＣＤの一意の識別子を含む要求をサーバが受けるステップと、ＣＣＤが以前にアセット・プラットフォームにアクセスするのをブロックされたことがあるか否か判定するステップと、そうである場合、この方法を終了するステップとを含む。要求が登録要求である場合、既定のポリシーにしたがって明確化クエリを生成するステップと、明確化の質問に対する応答をＣＣＤから受けるステップと、明確化クエリの応答の内容を、既定の判断基準に関して検証するステップとを含む。明確化クエリの応答が既定のポリシーを満たす場合、ＣＣＤを既定のポリシーに関連付けるステップを含む。この方法を実行するように構成されたシステム、およびプロセッサがこの方法を実行するための命令を含む非一時的コンピュータ読み取り可能媒体も開示する。【選択図】図１
2019536157.tif 000002
【特許請求の範囲】
【請求項１】
リモート・クライアント・コンピューティング・デバイスと企業アセット・プラットフォームとの間に安全な接続を形成するための方法であって、
サーバにおいて、電子通信ネットワークを介して該サーバと通信するクライアント・コンピューティング・デバイスから要求を受けるステップであって、前記要求が、登録要求および前記アセット・プラットフォームにアクセスする要求の内１つであり、前記要求がクライアント・コンピューティング・デバイスの一意の識別子を含む、ステップと、  
前記クライアント・コンピューティング・デバイスが以前に前記アセット・プラットフォームにアクセスするのをブロックされたことがあるか否か判定し、前記クライアント・コンピューティング・デバイスが以前にブロックされたことがある場合、この方法を終了するステップと、
前記要求が登録要求である場合、
前記サーバにおいて、既定のポリシーにしたがって明確化クエリを生成するステップと、
前記明確化の質問に対する応答を、前記クライアント・コンピューティング・デバイスから受けるステップと、
前記明確化クエリの応答の内容を、既定の判断基準に関して検証するステップと、
前記検証するステップが、前記クライアント・コンピューティング・デバイスのユーザに対して透過的な方法で、前記クライアント・コンピューティング・デバイスから離れて行われ、
前記明確化クエリの応答が前記既定のポリシーを満たす場合、前記クライアント・コンピューティング・デバイスを前記既定のポリシーに関連付けるステップと、
を含む、方法。
【請求項２】
請求項１記載の方法において、前記判定するステップが、前記クライアント・コンピューティング・デバイスの一意の識別子を、前記サーバと通信するデータ・ストアにおける使用ブロック・クライアント・コンピューティング・デバイスのリストと比較するステップを含む、方法。
【請求項３】
請求項１記載の方法において、前記明確化クエリが、前記サーバと通信するデータ・ストア内に存在する既定の質問を含む、方法。
【請求項４】
請求項３記載の方法において、前記既定の質問が、１つ以上のクライアント・コンピューティング・デバイスのコンフィギュレーションの詳細、インストールされているアプリケーションの改訂番号、インストールされているアプリケーションのリスト、ハードウェア識別子、および１つ以上のイメージ・ファイルからのコンテンツに基づく、方法。
【請求項５】
請求項１記載の方法において、前記検証するステップが、前記応答の各部分に所定のポイントを割り当てることによって、前記明確化クエリの応答を評価するステップを含む、方法。
【請求項６】
請求項５記載の方法であって、累積ポイント・スコアが所定の閾値よりも低い場合、この方法を終了する、およびデフォルトのポリシーを割り当てるの内少なくとも１つを実行するステップを含む、方法。
【請求項７】
請求項１記載の方法において、前記要求がアクセス要求である場合、
前記クライアント・コンピューティング・デバイスに割り当てられた前記既定のポリシーを決定するステップと、
前記サーバにおいて、前記既定のポリシーにしたがって妥当性確認クエリを組み立てるステップと、
前記クライアント・コンピューティング・デバイスから、前記妥当性確認の質問に対する応答を受けるステップと、
前記妥当性確認クエリの応答が、前記既定のポリシーを満たさない場合、この方法を終了するステップと、
前記妥当性確認クエリの応答が前記既定のポリシーを満たす場合、前記クライアント・コンピューティング・デバイスに対して、クロスチェックの詳細を有するアクセス・トークンを作成するステップと、
前記アクセス・トークンを前記クライアント・コンピューティング・デバイスに供給するステップと、
を含む、方法。
【請求項８】
請求項７記載の方法であって、
サーバと通信するデータ・ストアにおけるデバイス・テーブルおよびデバイス・レコードの少なくとも１つを検査し、クライアント・コンピューティング・デバイスの識別子と前記割り当てられたポリシーとの間における関連を突き止めるステップと、
関連が突き止められない場合、この方法を終了するステップと、
を含む、方法。
【請求項９】
請求項８記載の方法であって、
タイムスタップを前記アクセス・トークンに挿入するステップと、
前記アクセス・トークンを所定の有効期限と関連付けるステップと、
を含む、方法。
【請求項１０】
請求項１記載の方法であって、
前記アクセス要求を行った前記クライアント・コンピューティング・デバイスから登録アクセス・トークンを受けるステップと、
前記アクセス・トークンを解読するステップと、
前記解読したアクセス・トークンを検証するステップと、
前記解読したアクセス・トークンの検証に成功しなかった場合、この方法を終了するステップと、
前記解読したアクセス・トークンの検証に成功した場合、前記クライアント・コンピューティング・デバイスおよび該クライアント・コンピューティング・デバイスのエンド・ユーザに対して証明書を生成するステップと、
前記生成した証明書を前記クライアント・コンピューティング・デバイスに送信するステップと、
を含む、方法。
【請求項１１】
請求項１０記載の方法であって、前記クライアント・コンピューティング・デバイスと前記アセット・プラットフォームとの間にアクティブなセッションを形成するステップを含む、方法。
【請求項１２】
請求項１１記載の方法であって、前記トークンに関連するタイムスタンプの期限切れの前に、前記トークンを更新するステップを含む、方法。
【請求項１３】
請求項１１記載の方法であって、前記セッション中に、前記クライアント・コンピューティング・デバイスのトークン有効性のセキュリティ取り組み姿勢再チェックを実行するステップを含む、方法。
【請求項１４】
リモート・クライアント・コンピューティング・デバイスと企業アセット・プラットフォームとの間に安全な接続を形成するための方法を、制御プロセッサに実行させるためのコンピュータ読み取り可能命令を格納して含む非一時的コンピュータ読み取り可能媒体であって、前記方法が、
サーバにおいて、電子通信ネットワークを介して該サーバと通信するクライアント・コンピューティング・デバイスから要求を受けるステップであって、前記要求が、登録要求および前記アセット・プラットフォームにアクセスする要求の内１つであり、前記要求がクライアント・コンピューティング・デバイスの一意の識別子を含む、ステップと、  
前記クライアント・コンピューティング・デバイスが以前に前記アセット・プラットフォームにアクセスするのをブロックされたことがあるか否か判定し、前記クライアント・コンピューティング・デバイスが以前にブロックされたことがある場合、この方法を終了するステップと、
前記要求が登録要求である場合、
前記サーバにおいて、既定のポリシーにしたがって明確化クエリを生成するステップと、
前記明確化の質問に対する応答を、前記クライアント・コンピューティング・デバイスから受けるステップと、
前記明確化クエリの応答の内容を、既定の判断基準に関して検証するステップと、
前記明確化クエリの応答が前記既定のポリシーを満たす場合、前記クライアント・コンピューティング・デバイスを前記既定のポリシーに関連付けるステップと、
を含む、非一時的コンピュータ読み取り可能媒体。
【請求項１５】
請求項１４記載の非一時的コンピュータ読み取り可能媒体であって、前記方法を前記制御プロセッサに実行させるためのコンピュータ読み取り可能命令を格納して含み、前記要求がアクセス要求である場合、前記方法が、
前記クライアント・コンピューティング・デバイスに割り当てられた前記既定のポリシーを決定するステップと、
前記サーバにおいて、前記既定のポリシーにしたがって妥当性確認クエリを組み立てるステップと、
前記クライアント・コンピューティング・デバイスから、前記妥当性確認の質問に対する応答を受けるステップと、
前記明確化クエリの応答の内容を、既定のポリシーに関して検証するステップと、
前記妥当性確認クエリの応答が、前記既定のポリシーを満たさない場合、この方法を終了するステップと、
前記妥当性確認クエリの応答が前記既定のポリシーを満たす場合、前記クライアント・コンピューティング・デバイスに対して、クロスチェックの詳細を有するアクセス・トークンを作成するステップと、
前記アクセス・トークンを前記クライアント・コンピューティング・デバイスに供給するステップと、
を含む、非一時的コンピュータ読み取り可能媒体。
【請求項１６】
請求項１４記載の非一時的コンピュータ読み取り可能媒体であって、前記方法を前記制御プロセッサに実行させるためのコンピュータ読み取り可能命令を格納して含み、前記要求がアクセス要求である場合、前記方法が、
前記アクセス要求を行った前記クライアント・コンピューティング・デバイスから登録アクセス・トークンを受けるステップと、
前記アクセス・トークンを解読するステップと、
前記解読したアクセス・トークンを検証するステップと、
前記解読したアクセス・トークンの検証に成功しなかった場合、この方法を終了するステップと、
前記解読したアクセス・トークンの検証に成功した場合、前記クライアント・コンピューティング・デバイスおよび該クライアント・コンピューティング・デバイスのエンド・ユーザに対して証明書を生成するステップと、
前記生成した証明書を前記クライアント・コンピューティング・デバイスに送信するステップと、
を含む、非一時的コンピュータ読み取り可能媒体。
【請求項１７】
請求項１６記載の非一時的コンピュータ読み取り可能媒体であって、前記方法を前記制御プロセッサに実行させるためのコンピュータ読み取り可能命令を格納して含み、前記方法が、
前記クライアント・コンピューティング・デバイスと前記アセット・プラットフォームとの間にアクティブなセッションを形成するステップと、
前記トークンに関連するタイムスタンプの期限切れの前に、前記トークンを更新するステップと、
前記セッション中に、前記クライアント・コンピューティング・デバイスのトークン有効性のセキュリティ取り組み姿勢再チェックを実行するステップと、
を含む、非一時的コンピュータ読み取り可能媒体。
【請求項１８】
リモート・クライアント・コンピューティング・デバイスと企業アセット・プラットフォームとの間に安全な接続を形成するためのシステムであって、
電子通信ネットワークを介してクライアント・コンピューティング・デバイスと通信する制御プロセッサを含むサーバであって、前記電子通信ネットワークを介してデータ・ストアおよび少なくとも１つのアセット・プラットフォームと通信する、サーバを含み、
前記サーバが、登録要求および前記アセット・プラットフォームにアクセスする要求の内１つである要求を前記クライアント・コンピューティング・デバイスのために受けるように構成された暗号化／解読モジュールを含み、前記要求がクライアント・コンピューティング・デバイスの一意の識別子を含み、
前記サーバ制御プロセッサが、実行可能プログラム命令にアクセスするように構成され、前記実行可能プログラム命令が前記サーバ制御プロセッサに、  
デバイス・レコード・ストアおよびデバイス・テーブル・ストアの内少なくとも１つにアクセスすることによって、前記クライアント・コンピューティング・デバイスが以前に前記アセット・プラットフォームにアクセスするのをブロックされたことがあるか否か判定し、前記クライアント・コンピューティング・デバイスが以前にブロックされたことがある場合、前記安全な接続の形成を終了すること、
前記要求が登録要求である場合、
前記サーバにおいて、既定のポリシーにしたがって明確化クエリを生成すること、
前記明確化の質問に対する応答を、前記クライアント・コンピューティング・デバイスから受けること、  
前記明確化クエリの応答の内容を、既定の判断基準に関して検証すること、
前記検証するステップが、前記クライアント・コンピューティング・デバイスのユーザに対して透過的な方法で、前記クライアント・コンピューティング・デバイスから離れて行われること、
前記明確化クエリの応答が前記既定のポリシーを満たす場合、前記クライアント・コンピューティング・デバイスを前記既定のポリシーに関連付けること、
を実行させる、システム。
【請求項１９】
請求項１８記載のシステムにおいて、前記サーバ制御プロセッサが、前記要求がアクセス要求である場合、前記サーバ制御プロセッサに、
前記クライアント・コンピューティング・デバイスに割り当てられた前記既定のポリシーを決定すること、
前記サーバにおいて、前記既定のポリシーにしたがって妥当性確認クエリを組み立てること、
前記クライアント・コンピューティング・デバイスから、前記妥当性確認の質問に対する応答を受けること、
前記妥当性確認クエリの応答が、前記既定のポリシーを満たさない場合、前記安全な接続の形成を終了すること、
前記妥当性確認クエリの応答が前記既定のポリシーを満たす場合、前記クライアント・コンピューティング・デバイスに対して、クロスチェックの詳細を有するアクセス・トークンを作成すること、
前記アクセス・トークンを前記クライアント・コンピューティング・デバイスに供給すること、
を実行させる実行可能プログラム命令にアクセスするように構成される、システム。
【請求項２０】
請求項１９記載のシステムにおいて、前記サーバ制御プロセッサが、前記要求がアクセス要求である場合、前記サーバ制御プロセッサに、
前記アクセス要求を行った前記クライアント・コンピューティング・デバイスから登録アクセス・トークンを受けること、
前記アクセス・トークンを解読すること、
前記解読したアクセス・トークンを検証すること、
前記解読したアクセス・トークンの検証に成功しなかった場合、前記安全な接続の形成を終了すること、
前記解読したアクセス・トークンの検証に成功した場合、
前記クライアント・コンピューティング・デバイスおよび該クライアント・コンピューティング・デバイスのエンド・ユーザに対して証明書を生成すること、
前記生成した証明書を前記クライアント・コンピューティング・デバイスに送信すること、
前記クライアント・コンピューティング・デバイスと前記アセット・プラットフォームとの間にアクティブなセッションを形成すること、
前記セッションの期限切れの前に、前記トークンを更新すること、
前記セッション中に、前記クライアント・コンピューティング・デバイスのトークン有効性のセキュリティ取り組み姿勢再チェックを実行すること、
を実行させる実行可能プログラム命令にアクセスするように構成される、システム。
【発明の詳細な説明】
【従来技術】
【０００１】
[0001]  企業は、正規従業員、販売業者、および他の関係者に、公衆通信ネットワーク（例えば、インターネット）を通じて企業のネットワーク、データ・システム、ウェブサイト、プラットフォーム等へのアクセスを付与するために、リモート・アクセス・サービスに投資する。リモート・アクセスは、管理され安全でなければならない。しかしながら、共有される公衆ネットワークを介したアクセスは、様々な危険性に満ちている可能性がある（例えば、不正アクセス、盗聴／配線傍受、マルウェア、キーロギングおよび資格証明書の不正使用、データ漏洩、すり替え／盗品デバイス（１つまたは複数）等）。
【０００２】
[0002]  リモート・アクセス・リソースは、ハッカーによってネットワーク・セキュリティを侵害するために悪用される可能性がある。全ての不正侵入による漏洩(hacking breach)の内圧倒的な割合が、リモート・アクセス・サービス・ポイントから企業のコンピューティング・システムにアクセスするハッカーによって起こっている。これらの不正侵入による漏洩は、ワーム、ウィルス、スパイ・ウェイ、データ盗難、アプリケーション悪用等のような脅威に至る可能性がある。
【発明の概要】
【０００３】
[0003]  従来の手法では、ユーザ名／パスワード認証規範(paradigm)を実施することによって、リモート・アクセスを付与する。当技術分野において欠如しているのは、セキュリティ・チェックを繰り返し行うリモート・アクセス認証のための、使いやすく、費用効率的であり、透過性である改良セキュリティ・レイヤを提供する解決策である。
【図面の簡単な説明】
【０００４】
【図１】図１は、実施形態によるリモート・アクセス・セキュリティ・システムを示す。
【図２】図２は、実施形態によるデバイス明確化プロセスのフローチャートを示す。
【図３】図３は、実施形態によるデバイス妥当性確認プロセスのフローチャートを示す。
【図４】図４は、実施形態によるデバイス登録プロセスのフローチャートを示す。
【図５】図５は、実施形態によるセキュリティ取り組み姿勢再チェック／認証プロセスのフローチャートを示す。
【発明を実施するための形態】
【０００５】
[0009]  具体化するシステムおよび方法は、リモート・アクセスを求める要求に、企業アセットを付与するか否か判定する。要求評価は、ユーザ名／パスワード認証プロセスを含み、更に１つ以上の判断基準、例えば、発行されて要求元リモート・デバイスに存在する暗号証明書、要求元のリモート・デバイス自体の構成、このデバイスのセキュリティ取り組み姿勢(security posture)、およびその他の要素の検査を補足することができる。実施形態によれば、１つ以上の判断基準の検査は、リモート・デバイスのユーザには透過的な方法で実行される。
【０００６】
[0010]  具体化するシステムおよび方法は、暗号化された問い合わせおよび応答プロトコルを利用して、ユーザにはアクセスできないように格納されているポリシーおよびデバイス・プロファイル情報と突き合わせて、要求元デバイスを評価する。アクセス判断の再評価を繰り返し実行することができ、循環質問(rotating questions)を使用して要求元クライアントの認証を評価することができる。繰り返し再評価間の間隔は、ポリシーに設定される値に基づいて、変更することができる。ポリシー違反が検出された場合、種々の措置を講ずることができる。例えば、アクセスの拒否および／または無効（一時的または永続的）のように、既定のポリシーにおいて詳細に決められる。
【０００７】
[0011]  図１は、実施形態によるリモート・アクセス認証、妥当性確認(validation)、およびセキュリティ取り組み姿勢チェックのためのシステム１００を示す。具体化するシステムは、１つ以上のクライアント・コンピューティング・デバイス１１０を含むことができる。クライアント・コンピューティング・デバイスは、エンド・ユーザの目的を遂行するときにエンド・ユーザによる使用に適したコンピューティング・デバイス（例えば、パーソナル・コンピュータ、ワークステーション、薄いクライアント、ネットブック、ノートブック、タブレット・コンピュータ、移動体デバイス等）とすることができる。
【０００８】
[0012]  クライアント・コンピューティング・デバイス１１０は、このクライアント・コンピューティング・デバイスの他のコンポーネントと通信するクライアント制御プロセッサ１１１を含むことができる。制御プロセッサ１１１は、コンピュータ実行可能命令１１３にアクセスする。コンピュータ実行可能命令１１３はオペレーティング・システム１１３を含むことができる。メッセージ組み立てモジュール１１４は、セキュリティ／認証クエリに対する応答を組み立てることができる。暗号化／解読モジュール１１５は、ＡＥＳおよび／またはＲＳＡのような、しかしこれらには限定されない対称および非対称アルゴリズム、ならびに圧縮／解凍を使用して、クライアント・コンピューティング・デバイスからのメッセージ／クライアント・コンピューティング・デバイスへのメッセージに対して暗号化／解読を実行することができる。コンフィギュレーション・ファイル１１６は、特定のクライアント・コンピューティング・デバイスのハードウェアおよび／またはソフトウェア・コンテンツに関するデータ、例えば、ウィルス対策ソフトウェアのインストールおよび／または改訂識別子、文書作成ソフトウェア、マザーボード連番、処理ユニット識別子等を含むことができる。画像ファイル１１７は、妥当性確認／認証／セキュリティ・チェック動作の間アクセス可能なファイルを含むことができる。実施形態によれば、コンフィギュレーション・データ・ファイルおよびイメージ・ファイル・コンテンツは、既定のポリシーとの順守についてチェックされ、クライアント・コンピューティング・デバイスの真正性を検証することができる。
【０００９】
[0013]  企業サーバ１２０は、少なくとも１つのサーバ制御プロセッサ１２１を含むことができる。サーバ制御プロセッサ１２１は、この制御プロセッサによってアクセス可能な実行可能命令１２２を実行することにより、具体化する検証／認証／セキュリティ・チェック動作をサポートするように構成されている。専用ハードウェア、ソフトウェア・モジュール、および／またはファームウェアが、本明細書において開示する、具体化するリモート・アクセス検証／認証／セキュリティ・サービスを実施することができる。
【００１０】
[0014]  サーバ・メッセージ組み立てモジュール１２５は、具体化する方法にしたがって、セキュリティ／認証クエリを組み立てることができる。これらのクエリは、企業アセットへのアクセスを要求するクライアント・コンピューティング・デバイスに送ることができる。サーバ暗号化／解読モジュール１２３は、クライアント・コンピューティング・デバイスからのメッセージ／クライアント・コンピューティング・デバイスへのメッセージに対して、対称および非対称暗号化／解読ならびに圧縮／解凍を実行することができる。検証モジュール１２７は、具体化する動作にしたがって、規則および／または１つ以上のポリシーを適用し、サーバ１２０に送られたクエリに対する要求元クライアント・コンピューティング・デバイスの応答の順守を判定することができる。
【００１１】
[0015]  サーバ１２０は、データ・ストア１４０と通信する。サーバ側のメッセージ組み立てモジュール１２５は、セキュリティ／認証動作のためのクエリを組み立てることができる。これらのクエリは、要求元クライアント・コンピューティング・デバイスから予期される、既定の条件に基づく。これらのクエリは、クライアント・コンピューティング・デバイスから予め収集されているデバイス・レコード１４３に格納されている一意のコンフィギュレーション・データに対する参照を含むことができる。サーバ側暗号化／解読モジュール１２３は、要求元クライアント・コンピューティング・デバイスからのメッセージ／要求元クライアント・コンピューティング・デバイスへのメッセージに対して対称および非対称暗号化／解読ならびに圧縮／解凍を実行することができる。
【００１２】
[0016]  データ・ストア内のエレメントは、企業アセット・プラットフォーム１３０へのアクセスを要求するクライアント・コンピューティング・デバイスに送られるクエリを作る(develop)ときに使用することができる。これらのエレメントは、ユーザ・ブラックリスト１４６（例えば、不正クライアント・コンピューティング・デバイスの識別子およびユーザｉｄのリスト）、デバイス・レコード１４３（例えば、クライアント・コンピューティング・デバイスから以前に収集された一意のコンフィギュレーション・データであり、ポリシー連携(policy association)を含む）、プラットフォーム・ポリシー１４５（例えば、所与のクライアント・デバイスの標準ソフトウェアのロードに関連する規則を集計したポリシー）、明確化ポリシー１５２（例えば、関連するポリシーに対する明確化質問を重み付けポイント値と関連付けるマッピング・データ）、明確化質問１４８（例えば、既定の尋問(interrogatories)）、規則１５０（例えば、クエリを作成するために使用される１組以上の既定の尋問）、および評価判断基準１５４（応答が合格であると決定するために使用される情報、および不合格の応答に対して講ずるべき措置）を含むことができる。
【００１３】
[0017]  システム１００は、１つ以上の企業アセット・プラットフォーム１３０を含む。各企業アセット・プラットフォームは、電子通信ネットワーク１６０を介して、離れてアクセス可能である。企業アセット・プラットフォームは、例えば、企業のネットワークにおけるノード、データ・システム、ウェブサイト、および／または離れてアクセスすることができる他のプラットフォームの内１つとすることができる。ある実現例では、アセット・プラットフォームは、保護された企業リソースのネットワークへのアクセスを付与するゲートウェイとして機能することもできる。実施形態によれば、企業アセット・プラットフォームを企業サーバ１２０内に含むことができる。
【００１４】
[0018]  システム１００のコンポーネントの各々は、電子通信ネットワーク１６０を介して通信することができる。電子通信ネットワークは、私設インターネット・プロトコル（ＩＰ）ネットワーク、インターネット、統合ディジタル・サービス・ネットワーク（ＩＳＤＮ）、フレーム中継接続、電話回線に接続されたモデム、公衆電話交換網（ＰＳＴＮ）、公衆または私設データ・ネットワーク、ローカル・エリア・ネットワーク（ＬＡＮ）、都市エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、有線またはワイヤレス・ネットワーク、地域限定、域内、または地球規模の通信ネットワーク、企業イントラネット、以上のものの任意の組み合わせ、および／または任意の他の適した通信手段であることができ、含むことができ、あるいはその一部であることができる。尚、本明細書において開示する技法およびシステムは、ネットワーク１６０の性質によって限定されないことは、認められてしかるべきである。
【００１５】
[0019]  具体化する方法は、暗号化クエリ／応答プロトコルを適用して、資格証明書を検証し、企業のリモート・アセットの１つへのアクセスを要求するクライアント・コンピューティング・デバイスにおけるエンドポイント・セキュリティを評価する。データ・ストア１４０は、エンドポイント質問と、質問をどのように評価することができるかについて記述する判断基準とを有するポリシー・ストアを含む。これらの質問および判断基準は、企業の職員、例えば、ＩＴの職業人(professional)、ネットワーク・セキュリティの専門家(expert)によって設けられる既定の規範に基づく。
【００１６】
[0020]  実現例によれば、クライアント・コンピューティング・デバイスが実行しているプログラム／アプリケーション（そして、場合によっては、バージョン識別子も）の一部または全部のリストを尋ねるクエリをクライアント・コンピューティング・デバイスに送ることができる。クライアント・コンピューティング・デバイスは、コンフィギュレーション・ファイル１１６を調べることによって、詳細な応答のために、応答を組み立てることができる。特定のポリシーに特定的な規則１５０は、種々の方法でチェックすることによって応答を評価することができる。非限定的な例として、規則は、認可されたウィルス対策ソフトウェアが実行していることを確認するためにチェックすることができ、または禁止されているソフトウェアがクライアント・コンピューティング・デバイスにインストールされていないことを確認するためにチェックすることができる。評価は、クライアント・コンピューティング・デバイスから離れている企業サーバ１２０において行われるので、クライアントは、使用されている評価判断基準も、ポリシーも、規則も見ることはできない。
【００１７】
[0021]  アセット・プラットフォームへのリモート・アクセスを認可する従来の手法は、暗号証明書をコピーできるという重大な欠点に直面している。つまり、コンピューティング・デバイスおよび／またはローカル・ユーザのなりすましを可能にする。具体化するシステムおよび方法は、クライアント・コンピューティング・デバイスおよびそのローカル・ユーザに透過的な方法でセキュリティ検証を実行する。したがって、実施形態は、暗号証明書が発行されたクライアント・コンピューティング・デバイスにおいてのみこの暗号証明書を使用できることを確保し、認証が行われるとき、クライアント・コンピューティング・デバイスのセキュリティ取り組み姿勢を試験することによって、この問題を解決する。つまり、実施形態は、証明書盗難からの危険性を極力抑えつつ、クライアント・コンピューティング・デバイスがポリシーに従っていることを確認する。
【００１８】
[0022]  実施形態によれば、ユーザ識別／証明書／デバイス識別子間の関連を、データ・ストア・エレメント１４０のエレメント内で維持する。アセット・プラットフォームへのアクセスを要求するクライアント・コンピューティング・デバイスから受けたクエリ応答（１つまたは複数）を、データ・ストア内に格納されている情報と突き合わせて、サーバにおいてチェックする。ある実現例では、デバイス識別子を個々のクライアント・コンピューティング・デバイスから「学習し」、データ・ストアに格納し、次いで後に検証／チェック比較の間に使用することができる。
【００１９】
[0023]  実施形態によれば、既定のポリシーおよび／または規範を周期的または非周期的に更新または変更することができる。ポリシーおよび規範は、改竄の試行を防止し、進行中のアクティブなセッションに対する攻撃を識別し、検出された攻撃者に対する対策を実施する(enact)ように構成することができる。既定のポリシーおよび規則を実施することによって、具体化するシステムおよび方法は、信頼できるコンテキストで認証が行われていること、例えば、必要なソフトウェアが実行しているか？、デバイスの改竄が検出されたか？、確認する。
【００２０】
[0024]  具体化するシステムおよび方法は、クライアント・コンピューティング・デバイスにアーキテクチャの詳細を問い合わせ、次いでクライアント・コンピューティング・デバイスから離れてクエリ応答を分析することによって、クライアント・コンピューティング・デバイス（１つまたは複数）のセキュリティ分析を実行する。実施形態によれば、異なるレベルのアクセスを付与し、異なる企業アセット・プラットフォームへのアクセスを付与することができる。クライアント・コンピューティング・デバイスに送られるクエリは、デバイス認証において使用される複数の要素、例えば、ユーザＳＳＯ／パスワード、企業が発行するユーザ／デバイス証明書、一意のデバイス属性（コンフィギュレーション・データ、イメージ・ファイル・コンテンツ等）を透過的に要求することができる。
【００２１】
[0025]  実施形態によれば、方法は、反復エンドポイント妥当性確認技法を含むことができる。これらの技法は、クライアント・コンピューティング・デバイスが既定のポリシーおよび／または判断基準に従うことを要求するために、ポリシーに基づく手法を実施することができる。従わない場合、企業アセット・プラットフォームへのアクセスは拒否されるか、または進行中のアクセスが終了する結果となる。ある実現例では、デバイスを完全にまたは部分的に識別するために、個々のデバイスの指紋を使用することができる。
【００２２】
[0026]  実施形態によれば、システムおよび方法は、企業アセット・プラットフォームへのアクセスを要求しているリモート・クライアント・コンピューティング・デバイスを明確化し、妥当性確認し、登録するために三段階手法を実行することができる。一旦クライアント・コンピューティング・デバイスが登録されたなら、システムは、透過的にユーザおよびクライアント・コンピューティング・デバイスを妥当性確認し、安全を確保したアクセスを付与する。この透過性の妥当性確認は、ユーザ・セッションの間反復セキュリティ・チェックを使用することができる。動作は、クライアント・コンピューティング・デバイスのローカル・ユーザに対して透過的に実行することができる。
【００２３】
[0027]  図２は、実施形態によるデバイス明確化プロセス２００のフローチャートを示す。明確化プロセス２００は、データ・ストア１４０内に存在する既定の所定の明確化質問を使用して、クライアント・コンピューティング・デバイスを、クライアント・コンピューティング・デバイスの構成に該当するプラットフォーム・ポリシー１４５と関連付けるために、クライアント・コンピューティング・デバイスに問い合わせる。具体化するシステムおよび方法を採用することによって、企業は異なるクライアント・デバイス・ソフトウェア構成を、これらの構成に適したポリシーと突き合わせて試験することができる（例えば、企業は、異なるが容認可能なウィルス対策ソフトウェアを有する２つのクライアント・デバイス・プラットフォームを維持することができる）。サーバ１２０において、登録サーバ企業アセット・プラットフォーム・リソース１３０にアクセスすることの認可(clearance)のための登録要求を、クライアント・コンピューティング・デバイス１１０から受けることができる（ステップ２０５）。登録要求は、サーバの公開鍵によって、非対称的に暗号化することができる。
【００２４】
[0028]  サーバは登録要求を解読する。サーバは、クライアント・コンピューティング・デバイスの識別および／またはローカル・ユーザの識別を、ユーザ・ブラックリスト１４６に維持されている使用ブロック識別(blocked identities)のリストと比較する（ステップ２１０）。ユーザまたはデバイスがリモート・アセットにアクセスするのをブロックされたことがある場合、このプロセスは終了する。
【００２５】
[0029]  ユーザまたはデバイスの識別が使用ブロック・リスト上に現れない場合、明確化クエリを生成する（ステップ２１５）。明確化クエリは、既定のポリシー、要求のタイプに割り当てられる規則に基づいて、クライアント・コンピューティング・デバイスに、特定のコンフィギュレーション情報について問い合わせる。明確化クエリは、タイムスタンプを含むことができる。
【００２６】
[0030]  サーバは、明確化クエリを要求元クライアント・コンピューティング・デバイスに送信する（ステップ２２０）。明確化クエリは、サーバ側で、暗号化および／または圧縮することができる。クライアント・メッセージ組み立てモジュール１１４は、この明確化クエリに対する応答を組み立てることができる。クエリの性質に基づいて、応答は、ウィルス対策ソフトウェアのソフトウェア・コンフィギュレーション・インストール改訂識別子(software configuration installation revision identifiers)の詳細、文書作成ソフトウェア、マザーボード連番、処理ユニットの識別子、クライアント・コンピューティング・デバイスのハードウェアに関するデータ、イメージ・ファイルのコンテンツ、および既定の明確化ポリシーに応じた他の詳細を含むことができる。
【００２７】
[0031]  サーバは、明確化クエリに対する応答を、クライアント・コンピューティング・デバイスから受ける（ステップ２２５）。応答自体を暗号化および／または圧縮することができる。応答の内容に基づいて、クライアント・コンピューティング・デバイスをプラットフォーム・ポリシー１４５に割り当てることができる。クエリ応答の各部分にポイント(point)を割り当てることによって、応答を評価する（ステップ２３０）。入ったポイントが特定のポリシーに対して大きい場合、クライアント・コンピューティング・デバイスはそのポリシーと関連付けられる（ステップ２３５）。応答が評価に失敗した場合、このプロセスは終了する。ある実現例では、例えば、ポリシー間の結び付き、構成設定されたシステムのデフォルト・ポリシーに基づいて、クライアント・コンピューティング・デバイスを評価することができる。最初の登録の間に、一旦クライアント・コンピューティング・デバイスがポリシーと関連付けられたなら、プロセス３００（図３）を使用して、クライアント・コンピューティング・デバイスを妥当性確認する。
【００２８】
[0032]  図３は、実施形態によるデバイス妥当性確認プロセス３００のフローチャートを示す。妥当性確認プロセス３００は、企業アセット・プラットフォームへのアクセスを要求するクライアント・コンピューティング・デバイスに問い合わせ、明確化プロセス２００の間に割り当てられたポリシーと、データ・ストア１４０に存在する既定の所定の質問との組み合わせに基づいて、その真正性を判定する。企業アセット・プラットフォーム・リソース１３０にアクセスする要求は、サーバ１２０においてクライアント・コンピューティング・デバイス１１０から受けることができる（ステップ３０５）。
【００２９】
[0033]  サーバは、アクセスを要求する特定のクライアント・コンピューティング・デバイスに割り当てられたポリシーを決定する（ステップ３１０）。この判定は、明確化プロセス２００の結果としてデバイス・レコード１４２に格納されたポリシーに基づく。この特定のクライアント・コンピューティング・デバイスに未だポリシーが割り当てられていない場合、プロセス３００は終了し、サーバ１２０は、先に説明した明確化プロセス２００を実行する。
【００３０】
[0034]  割り当てられたポリシーおよび規則１５０からの質問を使用して、妥当性確認クエリを組み立てる（ステップ３１５）。妥当性確認クエリの目的は、実際の要求元クライアント・コンピューティング・デバイスが、ポリシーに従っているか否か、そして信頼してアセット・プラットフォームへのリモート・アクセスを付与できるか否か評価することである。定められた規則１５０に基づいて、クエリは、クエリ・インスタンス毎に変化する循環質問を含むことができる。クエリは、要求された企業アセット・プラットフォームに関連する質問を含むことができる（例えば、登録アクセスを要求するデバイスに対して尋ねられる質問が、ネットワーク・アクセスを要求するデバイスに対して尋ねられる質問とは異なるのはもっともである）。サーバは、妥当性確認クエリを要求元クライアント・コンピューティング・デバイスに送信する（ステップ３２０）。ある実現例では、クエリにタイムスタンプを付けることができる。妥当性確認クエリをサーバ側において暗号化および／または圧縮することができる。クライアント・メッセージ組み立てモジュール１１４は、妥当性確認クエリに対する応答を組み立てることができる。クエリの性質に基づいて、応答は、ウィルス対策ソフトウェアのソフトウェア・コンフィギュレーション・インストール改訂識別子(software configuration installation revision identifiers)の詳細、文書作成ソフトウェア、マザーボード連番、処理ユニットの識別子、クライアント・コンピューティング・デバイスのハードウェアに関するデータ、イメージ・ファイルのコンテンツ、および既定のポリシーに応じた他の詳細を含むことができる。
【００３１】
[0035]  サーバは、クライアント・コンピューティング・デバイスから、妥当性確認クエリに対する応答を受ける（ステップ３２５）。応答自体を暗号化および／または圧縮することができる。データ・ストア１４０内に存在する評価判断基準１５４と突き合わせてクエリ回答をチェックすることによって、応答を評価する。評価判断基準はシステム１００のサーバ側に存在し、クエリ応答の評価は、システムのサーバ側で実行される。クライアント・コンピューティング・デバイスは判断基準に露出されず、応答評価にも露出されず、このプロセスをクライアント・コンピューティング・デバイスおよびそのローカル・ユーザに対して透過性にする。
【００３２】
[0036]  妥当性確認クエリ応答の評価が、この応答が正しくないと判定した場合（ステップ３３０）、妥当性確認プロセス３００は終了する。妥当性確認が成功した場合、プロセス３００は、アセット・プラットフォームへのアクセスを要求する特定のクライアント・コンピューティング・デバイスのためにアクセス・トークンを作成する（ステップ３３５）。アクセス・トークンには、ＲＳＡのようなアルゴリズムを使用して、非対称的に署名することができるので、クライアント・コンピューティング・デバイスによって要求された特定のアセット・プラットフォームでなければそれを読むことができない。このアクセス・トークンは、妥当性確認クロスチェックについての詳細を含むことができる。加えて、アクセス・トークンにタイムスタンプを付け、更に、セキュリティ強化のために、所定の有効期限(expiration deadline)と関連付けることができる。アクセス・トークンをクライアント・コンピューティング・デバイスに供給する（ステップ３４０）。このトークンを使用して、受けた要求において識別された企業アセット・プラットフォームとの接続を行うときに、クライアント・コンピューティング・デバイスを検証することができる（ステップ３０５）。トークンが最初の登録において使用されなければならない場合、登録プロセス４００（図４）において以下で説明するように、登録企業リソース・プラットフォームにトークンを渡すことができる。保護された企業リソース・プラットフォームへの登録後アクセスのためにトークンが使用されなければならない場合、セキュリティ取り組み姿勢再チェック／認証プロセス５００（図５）において説明するように、トークンを使用することができる。
【００３３】
[0037]  図４は、実施形態によるデバイス登録プロセス４００のフローチャートを示す。登録プロセス４００は、登録アクセス・トークンを検証し、登録後の妥当性確認において使用することができるユーザ／デバイス証明書を生成するタスクを実行する。アクセス・トークンを有する登録要求（クライアント証明書署名要求を含む）をクライアント・コンピューティング・デバイスから受ける（ステップ４０５）。この要求は、登録アセット・プラットフォームまたはサーバにおいて受けることができる。
【００３４】
[0038]  実現例によれば、登録プロセス４００は、サーバにおいて、サーバ・プラットフォームにおいて、および／または一緒に動作するサーバとアセット・プラットフォームにおいて実行することができる。アセット・プラットフォームは、クライアント・ユーザ／デバイス証明書を生成する認証局機能を含むことができる。また、アセット・プラットフォームは、ユーザ・パスワード・チェックまたはワンタイム・パスワード・チェックのような、登録に必要とされる追加のセキュリティ・チェックを実行するアプリケーションを含むこともできる。
【００３５】
[0039]  トークンを解読する（ステップ４１０）。解読したアクセス・トークンを検証する（ステップ４１５）。検証は、トークンの署名をチェックすること(signature checking the token)、デバイス明確化プロセス２００および／またはデバイス妥当性確認プロセス３００の間に得られデータ・ストア１４０内に存在するクライアント・コンピューティング・デバイスの詳細をチェックすること、トークン・ユーザがユーザ認証および許可情報と一致するか否かチェックすること、およびトークンが未だ有効であることをチェックすることを含むことができる。
【００３６】
[0040]  トークンが検証されない場合、アセット・プラットフォームへのアクセスを拒否し、このプロセスを終了する。トークンが検証された場合、クライアント・コンピューティング・デバイスおよびユーザに対して証明書を生成する（ステップ４２０）。次いで、アクセス証明書をクライアント・コンピューティング・デバイスに送信する（ステップ４２５）。証明書は、一旦受領されたなら、クライアント・コンピューティング・デバイスにおいて安全に格納される（ステップ４２５）。ある実現例では、証明書をクライアント暗号ＡＰＩ（ＣＡＰＩ）証明書ストアに入れることができる。
【００３７】
[0041]  図５は、実施形態による、クライアント企業アセット・アクセスのためのセキュリティ取り組み姿勢再チェック／認証プロセス５００のフローチャートを示す。企業アセット・プラットフォームへのアクセスは、ウェブ・ブラウザを使用して、あるいはリソース代理(resource proxying)またはネットワーク・トンネリングを含む方法によって、保護されているネットワーク・セグメントへのアクセスを許可する、企業アセットアクセス・プラットフォームのためのトランスポート・レイヤ・セキュリティ（ＴＬＳ）レイヤを通じて遂行することができる。ＴＬＳトンネリングを使用する場合、登録プロセス４００の間に得られたクライアント証明書を、認証の目的で透過的に提示することができ、傍受を防止するために接続を固定する(pin)（企業アセットＴＬＳ接続についての静的詳細(static details)をクライアントにチェックさせることによって）ことができる。
【００３８】
[0042]  クライアント・コンピューティング・デバイス１１０は、企業アセット・プラットフォームと共に使用されるセッション・クロスチェック情報を作ることができる。実現例によれば、クロスチェック情報は、ローカルに導き出すことができ、またはアクセスの前にアセット・プラットフォームによって供給することができる。このクロスチェック情報は、デバイス妥当性確認プロセス３００を使用して妥当性確認を要求する（ステップ５０５）ために使用される。妥当性が確認された場合、有効期限情報と共に、アクセス・トークンが供給される。有効期限を暗号化することができる。
【００３９】
[0043]  クライアント・コンピューティング・デバイスは、供給されたトークンの有効期限を追跡することができる（ステップ５１０）。期限の前に、プロセス３００を利用して更新要求を行うことができる（ステップ５１５）。アクセスを認証するときに使用するために、トークンを企業アセット・プラットフォームに提示する。トークンを渡すことによって、クライアント・コンピューティング・デバイスとアセット・プラットフォームとの間に、アクティブなセッションを形成する（ステップ５２０）。
【００４０】
[0044]  トークンを解読する（ステップ５２５）。解読されたアクセス・トークンは、要求されたアセット・プラットフォームに対して有効か、そして要求元のクライアント・コンピューティング・デバイスに対して有効かについて検証する（ステップ５３０）。検証は、トークンの署名をチェックすること、トークン内に含まれるクロスチェックの詳細をチェックすること、保護されているリソースに対してトークンが発行されたか否かチェックすること、トークン・ユーザが、提示されたクライアントＴＬＳ証明書および／または他の認証の詳細と一致するか否かチェックすること、そしてトークンが未だ有効であることをチェックすることを含むことができる。
【００４１】
[0045]  トークンが無効であるまたは期限切れである場合、有効なトークンが必要であることを示す信号を、クライアント・コンピューティング・デバイスに送る（ステップ５３５）。次いで、プロセス５００はステップ５０５に戻り、クライアント・コンピューティング・デバイスは、プロセス４００を使用して、新たな、有効なトークンを要求する。提示されたトークンが有効である場合、要求された企業アセット・プラットフォームに対してアクセスが付与される（ステップ５４０）。実施形態によれば、プロセス５００は、関連するポリシーによって設定される間隔で、ループ反復トークン検証ステップ５３０に入ることができる。
【００４２】
[0046]  表１は、この表において識別される特定の危険性に対処するために、具体化するシステムおよび方法によって実施される制御の全体像を詳細に記述する行列を示す。これらの危険性には、不正アクセス、盗聴および通信傍受、マルウェア、キーロギングおよび資格証明書盗難、クライアント・コンピューティング・デバイスの紛失または盗難、およびデータの盗難／漏洩が含まれる。
【００４３】
【表１】
2019536157.tif 000003
【００４４】
[0047]  ある実施形態によれば、不揮発性メモリまたはコンピュータ読み取り可能媒体（例えば、レジスタ・メモリ、プロセッサ・キャッシュ、ＲＡＭ、ＲＯＭ、ハード・ドライブ、フラッシュ・メモリ、ＣＤ  ＲＯＭ、磁気媒体等）に格納されたコンピュータ・プログラム・アプリケーションが、コードまたは実行可能命令を含むことができ、これらが実行されると、以上で説明したようにセキュリティ取り組み姿勢再チェック／認証によって、アセット・プラットフォームへのリモート・アクセスを要求するクライアント・コンピューティング・デバイスの安全で、透過性の多要素妥当性確認、登録、認証を行う方法のような、本明細書において説明した方法を実行するように、コントローラまたはプロセッサに命令する、および／または実行させることができる。
【００４５】
[0048]  コンピュータ読み取り可能媒体は、一時的な伝搬信号を除いて、全ての形態およびタイプのメモリ、ならびに全てのコンピュータ読み取り可能媒体を含む、非一時的コンピュータ読み取り可能媒体であってよい。１つの実現例では、不揮発性メモリまたはコンピュータ読み取り可能媒体は外部メモリであってもよい。
【００４６】
[0049]  以上、本明細書では具体的なハードウェアおよび方法について説明したが、本発明の実施形態にしたがって、任意の数の他の構成を設けてもよいことを注記しておく。つまり、本発明の基礎的な新規の特徴を示し、説明し、指摘したが、例示した実施形態、およびその動作における形態ならびに詳細において、種々の省略、交換、および変更も、本発明の趣旨および範囲から逸脱することなく、当業者によって行うことができることは理解されよう。また、実施形態間におけるエレメントの交換も、最大限意図され、想定されている。本発明は、添付する請求項、およびその中の記載の均等物に関してのみ定められることとする。
【図１】
2019536157.tif 000004
【図２】
2019536157.tif 000005
【図３】
2019536157.tif 000006
【図４】
2019536157.tif 000007
【図５】
2019536157.tif 000008
【国際調査報告】
2019536157.tif 000009
2019536157.tif 000010