(57)【要約】【課題】  コンテキスト認識のデータ保護のための方法、システム、及びコンピュータ・プログラムを提供する。【解決手段】  アクセス・コンテキストの影響を受ける資源が識別される。資源の識別は、アクセス・コンテキストが資源に影響を与えるという推測を資源の内容の部分から行うことによって資源に関する知識を引き出すステップ、アクセス・コンテキストが第２の資源に影響を与えるという推測を行い、それによって、資源が修正されなければならないということを推測するステップ、アクセス・コンテキストが資源に関連しているということを決定するステップ、又はそれらの組み合わせを含み得る。資源が受け取られる。アクセス・コンテキストに適用可能なポリシが識別される。ポリシに従って修正すべき資源の部分が決定される。その資源の部分がポリシ及びアクセス・コンテキストに従って修正され、修正された資源を形成する。修正された資源が送信される。【選択図】  図９
2013533993.tif 000002
【特許請求の範囲】
【請求項１】
コンテキスト認識のデータ保護のためにコンピュータを利用する方法であって、
データ処理システムにおいてアクセス・コンテキストに関する情報を受け取るステップと、
前記アクセス・コンテキストの影響を受ける資源を識別するステップであって前記資源はデータである、ステップと、
前記資源を受け取るステップと、
前記アクセス・コンテキストに対応するセキュリティ・ポリシを識別するステップと、
前記セキュリティ・ポリシに従って修正すべき前記資源の部分を決定するステップと、
修正された資源を形成するために、前記セキュリティ・ポリシ及び前記アクセス・コンテキストに従って前記資源の前記部分を修正するステップと、
前記修正された資源を送信するステップと、
を含む、コンピュータを利用する方法。
【請求項２】
前記アクセス・コンテキストに関する情報を受け取るステップは前記資源に対する要求に関して非同期である、請求項１に記載のコンピュータを利用する方法。
【請求項３】
前記アクセス・コンテキストは起こり得るアクセス・コンテキストの変化である、請求項１又は請求項２に記載のコンピュータを利用する方法。
【請求項４】
状態モデルを表わすパラメータのセットを提供するステップであって、前記状態モデルは前記データ処理システムにおいて前記アクセス・コンテキストを表わす、ステップと、
セキュリティ・ポリシのセットをポリシ・リポジトリ内に設けるステップであって、前記セキュリティ・ポリシのセットは資源のセットへのアクセスを管理するために使用可能であり、前記資源のセットにおける資源はデータである、ステップと、
前記パラメータのセットにおけるパラメータの変化を検出することによって、前記アクセス・コンテキストの変化を検知するステップと、
前記アクセス・コンテキストの変化によって影響を受ける資源を識別するステップと、
前記アクセス・コンテキストの変化に対応するセキュリティ・ポリシを、前記セキュリティ・ポリシのセットから識別するステップと、
前記資源へのアクセスを管理するコンテキスト不認識のアクセス制御実行コンポーネントを識別するステップと、
前記ポリシに従って前記コンテキスト不認識のアクセス制御実行コンポーネントを修正し、それによって、前記アクセス・コンテキストの変化の認識を伴い前記資源へのアクセスを管理するステップと、
を含む、請求項１、請求項２、又は請求項３に記載のコンピュータを利用する方法。
【請求項５】
前記資源は、データ・リポジトリの構成であり、前記コンテキスト不認識のアクセス制御実行コンポーネントは前記データ・リポジトリのコンポーネントである、請求項４に記載のコンピュータを利用する方法。
【請求項６】
前記資源を識別するステップは、資源に関する知識を引き出すステップを含み、
前記知識を引き出すステップは、前記アクセス・コンテキストが第２の資源に影響を与えるという推測を行い、それによって前記コンテキスト不認識のアクセス制御実行コンポーネントが修正されなければならないことを推測するステップを含む、請求項４又は請求項５に記載のコンピュータを利用する方法。
【請求項７】
前記アクセス・コンテキストに関する情報は、前記情報を提供するデータ処理システムとは異なるシステムにおいて受け取られる、請求項１乃至６のいずれかに記載のコンピュータを利用する方法。
【請求項８】
前記資源はリポジトリの構成である、請求項１乃至７のいずれかに記載のコンピュータを利用する方法。
【請求項９】
前記資源は、前記資源の内容、前記資源に関連する属性、前記資源に関連するパラメータ、及び前記資源に関連する構成を含む、請求項１乃至８のいずれかに記載のコンピュータを利用する方法。
【請求項１０】
前記資源を識別するステップは、資源に関する知識を引き出すステップを含み、
前記資源に関する知識を引き出すステップは、前記アクセス・コンテキストが第２の資源に影響を与えるという推測を行い、それによって前記資源が修正されなければならないことを推測する、
請求項１乃至９のいずれかに記載のコンピュータを利用する方法。
【請求項１１】
前記アクセス・コンテキストは複数個の個別のアクセス・コンテキストを含み、
前記資源を修正するステップは個別のアクセス・コンテキストに対応する、
請求項１乃至１０のいずれかに記載のコンピュータを利用する方法。
【請求項１２】
前記資源を修正するステップは、アクセス・コンテキスト不認識のシステムにおいて前記ポリシに従って前記部分を修正するために使用可能な情報を準備するステップを含み、
前記送信するステップは、前記資源を修正するために使用可能な情報を前記アクセス・コンテキスト不認識のシステムに提供するステップを含み、
前記アクセス・コンテキスト不認識のシステムは、前記アクセス・コンテキスト不認識のシステムにおいて前記修正された資源を形成するために前記ポリシのアクセス・コンテキスト不認識における実行において前記資源に前記情報を適用する、
請求項１乃至１１のいずれかに記載のコンピュータを利用する方法。
【請求項１３】
前記アクセス・コンテキストは、前記資源に対する要求が行なわれる環境に関連した情報である、請求項１乃至１２のいずれかに記載のコンピュータを利用する方法。
【請求項１４】
コンテキスト認識のデータ保護のためのコンピュータ使用可能コードを含むコンピュータ・プログラムであって、前記コンピュータ使用可能コードは、
データ処理システムにおいてアクセス・コンテキストに関する情報を受け取るためのコンピュータ使用可能コードと、
前記アクセス・コンテキストの影響を受ける資源を識別するためのコンピュータ使用可能コードと、
前記資源を受け取るためのコンピュータ使用可能コードと、
前記アクセス・コンテキストに対応するポリシを識別するためのコンピュータ使用可能コードと、
前記ポリシに従って修正すべき前記資源の部分を決定するためのコンピュータ使用可能コードと、
修正された資源を形成するために、前記ポリシ及び前記アクセス・コンテキストに従って前記部分を修正するためのコンピュータ使用可能コードと、
前記修正された資源を送信するためのコンピュータ使用可能コードと、
を含む、コンピュータ・プログラム。
【請求項１５】
前記アクセス・コンテキストに関する情報を受け取るのは、前記資源に対する要求に関して非同期である、請求項１４に記載のコンピュータ・プログラム。
【請求項１６】
前記アクセス・コンテキストは、起こり得るアクセス・コンテキストの変化である、請求項１４又は請求項１５に記載のコンピュータ・プログラム。
【請求項１７】
前記資源はリポジトリの構成である、請求項１４、請求項１５、又は請求項１６に記載のコンピュータ・プログラム。
【請求項１８】
前記資源を識別するためのコンピュータ使用可能コードは、資源に関する知識を引き出すためのコンピュータ使用可能コードを含み、
前記知識を引き出すためのコンピュータ使用可能コードは、前記アクセス・コンテキストが第２の資源に影響を与えるという推測を行い、それによって前記資源が修正されなければならないことを推測するためのコンピュータ使用可能コードを含む、請求項１４乃至請求項１７のいずれかに記載のコンピュータ・プログラム。
【請求項１９】
前記アクセス・コンテキストは、複数個の個別のアクセス・コンテキストを含み、前記修正するためのコンピュータ使用可能コードは個別のアクセス・コンテキストに対応するためのコンピュータ使用可能コードを含む、請求項１４乃至請求項１８のいずれかに記載のコンピュータ・プログラム。
【請求項２０】
前記資源を修正するためのコンピュータ使用可能コードは、アクセス・コンテキスト不認識のシステムにおいて前記ポリシに従って前記部分を修正するために使用可能な情報を準備するためのコンピュータ使用可能コードを含み、
前記送信するためのコンピュータ使用可能コードは、前記資源を修正するために使用可能な情報を前記アクセス・コンテキスト不認識のシステムに提供するためのコンピュータ使用可能コードを含み、
前記アクセス・コンテキスト不認識のシステムは、前記アクセス・コンテキスト不認識のシステムにおいて前記修正された資源を形成するために前記ポリシのアクセス・コンテキスト不認識における実行において前記資源に前記情報を適用する、
請求項１４乃至請求項１９のいずれかに記載のコンピュータ・プログラム。
【請求項２１】
前記コンピュータ使用可能コードは、データ処理システムにおけるコンピュータ可読記憶媒体に記憶され、
前記コンピュータ使用可能コードは、リモート・データ処理システムからネットワークを介して転送される、
請求項１４乃至請求項２０のいずれかに記載のコンピュータ・プログラム。
【請求項２２】
前記コンピュータ使用可能コードは、サーバ・データ処理システムにおけるコンピュータ可読記憶媒体に記憶され、
前記コンピュータ使用可能コードは、リモート・データ処理システムに関連したコンピュータ可読記憶媒体における使用のためにネットワークを介して前記リモート・データ処理システムにダウンロードされる、
請求項１４乃至請求項２１のいずれかに記載のコンピュータ・プログラム。
【請求項２３】
コンテキスト認識のデータ保護のためのデータ処理システムであって、
記憶媒体を含み、コンピュータ使用可能プログラム・コードを記憶する記憶装置と、
前記コンピュータ使用可能プログラム・コードを実行するプロセッサと、
を含み、
前記コンピュータ使用可能プログラム・コードは、
データ処理システムにおいてアクセス・コンテキストに関する情報を受け取るためのコンピュータ使用可能コードと、
前記アクセス・コンテキストによる影響を受ける資源を識別するためのコンピュータ使用可能コードと、
前記資源を受け取るためのコンピュータ使用可能コードと、
前記アクセス・コンテキストに対応するセキュリティ・ポリシを識別するためのコンピュータ使用可能コードと、
前記セキュリティ・ポリシに従って修正すべき前記資源の部分を決定するためのコンピュータ使用可能コードと、
修正された資源を形成するために前記セキュリティ・ポリシ及び前記アクセス・コンテキストに従って前記部分を修正するためのコンピュータ使用可能コードと、
前記修正された資源を送信するためのコンピュータ使用可能コードと、
を含む、データ処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的には、データ処理システムの改良に関し、特に、コンピュータを利用してデータのセキュリティを改善する方法に関する。更に詳しく云えば、本発明は、コンピュータを利用して、コンテキストを認識した(context aware)（以下、「コンテキスト認識の」という）データ内容を保護する方法、システム、及びコンピュータ使用可能プログラムに関する。
【背景技術】
【０００２】
データのセキュリティは、データ処理環境を実現及び操作する場合に十分に認識される要求である。データ処理環境におけるセキュリティを施されたデータのタイプは、種々の要素によって特徴付けられる。例えば、或るデータは、ユーザ及びアプリケーションの制限されたグループによってのみアクセス可能であるかもしれない。別の例のように、或るデータは読み取り専用であるかもしれないし、修正可能ではないかもしれない。更に別の例ように、或るデータは複写され得ないか、或いは、指定された位置から移動し得ない。
【０００３】
データ改ざん或いはデータ損失に関連したリスク、企業倫理要件、ポリシ及びルール、財産の保全、並びに他の同様の考慮事項が、特定のデータ処理環境においてデータを取り巻くセキュリティ対策を設計するために使用される。例えば、データ処理環境は、権限のない人による或るクレジットカード情報の不正使用を防ぐためにその情報へのアクセスを制限することがある。別の例として、データ処理環境は、組織の知的財産を具体化した或る製品設計書類の望ましくない配布を回避するために、それらの書類へのアクセスを制限することがある。
【０００４】
一般に、データは、データ・リポジトリに保存され、或るアプリケーションによって供給され、他のアプリケーションによって消費される。或る場合には、リポジトリ、サーバ・アプリケーション、及びコンシューマ・アプリケーションが、種々の組み合わせで結合された形式で存在し得る。
【０００５】
従来技術では、データのセキュリティは、リポジトリ、又はそのデータを処理しているアプリケーションに降りかかる責任である。データ・セキュリティに関するルール及びポリシは、データ処理環境のこれらの要素を通して作成され、運営され、及び実行される。
【０００６】
或るデータ処理環境の構成では、データ・セキュリティ・ポリシの作成及び運用は集中化された機能であるかもしれない。例えば、ポリシ管理アプリケーションは、アドミニストレータが企業ポリシをポリシ管理アプリケーションにおけるルールとして実践することを可能にし得る。従って、ポリシ管理アプリケーションは、実行のためにリポジトリ或いは１つ又は複数個のアプリケーションに対するルールを規定する。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明の目的は、コンテキスト認識のデータ保護のための方法、システム、及びコンピュータ・プログラムを提供することにある。
【課題を解決するための手段】
【０００８】
アクセス・コンテキストに関する情報がデータ処理システムにおいて受け取られる。アクセス・コンテキストの影響を受ける資源が識別され、その資源が受け取られる。そのアクセス・コンテキストに適用可能なポリシが識別される。そのポリシに従って修正すべきその資源の部分が決定され、その部分がポリシ及びアクセス・コンテキストに従って修正され、修正された資源を形成する。その修正された資源が送信される。
【図面の簡単な説明】
【０００９】
【図１】実施例を具現化し得るデータ処理システムのネットワークの概略図を示す。
【図２】実施例を具現化し得るデータ処理システムのブロック図を示す。
【図３】具現化され得る実施例に関連するデータ・セキュリティ構成のブロック図を示す。
【図４】実施例によるポリシ管理システムのブロック図を示す。
【図５】実施例によるポリシ管理システムのポリシ情報要素のブロック図を示す。
【図６】実施例によるポリシ管理システムのポリシ決定要素のブロック図を示す。
【図７】実施例によるポリシ管理システムのポリシ実行要素のブロック図を示す。
【図８】実施例によるポリシ管理システムのポリシ・アドミニストレーション要素のブロック図を示す。
【図９】実施例によるコンテキスト認識のデータ保護の構成のブロック図を示す。
【図１０】実施例によるコンテキスト認識のデータ保護のプロセスのフローチャートを示す。
【図１１】実施例に従って例示の実施態様のブロック図を示す。
【発明を実施するための形態】
【００１０】
本発明は、データのセキュリティの従来技術の大部分が、アクセス制御に基づいたルールを使用して具現化されているということを承知している。本発明は、更に、従来技術では、アクセス制御のためのルールが、データをアクセスするユーザ又はアプリケーションの事前定義されたアイデンティティ情報に基づいているということも承知している。更に、従来技術は、ルールを実行するために、そのようなアイデンティティ情報を、データの名前又は識別情報にのみ関連付けている。換言すれば、従来技術では、ユーザのアイデンティティは、特定の名称付けられたデータに対する許可されたアイデンティティの１つでなければならない。さもないと、従来技術のアクセス制御は、ユーザがデータにアクセスすることを許さない。
【００１１】
例えば、既存のデータ・セキュリティ・モデルは、「信用情報（credit information）」と呼ばれるファイル又はデータベース・テーブルに、認証情報（credential）の認証リスト（authorized list）から認証信用証明（authentication credential）を提示するユーザ又はアプリケーションによってのみアクセス可能であるというルールを作成し得る。その結果、そのようなルールは、アプリケーションがその情報にアクセスするための認証信用証明を提示するとき、実行される。
【００１２】
既存の実行例として、そのルールが、情報を要求するアプリケーションに組み込まれる。アプリケーションは、そのアプリケーションが信用情報に対する要求を行い得る前に、ユーザがユーザＩＤ及びパスワードのような認証信用証明を提供することを必要とする。アプリケーションは、ローカルに又はリモートに格納されたリストにおいてその供給されたユーザＩＤ及びパスワードを照合する。ユーザＩＤが、そのリストによると、その情報にアクセスし得る承認されたＩＤの1つである場合、アプリケーションは信用情報に対する要求を提出する。
【００１３】
別の例として、従来技術のデータ・セキュリティ・モデルは、患者の病歴ファイルへのアクセスを、識別された役割、例えば、医師、のみに制限するルールを作成することがある。しかし、従来技術では、そのようなルールは、患者ファイルが保管されるリポジトリに組み込まれている。アプリケーションが患者の病歴をアクセスするためにユーザの認証情報を提示するとき、リポジトリは、認証情報が、医師の役割に従事する人のそれであるかどうかを判断する。認証情報が医師のそれである場合、リポジトリは患者の病歴記録を提供する。
【００１４】
或る場合には、従来技術のリポジトリは、医師が患者のレコードに関連した医師又は別の医師であるかも判断する。例えば、リポジトリは、ジョン・ドゥ（John Doe：一般的男性を指す仮の氏名）という患者の病歴ファイルへのアクセスを、ジョン・ドゥの医師ユーザ・グループに属する医師によるもののみ許容するであろう。
【００１５】
本発明は、従来技術では、或るデータがアクセスされるアクセス・コンテキストを、データ・セキュリティ対策が、考慮に入れ得ないものと承知している。例えば、或る特定の医師がジョン・ドゥの主治医であるために、いつでもジョン・ドゥの病歴ファイルへのアクセスを許されるべきである。しかし、ジョン・ドゥが、アクセス時又はその前後に、実際に病院の集中治療室にいるというアクセス・コンテキスト内でそのファイルがアクセスされつつある場合、集中治療室に属するいずれの医師も同様のアクセスを許されるべきである。
【００１６】
更に、他のアクセス・コンテキストにおいて、救急医療隊員は、例えば、ジョン・ドゥが集中治療に受け入れられる前に、救急車からのアクセスを許容されることがある。一旦ジョン・ドゥが集中治療室に受け入れられると、救急医療隊員のアクセスは終了しなければならない。ＥＲ医師のような他のユーザは、ジョン・ドゥの状態が安定したこと、彼が集中治療又は他の同様の配慮事項から移されたことを、ジョン・ドゥのファイルが示すまで、アクセスを許容されなければならない。
【００１７】
本発明によれば、そのデータをアクセスする状況、そのデータ内容自体のアクセスの意味合い、或いは、そのデータ・アクセスとは無関係であるが潜在的にデータの保護に影響する事象(event)は、アクセス・コンテキストと総称される。患者が一般（非緊急）回復室にいることを患者のデータが示すとき、緊急治療室の看護スタッフに対するアクセスの排除は、データ内容に関する意味合いの例である。
【００１８】
アクセス・コンテキストは、単一のアクセス・コンテキスト又はアクセス・コンテキストのグループであってもよい。アクセス・コンテキストは、データへの現在のアクセス又はデータへの将来のアクセスに影響を与えることがある。データをアクセスする状況の変化、データへのアクセスに影響を与えるデータ内容自体の変化、又はデータのアクセス保護に潜在的に影響を与え得る事象の推移は、集合的にアクセス・コンテキストの変化と呼ばれる。アクセス・コンテキストの変化は、単一のアクセス・コンテキストの変化又は一連のアクセス・コンテキストの変化であってもよい。
【００１９】
アクセス・コンテキスト及びそれに対する変化を把握する別の方法は、状態モデルに関連している。データ処理環境における事象及び活動は１つ又は複数個のプロセスに割り当てられる(mapped)ことが可能である。その１つ又は複数個のプロセスは状態図として表わすことが可能である。事象又は活動は、状態の推移を表わし得るし、事象が連続的である場合、状態図における状態を表わし得る。アクセス・コンテキストは状態によって表わすことが可能である。別の事象、例えば、同じプロセスにおける前の事象、に関連する事象は、状態推移を表わし得る。例えば、患者が集中治療に入るのを認めることは、状態推移として表わされる事象であり、集中治療中の患者は１つの状態でもあり得る。退院しようとしている患者は、別の状態推移によって表わされる患者管理プロセスにおける事象であるかもしれない。退院しようとしている患者のアクセス・コンテキストは別の状態である。集中治療室事象への受け入れに関連する退院事象は状態推移であるか又は状態推移を意味し得る。
【００２０】
別の例として、１つのプロセスにおける事象は、アクセス・コンテキストを変化させる別のプロセスにおける別の事象に関連し得るし、状態推移も表わし得る。例えば、患者管理プロセスは、患者を診断することが可能な状態を含み得る。病院における従業員管理プロセスのような別のプロセスは、医師の退職という事象があり得る。病院の雇用を離れる特定の医師は、従業員管理プロセスの状態モデルにおける事象であり得る。この事象は、病院の雇用を離れた医師が最早患者を治療することができないので、その医師を主治医とする特定の患者の患者管理プロセスにおいて状態推移を生じさせ得る。
【００２１】
或るプロセス又はそれの一部分の状態モデルは、アクセスし得るデータを有する一組のアクセス・コンテキストを表わし得る。そのような状態モデルにおける状態推移はコンテキストの変化を表わし得る。
【００２２】
ジョン・ドゥの病歴ファイルの例では、救急車内にあったり、集中治療室へ受け入れられたり、集中治療から抜け出たりする、主治医による一般的なアクセスは、その医療ファイルのデータがアクセスされ得るアクセス・コンテキストの例である。救急車から集中治療室に移るというような、１つのアクセス・コンテキストから次のアクセス・コンテキストに推移することは、アクセス・コンテキストの変化の一例である。
【００２３】
データ・セキュリティのための従来技術の方法は、それらのアプリケーションでは静的である。従来技術のデータ・セキュリティの方法は、アクセス・コンテキストに、即ち、データ・アクセスのコンテキストに無関係の別の時間において静的に設計されるポリシを使用する。本発明は、ポリシ管理アプリケーションを含む従来技術のデータ・セキュリティの方法が、或るデータをアクセスし得るアクセス・コンテキストを考慮するものではないということを承知している。
【００２４】
本発明は、更に、従来技術のシステム及び方法が、事前決定され且つコードで固定されるデータ・セキュリティ・ポリシを組込むということを承知している。従って、従来技術のシステム及び方法は、一般的には、アクセス・コンテキストの変化と共に或いはそれを予測してデータ・セキュリティ・ポリシを調整することができない。或るデータを中心としたセキュリティ対策の変化、ポリシの変化、ルールの実施、及び変化されたルールの実行を達成するために従来技術を使用することは、大部分が手動の決定である。
【００２５】
本発明は、そのようにして具現化された従来技術のポリシ及びルールが、多くの場合、保護されたデータを要求するアプリケーションに、又はそのようなデータを扱うリポジトリに組み込まれることを承知している。従って、本発明は、ポリシ及びルールに対する変化がアプリケーションにおけるコードの変化を頻繁に必要とすることを承知している。本発明は、少なくともこの理由で、ポリシの変化が稀にしか起こらず、データ処理環境において生じる事象及びアクセス・コンテキストの変化に無関係の別の時間に割り振られるということを承知している。
【００２６】
本発明を説明するために使用される実施例は、一般的に上記の問題点及びデータ・セキュリティに関する他の問題点に対処し、それらを解決する。本実施例はコンテキスト認識のデータ保護のための方法、コンピュータ使用可能プログラム、及びデータ処理システムを提供する。
【００２７】
本発明の実施例は、データをアクセスし得るアクセス・コンテキストを考慮しながら、データ処理システムがデータへのアクセスを管理することを可能にし得る。データへのアクセス又はデータに関する他の操作は、アクセス・コンテキストの変化がデータ処理環境において生じるときに調整され得る。更に、データへのアクセス又はデータに関する他の操作は、アクセス・コンテキストの変化を予測して調整され得る。
【００２８】
更に、実施例によるアクセス・コンテキスト認識の態様でのデータ保護は、アクセス・コンテキスト及びアクセス・コンテキストの変化の影響を認識していない従来技術の形式のままに既存のアプリケーション及びリポジトリを残しながら、コンテキスト認識のデータ保護を提供し得る。更に、実施例は、ポリシ及びポリシに基づいたルールを、アプリケーション及びリポジトリの範囲におけるそれの実行だけを残して、アプリケーション及びリポジトリから分離し得る。
【００２９】
実施例は、アクセス・コンテキストの変化に応答して、データ及びデータ・セキュリティの動的な且つほぼリアル・タイム（near real time）の操作を可能にし得る。更に、実施例は、アプリケーションを停止させることなく、コード変化を行うことなく、又はデータ処理システムのオペレーションを中断することなく、そのような動的の且つほぼリアル・タイムの操作を可能にし得る。
【００３０】
更に、アクセス・コンテキスト又はアクセス・コンテキストの変化は動的に決定される。例えば、アクセス・コンテキスト及びそれの変化は、データ処理環境において事象が生じるとき、その事象と同時に評価され得る。例えば、１つの事象がデータ処理システムにおいて生じるとき、その事象がアクセス・コンテキストを特定の資源のために生じさせるかどうかに関するほぼリアル・タイムの判断が行われ得る。
【００３１】
別の例として、アクセス・コンテキスト及びそれの変化は、資源がアクセスされるときに判断されてもよい。例えば、ファイルへのアクセスを求める要求をデータ処理システムにおいて受け取るとき、そのファイルへのアクセスに影響を与える、アクセス・コンテキストが存在するかどうか又は既存のアクセス・コンテキストに対する変化が生じたかどうかに関する判断が行われ得る。
【００３２】
本実施例は、単に例として、或るデータ、データ構造、インジケータ、及び識別子に関して説明されている。そのような説明は、本発明を限定することを意図するものではない。例えば、アクセス・コンテキストの変化を示すためにビット・フラグを使用する実施例は、本発明の技術的範囲内の同様の態様では、事象メッセージを使って具現化され得る。
【００３３】
更に、本実施例は、任意のタイプのデータ処理システムに関して具現化され得る。例えば、マルチプロセッサ・スタンドアロン・データ処理システムに関して説明された実施例は、本発明の技術的範囲内のマルチプロセッサ論理パーティション・システムにおいて具現化され得る。別の例として、アプリケーションに関して説明された実施例は、サーバ・アプリケーション、クライアント・アプリケーション、データベース、或いは任意の他のソフトウェア・アプリケーションもしくはシステムに関して具現化され得る。
【００３４】
本実施例は、単に例として、或るパラメータ、属性、及び構成に関して説明されている。そのような説明は、本発明を限定することを意図するものではない。本発明の実施例は、例えば、任意のタイプのクライアント・システム、サーバ・システム、プラットフォーム、又はそれの組み合わせのような任意のタイプのデータ処理システムに関して具現化され得る。
【００３５】
実施例を具現化するアプリケーションは、データ・オブジェクト、コード・オブジェクト、カプセル化された命令、アプリケーション・フラグメント、サービス、及びデータ処理環境において利用可能な他のタイプのソフトウェア態様の形式を取り得る。例えば、JavaVirtual Machine（JVMR）、Javaオブジェクト、 Enterprise Java Bean（EJB）、サーブレット、又はアプレットはアプリケーションの現れであり、そのアプリケーションに関して、そのアプリケーション内で、或いはそのアプリケーションを使用して、本発明が具現化され得る。（なお、Java、JVM、EJB、及びJavaに関連する他の用語は、米国及びその他の国におけるサン・マイクロシステムズ社の商標である）。
【００３６】
本実施例は、ハードウェア、ソフトウェア、又はそれの組み合わせで具現化され得る。本明細書における例は、説明を明瞭にするためにのみ使用され、それらの実施例に限定するものではない。更なる又は種々の情報、データ、オペレーション、アクション、タスク、アクティビティ、及び操作は、同様の目的のために本明細書から想起し得るであろうし、本実施例の技術的範囲内にあるものと考えられる。
【００３７】
本実施例は、単に例として、特殊なコード、データ構造、ファイル・システム、デザイン、アーキテクチャ、レイアウト、図式、及びツールを使用して説明されているが、それらの実施例に限定するものではない。更に、本実施例は、説明を明瞭にするために単に例として特定のデータ処理環境を使って説明されている。本実施例は、他の同等の或いは同様の目的の構造、システム、アプリケーション、又はアーキテクチャに関連して使用され得る。
【００３８】
本明細書に記載されたいずれの利点も単なる例であり、本発明を限定することを意図するものではない。更なる利点又は異なる利点も特定の実施例によって実現され得る。更に、或る特定の実施例は、上記のような利点のうちの幾つか又はすべてを持ち得る。
【００３９】
図面、特に、図１及び図２を参照すると、これらは、本実施例を具現化し得るデータ処理環境の概略図である。図１及び図２は単なる例であり、種々の実施例を具現化し得る環境に関して何らかの限定を主張又は意味することを意図しない。或る特定の実施態様は、下記の説明に基づいて図示の環境に対して多くの修正を施し得る。
【００４０】
図１は、本実施例を具現化し得るデータ処理システムのネットワークの概略図を示す。データ処理環境１００は、本実施例を具現化し得るコンピュータのネットワークである。データ処理環境１００はネットワーク１０２を含む。ネットワーク１０２は、データ処理環境１００内で接続された種々の装置とコンピュータとの間の通信リンクを提供するために使用される媒体である。ネットワーク１０２は、有線／無線通信リンク、又は光ファイバ・ケーブルのような接続体を含み得る。サーバ１０４及びサーバ１０６は、記憶装置１０８と共にネットワーク１０２に結合している。ソフトウェア・アプリケーションは、データ処理環境１００における任意のコンピュータにおいて実行可能である。
【００４１】
更に、クライアント１１０、１１２、及び１１４がネットワーク１０２に結合している。サーバ１０４又は１０６、或いはクライアントの１１０、１１２、又は１１４のようなデータ処理システムはデータを含み得るし、そのシステム上で実行されるソフトウェア・アプリケーション又はソフトウェア・ツールを有し得る。
【００４２】
サーバ１０４は、ポリシ管理アプリケーション１０５を含み得る。ポリシ管理アプリケーション１０５は、本発明の実施例に従って、アプリケーション、システム、又はそれのコンポーネントであってもよい。サーバ１０６は資源１０７を含む。記憶装置１０８は資源１０９を含む。資源１０７及び１０９は、本発明の実施例を使ってデータ保護を受ける資源である。資源１０７及び１０９はそれぞれ任意の形式又は構造のデータであってもよい。クライアント１１２におけるアプリケーション１１３は、資源１０７、１０９或いはその両方、をアクセスすること又は操作することを希望する例示のアプリケーションである。
【００４３】
サーバ１０４及び１０６、記憶装置１０８、クライアント１１０、１１２、及び１１４は、有線接続、無線通信プロトコル、又は他の適切なデータ接続手段を使用してネットワーク１０２に連結可能である。クライアント１１０、１１２、及び１１４は、例えば、パーソナル・コンピュータ又はネットワーク・コンピュータであってもよい。
【００４４】
図示の例では、サーバ１０４は、ブート・ファイル、オペレーティング・システム・イメージ、及びアプリケーションのようなデータをクライアント１１０、１１２、及び１１４に提供し得る。クライアント１１０、１１２、及び１１４は、この例ではサーバ１０４に対するクライアントであってもよい。クライアント１１０、１１２、１１４、又はそれの幾つかの組み合わせは、それら自身のデータ、ブート・ファイル、オペレーティング・システム・イメージ、及びアプリケーションを含み得る。データ処理環境１００は、図示されてない、更なるサーバ、クライアント、及び他の装置を含み得る。
【００４５】
図示の例では、データ処理環境１００はインターネットであってもよい。ネットワーク１０２は、相互に通信するための伝送制御プロトコル／インターネット・プロトコル（ＴＣＰ／ＩＰ）及び他のプロトコルを使用するネットワーク及びゲートウエイの集合体を表わし得る。インターネットの中心には、数千個の商用コンピュータ・システム、官公庁用コンピュータ・システム、教育機関用コンピュータ・システム、並びに、データ及びメッセージを経路制御する他のコンピュータ・システムを含む多重ノード又はホスト・コンピュータの間のデータ・コミュニケーション・リンクのバックボーンがある。勿論、データ処理環境１００は、例えば、イントラネット、ローカル・エリア・ネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）のような多数の種々のタイプのネットワークとして具現化され得る。図１は１つの例として意図され、種々の実施例に対するアーキテクチャ上の限定としては意図されない。
【００４６】
他の用途のうち、データ処理環境１００は、本実施例を具現化し得るクライアント／サーバ環境を具現化するために使用されてもよい。クライアント／サーバ環境は、クライアント・データ処理システムとサーバ・データ処理システムとの間の双方向性を使用することによってアプリケーションが機能するように、ソフトウェア・アプリケーション及びデータがネットワークの全域に分配されることを可能にする。データ処理環境１００は、ネットワークの全域に分配される相互運用可能なソフトウェア・コンポーネントがまとまりのあるビジネス・アプリケーションとして一体的にパッケージ化され得るサービス・オリエンテッド・アーキテクチャも使用し得る。
【００４７】
図２を参照すると、この図は、実施例を具現化し得るデータ処理システムのブロック図を示す。データ処理システム２００は、図１におけるサーバ１０４又はクライアント１１０のようなコンピュータの一例であり、そこにはプロセスを実行するコンピュータ使用可能プログラム・コード又は命令が本実施例のために置かれ得る。
【００４８】
図示の例では、データ処理システム２００は、ノース・ブリッジ兼メモリ・コントローラ・ハブ（ＮＢ／ＭＣＨ）２０２及びサウス・ブリッジ兼入出力（Ｉ／Ｏ）のコントローラ・ハブ（ＳＢ／ＩＣＨ）２０４を含むハブ・アーキテクチャを使用する。処理装置２０６、メイン・メモリ２０８、及びグラフィックス・プロセッサ２１０が、ノース・ブリッジ兼メモリ・コントローラ・ハブ（ＮＢ／ＭＣＨ）２０２に結合される。処理装置２０６は１つ又は複数個のプロセッサを含み得るし、１つまたは複数個の異種プロセッサ・システムを使用して具現化され得る。グラフィックス・プロセッサ２１０は、或る実施態様ではアクセラレイテッド・グラフィック・ポート（ＡＧＰ）を介してＮＢ／ＭＣＨ２０２に結合され得る。
【００４９】
図示の例では、ローカル・エリア・ネットワーク（ＬＡＮ）アダプタ２１２が、サウス・ブリッジ兼Ｉ／Ｏコントローラ・ハブ（ＳＢ／ＩＣＨ）２０４に接続される。オーディオ・アダプタ２１６、キーボード及びマウス・アダプタ２２０、モデム２２２、リード・オンリ・メモリ（ＲＯＭ）２２４、ユニバーサル・シリアル・バス（ＵＳＢ）及び他のポート２３２、並びにＰＣＩ／ＰＣＩｅ装置２３４がバス２３８を介してサウス・ブリッジ兼Ｉ／Ｏコントローラ・ハブ２０４に接続される。ハード・ディスク・ドライブ（ＨＤＤ）２２６及びＣＤ−ＲＯＭ２３０が、バス２４０を介してサウス・ブリッジ兼Ｉ／Ｏコントローラ・ハブ２０４に接続される。ＰＣＩ／ＰＣＩｅ装置２３４は、例えば、イーサネット・アダプタ、アドイン・カード、及びノート型コンピュータ用ＰＣカードを含み得る。ＰＣＩは、カード・バス・コントローラを使用し、一方、ＰＣＩｅはそのコントローラを使用しない。ＲＯＭ ２２４は、例えば、フラッシュ・バイナリ入出力システム（ＢＩＯＳ）であってもよい。ハード・ディスク・ドライブ２２６及びＣＤ−ＲＯＭ ２３０は、例えば、統合ドライブ・エレクトロニクス（ＩＤＥ）又はシリアル・アドバンスト・テクノロジ・アタッチメント（ＳＡＴＡ）インターフェースを使用し得る。スーパＩ／Ｏ（ＳＩＯ）装置２３６が、サウス・ブリッジ兼Ｉ／Ｏコントローラ・ハブ（ＳＢ／ＩＣＨ）２０４に接続され得る。
【００５０】
オペレーティング・システムが処理装置２０６上で作動する。オペレーティング・システムは、図２におけるデータ処理システム２００内の種々のコンポーネントの制御を調整及び提供する。オペレーティング・システムは、Microsoft Windows（Microsoft及び Windowsは、米国及びその他の国におけるマイクロソフト社の商標である）のような市販のオペレーティング・システム又はLinux（Linuxは、米国及びその他の国におけるLinus Torvaldsの商標である）であってもよい。Javaプログラミング・システムのようなオブジェクト指向プログラミング・システムは、オペレーティング・システムと連動して作動し、データ処理システム２００において実行される、Javaプログラム又はアプリケーションからそのオペレーティング・システムにコール(call)を提供する（なお、Javaは、米国及びその他の国におけるサン・マイクロシステムズ社の商標である）。
【００５１】
オペレーティング・システムのための命令、オブジェクト指向プログラミング・システム、及びアプリケーション又はプログラムは、ハード・ディスク・ドライブ２２６のような記憶装置に置かれ、処理装置２０６による実行のためにメイン・メモリ２０８にロードされ得る。本実施例のプロセスは、例えば、メイン・メモリ２０８、リード・オンリ・メモリ２２４のようなメモリ、又は１つ又は複数個の周辺装置におけるメモリに置かれ得るコンピュータ実装命令を使用して、処理装置２０６により遂行され得る。
【００５２】
図１及び図２におけるハードウェアは実施態様に依存して変わり得る。フラッシュ・メモリ、同等の不揮発性のメモリ、又は光ディスク駆動装置等のような他の内部ハードウェア或いは周辺機器が、図１及び図２に示されたハードウェアに加えて、或いはそのハードウェアの代わりに使用され得る。更に、本実施例のプロセスは、マルチプロセッサ・データ処理システムに適用することも可能である。
【００５３】
或る例では、データ処理システム２００は、オペレーティング・システム・ファイル及び／又はユーザ生成のデータを格納するための不揮発性のメモリを提供するために、一般にはフラッシュ・メモリを用いて構成される携帯情報端末（ＰＤＡ）であってもよい。バス・システムは、システム・バス、Ｉ／Ｏバス、及びＰＣＩバスのような１つ又は複数個のバスを含み得る。勿論、そのバス・システムは、任意のタイプの通信ファブリック又はアーキテクチャを使って、そのファブリック又はアーキテクチャに取り付けられた種々のコンポーネント又は装置の間でデータの転送を行うように具現化され得る。
【００５４】
通信ユニットは、モデム又はネットワーク・アダプタのようなデータを送信及び受信するために使用される１つまたは複数個の装置を含み得る。メモリは、例えば、メイン・メモリ２０８であってもよく、或いはノース・ブリッジ兼メモリ・コントローラ・ハブ２０２において見られるキャッシュのようなキャッシュであってもよい。処理ユニットは、１つ又は複数個のプロセッサ又はＣＰＵを含み得る。
【００５５】
図１及び図２に示された例並びに前述した例は、アーキテクチャ上の限定を意味するものではない。例えば、データ処理システム２００は、ＰＤＡの形式をとるだけではなく、タブレット・コンピュータ、ラップトップ・コンピュータ、或いは、電話装置であってもよい。
【００５６】
図３を参照すると、この図は、実施例の具現化に関連したデータ・セキュリティ構成のブロック図を示す。構成３００は、図１におけるアプリケーション１１３と同様のアプリケーション３０２を含む。リポジトリ３０４は、図１における記憶装置１０８又はサーバ１０６と同様のものであってもよい。ルール・データベース３０６は、図１におけるポリシ管理アプリケーション１０５と同様の従来技術のポリシ管理システムのコンポーネントであってもよい。
【００５７】
アプリケーション３０２は、資源３０８にアクセスするためのアプリケーションの一例である。資源３０８はいくつかの方法で保護され得る。資源３０８は、図１における資源１０９のような１つ又は複数個の資源であってもよい。資源はデータを含む。例えば、資源は、患者の病歴、診断、保険、及び担当医師等のデータを含む、病院における患者のファイルであってもよい。別の例として、資源は、患者に関するレコードであってもよい。資源のデータは、適切な照会により検索可能な１セットのデータベース・エントリであってもよい。
【００５８】
資源３０８へのアクセスを管理するために、アプリケーション３０２は、一般に、アクセスのための組み込まれたルール３１０の形で組み込まれたアクセス制御機構を含む。組み込まれたルール３１０は、資源３０８における資源に関する要求を有効化する方法をアプリケーション３０２に通知する。
【００５９】
組み込まれたルール３１０は、コード化されたロジック、ファイル、データベースの形式、又はアプリケーション３０２の特定の実施態様に適した他の形式を取り得る。いくつかの例では、組み込まれたルール３１０は、資源３０８を要求するために使用するデフォルト・ルールであってもよい。他の例では、組み込まれたルール３１０は、ルール・データベース３０６のような外部のソースからのルールによって補うことも可能である。
【００６０】
リポジトリ３０４は、一般にアクセス制御実行のためのセキュリティ・コンポーネント３１２を含む。コンポーネント３１２は、資源３０８のセキュリティを管理するためアクセス制御ルール３１４を実行する。アクセス制御ルール３１４は、リポジトリ３０４内に組み込まれていてもよいし、ルール・データベース３０６のような外部ソースから供給されてもよい。
【００６１】
従来技術のオペレーションでは、アプリケーション３０２は、組み込まれたルール３１０を使用して資源３０８からの資源に関する要求を有効化し得る。組み込まれたルール３１０の要件に適合するとき、アプリケーション３０２はリポジトリ３０４に要求３１６を送る。更に、リポジトリ３０４は、アクセス制御ルール３１４におけるいずれのルールも実行するためにコンポーネント３１２を使用し得る。リポジトリ３０４は、資源３０８における資源である資源３１８をアプリケーション３０２に戻し得る。
【００６２】
本発明が承知しているように、従来技術の組み込まれたルール３１０、従来技術のアクセス制御ルール３１４、及び他の同様の実施態様は、要求３１６を行うこと又は資源３１８を提供することに関してアクセス・コンテキストに対応しない。ルール３１０及び３１４は事前コード化され、アクセス・コンテキストの変化に応答して動的に変わることができない。更に、自身の内の事前コード化されたルール３１０又は３１４は、事前決定されたアクセス・コンテキスト、アクセス・コンテキストの変化、データ処理環境における事象、及び資源３０８の内容に対するそれらの関係、に関する非常に限定された知識を組み込む。特に、構成３００は、資源３０８の内容に関する知識が得られ、アクセス・コンテキスト及びアクセス・コンテキストの変化に関連付けられ得る機構をまったく含まない。本発明は、同じアクセス・コンテキストの変化が、それらの資源の内容に関する知識によって、異なる資源への異なるアクセスへ修正し得るということを承知している。
【００６３】
資源の内容に関する知識は、その資源を定義する属性に限定されない。その知識は、資源の内容に直接含まれた情報及びそのような内容から導出可能な又は推測可能な情報を更に含む。従って、資源から得られた知識は、資源のアクセス・コンテキストに関する知識である。更に、この知識は、アクセス・コンテキスト又はアクセス・コンテキストの変化を評価するためにその資源のデータから得ることが可能である。
【００６４】
資源の内容に関する知識は、資源に関する重要な決定を行うために使用可能である。従来技術では、人間は、利用可能な資源からそのような知識を推測しなければならず、人間は、手動の意志決定プロセスを利用したそのような知識を使って、如何なる重要な判断も下す。知識の抽出及びその知識を使って行われる判断は、アプリケーション又はシステムが資源を使用して行うための重要なステップである。本発明は、自動意志決定プロセスにおいて知識をプログラムによって抽出及び使用するための幾つかの実施例を提供する。
【００６５】
図４を参照すると、この図は、実施例に従ってポリシ管理システムのブロック図を示す。ポリシ管理システム４０２は、図３におけるルール・データベース３０６又は組み込まれたルール３１０、或いはその両方の代わりに使用され得る。
【００６６】
ポリシ管理システム４０２のコンポーネントは、単にポリシ管理システム４０２の機能的な側面を示すために選ばれる。そのようなコンポーネントは本発明を限定することを意図するものではなく、同様の機能及び特徴を含む他の実施態様も本発明の技術的範囲内にあると考えられる。
【００６７】
ポリシ情報コンポーネント４０４は、資源、対象、又は環境の内容に関する知識を提供する。１つの実施例では、ポリシ情報コンポーネント４０４は、資源に関連した１セットの属性を検知し得る。資源は、図３の資源３０８における資源と同様のものであってもよい。１セットの属性はゼロ又はそれ以上の属性である。資源の属性の或る例は、資源のファイル名、ファイル・パス、最後の修正の日付け、サイズ、及び読出し・書込み・実行の許可であってもよい。
【００６８】
ポリシ情報コンポーネント４０４は、更に、資源に関連した１セットのパラメータを決定し得る。１セットのパラメータはゼロまたはそれ以上のパラメータである。そのようなパラメータのいくつかの例は、資源の所有権、資源のインデックス、承認済コピー、及びそれらのロケーション、通知トリガ、並びに他の資源に対する依存関係であってもよい。
【００６９】
ポリシ情報コンポーネント４０４は、更に、資源を開き、その内容を検索する能力を含み得る。例えば、資源がテキスト・ファイルである場合、コンポーネント４０４は、キーワードを識別するためにそのファイルを解析し得る。別の例として、資源がデータベース・テーブルである場合、ポリシ情報コンポーネント４０４は、或る列に関して或る範囲の値を含む行を識別し得る。
【００７０】
ポリシ情報コンポーネント４０４は、更に、内容に対するアクセス・コンテキスト又はアクセス・コンテキストの変化の関連及び内容の関係を決定するように、並びに資源の属性、パラメータ、又は内容に関して遂行され得る修正を決定するように構成され得る。資源の修正は、資源の属性、資源に関連したパラメータ、資源の内容の一部分、資源の特徴、資源の入れ物（Container）の測面、を修正すること、並びに他の同様に使用可能なデータに関する同様の目的のアクションを遂行すること、又はそれらの組み合わせを含み得る。
【００７１】
ポリシ情報コンポーネント４０４は、資源に対する要求のアクセス・コンテキスト、それらのアクセス・コンテキストの変化、又はデータ処理システムにおいて生じる他の事象に従って、これらのアクション及び他の同様のアクションを遂行する。例えば、病院データ処理システムにおける事象は、特定の医師が病院を去ってしまったということでもよい。この事象とジョン・ドゥの病歴ファイルとの関連は、その医師が集中治療でジョン・ドゥを処置していたということであってもよい。ポリシ情報コンポーネント４０４は、この事象のために更新されなければならないかもしれないジョン・ドゥのレコードにおける内容を検索し得る。ポリシ管理システムにおける異なるコンポーネントが適切な資源の内容を更新し、その更新された資源をリポジトリに格納し得る。
【００７２】
別の実施例では、ポリシ情報コンポーネント４０４は、対象に関する知識を提供し得る。例えば、ポリシ情報コンポーネント４０４は、資源を要求する要求元に関連した識別子を提供し得る。一般に、ポリシ情報コンポーネント４０４は、現在資源をアクセスしようとしている、又は将来その資源をアクセスしようとし得るアイデンティティに関連した情報を提供し得る。
【００７３】
もう１つの実施例では、ポリシ情報コンポーネント４０４は、そのポリシ情報コンポーネント４０４が環境に関するアクセス・コンテキストを提供し得るアクセス・コンテキスト・コンポーネントであってもよい。例えば、ポリシ情報コンポーネント４０４は、資源を要求することが可能なデータ処理環境に関連した識別子を提供し得る。一般に、ポリシ情報コンポーネント４０４は、アプリケーション、データ処理システム、ネットワーク、構成、又は、資源へのアクセスに影響を及ぼし得る任意の他の環境関連要因、に関連した情報を提供し得る。
【００７４】
ポリシ決定コンポーネント４０６は、データ処理システムにおいてアクセス・コンテキスト及びアクセス・コンテキストの変化を前提として、資源に適用し得るポリシを決定する。ポリシ決定コンポーネント４０６は、資源、アクセス・コンテキスト及びアクセス・コンテキストの変化に関する知識を前提として、データ処理システム、アプリケーション、或いはそれのコンポーネントにおいてその資源内で行なわれなければならない構成の変化に関する情報を提供することによって、データ処理システムにおけるアクセスコンテキストの変化又は事象に対応し得る。構成の変化は、その結果として資源の属性、パラメータ、又は内容に対する変化を生じ得る。
【００７５】
例えば、１つの実施例では、ポリシ決定コンポーネント４０６は１セットのポリシからサブセットを選択し得る。１セットのポリシは１つ又は複数個のポリシである。ポリシは、一般に、多数の資源に適用可能であり、或いは特定の資源に特有のものであってもよい。ポリシは、１セットの資源に、それらのロケーションに関係なく、適用し得るようにエンコードされ得る。１セットの資源は１つ又は複数個の資源である。
【００７６】
ポリシは、そのポリシが１セットの対象に適用可能なようにエンコードされ得る。対象は、資源の要求者、消費者、宛先、起源、発信源、供給者、もしくは仲介システム、或るいはアプリケーションである。１セットの対象は１つ又は複数個の対象である。ルールは、ポリシのすべて又は一部分のための具現化ロジックを含み得る。ルールは、更に、ポリシを具現化するのに役立ち得るがそのポリシにおいて指定され得なかったロジックも含み得る。
【００７７】
ポリシは、１セットの条件に適用するようにもエンコードされ得る。条件は１つ又は複数個の条件である。例えば、医療レコードの例を続けると、条件は、特定の医師が病院を去るというような事象の発生であってもよい。別の例の条件は、治療する医師の名前のような資源の内容における或るデータの存在であってもよい。別の例の条件は、病院の特定の病棟における患者の存在のような、データ処理システムにおけるアクセス・コンテキストの存在であってもよい。別の例の条件は、病院からの患者の退院のような、或る特定のアクセス・コンテキストから別のアクセス・コンテキストへの変化であってもよい。
【００７８】
１つの例示のポリシは、医師が病院を去る場合、その医師の名前が現われるすべてのレコードが別の医師の名前を含むように修正されなければならない、ということをもたらす。別の例示のポリシは、病院を去る医師のユーザＩＤが、プリセットされた期間の間その医師のスーパバイザに割り当てられなければならない、ということをもたらす。第３の例示のポリシは、特にジョン・ドゥのレコードに関するものであってもよいので、病院を去った医師がジョン・ドゥの治療医師であるとき、その医師のスーパバイザを含む誰も、或る指名された個人を除いてジョン・ドゥのレコードをアクセスし得ない。ジョン・ドゥのレコードが使用されている病院を医師が去るとき、ポリシ決定コンポーネントは、これらの例示の３つのポリシをすべて選択し得る。
【００７９】
ポリシ実行コンポーネント４０８は、適用可能なポリシ、構成の変化、又はそれらの組み合わせに基づいて実行アクションを提供し得る。実行アクションは、１つ又は複数個の影響を受ける資源、特に、識別された資源、システム構成、アプリケーション構成、ワークフロー・プロセス、又はそれら組み合わせに向けられ得る。例えば、上記の例示のポリシを続けると、ポリシ実行コンポーネント４０８はいくつかの実行アクションを決定し得る。去る医師のユーザＩＤは、スーパバイザへのアクセスを可能にするように再構成されなければならず、そのユーザＩＤは、将来の事前設定された時間に終了するように構成されなければならない。去る医師の名前を含む１つ又は複数個の資源の内容は、デフォルト医師の名前に修正されなければならず、ジョン・ドゥのレコードに関連した資源のアクセス・パラメータは、その医師のユーザＩＤを除外するように修正されなければならない。
【００８０】
ポリシ・アドミニストレーション・コンポーネント４１０は、ポリシを作成、管理、修正、さもなければ、操作するための能力を提供し得る。ポリシ・アドミニストレーション・コンポーネント４１０は、更に、検知されるようアクセス・コンテキスト及びアクセス・コンテキストの変化を構成する能力を提供し得る。
【００８１】
ポリシ・アドミニストレーション・コンポーネント４１０は、更に、資源をアクセス・コンテキスト及びアクセス・コンテキストの変化に、及び相互に、関連付ける機能を提供し得る。ポリシ・アドミニストレーション・コンポーネント４１０は、更に、資源及び対象に関する知識をアクセス・コンテキスト及びアクセス・コンテキストの変化と相関させる能力を提供する。
【００８２】
ポリシ管理システム４０２のこれらのコンポーネントは、単に例として説明され、本発明を限定することを意図するものではない。これらのコンポーネントの機能、例示的実施態様、及び例示的オペレーションも同様に本発明を限定することを意図するものではない。これらの機能及び他の同様の機能、オペレーション、アクション、構成、及びコンポーネントは本発明から想起し得るであろうし、それは本発明の技術的範囲内であると考えられる。
【００８３】
図５を参照すると、この図は、実施例によるポリシ管理システムのポリシ情報コンポーネントのブロック図を示す。ポリシ情報コンポーネント５０２は、図４におけるポリシ情報コンポーネント４０４として具現化され得る。
【００８４】
オペレーションでは、ポリシ情報コンポーネント５０２がデータ５０４を受け取る。そのデータは、資源に関連した任意の情報又はそのデータ資源自体であってもよい。例えば、データ５０４は、資源の属性、パラメータ、もしくは内容、システムの属性、パラメータ、もしくは構成、又はそれらの組み合わせであってもよい。
【００８５】
ポリシ情報コンポーネント５０２は、データに関する知識５０６を出力として提供する。例えば、知識５０６は、データ処理システムにおいて生じつつある又は間もなく生じる或る事象に対する資源の或る内容の関連を含み得る。ポリシ情報コンポーネント５０２は、図４におけるポリシ情報コンポーネント４０４に関して説明された方法で知識５０６を供給し得る。
【００８６】
図６を参照すると、この図は、実施例によるポリシ管理システムのポリシ決定コンポーネントのブロック図を示す。ポリシ決定コンポーネント６０２は、図４におけるポリシ決定コンポーネント４０６として具現化され得る。
【００８７】
オペレーションでは、ポリシ決定コンポーネント６０２は、データに関する知識６０４を受け取る。そのデータは、例えば、図５におけるポリシ情報コンポーネント５０２の出力であってもよい。ポリシ決定コンポーネント６０２は、更に、外部情報６０６も受け取る。外部情報６０６は、データ処理システムにおいて生じる事象のようなアクセス・コンテキスト又はアクセス・コンテキストの変化に関する情報を含み得る。
【００８８】
入力を与えられると、ポリシ決定コンポーネント６０２は、或るポリシに従って１セットの適用可能なポリシ又はルールを出力６０８として提供する。例えば、出力６０８は、ポリシも含み得る。別の例として、出力６０８は、特定の属性に関する制約又は制限、構成パラメータのための制約付きのもしくは修正された値又は値の範囲、或いはそれらの組み合わせのようなポリシでは提供されない情報を含み得る。
【００８９】
図７を参照すると、この図は、実施例に従ってポリシ管理システムのポリシ実行コンポーネントのブロック図を示す。ポリシ実行コンポーネント７０２は、図４におけるポリシ実行コンポーネント４０８として具現化され得る。
【００９０】
オペレーションでは、ポリシ実行コンポーネント７０２は、適用可能ポリシ、制約、又はそれらの組み合わせを入力７０４として受け取る。例えば、入力７０４は、図６における出力６０８であってもよい。
【００９１】
ポリシ実行コンポーネント７０２は、出力７０６を供給する。出力７０６は、適用可能ポリシによる変化アクションを含む。例えば、適用可能ポリシにおけるポリシは別のポリシを呼び出し得る。１つの実施例では、出力７０６は、操作を遂行するように別のプロセスに指示することによるように、属性、パラメータ、内容、構成、又は、ワークフローを操作し得る。
【００９２】
図８を参照すると、この図は、実施例に従ってポリシ管理システムのポリシ・アドミニストレーション・コンポーネントのブロック図を示す。ポリシ・アドミニストレーション・コンポーネント８０２は、図４におけるポリシ・アドミニストレーション・コンポーネント４１０として具現化され得る。
【００９３】
オペレーションでは、ポリシ・アドミニストレーション・コンポーネント８０２が入力８０４を受け取る。入力８０４は、図４におけるポリシ・アドミニストレーション・コンポーネント４１０が受け取るように説明されている任意の入力を含み得るがそれに限定されない。例えば、入力８０４は、セキュリティ・ガイドライン、既存のポリシ、資源に関する情報、アクセス・コンテキスト及びアクセス・コンテキストの変化に関する情報、対象に関する情報、又はそれらの組み合わせを含み得る。
【００９４】
入力のうちのいくつかは、実施例に従ってポリシ管理システムの他のコンポーネントからのものであってもよい。アドミニストレータのようなユーザは、ポリシ・アドミニストレーション・コンポーネント８０２への入力として情報を提供し得る。例えば、入力は、既存のポリシの有効日の延長であってもよい。ポリシ・アドミニストレーション・コンポーネント８０２は、入力をポリシに適用するためにユーザ・インターフェース、ロジック、又はコードを含み得る。例えば、ポリシ・アドミニストレーション・コンポーネント８０２によって与えられる記入式フォームは、そのフォームにおいて論理的又は数学的演算子を使用することによってポリシに結合され得る入力をユーザから受け取り得る。
【００９５】
ポリシ・アドミニストレーション・コンポーネント８０２は、新しい又は修正されたポリシ、ルール、ポリシ及びルールの処理において使用可能な情報、或いはそれらの組み合わせを出力８０６として供給する。１つの実施例では、ポリシ・アドミニストレーション・コンポーネント８０２は、ポリシ・アドミニストレーション機能の促進のために、グラフィカル・ユーザ・インターフェースのようなインターフェース・コンポーネントを含み得る。
【００９６】
図９を参照すると、この図は、実施例に従ってコンテキスト認識のデータ保護の構成のブロック図を示す。構成９００は、図３における構成３００、及び図４におけるポリシ管理システム４００を使用して具現化され得る。
【００９７】
ポリシ管理システム９０２は、図４におけるポリシ管理システム４００を使用して具現化され得る。リポジトリ９０４は、図３におけるリポジトリ３０４と同様のものでよい。アプリケーション９０６は、図３におけるアプリケーション３０２と同様のものでよい。
【００９８】
アプリケーション９０６は、資源に対する要求９０８をリポジトリ９０４へ送り得るアプリケーションであってもよい。アプリケーション９０６は、データ処理環境におけるアクセス・コンテキスト及びアクセス・コンテキストの変化に気付かないことがあり、アプリケーション９０６の既存のコードを使用して要求９０８を行なうことがある。
【００９９】
リポジトリ９０４は、資源９１２から資源９１０を供給し得る。資源９１０を供給する際、リポジトリ９０４は、実行コンポーネント９１６を使用して１つ又は複数個のルール９１４を実行し得る。
【０１００】
実施例は、アクセス・コンテキストに基づいたデータ保護を具現化するためのリポジトリ９０４及び実行コンポーネント９１６に対してコード修正を要求しないことがある。リポジトリ９０４の観点からは、リポジトリ９０４は、既存のルールが従来技術において供給される方法で格納又は供給され得るルール９１４を実行し続ける。リポジトリ９０４に関する限り、ルール９１４は、リポジトリ９０４の側のアクセス・コンテキスト又はアクセス・コンテキストの変化を認識することを必要としないアクセス・コンテキスト不認識であるように見える。
【０１０１】
同様に、実行コンポーネント９１６は、アクセス・コンテキストにとらわれない方法でルール９１４を実行し続ける。言い換えれば、実行コンポーネント９１６は、アクセス・コンテキスト又はアクセス・コンテキストの変化に関する如何なる認識も含むように修正される必要がない。
【０１０２】
１つの実施例では、ポリシ管理システム９０２は、次のような例示的方法でリポジトリ９０４を操作し得る。ポリシ管理システム９０２は、作成されつつあるアクセス・コンテキスト、及びデータ処理システムにおいて生じるアクセス・コンテキストの変化に関する情報９１８を受領する。
【０１０３】
１つの実施例では、アクセス・コンテキスト及びアクセス・コンテキストの変化を検出するために、ポリシ管理システム９０２が情報９１８を調査(poll)又はモニタし得る。例えば、ポリシ管理システム９０２は、１つのシステムにおいて通信されている事象メッセージを聞き取り、関心のある事象メッセージに作用し得る。
【０１０４】
別の実施例では、ポリシ管理システム９０２は、アクセス・コンテキスト及びアクセス・コンテキストの変化を表わす情報９１８を受け取ることがある。例えば、アプリケーション９０６は、或る活動がアプリケーション９０６において生じるとき、データ処理システムにおいてフラグをセットさせ得る。そのフラグ・セッティングは、ポリシ管理システム９０２がアクセス・コンテキストの変化を決定し得る情報９１８を形成することができる。
【０１０５】
例えば、患者ジョン・ドゥのレコードが以前に集中治療室からアクセスされたし、その後、病室からアクセスされる場合、患者ジョン・ドゥは移動させられたかもしれず、アクセス・コンテキストは変わってしまったかもしれない。従って、医療レコード・アクセス・アプリケーションでもよいアプリケーション９０６は、ポリシ管理システム９０２により情報９１８として検知され得る事象を発生することがある。
【０１０６】
別の例として、製品関連のドキュメントは、その製品がリリースされる前には機密としてマークされることがある。その製品のリリース発表は、カレンダ・アプリケーションのようなアプリケーションによって引き起こされた事象となることがある。ポリシ管理システム９０２は、その事象を情報９１８として検知し得る。ドキュメントの属性は、そのような事象に応じて機密から公開に変化されなければならないかもしれない。
【０１０７】
アクセス・コンテキスト又はアクセス・コンテキストの変化に関する受け取られた情報９１８に依存して、ポリシ管理システム９０２は、情報９１８によって影響されるリポジトリ９０４における１つ又は複数個の資源または構成を識別し得る。ポリシ管理システム９０２は、資源のデータ９２０、例えば、その資源の内容又は構成データ、をリポジトリ９０４から取り出す又は受け取る。１つの実施例では、ポリシ管理システム９０２は、例えば、要求及び応答によって、資源又は構成データの９２０を検索し得る。別の実施例では、リポジトリ９０４を含む別のシステム又はアプリケーションは、データが要求されてなくても、ポリシ管理システム９０２にデータ９２０を送信し得る。
【０１０８】
ポリシ管理システム９０２は、情報９１８及びデータ９２０を使用してオペレーション９２２を行なう。オペレーション９２２を行なう際、ポリシ管理システム９０２は、受け取られたデータ９２０に対して適用可能なポリシ及び制約を識別する。ポリシ管理システム９０２は、識別されたポリシ及び制約に基づいて、アクセス・コンテキスト関連の変化、修正、又はデータ９２０の他の操作を識別し得る。例えば、ポリシ管理システム９０２は、図５におけるポリシ情報コンポーネント５０２、図６におけるポリシ決定コンポーネント６０２、又は図７におけるポリシ実行コンポーネント７０２の組み合わせを使用して上述のオペレーション９２２を行ない得る。
【０１０９】
ポリシ管理システム９０２は、データ９２４をリポジトリ９０４に送る。データ９２４は、データ９２０の修正された形式又はデータ９２０を修正するための情報であってもよい。データ９２４は、そのほかにも、リポジトリ９０４における実行すべきポリシ情報であってもよい。
【０１１０】
例えば、データ９２４は、リポジトリ９０４のルール９１４においてアクセス・コンテキスト不認識のルールとして格納されるべき適用可能なポリシによるルールであってもよい。リポジトリ９０４は、コンテキスト不認識の実行コンポーネント９１６を使用して、他の任意のルールとまったく同様のそのようなルールを実行し得る。
【０１１１】
別の例として、データ９２４は、資源９１２に格納されるべき修正済みの資源であってもよい。その修正済みの資源は、修正済みもしくは新しい属性又はパラメータ、修正済みもしくは新しい内容、或いはそれらの組み合わせを含み得る。例えば、ジョン・ドゥのレコードに関連した承認済みグループの医師が、集中治療室から入院患者病室へのジョン・ドゥの移動時に修正済みの資源において変化されることもある。
【０１１２】
１つの実施例では、ポリシ管理システム９０２は、編集コンポーネント（図示されていない）を含み得る。ポリシ管理システム９０２は、コンテキスト認識のルールを編集層に提供し得る。編集コンポーネントは、そのルールに従って資源を編集し得るし、編集された資源をリポジトリ９０４に戻し得る。
【０１１３】
実施例では、ポリシ管理システム９０２は、リポジトリ９０４に提出される資源に対する要求に関してリポジトリ９０４を非同期に操作する。言い換えれば、ポリシ管理システム９０２は、資源に対する要求がリポジトリ９０４に提出される前に、それが提出される時に、及びそれが提出された後に、リポジトリ９０４の資源又は構成を操作し得る。更に、ポリシ管理システム９０２は、操作時にリポジトリ９０４から要求される資源に関連し得る又は関連し得ないリポジトリ９０４の資源又は構成を操作し得る。
【０１１４】
別の実施例では、リポジトリ９０４がポリシ管理システム９０２をコールするとき、ポリシ管理システム９０２は同期態様でリポジトリ９０４を操作し得る。そのような実施例は、いくつかの実施態様において、システム資源の観点から、非同期の実施例に比べて高価になり得る。
【０１１５】
そのような実施例は、リポジトリ９０４が、要求９０８において要求されている特定の資源のためにポリシ管理システム９０２をコールする場合、非同期の実施例に比べて処理速度も遅くなることがある。例えば、要求９０８に対する応答は、ポリシ管理システム９０２がその要求された資源に関するコンテキスト認識データ保護フィーチャを提供し得るまで、待たなければならないことがある。
【０１１６】
両方の実施例とも同様の目的を達成し且つ本発明の技術的範囲内にあるが、或る実施態様は、コール・アウトの実施例以上に非同期実施例に類似した実施態様を好むことがある。それとは逆に、或る実施態様は、その実施態様が資源９１２の修正に厳しい制御を好む場合、又はポリシ管理システム９０２によって消費される資源を懸念する場合、又は必要な場合のみポリシを具現化することを望む場合、或いはそれらの組み合わせの場合、非同期の実施例よりもコール・アウトの実施例を好むことがある。
【０１１７】
図１０を参照すると、この図は、実施例に従ってコンテキスト認識のデータ保護のプロセスのフローチャートを示す。プロセス１０００は、図９におけるポリシ管理システム９０２のようなポリシ管理システムにおいて具現化され得る。
【０１１８】
プロセス１０００は、アクセス・コンテキスト及びアクセス・コンテキストの変化をモニタすること及びそれを識別することによって始まる（ステップ１００２）。例えば、プロセス１０００は、図９における情報９１８を受け取ることによってステップ１００２を遂行し得る。
【０１１９】
別の例として、プロセス１０００は、例えば、ポリシが作成又は修正されるとき、アクセス・コンテキスト及びアクセス・コンテキストの変化に関する情報を仕様書から受け取り得る。そのような場合、プロセス１０００は、事象が実際に生じなくても、アクセス・コンテキストが実際に作成されなくても、及びアクセス・コンテキストが実際にデータ処理環境において変化しなくても、ステップ１００２において情報を受け取り得る。言い換えれば、プロセス１０００は、現在のアクセス・コンテキストのままであるときに、その情報を受け取り得る（ステップ１００２）。
【０１２０】
プロセス１０００は、ステップ１００２の情報に従って種々の資源及びシステムの望ましい挙動を決定する（ステップ１００４）。例えば、プロセス１０００は、ステップ１００２において識別されたアクセス・コンテキスト又はアクセス・コンテキストの変化によって影響を受ける資源を識別することによってステップ１００４を遂行し得る。更に、ステップ１００４では、プロセス１０００は、修正、追加、削除、或いは操作されるべき、その識別された資源又はシステムの属性、パラメータ、内容、又は構成も決定し得る。
【０１２１】
プロセス１０００は、望ましい挙動に従ってその識別された資源又は構成を修正し得る（ステップ１００６）。しかる後、プロセス１０００は終了する。
【０１２２】
ステップ１００６において、修正の代わりに又は修正に加えて、プロセス１０００は、その資源又は構成を修正するための使用可能な情報を別のプロセスに送ることも可能である。例えば、プロセス１０００は、ステップ１００６において、図９に関連して説明したように、リポジトリにルールを送り得る。その後、リポジトリは、アクセス制御を実行する際にそのルールを使用し得る。
【０１２３】
プロセス１０００は、ステップ１００６の後、その修正された情報又は修正のために使用可能な情報をシステム又はアプリケーションに送り得る。１つの実施例では、プロセス１０００は、システムからの要求時にそのような情報を送り得る。その修正された情報又は修正のために使用可能な情報を受け取るシステムは、ステップ１００４の処理において資源及び構成を提供した、そのシステム以外のシステムであってもよい。
【０１２４】
図１１を参照すると、この図は、実施例に従って例示の実施態様のブロック図を示す。その実施例のいくつかの局面は、ポリシ・マネージャ１１０４に代わってアダプタ１１０２において具現化された。アダプタ１１０２は、ポリシ・マネージャ１１０４を内容マネージャ１１０６とインターフェースするように設計される。内容マネージャ１１０６は内容資源１１０７をホスティングする。アダプタ１１０２はポリシ・エンジン１１０８を含む。ポリシ・エンジン１１０８は、ポリシ・マネージャ１１０４のポリシ分配コンポーネント１１１０からポリシ情報を受け取る。ポリシ・マネージャ１１０４は、任意の望ましいフォーマットでポリシを作成するのを支援するポリシ・オーサリング・コンポーネント１１１２を含む。例えば、ポリシ・オーサリング・コンポーネント１１１２は、eXtensible Access Control Markup Language（XACML）又はターゲットとするポリシ・リポジトリのネイティブ・セマンティックス(native semantics)でポリシを作成し得る。従って、ポリシ・エンジン１１０８によって受け取られるポリシ情報は、XACML形式或いは内容マネージャ１１０６において展開するのに適した別の形式におけるポリシであってもよい。
【０１２５】
アダプタ１１０２における事象キュー１１１４は内容マネージャ１１０６から情報１１１６を受け取り、他のデータ処理システムから情報１１１８を受け取る。アダプタ１１０２は、情報１１１６及び１１１８を使用して、アクセス・コンテキストの変化によって生じた内容マネージャ１１０６の変化を確定し得る。
【０１２６】
メタデータ・エンジン１１２０は、内容マネージャ・モデルに関する情報を使ってモデル取り出しサービス１１２２を遂行する。メタデータ・エンジン１１２０は、取り出されたモデル情報１１２４をポリシ・マネージャ１１０４における内容マネージャ・サービス・プラグイン１１２６に送る。
【０１２７】
内容マネージャ・モデルは、例えば、内容マネージャにおける資源の階層的組織であってもよい。別の例として、内容マネージャ・モデルは、資源内容を格納し得るデータベースの一部分のために構成された論理的ビューであってもよい。
【０１２８】
そのモデルから取り出されたメタデータは、そのモデルのインスタンス・レベル・ビューであってもよい。階層モデルの例では、メタデータは、モデルの階層のノードに存在する資源を説明するデータであってもよい。
【０１２９】
アダプタ１１０２における通知サービス１１２８は、例えば、事象キュー１１１４における事象のために、何らかのメタデータの変化がそのモデルにおいて生じる場合、ＡＰＩ１１３２を使用して通知１１３０をポリシ・マネージャ１１０４に送る。アダプタ１１０２のポリシ・エンジン１１０８におけるトランスレータ・コンポーネント１１３４が、例えば、内容マネージャ１１０６のセキュリティ・ポリシ・リポジトリ１１３８を更新することによって、内容マネージャ１１０６に修正されたポリシ１１３６を供給又は適用する。
【０１３０】
例示のオペレーションでは、例示のモデルは内容マネージャ１１０６において使用中であってもよい。モデルにおける資源は、事象即ち、アクセス・コンテキストの変化、のために変化し得、資源のメタデータの変化を引き起こす。メタデータの変化はポリシ・マネージャ１１０４に伝えられる。ポリシ・オーサリング・コンポーネント１１１２は、モデル、メタデータの変化、及びアクセス・コンテキストの変化を使用して、ポリシを作成又は訂正し得る。新しい又は訂正されたポリシは、その新しい又は訂正されたポリシを用いてポリシ・リポジトリ１１３８を更新し得るトランスレータ・コンポーネント１１３４に伝えられる。別の例示のオペレーションでは、新しい又は訂正されたポリシは、アクセス・コンテキストの変化に応答して、ポリシ・エンジン１１０８において、モデルにおける１つ又は複数個のノード資源に適用され得る。
【０１３１】
ブロック図におけるコンポーネント及び上述フローチャートにおけるステップは単に例として説明されている。それらのコンポーネント及びステップは、説明を明瞭にするために選択されたが、本発明を実施例に限定するものではない。例えば、特定の実施態様は、実施例の技術的範囲から逸脱することなく、コンポーネント又はステップのいずれも、結合し、省略し、更に細分化し、修正し、拡張し、縮小し、或いは代替的に実装し得る。更に、上述のプロセスのステップは、本発明の技術的範囲内で種々の順序で遂行され得る。
【０１３２】
従って、コンピュータにおいて具現化される方法、装置、及びコンピュータ・プログラムは、コンテキスト認識のデータ保護のための実施例において提供される。本発明の実施例を使用すると、データ処理システムは、そのシステム又は別のシステムにおいて生じ得るアクセス・コンテキスト及び事象の変化に応答してデータ及び資源を保護することができる。本実施例を使用すると、データ処理システムは、固定化したルール及び事象に対する手動の反応によって得られるセキュリティに比べて、情報に関する改善されたセキュリティを用いて作動することができる。
【０１３３】
特定の実施例において説明されたルールは単なる例であり、本発明の技術的範囲を限定することを意図するものではない。如何なるルールも、本明細書において開示された、本発明の技術的範囲内におけるルールと同様の態様で具現化され得る。
【０１３４】
本発明の実施例は、一般に、既存のアプリケーション、システム、リポジトリ、及び対象と連携し得る。本実施例は、既存のアプリケーション及びプロセスがアクセス・コンテキスト不認識のルール及びポリシを使用するように単に構成された場合でも、それらがコンテキスト認識のデータ保護を透過的に使用することを可能にし得る。更に、使用中に、既存の対象は、資源及び構成を修正し得るか或いはセキュリティ・ポリシを変化し得るアクセス・コンテキスト及びアクセス・コンテキストの変化を不認識のままにし得る。
【０１３５】
本発明は、全体的にソフトウェアの実施例、又はハードウェア及びソフトウェア要素の両方を含む実施例の形態を取り得る。好ましい実施例では、本発明は、ソフトウェアで、又はファームウェア、常駐ソフトウェア、及びマイクロコードを含むがそれらに限定されないプログラム・コードで具現化される。
【０１３６】
更に、本発明は、コンピュータ又は任意の命令実行システムによって使用するための、或いはそれらに関連して使用するためのプログラム・コードを提供する、コンピュータ使用可能媒体又はコンピュータ可読媒体からアクセスし得るコンピュータ・プログラムの形態を取り得る。この説明のために、コンピュータ使用可能媒体又はコンピュータ可読媒体は、命令実行システム、装置、又はデバイスによる使用或いはそれらに関連した使用のためにプログラムを格納、通信、伝播、又は搬送し得る任意の実体的な装置であってもよい。
【０１３７】
その媒体は、電子的、磁気的、光学的、電磁気的、赤外線又は半導体システム（又は装置もしくはデバイス）、或いは伝播媒体であってもよい。コンピュータ可読媒体の例は、半導体又はソリッド・ステート・メモリ、磁気テープ、取外し可能なコンピュータ・ディスケット、ランダム・アクセス・メモリ（ＲＡＭ）、リード・オンリ・メモリ（ＲＯＭ）、固定磁気ディスク、及び光ディスクを含む。光ディスクの現在の例は、コンパクト・ディスク・リード・オンリ・メモリ（ＣＤ−ＲＯＭ）、コンパクト・ディスク・リード・ライト（ＣＤ−Ｒ／Ｗ）、及びＤＶＤを含む。
【０１３８】
更に、コンピュータ記憶媒体は、コンピュータ可読プログラム・コードがコンピュータ上で実行されるとき、このコンピュータ可読プログラム・コードの実行が、コンピュータに、通信リンクを介して別のコンピュータ可読プログラム・コードを送信させるように、コンピュータ可読プログラム・コードを含み又は格納し得る。この通信リンクは、例えばこれに限定はされないが、物理的又は無線の媒体を使用し得る。
【０１３９】
プログラム・コードを格納及び／又は実行するに適したデータ処理システムは、システム・バスを介してメモリ素子に直接に又は間接的に連結された少なくとも１つのプロセッサを含むであろう。メモリ素子は、プログラム・コードの実際の実行中に使用されるローカル・メモリと、大容量記憶媒体と、実行中にコードが大容量記憶媒体から検索されなければならない回数を減らすために少なくとも幾つかのプログラム・コードの一時的記憶装置を提供するキャッシュ・メモリと、を含み得る。
【０１４０】
データ処理システムは、サーバ・データ処理システム又はクライアント・データ処理システムとしても作用し得る。サーバ及びクライアント・データ処理システムは、コンピュータ可読の媒体のようなコンピュータ使用可能な媒体であるデータ記憶媒体を含み得る。サーバ・データ処理システムに関連したデータ記憶媒体は、コンピュータ使用可能コードを含み得る。クライアント・データ処理システムは、例えば、クライアント・データ処理システムに関連したデータ記憶媒体上に記憶するため、又はクライアント・データ処理システムにおいて使用するため、コンピュータ使用可能コードをダウンロードし得る。サーバ・データ処理システムは、同様に、クライアント・データ処理システムからコンピュータ使用可能コードをアップロードし得る。実施例のコンピュータ使用可能プログラムに起因するコンピュータ使用可能コードは、このようにサーバ及びクライアント・データ処理システムを使用して、アップロード又はダウンロードされ得る。
【０１４１】
入出力又はＩ／Ｏ装置（キーボード、ディスプレイ、ポインティング装置等を含むが、これらに限定されない）は、システムに直接に又は介在するＩ／Ｏコントローラを介して接続され得る。
【０１４２】
ネットワーク・アダプタは、データ処理システムが、介在の専用ネットワーク又は公衆ネットワークを介して他のデータ処理システム、リモート・プリンタ、又はリモート記憶装置に接続されることを可能にするためにそのシステムに接続され得る。モデム、ケーブル・モデム、及びイーサネット・カードが現在利用可能なタイプのネットワーク・アダプタのほんの一例である。
【０１４３】
本発明の説明は、図解及び説明の目的のために示されており、余すところのないこと又は開示された形態における発明に限定されることを意図しない。多くの修正及び変動が当業者には明らかであろう。実施例は、本発明の原理、応用例を説明するために、及び、期待される特定の用途に適するように、様々な修正を伴う様々な実施例に関して、当業者が本発明を理解することを可能にするために、選択され、記述された。
【０１４４】
本発明の更なる好適な実施例は、コンテキスト認識のデータ保護のためのコンピュータ利用方法を提供する。そのコンピュータ利用方法は、データ処理システムにおいてアクセス・コンテキストを示す状態モデルを表わすパラメータのセットを提供するステップと、データである資源のセットへのアクセスを管理するために使用可能なポリシのセットをポリシ・リポジトリ内に提供するステップと、パラメータのセットにおけるパラメータの変化を検出することによって、アクセス・コンテキストの変化を検知するステップと、アクセス・コンテキストの変化によって影響を受ける資源を識別するステップと、アクセス・コンテキストの変化に対応するポリシを識別するステップと、資源へのアクセスを管理するコンテキスト不認識のアクセス制御実行コンポーネントを識別するステップと、ポリシに従ってコンテキスト不認識のアクセス制御実行コンポーネントを修正し、それによってアクセス・コンテキストの変化の認識を伴い資源へのアクセスを管理するステップと、を含む。
【図１】
2013533993.tif 000003
【図２】
2013533993.tif 000004
【図３】
2013533993.tif 000005
【図４】
2013533993.tif 000006
【図５】
2013533993.tif 000007
【図６】
2013533993.tif 000008
【図７】
2013533993.tif 000009
【図８】
2013533993.tif 000010
【図９】
2013533993.tif 000011
【図１０】
2013533993.tif 000012
【図１１】
2013533993.tif 000013
【国際調査報告】
2013533993.tif 000014