説明

安全なリモートコンピュータのタスク自動化のためのシステム及び方法

システムは、クライアントコンピュータ及びターゲットコンピュータと通信状態にある第三者機関を備える。第三者機関は、認証情報とアクセス要求を含む要求をクライアントコンピュータから受信し、認証情報に従いクライアントコンピュータを認証し、クライアントコンピュータに対して、ターゲットコンピュータ上でタスクを実行するのにターゲットコンピュータに対するアクセスを許可するために、タスクを含むアクセス要求を処理するように構成される。第三者機関は、ターゲットコンピュータにアクセスするためのアクセストークンをクライアントコンピュータに送信し、妥当性確認のためにターゲットコンピュータからアクセストークンを受信し、タスクを処理するように、ターゲットコンピュータに対する要求に従い受信されたアクセストークンの正当性を立証し、妥当性確認に従いタスクを処理する許可をターゲットコンピュータに与えるように構成される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、安全なリモートコンピュータのタスク自動化のためのシステム及び方法に関係する。
【背景技術】
【0002】
この出願は、参照によってここに組み込まれている、2008年4月22日に出願された米国仮特許出願番号第61/071,323号の利益を主張する。
【0003】
情報技術が発展し続けるので、コンピュータネットワークは、更に長い距離にわたって更に分散された状態になっている。ネットワーク上のコンピュータのリモートアクセス及び制御は、ネットワークの適切な働きを時機を逃さず管理して維持する際に不可欠になる。しかしながら、そのようなリモート制御及びアクセス構造は、それと共に、様々な安全性の要求をもたらす。
【発明の概要】
【発明が解決しようとする課題】
【0004】
例えば、クライアントコンピュータから遠く隔たって設置されたコンピュータ(すなわち、ターゲットコンピュータ)上である命令を実行するために、ターゲットコンピュータは、クライアントコンピュータにアクセス権を与える必要がある。アクセス権を獲得するために、クライアントコンピュータは、ターゲットコンピュータに対して、認証されるべきログイン情報を送信しなければならない。しかしながら、ログイン情報は、ログイン情報が悪の手にわたるならクライアントコンピュータ側でネットワークを破るために使用される可能性がある機密情報を含み得る。更に、現存するリモートアクセスの解決法は、一度クライアントコンピュータが認証されるならば、管理者権限(すなわち、最も高いレベルのアクセス権)をクライアントコンピュータに与え、それは、クライアントコンピュータが、ターゲットコンピュータ上で、あらゆる命令を実行するか、もしくはあらゆるタスクを実行することができることを意味し、それによって、もし意図していない命令が実行される場合、ターゲットコンピュータに悪影響を与える危険、もしくは、もしクライアントコンピュータが認証プロセスを通して破られる場合、ターゲットコンピュータが乗っ取られる危険を増大させる。必要とされるのは、更に安全なリモートコンピュータのアクセス及び制御の解決法である。
【課題を解決するための手段】
【0005】
従って、本発明は、関連技術の制限及び欠点に起因する1つ以上の問題を大幅に取り除く、安全なリモートコンピュータのタスク自動化のためのシステム及び方法を対象にする。
【0006】
本発明の目的は、クライアントコンピュータからのターゲットコンピュータの安全なリモートアクセス、制御、及び監視のためのシステム及び方法、を提供することである。
【0007】
本発明の別の目的は、リモートアクセス及び制御の第三者による認証と許可を使用した、クライアントコンピュータからのターゲットコンピュータの安全なリモートアクセス、制御、及び監視のためのシステム及び方法、を提供することである。
【0008】
本発明の更にもう一つの目的は、アクセスの細分性(granularity)のレベルを変えることを用いた、クライアントコンピュータからのターゲットコンピュータの安全なリモートアクセス、制御、及び監視のためのシステム及び方法、を提供することである。
【0009】
本発明の追加の機能及び利点は、以下の記述において説明されることになると共に、一つには記述から明白になるか、あるいは本発明の実践によって学ばれ得る。本発明の目的、及び他の利点は、添付された図面と同様に、この明細書及び特許請求の範囲において特に指摘された構造によって、実現されると共に、達成されることになる。
【0010】
前述の概要と、以下の詳細な説明及び図面との両方が、代表的でかつ説明のためのものであると共に、請求項に記載された本発明の更なる説明を提供することを意図しているということが、理解されるべきである。
【図面の簡単な説明】
【0011】
【図1】本発明の代表的な実施例のシステム図である。
【図2A】本発明による代表的な処理フローの図である。
【図2B】本発明による代表的な処理フローの図である。
【図2C】本発明による代表的な処理フローの図である。
【発明を実施するための形態】
【0012】
本発明の更なる理解を提供するために含まれ、そして、この明細書の一部に組み込まれると共に、この明細書の一部を構成する添付図面は、本発明の実施例を例証すると共に、説明と共に本発明の原理を説明するのに役立つ。
【0013】
ここから、その例が添付図面において例証される本発明の実施例に対する言及が詳細に行われることになる。
【0014】
図1は、本発明の代表的な実施例を例証する。図1に示されるように、安全なリモートコンピュータのタスク自動化のためのシステム及び方法は、クライアントコンピュータ102、ターゲットコンピュータ103a及び103b、第三者機関104、そしてアクセス制御モジュール105を備える。通信ネットワーク101は、これらの構成要素の各々の間の通信を容易にすると共に、クライアントコンピュータのネットワーク、ターゲットコンピュータのネットワーク、または第三者機関のネットワークを含み得る。
【0015】
通信ネットワーク101は、ローカルエリアネットワーク(LAN)、広域ネットワーク(WAN)、インターネットのような分散型ネットワーク、またはあらゆる他の通信媒体(例えば2地点間接続)であり得る。通信ネットワークは、有線あり得るか、または無線であり得る。
【0016】
クライアントコンピュータ102とターゲットコンピュータ103a及び103bは、例えば、デスクトップコンピュータ、ノート型パソコン、ワークステーション、または通信ネットワーク101と接続された他の計算装置のような独立型装置であり得るか、あるいは、例えば計算ネットワークのサーバまたはメインフレームとして機能する計算装置であり得る。クライアントコンピュータ102とターゲットコンピュータ103a及び103bは、それらの認証情報及び通信チャンネルを保護するためのそれら自身の自衛方式を持ち得る。
【0017】
第三者機関104は、クライアントコンピュータ102とターゲットコンピュータ103a及び103bの外部にある個別の計算装置であり得るか、またはいずれかの装置の内部のサービスであり得る。もし第三者機関104が外部の計算装置上で実施されるならば、第三者機関104は、本発明の範囲からはずれることなく、クライアントコンピュータのネットワーク及び/またはターゲットコンピュータのネットワークの外部にあり得る。
【0018】
第三者機関104は、クライアントコンピュータ102とターゲットコンピュータ103a及び103bと比較して、強化された安全性を有し得ると共に、これらの構成要素は、第三者機関104と同じくらいには信頼されないかもしれない。代表的な実施例において、第三者機関104は、クライアントコンピュータ102とターゲットコンピュータ103a及び103bとの間で交換されるアクセストークンを割り当てることを含んで、クライアントコンピュータ102とターゲットコンピュータ103a及び103bとの間の情報のやり取り(対話)を制御するために使用され得る。この場合、もし図1に示された構成要素の内のいずれかに障害が起きたならば、かなり危険な状況になる。
【0019】
アクセス制御モジュール105は、同様に、個別の計算装置として、もしくはクライアントコンピュータ102、ターゲットコンピュータ103、または第三者機関104の内のいずれか1つにおけるサービスとして実施され得る。例えば、アクセス制御モジュール105は、ターゲットコンピュータ103a及び103b上で動作している命令のSTD−IN、STD−OUT、及びSTD−ERRにそれ自身を結び付ける、ターゲットコンピュータ103a及び103b上のマルチスレッドのサービスとして動作し得る。更に、アクセス制御モジュール105は、クライアントコンピュータのネットワーク101、ターゲットコンピュータのネットワーク101、または第三者機関のネットワーク101の一部であり得る。
【0020】
アクセス制御モジュール105は、あるクライアントコンピュータ102のリクエストが終了ストリングを生成せず、従ってそれがターゲットコンピュータ103a及び103b上の永久に封鎖されたスレッドまたは処理につながるかもしれないので、それ自身の読み取り障害回避システム(read-block avoidance system)を持ち得る。アクセス制御モジュール105は、個別のスレッドにおいてバッファされた読み取りを実行し得ると共に、その後クライアントコンピュータ102に、手動でタイムアウトを指定することを要求し得る。そのスレッドは、継続的に、指定されたストリームから読み込もうと試み得る。
【0021】
図2Aから図2Bは、本発明による代表的な処理フローを例証する。例えば、ここで説明されたリモートアクセス、制御、及び監視は、クライアントコンピュータ102上のユーザによって手動で開始され得るか、もしくは、例えばシステムの保守を行うために、自動化され得る。
【0022】
本発明に従って、クライアントコンピュータは、安全な通信チャンネルを確立する。例えば、安全な通信チャンネルは、通信ネットワーク101を介して確立され得る。ステップ201において、ターゲットコンピュータ103a及び103bに対するアクセス許可を獲得するために、クライアントコンピュータ102は、クライアントコンピュータ102と第三者機関104との間で確立された安全な通信チャンネルを通して、第三者機関104に認証情報及びアクセス要求を送信する。認証情報は、ユーザ及び/またはクライアントコンピュータ102の識別情報、パスワード、及び/または、あらゆる追加の認証データ(例えば、PIN、安全な鍵(secure key)等)を含み得る。アクセス要求は、ターゲットコンピュータ103a及び103bの識別情報(例えばコンピュータ名、IPアドレス等)と、例えばターゲットコンピュータ103a及び103b上で実行されるべき指示、複数の指示、プログラム、または命令、あるいはターゲットコンピュータ103a及び103b上で実行されるべきタスクのような、アクセスの本来の目的とを含み得る。アクセス要求は、更に、アクセストークンに関する要求を含み得る。第三者機関104に送信される認証情報及びアクセス要求は、暗号化され得る。代表的な実施例において、第三者機関104にアクセス要求及び認証情報が送信される前に、クライアントコンピュータ102は、要求の書式設定が正しいかどうかを判定するために、誤り検査を実行し得る。
【0023】
ステップ202において、第三者機関104は、クライアントコンピュータ102がターゲットコンピュータ103a及び103bにアクセスする権利を有しているかどうかを判定するために、クライアントコンピュータ102の識別情報を照合するように認証情報を処理する。もしその認証に失敗するならば、クライアントコンピュータ102は、ターゲットコンピュータ103a及び103bに対するアクセスを拒絶される。
【0024】
ステップ203において、もしその認証に合格するならば、クライアントコンピュータ102がアクセス要求において指定された意図したタスクを実行する権利を有するかどうかを判定するために、アクセス要求が処理される。例えば、もしその要求がターゲットコンピュータ103a及び103b上で命令を実行することであるならば、第三者機関104は、クライアントコンピュータ102がターゲットコンピュータ103a及び103b上で意図した命令を実行することを許されるかどうかを分析する。第三者機関104は、アクセス要求に関して、誤り検査を実行し得る。例えば、第三者機関104は、構文の妥当性について、アクセス要求を検査し得る。更に、第三者機関104は、クライアントコンピュータ102がターゲットコンピュータ103a及び103bにアクセスすることを許可するかどうかを判定するために、例えばクライアントコンピュータ102の名前、アクセス要求の発生ポイント、及びアクセス制御リストにおける規則に匹敵するターゲットコンピュータ103a及び103bのような、要求における細目を使用し得る。アクセス制御リストにおける規則は、例えば装置/ターゲットコンピュータ103a及び103bに特有の規則、命令に特有の規則、及びクライアントコンピュータ102に特有の規則のように、特定の順番で適用され得る。
【0025】
もしアクセス要求の検査に失敗するならば、クライアントコンピュータ102は、ターゲットコンピュータ103a及び103bに対するアクセスを拒絶される。ステップ204において、もしアクセス要求の検査に合格するならば、第三者機関104は、アクセストークンをクライアントコンピュータ102に送信することによって、アクセスを許可する。アクセストークンは、時間−消滅トークンであり得る(すなわち、トークンの正当性は、設定時間が経つにつれて低下する)。アクセストークンは、クライアントコンピュータ102がタスクを実行するためにターゲットコンピュータ103a及び103bにアクセスすることを許可し得る。アクセストークンは、ターゲットコンピュータ103a及び103b上で実行されるべきタスク(例えば、命令、指示、プログラム)を含むアクセスキーを有する。
【0026】
クライアントコンピュータ102が第三者機関104からアクセストークンを受信する場合、クライアントコンピュータ102は、ターゲットコンピュータ103a及び103bと安全な通信チャンネルを確立する。通信チャンネルが確立される場合、ターゲットコンピュータ103a及び103bは、アクセス制御モジュール105を含み得る。ステップ205において、クライアントコンピュータ102は、ターゲットコンピュータ103a及び103bにアクセストークンを送信する。
【0027】
代表的な実施例において、ターゲットコンピュータ103a及び103bが第三者機関104にアクセストークンを送信する前に、ターゲットコンピュータ103a及び103bは、要求に関して、例えばそれが正しく書式設定されているかどうかを判定するために、誤り検査を実行し得る。このタイプの前処理は、第三者機関104がリソースを不適切に書式設定されたアクセストークンまたは要求に消費することを防止することによって、第三者機関104に関する作業負荷を減少させるのに役立ち得る。
【0028】
ターゲットコンピュータ103a及び103bがアクセストークンを受信する場合に、ターゲットコンピュータ103a及び103bは、第三者機関104と安全な通信チャンネルを確立する。ステップ206において、通信チャンネルが確立される場合、ターゲットコンピュータ103a及び103bは、妥当性確認のために受信されたアクセストークンを第三者機関104に送信する。例えば、オリジナルのIPアドレス、アクセストークン、及びターゲットコンピュータ103a及び103b上で実行されるべき命令のダイアログ(問答:dialog)または指示が、第三者機関104に送信される。
【0029】
第三者機関104によって実行される妥当性確認処理は、いくらかのステップを含み得る。例えば、第三者機関104は、第三者機関104に送信されるクライアントコンピュータ102のアクセストークン及び/またはオリジナルの要求が、アクセストークンもしくはオリジナルの要求を処理する前に、認証情報を含むかどうかを検査し得る。第三者機関104は、構文の妥当性について、アクセストークン及び/またはオリジナルの要求を検査し得る。第三者機関104は、オリジナルの要求が許可されるべきでるかどうかを判定するために、クライアントコンピュータ102からのオリジナルの要求の細目、アクセストークン、オリジナルの要求及び/またはアクセストークンの発生ポイント、そしてターゲットコンピュータ103a及び103bを使用し得る。アクセストークンが、ターゲットコンピュータ及びクライアントコンピュータに割り当てられ得ると共に、実行されるべき命令または指示を含むので、この情報は、オリジナルの要求の正当性を立証するために、アクセストークンと共に使用され得る。
【0030】
もしアクセストークンがクライアントコンピュータ102からのオリジナルの要求と照合され得ないならば、第三者機関104は、ターゲットコンピュータ103a及び103bが、トークンに含まれる要求されたタスク、または指示及び命令を実行することを許可しない。従って、ターゲットコンピュータ103a及び103bは、アクセスを拒否すると共に、クライアントコンピュータ102との接続を切断する。例えば、オリジナルの要求が生じたクライアントコンピュータ102のIPアドレスは、安全なリストと突き合わされ得ると共に、もしクライアントコンピュータ102がリストにないならば、クライアントコンピュータ102は、アクセスを拒絶され得る。ステップ207において、もしそのトークンの正当性が立証されるならば、第三者機関104は、ターゲットコンピュータ103a及び103bが要求されたタスクを処理することを許可する。
【0031】
ステップ208において、ターゲットコンピュータ103a及び103bが、要求されたタスクを実行することを、例えば第三者機関104によって許可される場合、ターゲットコンピュータ103a及び103bは、要求されたタスクを実行するのに必要とされるアクセスの最も低いレベルを判定するように、要求されたタスクを処理する。例えば、ターゲットコンピュータ103a及び103b上で実行されるべき要求された命令は、要求された命令を実行するのに必要とされるアクセスの最も低いレベル(例えば、管理者レベル、ユーザレベル、ゲストレベル等)を判定するために、命令のテーブルと照合される。アクセスレベルは、規則として、もしくは参照テーブルとして定義され得ると共に、必要に応じて修正され得る。代替の実施例において、第三者機関104は、要求されたタスクを実行するのに必要とされるアクセスの最も低いレベルを判定し得ると共に、アクセストークン妥当性確認ステージの間に、クライアントコンピュータ102に与えるために、ターゲットコンピュータ103a及び103bに対して、アクセスの適切なレベルを送信し得る。
【0032】
ステップ209及び210において、一度第三者機関104が要求されたタスクを実行する許可を与えると、ターゲットコンピュータ103a及び103bは、要求されたタスクを実行するためのスレッドを発生させると共に、クライアントコンピュータ102に対して、要求されたタスクを実行するのに必要とされるアクセスの最も低いレベルにおけるアクセスを許可する。ターゲットコンピュータ103a及び103b上で実行される命令は、診断の情報を集め得ると共に、ターゲットコンピュータ103a及び103bに関する問題点を訂正するか、またはターゲットコンピュータ103a及び103b上のアラームの妥当性を確認する。例えば、もしアラームが、ターゲットコンピュータ103a及び103bがサービスの失敗(service fail)のイベントログを持っていたと明示するならば、その場合に、アクセス制御モジュール105、またはターゲットコンピュータ103a及び103bは、ターゲットコンピュータ103a及び103b上で、再起動サービス命令を安全に実行し得る。
【0033】
ステップ211において、クライアントコンピュータ102は、要求されたタスクの実行の間、予期しない問題(problem)または問題点(issue)が検出されないことを保証するために、ターゲットコンピュータ103a及び103bを監視する。例えば、メモリ、同時接続、接続速度、及び/またはプロセッサ利用度が、要求されたタスクの実行がターゲットコンピュータ103a及び103bに対する予期しない影響、もしくは不都合な影響を引き起こしているかどうかを判定するために、グラフィカルインタフェース(例えば、タイムチャート)上で監視され得る。もし問題(長期間の処理、エラー、予期しない周囲のアクティビティ等)が検出されるならば、クライアントコンピュータ102は、その場合に、ターゲットコンピュータ103a及び103bを保護するために、問題を修正するか、及びまたはタスクを打ち切る機会を有し得る。もし要求されたタスクがプロセッサ及び/またはメモリに集約的であるならば、クライアントコンピュータ102は、ターゲットコンピュータ103a及び103bのリソース使用度を監視すると共に、同じクライアントコンピュータからであれ、または異なるクライアントコンピュータからであれ、次のタスク要求が待ち行列において保持されることを要求する。ターゲットコンピュータ103a及び103bは、もしクライアントコンピュータの監視が非常に多くのリソースを使用しているならば、要求を切り捨て得る。
【0034】
発生したスレッドがターゲットコンピュータ103a及び103bをハングアップさせる原因とならないことを保証するために、クライアントコンピュータ102は、“タイムアウト(time out:時間切れ)”の特徴をまねるために、データストリームを監視する。例えば、ターゲットコンピュータ103a及び103bからのデータストリームは、要求されたタスクが始まったという合図をデータストリームが含むかどうかを判定するために、監視される。もしそのようなデータが設定時間を通して検出されないならば、要求されたタスクは、ターゲットコンピュータ103a及び103bが、処理されることのない要求によってあまりにも長く占有されることを防止するために、あるいは待ち行列において他のクライアント装置を不必要に保持することを防止するために、例えばクライアントコンピュータ102によって打ち切られる。
【0035】
ステップ212において、一度要求されたタスクが処理されたならば、肯定応答が、要求されたタスクが完了したことを示すために、クライアントコンピュータ102に送信されると共に、その場合に、クライアントコンピュータ102とターゲットコンピュータ103a及び103bとの間の通信は終了される。
【0036】
代表的な実施例において、本発明の方法及びシステムは、XMLを用いて実行される。他のプログラミング言語が、本発明の範囲からはずれずに使用され得る。XML要求の図式(schema)が、クライアントコンピュータ102と第三者機関104との間の通信に使用され得る。要求の“type”が、“issueToken(トークン送信)”に設定され得るので、第三者機関104は何を要求されているのかが分かる。ターゲットコンピュータ103a及び103bのホストネームが、同様に定義される。ターゲットコンピュータ103a及び103b上で実行されるであろうダイアログ(すなわち、指示、命令、プログラム)が、同様に提供される。
【0037】
【数1】

