説明

動的、分散的および協働的な環境におけるデータオブジェクトの管理

【課題】データオブジェクトをコンピュータで保護する。
【解決手段】コンテンツ暗号鍵(CEK)でデータオブジェクト22を暗号化し、データオブジェクト22に対応する制御ポリシーの鍵暗号鍵(KEK)で、コンテンツ暗号鍵(CKT)を暗号化する。さらに、データオブジェクト22に対応する制御ポリシー・タグ23を記録してもよい。さらに、暗号化されたコンテンツ暗号鍵(CEK)を制御ポリシー・タグ23に格納する格納工程してもよい。さらに、制御ポリシー・タグ23に格納されたコンテンツ暗号鍵(CEK)を、キャッシュされた鍵暗号鍵(KEK)で復号化し、復号化されたコンテンツ暗号鍵(CEK)でデータオブジェクト22を復号化してもよい。

【発明の詳細な説明】
【関連出願】
【0001】
本出願は、2003年6月2日付の米国特許仮出願第60/475,109号の利益を主張するものであり、前記出願の全内容は参照により本明細書に引用したものとする。
【技術分野】
【0002】
本発明は、デジタル的に符号化された文書およびデータの使用権限の行使および管理の分野に関する。
【背景技術】
【0003】
デジタル・フォーマットでのオーディオ、ビデオ、グラフィック、および著述作品の符号化および配布は、最近のビジネスにおける基本的部分となってきている。しかしながら、オリジナルと同一の複製を容易に作成できること、およびインターネットによって可能になった配布の速度により、そのような作品の所有者は、デジタル符号化データに使用権限を関連付けして行使する技法を採用するようになってきている。そのような技法の関係者の例としては、音楽、映画、または他の娯楽コンテンツの提供者、電子新聞、雑誌、または書籍の発行者、ならびに秘密の、固有の、または他の機密情報を有する企業が含まれる。一般性を欠くことなく、説明を容易にするため、この種のデジタル符号化された作品のすべてを、ここではデータオブジェクトと称することにする。
【0004】
使用権限をデータオブジェクトに関連付けて行使するための多くの手法が存在する。一般的な手法の1つは、データオブジェクトについて、オブジェクトを保持する物理的媒体からの無許可の複製を防止しようする技法を基本としている。米国特許第5,513,260号が、そのような複製防止方式の一例である。
【0005】
複製防止技法は、特定の分野においては適正であるが、それら技法が行使できる使用権限の種類は、一般的解決策となるにはあまりにも粗い分類である。例えば、固有かつ秘密の文書の所有者は、保護対象の文書を、個人の1グループについては読み出しのみを可能にし、他のグループについては読み出しおよび書き込みを許可したいと望むことがある。複製防止技法は、このような使用ポリシーを記述するには、性能的に不十分である。
【0006】
許可されたユーザの各クラスすなわちグループに対して指定されたルールのセットに従って、許可ユーザのみがオブジェクトにアクセスし、使用できるようにデータオブジェクトを保護する、より汎用的な手法が存在する。この手法は、典型的には暗号化技術に依拠して、許可ユーザのみが実際のデータオブジェクトへのアクセス権を有することを保証する。詳細には、許可ユーザには、保護されているオブジェクトを復号化して実際のデータオブジェクトを生成するのに必要な秘密鍵へのアクセスが与えられる。使用権限は、典型的には、秘密鍵へのアクセスを許可されるユーザ、および許可ユーザが復号化されたデータオブジェクトを用いて実行できる内容を指定する。この基本的手法は、デジタル著作権管理(DRM)および関連の権限管理技法におけるワークの大部分を含む。この手法は、暗号化されたビットの複製は防止しないが、無許可ユーザは秘密鍵なしでは保護されているデータオブジェクトにアクセスできないため、複製防止と同じ最終結果を達成している。
【0007】
権限管理システムが効果的に機能するには、使用権限を暗号化データオブジェクトに緊密に結び付けて、使用権限が常に関連のオブジェクトとともに現れるようにしなければならない。この結合は、オブジェクトの所有者でない者または他の無許可のユーザが、データオブジェクトを使用権限から分離することをきわめて困難にし、理想的には不可能にしていなければならない。
【0008】
データオブジェクトを使用権限から分離しようとする攻撃は、2つのカテゴリーに分類される。第1のカテゴリーは、使用権限と暗号化データオブジェクトとの結合に対する攻撃から成る。このカテゴリーの攻撃の一例は、ある1つのファイルの使用権限を他のファイルの使用権限に置き替えることである。第2のカテゴリーは、データオブジェクトが復号化されて、許可ユーザによって使用されるときに企てられる攻撃から成る。この目的は、使用権限を直接回避して、復号化されたデータオブジェクトの保護されない複製を入手することにある。権限管理システムが効果的に機能するには、両カテゴリーの攻撃を防御する機構を備えていなければならない。
【0009】
第2のカテゴリーの攻撃は、暗号化データオブジェクトであっても、許可ユーザがアクセスするには、最終的には復号化する必要があるという事実を明示している。権限管理システムは、ユーザが直接データオブジェクトを復号化することを許可するか、あるいは権限管理対応アプリケーションの装備および使用を要求する。多くの商業的状況においては、保護されたデータオブジェクトの所有者は、エンドユーザに暗号化工程および復号化工程を明示することでエンドユーザを困惑させることは望まない。また、保護されたデータオブジェクトの所有者は、使用権限の順守に関してエンドユーザを信用しない。したがって、好ましい方法は、データオブジェクトを許可ユーザに対して透過的に復号化し、このオブジェクトに付された使用ルールを行使する権限管理対応アプリケーションを使用する。権限管理対応アプリケーションは、権限管理システムについての信頼エージェントとして機能し、保護されたデータオブジェクトの所有者によって指定されたルールを行使する。権限管理対応アプリケーションの例としては、暗号化フォーマットの音楽ファイルを再生できるメディアプレーヤがある。
【0010】
結合の緊密性および信頼アプリケーション・エージェントへの依拠が、権限管理システムと暗号化ファイルシステム技法の基本的な相違を構成する。暗号化ファイルシステム(例えば、マイクロソフト社のEFS、米国特許第6,249,866号)においては、使用権限はデータオブジェクト(例えば、ファイル)を保持するコンピュータ構造にのみ関連付けられ、データオブジェクトそのものには関連付けられていない。アプリケーションが暗号化ファイルシステムによって行使される使用権限を認識していないため、オブジェクトへのアクセスを許可されているが使用権限の変更は認められていないユーザにとって、権利を伝達しない方式でデータオブジェクトを保存することは、かなり容易である。詳細には、暗号化ファイルシステム内で保護されているファイルの許可ユーザは、保護ファイルの複製を妨害されることなく生成するためには、ファイルを暗号化ファイルシステムの外部のディレクトリに保存するだけでよい。
【0011】
権限管理対応アプリケーションを使用することにより、権限管理システムは、暗号化されたデータオブジェクトとそれに関する使用権限の間の緊密な結合を行使できる。設計者によっては、使用権限を暗号化データオブジェクトと共に格納することによりこの緊密な結合を実現することを選択し、多くの場合セキュアコンテナと称される新しいデータオブジェクトを生成している(例えば、米国特許第6,427,140号)。この手法においては、使用権限は保護されたデータオブジェクトの特定の複製に明確に結び付けられる。この手法が優れた機能を示すのは、例えば、オンライン音楽などの商業市場においては、データオブジェクトの所有者が読み出し専用のコンテンツを発行し、このコンテンツの使用および配布に関する管理を維持することをとにかく望む場合である。このような権限管理システムを、「発行専用配布モデルのサポート」と称する。
【0012】
発行専用配布モデルの基本的な特性は、セキュアコンテナ内の使用権限が時間とともに変化することを想定していない。あるいは、変化する場合でも、変化は低速であり、変化によって同時に影響を受けるエンドユーザは1人のみであるとしている。発行専用配布モデルにおいて使用権限を変更するには、所有者は、使用権限を保持するセキュアコンテナにアクセスしなければならない。セキュアコンテナへのアクセスによって、権限管理システムは、コンテナ内に保存された使用権限を変更できるようになる。セキュアコンテナが利用でない場合、所有者は、元のセキュアコンテナにアクセスするためのエンドユーザ許可権を(例えば、このコンテナについての復号鍵を破壊することによって)削除し、同一の保護されたデータオブジェクトであるが新しい使用権限を有するエンドユーザに対して、新しいセキュアコンテナを再発行できる。この後者の手法は、権限管理システムが新しいセキュアコンテナをエンドユーザに通知することを必要とし、さらに権限管理システムが、新しいセキュアコンテナ内に入れるデータオブジェクトの複製を有することを必要とする。
【0013】
これらの要件は、オンライン音楽などの分野においては負担とならないが、動的な環境、すなわちデータオブジェクトを保護している使用権限が頻繁に変更され、かつおそらくは多くの方法で変更される可能性がある環境に対しては、重大な障害になる。さらに、これらの要件は、多数のユーザが保護データオブジェクトの複製を種々のコンピュータ装置および記憶媒体上に個々に有する可能性があり、それらコンピュータ装置および記憶媒体のいくつかがオンラインでなく、あるいは保護オブジェクトの所有者がアクセスできない可能性がある分散的な環境に対しても、重大な障害になる。このような環境においては、所有者が保護オブジェクトの使用権限を変更することを望む場合に、保護オブジェクトのすべての複製に権限管理システムがアクセスできないことは明白である。さらに、保護データオブジェクトを複数のユーザからなるグループに新しく再発行することも、使用権限の変更が少数のユーザにのみ作用し、残りのユーザに通知されない(気付かれない)可能性があるため、望ましくない。さらに、所有者が使用権限を制御するがオブジェクトの最新バージョンの複製を有していない分散的な環境においては、保護データオブジェクトの再発行の可能性すらもない。
【0014】
極めて協働的な環境においては、協働的な資料の単一の「発行者」を特定することが困難であることが多く、不可能なこともある。しかし、企業データについては、企業のビジネス目的で生成された協働的な資料について、「所有者」を識別することが可能である。所有者は、著作者または協働作品の著作者らを雇用している企業である。したがって、協働的な環境においては、機密資料を作成した者とこの資料の使用権限を決定する者との間を区別することは、明らかに必要である。
【0015】
オーセンティカ社(Authentica)は、動的および分散的な環境におけるデジタル・データオブジェクトの使用権限の行使および管理についての部分的な解決策に関する特許を得ている(米国特許第6,449,721号)。この手法によれば、保護オブジェクトがエンドユーザに配布された後であっても、デジタル・データオブジェクトの所有者が、使用権限についての制御を維持できる。詳細には、この手法は、保護オブジェクトの使用権限を単一の中央位置に格納し、したがって保護データオブジェクトの所有者は、このデータオブジェクトのあらゆる(おそらくは多数の)複製に同時にアクセスする必要なく、オブジェクトの使用権限を変更できる。理想的には、この手法は、オブジェクトの使用権限の唯一の正式な複製を保持するのに対して、データオブジェクトの多数の分散された複製の存在を可能にする。オブジェクトの使用権限の唯一の正式な複製を持つことで、使用権限の管理が簡単になる。
【0016】
オーセンティカ社の手法は、保護情報の各セグメントについて、固有の識別子を生成する。オーセンティカ社の鍵サーバは、固有のセグメント識別子と、それらセグメントについての使用権限と、各セグメントの保護およびアクセスに使用される暗号鍵との間の関連性を保持する。保護セグメントにアクセスするには、エンドユーザは、サーバに対して本人であることを証明し、アクセスを希望する保護セグメントの識別子を提示しなければならない。ユーザが保護セグメントへのアクセスを許可されているならば、サーバは、そのセグメントに対する復号鍵およびそのセグメントとユーザの組み合わせについての使用権限を用いて応答する。エンドユーザ装置上の権限管理対応アプリケーションがサーバの応答を使用し、その保護セグメントに対する所有者が指定したアクセスレベルをエンドユーザに提供する。
【発明の概要】
【発明が解決しようとする課題】
【0017】
オーセンティカ社のような手法は、保護データオブジェクトの所有者が、保護データオブジェクトを収集または再配布の必要なしに、配布情報の使用を制御して使用情報を動的に変更することを可能にするが、協働的な環境における使用権限の行使および管理に関する問題については、完全な解決策ではない。詳細には、協働的な環境についての解決策は、既存の協働モデルに無理なく適合するようにして、協働の生成物の保護に焦点を合わせる必要がある。例えば、民間企業においては、協働作業によって、すべて同一使用権限によって保護される複数の文書が生成されることが頻繁にあり、したがって真に協働的な解決策は、一式の使用権限の下での複数の文書の容易なグループ化を可能しなければならない。さらに、多くの場合、協働作業において生成された派生的な作品も協働の使用権限によって保護されると予測され、それらの権限についての変更は、作品を新しい協働の設定に移すための既存のプロセスと一致することが予想される。最後に、現在の権限管理システムのすべて、特に発行専用配布モデルに焦点を合わせた権限管理システムでは、協働的な対話を含むデータオブジェクトを適正に保護するために、保護文書の生成、変更、および配布を厳重に管理しすぎている。適正な解決策は、「著作者」の保持する権限と「所有者」の保持する権限との間を明示的に区別しなければならない。
【課題を解決するための手段】
【0018】
任意、必須、またはロールに基づくアクセス制御のモデルを含むこの分野におけるさまざまな技法および発明、ならびにDRM(デジタル著作権管理)関連の技法が、前記要件のうちの1つまたは別の要件に対応してきた。しかし、本発明の実施形態は、動的、分散的、かつ協働的な環境を対象とする権限管理システムに関する必要なすべての形態に対応する独自の手法を提供する。
【0019】
本発明の構成は、ユーザによって動的、分散的、かつ協働的な環境で起草、アクセス、および変更されるデータオブジェクト全体にわたる制御を維持および管理する方法およびシステムを含む。
【0020】
データオブジェクトは、デジタル形式で符号化され、コンピュータ構造内にカプセル化されているあらゆるオーディオ、グラフィック、ビデオ、または著述作品であって、例えば、ソフトウェア・プログラムによってアクセスおよび操作可能であるファイル、メッセージ、または共有メモリ・オブジェクトなどである。
【0021】
分散的および協働的な環境(context)とは、1人または複数のユーザからなるグループが、少なくとも間欠的な接続を有しているコンピュータのネットワーク上で、特定の共通目的を達成するために、1つまたは複数のデータオブジェクトの集合に個々にまたは協働的に取り組む環境のことをいう。本発明においては、この共通目的をビジネス・プロセスと称する。
【0022】
ビジネス・プロセスにおいては、異なる一式の権限および責任を有するユーザのクラスが存在しうる。本発明においては、それらのクラスをロールと称する。
【0023】
本発明では、システムの特性がビジネス・プロセスの寿命の間に変化しうる場合に、環境が動的であると考える。例えば、システムはビジネス・プロセスの最中に、あるロールに属するユーザの組の変更を可能にし、あるいはあるデータオブジェクトに付された制御の種類の変更を可能にできる。本発明は、保護データオブジェクトの発行および変更を、それらデータオブジェクトの使用を制御しているポリシーの所有権および操作から分離している。
【0024】
データオブジェクトに関する制御は、特定のロールに属するコンピュータ・ユーザによって作動されるソフトウェア・プログラムが、オブジェクトにアクセスして操作できる方法を記述する一式のルールよって指定される。本発明においては、これらのルールを使用権限と称する。
【0025】
制御ポリシーは、使用権限が許可される条件を記載する署名付きの表明である。制御ポリシーは、少なくとも、データオブジェクトにアクセスできるユーザのリスト、それらアクセスを有するユーザの権限、および制御ポリシーを定義または編集できるユーザの追加リストを含んでいる。さらに、本発明におけるポリシーは、その制御のもとにあるオブジェクトに適用する補足的な特性を定義して、それらオブジェクトの信頼性、完全性、および秘密性を保証できる。
【0026】
先のパラグラフで述べたとおり、本発明において使用される用語の「制御」は、通常は、無許可ユーザおよびそれらユーザのアプリケーションによるアクセスに対抗する保護を意味する。
【0027】
本発明の別の目的は、ビジネス・プロセス内への可視性を得るシステムおよび方法を提供することにある。そのような可視性を、それらのデータオブジェクトの実際のデジタル表現の暗号化またはその他の変更によってデータオブジェクトを保護する上でのリスクを犯すことなく、達成できる。制御が保護を含んでいなければ、悪意のある相手、すなわち保護データオブジェクトを保護された環境の外から操作する者に対抗して、確実に制御を維持することを保証できないことは明白である。しかし、この制御レベルは、企業がデータオブジェクトを平文に維持すると同時に、ビジネス・プロセス内への可視性を望むようなビジネス状況において、依然として望まれる。
【0028】
本発明の別の目的は、制御ポリシーを1つまたは複数の中央サーバに格納する方法およびシステムを提供することにある。
【0029】
本発明の別の目的は、制御ポリシーを編集できるユーザの表示およびそれらのユーザが実行できる変更の種類に基づいて、制御ポリシーを編集する方法およびシステムを提供することにある。制御ポリシーの変更は、制御ポリシーを格納しているサーバ上で実行される。
【0030】
本発明の別の目的は、1つまたは複数の制御ポリシーを一時的に変更し、次いで将来のある時点において元の設定に自動的に復帰させる方法およびシステムを提供することにある。
【0031】
本発明の別の目的は、1つのボタンのクリックで実行し、その後別のボタンのクリックで元に戻すことができる1つまたは複数のあらかじめ設定された一時的な変更を有する方法およびシステムを提供することにある。
【0032】
本発明の別の目的は、各データオブジェクトに1つの(すなわち、それぞれの)制御ポリシーの識別名を付与する方法およびシステムを提供することにある。本発明においては、その識別名がデータオブジェクトに付与されている制御ポリシーを、そのデータオブジェクトを保護する制御ポリシーと称する。さらに、そのようなデータオブジェクトを、保護データオブジェクトと称する。
【0033】
本発明の別の目的は、複数のデータオブジェクトが同一制御ポリシーを参照できるようにすることにある。
【0034】
本発明の別の目的は、制御ポリシーの識別名が、そのネーム空間において実際の制御ポリシー識別子を定義しているサーバを特定する方法およびシステムを提供することにある。好ましい実施形態においては、データオブジェクトに付されたポリシー参照は、サーバのURLおよびサーバにとって既知の数値を含んでいる。
【0035】
本発明の別の目的は、制御ポリシーによって保護されるデータオブジェクトの生成、アクセス、または変更を試みるユーザが、データオブジェクトに関してそのアクションを実行する権限を有していることを、ポリシー・サーバに間欠的に接続される可能性のあるクライアントによってチェックする、方法およびシステムを提供することにある。ユーザが権限を有している場合、クライアントは要求されたアクションの続行を許可する。ユーザが権限を有していない場合、クライアントは適切なエラーメッセージによって応答する。言い換えると、ビジネス・プロセス手法によって提供される保護は、所有され、極秘の、または別の慎重を期するデータオブジェクトを、ディスクに格納される間、または通信リンクを介して伝送される間に、保護するだけでなく、データオブジェクトが許可ユーザのソフトウェア・アプリケーションによって操作される際およびアプリケーション間の通信(例えば、マイクロソフト社のWindows(登録商標)オペレーティング・システムにおけるクリップボード操作)の際にもこれらデータオブジェクトを保護する。
【0036】
本発明の別の目的は、装置、場所、アクセス時間、またはネットワーク接続の制約を特定する条件を含む制御ポリシーを有する方法およびシステムを提供することにある。
【0037】
本発明の別の目的は、制御ポリシーの編集を許可されたユーザが、このポリシーによって保護されているすべてのデータオブジェクトに物理的または電子的にアクセスすることなく、ポリシーを変更できる方法およびシステムを提供することにある。
【0038】
本発明の別の目的は、保護データオブジェクトの正式の1つまたは複数の複製だけを、データオブジェクトを保護する制御ポリシーの変更の権限を有さないユーザのコンピュータ装置または媒体上に置くことができる方法およびシステムを提供することにある。
【0039】
本発明の一実施形態においては、保護データオブジェクトを他のユーザに配布する前に、保護データオブジェクトをポリシー・サーバに登録する概念は存在しない。これは、オフラインである可能性のある許可ユーザの装置上でデータオブジェクトの生成および変更を含む協働的作業をサポートするのに必要とされる本発明の主要な側面である。
【0040】
本発明の別の目的は、許可ユーザが彼らの作業しているクライアントが指定された制御ポリシーのサーバとの接続を失っている場合であっても、新しい保護データオブジェクトを生成できるようにする方法およびシステムを提供することにある。この状況における許可ユーザは、制御ポリシーの下でデータオブジェクトを生成する権限を有するユーザである。好ましい実施形態においては、ユーザは、ある程度最近のポリシー・サーバへのアクセスを有する必要があり、ここでの「最近」とは、そのポリシーについて指定されたキャッシュの時間切れ期間内を意味している。
【0041】
本発明の別の目的は、2人またはそれ以上の許可ユーザが保護データオブジェクトを閲覧し、新規または既存の保護データオブジェクトについて協働的に作業する方法およびシステムであって、それらユーザのクライアントのうちの1以上が協働的データオブジェクトを保護する制御ポリシーの単一または複数のサーバへの接続を失う場合でも、そのような協働的な作業が可能である方法およびシステムを提供することにある。保護データオブジェクトは、サーバに接続されているときには未だ閲覧されていなくてもよい。共有のデータオブジェクトは新しく生成、すなわち、ユーザがサーバとの接続を有していないときに生成されてよい。
【0042】
本発明の別の目的は、ポリシー・サーバの記憶装置が、決められた制御ポリシーの数に比例して拡大収縮する方法およびシステムを提供することにある。記憶装置は、固有の保護データオブジェクトの数に応じて拡大収縮すべきではなく、それら保護データオブジェクトの複製の数に応じて拡大収縮すべきでもない。
【0043】
本発明の別の目的は、制御ポリシーをビジネス・プロセスにグループ化する方法およびシステムを提供することにある。
【0044】
本発明の別の目的は、制御ポリシーに含まれる1つまたは複数のロールを定義することによって制御ポリシーを構成する方法およびシステムを提供することにある。各ロールは、それぞれの一式の使用権限およびユーザのリストを含む。
【0045】
本発明の別の目的は、1つの制御ポリシーに含まれる複数のロールに登場するユーザの使用権限を集約する方法およびシステムを提供することにある。
【0046】
本発明の別の目的は、ビジネス・プロセスおよびそれらが包含する制御ポリシーを管理(生成、編集、および削除)する特権を有するユーザと、制御ポリシーの1つまたは複数のロールのユーザのリストのみを変更する特権を有するユーザとを区別する方法およびシステムを提供することにある。
【0047】
本発明の別の目的は、データオブジェクトについての制御ポリシーの識別名を変更できる方法およびシステムを提供することにある。この変更により、データオブジェクトをそのシステムによって管理されないようにしてもよい。
【0048】
本発明の別の目的は、適正な使用権限を有するユーザがデータオブジェクトについての制御ポリシーの識別子を変更できる方法およびシステムを提供することにある。オブジェクトの制御ポリシー識別子を「非管理」または同等の状態に変更することによって、ユーザに、データオブジェクトを被保護にする権限を付与することもできる。
【0049】
本発明の別の目的は、データオブジェクトを制御ポリシーの外に移動できるユーザのリストと、ポリシーをデータオブジェクトに割り当てることができるユーザの別個のリストとを決定する制御ポリシーを有する方法およびシステムを提供することにある。これらのアクションは両方とも、データオブジェクトに付された制御ポリシー識別子の変更を含む。これらのリストについて、ユーザをまったく含まない時点が存在してもよい。
【0050】
本発明の別の目的は、手動で移動および割り当てを行なう権限を有するユーザに対して、制御ポリシー間のデータオブジェクトの移動を自動化する方法およびシステムを提供することにある。この構成の好ましい実施形態は、ツールを既存の電子ビジネス・プロセスのソフトウェア・コンポーネントに統合することを含む。
【0051】
本発明の別の目的は、ビジネス・プロセスの管理者が制御ポリシー間のデータオブジェクトの自動移動を生じさせるイベントを決定できる方法およびシステムを提供することにある。
【0052】
本発明の別の目的は、ビジネス・プロセスを階層方式に体系化する方法およびシステムを提供することにある。そのような階層を用いて、制御ポリシー間のデータオブジェクトの移動の範囲を制限できる。さらに、階層を用いて、単一の位置にある複数のビジネス・プロセスに共通の制御ポリシーまたは他の特性を決定できる。
【0053】
本発明の別の目的は、保護データオブジェクトの制御ポリシーを表示および変更する方法およびシステム(例えば、グラフィカル・ユーザ・インタフェース)を提供することにある。一実施形態においては、これは、データオブジェクトを表示するウインドウのタイトルバーに位置するドロップダウン・ウインドウとして実現される。このドロップダウン・ウインドウは、ドロップレット・コントロールと称される。ユーザがドロップレット・コントロールをクリックすると、ウインドウが開き、ユーザにより選択される複数のポリシーおよびオプションが表示される。
【0054】
本発明の別の目的は、ユーザがドロップレット・コントロールを起動したときに、ユーザが現在のデータオブジェクトを移動できる可能な制御ポリシーのリストを表示する方法およびシステムを提供することにある。
【0055】
本発明の別の目的は、ユーザがデータオブジェクトの起動されたドロップレット・コントロールウインドウ内で新しい制御ポリシーを選択したときに、データオブジェクトの制御ポリシーを変更する方法およびシステムを提供することにある。
【0056】
本発明の別の目的は、起動されたドロップレット・コントロール・ウインドウ内にビジネス・プロセスの制御ポリシーの階層構造を表示する方法およびシステムを提供することにある。
【0057】
本発明の別の目的は、データオブジェクトをコンテンツ暗号化鍵(CEK)で暗号化する方法およびシステムであって、このCEKは、データオブジェクトに関連付けられた制御ポリシーの鍵暗号化鍵(KEK)で暗号化される。
【0058】
本発明の別の目的は、制御ポリシーによって保護されるデータオブジェクトを一時的または永久的なオブジェクトのいずれとして取り扱うべきかを指示する方法およびシステムを提供することにある。一時的なデータオブジェクトは、将来の特定の指定された時間までアクセス可能であり、その時間後に、アクセス不可能および復元不可能になる。永久的なデータオブジェクトは、権限管理システムまたはそのエージェントに提示されたときには、常にアクセス可能または復元可能である。
【0059】
本発明の別の目的は、制御ポリシーによって保護されるデータオブジェクトのすべてを、将来の指定時間よりも前に強制的にアクセス不可能かつ復元不可能にする方法およびシステムを提供することにある。ビジネス・プロセスの管理者は、計画よりも早くアクセスを永久的に無効にすることができる。
【0060】
本発明の別の目的は、制御ポリシー識別子を、(おそらくは暗号化された)保護データオブジェクトのビットと共に格納されるデータ構造内に記録する方法およびシステムを提供することにある。好ましい実施形態においては、このデータ構造を制御ポリシー・タグ(CPT)と称する。
【0061】
本発明の別の目的は、CPTを保護データオブジェクトの開始端または終端に付ける方法およびシステムを提供することにある。
【0062】
本発明の別の目的は、保護データオブジェクトのCPTを、クライアントまたはサーバ装置上のいずれかの上に構成する方法およびシステムを提供することにある。
【0063】
本発明の別の目的は、CEKをCPT内に安全に格納する方法およびシステムを提供することにある。CPTがCEKを含んでいるため、クライアントはキャッシュしたポリシーおよび鍵(KEK)情報のみを用いて、オフラインで保護データオブジェクトにアクセスできる。
【0064】
本発明の別の目的は、保護データオブジェクトの有効期限切れのCPTを自動的に置換する方法およびシステムを提供することにある。CPTの期限切れは、CPTフォーマットが変更されることによって、あるいはCPTの制御ポリシーKEKが期限切れとなる(すなわち、その有効期限を越える)ことによって生じる。
【0065】
本発明の別の目的は、権限管理システムの信頼できるクライアントは古いCPTフォーマットを解釈するためのコードを必要としない方法およびシステムを提供することにある。
【0066】
本発明の別の目的は、制御ポリシーが読み出し専用のまたは読み出し専用コンピュータ媒体上に格納されたデータオブジェクトを保護することを示す方法およびシステムを提供することにある。
【0067】
本発明の別の目的は、無許可ユーザにデータオブジェクトを保護しているシステムにアクセスしたことを通告する方法およびシステムを提供することにある。好ましい実施形態は、CPTにテキスト・メッセージを含む。
【0068】
本発明の別の目的は、改ざんに対してCPTの完全性を守る方法およびシステムを提供することにある。好ましい実施形態は、CPTのフィールド全体にわたりセキュア・ハッシュ(secure hash)を使用する。
【0069】
本発明の別の目的は、データオブジェクトのCEKがCPT内に格納されている間、そのCEKの秘密性を守る方法およびシステムを提供することにある。好ましい実施形態は、CEKを制御ポリシーのKEKで暗号化する。暗号化されたCEKは、データオブジェクトが変更されたときにランダムなシード値を用いてCEKを変更することによって、既知平文攻撃(すなわち、2つの類似文書の同一部分を知ることに基づく攻撃)に対して保護される。
【0070】
本発明の別の目的は、サーバおよびクライアント通信をネットワークに基づく攻撃に対して保護する方法およびシステムを提供することにある。好ましい実施形態は、クライアントとサーバとの間の通信に、ハイパーテキスト・トランスファ・プロトコル・オーバ・セキュア・ソケット・レイヤー(HTTPS)接続を使用する。
【0071】
本発明の別の目的は、ビジネス・プロセスの1つまたは複数の制御ポリシー内で許可および拒絶されたアクティビティに基づいて、ビジネス・プロセスの監査またはフォレンジックを可能にする方法およびシステムを提供することにある。
【0072】
本発明の別の目的は、CPT内に保持された固有の文書識別子に基づいてアクティビティ・ログ内のデータオブジェクトを識別する方法およびシステムを提供することにある。
【0073】
本発明の別の目的は、ユーザ・ログイン時にクライアントがサーバにアクセスして、そのユーザ名が挙げられている制御ポリシーを取得してキャッシュできるようにする方法およびシステムを提供することにある。この実施形態により、間欠的な接続、保護データオブジェクトのオフラインでの使用、および制御ポリシーにおいて名称が挙げられている他のユーザとのオフラインでの協働など、協働的かつ分散的な環境において生じる問題に対応する。
【0074】
本発明の別の目的は、クライアントがサーバによりキャッシュされたポリシーを確認するポーリングの頻度を変更する方法およびシステムを提供することにある。この頻度の設定は、アクセスを許可する前に、クライアントがキャッシュ・ポリシーを常に確認する必要があるように設定できる。
【0075】
本発明の別の目的は、ネットワーク・アクセスが復元されたときに、クライアントがキャッシュされたポリシーを確認および更新できる方法およびシステムを提供することにある。
【0076】
本発明の別の目的は、サーバがクライアントに対し彼らのキャッシュされたポリシーを更新するよう促す方法およびシステムを提供することにある。
【0077】
本発明の別の目的は、キャッシュされた制御ポリシーの有効期間を指定する方法およびシステムを提供することにある。
【0078】
本発明の別の目的は、制御ポリシーのKEKの有効期限を指定する方法およびシステムを提供することにある。
【0079】
本発明の別の目的は、サーバがクライアントに制御ポリシーのKEKの履歴の一部を供給できる方法およびシステムを提供することにある。保護データオブジェクト内の期限切れポリシーKEKの使用は、クライアントがオブジェクトにアクセスする前にサーバと交信することを強制しない。たとえユーザがオンラインで保護データオブジェクトにアクセスしなくても、オフラインのアクセスがデータオブジェクトの制御ポリシーのキャッシュの時間切れ期間内に行なわれている限りは、ユーザは期限切れのKEKを理由にアクセスを拒否されることはない。
【0080】
本発明の前記の目的、特徴および利点、ならびに他の目的、特徴および利点は、添付の図面に示されている本発明の好ましい実施の形態についての以下のさらに詳しい説明から、明らかになるであろう。添付の図面においては、同一の参照符号は異なる図であっても同一部分を示す。図面は必ずしも縮尺通りではなく、本発明の原理を示すことに重点がおかれている。
【図面の簡単な説明】
【0081】
【図1】権利制御ポリシーについての体系化構造の概略図である。
【図2】ビジネス・プロセスおよび制御ポリシーのアプリケーションを示す図である。
【図3】ビジネス・プロセスおよび制御ポリシーのアプリケーションを示す図である。
【図4】ビジネス・プロセスおよび制御ポリシーのアプリケーションを示す図である。
【図5】ビジネス・プロセスおよび制御ポリシーのアプリケーションを示す図である。
【図6】本発明の一実施形態の主な構成要素の構造ブロック図である。
【図7】ポリシー管理のロジックを説明したフローチャートである。
【図8】制御ポリシー・タグの概略を示す図である。
【図9】保護データオブジェクトへのアクセスのフローチャートである。
【図10】本発明の別の実施形態におけるクライアント・エージェントの構造ブロック図である。
【図11】クライアント・ハンドラ・プロセシングのフローチャートである。
【図12】鍵暗号化、鍵配布および期限切れの説明図である。
【図13】保護データオブジェクトへのアクセスの第2のフローチャートである。
【図14】保護データオブジェクトへのアクセスの第3のフローチャートである。
【図15】制御ポリシー表示の図である。
【図16】ポリシー移動ロジックのフローチャートである。
【図17】2人のユーザ間でのオフライン協働のフローチャートである。
【発明を実施するための形態】
【0082】
本発明の好ましい実施形態を以下に説明する。
【0083】
本発明は、ビジネスの重要なプロセスを反映する構造において体系化された使用権限の集中管理から出発する。図1は、本発明の一実施形態において使用されるポリシーの体系化構造10を示している。ビジネス・プロセス12は、特定のビジネス結果の達成に向けて系統的に誘導される制御段階またはアクティビティに基づく前進的に継続する手順を表わしている。階層的体系化構造10内のビジネス・プロセス12は、1つまたは複数の制御ポリシー14を保有するコンテナとして作用する。制御ポリシー14は、保護データオブジェクトを誰がどのように使用できるのかを管理する使用ルールを指定している。ポリシーは、典型的には、ビジネス・プロセスにおける段階およびアクティビティを表わしており、データのクラス分け(例えば、企業秘密、幹部専用等)をサポートするのに充分な順応性を有する。保護データオブジェクト(文書として図示されている)のそれぞれは、ビジネス・プロセス12内の単一の制御ポリシー14に関連付けられ、この制御ポリシー14の制御下にある。制御ポリシー14のそれぞれは、1つまたは複数のロール16を指定している。ロール16は、ユーザの組(すなわち、グループ)、およびポリシー14によって管理されるデータについてのユーザの権限を記述している。
【0084】
図1の体系化構造10を使用し、本発明の以下の実施形態によって、体系化構造はそれ自体のデータオブジェクトの使用および流れの制御を維持して、権限管理動作をデータオブジェクトの複製への物理的アクセスから分離できる。例えば、一式のデータオブジェクトが与えられ、それらのすべてが単一の制御ポリシーによって保護されると仮定する。なお、この一式のデータオブジェクトは、1つのデータオブジェクだけを含んでいてもよい。本発明および本発明の好ましい実施形態は、制御ポリシーの変更がエンドユーザに伝達され、最終的に、次にユーザが変更されたポリシーによって保護されたデータオブジェクトにアクセスするときに、制御ポリシーの変更を認識することを保証する。この保証は、変更時に保護データオブジェクトの所有者がオブジェクトのいずれかまたはすべての複製にアクセスすることが現実的でなく、あるいは不可能である場合でさえも、維持される。
【0085】
好ましい実施形態では、多数のユーザが種々のコンピュータ装置または記憶媒体上で保護データオブジェクトの個々の複製を変更し、それらコンピュータ装置または記憶媒体のいくつかがオンラインではなく、あるいは保護データオブジェクトの所有者によってアクセス不可能である動的、分散的、および協働的な環境において、本発明が保護データオブジェクトの透過的な使用をサポートする方法を説明する。この説明は、本発明が情報の著作者と所有者の区別をサポートすることを明瞭に示す。さらに、本発明はポリシーとデータオブジェクトの結合を攻撃しようと試みる敵対者に対する防御を備えていることも示す。
【0086】
データオブジェクトを保護すると同時に、ポリシー・モデルの制約内でそれら保護データオブジェクトを生成し、変更し、配布する能力を提供する必要がある、動的、分散的、かつ協働的な環境の例として、投資銀行において銀行家とリサーチ・アナリストの間の情報の明確かつ監査可能な分離を要求する規則であるNASD 2711に準拠したデータオブジェクトの管理および保護を望む企業を考える。図2〜図5は、そのような動的、分散的、かつ協働的なプロセスにおける仮想の工程を列挙している。
【0087】
「NASD 2711」のビジネス・プロセス150は3つの制御ポリシー14、すなわち「バックグラウンド・リサーチ」152(図2)、「業界再調査」154(図3および4)、ならびに「発行」156(図5)を含む。「VPコンプライアンス」が、このビジネス・プロセスを所有し、そのすべての側面を管理する。図2の「バックグラウンド・リサーチ」ポリシー152に対して、VPコンプライアンスは、2つのロール、すなわち「アナリスト」および「ディレクター」を設置する。「アナリスト」ロールに挙げられた各人は、「バックグラウンド・リサーチ」ポリシー内でレポートを作成し、読み出しでき、書き込むことができる。「ディレクター」ロールに挙げられた各人は、レポートを読み出すことができ(書き込みはできない)、そのようなレポートの複製を「業界再調査」ポリシー154に移すことができる。
【0088】
図2に示した例は、「NASD 2711」ビジネス・プロセス150によって保護および制御される「ビッグ・モーター社(Big Motor Co.)」についてのアナリスト・レポートの生成を示している。図が示すとおり、アナリストは、このポリシー152内でレポート(データオブジェクト)に関してドラフトを作成し、協働でき(共同で作成でき)、レポートが完成したとき、それをロール「ディレクター」のメンバーである「リサーチ・ディレクター」に送り、審査し、最終的にコンプライアンスに移す。「バックグラウンド・リサーチ」ポリシー152の下でのロールのいずれにも挙げられていない者は、このポリシーによって保護されているレポートにアクセスできない。
【0089】
図3は、このビジネス・プロセス150の動的「業界再調査」部分154の最初の部分を示している。「業界再調査」は、3つのロールを有するポリシーを含む。すなわち、「ディレクター」ロールは、このポリシー154の保護データオブジェクトを読み出すことができ、データオブジェクトをポリシー154内に移すことができる。「コンプライアンス」ロールは、保護データオブジェクトを読み出すことができ、データオブジェクトの複製を「発行」ポリシー156(図5)に移すことができ、さらに、「外部再調査者」ロールの構成員を管理できる。「外部再調査者」ロールは、保護データオブジェクトを編集できる。「コンプライアンス」ロールのメンバーである「VPコンプライアンス」は、「業界再調査」ポリシー154の「ディレクター」ロールのメンバーである「リサーチ・ディレクター」から保護データオブジェクトを受け取ったとき、「外部再調査者」ロールの構成員を編成して、「BMCoの最高財務責任者」および「自動車関連の投資銀行家」が保護されたアナリスト・レポートを監査して編集できるようにする。「外部再調査者」ロールのメンバーらは、協働的な相互活動を行ない、更新したデータオブジェクトを「VPコンプライアンス」に送り返す。次に「VPコンプライアンス」は、図4に示すとおり「BMCoの最高財務責任者」および「自動車関連の投資銀行家」を「外部再調査者」ロールの構成員から(したがって、「業界再調査」ポリシー154から)削除し、彼らが「業界再調査」ポリシーの下で保護されているレポート(対象のデータオブジェクト)を閲覧できないようにすることができる。このような削除は、本発明の動的な性質の一態様を示している。
【0090】
図5では、「NASD 2711」ビジネス・プロセス150に制約されるビッグ・モーター社アナリスト・レビューの各段階を経てアナリスト・レポートの進行を完了する。図5は、「発行」ポリシー156内の3つのロールを示しており、それらはすべて、保護データオブジェクトの読み出しは可能であるが、書き込みはできない。さらに、「コンプライアンス」ロールは、データオブジェクトをポリシー156に移すことができ、「ディレクター」ロールは、「閲覧者」ロールの構成員を管理できる。「コンプライアンス」ロールの「VPコンプライアンス」が、アナリストのレポートの複製を「発行」ポリシー156に移すとき、「ディレクター」ロールの「リサーチ・ディレクター」が、必要な参加者(例えば、販売グループおよびBMCoの最高財務責任者)を「閲覧者」ロールに追加し、保護されるアナリスト・レポートを外界から利用可能にする。
【0091】
図6のブロック図は、本発明の実施形態の主要な構造的な構成要素、およびそれら構造的な構成要素間の主な相互作用を示す。ユーザ20は権限管理対応アプリケーション21を使用して、保護データオブジェクト32を操作する。保護データオブジェクト32は、暗号化されたデータオブジェクト22およびタグ23を含んでいる。実施形態によっては、データオブジェクト32が暗号化されていなくてもよい。
【0092】
クライアント・エージェント26内のリファレンス・モニタ24が、権限管理対応アプリケーション21による、保護データオブジェクト32のデータに対する操作要求を捕捉する。このモニタは、保護データオブジェクト32のタグ23を使用し、ユーザ20に対してこのデータオブジェクト22を保護するポリシー内の使用権限を得る。クライアント・エージェント26はポリシー・サーバ29上のポリシー・マネージャ27と通信して、タグ23によって特定されている制御ポリシーの詳細を取得する必要がある。ユーザ20が要求操作を実行する権限を有すると仮定すると、クライアント・エージェント26内の暗号エンジン25が、データオブジェクト22について要求された操作について適切な暗号化操作を実行する。この操作の実行に必要な暗号鍵は、ポリシー・サーバ29上の鍵マネージャ28から、制御ポリシーの要求および応答作用の一部として最初に得られている。
【0093】
ポリシー・サーバ29に格納されている制御ポリシーは、適切に許可されたユーザ30によって、ポリシー・サーバ29上のポリシー・マネージャ27と相互作用するポリシー管理アプリケーション31を使用して、生成および編集される。
【0094】
特定の実施形態においては、複数のポリシー・サーバを使用できる。複数のサーバは、信頼性の向上および負荷平衡を目的として使用できる。
【0095】
特定の実施形態においては、クライアント・エージェント26は、ポリシー・サーバ29との間で間欠的に接続されていてもよい。本発明は、変更された使用権限について、影響されるデータオブジェクトの複製への適時の伝達をサポートするが、「適時」の定義は、ポリシーの管理を許可されているユーザ30によって設定される。例えば、特定の商業的状況においては、適時とは、使用権限の変更後のデータオブジェクトへのすべてのアクセスが新しい権限によって管理されることを意味することもある。商業環境が保護データオブジェクトへの制限された「オフライン」アクセスを要求するような別の状況においては、適時とは、権限管理システムのローカル・エージェントがオンラインに復帰したときに使用権限が更新されることを意味することもある。
【0096】
権限管理対応アプリケーション
図6のクライアント・アプリケーション21は、ポリシー・サーバ29上に格納されたポリシーを行使するために、権限管理システムのクライアント・エージェント26と協働する権限管理対応アプリケーションとして示されている。このような権限管理対応アプリケーションを生成するのに多くの方法が存在する。クライアント・エージェント26と直接相互作用するようにアプリケーション21をコード化することができる。あるいは、一式の権限管理ライブラリを標準インタフェースでロードして使用するようにアプリケーション21をコード化することができる。次いで、クライアント・エージェント26とのすべての相互作用を管理するこれらの権限管理ライブラリの一バージョンを実装できる。最後に、アプリケーション21を実行するシステムは、発明の名称「コンテンツ保護エージェントを自動的かつ動的に一体化することによって非認証の使用からデジタル・コンテンツを保護する方法(METHOD FOR PROTECTING DIGITAL CONTENT FROM UNAUTHORIZED USE BY AUTOMATICALLY AND DYNAMICALLY INTEGRATING A CONTENT-PROTECTION AGENT)」のバーラ(Bala)およびスミス(Smith)による2002年7月11日付の米国特許出願第10/194,655号に記載のとおり、クライアント・エージェント26を、権限管理対応アプリケーションを生成するアプリケーションに挿入できる。前記の米国特許出願は、参照により本明細書に引用したものとする。
【0097】
一般に、図6に示したようなリファレンス・モニタリングに基づくクライアント中心の処理は、アプリケーションが権限管理システムのトラスト・エージェントとなることを可能にし、したがってクライアント装置が権限管理システムの残りの部分から切断されても、指定された使用権限のローカルな行使を可能にする。動的な投入を採用する実施形態は、既存および新規のアプリケーションを即座に、権限管理システムに組み込むことを可能にする。
【0098】
ポリシーおよびポリシー管理
以下に説明する実施形態においては、制御ポリシー14は、ポリシーによって保護データオブジェクトへのアクセスが許可されているユーザの少なくとも1つのリスト、この許可リスト内の各ユーザに与えられた権限のダイジェスト、現在の鍵暗号鍵(KEK)、および固有の識別子(すなわち、タグ23に使用されているポリシーID)を含む。さらに、制御ポリシー14は、これらの特権についての条件を含むことができ、それら条件は、追加の装置、場所、アクセス時間、またはネットワーク接続の制約を指定できる。
【0099】
本発明は、(前述の)ポリシーによって保護されたデータオブジェクトへのアクセスを許可されているユーザ20の集合と、制御ポリシーおよび周囲のビジネス・プロセスを管理(すなわち、生成、編集、および削除)するユーザ30の集合とを区別する。なお、ユーザは両方のユーザ集合20、30のメンバーであってもよい。
【0100】
企業のビジネス・プロセスのニーズに、より適切に対処するために、好ましい実施形態は3つの明示的な種類の管理者ユーザ、すなわち情報技術(IT)管理者、ビジネス・プロセス所有者、およびビジネスロール管理者をサポートする。IT管理者は、図6のポリシー・サーバ29への管理アクセスを有しているユーザである。彼らの役目は、ポリシー・サーバが必要とするコンピュータ・インフラを維持することにあり、IT管理者は、ポリシー管理のビジネス関連の管理的側面については実行する必要はない。ビジネス・プロセス所有者は、特定のビジネス・プロセスを管理する権限を有するユーザである。ビジネス・プロセス所有者は、所有しているビジネス・プロセス内の制御ポリシー14のすべての側面を編集できるが、他のビジネス・プロセスを変更することはできない(このユーザが、それら他のビジネス・プロセスのビジネス・プロセス所有者である場合を除く)。ビジネスロール管理者は、特定の制御ポリシー14のロール内のユーザのリストを変更できるユーザである。ビジネスロール管理者は、ビジネスロール管理者が指名されたビジネス・プロセスのビジネス・プロセス所有者に与えられる特権の一部を有する。
【0101】
企業のビジネス・プロセスのカテゴリー化をさらに容易にし、ビジネス・プロセス管理の階層的特性を直接的に反映するために、好ましい一実施形態は、定義されたビジネス・プロセスの階層的方式での体系化をサポートする。例えば、ツリーとして体系化されたビジネス・プロセスの集合を考える。ツリーの根にあるビジネス・プロセスは、最上位の環境を表わしており、ツリーの葉にあるビジネス・プロセスは、根にあるビジネス・プロセスの個々の構成要素である。付加的な内部ツリー・ノードを用いて、ビジネス・プロセス全体内の主要なカテゴリーを表わすことができる。
【0102】
ツリーとして体系化されたこのような階層構造を用いて、階層構造のサブツリー内のビジネス・プロセスのすべてを管理できるユーザを指定できる。同様に、指定されたユーザは、サブツリー内のロールのみを管理できる。
【0103】
図7は、図6のポリシー管理アプリケーション31のロジックを示している。このプロセスは、ステップ40で始まり、ここで、ユーザはポリシー管理アプリケーション31を開始し、ポリシー・サーバ29に接続する。一実施形態においては、ポリシー管理アプリケーション31は、J2EEウェブ・アプリケーションである。ステップ41において、システムは、ユーザが許可された管理者であることを確認し、ユーザがどの種類の管理者であるかを特定し、ユーザがポリシー・データベースについて実行できる操作の種類を決定する。ユーザが、いずれのアクションの実行も許可されず、あるいはデータベースを閲覧することも許可されていない場合、ステップ42においてエラーメッセージが表示される。ステップ43は、ビジネス・プロセス、それらの制御ポリシー、および許可ユーザが許可されたロールの表示を提示するが、この表示は許可ユーザの権限に応じて決まる。次いで、ステップ43は、ユーザがビジネス・プロセスのデータベースを変更するアクションを選択するのを待つ。
【0104】
許可ユーザは、ステップ44に示されているとおり、ビジネス・プロセス、制御ポリシー14、またはロールリストの生成もしくは編集を選択できる。ユーザによって実行された変更はすべて、ステップ46において記録され、確定される。次いで、この変更が、ステップ43においてユーザに表示される。
【0105】
変更を記録することによって、システムは、許可ユーザがポリシー・サーバ29上のデータベースに関する先の変更を取り消すことを可能にする。詳細には、ステップ43はさらに、ステップ45に示されているとおり、ユーザが確定された一式の変更を元の状態に復帰させることを可能にする。このアクションも、ステップ46において記録および確定される。ステップ43〜46は、ユーザがポリシー管理アプリケーション31を出るまで繰り返される。これらのステップはすべて、ポリシー・サーバ29上の変更されたビジネス・プロセスおよびポリシーによって保護される正確なデータオブジェクトにアクセスすることなく、またそれらデータオブジェクトについての認識なしで、実行できる。
【0106】
セキュリティ・ノブ(security knob)
本発明の好ましい一実施形態は前記ロールバック(元の状態に復帰)機能を用いて、動的に有効または無効にできるワンクリックのセキュリティ設定を実現できる。このワンクリックのセキュリティ設定を、俗称でセキュリティ・ノブと称する。
【0107】
最も単純な場合においては、2つのセキュリティ警報、すなわち通常および停止を有するビジネス・プロセスを考える。「通常」はデフォルトのセキュリティ状態であり、企業は、このビジネス・プロセスの通常の日々のワークフローにおいて行使されるポリシーの範囲外の特別な考慮を払うことなく手続きを進める。ビジネス・プロセスが「攻撃下」にあり、あるいは脆弱である(例えば、特定され割り出された敵対者に対して脆弱であり、あるいは特定の重大な時間期間において政府規制の潜在的侵害について脆弱である)際には、このビジネス・プロセスが効果を発揮するように、セキュリティ担当者およびビジネス・プロセス所有者は共にこのビジネス・プロセスへの一式の変更を決定する。ビジネス・プロセスの適切な一部に適用されると、これらの一式の変更は、システム「停止」のセキュリティ状態になる。
【0108】
この形態の主要な側面は、企業またはビジネス・プロセス所有者が、この「停止」のセキュリティ状態に即座に、かつ一時的な時間期間だけ入りたいと望む可能性があるという点にある。脅威または無防備状態が過ぎ去ると、システムは、「通常」のセキュリティ状態に対して定義されたポリシー特徴に復帰すべきである。企業またはビジネス・プロセス所有者が「停止」のセキュリティ状態に入るか、または出ることを望むたびにビジネス・プロセスの各部分を編集するのでは、低速になり、エラーが発生しやすく、時間を要するであろう。
【0109】
この能力を実現するため、一実施形態は、セキュリティ・ノブが所定の設定にされたときに自動的に適用される一式のログ・イベントを生成する。前記「停止」のセキュリティ状態のログ・イベントは、許可された管理者に現在のビジネス・プロセス(すなわち、「通常」のセキュリティ状態)への変更を単に実行させ、システムにそれらの変更を適切なセキュリティ設定識別子(すなわち、「停止」)の下で記録および格納させ、さらにそれらの変更を決定した時点においては実際にデータベースに適用しないことによって、捕捉できる。「停止」から「通常」への移行のためのログ・イベントは、単に「停止」変更からの復帰に使用される。
【0110】
セキュリティ設定の整合性を保つため、システムはユーザに対し、例えば許可ユーザが「通常」のセキュリティ状態にあるビジネス・プロセスについて変更を行なっているときに、さらに「停止」のセキュリティ状態を変更したいと望むか否かを問う。
【0111】
この2設定のセキュリティ・ノブの例および具体化を、2よりも大きい任意の特定のnについて、n個の設定を有するセキュリティ・ノブを実現する事例に拡張する方法は、当業者であれば理解できるであろう。
【0112】
ポリシー削除
ポリシーが変更されるとき、システムは制御ポリシー14によって保護されるデータオブジェクト32のすべてにアクセスできないため、制御ポリシーを「削除する」際には注意する必要がある。第1に、「削除された」ポリシーによって保護されるあらゆるデータオブジェクト32は、その後に新しい制御ポリシーの一部となり現れるため、新しいポリシーの代わりに「削除された」制御ポリシーからの制御ポリシー識別子を再使用することはできない。さらに、特定の特権ユーザが「削除された」制御ポリシーからデータオブジェクトを回復できることが望まれることもある。
【0113】
好ましい実施形態においては、制御ポリシー14についての識別子として、完全に固有の識別子(GUID)を使用して、2つの制御ポリシー14が決して同一識別子を得ることがないようにする。許可された管理者ユーザが制御ポリシーを削除するとき、システムは制御ポリシーをシステムから削除し(おそらくは、このアクションおよび削除された情報を記録する)、「削除された」制御ポリシーによって保護されるデータオブジェクトが、ユーザによるアクセスが許可されないデータオブジェクトとして現れるようにする。保護データオブジェクトの回復は、後述する「災害時回復」機構によりなされる。
【0114】
暗号化および制御ポリシー・タグ(CPT)
データオブジェクト22全体にわたる継続的な保護および管理を保証するために、本発明の好ましい実施形態は、権限管理対応アプリケーションによってアクセスされていないときに、データオブジェクト22を暗号化する。暗号化データオブジェクト22のそれぞれに対し、システムは、制御ポリシー・タグ(CPT)を付ける。図8は、図6の保護データオブジェクト32の制御ポリシー・タグ23の抽象的な表示である。CPTは、データオブジェクト22を暗号化するのに使用されるコンテンツ暗号鍵(CEK)を含んでいる(CPTの全フィールドについては、後述する)。CPTは、権限管理システムにおけるポリシーをデータオブジェクトに関連付ける機構でもある。暗号化された(または、暗号化可能な)データオブジェクト22とそのCPTの組み合わせは、保護データオブジェクト32と呼ばれる。
【0115】
各データオブジェクト22について、権限管理システムは擬似乱数を生成し、この疑似乱数を、データオブジェクト22を暗号化および復号化するための対称鍵として使用する。このプロセスは、各データオブジェクトの固有CEKを効果的に生成する。図8の制御ポリシー・タグ23は、識別情報、暗号化情報、および完全性情報を提供するフィールドを備えるデータ構造である。フィールドは、任意の順序で現れることができるが、クライアント・エージェント26は常に、CPTのバージョン・フィールド51および長さフィールド52を見出し解釈できなければならない。
【0116】
バージョン・フィールド51は、使用されているCPT構造のバージョンを特定する。このフィールドにより、システム設計者は、将来的にCPTのフォーマットまたはコンテンツを変更でき、さらに古いCPT構造ならびに新しいCPT構造によって保護されたコンテンツにアクセスできる(図14および以下の関連説明を参照)。
【0117】
バージョン・フィールド51は、コンテンツ・フィルタリング・アプリケーションがデータオブジェクト32を本発明により暗号化され保護されたものとして識別するのに使用できる、「マジック・ナンバー」で開始できる。この「マジック・ナンバー」は、例えば、保護データオブジェクト32が暗号化されていること(さらに、暗号化前のスキャンによりウイルスを含まないと予測される)を知るためのウイルス対策スキャン・アプリケーションによって使用できる。
【0118】
長さフィールド52は、CPTのサイズをバイトで指定している。
【0119】
テキスト・メッセージ・フィールド53は、無許可ユーザ(または、権限管理システムの制御の下にないプログラムを実行しているユーザ)に、添付のデータオブジェクト32が保護されていること、およびどこでさらに詳しい情報を得ることができるのかを説明するオプション・フィールドである。このフィールドは任意であり、実施形態によっては、操作の容易性(ユーザに、権限管理システムの一部となることができる方法を知らせる)よりも機密性を高めること(無許可ユーザには情報を提供しない)を選択できる。
【0120】
制御ポリシーIDフィールド54は、添付のデータオブジェクトを保護する制御ポリシー14を特定する。このフィールドは、完全な固有の識別子(GUID)を含んでいる。さらに、制御ポリシーIDフィールド54は、そのネーム空間内でGUIDが知られているポリシー・サーバ29を指定(例えば、URLによって)することができる。
【0121】
オブジェクトIDフィールド55もオプション・フィールドであり、各データオブジェクト22について固有識別子を指定する。
【0122】
保護データオブジェクト32はそれぞれ、コンテンツ暗号化鍵(CEK)と呼ばれる秘密鍵によって暗号化され、この鍵はCPT構造23内の少なくとも2つの場所、すなわち暗号化CEK56および57と記された場所に格納される。これら2つのフィールド56、57のうちの一方は、ポリシー・サーバのKEKで暗号化されたCEKを含む。他方のフィールドは、制御ポリシーIDフィールド54内で特定されたポリシーの鍵暗号鍵(KEK)で暗号化されたCEKを含む。KEKは、対称鍵であっても、非対称鍵であってもよい。好ましい実施形態についての説明の残りの部分では、KEKが公開鍵/秘密鍵の対を含むと仮定する。
【0123】
別の実施形態は、ロールに基づくKEKをサポートする追加のKEKフィールドを含むことができる。このような方法では、管理者は、特定のロールについて固有の鍵特性(例えば、短いオフライン・アクセスなど)を指定できる。
【0124】
本発明の実施形態は1つまたは複数の異なるコンテンツ暗号化アルゴリズムを使用できるため、暗号化アルゴリズムIDフィールド58は、データオブジェクトをCEKで暗号化するのに用いられる実際のアルゴリズムおよび別の定義可能な特性(例えば、鍵長さ)を特定する。
【0125】
最後のフィールドである完全性チェック・フィールド59を用いて、何者もCPT23内のフィールドを改ざんしていないことを保証する。完全性チェック・フィールド59には、例えば、CPT全体のセキュア・ハッシュを含む。
【0126】
データオブジェクトが、タグ付けされているが暗号化はされていない場合、2つの暗号化CEKフィールド56および57ならびに暗号化アルゴリズムIDフィールド58はゼロにされる。
【0127】
制御ポリシー14は、保護データオブジェクト32の不可欠な部分と考えられ、コンピュータおよびそれらの内部構造体(例えば、ファイルシステムおよびメモリバッファ)の間を移動するときでさえも、データオブジェクトに付随している。CPTは、制御ポリシーIDフィールド54によって管理している制御ポリシーを参照し、また制御ポリシーのKEKにより保護されるCEKを含んでいるが、本発明の権限管理システムの実施形態によって、許可ユーザがCPTを明示的に削除しない限り、暗号化データオブジェクト22とともに伝達される。
【0128】
本発明の明確な結論は、複数のデータオブジェクト32が単一の制御ポリシー14により、参照可能となり、かつ保護されることである。前述のCPT構造は、明らかにこの結論を裏付けている。さらに、この実施形態は、CPTの制御ポリシーIDフィール54内の値が文書を一意に特定しない(これは固有の文書識別子と異なる)ことに重点をおいている。
【0129】
図6のポリシー・サーバ29は、制御ポリシー14の詳細のみを格納し、データオブジェクト32と制御ポリシー14との間の関連付けは格納しない。このデータオブジェクトと制御ポリシーとの間の関連付けは、保護データオブジェクト32のCPT23にのみ格納される。この構成は、ポリシー14用に設けられたポリシー・サーバ29の記憶領域が、定義される制御ポリシー14の数に比例して拡大縮小することを意味している。ポリシー・サーバの記憶領域は、個々の保護データオブジェクトの数に影響されない。それら保護データオブジェクトの複製の数にも影響されない。
【0130】
本発明の好ましい実施形態は、データオブジェクト32の前に配置されたCPT23を備える(すなわち、保護データオブジェクト32のスキャンがこの保護データオブジェクトの第1バイトから開始されるときに、データオブジェクトよりも先にCPTを検知する)。他の実施形態においては、CPTを保護データオブジェクト32の末端、または他の任意の明確な位置に置くことができる。
【0131】
好ましい実施形態により、図6のポリシー・サーバ29およびクライアント・エージェント26の両者がCPT23を構築できる。
【0132】
リファレンス・モニタリング
図9は、保護データオブジェクト32へのアクセス操作において、図6のリファレンス・モニタ24が従うロジックを示す。ある特定の操作が行われると、まずステップ61においてリファレンス・モニタ24は、その操作が保護データオブジェクト32にアクセスする操作であるか否かを判断する。このチェックは、データオブジェクト上のCPT23を探索することを含む。CPTが存在しない場合、リファレンス・モニタ24は、ステップ62においてアプリケーション21の続行を許可する。CPT23が存在する場合、ステップ63においてモニタ24は、CPTのバージョン・フィールド51をチェックし、CPTのバージョンが現在のバージョンであるか否かを判断する。CPT23が存在しない場合、リファレンス・モニタはステップ64に進む。ステップ64については図14で説明する。
【0133】
モニタ24がCPT23を解釈できる場合、モニタは進行し、ステップ65において、フィールド59(図8)によりCPTの完全性をチェックする。CPTが改ざんされている場合、モニタ24は、ステップ66においてエラーメッセージを表示し、改ざんが無い場合、この保護データオブジェクト32についてのユーザの使用権限を決定するために、ステップ67においてCPT内の制御ポリシーID(図8のフィールド54)をユーザの認証信任状とともに使用する。一式の使用権限が決定されると、ステップ68においてモニタは、そのユーザが要求した操作を実行することを許可されているか否かを判断する。許可されていない場合、ステップ69においてモニタ24は、アプリケーション21が要求された操作を実行することを禁止し、適切なエラーメッセージを表示する。
【0134】
ユーザが、対応する(関連付けられた)制御ポリシー14の下で複数のロールに登場する場合、好ましい実施形態は、そのユーザを含むロールのそれぞれについての使用権限を集約する。この集約によって、ユーザの個々のロールの明確な権利をすべて含む一式の使用権限が得られる。明らかに、別の実施形態においては、別の集約方法を用いることができる。
【0135】
操作が許可される場合、ステップ70においてモニタ24は、CPTで特定される制御ポリシー14のKEKを使用し、対象の保護データオブジェクト32のコンテンツを暗号化および復号化するのに用いられたCEKを復号化する。特定の実施形態におけるステップ70の処理の間に発生する可能性のある、いくつかの例外的な状況は、以下のCPT更新および災害時回復に関連するセクションで説明される。
【0136】
最後に、復号化されたCEKが得られると、ステップ72においてモニタ24はこのCEKを使用して、読み出し操作時に暗号化されたコンテンツを復号化するか、あるいは書込み操作時に新しいコンテンツを暗号化する。
【0137】
クライアント・エージェント26のアーキテクチャ
図10は、本発明のクライアントのアーキテクチャの好ましい実施形態の詳細を示している。この実施形態は、図6のクライアント・エージェント26を、クライアント・ハンドラ・プロセス82および統合バンドル84に分割している。ユーザ装置ごとに、クライアント・ハンドラ・プロセス82が1つずつ存在している。統合バンドル84は、ユーザの装置上で動作している各プロセス内にロードされる単一のダイナミック・リンク・ライブラリとして実現できる。統合バンドル84は、リファレンス・モニタ83および暗号エンジン85を含み、両者は図6においてすでに述べた24、25に相当する。
【0138】
クライアント・ハンドラ・プロセス82は、図6のポリシー・サーバ29のローカル・プロキシとして動作する。クライアント・ハンドラ・プロセス82は、図6のポリシー・マネージャ27から受け取る制御ポリシー14をキャッシュし管理するポリシー・サービスおよびキャッシュ86と、図6の鍵マネージャ28からのKEKを確実にキャッシュし管理する鍵サービスおよびキャッシュ87とを含む。
【0139】
この実施形態では、リファレンス・モニタ83は、保護データオブジェクトのCEKをそのCPTから抽出する(図9のステップ70)ために、クライアント・ハンドラ・プロセス82内の鍵サービスおよびキャッシュ87にポリシーKEKを要求する。CEKが得られると、統合バンドル84は自身のメモリからKEKを取り消し、CEKを暗号エンジンに送る。
【0140】
クライアント・ハンドラ・プロセス82はさらに、各統合バンドル84からログ情報を収集し、そのログ情報を最終的に図6のポリシー・サーバ29に送り返す、ログ・サービス88を含む。
【0141】
図11は、図10のクライアント・ハンドラ・プロセス82が従うロジックを示している。このハンドラは、ステップ90の出力端に表記されているいくつかのイベントのうちの1つを待機するイベント・ループ内にある。新しいユーザがクライアント装置にログインし、本人であることを立証すると、クライアント・ハンドラ・プロセス82は、ステップ91に記されているとおり、そのユーザに関するポリシー・サーバ29上のすべてのポリシー14を要求する。ステップ92では、クライアント・ハンドラ・プロセス82は、一定のポーリング間隔で、ログイン・ユーザに関する新たなポリシー14について、あるいはキャッシュしたポリシー14の変更について、ポリシー・サーバ29をチェックする。
【0142】
いくつかの制御ポリシー14は、それらをどれだけ長くキャッシュでき、オフラインで使用できるかを記載している。そのようなポリシーが時間切れになったとき、ステップ93においてハンドラ・プロセス82は、期限切れしたポリシー14をポリシー・サーバ29から再度取り出す。制御ポリシーKEKも期限切れになる可能性があり、この期限切れ状態に対する実施形態の取り扱いは、以下で「期限切れKEKおよびCPT更新」と表記されたセクションで説明される。
【0143】
好ましい実施形態は、このとき、3段階切替トグル(基本、標準、および高と記されている)を実装し、制御ポリシーKEKの有効期間およびキャッシュ時間切れ値を設定する。ポリシーKEKの有効期間およびキャッシュしたポリシーの時間切れまでの時間の長さは、「低」設定では「中間」設定よりも長い。これにより、KEKが損なわれるか、あるいは制御ポリシーが変更される場合により大きな危険性をもたらす。「高」設定は、最も高いレベルのセキュリティ、したがって最も低いレベルの危険性をもたらす。これはまた、ユーザがオフラインで作業できる時間期間がより短いことを意味する。本発明の実施形態のそれぞれは、制御ポリシーKEK有効期間およびキャッシュ時間切れ値を、それらのリスク許容レベルおよび保護データオブジェクト32のオフライン使用の必要性に応じて選択する。
【0144】
最後に、ポリシー・サーバ29は、ステップ94に記されているとおり、オンラインのクライアントのハンドラ・プロセス82に対し、それらがキャッシュしているポリシーを削除して、リフレッシュするように促すことができる。オフラインのクライアントは、それらがキャッシュしているポリシー記憶を、再度接続したときにポリシー・サーバ29と同期させる。
【0145】
ステップ91〜94については、クライアント・ハンドラ・プロセス82はステップ95で、必要なネットワーク通信が形成されたことを確認するチェックを行なう。すべてに問題がない場合、ハンドラ・プロセス82はステップ96において、受け取った制御ポリシー14を安全な記憶装置にキャッシュする。クライアントが、ポリシー・サーバ29とのネットワーク接続を有していなかった場合、ステップ97においてハンドラ・プロセス82は、その失敗したイベントを記録し、後にネットワーク接続が回復した後にステップ98および99で再実行する。
【0146】
期限切れKEKおよびCPT更新
保護データオブジェクト32のCPT23は、本発明における唯一の構造体であり、データオブジェクト32を暗号化するのに用いられるCEKを含む。先に述べたとおり、CEKは、図8の制御ポリシーIDフィールド54で特定される制御ポリシー14のKEKで暗号化されている。KEKが有効でなくなることに伴うリスクを抑えるために、本システムは、そのような暗号鍵の寿命を制限する。しかし、これは制御ポリシーKEKが期限切れになると、フィールド内の保護データオブジェクト32にアクセスできなくなることを意味する。ポリシーのKEKが期限切れになったとき、システムは制御ポリシー14によって保護されるすべてのデータオブジェクトへのアクセスを持たないため、期限切れしたKEKによって保護されるデータオブジェクトへのアクセスを可能にし、最終的には、遅れてそれらデータオブジェクトのCPT23を制御ポリシーの現在のKEKで更新可能にする機構を有する必要がある。
【0147】
図6のポリシー・サーバ29は、各制御ポリシーKEKの寿命の定義および管理を担当する。
【0148】
本発明の好ましい実施形態は、制御ポリシー14内の各KEKに固有の識別子を割り当てる。ポリシー・サーバ29は、鍵マネージャ28を使用して、アクティブな制御ポリシー14のそれぞれについて現在のKEKを格納し、KEKの履歴を保持する。この履歴は、制御ポリシー14についてこれまでに生成されたすべてのKEKを含むことができ、あるいはポリシー14について最も新しく期限切れしたKEKを限定数だけ含むことができる。
【0149】
図6のクライアント・エージェント26が、保護データオブジェクト32のCEKを復号化するための正しいKEKを有するか否かを決定できるようにするために、図8の暗号化CEKフィールド56および57は、CEKを暗号化するのに使用されるKEK固有の識別子の(平文の)値を含む。許可ユーザのクライアントが、保護データオブジェクト32のCEKを復号化するのに必要なKEKを有している確率を高めるために、本発明の好ましい実施形態(例えば、ポリシー・サーバ29)は、制御ポリシー14の現在のKEKだけでなく、制御ポリシーのKEKについて最も新しく格納された履歴の一部分も、クライアント・エージェント26に配布する。配布される履歴の長さは、鍵マネージャ28によってポリシー・サーバ29上に保持されている履歴の長さよりも短いか、あるいは等しい。
【0150】
次に、期限切れの制御ポリシーKEKによって暗号化されたCEKによって保護されるデータオブジェクト32にアクセスする試みについて、2つの事例を考える。さらに、後のセクションの表題「災害回復およびCPTバージョン管理」についての事例を考える。この事例は両方共、ポリシー・サーバ29が期限切れのKEKについて完全な履歴を維持すると共に、最も新しく期限切れとなった鍵のうちの限定された数のみをクライアント・エージェント26に配布していると仮定する。ポリシー・サーバ29が期限切れになったKEKの完全な履歴をすべてのクライアント・エージェント26に配布することは、現実的でない。図12は、現在および過去の3つの期限切れKEK125をクライアント・エージェント26に配布する実施形態についてのシナリオを説明しており、この図は、KEKが鍵の対121a、bを含むと仮定している。
【0151】
第1の事例においては、期限切れの制御ポリシーKEKが、配布された履歴内のサーバ29によって送られた制御ポリシーKEKのうちの1つである場合は、クライアント・エージェント26は、CEKを復号化し、このCEKを用いて保護データオブジェクト32にアクセスし、制御ポリシーの現在のKEKを使用する保護データオブジェクト32について新しいCPTを生成できる。これはすべて、ユーザが介入することなく、かつポリシー・サーバ29と通信も行なうことなくなされ、したがってクライアントがオフラインである場合でも実現する。
【0152】
第2の事例は、期限切れのKEKがクライアント・エージェント26に配布された履歴の一部ではない問題を解決する。この状態から回復するには、ポリシー・サーバが保護データオブジェクト32の制御ポリシー14に関する期限切れKEKの完全な履歴を保持しているため、クライアント・エージェント26はオンラインになって、ポリシー・サーバ29と通信可能にならなければならない。好ましい実施形態においては、単に、クライアント・エージェント26が対象の制御ポリシー14の特定の期限切れのKEKを要求するだけである。ポリシー・サーバ29は、保存されている適切なKEKで応答すると、クライアントは前述のとおりに(期限切れのKEKを配布された履歴内で見出す場合と同様に)続行する。
【0153】
さらに、図12は、現在のKEKの期限切れのために、制御ポリシー14が現在のKEKを有していない時間が存在する可能性を示している。本発明の好ましい実施形態は、クライアント・エージェント26がユーザごとの使用ルールおよび制御ポリシーの現在のKEKを要求したとき(図11のステップ91)にのみ、ポリシーについての新しいKEKを生成する。クライアント・エージェント26が、図11のステップ91が完了するのに極めて長時間待たなくてもよいようにするために、ポリシー・サーバ29は、あらかじめ生成した一式のKEKをキャッシュする。このKEKのキャッシュを使用して、現在のKEKを有さない制御ポリシー14に対するクライアント・エージェント26の要求に応じ、新たな現在のKEKの要求を満足させる。あらかじめ生成されるKEKのキャッシュは、当業者にとって公知である単純な高低ウォーターマーク方式によって管理される。好ましい実施形態におけるこの手法は、ポリシー・サーバ29が、長期間無活動である保護データオブジェクト32を有する制御ポリシー14について保存する必要がある、多数の未使用のKEKを生成しないことを保証する。
【0154】
保護データオブジェクトの持続性モデル
本発明は、保護データオブジェクト32の2つの明確な持続性モデルをサポートする。一般に、制御ポリシー14の保護データオブジェクト32は、永久的または一時的な資産のいずれかであると考えられる。
【0155】
「永久」モデルにおいては、制御ポリシー14内の保護データオブジェクト32は、保護され、失われてはならない永久的資産であると考えられる。好ましい実施形態では、各保護データオブジェクト32のCEKをポリシー・サーバ29の公開マスターKEKで暗号化することによって、このモデルを実現する。この暗号化された値が、暗号化CEKフィールドの一方に(例えば、図8のフィールド56)格納され、他方のフィールド(図8のフィールド57)は、図8のフィールド54内で特定された制御ポリシーの現在のKEKで暗号化されたCEKを含む。
【0156】
表題「災害時回復およびCPTバージョン管理」の次のセクションは、好ましい実施の形態が、秘密マスター鍵を使用して、保護データオブジェクト32のCEKを常に回復できる方法を説明している。ここでは、マスターKEKの有効期限が通常は制御ポリシーKEKに割り当てられるそれよりも長いという点を除き、ポリシー・サーバ29のマスターKEKもまた有効期限を有しているとだけ述べておく。有効期間は、次のセクションで説明するとおり、マスターKEKの秘密部分がクライアント・エージェント26に配布されることがない(すなわち、ポリシー・サーバ29においてのみ使用される)ため、より長くすることができる。マスターKEKが有効期間を有しているため、好ましい実施形態は、同様に固有の識別子をポリシー・サーバ29の生成されたマスターKEKのそれぞれに関連付け、この識別子が、図8のフィールド56に暗号化CEKと共に格納される。したがって、図8のフィールド56および57の格納場所に格納されるコンテンツは、同一である。
【0157】
「一時」モデルにおいては、制御ポリシー14内の保護データオブジェクト32は、ある所定の時間期間にわたって保護されなければならず、その後に破壊する必要がある一時的資産であると考えられる。「破壊される」とは、保護データオブジェクト32の平文を回復することが理論的に不可能であることを意味する。
【0158】
好ましい実施形態は、CPT23内のCEKを、ポリシー・サーバのマスターKEKで暗号化するのではなく、「ポリシー・マスター」KEK(図8のフィールド56)で暗号化することによって、「一時」モデルを実現する。システムが保護データオブジェクト32のCEKをサーバのマスターKEKで暗号化することはない。ポリシー・マスターKEKは、サーバ・マスターKEKと同一の属性をすべて有している(例えば、極めて長い有効期間を有しており、サーバ29を離れることがなく、それが保存されている限りCEKの回復をサポートする)。
【0159】
一時ポリシーの所有者は、そのポリシー14に関連するすべてのデータオブジェクトを永久的に破壊すべき時であると判断したとき、単にそのポリシーに関連するポリシー・マスターKEKの記録されているすべての複製をポリシー・サーバ29上において削除するように要求するだけでよい。
【0160】
災害時回復およびCPTバージョン制御
本発明の実施形態が保護および回復しなければならない多くの種類の災害(例えば、ポリシーの記憶の喪失およびバックアップからのこの記憶の回復)が存在する。このセクションでは、本発明の災害時回復機構の2つの特有の側面に焦点を当てる。第1は、制御ポリシーKEKについて限られた履歴のみを維持する(あるいは、ある種の破滅的な事象によって、1つまたは複数の制御ポリシー14について保存されたKEKのすべてが失われた)実施形態に関する。第2は、CPTフォーマットの上位および下位互換性に関する、本発明によるサポートを説明する。この形態は、企業のセキュリティ空間の動的な特性に対処し、何年にもわたって参照されていない可能性のある保護データオブジェクト32のCPT23内に格納されているCEKをシステムが常に回復できることを保証するために、やはり必要である。
【0161】
図13は、図9のステップ70において図6のリファレンス・モニタ24が従うロジックの拡張である。ここで、モニタ24は、保護データオブジェクト32(図6)のCEKをCPT23(図6)から取り出すことを試みる。クライアント・エージェント26は、対象の制御ポリシー14について、現在のKEKおよび期限切れしたKEKのいくつか(ゼロでもよい)を、すでに有している。モニタ24は、現在のKEKの固有の識別子を、CEKの暗号化に使用されたKEKの固有の識別子(図8のフィールド57に保存されている)と比較する(ステップ110)。識別子が一致すると、モニタ24は、図13のステップ115に記載のとおり、暗号化されたCEKの復号化に進む。
【0162】
前述のとおり、制御ポリシーのKEKは期限切れになる可能性があり、この実施形態は、その発生を、格納されたKEKの固有の識別子のいずれもがCEKの暗号化に使用されたKEKの固有の識別子と一致しないことを検知することによって特定する。回復のために、ステップ111において、モニタ24がCPTを抽出し、それをポリシー・サーバ29に、CEKを現在のポリシーKEKで暗号化するように求めるサーバへの要求と共に送信する。ステップ112においてサーバ29は、暗号化CEKと共に格納されている固有の識別子によって示されているとおり、適切なマスターKEK(サーバまたはポリシー)を使用することによってCEKを回復する。ステップ113においてサーバ29は、更新されたCPTをクライアント・エージェント26に送り返す。ステップ114においてクライアント・エージェント26は、受け取ったCPTからCEKを取り出し、新しいCEKを生成し、それを更新されたCPTに加え、さらに、保護データオブジェクト32が読み出し専用と表記されておらず、あるいは読み出し専用媒体に格納されていない場合、元のCPT23を置き換え、更新されたCPTを使用してステップ115に進む。クライアントは、データオブジェクト32に読み出し専用と表記されている場合、取り出したCPTをキャッシュしてもよい。
【0163】
好ましい実施形態は、CPTフォーマットのバージョン変更を、災害時回復問題として取り扱う。この手法により、この実施形態では、現在のCPTフォーマットを解釈する方法、および災害から回復する方法のみを知るコードを、クライアント・エージェント26に配布できる。
【0164】
図14は、図6のリファレンス・モニタ24が図9のステップ64に達したときに従うロジックを説明している。モニタ24は、保護データオブジェクト32(図6)のCPT23(図6)のバージョンがモニタ24のサポートするCPTのバージョンと一致しないときに、このロジックに達する。ステップ100においてクライアント・エージェント26内のリファレンス・モニタ24は、保護データオブジェクト32からCPT全体を取り出す。ステップ101においてクライアント・エージェント26は、取り出したCPTをポリシー・サーバ29に、CPTをクライアント・エージェント26のサポートする指定のバージョンに変換することを求める要求と共に送る。ステップ102においてサーバ29は、CPTのバージョン・フィールド51を使用して、適切なコンバータ・ルーチンを選択し、このコンバータ・ルーチンが、単純に所定のバージョンのCPTデータ構造内の各フィールドを指定のバージョンの各フィールドに写像する(標準的な中間形態を使用すると予測される)。サーバ29のみが、コンバータ・コードの全セットを有していればよいことに、注目すべきである。この変換において、ステップ103でサーバ29は、示された制御ポリシーKEKまたはマスターKEKを使用してCEKを復号化し、このCEKを現在の制御ポリシーKEKおよびマスターKEKで再度暗号化する。ステップ104においてサーバ29は、更新したCPTをクライアント・エージェント26に送り返す。ステップ105においてクライアントは、現在のCEKを取り出し、CEKを新しくして受け取ったCPTを更新し、更新したCPTをキャッシュし、保護データオブジェクト32に読み出し専用と表記されておらず、あるいは読み出し専用媒体上に格納されていない場合は、元のCPTと置き換え、更新されたCPTを使用して図9のステップ65に進む。
【0165】
読み出し専用の保護データオブジェクト
ここまでの説明は、一般に、保護データオブジェクト32の生成および変更を含む協働的な環境を仮定していた。好ましい実施形態はさらに、文書の生成および配布についての発行専用モデルもサポートする。詳細には、好ましい実施形態により、ビジネス・プロセス管理者は、制御ポリシー14についてのKEKが常に有効に保たれるべきであることを指示できる。このオプションは、制御ポリシー14によって保護されるデータオブジェクトが読み出し専用であり、あるいは読み出し専用のコンピュータ媒体上に格納されていることを、管理者が認識している場合に望ましい。システムが読み出し専用データオブジェクト32のCPT23を更新できない場合でも、読み出し専用データオブジェクトのオフライン閲覧可能時間の長さを制限するために、クライアントのポリシー・キャッシュ86にある読み出し専用文書に関するポリシー14を期限切れにすることを望むことは、依然としてありうる。
【0166】
ポリシーの識別およびデータオブジェクトの移動
図15は、好ましい実施形態が、コンピュータのウインドウに表示されたデータオブジェクトを現在保護している制御ポリシー14の名称を、どのように表示するのかを示している。対象の制御ポリシー名(ここでは、"Product Launch")が、ドロップレット・コントロール120と呼ばれるドロップダウン式のウインドウ・オブジェクトに表示される。有効にされると、このドロップダウン・ウインドウは、アクティブの制御ポリシー124を含むビジネス・プロセスの名称122、ならびにユーザが保護データオブジェクトを移動できる他のビジネス・プロセス12および制御ポリシー14を表示する。
【0167】
一実施形態においては、ActiveX Windowが、ドロップレット・コントロール120をサポートする。その内容および階層は、以下でさらに説明するとおり、キャッシュ86、タグ23、および/またはクライアント・ハンドラ82を介してポリシー・サーバ29から得られる。
【0168】
図16は、制御ポリシー14間でのデータオブジェクト(文書で代表される)の移動に含まれるロジックを示している。1つの制御ポリシー14から別の制御ポリシーへの保護データオブジェクト32の移動は、図2〜図5に関してすでに説明したとおり、動的、分散的、および協働的な環境の重要な側面である。詳細には、好ましい実施形態は、ビジネス・プロセス12内またはビジネス・プロセス12間の制御ポリシー14間の情報の流れを、ビジネス・プロセス所有者(すなわち、ビジネス管理者)が指定できるようにする。ビジネス・プロセス所有者が流れを決める一方で、許可ユーザは、保護データオブジェクトの実際の移動を実行する。移動は、通常のワークフローの一部としてしばしば生じる。
【0169】
ステップ130において許可ユーザは、権限管理対応アプリケーション21で文書を開く。これは、新規の文書(データオブジェクト)22であってよく、その場合には、ステップ132においてクライアント・エージェント26は、ドロップレット・コントロール120にデフォルトの「未管理」制御ポリシーを表示する。あるいは、これが既存の保護文書であってよく、その場合には、ステップ132でエージェント26は、文書22を保護している制御ポリシーの名称をドロップレット・コントロール120に表示する。ステップ134においてユーザは、制御ポリシー14によって指定されたユーザ使用権限の範囲内で、開いた文書を編集し、さらに操作する。ロジックは、ステップ134からステップ134自体に戻るように流れ、このような編集がある長さの非特定の、長い時間期間にわたり継続できることを示している。
【0170】
ある時点において、ステップ136でユーザは、ドロップレット・コントロール120を起動し、新しい制御ポリシー14を選択して、そのポリシーに保護文書を移動することを決定できる。選択の後、ステップ138においてエージェント26は、選択された制御ポリシーの識別子を内部に含む新しいCPT23を生成し、これを文書22にタグ付けする。制御ポリシー14に定められているならば、許可ユーザは、ステップ136において「未管理」の制御ポリシーを選択してもよく、その場合、ステップ138においてエージェント26は、新しいCPTを生成せず、既存のCPTを削除し、文書22を復号化する。ステップ138の後、ユーザは、新しい制御ポリシー14の制約の下で文書22の編集を続行できる。
【0171】
システムの各制御ポリシー14は、データオブジェクト22をその制御ポリシーによって実現される保護の外に移動する権限を有するユーザのリストを記録する。さらに、制御ポリシー14は、新しいデータオブジェクト22を制御ポリシーに割り当てる権限を有するユーザのリストを記録する。ユーザは、データオブジェクト22を現在の制御ポリシー14から新しい制御ポリシーに移動するには、現在の制御ポリシー14の「送出側」リストのメンバーでなければならず、新しい制御ポリシー14の「指定先」リストのメンバーでなければならない。
【0172】
「移動」の権限は必須ではなく、すなわち制御ポリシー14の「送出側」および「指定先」リストは、空白であってもよい。ただし、本発明の好ましい実施形態においては、制御ポリシー14内のロールのうちの少なくとも1つは、ユーザがデータオブジェクト22をポリシー14に割り当てできるようにしている。いずれのロールも割り当ての特権を有していない場合、ポリシー14は何ら意味を持たなくなる(すなわち、関連付けられるオブジェクトが存在しない)。「指定先」リストは、この特権がデータオブジェクトを制御ポリシー14に割り当てるために、最初だけ必要とされる理由から空白になってもよい。例えば、メンバーが、ポリシーの最初の生成およびポリシーへのデータオブジェクトの割り当ての際に、「指定先」の特権を有してもよい。この初期化の後、「指定先」の特権が削除され、ポリシー14は固定の一式のオブジェクトを管理する。
【0173】
一般に、好ましい実施形態は、ビジネス・プロセス12の階層内の3種類の「移動」をサポートする(図1)。
(a)許可ユーザには、単一のビジネス・プロセス12内においてデータオブジェクト22とその制御ポリシー14との間の関連付けを変更する特権が付与される。
(b)さらに、ユーザには、ビジネス・プロセス12間でデータオブジェクト22を移動する特権が付与される。
(c)さらに、ユーザには、データオブジェクト22を権限管理システムの外に移動する特権が付与される。この移動の結果として、データオブジェクト22は管理または保護されないことになる。
【0174】
上記の種類の移動は、前述のドロップレット・コントロール120を通して、許可ユーザによって明示的に開始することができ、あるいは移動を、許可ユーザによってなされる他の何らかの電子的作用の副産物として、暗黙のうちに開始することもできる。この後者のカテゴリーを、「自動移動」と称する。
【0175】
データオブジェクト22に関連付けられたポリシー14は、マージ操作(例えば、カット/ペースト操作)を通して自動的に変更できる。本発明の好ましい実施形態は、マージ操作について以下の種類の自動移動を実現する。すなわち、保護データオブジェクト32が非管理のデータオブジェクトにペーストされる場合には、対象となるデータオブジェクトはペーストされたオブジェクトのポリシー14を引き継ぐ。保護データオブジェクト32が、別のポリシー14を有する保護データオブジェクトにペーストされる場合には、対象となるデータオブジェクトは自身のポリシーを維持し、ペーストの完了は、ソースのデータオブジェクトのポリシーが移動を許容しており、かつ対象のデータオブジェクトのポリシーが割り当てを許容している場合にのみ完了を許される。
【0176】
本発明の好ましい実施形態は、スタンドアロンの移動ツールを既存の電子ビジネス・プロセスのソフトウェア・コンポーネントに統合することによって、「自動移動」を実現する。例えば、あらかじめ設定された制御ポリシー14の下でデータオブジェクト32としてレポートを生成するためにスタンドアロンの移動ツールを使用するように、大きなデータベース・システム用のレポート生成部を改変できる。他の例としては、電子メールサービスを、スタンドアロンの移動ツールを一種のフィルタとして使用し(すなわち、アンチウィルスフィルタとして利用されるこのようなインタフェースを活用し)、電子メールの「宛先」または「差出人」フィールド内の個人またはグループに基づいてデータオブジェクトを1つの制御ポリシー14から別の制御ポリシーに自動的に移動するように構成できる。自動移動は、電子メールの差出人が適切な移動の権限を有している場合にのみ生じる。そのような実施形態は、さらに、デジタル署名を使用して、電子メール・メッセージが確かに「差出人」フィールドに指定されている個人から届いたことを確認することを望むことができる。
【0177】
オフラインでの協働
動的かつ分散的な環境における協働は、保護データオブジェクト32の唯一の正式の複製が、ポリシー・サーバ29を離れて、フィールド内の、ビジネス・プロセス所有者がアクセスできない場所に常駐できることを意味する。動的、分散的、かつ協働的な環境をサポートするシステムは、2人(または、それ以上)の許可ユーザが、オンラインおよびオフラインの両方で容易に保護データオブジェクト32を生成および共有できるようにしなければならない。本発明の好ましい実施形態は、そのような目標を、許可ユーザがごく最近にポリシー・サーバ29にアクセスしていなくてはならないという唯一の基準によりサポートする。ここで「最近」とは、ユーザが希望する協働を管理する制御ポリシー14についてのキャッシュの時間切れの期間内を意味する。言い換えると、協働はあらかじめ定められたビジネス・プロセス12によって推進され、あらかじめ登録されたデータオブジェクト32によって推進されるものではない。
【0178】
図17は、本発明に基づく権限管理システム200における2人のユーザ間の協働を示したフローチャートを表わしており、ここでは協働は、ポリシー・サーバ29にとって未知である文書(データオブジェクト22)を介して生じている。ステップ140は、管理者がユーザAおよびBの両者をロールに含んでいる制御ポリシーPを生成することによって開始される。ステップ141においてユーザAおよびBは、ポリシー・サーバ29が位置する企業のネットワークに接続されているユーザのラップトップにログインする。ステップ142において、ユーザのラップトップのクライアント・ハンドラ・プロセス82が、制御ポリシーPとそのKEKをキャッシュする。次いで、ステップ143においてユーザAおよびBは、企業のネットワークから離れ、ユーザのラップトップをオフラインのミーティングに持ち出す。この時点で、クライアント・ハンドラ・プロセス82は、キャッシュした制御ポリシー14の範囲内であらゆる協働的アクティビティを許可する準備ができており、すなわちクライアント・ハンドラ・プロセス82は、権限管理システム200のトラスト・エージェントとして機能する。
【0179】
オフラインの間、ステップ144においてユーザAは、機密のデータオブジェクトD(この例では、文書である)を生成し、制御ポリシーPで保護する。このアクションは、ユーザAがポリシー・サーバ29に接続していない状態で生じる。ユーザAは、制御ポリシーPが自身のラップトップにキャッシュされているため、文書Dを生成して保護することができる。ステップ145においてユーザAは、文書Dの複製をユーザBに与える。ステップ146においてユーザBは、やはりポリシー・サーバ29に接続していない状態で、自身のラップトップ上で保護文書Dを編集できる。文書D(または、制御ポリシーPによって保護された他のあらゆる文書)に関するユーザAおよびBの協働は、期限切れが生じない限り、ステップ147において継続する。
【0180】
監査、フォレンジック、およびコンプライアンス
本発明の好ましい実施形態は、図6のクライアント・エージェント26によって監視および制御されたアクティビティ(許可および拒否されたアクティビティ)の記録をサポートする。図10のログ・サービス88は、個々の権限管理対応アプリケーション21からログ・データを収集し、それらデータをポリシー・サーバ29に送り返す。その後、ビジネス・プロセス所有者は、監査、フォレンジック、およびコンプライアンスなどのビジネス上の必要事項をサポートするために、収集された情報を検査し、調査できる。
【0181】
ビジネス・プロセス12のデータオブジェクト32に関するアクティビティの監査は、特定されたデータオブジェクト32の暗号化を必ずしも必要としない。本発明の一実施形態においては、特定されたデータオブジェクト32が、単に「管理」されており「保護」されていなくてもよい。言い換えると、監査は、特定されたデータオブジェクト32がCPT23を有していることのみを必要とし、データオブジェクト32のコンテンツ22が暗号化されていることを必要としない。
【0182】
CPT23のオブジェクトIDフィールド55(図8)は、監査、フォレンジック、およびコンプライアンスを支援する。クライアント・エージェント26が最初に保護データオブジェクト32を生成したときに、完全な固有の識別子が生成される。新しいデータオブジェクト32が既存の保護データオブジェクトから(例えば「名前をつけて保存」コマンドによって)作り出されたとき、新規および既存のデータオブジェクトを結び付けるログ記録が、それらのオブジェクト識別子55の値を使用して書かれる。そうでない場合、システム200は、新しい保護データオブジェクト32が最初から作られたか、あるいは非管理のデータオブジェクト22から作られたことを記録する。
【0183】
この例は、本発明の好ましい実施形態が、オブジェクト識別子を監査、フォレンジック、およびコンプライアンスの目的のためだけに使用することを強調している。この実施形態は、保護データオブジェクト32のオブジェクト識別子55を、制御ポリシー14または関連の使用ルールの決定には使用しない。
【0184】
以上、本発明を、本発明の好ましい実施の形態に関して詳細に示し説明してきたが、添付の特許請求の範囲に包含される本発明の範囲から逸脱することなく、これらの実施形態における形態および細部についてさまざまな変更が可能であることは、当業者であれば理解できるであろう。
【符号の説明】
【0185】
14 制御ポリシー

