説明

ネットワークコンテンツファイルへのアクセス提供におけるアクセス制御レベルを割り当てる方法および装置

ネットワークコンテンツファイルへのアクセスを提供する場合のアクセス制御レベルを割当てる方法および装置であり、クライアントノード、収集エージェント、ポリシーエンジンを含む。クライアントノードはリソースへのアクセスを要求する。収集エージェントはクライアントノードについての情報を集める。ポリシーエンジンは集められた情報を受信し、受信情報に対するポリシーの適用に応じて複数のアクセスレベルのうちの1つを割当てる。アプリケーションサーバファームは要求されたファイルのファイルタイプに関連するアプリケーションプログラムを用いて、リソースのコンテンツをクライアントノードに提示し得る。変換サーバはリソースのコンテンツを原型のフォーマットから第2のフォーマットへ変換し、変換されたリソースのコンテンツをクライアントノードに提示する。

【発明の詳細な説明】
【技術分野】
【0001】
(本発明の技術分野)
本発明は、ネットワークリソースに安全にアクセスする方法および装置に関し、特に、サーバからのコンテンツファイルへのアクセスを提供する上での、アクセス制御レベルを割当てる方法および装置に関する。
【背景技術】
【0002】
(本発明の背景)
従来は、リモートのロケーションから抽出されたコンテンツファイルにアクセスするために、クライアントシステム上のユーザは、ウェブブラウザと他のクライアントベースのアプリケーションとの組み合わせを用いてきた。例えば、ユーザは、Washington、RedmondのMicrosoft CorporationのINTERNET EXPLORERを用いてインターネットコンテンツにアクセスし得、そして、ローカルロケーションにダウンロードされたWORDドキュメントのようなデスクトップのプロダクティビティドキュメントタイプにアクセスするために、同じMicrosoft CorporationのWINDOWS(登録商標) EXPLORERを用い得る。
【0003】
従来のプロセスは、見るためおよび操作のために、クライアントノードにファイルをダウンロードすることを要求する。しかしながら、このプロセスは安全の観点からは問題を提示する。クライアントにおいてコンテンツにアクセスするために、ユーザは、不揮発性メモリにコンテンツをローカルにセーブすることを2度要求される。第1のセーブはダウンロードの際に要求され、第2はアップロードプロセスに先立ち編集の後に要求される。さらに、多くの場合、多くのユーザは、ダウンロードされたコンテンツを1つのローカルディレクトリから別のローカルディレクトリへ(例えば、dir://downloaded_filesからdir://my_documentsへ)ムーブおよび/またはコピーする。これらのセーブアクションの各々は、クライアント上にローカルなドキュメントのコピーを生成する。クライアントデバイスのほとんどのユーザは、これらのローカルなドキュメントのコピーを手動でデリートすることを忘れ、従って、それらはクライアントデバイス上に残される。
【0004】
さらに、クライアントデバイスが公共キオスク設定で設置される場合のような状況では、クライアントデバイスのストレージの直接操作は、ユーザにはアクセス不可であり得る。これらのケースにおいては、ローカルコピーをデリートする選択は、ユーザには利用可能ではない。クライアント上に残されたドキュメントは、クライアントマシンにアクセスする認証されていない個人よってアクセスされ得るので、これは大きな安全上の問題を提示する。さらに、パーソナルディジタルアシスタントのようなより小さなデバイスタイプは、該デバイス上でのクライアントベースのアプリケーションの使用を許すだけの十分なリソースを有し得ない。
【0005】
これらの関心事を解決する試みにおいては、従来のアクセス制御の方法は、アクセスを許可する前にクライアントから特別な認証証明を要求し得、不適切なロケーションまたはデバイスからのアクセスを否認し得る。しかしながら、一般的に、従来の方法に対する制限は、アクセス制御決定がリソースへのアクセスの否認か許可のいずれかとなる、ということを要求する。否認の場合には、該方法は何らの代替のアクセス方法を提供し得ない。許可の場合には、該方法はリソースの全面的かつ完全な開示だけを提供し得る。アクセス制御レベルに基づきアクセスの程度を割当てることにより、アクセスを許可する制御の方法が、ネットワーク環境下の所有資源へのアクセスを提供する上で望ましい。
【0006】
さらに、不正なクライアントノードのアクセスから所有データを保護する上で、クライアントデバイスのタイプ、認証証明、および、能力のようなファクター次第で、代替的なファイルアクセス方法を、アクセス権に対して提供することが望ましい。アクセス権の完全な否認に代えて、クライアントに代わり安全なネットワーク上で実行されるファイルに限定されるような権利が望ましい。
【発明の開示】
【課題を解決するための手段】
【0007】
(本発明の概要)
本発明は、サーバからのコンテンツファイルに安全にアクセスする方法と装置に関し、該サーバは、安全性強化、証拠収集、および、複数のアクセスのレベルのうちの1つを割当てることによってアクセス制御を提供するポリシーアプリケーションを、インプリメントする。
【0008】
1つの局面においては、本発明はリソースへのアクセスを許可するシステムおよび方法に関する。クライアントノードはリソースへのアクセスを要求する。収集エージェントはクライアントノードについての情報を集め、ポリシーエンジンは集められた情報を受信する。ポリシーエンジンは、受信した情報に対するポリシーの適用に応じた複数のアクセスレベルのうちの1つを割当てることによって、アクセス制御決定を行う。
【0009】
1つの実施形態においては、ポリシーエンジンは、受信した情報にポリシーを適用することによってアクセス決定を行う。別の実施形態においては、ポリシーエンジンは収集エージェントをクライアントノードに伝送する。
【0010】
別の局面においては、本発明は、リソースへのアクセスを許可する方法および装置に関する。装置は、2つのコンポーネントを含むポリシーエンジンを備える。第1のコンポーネントは、クライアントノードについての情報を受信し、該情報からデータセットを生成する。第2のコンポーネントは、データセットを受信し、該受信データセットに基づきクライアントが利用可能なリソースの列挙を、第1のコンポーネントに提供する。第1のコンポーネントはクライアントノードにリソースの列挙を提示する。
【0011】
1つの実施形態においては、第1のコンポーネントは収集エージェントから情報を受信する。1つの実施形態においては、各コンポーネントはデータベースをさらに備える。第1のコンポーネントのデータベースは条件を格納する。第2のコンポーネントのデータベースはポリシーを格納する。第1のコンポーネントは条件を受信した情報に適用し、第2のコンポーネントはポリシーを受信したデータセットに適用する。別の実施形態においては、第2のコンポーネントは、クライアントノードが利用可能なリソースのサブセットの列挙を生成する。
【0012】
本発明は、安全性強化をインプリメントし、ネットワーク環境下の所有データの開示を減らすネットワークリソースにアクセスする方法および装置にも関する。
【0013】
1つの局面においては、本発明はファイルコンテンツを提供する方法と装置に関する。クライアントノードはファイルに対する要求を伝送する。アクセス制御サーバは該要求を受信し、アクセス制御決定を行う。アプリケーションサーバファームは、要求されたファイルのファイルタイプに関連するアプリケーションプログラムを用いて、ファイルのコンテンツをクライアントノードに提示する。
【0014】
1つの実施形態においては、アクセス制御サーバは、アクセス制御決定を行う前にクライアントノードについての情報を集める。別の実施形態においては、アクセス制御サーバは、ファイルタイプに関連するアプリケーションプログラムの識別子およびクライアントノードにファイルのコンテンツを提示することが可能なアプリケーションサーバの識別子を含む実行可能なものを、クライアントノードに伝送する。1つの実施形態においては、アクセス制御サーバは、クライアントノードにファイルコンテンツを提示する前に、ファイルタイプに関連するアプリケーションプログラムを識別する。別の実施形態においては、アプリケーションサーバが、クライアントノードにファイルコンテンツを提示する前に、ファイルタイプに関連するアプリケーションプログラムを識別する。
【0015】
さらに、本発明は、安全性強化をインプリメントし、ポリシーベースのドキュメント制御を提供する変換ファイルのコンテンツにアクセスする方法および装置に関する。
【0016】
1つの局面においては、本発明は、リソースへのアクセスを許可するシステムと方法に関する。クライアントノードはリソースへのアクセスを要求する。収集エージェントはクライアントノードについての情報を集める。ポリシーエンジンは、該集められた情報を受信し、該受信した情報に基づきアクセス制御決定を行う。ポリシーエンジンからのファイルに対する要求を受信する変換サーバは、ファイルのコンテンツを原型のフォーマットから第2のフォーマットに変換し、ファイルの変換されたコンテンツをクライアントノードに提示する。
【0017】
1つの実施形態においては、ポリシーエンジンは、受信した情報にポリシーを適用することによってアクセス決定を行う。さらに別の実施形態においては、ポリシーエンジンは収集エージェントをクライアントノードに伝送する。
【0018】
別の局面においては、本発明は、リソースへのアクセスを許可する方法および装置に関する。装置は2つのコンポーネントを含むポリシーエンジンを備える。第1のコンポーネントは、クライアントノードについての情報を受信し、該情報からデータセットを生成する。第2のコンポーネントは、該データセットを受信し、該受信したデータセットに基づきクライアントが利用可能なリソースの列挙を、第1のコンポーネントに提供する。第1のコンポーネントはリソースの列挙をクライアントノードに提供する。
【0019】
1つの実施形態においては、第1のコンポーネントは収集エージェントから情報を受信する。1つの実施形態においては、各コンポーネントはデータベースをさらに備える。第1のコンポーネントのデータベースは条件を格納する。第2のコンポーネントのデータベースはポリシーを格納する。第1のコンポーネントは条件を受信した情報に適用し、第2のコンポーネントはポリシーを受信したデータセットに適用する。
【発明を実施するための最良の形態】
【0020】
本発明のこれらまたは他の局面が以下の詳細な記述および添付の図面から容易に明確となるが、それらは、例示のためであって本発明を限定するものではない。
【0021】
(本発明の詳細な説明)
リモートのユーザがコンテンツへのアクセスを要求する場合には、本発明の例示的な実施形態が分散ネットワーク環境に対して適用可能である。本発明の詳細を検討する前に、本発明の例示的な実施形態が用いられ得る一部のネットワーク環境について検討することが助けとなり得る。
【0022】
図1Aは、本発明の例示的な実施形態の実行に適切な環境のブロック図である。クライアントノード102は、ウェブブラウザ110およびアプリケーションプログラム112a、112b・・・112nを含む。アプリケーションプログラムは、アウトプットを提供するためにデータを処理し、システムリソースにアクセスするためにオペレーティングシステムを使用する任意のプログラムである。例示的なアプリケーションプログラムは、Washington、RedmondのMicrosoft Corporationによって製造されたMICROSOFT WORDのようなワードプロセッシングアプリケーション、Microsoft Corporationによって製造されたMICROSOFT EXCELのようなスプレッドシートプログラム、Microsoft Corporationによって製造されたMICROSOFT OUTLOOKのような電子メールプログラム、および、Utah、ProvoのNovell Corp.によって製造されたGROUPWISE、および、California、Mountain ViewのSun Microsystemsによって製造されたSTAR OFFICEのようなプロダクティビティスイーツを含む。
【0023】
コンテンツサーバ126は、コンテンツファイル128を含み、さらなるコンテンツファイル124および132をそれぞれ保持するデータストア122および130に接続され得る。本発明の範囲から逸脱することなく、コンテンツファイルを保持する他のネットワークストレージデバイスまたはドキュメントリポジトリも、コンテンツサーバ126にネットワークされ得ることを、当業者は認識する。描写された、ハイパーテキストトランスポートプロトコルセキュア(HTTPS)要求115、または、HTTP(Hypertext Transport Protocol)、FTP(File Transport Protocol)の要求、または、共有するファイルに対するオペレーションのための、SMB(Server Management Block Protocol)要求のような、要求を送信するためにウェブブラウザ110を用いて、コンテンツサーバ126からのコンテンツを、クライアントノード102のユーザは要求し得る。
【0024】
多くの実施形態においては、コンテンツサーバ126、クライアントノード102、および、プロキシサーバ120は、California、Palo AltoのHewlett−Packard CorporationまたはTX、Round RockのDell Corporationによって製造されるような、パーソナルコンピュータまたはコンピュータサーバとして提供される。図1Bおよび図1Cは、それらの実施形態におけるコンテンツサーバ126、プロキシサーバ120、または、クライアントノード102として有用な一般的なコンピュータ100のブロック図を描く。図1Bおよび図1Cに示されるように、各コンピュータ100は、中央演算装置102および主記憶装置104を含む。各コンピュータ100は、1つ以上の入力/出力デバイス130a〜130n(概して参照番号130を用いて参照される)、および、中央演算装置102と通信するキャッシュメモリ140のような、他の選択的なエレメントも含み得る。
【0025】
中央演算装置102は、主記憶装置104からフェッチされる命令に応答しかつ処理する任意のロジック回路網である。多くの実施形態においては、中央演算装置は、その全てがCalifornia、Mountain ViewのIntel Corporationによって製造される、8088、80286、80386、80486、Pentium(登録商標)、Pentium(登録商標) Pro、Pentium(登録商標) II、CeleronまたはXeonプロセッサ;その全てがIllinois、SchaumburgのMotorola Corporationによって製造される、68000、68010、68020、68030、68040、PowerPC601、PowerPC604、PowerPC604e、MPC603e、MPC603ei、MPC603ev、MPC603r、MPC603p、MPC740、MPC745、MPC750、MPC755、MPC7400、MPC7410、MPC7441、MPC7445、MPC7447、MPC7450、MPC7451、MPC7455、MPC7457プロセッサ;California、Santa ClaraのTransmeta Corporationによって製造される、Crusoe TM5800、Crusoe TM5600、Crusoe TM5500、Crusoe TM5400、Efficeon TM8600、Efficeon TM8300またはEfficeon TM8620プロセッサ;それらの全てがNew York、White PlainsのInternational Business Machinesによって製造される、RS/6000プロセッサ、RS64、RS64II、P2SC、POWER3、RS64III、POWER3−II、RS64IV、POWER4、POWER4+、POWER5またはPOWER6プロセッサ;California、SunnyvaleのAdvanced Micro Devicesによって製造される、AMD Opteron、AMD Athalon 64 FX、AMD AthalonまたはAMD Duronプロセッサのような、マイクロプロセッサユニットによって、提供される。
【0026】
主記憶装置104は、データを格納し、かつ、スタティックランダムアクセスメモリ(SRAM)、Burst SRAMまたはSynchBurst SRAM(BSRAM)、ダイナミックランダムアクセスメモリ(DRAM)、Fast Page Mode DRAM(FPM DRAM)、Enhanced DRAM(EDRAM)、Extended Data Output RAM(EDO RAM)、Extended Data Output DRAM(EDO DRAM)、Burst Extended Data Output DRAM(BEDO DRAM)、Enhanced DRAM(EDRAM)、synchronous DRAM(SDRAM)、JEDEC SRAM、PC100 SDRAM、Double Data Rate SDRAM(DDR SDRAM)、Enhanced SDRAM(ESDRAM)、SyncLink DRAM(SLDRAM)、Direct Rambus DRAM(DRDRAM)またはFerroelectric RAM(FRAM)のような、マイクロプロセッサ102によって直接アクセスされる任意のストレージロケーションを可能とする能力のある1つ以上のメモリチップであり得る。
【0027】
図1Bに示される実施形態においては、プロセッサ102は、システムバス120(以下でより詳細に記述される)を介してメインメモリ104と通信する。図1Cは、プロセッサがメモリポートを介してメインメモリ104と直接通信する、コンピュータシステム100の実施形態を描く。例えば、図1Cにおいては、メインメモリ104はDRDRAMであり得る。
【0028】
図1Bおよび図1Cは、ときどき「バックサイド」バスと言われる補助のバスを介して、メインプロセッサ102がキャッシュメモリ140と直接通信する、実施形態を描く。他の実施形態においては、メインプロセッサ102は、システムバス120を用いてキャッシュメモリ140と通信する。キャッシュメモリ140は、一般的にはメインメモリ104よりも応答時間が早く、一般的にはSRAM、BSRAMまたはEDRAMによって提供される。
【0029】
図1Bに示される実施形態においては、プロセッサ102は、ローカルシステムバス120を介して様々なI/Oデバイス130と通信する。様々なバスが中央演算装置102をI/Oデバイス130に接続するために用いられ得、それは、VESA VLバス、ISAバス、EISAバス、MicroChannel Architecture(MCA)バス、PCIバス、PCI−Xバス、PCI−ExpressバスまたはNuBusを含む。I/Oデバイスがビデオディスプレイである実施形態に対して、プロセッサ102は、Advanced Graphics Port(AGP)をディスプレイと通信するために用い得る。図1Cは、メインプロセッサ102が、HyperTransport、Rapid I/OまたはInfiniBandを介してI/Oデバイス130bと直接通信する、コンピュータシステム100の実施形態を描く。図1Cはまた、ローカルバスと直接通信とがミックスされた実施形態を描き、プロセッサ102は、I/Oデバイス130bと直接通信する一方で、ローカルインターコネクトバスを用いて、I/Oデバイス130aと通信する。
【0030】
多種多様なI/Oデバイス130がコンピュータシステム100に存在し得る。インプットデバイスは、キーボード、マウス、トラックパッド、トラックボール、マイクロフォンおよびドローイングタブレットを含む。アウトプットデバイスは、ビデオディスプレイ、スピーカー、インクジェットプリンタ、レーザープリンタおよびダイサブリメイションプリンタ(dye−sublimation printer)を含む。I/Oデバイスは、ハードディスクドライブ、3.5インチ、5.25インチのディスクのようなフロッピー(登録商標)ディスクまたはZIPディスクを受け入れるフロピーディスクドライブ、CD−ROMドライブ、CD−R/RWドライブ、DVD−ROMドライブ、様々なフォーマットのテープドライブ、および、California、Los AlamitosのTwintech Industry、Inc. によって製造される一連のデバイスの、USBフラッシュドライブのようなUSBストレージデバイスのような、大容量のストレージをコンピュータシステム100に対して提供もし得る。
【0031】
さらなる実施形態においては、I/Oデバイス130は、システムバス120と、USBバス、Apple Desktopバス、RS−232シリアルコネクション、SCSIバス、FireWireバス、FireWire 800バス、イーサネット(登録商標)バス、AppleTalkバス、Gigabitイーサネット(登録商標)バス、Asynchronous Transfer Modeバス、HIPPIバス、Super HIPPIバス、SerialPlusバス、SCI/LAMPバス、FibreChannelバスまたはSerial Attached small computer system interfaceバスのような、外部通信バスとの間のブリッジであり得る。
【0032】
図1Bおよび図1Cに描かれるような汎用デスクトップコンピュータは、一般的には、タスクのスケジューリングおよびシステムリソースへのアクセスを制御する、オペレーティングシステムの制御の下で作動する。一般的なオペレーティングシステムは、特に、Washington、RedmondのMicrosoft Corp.によって製造されるMICROSOFT WINDOWS(登録商標)、California、CupertinoのApple Computerによって製造されるMacOs、New York、ArmonkのInternational Business Machinesによって製造されるOS/2、およびUtah、Salt Lake CityのCaldera Corp.によって配布される無料利用可能なオペレーティングシステムであるLinuxを含む。
【0033】
クライアントノード102は、任意のパーソナルコンピュータ(例えば、286、386、486、Pentium(登録商標)、Pentium(登録商標) II、Machintoshコンピュータ)、ウィンドウズ(登録商標)ベースのターミナル、Network Computer、ワイヤレスデバイス、情報家電、RISC Power PC、X−device、ワークステーション、ミニコンピュータ、メインフレームコンピュータ、パーソナルディジタルアシスタント、または、ウィンドウズ(登録商標)ベースのデスクトップおよび小さな、ディスプレイプレゼンテーションプログラムを実行するために十分なパーシステントストレージを有する他のコンピューティングデバイスであり得る。ディスプレイプレゼンテーションプログラムは、画像ディスプレイをレンダリングするために、コマンドと通信チャネルを介してそれに送信されるデータを用いる。クライアントノード102によってサポートされるウィンドウズ(登録商標)指向のプラットフォームは、WINDOWS(登録商標) 3.x、WINDOWS(登録商標) 95、WINDOWS(登録商標) 98、WINDOWS(登録商標) NT 3.51、WINDOWS(登録商標) NT 4.0、WINDOWS(登録商標) 2000、WINDOWS(登録商標) CE、MAC/OS、Java(登録商標)およびUNIX(登録商標)を、制限無しに含み得る。クライアントノード102は、ビジュアルディスプレイデバイス(例えば、コンピュータのモニタ)、データエントリーデバイス(例えば、キーボード)、ダウンロードされたアプリケーションプログラムを格納するための固定または揮発性のストレージ(例えば、コンピュータのメモリ)、プロセッサおよびマウスを含み得る。小さな、ディスプレイプレゼンテーションプログラムの実行は、クライアントノード102が分散コンピュータシステムモデル(すなわち、サーバベースのコンピューティングモデル)の中に加わることを可能とする。
【0034】
クライアントノード102が移動性デバイスである実施形態に対して、該デバイスは、それらの全てがIllinois、SchaumburgのMotorola Corp.によって製造される、i50sx、i55sr、i58sr、i85s、i88s、i90c、i95clまたはim11000、Japan、KyotoのKyoceraによって製造される、6035、7135、または、Korea、SeoulのSamsung Electronics Co.,Ltd.,によって製造される、i300もしくはi330のようなJAVA(登録商標)で可能化されるセルラー電話であり得る。クライアントノード102が移動性である他の実施形態においては、それは、それらの全てがCalifornia、MilpitasのpalmOne, Inc.によって製造される、Tungsten W、VII、VIIx、i705のような、PalmOSオペレーティングシステムの制御で作動するパーソナルディジタルアシスタント(PDA)であり得る。さらなる実施形態においては、クライアントノード102は、その全てがCalifornia、Palo AltoのHewlett−Packard Corporationによって製造される、iPAQ4155、iPAQ5555、iPAQ1945、iPAQ2215およびiPAQ4255、California、WalnutのViewSonicによって製造される、ViewSonic V36、または、New York、New YorkのToshiba America,Inc.によって製造される、Toshiba PocketPC e405のような、PocketPCオペレーティングシステムの制御で作動する、パーソナルディジタルアシスタント(PDA)であり得る。なお他の実施形態においては、クライアントノードは、それらの全てがCalifornia、MilpitasのpalmOne, Inc.によって製造される、Treo 180、Treo 270またはTreo 600のような、組み合わせのPDA/電話デバイスである。なおさらなる実施形態においては、クライアントノード102は、Motorola Corp.によって製造される、MPx200のような、PocketPCオペレーティングシステムの制御で作動するセルラー電話である。
【0035】
ここで図1Dを参照すると、本発明に従って構築されるネットワーク100の1つの実施形態が描かれ、それは、クライアントノード102、収集エージェント104、ポリシーエンジン106、ポリシーデータベース108、アプリケーションサーバファーム114、および、アプリケーションサーバ116を含む。図1Dに示される実施形態においては、1つだけのクライアントノード102、収集エージェント104、ポリシーエンジン106、アプリケーションサーバファーム114、および、アプリケーションサーバ116が描かれているが、システムが、それらのコンポーネントのうちの任意のまたは各々の複数個を、提供し得るということが理解されるべきである。例えば、1つの実施形態においては、システム100は、各々がクライアントノード102を代表してアプリケーションを実行することが可能な、複数の論理的にグループ化されたアプリケーションサーバ116を含む。これらの実施形態においては、サーバの論理グループは、「サーバファーム」と称される。これらの実施形態の一部においては、サーバは地理的に分散され得る。
【0036】
概要としては、リソースにアクセスするために、クライアントノード102が要求110をポリシーエンジン106に伝送したときに、収集エージェント104はクライアントノード102と通信して、クライアントノード102についての情報を抽出し、クライアントノード情報112をポリシーエンジン106に伝送する。ポリシーエンジン106は、ポリシーデータベース108からのポリシーを抽出された情報112に適用することによって、アクセス制御決定を行う。
【0037】
より詳細には、クライアントノード102は、リソースに対する要求110をポリシーエンジン106に伝送する。一部の実施形態においては、クライアントノード102は、ネットワーク接続を介して要求110を伝送する。ネットワークは、ローカルエリアネットワーク(LAN)、メトロポリタンアリアネットワーク(MAN)、または、インターネットのようなワイドエリアネットワーク(WAN)であり得る。クライアントノード102およびポリシーエンジン106は、標準の電話線、LANまたはWANのリンク(例えば、T1、T3、56kb、X.25)、ブロードバンド接続(ISDN、フレームリレー、ATM)、および、ワイヤレス接続を含む、様々な接続を介してネットワークに接続し得る。クライアントノード102とポリシーエンジン106との間の接続は、様々なデータリンク層の通信プロトコル(例えば、TCP/IP、IPX、SPX、NetBIOS、NetBEUI、SMB、イーサネット(登録商標)、ARCNET、ファイバーディストリビューテッドデータインターフェース(FDDI)、RS232、IEEE802.11、IEEE802.11a、IEE802.11b、IEEE802.11gおよび直接非対称接続)を使用し得る。
【0038】
要求を受信した直後に、ポリシーエンジン106は、収集エージェント104によって情報を集めることを開始する。収集エージェント104は、クライアントノード102に関する情報を集め、該情報112をポリシーエンジン106に伝送する。
【0039】
一部の実施形態においては、収集エージェント104はネットワーク接続を介して情報112を集め、伝送する。一部の実施形態においては、収集エージェント104は、バイトコードプログラミング言語JAVA(登録商標)で書かれたアプリケーションのような、バイトコードを包含する。一部の実施形態においては、収集エージェント104は、少なくとも1つのスクリプトを包含する。これらの実施形態においては、収集エージェント104は、クライアントノード102上で少なくとも1つのスクリプトを実行することによって、情報を集める。一部の実施形態においては、収集エージェントはクライアントノード102上にActive X制御を包含する。Active X制御は、それを制御のように見えかつ振舞うことを可能とする一式のインターフェースをインプリメントする特化されたCOM(Component Object Model)である。
【0040】
一部の実施形態においては、収集エージェント104はクライアントノード上で実行する。他の実施形態においては、収集エージェント104はポリシーエンジン106上に存在する。なお他の実施形態においては、収集エージェント104はサーバ上に存在する。他の実施形態においては、ポリシーエンジン106はサーバ上に存在する。これらの実施形態の一部においては、収集エージェント104はポリシーエンジン106上とサーバ上との両方に存在する。
【0041】
1つの実施形態においては、ポリシーエンジン106は、収集エージェント104をクライアントノード102に伝送する。1つの実施形態においては、ポリシーエンジン106は、収集エージェント104が情報112をポリシーエンジン106に伝送した後に、収集エージェント104の第2の実行を要求する。この実施形態においては、ポリシーエンジン106は、クライアントノード102が特定の条件を満足するか否かを決定するための不十分な情報112を有し得る。他の実施形態においては、ポリシーエンジン106は、受信した情報112に応じて、収集エージェント104の複数の実行を要求する。
【0042】
一部の実施形態においては、ポリシーエンジン106は、収集エージェント104が集める情報のタイプを決定する収集エージェント104に、命令を伝送する。これらの実施形態においては、システムアドミニストレータは、ポリシーエンジン106から収集エージェント104に伝送される命令を構成し得る。これは、収集される情報のタイプを介してより大きな制御を提供する。これはまた、収集される情報のタイプを介するより大きな制御により、ポリシーエンジン106が行い得るアクセス制御決定のタイプを広げる。収集エージェント104は、クライアントノードのマシンID、オペレーティングシステムのタイプ、オペレーティングシステムのパッチの存在、インストールされたネットワークカードのMACアドレス、クライアントデバイスのデジタル透かし、アクティブディレクトリのメンバーシップ、ウイルススキャナの存在、パーソナルファイヤウォールの存在、HTTPヘッダ、ブラウザのタイプ、デバイスのタイプ、ネットワーク接続情報および認証証明を、制限無く含む情報112を、集める。
【0043】
一部の実施形態においては、デバイスのタイプはパーソナルディジタルアシスタントである。他の実施形態においては、デバイスのタイプはセルラー電話である。他の実施形態においては、デバイスのタイプはラップトップコンピュータである。他の実施形態においては、デバイスのタイプはデスクトップコンピュータである。他の実施形態においては、デバイスのタイプはインターネットキオスクである。
【0044】
一部の実施形態においては、デジタル透かしはデータ埋め込み(data embedding)を含む。一部の実施形態においては、該透かしは、ファイルについてのソース情報を提供するために、ファイルに挿入されるデータのパターンを包含する。他の実施形態においては、該透かしは改ざんの検出を提供するために、データハッシングファイル(data hashing file)を包含する。他の実施形態においては、該透かしはファイルの著作権情報を提供する。
【0045】
一部の実施形態においては、ネットワーク接続情報は周波数帯域能力に関する。他の実施形態においては、ネットワーク接続情報はインターネットプロトコルのアドレスに関する。なお他の実施形態においては、ネットワーク接続情報はインターネットプロトコルのアドレスから成る。1つの実施形態においては、ネットワーク接続情報は、クライアントノードが認証証明を提供したログオンエージェントを識別するネットワークゾーンを包含する。
【0046】
一部の実施形態においては、認証証明は、ユーザネーム、クライアントネーム、クライアントのアドレス、パスワード、PIN、ボイスサンプル、1回限りのパスコード、バイオメトリックデータ(biometric data)、デジタル証明書、チケットなど、および、それらの組み合わせを、制限無く含む、多数の認証情報のタイプを含む。集められた情報112を受信した後に、ポリシーエンジン106は、受信した情報112に基づきアクセス制御決定を行う。
【0047】
図2を参照すると、それはポリシーエンジン200の1つの実施形態のブロック図であり、ポリシーエンジン200は、条件データベース204およびログオンエージェント206を備える第1のコンポーネント202を含み、かつ、ポリシーデータベース212を備える第2のコンポーネント210を含む。第1のコンポーネント202は、条件データベース204からの条件をクライアントノード102について受信した情報に適用し、受信した情報が条件を満足するか否かを決定する。
【0048】
一部の実施形態においては、第1のコンポーネント202と第2のコンポーネント210とは、論理的には別個であるが物理的には別個ではない。一部の実施形態においては、第1のコンポーネント202と第2のコンポーネント210とは、論理的および物理的に別個である。一部の実施形態においては、条件データベース204は第1のコンポーネント202に存在する。他の実施形態においては、条件データベース204は第2のコンポーネント210に存在する。
【0049】
一部の実施形態においては、条件を満足するために、クライアントノード102が特定のオペレーティングシステムを実行するということを、条件は要求し得る。一部の実施形態においては、条件を満足するために、クライアントノード102が特定のオペレーティングシステムのパッチを実行するということを、条件は要求し得る。なお他の実施形態においては、条件を満足するために、クライアントノード102がインストールされたネットワークカードの各々に対してMACアドレスを提供するということを、条件は要求し得る。一部の実施形態においては、条件を満足するために、クライアントノード102が特定のアクティブディレクトリのメンバーシップを示すということを、条件は要求し得る。別の実施形態においては、条件を満足するために、クライアントノード102がウイルススキャナを実行するということを、条件は要求し得る。他の実施形態においては、条件を満足するために、クライアントノード102がパーソナルファイヤウォールを実行するということを、条件は要求し得る。一部の実施形態においては、条件を満足するために、クライアントノード102が特定のデバイスのタイプを備えるということを、条件は要求し得る。他の実施形態においては、条件を満足するために、クライアントノード102が特定のタイプのネットワーク接続を構築するということを、条件は要求し得る。
【0050】
受信した情報が条件を満足する場合には、第1のコンポーネント202は、その条件のための識別子をデータセット208に格納する。1つの実施形態においては、情報が条件が真であるとする場合に、受信した情報が条件を満足する。例えば、特定のオペレーティングシステムがインストールされているということを、条件は要求し得る。クライアントノード102がそのオペレーティングシステムを有する場合には、条件は真であり満足される。別の実施形態においては、情報が条件が偽であるとする場合に、受信した情報が条件を満足する。例えば、クライアントノード102上にスパイウェアが存在するか否かに、条件は注意を向け得る。クライアントノード102がスパイウェアを含まない場合には、条件は偽であり満足される。
【0051】
一部の実施形態においては、ログオンエージェント206はポリシーエンジン200の外部に存在し得る。他の実施形態においては、ログオンエージェント206はポリシーエンジン200上に存在し得る。1つの実施形態においては、第1のコンポーネント202は、クライアントノード102について情報集めを開始するログオンエージェント206を含む。一部の実施形態においては、ログオンエージェント206はデータストアをさらに備える。これらの実施形態においては、データストアは、収集エージェントが情報を集め得る条件を含む。このデータストアは条件DB204とは別である。
【0052】
一部の実施形態においては、ログオンエージェント206は、収集エージェント104を実行することによって、情報集めを開始する。他の実施形態においては、ログオンエージェント206は、クライアントノード102上で実行するために、収集エージェント104をクライアントノード102に伝送することによって、情報集めを開始する。さらに他の実施形態においては、ログオンエージェント206は、情報112を受信した後に、さらなる情報集めを開始する。1つの実施形態においては、ログオンエージェント206は、情報112も受信する。この実施形態においては、ログオンエージェント206は、受信した情報112に基づきデータセット208を生成する。一部の実施形態においては、ログオンエージェント206は、データベース204からの条件を、収集エージェント104から受信した情報に適用することによって、データセット208を生成する。
【0053】
別の実施形態においては、第1のコンポーネント202は複数のログオンエージェント206を含む。この実施形態においては、複数のログオンエージェント206のうちの少なくとも1つは、クライアントノード102がそこからリソース要求を伝送し得る各ネットワークドメインに存在し得る。この実施形態においては、クライアントノード102はリソース要求を特定のログオンエージェント206に伝送する。一部の実施形態においては、ログオンエージェント206は、そこからクライアントノード102がログオンエージェント206にアクセスしたネットワークドメインを、ポリシーエンジン200に伝送する。1つの実施形態においては、クライアントノード102がログオンエージェント206にアクセスしたネットワークドメインは、クライアントノード102のネットワークゾーンとみなされる。
【0054】
条件データベース204は、第1のコンポーネント202が、受信した情報に適用する条件を格納する。ポリシーデータベース212は、第2のコンポーネント210が、受信したデータセットに適用するポリシーを格納する。一部の実施形態においては、条件データベース204およびポリシーデータベース212は、ODBC準拠のデータベースにデータを格納する。例えば、条件データベース204およびポリシーデータベース212は、Calif.、Redwood ShoresのOracle Corporationによって製造される、ORACLEデータベースとして提供され得る。他の実施形態においては、条件データベース204およびポリシーデータベース212は、Wash.、RedmondのMicrosoft Corporationによって製造される、Microsoft ACCESSデータベースまたはMicrosoft SQLサーバデータベースであり得る。
【0055】
第1のコンポーネント202は、受信した情報を条件データベース204の中の各条件に適用した後に、第1のコンポーネントは、データセット208を第2のコンポーネント210に伝送する。1つの実施形態においては、第1のコンポーネント202は、データセット208だけを第2のコンポーネント210に伝送する。従って、この実施形態においては、第2のコンポーネント210は情報112を受信せず、満足された条件に対する識別子だけを受信する。第2のコンポーネント210は、データセット208を受信し、データセット208内の識別された情報に基づき、ポリシーデータベースからのポリシーを適用することによって、アクセス制御決定を行う。
【0056】
1つの実施形態においては、ポリシーデータベース212は受信された情報112に適用されるポリシーを格納する。1つの実施形態においては、ポリシーデータベース212に格納されるポリシーは、少なくとも1部はシステムアドミニストレータによって指定される。別の実施形態においては、ユーザが、ポリシーデータベース212に格納されるポリシーの少なくとも1部を指定する。ユーザにより指定されたポリシーは、優先ポリシーとして格納される。ポリシーデータベース212は、揮発性または不揮発性のメモリに格納され得るか、または、例えば複数のサーバを介して分散され得る。
【0057】
1つの実施形態においては、1つ以上の条件が満足された場合にだけ、ポリシーはリソースへのアクセスを許す。別の実施形態においては、ポリシーは、リソースへのアクセスは許すが、該リソースのクライアントノード102への伝送は禁止する。ポリシーデータベース212に格納されたポリシーのうちの1つは、切断されたアプリケーションセッションへの自動接続を要求または禁止し得る。さらに別のポリシーは、アクセスを要求するクライアントノード102が安全なネットワーク内にあることを条件に接続し得る。別のポリシーは、異なるクライアントノード102に現在接続されているアクティブなアプリケーションセッションへの自動接続を、要求または禁止し得る。さらなるポリシーは、ユーザの同意を受信した後のアプリケーションセッションへの接続だけを許し得る。別のポリシーは、切断後の所定時間の接続だけを許し得る。なお別のポリシーは、特定のアプリケーションを含むアプリケーションセッションへの接続だけを許す。1つのポリシーは、要求されたファイルの変換されたコンテンツを見ることだけを許し得る。あるポリシーは、要求されたファイルのHTMLバージョンだけを見ることを許し得る。一部の実施形態においては、クライアントノード102へのファイルのダウンロードは防止されるが、リソースへのアクセスは提供される。これは、ファイルコンテンツのビューアーオンリーフォーマットへの変換、ファイルコンテンツをウェブブラウザによって見るためのHTMLに変換すること、クライアントノード102によってホストされるアプリケーションを使用する代わりに、サーバファームの中のサーバによってホストされるアプリケーションを用いてファイルをオープンするための、ファイルタイプ関連の使用を含む、数多くの方法、または、その内容が参考として本明細書において援用される、米国特許出願第10/931405号に記述されるようなシステムを使用することによって達成され得る。
【0058】
上記の実施形態の一部においては、方法および装置が、所有情報のためのドキュメント保護を提供する。これらの実施形態においては、ポリシーエンジン106が、クライアントノード102にリソースにアクセスするための許可を与えない限り、クライアントノードはネットワークリソースにアクセスできない。これらの実施形態のうちの1つは、ポリシーエンジン106が唯一のアクセスできるネットワークエレメントであって、クライアントノード102がネットワークリソースにアクセスするためには、ポリシーエンジン106にアクセスせねばならないということを保証する。これらの実施形態のうちの別のものにおいて、ポリシーエンジン106背後のネットワークリソースにアクセスするために使用されるURLは、クライアントノード102による直接アクセスを防止するために書き換えられる。上記の実施形態のうちの他においては、方法および装置は、そうしなければアクセスできないリソースに、クライアントノードがアクセスするための能力を強化する。上記の実施形態のうちの一部においては、方法および装置は、所有情報の保護とクライアントノードの能力強化との両方を提供する。
【0059】
ここで図3を参照すると、フロー図は、クライアントノード102について受信した情報に基づきアクセス制御決定を行うために、ポリシーエンジン106によってとられるステップの1つの実施形態を描く。クライアントノード102について集められた情報を受信した直後に(ステップ350)、ポリシーエンジン106は、該情報に基づきデータセットを生成する(ステップ352)。一部の実施形態においては、ポリシーエンジン106は、収集エージェント104からのクライアントノード102についてのさらなる情報を要求する。これらの実施形態においては、ポリシーエンジン106は、クライアントノード102上での収集エージェント104の2以上の実行を要求する。これらの実施形態においては、ポリシーエンジン106は、追加の要求された情報を受信した後にデータセット208を生成する。これらの実施形態においては、ポリシーエンジン106は、クライアントノード102が特定の条件を満足するか否かを決定するための十分な情報112を有さないことがあり得る。これらの実施形態のうちの他においては、条件は未定であり得る。条件が未定である場合の実施形態の一部においては、収集エージェントが条件を満足するために要求された情報を集められなかったということがあり得る。
【0060】
データセット208は、受信した情報112によって満足された条件の各々に対する識別子を含む。そして、ポリシーエンジン106は、データセット208内の識別された条件にポリシーを適用する。アプリケーションが、クライアントノード102がアクセスし得るリソースの列挙を生ずる(ステップ354)。1つの実施形態においては、リソースは所有データを包含する。一部の実施形態においては、リソースはウェブページを包含する。他の実施形態においては、リソースはワードプロセシングドキュメントを包含する。なお他の実施形態においては、リソースはスプレッドシートを包含する。一部の実施形態においては、該列挙は、クライアントノード102がアクセスし得るリソースのサブセットだけを含む。そして、ポリシーエンジン106はその列挙をクライアントノード102に提示する。一部の実施形態においては、ポリシーエンジン106は、クライアントノードに該列挙を提示するために用いられるハイパーテキストマークアップ言語(HTML)のドキュメントを生成する。
【0061】
図4を参照すると、本発明に従って構築されるコンピュータネットワーク400の1つの実施形態が描かれ、それは、クライアントノード402、収集エージェント404、アクセス制御サーバ406、ポリシーデータベース408、アプリケーションサーバファーム414、第1のアプリケーションサーバ416、アプリケーションデータベース418、第2のアプリケーションサーバ420、第2のアプリケーションデータベース422を含む。一部の実施形態においては、クライアントノード402が存在するネットワークを、アクセス制御サーバ406およびアプリケーションサーバファーム414から分離するネットワーク境界がある。
【0062】
概要としては、クライアントノード402が、リソースへのアクセスのために、要求410をアクセス制御サーバ406に送信したときに、収集エージェント404は、クライアントノード402と通信して、クライアントノード402についての情報を抽出し、クライアントノードの情報412をアクセス制御サーバ406に送信する。1つの実施形態においては、ポリシーエンジン106がクライアントノード402に利用可能なリソースの列挙を提示した後に、クライアントノード402は要求410を送信する。アクセス制御サーバ406は、ポリシーデータベース408からのポリシーを受信した情報412に適用することによって、アクセス制御決定を行う。最後に、アクセス制御サーバ406は、クライアントノード402に対するファイルのコンテンツの提示のために、ファイルのタイプをアプリケーションサーバファーム414に送信する。コンピュータネットワーク400の付加的なコンポーネンントは省略されており、図4Bにおいてさらに記述される。
【0063】
ここで図4Bを参照すると、フロー図は、クライアントノード402にファイルのコンテンツを提供するために、アクセス制御サーバ406およびアプリケーションサーバファーム414によってとられるステップの1つの実施形態を描く。アプリケーションサーバファーム414の一部はアプリケーションサーバ416である。
【0064】
1つの実施形態においては、いったんアクセス制御サーバ406が、クライアントノード402に要求されたファイルへのアクセスを許可することを決めると、アクセス制御サーバ406は該要求されたファイルに対するファイルのタイプを決定する(ステップ452)。他の実施形態においては、アプリケーションサーバ416が、該要求されたファイルに対するファイルのタイプを決定する。なお他の実施形態においては、アプリケーションサーバ416またはアクセス制御サーバ406以外のサーバが決定する。一部の実施形態においては、ファイルのタイプを決定するサーバは、まず要求されるファイルを抽出しなければならない。これらの実施形態の一部においては、ファイルは、ネットワーク境界424の、ファイルのタイプを決定するサーバと同じ側に置かれる。これらの実施形態の他においては、ファイルは、ネットワーク境界424の、クライアントノード402と同じ側に置かれる。これらの実施形態においては、方法および装置は、そうしなければアクセスできないリソースに、クライアントノードがアクセスするための能力を強化するが、それらは所有情報のためのドキュメント保護は提供しない。
【0065】
一部の実施形態においては、ネットワーク境界424は、少なくとも2つのネットワークを物理的に分離する。他の実施形態においては、ネットワーク境界424は、少なくとも2つのネットワークを論理的に分離する。1つの実施形態においては、ネットワーク境界424はファイアウォールである。
【0066】
1つの実施形態においては、ファイルの拡張子はファイルのタイプであり、ファイルのタイプを決定するサーバは、ファイルからファイルの拡張子を抽出することによってファイルのタイプを決定する。別の実施形態においては、リソースフォークはファイルのタイプである。ファイルのタイプを決定した後に、抽出およびクライアントノード402への提示のために、ファイルのタイプを決定するサーバは、ファイルのタイプをアプリケーションサーバファーム414に送信する(ステップ454)。
【0067】
アプリケーションサーバ416はアクセス制御サーバ406からファイルのタイプを受信する(ステップ456)。一部の実施形態においては、アプリケーションサーバ416は、そのファイルのタイプに関連するアプリケーションプログラムを識別する。他の実施形態においては、アクセス制御サーバ406が、そのファイルのタイプに関連するアプリケーションプログラムを識別する。なお他の実施形態においては、アクセス制御サーバ406またはアプリケーションサーバ416以外のサーバが、そのファイルのタイプに関連するアプリケーションプログラムを識別する。
【0068】
1つの実施形態においては、ファイルのタイプに関連するアプリケーションプログラムを識別するサーバは、アプリケーションプログラムに対する識別子を抽出するために、アプリケーションデータベース418をクエリする。一部の実施形態においては、アプリケーションデータベース418は、レジストリのファイルである。アプリケーションサーバ416または別のサーバがファイルのタイプに基づきアプリケーションのタイプを識別する場合の実施形態においては、その後、識別するサーバは、アプリケーションプログラムに対する識別子をアクセス制御サーバ406に送信する。一部の実施形態においては、識別するサーバは、ネットワーク接続を介して、識別子をアクセス制御サーバ406に送信する。
【0069】
一部の実施形態においては、アクセス制御サーバ406または別のサーバのいずれもが、関連するアプリケーションプログラムの識別子を決定するためのファイルのタイプを、アプリケーションサーバ416に送信する必要がない。これらの実施形態のうちの1つにおいては、ホストされているアプリケーションプログラムのリスト、および、これらのアプリケーションプログラムが関連するファイルのタイプを、アプリケーションサーバ416がアクセス制御サーバ406に送信する。これらの実施形態においては、アクセス制御サーバ406は、ファイルのタイプに関連するアプリケーションプログラムに対する識別子を、該送信されたリストから抽出する。
【0070】
アクセス制御サーバ406がアプリケーションプログラムの識別子を受信したときには、アクセス制御サーバ406は、実行可能なファイルを生成し、クライアントノード402に送信する(ステップ458)。一部の実施形態においては、実行可能なファイルはアプリケーションプログラムの識別子を含む。一部の実施形態においては、実行可能なファイルは、ファイルのコンテンツをクライアントノード402に提示するアプリケーションサーバファーム414の中の、アプリケーションサーバの識別子を含む。一部の実施形態においては、使用すべきアプリケーションプログラムを、ファイルのタイプを用いて識別した同じアプリケーションサーバ416が、ファイルのコンテンツをクライアントノード402に提示する。他の実施形態においては、第2のアプリケーションサーバ420が、ファイルのコンテンツをクライアントノード402に提示する。1つの実施形態においては、実行可能なファイルは、アプリケーションプログラムの識別子と、ファイルのコンテンツをクライアントノード402に提示するアプリケーションサーバファーム414の中のアプリケーションサーバの識別子との両方を含む。一部の実施形態においては、Florida、Fort LauderdaleのCitrix Systems,Inc.から調達可能なIndependent Computing Architecture(ICA)のようなプレゼンテーション層のプロトコルを用いて、識別されたサーバに、クライアントノード402が接続することを、実行可能なファイルが可能とする。他の実施形態においては、Microsoft Corporationによって製造される、Remote Desktop Protocol(RDP)を用いて、識別されたサーバにクライアントノード402が接続することを、実行可能なファイルが可能とする。他の実施形態においては、プレゼンテーション層のプロトコルはより高い層のプロトコルでラップ(wrap)される。
【0071】
クライアントノード402は、実行可能なファイルをアクセス制御サーバ406から受信する。クライアントノード402は、実行可能なファイルにおいて識別されたアプリケーションサーバ416に接続する(ステップ460)。1つの実施形態においては、クライアントノード402は、ICAプロトコルを用いて、識別されたアプリケーションサーバ416に接続する。別の実施形態においては、クライアントノード402は、RDPを用いて、識別されたアプリケーションサーバ416に接続する。
【0072】
アプリケーションサーバ416は、ファイルのコンテンツの提示のためのフォーマットを選択する(ステップ464)。他の実施形態においては、アクセス制御サーバ406が、ファイルのコンテンツを提示するために用いられるフォーマットを識別する。それらの実施形態においては、アクセス制御サーバ406は、利用可能なフォーマットを識別するために、ポリシーを適用し得る。一部の実施形態においては、アプリケーションサーバ416は、クライアントノード402についての受信した情報に基づきフォーマットを選択する。他の実施形態においては、アプリケーションサーバ416は、受信した情報にポリシーを適用することによってフォーマットを選択する。
【0073】
アプリケーションサーバ416は、クライアントノード402の接続を受け入れ、要求されたファイルを抽出する(ステップ466)。1つの実施形態においては、アプリケーションサーバ416はウェブサーバからファイルを抽出する。別の実施形態においては、アプリケーションサーバ416はファイルサーバからファイルを抽出する。なお別の実施形態においては、抽出されるファイルはeメールに添付されたものである。この実施形態においては、アプリケーションサーバ416は電子メールサーバからファイルを抽出する。一部の実施形態においては、メールサーバはLotusメールサーバである。他の実施形態においては、メールサーバはOutlookメールサーバまたはOutlook Web Accessメールサーバである。
【0074】
そして、アプリケーションサーバ416は、接続を介して、ファイルのコンテンツをクライアントノード402に提示する(ステップ468)。1つの実施形態においては、提示されるファイルのコンテンツはeメールに添付されたものを包含する。
【0075】
図5を参照すると、本発明に従って構築されるコンピュータネットワーク500の1つの実施形態が描かれ、それは、クライアントノード502、収集エージェント504、ポリシーエンジン506、第1のコンポーネント508、第2のコンポーネント512、条件データベース510、ポリシーデータベース512、変換サーバ516、および、ストレージエレメント518を含む。概要としては、クライアントノード502が、ポリシーエンジン506からのリソースへのアクセスの要求522を送信したときには、収集エージェント504はクライアントノード502と通信してクライアントノード502についての情報を抽出し、クライアントノードの情報512をポリシーエンジン506に送信する。ポリシーエンジン506は、上記の図3において検討したように、アクセス制御決定を行う。いったんポリシーエンジン506がクライアントノード502に要求されたファイルへのアクセスを許可することを決めると、ポリシーエンジン506は、変換およびクライアントノード502への提示のために、該要求を変換サーバ516に送信する。
【0076】
より詳細には、ポリシーエンジン506は、変換されたファイルのコンテンツに対するクライアントノード502からの要求を受信する。1つの実施形態においては、ポリシーエンジン506は、クライアントノード502に変換されたファイルのコンテンツを提示できる変換サーバ516を識別する。一部の実施形態においては、変換サーバ516は以前に変換されたコンテンツのコピーを収容しているので、変換されたファイルのコンテンツを提示することが可能である。他の実施形態においては、変換サーバ516はファイルのコンテンツを今変換することが可能であるので、変換されたファイルのコンテンツを提示することが可能である。
【0077】
1つの実施形態においては、変換サーバ516がファイルのコンテンツを以前に変換したか否かを決定するために、ストレージエレメント518にクエリすることによって、ポリシーエンジン506は変換サーバ516を識別し得る。その実施形態においては、ポリシーエンジン506は、ストレージエレメント518によって識別された変換サーバ518の識別子を、クライアントノード502に送信する。他の実施形態においては、どの変換サーバ516も以前に変換されたコンテンツを有しない。そのような実施形態においては、代わって、ポリシーエンジンが、ファイルのコンテンツを今変換することが可能な変換サーバ516を識別し、その変換サーバ516にクライアントノード502の要求を送信する。
【0078】
他の実施形態においては、ポリシーエンジン506以外のサーバが、変換されたファイルのコンテンツをクライアントに提示することが可能な変換サーバ516を識別する。それらの実施形態の一部においては、その同じサーバがまた、クライアントへのファイルの提示の要求を変換サーバ516に送信する。これらの実施形態の一部においては、可能な変換サーバ516を識別する同じサーバが、ルーティングし、プロキシサーバを介して要求を変換サーバ516に送信する。
【0079】
1つの実施形態においては、要求されたファイルのコンテンツの変換およびクライアントノード502への提示の要求を、ポリシーエンジン506から変換サーバ516は受信する。別の実施形態においては、変換サーバ516はポリシーエンジン506以外のサーバから要求を受信する。変換サーバ516はファイルを抽出し、コンテンツを原型のフォーマットから第2のフォーマットに変換する。その後、変換サーバ516は、クライアントノード502からの接続を受け入れ、以前に変換されていない場合にはコンテンツを変換し、変換されたファイルのコンテンツを提示する。最後に、変換サーバ516は、ファイルのコンテンツを変換するサーバの識別子およびファイルの識別子を、ストレージエレメント518に書き込む。
【0080】
ここで図6を参照すると、フロー図は、要求されたファイルのコンテンツを変換し、変換されたコンテンツをクライアントノード502に提示するために、変換サーバ516によってとられるステップの1つの実施形態を描く。
【0081】
変換サーバ516は、要求されたファイルのコンテンツの変換およびクライアントノード502への提示の要求を受信する(ステップ600)。1つの実施形態においては、変換サーバ516は、この要求をネットワーク接続を介して受信する。
【0082】
変換サーバ516は、要求されたファイルのコンテンツを、原型のフォーマットから第2のフォーマットへ変換する(ステップ602)。1つの実施形態においては、変換サーバ516は、ファイルのコンテンツを、通常の表現を用いて、原型のフォーマットからクライアントに提示するための第2のフォーマトへ変換する。別の実施形態においては、変換サーバ516は、ファイルのコンテンツを原型のフォーマットから第2のフォーマトへ変換するが、変換サーバ516はフォーマットコンバージョンツールを含む。別の実施形態においては、変換サーバ516は、ファイルのコンテンツを原型のフォーマットからHTMLに変換する。別の実施形態においては、変換サーバ516は、ファイルのコンテンツを原型のフォーマットから、第2のフォーマットがパーソナルディジタルアシスタント上での提示を可能とする場合の第2のフォーマットに変換する。別の実施形態においては、変換サーバ516は、ファイルのコンテンツを原型のフォーマットから、第2のフォーマットがセルラー電話での提示を可能とする場合の第2のフォーマットに変換する。別の実施形態においては、変換サーバ516は、ファイルのコンテンツを原型のフォーマットから、第2のフォーマットがラップトップコンピュータ上での提示を可能とする場合の第2のフォーマットに変換する。別の実施形態においては、変換サーバ516は、ファイルのコンテンツを原型のフォーマットから、第2のフォーマットがインターネットキオスクでの提示を可能とする場合の第2のフォーマットに変換する。
【0083】
変換サーバ516は、変換についての識別情報をストレージエレメント518に書き込む(ステップ604)。1つの実施形態においては、識別情報は、変換サーバ516に対する識別子および変換されたファイルに対する識別子を含む。一部の実施形態においては、識別情報は、変換されたファイルのコンテンツを含むテンポラリファイルを含む。それらの実施形態においては、ストレージエレメント518は変換されたファイルのコンテンツのグローバルキャッシュ(global cache)として機能する。
【0084】
クライアントノード502に対して変換されたファイルのコンテンツを提示することが可能な変換サーバ516を、ポリシーエンジン506が識別した後に、ポリシーエンジン506は、変換サーバ516の識別子をクライアントノード502に送信する。クライアントノード502は、識別子を受信し、変換サーバ516に接続する。変換サーバ516は接続を受け入れ、接続を介して要求されたファイルの変換されたコンテンツを、クライアントノード502に提示する(ステップ606)。1つの実施形態においては、クライアントノード502への提示の後、変換サーバ516は要求されたファイルの変換されたコンテンツを保持する。
【0085】
図7を参照すると、本発明に従って構築されるコンピュータネットワーク700の1つの実施形態が描かれ、それは、第1のクライアントノード702、収集エージェント704、ポリシーエンジン706、ポリシーデータベース708、条件データベース710、第2のクライアントノード716、セッションサーバ720、ストアドアプリケーションデータベース722、アプリケーションサーバファーム724、第1のアプリケーションサーバ726、第1のデータベース728、第2のアプリケーションサーバ730、および、第2のデータベース732を含む。概要としては、第1のクライアントノード702が、リソースへのアクセスの要求712をアクセス制御サーバ706に送信したときに、収集エージェント704はクライアントノード702と通信して、クライアントノード702についての情報を抽出し、クライアントノードの情報714をポリシーエンジン706に送信する。ポリシーエンジン706は、図3において先に検討されたように、アクセス制御決定を行う。最後に、セッションサーバ720は、クライアントノード702との間の接続、および、クライアントノード702に関連する複数のアプリケーションセッションを構築する。コンピュータネットワーク700の付加的なコンポーネントは省略されており、図7Bにおいてさらに記述される。
【0086】
ここで、図7Bを参照すると、フロー図は、クライアントノード702をその関連するアプリケーションセッションと接続するために、セッションサーバ720によってとられるステップの1つの実施形態を描く。セッションサーバ720は、ポリシーエンジン706が行ったアクセス制御決定を含むクライアントノード702についての情報を、ポリシーエンジン706から受信する。1つの実施形態においては、情報はクライアントノードの情報714も含む。
【0087】
一部の実施形態においては、ポリシーエンジン706は、クライアントノード702にすでに関連している複数のアプリケーションセッションを識別する。他の実施形態においては、セッションサーバ720は、クライアントノード702に関連している格納されたアプリケーションセッションを識別する。一部の実施形態においては、セッションサーバ720は、ポリシーエンジン706から情報を受信した直後に、格納されたアプリケーションセッションを自動的に識別する。1つの実施形態においては、ストアドアプリケーションデータベース722はセッションサーバ720上に存在する。別の実施形態においては、ストアドアプリケーションデータベース722はポリシーエンジン706上に存在する。
【0088】
ストアドアプリケーションデータベース722は、アプリケーションセッションを実行するアプリケーションサーバファーム724の中の複数のサーバに関連するデータを含む。一部の実施形態においては、クライアントノード702に関連するアプリケーションセッションを識別することは、アプリケーションセッションを実行する1つ以上のサーバに関連する格納されたデータを調べることを要求する。これらの実施形態の一部においては、セッションストア720が、アプリケーションセッションを実行する1つ以上のサーバに関連する格納されたデータを調べる。これらの実施形態の他においては、ポリシーエンジン706が、アプリケーションセッションを実行する1つ以上のサーバに関連する格納されたデータを調べる。一部の実施形態においては、第1のアプリケーションセッションが第1のアプリケーションサーバ726上で稼動し、第2のアプリケーションセッションが第2のアプリケーションサーバ730上で稼動する。他の実施形態においては、すべてのアプリケーションセッションが、アプリケーションサーバファーム724内の単一のアプリケーションサーバ上で稼動する。
【0089】
セッションサーバ720は、ユーザによって開始されたアプリケーションセッションに関係する情報を含む。セッションサーバは、揮発性または不揮発性のメモリに格納され得、または、例えば複数のサーバを介して分散され得る。表7−1は、例示的なセッションサーバ720の一部に含まれるデータを示す。
【0090】
【表1】

表7−1の例示的なセッションサーバ720は、アプリケーションセッションを開始したユーザの各アプリケーションセッションに関連するデータ、もしあればサーバ726に現在接続されているユーザのクライアントコンピュータ702または716の識別子、および、そのクライアントコンピュータ702aまたは716のIPアドレスを含む。例示的なセッションサーバ720は、各アプリケーションセッションの状態(status)も含む。アプリケーションセッションの状態は、例えば「アクティブ」(ユーザがアプリケーションセッションに接続されているということを意味する)または「ディスコネクテッド」(ユーザがアプリケーションセッションに接続されていないということを意味する)であり得る。代替的な実施形態においては、アプリケーションセッションの状態はまた、「エクゼキューティングディスコネクテッド」(ユーザはアプリケーションセッションからすでにディスコネクトされているが、アプリケーションセッション中のアプリケーションはなお実行中であるということを意味する)または「ストールドディスコネクテッド」(ユーザはディスコネクトされており、アプリケーションセッション中のアプリケーションは実行していない、しかし、それらの作動状態はディスコネクト直前に格納されたということを意味する)に設定され得る。セッションサーバ720は、各アプリケーションセッション内で実行しているアプリケーション116を示す情報、および、サーバ上の各アプリケーションのプロセス示すデータをさらに格納する。サーバ726がサーバファーム724の一部である実施形態においては、セッションサーバ720は、少なくとも動的ストアの一部であり、サーバファームのサーバについて実行中または実行していた各アプリケーションを示す表1の最後の2行のデータ、および、そのサーバのIPアドレスも含む。代替的な実施形態においては、セッションサーバ720は、各アプリケーションセッション中の各アプリケーションに対する状態の指標を含む。
【0091】
例えば、表7−1の例においては、アプリケーションセッション1、アプリケーションセッション2、アプリケーションセッション3の、3つのアプリケーションセッションが存在する。アプリケーションセッション1は、現在ターミナル1を使用しているユーザ1に関連する。ターミナル1のIPアドレスは、152.16.2.50である。アプリケーションセッション1の状態はアクティブであり、アプリケーションセッション1においては、ワードプロセシングプログラムが実行中である。該ワードプロセシングプログラムは、プロセスナンバー1としてサーバA上で実行している。サーバAのIPアドレスは152.16.2.55である。表1のアプリケーションセッション2は、ディスコネクトされたアプリケーションセッション118の例である。アプリケーションセッション2はユーザ2に関連するが、アプリケーションセッション2はクライアントコンピュータ702aまたは716に接続されていない。アプリケーションセッション2は、プロセスナンバー3としてIPアドレス152.16.2.55で、サーバA上で実行しているデータベースプログラムを含む。アプリケーションセッション3は、異なるサーバ726上で作動するアプリケーションセッションとユーザが相互に作用し得る方法の例である。アプリケーションセッション3は、アプリケーションセッション1と同じく、ユーザ1に関連する。アプリケーションセッション3は、プロセスナンバー2としてIPアドレス152.16.2.56で、サーバB上で実行しているスプレッドシートプログラムを含み、アプリケーションセッション1に含まれるアプリケーションセッションはサーバA上で実行中である。
【0092】
1つの実施形態においては、セッションサーバ720は、クライアントノード702に関連するアプリケーションセッションをディスコネクトするためのディスコネクト要求を受信するように構成され、該要求に応じてそのようにアプリケーションセッションをディスコネクトする。セッションサーバ720は、アプリケーションセッションからクライアントノード702をディスコネクトした後もアプリケーションセッションを実行し続ける。この実施形態においては、セッションサーバ720は、ストアドアプリケーションデータベース722にアクセスし、クライアントノード702に関連するアプリケーションセッションがディスコネクトされているということをレコードが示すように、ディスコネクトされたアプリケーションセッションの各々に関連するデータレコードを更新する。
【0093】
不完全なネットワーク接続に起因する不慮のアプリケーションセッションの終了、および、彼らのアプリケーションセッションを彼ら自身で終了させてしまうユーザの失敗は、ユーザを困難に導き得る。本発明の1つの実施形態は、ディスコネクト(それは、ユーザがアプリケーションセッションによる作業を終えていない場合として扱われる)を終了(それは、アプリケーションセッションに対する意図的な終了であるとみなされる)と区別することによって、および、アプリケーションセッションを、クライアントノードとではなくユーザと相互に関連付けることによってこれらの困難を制限する。ユーザがアプリケーションセッションにおいて作動するアプリケーションの使用を終えたときには、ユーザはアプリケーションセッションを終了させ得る。一般的に、終了は、サーバがもはやアプリケーションセッションを維持する必要がないということを示す、ユーザの肯定的な入力を含む。そのような肯定的なユーザの入力は、メニューから「イクジット(EXIT)」オプションを選択すること、アイコンをクリックすることなどを含み得る。セッションサーバ720が終了の要求を受信したことに応じて、アプリケーションセッションおよびそのアプリケーションセッション内の全てのアプリケーションの実行は、停止される。1つの実施形態においては、アプリケーションセッションに関係するデータはまた、ストアドアプリケーションデータベース722から取り除かれる。
【0094】
その反対に、意図的であるか意図的でないかのいずれであっても、ディスコネクトはアプリケーションセッションの終了という結果にはならない。アプリケーションまたはアプリケーションセッションにおいて作動するアプリケーションは、サーバ720上で実行しているので、通常、第1のクライアントノード702への接続はアプリケーションの実行を継続するために必要ではなく、1つの実施形態においては、接続すべきユーザを待つ間にも、アプリケーションは実行することを継続し得る。代替的な実施形態においては、ユーザのディスコネクトの直後に、セッションサーバ720は、アプリケーションセッションにおいて作動するアプリケーションの実行をストール(stall)する。すなわち、セッションサーバ720はアプリケーションのさらなる実行を停止し、セッションサーバ720は、アプリケーションの作動の状態、および、該アプリケーションが処理している全てのデータを格納する。さらなる実施形態においては、セッションサーバ720は、ユーザのディスコネクトの後に、特定のアプリケーションの実行を選択的にストールし得る。例えば、1つの実施形態においては、セッションサーバ720は、固定された時間の間アプリケーションの実行を継続し、ユーザがその時間内に接続しなかった場合には、セッションサーバ720は該アプリケーションをストールする。別の実施形態においては、セッションサーバ720は、ユーザの入力がなければ実行を継続し得ない特定のアプリケーションセッションをストールする。上記の各々の実施形態においては、第1のクライアントノード702、第2のクライアントノード716または第3のクライアントコンピュータを作動する間に、第1のクライアントノード702のユーザがサーバ726からディスコネクトし、その後、サーバ726に接続した場合には、セッションサーバ720は、該ユーザによって作動されるクライアントコンピュータを、1つ以上の以前に開始され、終了されていない、該ユーザに関連するアプリケーションセッションに接続し得、全てのストールされたアプリケーションの実行を再開し得る。
【0095】
1つの実施形態においては、セッションサーバ720はディスコネクトを検出する。ユーザがそこから通信しているクライアントノード702または716から、アプリケーションセッションをディスコネクトすることを、ユーザは意図的にかつ手動で命令し得る。例えば、1つの実施形態においては、アプリケーションセッションは、ユーザが選択し得るディスコネクトのメニューオプション(上述の終了とは区別されるような)を提供する。セッションサーバ720は、意図的ではないディスコネクトも検出し得る。例えば、1つの実施形態においては、所定の、クライアントノード702または716に送信されたデータパケットの数が、クライアントノード702または716によって承認されない場合を、セッションサーバ720は識別する。別の実施形態においては、クライアントノード702または716は、接続が今も損なわれていないということを確認するために、サーバ726に、定期的に信号を送信する。クライアントノード702または716から、所定の予想される確認信号の数が到着しないということを、セッションサーバ720が検出した場合には、セッションサーバ720は、クライアントノード702または716がディスコネクトしていると決定する。ユーザが、意図的または意図的でなく、アプリケーションセッションからディスコネクトしているということを、セッションサーバ720が検出した場合には、ディスコネクトされたアプリケーションセッションに関係するセッションサーバ720のエントリーは、ディスコネクトを反映するように修正される。
【0096】
認証情報を受信した後に、ユーザに関連するが、例えば第1のクライアントノード702のような異なるクライアントノードに接続されている、全てのアクティブなアプリケーションセッションを識別するために、セッションサーバ720はストアドアプリケーションデータベース722を調べる。1つの実施形態においては、セッションサーバ720が全てのそのようなアクティブなアプリケーションセッションを識別した場合には、セッションサーバ720は、自動的に、第1のクライアントノード702から該アプリケーションセッションをディスコネクトし、現在のクライアントコンピュータ716に該アプリケーションセッションを接続する。一部の実施形態においては、受信された認証情報は、クライアントノード702が再接続し得るアプリケーションセッションを制限する。1つの実施形態においては、セッションサーバの自動的調査およびシングルユーザインターフェースのエレメントである選択先へのその後の接続を、ユーザがトリガーし得る。
【0097】
クライアントノード702に関連するアプリケーションセッションを識別した後に、セッションサーバ720は、クライアントノード702を関連するアプリケーションセッションに接続する。セッションサーバ720は、複数あるアプリケーションセッションの各々が、アクティブであるかまたはディスコネクトされているかを決定する。1つの実施形態においては、複数の中の少なくとも1つのアプリケーションセッションはアクティブである。1つの実施形態においては、複数の中の少なくとも1つのアプリケーションセッションはディスコネクトされている。1つの実施形態においては、セッションサーバ720は、アプリケーションの出力を自動的に受信する。別の実施形態においては、アプリケーションの出力の受信は、シングルユーザインターフェースのエレメントであるクライアントノード702の選択によってトリガーされる。セッションサーバ720は、受信した情報714に含まれるアクセス制御決定に基づき、クライアントノード702を再接続すべきディスコネクトされたアプリケーションセッションを識別する。1つの実施形態においては、全てのディスコネクトされたアプリケーションセッションを識別した後に、セッションサーバ720は、接続が望まれるか否かを示すようにユーザを促す。接続が望まれない場合には、ディスコネクトされたアプリケーションセッションがディスコネクトされたままであるべきか、または、アプリケーションセッションが終了されるべきかを示すように、セッションサーバ720はユーザを促す。
【0098】
1つの実施形態においては、ユーザがアプリケーションセッションに接続されているということを示すために、および、ユーザがそこからサーバに接続されているクライアントノード702を示すために、接続は、ストアドアプリケーションデータベース722のエントリーを修正することを含む。接続の直後に、サーバ726は、アプリケーションの出力データをクライアントノード702または716に送信することを再開する。1つの実施形態においては、クライアントノードに関連する複数のアプリケーションセッションは、接続前は第1のクライアントノード702に接続されていて、接続の後も、複数のアプリケーションセッションは第1のクライアントノード702に再接続される。別の実施形態においては、クライアントノードに関連する複数のアプリケーションセッションは、接続前は第1のクライアントノード702に接続されていて、接続の後は、複数のアプリケーションセッションは、第2のクライアントノード716に再接続される。
【0099】
以下の例示は、先に検討された方法および装置が、クライアントノードに対するファイルコンテンツへのポリシーベースのアクセスをどのように提供するかを示す。これらの例は例示のためであり、本発明を限定することを意味しない。
【0100】
(証拠の収集)
1つの実施形態においては、クライアントノード102は、ポリシーエンジン106が存在するのと同じネットワークに存在するサーバ上に置かれるワードプロセシングドキュメントへのアクセスを要求する。ポリシーエンジン106は、要求を受信し、クライアントノード102についての情報を所有していないということを決定する。ポリシーエンジン106は、収集エージェント104をクライアントノード102に送信する。一部の実施形態においては、収集エージェント104はクライアントノードから収集すべき既定の情報を有している。他の実施形態においては、収集エージェント104は、どんなタイプの情報を収集すべきかを決定するために、まずクライアントノードを分析する。なお他の実施形態においては、収集エージェント104は、クライアントノード102についてどんな情報を収集すべきかに関する命令をポリシーエンジン106から抽出する。
【0101】
いったんクライアントノード102上で実行すると、収集エージェント104は、要求された情報を集め、該情報112をポリシーエンジン106に送信する。ポリシーエンジン106は該情報112を受信し、どんな条件を情報112が満足するかを決定するプロセスを始める。一部の実施形態においては、情報112が1つ以上の条件を満足するか否かを決定するためには、受信した情報112は十分ではないということを、ポリシーエンジン106は決定する。それらの実施形態においては、ポリシーエンジン106は、クライアントノード102についてもっと多くの情報を集めるために、さらなる命令を収集エージェント104に送信する。
【0102】
(ポリシーベースのアクセス制御)
ポリシーエンジン106の第1のコンポーネント202が、1つ以上の条件が満足されたということを決定したときには、それは、満足された条件の各々に対する識別子をデータセットの中に格納する。完了した直後に、第1のコンポーネント202は、データセットおよび要求されたアプリケーションを第2のコンポーネント210に送信する。この実施形態の例においては、要求されたアプリケーションはワードプロセシングドキュメントであり得、満足された条件はクライアントのデバイスがパーソナルディジタルアシスタントであるということを示し得る。この実施形態の別の例においては、要求されたアプリケーションはスプレッドシートであり得、満足された条件は、クライアントのデバイスが、公共インターネットキオスクのような安全でないネットワークから接続する信頼できるラップトップであるということを示し得る。この実施形態の第3の例においては、要求されたアプリケーションは電子メールメッセージに添付されたファイルであり得、満足された条件は、クライアントのデバイスは安全なネットワークから接続するパーソナルデスクトップ上にあるが、ファイルを見る適切なアプリケーションソフトウェアを欠いているということを示し得る。
【0103】
第2のコンポーネント210は、第1のコンポーネント202からデータセットを受信し、1つ以上のポリシーを受信したデータに適用する。この実施形態の1つの例においては、第2のコンポーネント210は、クライアントのデバイスのタイプがパーソナルディジタルアシスタントであるときに、クライアントノードがそのアプリケーションソフトウェアについて有する条件が満足されない場合には、クライアントノードが変換されたファイルのコンテンツを受信する、ということを要求するポリシーを適用し得る。そして、クライアントのデバイスのタイプにアクセス可能なフォーマットでファイルのコンテンツを提示する、変換サーバへの接続を可能にする実行可能なファイルを、クライアントノードは受信する。このポリシーを適用することは、見るためには不適切なフォームファクタ(form factor)であるにもかかわらず、クライアントノードにファイルのコンテンツを見ることを可能とする。
【0104】
この実施形態の別の例においては、第2のコンポーネント210は、クライアントのデバイスのタイプは信頼できるラップトップであり、適切なソフトウェアを含んでいるが、インターネトキオスクのような安全でないネットワークからであるときに、クライアントノード102へのダウンロードを禁止するポリシーを適用し得る。この実施形態においては、ファイルのコンテンツの提示のために、アプリケーションサーバ416への接続を可能とする実行可能なファイルをクライアントノード102に、ポリシーエンジン106が送信するということをポリシーは要求し得る。このタイプのポリシーを適用すること、および、アプリケーションサーバ416に対してだけファイルを抽出することは、ファイルの所有コンテンツを不適切な散布による危険に晒すことなく、クライアントノード102にファイルのコンテンツを見せることを可能とする。
【0105】
この実施形態のなお別の例においては、安全な接続ではあるが適切なアプリケーションソフトウェアを欠いているデスクトップは、ICAセッションを介してアプリケーションサーバ416に接続するということ、および、アプリケーションサーバ416が適切なアプリケーションを実行し、ファイルをクライアントノード102に提示するということを要求するポリシーを、第2のコンポーネント210は適用し得る。該ポリシーを適用することは、クライアントノード102上に適切なアプリケーションソフトウェアを欠くにもかかわらず、クライアントノード102がファイルのコンテンツを見ることを可能とする。
【0106】
本発明は、1つ以上の製品上または製品中に具体化された、1つ以上のコンピュータ読取り可能なプログラムとして提供され得る。該製品は、フロッピー(登録商標)ディスク、ハードディスク、コンパクトディスク、デジタル多目的ディスク、フラッシュメモリカード、PROM、RAM、ROMまたは磁気テープであり得る。一般に、コンピュータ読取り可能なプログラムは、任意のプログラミング言語でインプリメントされ得る。使用され得る言語の一部の例は、C、C++、C#またはJAVA(登録商標)を含む。ソフトウェアプログラムは、オブジェクトコードとして1つ以上の製品上または製品中に格納され得る。
【0107】
本発明が、特定の好ましい実施形態に関連して示され、記述されて来たが、特許請求の範囲によって規定される本発明の意図および範囲を逸脱することなく、形態および詳細における様々な変更がそこに為され得るということが、当業者によって理解される。
【図面の簡単な説明】
【0108】
【図1A】図1Aは、本発明の例示的な実施形態の実行に適した環境のブロック図である。
【図1B】図1Bは,本発明に関して有用なコンピュータの実施形態を描くブロック図である。
【図1C】図1Cは,本発明に関して有用なコンピュータの実施形態を描くブロック図である。
【図1D】図1Dは、ネットワークが、ネットワークリソースへのアクセスを許可するポリシーベースのシステムを提供する、コンピュータネットワークの実施形態のブロック図である。
【図2】図2は、ポリシーエンジンの実施形態のより詳細なブロック図である。
【図3】図3は、クライアントノードについて受信された情報に基づきアクセス制御決定を行うために、ポリシーエンジンによってとられるステップの実施形態を描くフロー図である。
【図4】図4は、ネットワークが、クライアントノードに対するファイルのコンテンツへのポリシーベースのアクセスを提供する、コンピュータネットワークの実施形態のブロック図である。
【図4B】図4Bは、クライアントノードにファイルのコンテンツを提供するために、アプリケーションサーバファームによってとられるステップの1つの実施形態を描くフロー図である。
【図5】図5は、ネットワークが、リソースの変換されたコンテンツへのアクセスを許可する、コンピュータネットワークの実施形態のブロック図である。
【図6】図6は、要求されたファイルのコンテンツを変換し、変換されたコンテンツをクライアントノードに提示するために、変換サーバによってとられるステップの1つの実施形態を描くフロー図である。
【図7】図7は、複数のアプリケーションセッションへの認証されたリモートアクセスが提供される、コンピュータネットワークの実施形態のブロック図である。
【図7B】図7Bは、クライアントノードをそれに関連するアプリケーションセッションに接続するために、セッションサーバによってとられるステップの1つの実施形態を描くフロー図である。

【特許請求の範囲】
【請求項1】
リソースへのアクセスを認可するシステムであって、
a.リソースへのアクセスを要求するクライアントノードと、
b.該クライアントノードに関する情報を集める収集エージェントと、
c.該集められた情報を受信し、ポリシーの適用に応答して、複数のアクセスのレベルのうちの1つを該受信した情報に割り当てるポリシーエンジンと
を備える、システム。
【請求項2】
前記ポリシーエンジンは、構成可能なポリシーを格納するデータベースをさらに含む、請求項1に記載のシステム。
【請求項3】
システムアドミニストレータは、前記ポリシーエンジンにおけるポリシーを構成し、アクセスのレベルを制御する権限を前記クライアントノードに提供する、請求項1に記載のシステム。
【請求項4】
前記ポリシーエンジンは、前記収集エージェントが集める情報のタイプを決定する命令を該収集エージェントに伝送する、請求項1に記載のシステム。
【請求項5】
前記ポリシーエンジンは、ログオンエージェントをさらに含む、請求項1に記載のシステム。
【請求項6】
前記ログオンエージェントは、前記集められた情報を前記収集エージェントから受信する、請求項5に記載のログオンエージェント。
【請求項7】
前記ログオンエージェントは、前記ポリシーエンジンに対し、前記収集エージェントから受信した認証情報を識別する、請求項5に記載のログオンエージェント。
【請求項8】
前記ポリシーエンジンは、複数のログオンエージェントをさらに含む、請求項1に記載のシステム。
【請求項9】
前記複数のログオンエージェントのうちの少なくとも1つは、各ネットワークドメインに常駐し、クライアントノードは、各ネットワークドメインからリソース要求を伝送し得る、請求項8に記載のシステム。
【請求項10】
前記クライアントノードは、前記リソース要求を特定のログオンエージェントに伝送する、請求項9に記載のシステム。
【請求項11】
前記ログオンエージェントは、前記ポリシーエンジンに対し、前記ネットワークドメインを識別し、前記クライアントノードは、該ネットワークドメインから前記リソース要求を伝送する、請求項10に記載のシステム。
【請求項12】
前記収集エージェントは、前記クライアントノード上で実行する、請求項1に記載のシステム。
【請求項13】
前記ポリシーエンジンは、前記収集エージェントを前記クライアントノードに伝送する、請求項1に記載のシステム。
【請求項14】
前記収集エージェントは、少なくとも1つのスクリプトを含む、請求項1に記載のシステム。
【請求項15】
前記収集エージェントは、バイトコードを含む、請求項1に記載のシステム。
【請求項16】
前記収集エージェントは、前記クライアントノード上で少なくとも1つのスクリプトを実行することにより、情報を集める、請求項1に記載のシステム。
【請求項17】
前記収集エージェントは、前記クライアントノードに関する情報を集め、該情報は、サーバ上に常駐する、請求項1に記載のシステム。
【請求項18】
前記収集エージェントは、HTTPヘッダを含む情報を集める、請求項17に記載のシステム。
【請求項19】
前記収集エージェントは、前記クライアントノードのネットワークゾーンを含む情報を集める、請求項17に記載のシステム。
【請求項20】
前記収集エージェントは、前記クライアントノードによって用いられる認証の方法を含む情報を集める、請求項17に記載のシステム。
【請求項21】
前記収集エージェントは、前記クライアントノードのマシンIDを集める、請求項1に記載のシステム。
【請求項22】
前記収集エージェントは、オペレーティングシステムのタイプを含む情報を集める、請求項1に記載のシステム。
【請求項23】
前記収集エージェントは、オペレーティングシステムに対するパッチの存在を含む情報を集める、請求項1に記載のシステム。
【請求項24】
前記収集エージェントは、インストールされたネットワークカードのMACアドレスを含む情報を集める、請求項1に記載のシステム。
【請求項25】
前記収集エージェントは、前記クライアントデバイスのウォーターマークを含む情報を集める、請求項1に記載のシステム。
【請求項26】
前記収集エージェントは、アクティブディレクトリにおけるメンバーシップを含む情報を集める、請求項1に記載のシステム。
【請求項27】
前記収集エージェントは、ウイルススキャナの存在を含む情報を集める、請求項1に記載のシステム。
【請求項28】
前記収集エージェントは、ファイアウォールの存在を含む情報を集める、請求項1に記載のシステム。
【請求項29】
前記収集エージェントは、HTTPヘッダを含む情報を集める、請求項1に記載のシステム。
【請求項30】
リソースへのアクセスを許可する方法であって、該方法は、
a.クライアントノードにより、リソースへのアクセスを要求するステップと、
b.収集エージェントにより、該クライアントノードに関する情報を集めるステップと、
c.ポリシーエンジンにより、該集められた情報を受信するステップと、
d.および、
e.該受信した情報に基づいて、アクセス制御決定を行なうステップと
を包含する、方法。
【請求項31】
ステップ(a)は、ネットワーク接続を介して前記リソースを要求することをさらに含む、請求項30に記載の方法。
【請求項32】
ステップ(b)は、ネットワーク接続を介して前記情報を集めことをさらに含む、請求項30に記載の方法。
【請求項33】
ステップ(b)は、前記クライアントノード上で少なくとも1つのスクリプトを実行することにより、情報を集めることをさらに含む、請求項30に記載の方法。
【請求項34】
ステップ(c)は、前記受信した情報が条件を満足するか否かを決定することをさらに含む、請求項30に記載の方法。
【請求項35】
前記受信した情報を少なくとも1つの条件と比較することにより、該受信した情報が条件を満足するか否かを決定することをさらに含む、請求項34に記載の方法。
【請求項36】
ステップ(d)は、前記条件にポリシーを適用することにより、アクセス制御決定を行なうことをさらに含む、請求項35に記載の方法。
【請求項37】
a.クライアントノードに関する情報を受信する第1のコンポーネントであって、該情報からデータセットを生成する、第1のコンポーネントと、
b.該データセットを受信する第2のコンポーネントであって、該データセットに基づいて、該クライアントに利用可能なリソースの列挙を該第1のコンポーネントに提供する、第2のコンポーネントと
を備える、ポリシーエンジン。
【請求項38】
前記第1のコンポーネントは、収集エージェントから前記情報を受信する、請求項37に記載のポリシーエンジン。
【請求項39】
前記第1のコンポーネントは、少なくとも1つの条件を含み、受信された情報は、該少なくとも1つの条件と比較される、請求項37に記載のポリシーエンジン。
【請求項40】
前記第2のコンポーネントは、データベースをさらに含む、請求項37に記載のポリシーエンジン。
【請求項41】
前記データベースは、少なくとも1つのポリシーを格納する、請求項40に記載のポリシーエンジン。
【請求項42】
前記第2のコンポーネントは、前記少なくとも1つのポリシーを前記データセットに適用することにより利用可能なリソースを識別することをさらに含む、請求項41に記載のポリシーエンジン。
【請求項43】
前記ポリシーエンジンは、ログオンエージェントをさらに含む、請求項37に記載のポリシーエンジン。
【請求項44】
前記ログオンエージェントは、前記集められた情報を前記収集エージェントから受信する、請求項43に記載のログオンエージェント。
【請求項45】
前記ログオンエージェントは、前記ポリシーエンジンに対し、前記収集エージェントから受信した認証情報を識別する、請求項44に記載のログオンエージェント。
【請求項46】
前記ポリシーエンジンは、複数のログオンエージェントをさらに含む、請求項43に記載のポリシーエンジン。
【請求項47】
前記複数のログオンエージェントのうちの少なくとも1つは、各ネットワークドメインに常駐し、クライアントノードは、各ネットワークドメインからリソース要求を伝送し得る、請求項46に記載のポリシーエンジン。
【請求項48】
前記クライアントノードは、前記リソース要求を特定のログオンエージェントに伝送する、請求項47に記載のポリシーエンジン。
【請求項49】
ポリシーエンジンを用いてアクセスを許可する方法であって、該方法は、
a.第1のコンポーネントにより、クライアントノードに関する情報を受信するステップと、
b.該第1のコンポーネントにより、該情報からデータセットを生成するステップと、
c.および、
d.第2のコンポーネントにより、該クライアントに利用可能なリソースの列挙を提供するステップと
を包含する、方法。
【請求項50】
前記データセットに基づいて、第2のコンポーネントにより、前記クライアントノードに利用可能なリソースを識別するステップをさらに包含する、請求項49に記載の方法。
【請求項51】
前記受信したデータセットにポリシーを適用することにより、利用可能なリソースを識別することをさらに包含する、請求項50に記載の方法。
【請求項52】
要求するステップをさらに包含する、請求項49に記載の方法。
【請求項53】
前記クライアントノードに関するさらなる情報を受信するステップをさらに包含する、請求項49に記載の方法。
【請求項54】
ステップ(c)は、前記第2のコンポーネントにより、前記受信した情報にポリシーを適用し、前記クライアントノードに利用可能なアクセス方法を決定することをさらに含む、請求項49に記載の方法。
【請求項55】
ステップ(c)は、前記第1のコンポーネントにより、利用可能なリソースの列挙を受信することをさらに含む、請求項49に記載の方法。
【請求項56】
ステップ(c)は、前記第1のコンポーネントにより、利用可能なリソースのサブセットの列挙を受信することをさらに含む、請求項55に記載の方法。
【請求項57】
ステップ(c)は、前記第1のコンポーネントにより、前記列挙を前記クライアントノードに提供することをさらに含む、請求項55に記載の方法。
【請求項58】
ステップ(c)は、前記第1のコンポーネントにより、前記列挙をHTMLページ上で前記クライアントノードに提供することをさらに含む、請求項55に記載の方法。
【請求項59】
ファイルコンテンツを提供する方法であって、
a.クライアントノードにより、ファイルに対する要求を伝送するステップと、
b.アクセス制御サーバにより、ファイルに対する要求を受信するステップと、
c.アクセス制御サーバにより、アクセス制御決定を行なうステップと、
d.該ファイルに対するファイルタイプを決定するステップと、
e.該ファイルタイプに関連するアプリケーションプログラムに対する識別子を決定するステップと、
f.該ファイルのコンテンツを該クライアントノードに提示するステップと
を包含する、方法。
【請求項60】
ステップ(f)は、アプリケーションサーバファームにおけるアプリケーションサーバにより、前記ファイルの前記コンテンツを前記クライアントノードに提示することをさらに含む、請求項59に記載の方法。
【請求項61】
前記アプリケーションサーバファームにおける第1のアプリケーションサーバにより、前記ファイルタイプに関連するアプリケーションプログラムを決定することをさらに包含する、請求項59に記載の方法。
【請求項62】
前記アプリケーションサーバファームにおける前記第1のアプリケーションサーバにより、前記ファイルの前記コンテンツを前記クライアントノードに提示することをさらに包含する、請求項61に記載の方法。
【請求項63】
前記アプリケーションサーバファームにおける第2のアプリケーションサーバにより、前記ファイルのコンテンツを前記クライアントノードに提示することをさらに包含する、請求項61に記載の方法。
【請求項64】
ステップ(d)は、アクセス制御サーバにより、前記ファイルに対するファイルタイプを決定することをさらに含む、請求項59に記載の方法。
【請求項65】
ステップ(d)は、アプリケーションサーバファームにおけるアプリケーションサーバにより、前記ファイルに対するファイルタイプを決定することをさらに含む、請求項59に記載の方法。
【請求項66】
ステップ(e)は、アクセス制御サーバにより、前記ファイルタイプに関連するアプリケーションプログラムに対する識別子を決定することをさらに含む、請求項59に記載の方法。
【請求項67】
ステップ(e)は、アプリケーションサーバファームにおけるアプリケーションサーバにより、前記ファイルタイプに関連するアプリケーションプログラムに対する識別子を決定することをさらに含む、請求項59に記載の方法。
【請求項68】
前記アクセス制御サーバにより、前記クライアントノードに関する情報を取得するステップをさらに包含する、請求項59に記載の方法。
【請求項69】
ステップ(c)は、前記アクセス制御サーバによって取得された情報をポリシーと比較することにより、アクセス制御決定を行なうステップをさらに含む、請求項68に記載の方法。
【請求項70】
ステップ(f)は、アプリケーションサーバにより、取得された情報を用いることにより、前記ファイルコンテンツの提示に対するフォーマットを選択することをさらに含む、請求項68に記載の方法。
【請求項71】
ステップ(f)は、前記取得された情報にポリシーを適用することにより、前記ファイルコンテンツを提示し、該ファイルコンテンツの提示に対するフォーマットを選択することをさらに含む、請求項68に記載の方法。
【請求項72】
前記アクセス制御サーバにより、収集エージェントを前記クライアントノードに伝送するステップをさらに包含する、請求項59に記載の方法。
【請求項73】
前記アクセス制御サーバにより、収集エージェントを用いることにより、前記クライアントノードに関する情報を取得するステップをさらに包含する、請求項59に記載の方法。
【請求項74】
ステップ(c)は、前記収集エージェントによって取得された前記情報をポリシーと比較することにより、アクセス制御決定を行なうことをさらに含む、請求項73に記載の方法。
【請求項75】
ステップ(c)は、前記アクセス制御サーバにより、前記要求を拒絶することをさらに含む、請求項59に記載の方法。
【請求項76】
ステップ(d)は、前記アクセス制御サーバにより、ファイル拡張子を抽出することによって前記ファイルタイプを決定することをさらに含む、請求項59に記載の方法。
【請求項77】
ステップ(e)は、アプリケーションサーバにより、ファイル拡張子と共に用いるアプリケーションプログラムに対するデータベースをクエリすることにより、該アプリケーションプログラムの識別子を決定することをさらに含む、請求項59に記載の方法。
【請求項78】
ファイルサーバから前記ファイルを抽出するステップをさらに包含する、請求項59に記載の方法。
【請求項79】
アプリケーションサーバにより、ファイルサーバから前記ファイルを抽出するステップをさらに包含する、請求項78に記載の方法。
【請求項80】
アクセス制御サーバにより、ファイルサーバから前記ファイルを抽出するステップをさらに包含する、請求項78に記載の方法。
【請求項81】
ウェブサーバから前記ファイルを抽出するステップをさらに包含する、請求項59に記載の方法。
【請求項82】
アプリケーションサーバにより、ウェブサーバから前記ファイルを抽出するステップをさらに包含する、請求項81に記載の方法。
【請求項83】
アクセス制御サーバにより、ウェブサーバから前記ファイルを抽出するステップをさらに包含する、請求項81に記載の方法。
【請求項84】
eメールサーバから前記ファイルを抽出するステップをさらに包含する、請求項59に記載の方法。
【請求項85】
アプリケーションサーバにより、eメールサーバから前記ファイルを抽出するステップをさらに包含する、請求項84に記載の方法。
【請求項86】
アクセス制御サーバにより、eメールサーバから前記ファイルを抽出するステップをさらに包含する、請求項84に記載の方法。
【請求項87】
前記クライアントノードにより、アプリケーションサーバに接続するステップをさらに包含する、請求項59に記載の方法。
【請求項88】
ステップ(f)は、前記接続を介して前記クライアントノードに前記ファイルの前記コンテンツを提示することをさらに含む、請求項87に記載の方法。
【請求項89】
アクセス制御サーバにより、実行可能なファイルを前記クライアントノードに伝送するステップをさらに包含する、請求項59に記載の方法。
【請求項90】
前記実行可能なファイルにより、前記クライアントノードに対する前記ファイルを開くアプリケーションサーバを識別することをさらに包含する、請求項89に記載の方法。
【請求項91】
ステップ(a)は、ネットワーク境界によって第2のネットワークから分離された第1のネットワークに前記クライアントノードを常駐させ、アクセス制御サーバからファイルを要求するクライアントノードを該第2のネットワークに常駐させることをさらに含む、請求項59に記載の方法。
【請求項92】
ステップ(d)は、前記アクセス制御サーバがコンテンツサーバから前記ファイルをダウンロードすることをさらに含む、請求項85に記載の方法。
【請求項93】
ファイルコンテンツを提供するシステムであって、
a.ファイルを要求するクライアントノードと、
b.該ファイルに対する該要求を受信し、アクセス制御決定を行なうアクセス制御サーバと、
c.該要求されたファイルに対するファイルタイプに関連するアプリケーションプログラムを用いることにより、該ファイルコンテンツを該クライアントノードに提示するアプリケーションサーバと
を備える、システム。
【請求項94】
前記アプリケーションサーバは、前記ファイルタイプに関連するアプリケーションプログラムを識別することをさらに含む、請求項93に記載のシステム。
【請求項95】
前記アクセス制御サーバは、前記ファイルタイプに関連するアプリケーションプログラムを識別することをさらに含む、請求項93に記載のシステム。
【請求項96】
前記アクセス制御サーバは、少なくとも1つのポリシーを格納するデータベースをさらに含む、請求項93に記載のシステム。
【請求項97】
前記アクセス制御サーバは、前記クライアントノードに関する情報を取得する収集エージェントをさらに含む、請求項93に記載のシステム。
【請求項98】
前記アクセス制御サーバは、前記収集エージェントによって取得された情報に基づいて
アクセス制御決定を行なうことをさらに含む、請求項97に記載のシステム。
【請求項99】
前記アクセス制御サーバは、前記収集エージェントによって取得された前記情報にポリシーを適用することにより、アクセス制御決定を行なうことをさらに含む、請求項97に記載のシステム。
【請求項100】
前記収集エージェントは、デバイスのタイプについての前記クライアントノードに関する情報を取得する、請求項97に記載のシステム。
【請求項101】
前記収集エージェントは、ネットワーク接続情報についての前記クライアントノードに関する情報を取得する、請求項97に記載のシステム。
【請求項102】
前記収集エージェントは、認証証明についての前記クライアントノードに関する情報を取得する、請求項97に記載のシステム。
【請求項103】
前記アプリケーションサーバは、少なくとも1つのファイルタイプに関連する少なくとも1つのアプリケーションプログラムを含んだデータベースを含む、請求項93に記載のシステム。
【請求項104】
前記アプリケーションサーバは、前記データベースをクエリすることにより、アプリケーションプログラムに対する識別子を決定することをさらに含む、請求項103に記載のシステム。
【請求項105】
前記アクセス制御サーバは、実行可能なファイルを前記クライアントノードに伝送する、請求項93に記載のシステム。
【請求項106】
前記実行可能なファイルは、前記ファイルに関連するアプリケーションプログラムに対する識別子を含む、請求項105に記載のシステム。
【請求項107】
前記実行可能なファイルは、アプリケーションサーバを識別する、請求項105に記載のシステム。
【請求項108】
前記クライアントノードは、前記実行可能なファイルによって識別されるアプリケーションサーバに対する接続を行なう、請求項105に記載のシステム。
【請求項109】
前記アプリケーションサーバは、前記クライアントノードからの接続を受け入れる、請求項105に記載のシステム。
【請求項110】
前記クライアントノードは、前記実行可能なファイルによって識別される前記アプリケーションプログラムに対する前記識別子を前記アプリケーションサーバに伝送する、請求項105に記載のシステム。
【請求項111】
前記アプリケーションサーバは、前記接続を介することにより、前記ファイルコンテンツを前記クライアントノードに提示する、請求項105に記載のシステム。
【請求項112】
リソースへのアクセスを認可するシステムであって、
a.リソースへのアクセスを要求するクライアントノードと、
b.該クライアントノードに関する情報を集める収集エージェントと、
c.該集められた情報を受信し、該受信した情報に基づいて、アクセス制御決定を行なうポリシーエンジンと、
d.該ポリシーエンジンから該ファイルに対する要求を受信する変換サーバであって、該ファイルのコンテンツを原型のフォーマットから第2のフォーマットに変換し、該ファイルの該変換されたコンテンツを該クライアントノードに提示する、変換サーバと
を備える、システム。
【請求項113】
前記変換サーバは、プロキシサーバを介することにより、前記ポリシーエンジンから前記ファイルに対する前記要求を受信する、請求項112に記載のシステム。
【請求項114】
前記ポリシーエンジンは、前記集められた情報へのポリシーの適用に基づいて、アクセス制御決定を行なう、請求項112に記載のシステム。
【請求項115】
前記ポリシーエンジンは、データベースをさらに含む、請求項112に記載のシステム。
【請求項116】
前記ポリシーエンジンは、ログオンエージェントをさらに含む、請求項112に記載のシステム。
【請求項117】
前記ログオンエージェントは、前記収集エージェントから前記集められた情報を受信する、請求項116に記載のシステム。
【請求項118】
前記収集エージェントは、前記クライアントノード上で実行する、請求項112に記載のシステム。
【請求項119】
前記ポリシーエンジンは、前記収集エージェントを前記クライアントノードに伝送する、請求項112に記載のシステム。
【請求項120】
前記収集エージェントは、少なくとも1つのスクリプトを含む、請求項112に記載のシステム。
【請求項121】
前記収集エージェントは、バイトコードを含む、請求項112に記載のシステム。
【請求項122】
前記ポリシーエンジンは、前記収集エージェントが集める情報のタイプを決定する命令を該収集エージェントに伝送する、請求項112に記載のシステム。
【請求項123】
前記収集エージェントは、前記クライアントノード上で少なくとも1つのスクリプトを実行することにより、情報を集める、請求項112に記載のシステム。
【請求項124】
前記収集エージェントは、前記クライアントノードのデバイスのタイプについての情報を集める、請求項112に記載のシステム。
【請求項125】
前記収集エージェントは、前記クライアントノードのネットワーク接続についての情報を集める、請求項112に記載のシステム。
【請求項126】
前記収集エージェントは、ブラウザのタイプを含む情報を集める、請求項112に記載のシステム。
【請求項127】
前記収集エージェントは、オペレーティングシステムのタイプを含む情報を集める、請求項112に記載のシステム。
【請求項128】
リソースへのアクセスを許可する方法であって、該方法は、
a.クライアントノードにより、ファイルへのアクセスを要求するステップと、
b.収集エージェントにより、該クライアントノードに関する情報を集めるステップと、
c.ポリシーエンジンにより、該集められた情報を受信するステップと、
d.該受信した情報に基づいて、アクセス制御決定を行なうステップと、
e.変換サーバにより、該ファイルのコンテンツを原型のフォーマットから第2のフォーマットに変換するステップと、
f.該変換サーバにより、該ファイルの該変換されたコンテンツを該クライアントノードに提示するステップと
を包含する、方法。
【請求項129】
前記ポリシーエンジンにより、前記ファイルに対する前記要求を変換サーバに伝送することをさらに含む、請求項128に記載の方法。
【請求項130】
プロキシサーバを介することにより、前記ファイルに対する前記要求を前記変換サーバにルーティングすることをさらに含む、請求項128に記載の方法。
【請求項131】
プロキシサーバを介することにより、前記ポリシーエンジンによって、前記ファイルに対する前記要求を前記変換サーバにルーティングすることをさらに含む、請求項128に記載の方法。
【請求項132】
ステップ(a)は、ネットワーク接続を介して、前記リソースを要求することをさらに含む、請求項128に記載の方法。
【請求項133】
ステップ(b)は、前記収集エージェントにより、ネットワーク接続を介して前記情報を集めることをさらに含む、請求項128に記載の方法。
【請求項134】
ステップ(b)は、前記クライアントノード上で少なくとも1つのスクリプトを実行することにより、該収集エージェントによって、情報を集めることをさらに含む、請求項128に記載の方法。
【請求項135】
ステップ(c)は、前記ポリシーエンジンにより、前記受信した情報が条件を満足するか否かを決定することをさらに含む、請求項128に記載の方法。
【請求項136】
前記ポリシーエンジンにより、前記受信した情報を少なくとも1つの条件と比較することにより、該受信した情報が条件を満足するか否かを決定することをさらに含む、請求項128に記載の方法。
【請求項137】
ステップ(d)は、前記ポリシーエンジンにより、ポリシーを前記条件に適用することによって、アクセス制御決定を行なうことをさらに含む、請求項136に記載の方法。
【請求項138】
a.クライアントノードに関する情報を受信する第1のコンポーネントであって、該受信した情報からデータセットを生成する、第1のコンポーネントと、
b.該データセットを受信する第2のコンポーネントであって、該データセットに基づいて、該クライアントに利用可能なリソースの列挙を該第1のコンポーネントに提供する、第2のコンポーネントと
を備える、ポリシーエンジン。
【請求項139】
前記第1のコンポーネントは、収集エージェントから前記情報を受信する、請求項138に記載のポリシーエンジン。
【請求項140】
前記第1のコンポーネントは、少なくとも1つの条件を含み、受信された情報は、該少なくとも1つの条件と比較される、請求項138に記載のポリシーエンジン。
【請求項141】
前記第2のコンポーネントは、データベースをさらに含む、請求項138に記載のポリシーエンジン。
【請求項142】
前記データベースは、少なくとも1つのポリシーを格納する、請求項141に記載のポリシーエンジン。
【請求項143】
前記第2のコンポーネントは、前記少なくとも1つのポリシーを前記データセットに適用することにより、利用可能なリソースを識別することをさらに含む、請求項142に記載のポリシーエンジン。
【請求項144】
ポリシーエンジンを用いてアクセスを許可する方法であって、該方法は、
a.第1のコンポーネントにより、クライアントノードに関する情報を受信するステップと、
b.該第1のコンポーネントにより、該情報からデータセットを集めるステップと、
c.第2のコンポーネントにより、該クライアントに利用可能なリソースの列挙を提供するステップと
を包含する、方法。
【請求項145】
第2のコンポーネントにより、前記データセットに基づいて、前記クライアントノードに利用可能なリソースを識別するステップをさらに含む、請求項144に記載の方法。
【請求項146】
前記受信したデータセットにポリシーを適用することにより、利用可能なリソースを識別することをさらに含む、請求項145に記載の方法。
【請求項147】
前記クライアントノードに関する情報を要求するステップをさらに含む、請求項144に記載の方法。
【請求項148】
前記クライアントノードに関するさらなる情報を受信するステップをさららに含む、請求項144に記載の方法。
【請求項149】
ステップ(b)は、前記第1のコンポーネントにより、前記受信した情報にポリシーを適用し、前記クライアントノードに利用可能なアクセス方法を決定することをさらに含む、請求項144に記載の方法。
【請求項150】
ステップ(c)は、前記第2のコンポーネントにより、利用可能なリソースのサブセットの列挙を前記クライアントノードに提供することをさらに含む、請求項144に記載の方法。
【請求項151】
ステップ(c)は、前記第1のコンポーネントにより、利用可能なリソースの列挙を受信することをさらに含む、請求項144に記載の方法。
【請求項152】
ステップ(c)は、前記第1のコンポーネントにより、前記列挙を前記クライアントノードに提供することをさらに含む、請求項151に記載の方法。
【請求項153】
ステップ(c)は、前記第1のコンポーネントにより、前記列挙をHTMLページ上で前記クライアントノードに提供することをさらに含む、請求項151に記載の方法。

【図1A】
image rotate

【図1B】
image rotate

【図1C】
image rotate

【図1D】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図4B】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図7B】
image rotate


【公表番号】特表2008−515085(P2008−515085A)
【公表日】平成20年5月8日(2008.5.8)
【国際特許分類】
【出願番号】特願2007−534587(P2007−534587)
【出願日】平成17年8月10日(2005.8.10)
【国際出願番号】PCT/US2005/028607
【国際公開番号】WO2006/038987
【国際公開日】平成18年4月13日(2006.4.13)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.FRAM
2.Linux
【出願人】(502239313)サイトリックス システムズ, インコーポレイテッド (36)
【Fターム(参考)】