【0038】
XML要求の図式が、クライアントコンピュータ102と、アクセス制御モジュール105との間、またはターゲットコンピュータ103a及び103bとの間の通信に使用され得る。要求は、それが動作するのに必要とするであろう全体の時間に従って始まり得る。
【0039】
【数2】

【0040】
認証情報ノードは、アクセストークンを含み得る。例えば、4つの“*”は、第三者機関104が提供するアクセストークンを要求するように、クライアントコンピュータ102に指示し得る。
【0041】
【数3】

【0042】
クライアントコンピュータ102と、アクセス制御モジュール105との間、またはターゲットコンピュータ103a及び103bとの間のダイアログの例は、XMLを用いて実施され得る。
【0043】
【数4】

【0044】
“type”の“constructor”は、命令の性質のことを指していると共に、呼び出された処理を発生させる命令であり得る。“type”には、同様に、“normal”、“observe”、もしくは“destructor”があり得る。“CMD. exe”は、他の命令を実行するために使用され得る。“Timeout”は、出力を調べて、次の項目を実行する前に待つための秒数のことを指している。“FailOnTimeout”は、もし時間切れであるならば、またはもしその処理が中止されるべきであるならば、その操作が続くべきであるかどうかについて言及する。“Prompt”は、出力の終りの終了文字列のことを指している。これは、出力の終りにあることを必要とされ得る。
【0045】
“CMD. exe”処理は、“psinfo.exe”のような別の命令を実行するために使用され得る。
【0046】
【数5】