【特許請求の範囲】
【請求項1】
分散的な環境おけるデータオブジェクトの制御をコンピュータで維持および管理する方法であって、
各データオブジェクトのそれぞれに対応する制御ポリシーの識別子を付ける工程であって、各制御ポリシーが、
(i)前記データオブジェクトにアクセスできるユーザの組の表示、
(ii)前記組の各ユーザに付与される特権の表示
(iii)前記制御ポリシーを決定または編集できるユーザの組の表示、のうちの少なくとも1つを含む、制御ポリシー識別子付加工程と、
前記制御ポリシーをサーバ上に格納する、制御ポリシー格納工程と、
ユーザがデータオブジェクトへのアクセスを要求すると、ユーザがその要求した方法でデータオブジェクトにアクセスできるユーザの前記組に属しているか否かを、データオブジェクトの対応する制御ポリシーに基づいてチェックする、チェック工程と、を備えたデータオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項2】
請求項1において、さらに、
ユーザがその要求した方法で前記データオブジェクトにアクセスできるユーザの前記組に属している場合に、前記ユーザによる前記データオブジェクトへのアクセスを許可する、アクセス許可工程を備えた、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項3】
請求項1において、制御ポリシーを制御ポリシー・サーバ上に格納する前記制御ポリシー格納工程と、さらに、
制御ポリシー・サーバの利用可能性を決定する、利用可能性決定工程と、
前記制御ポリシー・サーバが利用不可能である場合は、前記データオブジェクトに対するアクセス権が有効である時間期間を決定する、時間期間決定工程と、
前記ユーザに関する前記アクセス権が前記データオブジェクト対して依然有効である場合には、前記ユーザによる前記データオブジェクトへのアクセスを許可する、アクセス許可工程と、を備えた、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項4】
請求項3において、さらに、
前記データオブジェクトを第2のユーザと共有する、共有工程を備えた、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項5】
請求項3において、前記データオブジェクトは前記サーバが利用不可能である間に生成される、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項6】
請求項1において、さらに、
制御ポリシーを決定および編集できるユーザの表示と改変が許される事項の表示とに基づき、ユーザの組が制御ポリシーを決定および編集するためのインタフェースを提供する、インタフェース提供工程を備えた、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項7】
請求項1において、前記制御ポリシーは、さらに、装置の制約、場所の制約、アクセス時間の制約、およびネットワーク接続の制約のうちの1つまたは複数の表示を含む、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項8】
請求項1において、前記制御ポリシーは、さらに、データオブジェクトを前記制御ポリシーの外に移動できるユーザの表示と、データオブジェクトに前記制御ポリシーを割り当てできるユーザの表示とを含む、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項9】
請求項1において、前記制御ポリシー内におけるロールは、使用権限およびユーザリストのセットであり、前記制御ポリシー内の複数のロール内に登場するユーザの使用権限が集約される、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項10】
請求項1において、前記データオブジェクトが暗号化される、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項11】
請求項10において、前記データオブジェクトは、前記データオブジェクトに対応する制御ポリシーの鍵暗号鍵で暗号化されたコンテンツ暗号鍵で暗号化される、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項12】
請求項1において、さらに、
前記データオブジェクトをその制御ポリシーから第2の制御ポリシーに移動する、移動工程を備えた、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項13】
請求項12において、前記第2の制御ポリシーは、
データオブジェクトが保護されない状態と、ユーザがそのポリシーにデータオブジェクトを割り当てる特権を有している制御ポリシーとのうちの少なくとも1つである、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項14】
請求項12において、さらに、
予め決められたイベントが発生したときに、データオブジェクトを1つの制御ポリシーから第2の制御ポリシーに移動する移動工程であって、前記第2の制御ポリシーは、
ユーザがそのポリシーにデータオブジェクトを割り当てる特権を有する制御ポリシーと、データオブジェクトが保護されない状態とのうちの少なくとも1つである、移動工程を備えた、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項15】
請求項14において、前記予め決められたイベントが、前記制御ポリシーの生成者によって決定されるビジネス・イベントである、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項16】
請求項14において、さらに、
データオブジェクトの移動をアクティビティ・ログに記録して、データオブジェクトの変更の監査を可能にする、記録工程を備えた、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項17】
請求項1において、制御ポリシーがビジネス・プロセスにグループ化される、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項18】
請求項17において、ビジネス・プロセスが階層的に体系化されている、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項19】
請求項18において、前記階層が、制御ポリシー間のデータオブジェクトの移動の範囲の限定に使用される、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項20】
請求項18において、1つのビジネス・プロセスのデフォルトのポリシーが、前記階層の機能として他のビジネス・プロセスに適用する、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項21】
請求項1において、さらに、
ビジネス・プロセスの1つまたは複数の制御ポリシー内で許可または拒絶されたアクティビティに基づき、ビジネス・プロセスの監査またはフォレンジックを可能にする工程を備えた、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項22】
請求項1において、さらに、
クライアント・コンピュータ上に、認証されたユーザによってアクセスされたデータオブジェクトに対応する制御ポリシーの表示事項を表示する、表示工程を備えた、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項23】
請求項22において、さらに、
クライアントによって、制御ポリシーを格納しているサーバから、前記ユーザが許可を有する制御ポリシーのリストを要求する、要求工程と、
データオブジェクトの制御ポリシーの表示事項を、データオブジェクトを表示するウインドウのタイトルバーに位置するドロップダウン・ウインドウに表示する表示工程であって、このドロップダウン・ウインドウは、前記サーバから要求された制御ポリシーのリストを表示する、表示工程とを備えた、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項24】
請求項22において、前記ドロップダウン・ウインドウは、前記ユーザが前記データオブジェクトを移動できる移動先の制御ポリシーを示す、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項25】
請求項23において、前記ドロップダウン・ウインドウは、前記制御ポリシーのビジネス・プロセス階層を示す、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項26】
請求項1において、1つまたは複数のデータオブジェクトが、同一の制御ポリシーを使用する、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項27】
請求項26において、さらに、
第1のデータオブジェクトの少なくとも一部分を第2のデータオブジェクトに移動またはコピーする、移動またはコピー工程と、
前記第1および第2のデータオブジェクトに対応する制御ポリシーに基づいて、前記第2のデータオブジェクト内の前記第1のデータオブジェクトの少なくとも一部分についての制御ポリシーを調整する、調整工程とを備えた、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項28】
請求項1において、さらに、
データオブジェクトに対応する制御ポリシーを、このデータオブジェクトにアクセスすることなく変更する、変更工程を備えた、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項29】
請求項28において、前記データオブジェクトに対応する制御ポリシーを変更する変更工程が、さらに、複数の制御ポリシーを同様に変更することを含む、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項30】
請求項29において、前記複数の制御ポリシーが1つのビジネス・プロセスの一部である、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項31】
請求項1において、さらに、
データオブジェクトに対応する制御ポリシーについての情報を制御ポリシー・サーバに記録する記録工程と、
データオブジェクトに対応する制御ポリシーを変更する変更工程と、
前記記録した情報に基づいて、元の制御ポリシー構成に復帰する復帰工程とを備えた、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項32】
請求項1において、さらに、
データオブジェクトの対応する制御ポリシーに、予め決められた変更を適用する適用工程を備えた、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項33】
請求項32において、前記予め決められた変更は、前記制御ポリシーが関連付けられているビジネス・プロセス内に示されている、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項34】
請求項1において、前記対応する制御ポリシーの前記表示が、さらに、ポリシー参照および対応する制御ポリシーを格納している制御ポリシー・サーバの表示を含む、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項35】
請求項34において、
制御ポリシー・サーバの前記表示はユニフォーム・リソース・ロケータ(URL)であり、前記ポリシー参照は前記制御ポリシー・サーバにとって既知の数値である、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項36】
請求項1において、さらに、
データオブジェクトをユーザの組に配布する配布工程を備えた、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項37】
請求項36において、さらに、
ユーザによるデータオブジェクトへのアクセスの際に、対応する制御ポリシーに基づいて、要求した方法で前記データオブジェクトにアクセスできるユーザの組にそのユーザが属しているか否かをチェックするチェック工程を備えた、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項38】
請求項1において、さらに、
データオブジェクトへのアクセス要求を記録し、アクティビティ・ログに含める工程を備えた、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項39】
請求項38において、さらに、
前記アクティビティ・ログ内の前記データオブジェクトを、固有の文書識別子に基づいて特定する特定工程を備えた、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項40】
請求項1において、前記データオブジェクトが一時的なものであり、指定時間後にアクセス不可能になる、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項41】
請求項1において、前記データオブジェクトが永久的なものであり、アクセス提示される際には常に復元可能である、データオブジェクトの制御のコンピュータでの維持および管理方法。
【請求項42】
分散的な環境におけるデータオブジェクトの制御を維持および管理するコンピュータ実装されたクライアントであって、
各データオブジェクトのそれぞれに対応する制御ポリシーをチェックし、対応する各制御ポリシーのポリシー参照を決定するポリシー・チェッカーであって、各制御ポリシーは、少なくとも、このデータオブジェクトにアクセスできるユーザの組の表示、このユーザの組に付与される特権の表示、および前記制御ポリシーを決定または編集できるユーザの組の表示を含む、ポリシー・チェッカーと、
ポリシー・サーバを前記決定されたポリシー参照に接続する通信モジュールと、
要求した方法で前記データオブジェクトにアクセスできるユーザの組にそのユーザが属している場合には、前記ユーザによる前記データオブジェクトへのアクセスを許可するユーザ・インタフェースとを備えた、コンピュータ実装されたクライアント。
【請求項43】
請求項42において、さらに、
前記データオブジェクトについてアクセス権限が有効である時間期間を前記ポリシー・チェッカーに示す時間要素を備えた、コンピュータ実装されたクライアント。
【請求項44】
分散的な環境におけるデータオブジェクトの制御を維持および管理するコンピュータ実装されたサーバであって、
格納された一式の制御ポリシーであって、各制御ポリシーは、少なくとも、このデータオブジェクトにアクセスできるユーザの組の表示、このユーザの組に付与される特権の表示、および前記制御ポリシーを決定または編集できるユーザの組の表示を含む、一式の制御ポリシーと、
制御ポリシー参照を受け取ると、これに応答して制御ポリシーについての情報を返すように構成された通信モジュールとを備えた、コンピュータ実装されたサーバ。
【請求項45】
データオブジェクトをコンピュータで保護する方法であって、
コンテンツ暗号鍵でデータオブジェクトを暗号化するデータオブジェクト暗号化工程と、
データオブジェクトに対応する制御ポリシーの鍵暗号鍵で、前記コンテンツ暗号鍵を暗号化するコンテンツ暗号鍵暗号化工程とを備えた、データオブジェクトのコンピュータでの保護方法。
【請求項46】
請求項45において、さらに、
前記データオブジェクトに対応する制御ポリシー・タグを記録する記録工程を備えた、データオブジェクトのコンピュータでの保護方法。
【請求項47】
請求項46において、さらに、
前記暗号化されたコンテンツ暗号鍵を前記制御ポリシー・タグに格納する格納工程する工程を備えた、データオブジェクトのコンピュータでの保護方法。
【請求項48】
請求項47において、さらに、
前記制御ポリシー・タグに格納された前記コンテンツ暗号鍵を、キャッシュされた鍵暗号鍵で復号化するコンテンツ暗号鍵復号化工程と、
前記復号化されたコンテンツ暗号鍵で前記データオブジェクトを復号化するデータオブジェクト復号化工程とを備えた、データオブジェクトのコンピュータでの保護方法。
【請求項49】
請求項46において、前記制御ポリシー・タグが前記データオブジェクトに取り付けられる、データオブジェクトのコンピュータでの保護方法。
【請求項50】
請求項46において、前記データオブジェクトは読み出し専用である、データオブジェクトのコンピュータでの保護方法。
【請求項51】
請求項46において、前記制御ポリシー・タグが制御ポリシー・サーバで作成される、データオブジェクトのコンピュータでの保護方法。
【請求項52】
請求項46において、前記制御ポリシー・タグがクライアントで作成される、データオブジェクトのコンピュータでの保護方法。
【請求項53】
請求項46において、制御ポリシーの前記鍵暗号鍵に有効期間が関連付けられている、データオブジェクトのコンピュータでの保護方法。
【請求項54】
請求項53において、さらに、
制御ポリシーの期限切れの鍵暗号鍵を自動的に置換する置換工程を備えた、データオブジェクトのコンピュータでの保護方法。
【請求項55】
請求項54において、制御ポリシーの期限切れの鍵暗号鍵を自動的に置換する置換工程が、さらに、
近い将来の鍵、現在の鍵、最近に期限切れした鍵、および制御ポリシー・サーバから受け取った古い鍵のうちの少なくとも1つを含む復号化鍵の組から適切な鍵を選択する選択工程を備えた、データオブジェクトのコンピュータでの保護方法。
【請求項56】
請求項46において、さらに、
第2の暗号鍵で暗号化された前記コンテンツ鍵の第2の複製を、前記制御ポリシー・タグに格納する格納工程を備えた、データオブジェクトのコンピュータでの保護方法。
【請求項57】
請求項56において、前記第2の暗号鍵は制御ポリシー・サーバの鍵暗号鍵である、データオブジェクトのコンピュータでの保護方法。
【請求項58】
請求項56において、さらに、
制御ポリシー・サーバの鍵暗号鍵を使用して、前記制御ポリシーの期限切れの鍵暗号鍵でのデータオブジェクトへのアクセスを可能にする工程を備えた、データオブジェクトのコンピュータでの保護方法。
【請求項59】
請求項46において、さらに、
前記制御ポリシー・タグの完全性を改ざんから保護する保護工程を備えた、データオブジェクトのコンピュータでの保護方法。
【請求項60】
請求項59において、前記制御ポリシー・タグの完全性を改ざんから保護する保護工程は、さらに、制御ポリシー・タグのフィールド全体についてセキュア・ハッシュを使用する工程を備えた、データオブジェクトのコンピュータでの保護方法。
【請求項61】
請求項46において、さらに、
制御ポリシー・サーバについて、データオブジェクトに対応する制御ポリシーの変更をチェックするチェック工程を備えた、データオブジェクトのコンピュータでの保護方法。
【請求項62】
請求項61において、前記制御ポリシー・タグが、制御ポリシー・サーバのユニフォーム・リソース・ロケータおよび制御ポリシー・ロケータを含む、データオブジェクトのコンピュータでの保護方法。
【請求項63】
請求項61において、さらに、
データオブジェクトへのユーザのさらなるアクセスを防止する制御ポリシーへの変更を検出すると、このデータオブジェクトへのそのユーザのアクセスを無効にする工程を備えた、データオブジェクトのコンピュータでの保護方法。
【請求項64】
請求項45において、さらに、前記制御ポリシーの鍵暗号鍵を制御ポリシー・サーバに格納する格納工程を備えた、データオブジェクトのコンピュータでの保護方法。
【請求項65】
請求項64において、前記ポリシーが、少なくとも、データオブジェクトにアクセスできるユーザの組の表示、このユーザの組に付与される特権の表示、および前記制御ポリシーを決定または編集できるユーザの組の表示を含み、さらに、
前記ユーザが制御ポリシー内で前記データオブジェクトにアクセスできるユーザの組に属すると示された場合に、前記制御ポリシーの鍵暗号鍵に対する復号化鍵および前記ユーザについての特権の表示を、前記ユーザにより回復する回復工程を備えた、データオブジェクトのコンピュータでの保護方法。
【請求項66】
請求項65において、制御ポリシーの前記鍵暗号鍵の回復が、ユーザが認証されているか否かを判断する判断工程を備えた、データオブジェクトのコンピュータでの保護方法。
【請求項67】
請求項65において、さらに、
ユーザがデータオブジェクトにアクセスできる時間期間の表示を格納する格納工程と、
前記時間期間の経過後に、データオブジェクトへのユーザのアクセスを無効にする無効工程とを備えた、データオブジェクトのコンピュータでの保護方法。
【請求項68】
請求項67において、さらに、
データオブジェクトを復号化する復号化工程と、
ユーザによるこのデータオブジェクトへのアクセスを許可する許可工程とを備えた、データオブジェクトのコンピュータでの保護方法。
【請求項69】
請求項67において、さらに、
前記時間期間の経過後に、前記制御ポリシーの鍵暗号鍵を破壊する破壊工程を備えた、データオブジェクトのコンピュータでの保護方法。
【請求項70】
請求項45において、さらに、
データオブジェクトが変更されたときに常に、前記コンテンツ暗号鍵を変更する変更工程を備えた、データオブジェクトのコンピュータでの保護方法。
【請求項71】
請求項46において、さらに、
期限切れの制御ポリシー・タグを自動的に置換する置換工程を備えた、データオブジェクトのコンピュータでの保護方法。
【請求項72】
請求項71において、前記制御ポリシー・タグが、長さフィールドおよびバージョン・フィールドのうちの少なくとも1つを有する、データオブジェクトのコンピュータでの保護方法。
【請求項73】
請求項72において、前記期限切れの制御ポリシー・タグを置換する置換工程が、さらに、制御ポリシーのバージョンが現在のバージョンと一致しない場合に、前記制御ポリシー・タグを制御ポリシー・サーバに送る工程を備えた、データオブジェクトのコンピュータでの保護方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate


【公開番号】特開2011−81842(P2011−81842A)
【公開日】平成23年4月21日(2011.4.21)
【国際特許分類】
【出願番号】特願2011−3824(P2011−3824)
【出願日】平成23年1月12日(2011.1.12)
【分割の表示】特願2006−515002(P2006−515002)の分割
【原出願日】平成16年5月27日(2004.5.27)
【出願人】(505444765)リキッド・マシンズ・インコーポレーテッド (2)
【氏名又は名称原語表記】LIQUID MACHINES,INC.
【Fターム(参考)】