【0047】
クライアントコンピュータ102は、その場合に、ターゲットコンピュータ103a及び103bから切り離される。例えば、“exit”は、“cmd.exe”の標準入力(Standard In)に送信され得ると共に、これは“CMD”を終了させることになる。第2の例において、もしクライアントコンピュータ102が切り離されないならば、または、もしこの命令が機能しないならば、処理はダイアログの最後に到達したときに中止される。
【0048】
【数6】

【0049】
代表的な実施例において、第三者機関104によりメッセージを記録するか、もしくはクライアントコンピュータ102によって行われた要求の正当性を立証するために、様々なXML要求が、ターゲットコンピュータ103a及び103b、またはアクセス制御モジュール105によって行われ得る。例えば、以下の要求が、第三者機関104によりメッセージを記録するために使用され得る。
【0050】
【数7】

【0051】
別の例において、以下の要求が、第三者機関104により要求の正当性を立証するために使用され得る。
【0052】
【数8】

【0053】
その“type”は、妥当性確認要求の“type”のことを指している。“target”は、ターゲットコンピュータ103a及び103bのホストネームか、またはアクセス制御モジュール105が動作しているターゲットコンピュータ103a及び103bのホストネームのことを指している。“Source”は、その要求が生じたIPアドレスのことを指している。“Constructor”は、ダイアログにおいてコンストラクター(constructor)として記録される命令のことを指している。“Token”は、クライアントコンピュータ102が要求に対して提示しているアクセストークンのことを指している。
【0054】
要求に基づいてアクセス制御モジュール105またはターゲットコンピュータ103a及び103bが実行し得るダイアログまたは指示の例は、以下のようになる。
【0055】
【数9】

【0056】
代表的な実施例において、ターゲットコンピュータ103a及び103b、またはアクセス制御モジュール105は、結果をクライアントコンピュータ102に送信し得る。下記の通り、例えば、結果のXMLは、例えば端点(endpoint)、安全性のレベル、及び認証結果のような、接続に関する情報で始まり得る。
【0057】
【数10】

【0058】
リソース使用度に関する測定基準を含む、要求の結果に関する情報は、ターゲットコンピュータ103a及び103b、またはアクセス制御モジュール105によって、クライアントコンピュータ102に提供され得る。要求における各ステップは、以下に示すように、XML応答のサブツリーに該当箇所を持ち得る。
【0059】
【数11】

【0060】
命令及び引数は、結果がクライアントコンピュータ102が実行した命令に関するものであるという確認を提供するために、言い換えられ得る。“DidTimeout”は、時間切れ以前にクライアントコンピュータに指定された“prompt”に到達したかどうかを示し得る。
【0061】
【数12】

【数13】

【0062】
ターゲットコンピュータ103a及び103b、またはアクセス制御モジュール105との間の対話の終りに、標準誤差の内容が、下記の通り検索され得る。
【0063】
【数14】

【0064】
本発明の安全なリモートコンピュータのタスク自動化のためのシステム及び方法おいて、本発明の精神または範囲からはずれることなく、様々な修正及び変形が実行され得るということが、当業者にとって明白であろう。従って、それらが添付された請求項、及びそれらの等価物の範囲内に来る限り、本発明がこの発明の修正及び変形をカバーするということが望まれる。
【符号の説明】
【0065】
101 通信ネットワーク
102 クライアントコンピュータ
103a ターゲットコンピュータ
103b ターゲットコンピュータ
104 第三者機関
105 アクセス制御モジュール

【特許請求の範囲】
【請求項1】
認証情報とアクセス要求を含む、クライアントコンピュータからの要求を、第三者機関において受信する段階と、
前記認証情報に基づいて前記クライアントコンピュータを認証する段階と、
前記クライアントコンピュータに対して、ターゲットコンピュータ上でタスクを実行するのに前記ターゲットコンピュータに対するアクセスを許可するために、前記タスクを含む前記アクセス要求を処理する段階と、
前記タスクを実行するのに前記ターゲットコンピュータにアクセスするためのアクセストークンを前記クライアントコンピュータに送信する段階と、
妥当性確認のために前記ターゲットコンピュータから前記アクセストークンを受信する段階と、
前記タスクを処理するように、前記ターゲットコンピュータに対する前記要求に基づいて、受信された前記アクセストークンの正当性を立証する段階と
を含むことを特徴とする方法。
【請求項2】
前記アクセス要求が、前記ターゲットコンピュータの識別情報と、前記タスクを処理するために前記ターゲットコンピュータ上で実行されるべき命令とを含む
ことを特徴とする請求項1に記載の方法。
【請求項3】
前記要求が、安全な通信チャンネルを介して送信される
ことを特徴とする請求項1に記載の方法。
【請求項4】
前記アクセストークンが、時間−消滅トークンである
ことを特徴とする請求項1に記載の方法。
【請求項5】
前記クライアントコンピュータが前記タスクを実行するために前記ターゲットコンピュータにアクセスするのに適したアクセスの最も低いレベルを判定する段階を更に含む
ことを特徴とする請求項1に記載の方法。
【請求項6】
クライアントコンピュータから第三者機関に対して、認証情報とアクセス要求を含む要求を送信する段階と、
前記クライアントコンピュータにおいて、前記第三者機関からアクセストークンを受信する段階と、
前記クライアントコンピュータからターゲットコンピュータに対して、前記アクセストークンを送信する段階と、
前記ターゲットコンピュータ上でタスクを実行するために、前記ターゲットコンピュータにアクセスする段階と
を含むことを特徴とする方法。
【請求項7】
前記要求が、安全な通信チャンネルを介して送信される
ことを特徴とする請求項6に記載の方法。
【請求項8】
前記アクセス要求が、前記ターゲットコンピュータの識別情報と、前記タスクを処理するために前記ターゲットコンピュータ上で実行されるべき命令とを含む
ことを特徴とする請求項6に記載の方法。
【請求項9】
前記タスクを実行する間問題点について監視する段階を更に含む
ことを特徴とする請求項6に記載の方法。
【請求項10】
タイムアウトが発生したかどうかを判定するために監視する段階を更に含む
ことを特徴とする請求項6に記載の方法。
【請求項11】
前記問題点を修正する段階を更に含む
ことを特徴とする請求項9に記載の方法。
【請求項12】
もし前記問題点がターゲットコンピュータ上で検出されるならば前記タスクを打ち切る段階を更に含む
ことを特徴とする請求項9に記載の方法。
【請求項13】
前記ターゲットコンピュータにアクセスする前記段階が、前記タスクを実行するために、判定されたアクセスの最も低いレベルで前記ターゲットコンピュータにアクセスする段階を更に含む
ことを特徴とする請求項6に記載の方法。
【請求項14】
ターゲットコンピュータにおいてアクセストークンを受信する段階と、
妥当性確認のために第三者機関に前記アクセストークンを送信する段階と、
タスクを処理するように、前記第三者機関から確証を受信する段階と、
前記タスクを処理する段階と、
クライアントコンピュータに対して、前記タスクを実行するのに前記ターゲットコンピュータに対するアクセスを許可する段階と、
前記ターゲットコンピュータ上で前記タスクを処理するためのスレッドを発生させる段階と、
前記タスクの状態を示す肯定応答を前記クライアントコンピュータに送信する段階と
を含むことを特徴とする方法。
【請求項15】
前記アクセストークンを受信した後で前記第三者機関と安全な通信チャンネルを確立する段階を更に含む
ことを特徴とする請求項14に記載の方法。
【請求項16】
前記タスクを実行するのに必要とされるアクセスの最も低いレベルを判定する段階を更に含む
ことを特徴とする請求項14に記載の方法。
【請求項17】
前記タスクを実行するのに必要とされる前記アクセスの最も低いレベルを判定するために前記タスクをタスクのテーブルと比較する段階を更に含む
ことを特徴とする請求項16に記載の方法。
【請求項18】
前記クライアントコンピュータに対してアクセスを許可する段階が、前記クライアントコンピュータに対して、判定されたアクセスの最も低いレベルにおけるアクセスを許可する段階を含む
ことを特徴とする請求項16に記載の方法。
【請求項19】
コンピュータが実行可能な命令をその上に格納したコンピュータ読み取り可能な媒体を含むコンピュータプログラム製品であって、コンピュータによって実行された場合に前記命令が、前記コンピュータに、
認証情報とアクセス要求を含む、クライアントコンピュータからの要求を受信する段階と、
前記認証情報に基づいて前記クライアントコンピュータを認証する段階と、
前記クライアントコンピュータに対して、ターゲットコンピュータ上でタスクを実行するのに前記ターゲットコンピュータに対するアクセスを許可するために、前記タスクを含む前記アクセス要求を処理する段階と、
前記タスクを実行するのに前記ターゲットコンピュータにアクセスするためのアクセストークンを前記クライアントコンピュータに送信する段階と、
妥当性確認のために前記ターゲットコンピュータから前記アクセストークンを受信する段階と、
前記タスクを処理するように、前記ターゲットコンピュータに対する前記要求に基づいて、受信された前記アクセストークンの正当性を立証する段階と
を実行するように指示することを特徴とするコンピュータプログラム製品。
【請求項20】
前記アクセス要求が、前記ターゲットコンピュータの識別情報と、前記タスクを処理するために前記ターゲットコンピュータ上で実行されるべき命令とを含む
ことを特徴とする請求項19に記載のコンピュータプログラム製品。
【請求項21】
前記要求が、安全な通信チャンネルを介して送信される
ことを特徴とする請求項19に記載のコンピュータプログラム製品。
【請求項22】
前記アクセストークンが、時間−消滅トークンである
ことを特徴とする請求項19に記載のコンピュータプログラム製品。
【請求項23】
前記コンピュータによって実行された場合に、前記クライアントコンピュータが前記タスクを実行するために前記ターゲットコンピュータにアクセスするのに適したアクセスの最も低いレベルを判定する段階を実行するように前記コンピュータを設定する、コンピュータが実行可能な命令を更に含む
ことを特徴とする請求項19に記載のコンピュータプログラム製品。
【請求項24】
コンピュータが実行可能な命令をその上に格納したコンピュータ読み取り可能な媒体を含むコンピュータプログラム製品であって、コンピュータによって実行された場合に前記命令が、前記コンピュータに、
第三者機関に対して、認証情報とアクセス要求を含む要求を送信する段階と、
前記第三者機関からアクセストークンを受信する段階と、
ターゲットコンピュータに対して、前記アクセストークンを送信する段階と、
前記ターゲットコンピュータ上でタスクを実行するために、前記ターゲットコンピュータにアクセスする段階と
を実行するように指示することを特徴とするコンピュータプログラム製品。
【請求項25】
前記要求が、安全な通信チャンネルを介して送信される
ことを特徴とする請求項24に記載のコンピュータプログラム製品。
【請求項26】
前記アクセス要求が、前記ターゲットコンピュータの識別情報と、前記タスクを処理するために前記ターゲットコンピュータ上で実行されるべき命令とを含む
ことを特徴とする請求項24に記載のコンピュータプログラム製品。
【請求項27】
前記コンピュータによって実行された場合に、前記タスクを実行する間問題点について監視する段階を実行するように前記コンピュータを設定する、コンピュータが実行可能な命令を更に含む
ことを特徴とする請求項24に記載のコンピュータプログラム製品。
【請求項28】
前記コンピュータによって実行された場合に、タイムアウトが発生したかどうかを判定するために監視する段階を実行するように前記コンピュータを設定する、コンピュータが実行可能な命令を更に含む
ことを特徴とする請求項24に記載のコンピュータプログラム製品。
【請求項29】
前記コンピュータによって実行された場合に、前記問題点を修正する段階を実行するように前記コンピュータを設定する、コンピュータが実行可能な命令を更に含む
ことを特徴とする請求項27に記載のコンピュータプログラム製品。
【請求項30】
前記コンピュータによって実行された場合に、もし前記問題点がターゲットコンピュータ上で検出されるならば前記タスクを打ち切る段階を実行するように前記コンピュータを設定する、コンピュータが実行可能な命令を更に含む
ことを特徴とする請求項27に記載のコンピュータプログラム製品。
【請求項31】
前記コンピュータによって実行された場合に、前記タスクを実行するために、判定されたアクセスの最も低いレベルで前記ターゲットコンピュータにアクセスする段階を実行するように前記コンピュータを設定する、コンピュータが実行可能な命令を更に含む
ことを特徴とする請求項24に記載のコンピュータプログラム製品。
【請求項32】
コンピュータが実行可能な命令をその上に格納したコンピュータ読み取り可能な媒体を含むコンピュータプログラム製品であって、コンピュータによって実行された場合に前記命令が、前記コンピュータに、
アクセストークンを受信する段階と、
妥当性確認のために第三者機関に前記アクセストークンを送信する段階と、
タスクを処理するように、前記第三者機関から確証を受信する段階と、
前記タスクを処理する段階と、
前記クライアントコンピュータに対して、前記タスクを実行するのに前記コンピュータに対するアクセスを許可する段階と、
前記コンピュータ上で前記タスクを処理するためのスレッドを発生させる段階と、
前記タスクの状態を示す肯定応答を前記クライアントコンピュータに送信する段階と
を実行するように指示することを特徴とするコンピュータプログラム製品。
【請求項33】
前記コンピュータによって実行された場合に、前記アクセストークンを受信した後で前記第三者機関と安全な通信チャンネルを確立する段階を実行するように前記コンピュータを設定する、コンピュータが実行可能な命令を更に含む
ことを特徴とする請求項32に記載のコンピュータプログラム製品。
【請求項34】
前記コンピュータによって実行された場合に、前記タスクを実行するのに必要とされるアクセスの最も低いレベルを判定する段階を実行するように前記コンピュータを設定する、コンピュータが実行可能な命令を更に含む
ことを特徴とする請求項32に記載のコンピュータプログラム製品。
【請求項35】
前記コンピュータによって実行された場合に、前記タスクを実行するのに必要とされる前記アクセスの最も低いレベルを判定するために前記タスクをタスクのテーブルと比較する段階を実行するように前記コンピュータを設定する、コンピュータが実行可能な命令を更に含む
ことを特徴とする請求項34に記載のコンピュータプログラム製品。
【請求項36】
前記クライアントコンピュータに対してアクセスを許可する段階が、前記クライアントコンピュータに対して、判定されたアクセスの最も低いレベルにおけるアクセスを許可する段階を含む
ことを特徴とする請求項34に記載のコンピュータプログラム製品。
【請求項37】
クライアントコンピュータ及びターゲットコンピュータと通信状態にある第三者機関を備え、
前記第三者機関が、
認証情報とアクセス要求を含む要求を前記クライアントコンピュータから受信し、
前記認証情報に基づいて前記クライアントコンピュータを認証し、
前記クライアントコンピュータに対して、前記ターゲットコンピュータ上でタスクを実行するのに前記ターゲットコンピュータに対するアクセスを許可するために、前記タスクを含む前記アクセス要求を処理し、
前記タスクを実行するのに前記ターゲットコンピュータにアクセスするためのアクセストークンを前記クライアントコンピュータに送信し、
妥当性確認のために前記ターゲットコンピュータから前記アクセストークンを受信し、
前記タスクを処理するように、前記ターゲットコンピュータに対する前記要求に基づいて、受信された前記アクセストークンの正当性を立証するように構成される
ことを特徴とするシステム。
【請求項38】
前記アクセス要求が、前記ターゲットコンピュータの識別情報と、前記タスクを処理するために前記ターゲットコンピュータ上で実行されるべき命令とを含む
ことを特徴とする請求項37に記載のシステム。
【請求項39】
前記アクセストークンが、時間−消滅トークンである
ことを特徴とする請求項37に記載のシステム。
【請求項40】
前記ターゲットコンピュータが、前記クライアントコンピュータが前記タスクを実行するために前記ターゲットコンピュータにアクセスするのに適したアクセスの最も低いレベルを判定するするように、更に構成される
ことを特徴とする請求項37に記載のシステム。
【請求項41】
第三者機関及びターゲットコンピュータと通信状態にあるクライアントコンピュータを備え、
前記クライアントコンピュータが、
第三者機関に対して、認証情報とアクセス要求を含む要求を送信し、
前記第三者機関からアクセストークンを受信し、
前記ターゲットコンピュータに対して、前記アクセストークンを送信し、
前記ターゲットコンピュータ上でタスクを実行するために、前記ターゲットコンピュータにアクセスするように構成される
ことを特徴とするシステム。
【請求項42】
前記アクセス要求が、前記ターゲットコンピュータの識別情報と、前記タスクを処理するために前記ターゲットコンピュータ上で実行されるべき命令とを含む
ことを特徴とする請求項41に記載のシステム。
【請求項43】
前記クライアントコンピュータが、前記タスクを実行する間問題点について監視するように更に構成される
ことを特徴とする請求項41に記載のシステム。
【請求項44】
前記クライアントコンピュータが、タイムアウトが発生したかどうかを判定するために監視するように更に構成される
ことを特徴とする請求項41に記載のシステム。
【請求項45】
前記クライアントコンピュータが、前記問題点を修正するように更に構成される
ことを特徴とする請求項43に記載のシステム。
【請求項46】
前記クライアントコンピュータが、もし前記問題点がターゲットコンピュータ上で検出されるならば前記タスクを打ち切るように更に構成される
ことを特徴とする請求項43に記載のシステム。
【請求項47】
前記クライアントコンピュータが、前記タスクを実行するために、判定されたアクセスの最も低いレベルで前記ターゲットコンピュータにアクセスするように更に構成される
ことを特徴とする請求項41に記載のシステム。
【請求項48】
第三者機関及びクライアントコンピュータと通信状態にあるターゲットコンピュータを備え、
前記ターゲットコンピュータが、
アクセストークンを受信し、
妥当性確認のために第三者機関に前記アクセストークンを送信し、
タスクを処理するように、前記第三者機関から確証を受信し、
前記タスクを処理し、
前記クライアントコンピュータに対して、前記タスクを実行するためのアクセスを許可し、
前記タスクを処理するためのスレッドを発生させ、
前記タスクの状態を示す肯定応答を前記クライアントコンピュータに送信するように構成される
ことを特徴とするシステム。
【請求項49】
前記ターゲットコンピュータが、前記タスクを実行するのに必要とされるアクセスの最も低いレベルを判定するように更に構成される
ことを特徴とする請求項48に記載のシステム。
【請求項50】
前記ターゲットコンピュータが、前記タスクを実行するのに必要とされる前記アクセスの最も低いレベルを判定するために前記タスクをタスクのテーブルと比較するように更に構成される
ことを特徴とする請求項49に記載のシステム。
【請求項51】
前記ターゲットコンピュータが、前記クライアントコンピュータに対して、判定されたアクセスの最も低いレベルにおけるアクセスを許可するように更に構成される
ことを特徴とする請求項49に記載のシステム。

【図2A】
image rotate

【図2B】
image rotate

【図2C】
image rotate

【図1】
image rotate


【公表番号】特表2011−524559(P2011−524559A)
【公表日】平成23年9月1日(2011.9.1)
【国際特許分類】
【出願番号】特願2011−506282(P2011−506282)
【出願日】平成21年4月21日(2009.4.21)
【国際出願番号】PCT/US2009/002449
【国際公開番号】WO2009/131656
【国際公開日】平成21年10月29日(2009.10.29)
【出願人】(508320505)バークレイズ・キャピタル・インコーポレーテッド (15)
【Fターム(参考)】