JP2005141746A - 文書制御システムにおけるオフラインアクセス - Google Patents

文書制御システムにおけるオフラインアクセス Download PDF

Info

Publication number
JP2005141746A
JP2005141746A JP2004318250A JP2004318250A JP2005141746A JP 2005141746 A JP2005141746 A JP 2005141746A JP 2004318250 A JP2004318250 A JP 2004318250A JP 2004318250 A JP2004318250 A JP 2004318250A JP 2005141746 A JP2005141746 A JP 2005141746A
Authority
JP
Japan
Prior art keywords
document
client
server
key
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2004318250A
Other languages
English (en)
Other versions
JP4853939B2 (ja
Inventor
William M Shapiro
エム. シャピロ ウイリアム
James Donahue
ドナヒュー ジェームズ
Jonathan D Herbach
ディー. ハーバック ジョナサン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Adobe Inc
Original Assignee
Adobe Systems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Adobe Systems Inc filed Critical Adobe Systems Inc
Publication of JP2005141746A publication Critical patent/JP2005141746A/ja
Application granted granted Critical
Publication of JP4853939B2 publication Critical patent/JP4853939B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • G06Q20/3674Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes involving authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • H04L9/0833Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2101Auditing as a secondary aspect
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2113Multi-level security, e.g. mandatory access control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2115Third party
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2137Time limited access, e.g. to a computer or data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2139Recurrent verification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2147Locking files
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Finance (AREA)
  • Signal Processing (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

【課題】文書制御システムにおいてオフラインアクセスを与えるシステム及び技術を提供する。
【解決手段】一般的に、1つの実現例においては、本発明は、クライエントからのリクエストを受取り、且つそのリクエストに応答してクライエントを事前認可して複数のユーザからなるグループに関連する第一鍵であって電子文書内の第二鍵を解読することにより電子文書へアクセスすることをクライエントにおいて使用可能とさせる第一鍵を包含するオフラインアクセス情報をクライエントへ送ることによりそのグループのメンバーとしてユーザによるアクションを可能とさせる、ことを包含している。リクエストを受取る場合に、第二文書に関するアクションを取るためにクライエントからのリクエストを受取ることを関与させることが可能である。
【選択図】 図1

Description

本発明は、例えば、文書制御システムにおけるオフラインアクセス制御等の文書制御に関するシステム及び技術に関するものである。
従来の文書制御システムは、該システムにより確保された文書に対する暗号化鍵を格納し且つ管理するサーバーを包含しており、確保されている文書を開くことが可能となる前に該サーバーへコンタクトすることを必要とすることにより文書に対する永続的な保護を与えている。このようなシステムは、又、その文書が最初にオンライン中に開かれたものである場合には、そのユーザがオフラインにある場合に制限された時間の間クライエントが文書を開くことを可能とするためにクライエント上に暗号文書鍵をキャッシュすることによりオフライン能力を提供している。このようなシステムは、又、文書アクセスを監査する場合に使用するために、オフライン中におけるログ情報をキャッシュすることを包含する文書アクセス情報をログすることが可能なものであった。
従来の文書管理システムは、複数の個人の異なるグループが異なる許可を持つことを可能とする文書に関連する文書許可情報を包含しており、且つ従来の文書ビューイングソフトウエアアプリケーションは、又、文書管理システムフォーマットからソフトウエアアプリケーション、即ち文書管理システムとの各統合に対して必要とされる別個のソフトウエアプラグインによって使用されるフォーマットへ文書許可情報を翻訳すべく設計されているソフトウエアプラグインを包含していた。更に、エクステンシブル・ライツ・マークアップ・ランゲージ(XrML(商標))が、XrML規則に準拠する任意のシステムからの資源及び許可を文書ビューイングアプリケーションが理解することを理論的に可能とすべく定義されつつある。
文書を確保するために多数の異なる暗号化技術が使用されている。これらは、個人個人が個々的な文書に対するパスワードを記憶していることを必要とする文書毎に基づく対称的暗号化、及びユーザの単一のパスワードに基づいて複数の文書を解読する能力を提供する結合型非対称的・対称的暗号化技術(例えば、Pretty Good Privacy(PGP(商標))暗号化)を包含していた。ネットワークマルチキャスト/ブロードキャストの文脈において、クライエント上に暗号化鍵をキャッシュする種々の暗号化プロトコルも使用されている。多くのソフトウエアプロダクトは、既存のエンタプライズ認証システム(例えば、Lightweight Directory Access Protocol)と直接的に統合する。更に、種々のシステムは、又、配布した文書の最も最近のバージョンをユーザが見つけ出すことを可能とするための機能性を提供しており、例えばTumbleweed Messaging Management System(商標)があり、それは、電子メールシステムを確保し且つ添付した文書のオリジナルのバージョンがアップデートされる場合に添付文書を有する電子メールの受取人に対して電子メール通知を送ることが可能であり、その場合の電子メール通知は現在の文書へ戻るURL(ユニバーサルリソースロケーター)を有している。
本発明は、以上の点に鑑みなされたものであって、上述した如き従来技術の欠点を解消し、例えば、文書制御システムにおけるオフラインアクセス制御等の文書制御に関する改良した技術を提供することを目的とする。
一般的に、1つの側面においては、本発明は、クライエントからのリクエスト(要求)を受取り、且つ複数のユーザからなるグループと関連する第一鍵を包含するオフラインアクセス情報を前記クライエントに送ることにより前記グループのメンバーとしてユーザによるアクションを可能とさせるために前記リクエストに応答して前記クライエントを事前認可するオペレーション(動作)を特徴としており、該第一鍵は電子文書内の第二鍵を解読することにより前記電子文書へアクセスするために該クライエントにおいて使用可能である。クライエントを事前認可する場合に、最後に記録されているクライエント・同期の時間とそのユーザに対するユーザ・グループ情報における最後の変化の時間と比較することが可能である。クライエントを事前認可する場合に、そのユーザに対する現在のユーザ・グループ情報を該クライエントからのそのユーザに対する受取ったユーザ・グループ情報と比較することが可能である。
クライエントは、電子文書内に存在する文書・許可情報に基づいて電子文書に関するアクションを可能とさせることが可能である。オフラインアクセス情報は該電子文書を包含する複数の文書と関連する文書・許可情報を包含することが可能であり、且つクライエントはこれらの文書・許可情報に基づいて電子文書に関するアクションを可能とさせることが可能である。
リクエストを受取る場合に、第二文書に関するアクションを取るためのクライエントからのリクエストを受取ることが可能である。該オペレーションは、又、該クライエントにおけるユーザを認証されたユーザとして検証することを包含することが可能であり、且つ該オフラインアクセス情報は少なくとも1個のユーザ特定鍵、該第一鍵を包含する少なくとも1個のグループ特定鍵、複数の文書と関連する少なくとも1組の文書・許可情報、文書失効リストを包含することが可能である。該少なくとも1組の文書・許可情報は、該第二文書と関連する1つ又はそれ以上のポリシーとすることが可能である。該オフラインアクセス情報は同期優先順位付け情報に基づいて選択された特定の文書と関連する少なくとも1組の文書・許可情報を包含することが可能である。該オペレーションは、又、該クライエントからオフライン監査ログを受取ることを包含することが可能である。
別の側面によれば、本発明は、文書制御サーバーの複数のユーザからなるグループと関連する第一鍵を包含するオフラインアクセス情報を、オンラインである場合に、該文書制御サーバーから受取り、且つ制御サーバーから受取り、且つ、電子文書内の第二鍵を解読するために該第一鍵を使用し且つ該電子文書と関連する文書・許可情報に基づいて該電子文書に関するアクションを支配することを包含するオペレーションを実施することにより、オフラインにある場合に、該電子文書へのアクセスを可能とさせることを包含しているオペレーションを特徴としている。電子文書に関するアクションを支配する場合に、該電子文書から該文書・許可情報を獲得することが可能である。該電子文書に関するアクションを支配する場合に、該電子文書内のポリシー参照を識別し、且つ該文書ポリシー参照に基づいて局所的に維持されている文書・許可情報を獲得することが可能である。
該オペレーションは、又、現在の時間と該オフラインアクセス情報の受取時間との間の差異がサーバー・同期・周波数パラメータを超える場合には、オフラインにある場合に、該文書へのアクセスを阻止することが可能である。該サーバー・同期・周波数パラメータは該文書に対して特定的なものとすることが可能である。該オペレーションは、又、オフライン監査ログを維持し、且つオンラインにある場合に該オフライン監査ログをアップロードすることを包含することが可能である。
別の側面によれば、本発明は、電子文書を暗号化し、且つ該暗号化した電子文書内に文書制御サーバーのアドレスと、文書・許可情報と、該暗号化した電子文書を解読する場合に使用可能な暗号化鍵とを組込むことを包含するオペレーションを特徴としており、該暗号化鍵は該文書制御サーバーにより発生され且つ該文書制御サーバーの複数ユーザのグループと関連している鍵で暗号化される。該暗号化鍵は、該文書制御サーバーにより発生されるセッション鍵とすることが可能であり、且つ該電子文書の暗号化は、文書鍵を使用して該電子文書を暗号化することが可能である。
組込む場合に、該文書鍵及び該文書・許可情報を包含する文書セキュリティペイロードを該暗号化した電子文書内に組込むことが可能であり、該文書セキュリティペイロードは該セッション鍵を使用して暗号化される。該文書セキュリティペイロードは、又、該文書制御サーバーにより割当てられる文書識別子を包含することが可能であり、且つ組込む場合に、該文書制御サーバーと関連する公開鍵を使用して暗号化した該セッション鍵のコピーを該暗号化した電子文書内に組込むことが可能である。更に、該文書・許可情報は、該電子文書自身より小さな粒度のレベルにおいてアクセス許可を特定することが可能である。
別の側面によれば、システムがクライエントリクエストに応答してオフラインアクセス情報をクライエントと同期させる文書制御サーバーを包含しており、該オフラインアクセス情報は1つのグループと関連する第一鍵を包含しており、該第一鍵は電子文書内の第二鍵を解読することにより該電子文書へアクセスするために該クライエントにおいて使用可能である。本システムはそのグループの一人のメンバーとしてユーザによるオフラインにある場合の該電子文書へのアクセスを可能とさせるクライエントを包含しており、該第一鍵を使用して該電子文書内の該第二鍵を解読し且つ該電子文書と関連する文書・許可情報に基づいて該電子文書に関するアクションを支配する。該クライエントはオフラインアクセス情報を同期させるために該文書制御サーバーと周期的にコンタクトするエージェントを包含することが可能である。
該サーバーは、コンフィギュレーション及びロギングコンポーネント、動的にロードされる方法にわたって機能性を提供する内部サービスコンポーネント、及び1つ又はそれ以上のアクセス制御サービスプロバイダーを包含する動的にロードされる外部サービスプロバイダーを具備するサーバーコアを包含することが可能である。本システムは、又、該文書制御サーバーを包含する複数の文書制御サーバーからなるクラスターを具備するビジネスロジック層、及びビュアクライエントと、セキュアリングクライエントと、管理クライエントとを包含するクライエントを具備するアプリケーション層、及びクライエントのリクエストを該文書制御サーバーへ経路付けするロードバランサー(load balancer)を包含することが可能である。
クライエントリクエストは第二文書に関するアクションを取るためのクライエントからのリクエストとすることが可能である。該文書制御サーバーは、翻訳コンポーネントを包含する許可・ブローカーサーバーとすることが可能である。該第二文書は、許可・ブローカーサーバーにより以前に確保された文書とすることが可能であり、且つ該翻訳コンポーネントは、クライエントから受取られるリクエストに応答して、第一許可・定義フォーマットにおける第一文書・許可情報を第二許可・定義フォーマットにおける第二文書・許可情報へ翻訳すべく動作可能である。
該サーバーは、該リクエストに応答して該第二文書と関連する情報を識別すべく動作可能な許可・ブローカーサーバーとすること可能である。該関連する情報は、該サーバーにおいて維持することが可能であり且つ該第二文書と異なるものであり且つそれと関連する第三電子文書を表示することが可能である。該サーバーは、取られるべきアクションを容易なものとさせるために、該第三電子文書に関する情報を該クライエントへ関係付けるべく動作可能なものとすることが可能である。
該サーバーは、該リクエストに応答して、1つ又はそれ以上のデータ処理装置をして認証手順を行わせるオペレーションを実施させるべく動作可能な命令を有するソフトウエアプログラムを獲得し且つ送信すべく動作可能な許可・ブローカーサーバーとすることが可能である。該クライエントは、現在のユーザを識別し且つ該第二文書に関連する現在のユーザ及び文書・許可情報に基づいて該第二文書に関するアクションを制御するために該認証プログラムを使用することが可能である。
本発明は、以下の利点のうちの1つ又はそれ以上を実現するために実行することが可能である。文書制御システムは、例えば文書管理システム、格納システム、認証及びアクセス制御メカニズム等の既存のエンタプライズインフラストラクチャと容易に且つ緊密に統合させることが可能である。該文書制御システムのユーザは、殆どわずらわしさ無しに認可されたアクションを実施することが可能なものとさせることが可能である。クライエントのインストールを最小とさせることが可能であり、且つサーバーにより開始されトランスペアレントなクライエントカスタム化を実施することが可能であり、それによりエンタプライズソリューションを配備するプロセスを容易なものとさせる。更に、該文書制御システムは、複数のプラットフォーム上に配備することが可能であり且つ特定のプラットフォームに対して緊密に結合させるものでないものとすることが可能である。
クライエントの機能性をサーバー上へ押し込むことが可能であり、クライエントアプリケーションの寸法及び複雑性を最小とすることにより簡単化した管理及び配備を可能とさせる。クライエントのオペレーション即ち動作に影響を与える新たな機能性は、複雑なクライエントアップデートを必要とすること無しにサーバーにおいて実現することが可能である。認証システムは、必要に応じて、認証プロセスをクライエント内へプラグインさせることを許容することを可能とする。認証システムは後に開発された認証メカニズムを包含する複数の異なる認証メカニズムと統合させることが可能である。認証システムは、例えば、ある時間期間にわたりログオンチケットをキャッシュすることにより、又はトランスペアレント即ち透過的に再認証することにより、トランスペアレントな認証をサポートすることが可能である。該認証システムはデプロイメント即ち配備を容易化することが可能である。サーバーアドミニストレーターは、ユーザ認証を新たにデプロイされた即ち配備された認証プロセスでコンフィギュア即ち形態特定することが可能であり、且つ該新たな認証プロセスは、認証が行われる場合に、クライエント内へ自動的にプラグインさせることが可能である。該認証プロセスは文書許可及びアクションとは独立的なものとすることが可能であり、従って、既存の文書の配布の性質を考慮する必要性無しに、アクション間において認証を行うことが可能である。
文書制御システムは、制御されるべき文書に対して使用される文書・許可情報の全てを表わすことが不可能な場合のある文書・許可情報のそれ自身の表現で既存のクライエントアプリケーションを使用することが可能である。サーバープラグインは、文書・許可情報タイプ間で翻訳することが可能であり、例えばエンタプライズシステムにおいて存在する場合があるような付加的な文書保護概念を既存のクライエントアプリケーションと共に使用することを可能とする。許可ブローカーサーバーにおける文書・許可情報の動的翻訳及び特定は、高度に多様性があり且つ容易にアップグレード可能な文書制御システムを形成することが可能である。該システムは、容易に後方互換性のものとすることが可能である。何故ならば、該システムは、必要である場合に、全く異なる文書を提供するのみならず許可の古いフォーマットへ翻訳即ち変換することが可能だからである。
文書へアクセスする最初にユーザがオフラインであることが可能なオフラインアクセスモデルを提供することが可能である。ユーザは、単にオフラインにあるという理由でユーザがアクセスに対する許可を有している文書へアクセスすることが阻止されることは必要ではなく、同時に、ユーザは、オンラインにある間にアクセスが拒否された文書へアクセスすることからオフラインにおいて阻止することが可能である。失効が発生される時と該システム内の全てのクライエントに関してそれが効果を発揮する時との間に有界時間を与えることが可能である。更に、ポリシーが修正された時と全てのクライエントがその修正されたポリシーを使用する時との間に有界な時間を与えることが可能である。
アクセスすべき文書の異なるバージョンに関する情報を自動的に送る文書情報デリバリー技術を与えることが可能である。文書は記述されるように文書制御システムへ繋ぐことが可能であり、且つその文書が開かれる場合に、該システムは、その代わりにアクセスされるべき異なる文書に関する情報を関連付けることが可能である。種々のワークフローを定義することが可能である。このようなワークフローは、ユーザが、常に文書の最新版を有することを確保することが可能であり、又はカスタム化したユーザに依存する文書デリバリを提供することが可能である。異なる文書のビューイング即ち見ることをユーザへ提案するか又は強制することが可能であり、又はその文書に依存して両方とすることが可能である。
以下に説明するシステム及び技術は、文書管理に関連してエンタプライズにより使用される場合があるような文書制御システムを実現するために使用することが可能である。本文書制御システムはスタンドアローンシステムとして、又は別のシステムの1つのコンポーネントとして動作することが可能である。本文書制御システムは、文書が何処にあるかに拘わらず、誰が文書を見ることが可能であるか且つその文書について何を行うことが可能であるかを制御することにより永続的な文書のセキュリティを提供することが可能である。本明細書においては、「文書」及び「電子文書」という用語はファイルに格納されている電子的データ及びネットワークを介して受取られる電子的データの両方を包含する1組の電子的データのことを意味しており、それはオペレーティングシステム(OS)又はソフトウエアアプリケーションのグラフィカルユーザインターフェースにおける単一の文書アイコンとして表わすことが可能である。電子文書は必ずしもファイルに対応するものではない。1個の文書は、その問題の文書の専用の単一のファイル内において、又は1組の関連するファイルにおいて、他の複数の文書を保持する1個のファイルの一部に格納することが可能である。更に、本明細書においては、「周期的」という用語は、時折繰り返されることを意味するものであり、規則的な間隔を必要とするものではない。
説明するシステム及び技術は、例えばポータブルドキュメントフォーマット(PDF(商標))文書を包含する多くの異なるタイプの文書と共に使用することが可能である。PDF文書はカリフォルニア州サンノゼのアドビシステムズインコーポレイテッドによって始められたフォーマットにある。PDF文書は、電子文書の様相を定義することが可能なプラットフォーム独立型文書フォーマットにおける電子文書の1つの例である。この文書フォーマットは、グラフィック、アニメーション、サウンドを包含する多くの異なるタイプのデータを格納することが可能なプラットフォーム独立型格納フォーマットとすることが可能であり、且つ定義された様相は複数のタイプの表示装置に対して定義することが可能であり、最終的なデスティネーションの装置に拘わらずに、その文書の見え方及び感じに関しての制御を文書の発生源に与える。このタイプのフォーマットにある文書をここに説明する技術と共に使用する場合には、結果的に得られるシステムに対して付加的な利点を発生することが可能である。例えば、文書制御システムは特定のソフトウエア開発プラットフォームに結合されていないアーキテクチャを有することが可能であり(例えば、本システムはJava及び.NETの情報の上でランすべく設計することが可能)、且つ例えばPDF文書等のプラットフォーム独立型文書を使用することが可能である。従って、本文書制御システムは幾つかのプラットフォームにわたり容易に機能することが可能である。
図1は文書制御システムに対する動作環境を例示したブロック図である。ネットワーク100が1つ又はそれ以上のクライエント110、1つ又はそれ以上のサーバー120、且つ1つ又はそれ以上のエンタプライズシステム130の間に通信リンクを与える。ネットワーク100はローカルエリアネットワーク(LAN)、メトロポリタンエリアネットワーク(MAN)、ワイドエリアネットワーク(WAN)、エンタプライズネットワーク、バーチャルプライベートネットワーク(VPN)、及び/又はインターネットを包含する1つ又はそれ以上のネットワーク用プロトコルを使用して通信することが可能なマシンをリンクする任意の通信ネットワークとすることが可能である。クライエント110はネットワーク100を介してサーバー120と通信することが可能な任意のマシン又はプロセスとすることが可能であり、且つサーバー120はネットワーク100を介してエンタプライズシステム130と通信を行うことが可能な任意のマシン又はプロセスとすることが可能である。更に、クライエント110もエンタプライズシステム130と通信を行うことが可能である。
エンタプライズシステム130は格納システム、認証システム、通信システム、及び/又は文書管理システムとすることが可能である。サーバー120は既存エンタプライズシステム130及びレバレッジ既存エンタプライズインフラストラクチャと緊密に統合すべく設計することが可能である。例えば、サーバー120は、最近合併したばかりの大きな会社において一般的であるように、エンタプライズにおけるユーザ及びグループ情報に対して豊富なサポートを提供することが可能であり、尚このような情報は複数の供給源から来る場合がある。サーバー120は押しつけがましさを最小としながら文書セキュリティを提供することが可能であり、本システムを使用することをより容易とし、従って効果的にデプロイ即ち配備させることをより容易なものとさせる。例えば、サーバー120は以下に説明するように、例えユーザがオンライン中にその文書を前もってビュー即ち見なかった場合であっても、ユーザがオフライン中に文書をビュー即ち見ることを可能とさせる洗練されたオフラインアクセスメカニズムを提供する文書制御システムを実現することが可能である。従って、本文書制御システムは通常動作期間中に控えめな状態を維持することが可能であり、文書セキュリティの存在をより目立たないものとし、従ってより使用可能なものとさせる。
図2は文書制御サーバー200の1例を例示したブロック図である。文書制御サーバー200はコンフィギュレーション及びロギングコンポーネント220,230を具備するサーバーコア210を包含することが可能である。サーバーコア210はサーバー200とコンタクトするクライエントに対してリモートプロシジャーコール(RPC)インターフェースを提供することが可能である。内部サービスコンポーネント240はメッソド(method)250にわたり機能性を与えることが可能である。メッソド250及び外部サービスプロバイダー260を包含するサーバー200のその他のコンポーネントは、コンフィギュレーションコンポーネント220により与えられる情報に基づいて動的にロードさせることが可能である。メッソド250は、サーバー200がクライエントに対してエクスポートする機能性を特定することが可能である(例えば、文書の確保、監査クエリーの実行等)。外部サービスプロバイダー260はメッソド250に対して使用可能な外部ファシリティ(施設)を特定することが可能である(例えば、データの格納、ユーザの認証等)。
コンフィギュレーションコンポーネント220はコンフィギュレーションオブジェクトに対するインターフェースを画定することが可能であり、且つロギングコンポーネント230は多様な情報をログ即ち記録するためにサーバー200により使用されるロギングオブジェクトに対するインターフェースを画定することが可能である。コンフィギュレーションオブジェクトはサーバーコンフィギュレーションファイル(例えば、サーバー200により読み取られる「.ini」ファイル)とすることが可能であり、且つロギングオブジェクトはログファイル(例えば、テキストファイル)とすることが可能である。一方、コンフィギュレーションオブジェクト及びロギングオブジェクトは標準化されたインターフェース(例えば、ジャバスタンダードJMX(ジャバ管理拡張)及びlog4j)を使用して画定されるローカル又はリモートのオブジェクトとすることが可能である。
サーバーコア210により与えられるRPCインターフェースは、クライエントに対するメッソドインターフェースを提供するために使用することが可能であり、クライエントはRPCを各名前付けメッソドとすることが可能であり且つ適宜の組の引数を提供することが可能である。サーバー200はサーバーメッソドインターフェースをエクスポートし且つサーバー200がクライエントに対して使用可能とさせるメッソドを画定する1組のメッソドクラスを読取ることによりそれ自身初期化することが可能である。内部サービス240はメッソド250の全てにわたり使用されるサーバーの内部コンポーネントとすることが可能である。これらは静的に画定することが可能であり及び/又はメッソドの従属関係として動的にロードさせることが可能である。内部サービス240は暗号コンポーネント、文書セキュアラー(securer)プロセス、及びアクセス制御評価及び作成インフラストラクチャを包含することが可能である。
サーバー200がクライントへエクスポートするメッソドは、エンタプライズシステム環境のバックエンドインフラストラクチャに依存する実現の場合に付加的なサービスに依存する場合がある。外部サービスプロバイダー260はメッソド250とそれらの実行環境との間の接続を特定する1組のサービスプロバイダーインターフェースを画定することが可能である。初期化されると、サーバー200はこの環境に対して必要とされる1組のサービスプロバイダーをロードし且つ初期化することが可能である。外部サービスプロバイダー260はデフォルトの実現例を包含することが可能であり且つ付加的な実現がなされる時間にわたり付加させることが可能であり、包含されたサービスプロバイダーインターフェースを使用して、異なるバックエンドインフラストラクチャに対して調整することが可能である。
例示的なサービスプロバイダーについて以下に説明するが、付加的な又は代替的なサービスプロバイダーも可能である。サービスプロバイダーの定義は、サービスプロバイダーが実現するインターフェースにより与えられる。これらのインターフェースは、それらが多様なシステムにわたり実現することが可能であるように包括的に定義することが可能である。従って、システムの境界を横断する情報は、種々のシステムに関する実現においてより大きな柔軟性を与えるために単純な用語で定義することが可能である。
認証サービスプロバイダーはユーザを認証するために使用することが可能である。コンピュータセキュリティの文脈において、認証は、プログラム可能なマシンが別のマシン、及び/又はそれから通信が受取られている他のマシンの現在のユーザの同一性を確認する手順である。認証を使用することが可能な多くのタイプのシステムが存在しており、且つ特定の実現例の必要性に依存して認証プロセスをトリガすることが可能な多くのタイプのイベントが存在している。本明細書に記載する認証システム及び技術は、説明した文書制御システムにおいて、又はその他のシステムにおいて使用することが可能である。
図3は認証システムにおけるワークフローを例示したブロック図である。クライエント310はネットワーク300を介してブローカーサーバー320と通信的に結合させることが可能である。クライエント310が認証されたユーザを有することに依存するアクションを取ることが必要である場合には、クライエント310はブローカーサーバー320へリクエスト350を送ることが可能である。例えば、クライエント310が文書305に関してアクションを取ることが必要である場合には、クライエント310はリクエスト350を送ることが可能である。リクエスト350は、サーバー320に対して、そのアクションに関連して使用するために、現在認められている認証プロセスに関するアップデートがクライエント310により期待されていることを表示することが可能である。リクエスト350はそのアクション及び/又はクライエント310に対して局所的な位置内に既に存在する1つ又はそれ以上の認証プロセスを表示する情報を包含することが可能であり、且つサーバー320は、受取った情報に基づいて、クライエント310により使用するための認証プロセスを送ることによりクライエントのリクエストに応答するか否かを決定することが可能である。
更に、リクエスト350はクライエント310とサーバー320との間の複数の通信を表わす場合がある。クライエント310は、最初に、そのアクションがリクエストされたことをサーバー320へ通信することが可能であり、且つクライエントは認証が実施されるべきか否か、且つそうである場合には、どのようにして認証が実施されるかを知ることをリクエストする。サーバー320及び文書305を識別する情報は文書自身の中に包含させることが可能であり、且つサーバー320は、文書305及びリクエストされたアクションの性質を識別する情報に基づいて、ユーザ認証が必要であるか否かを決定することが可能である。サーバー320は、認証が必要であるか否か、且つそうである場合には、クライエント310がどれを使用するかを選択することが可能な潜在的に複数のタイプの許容可能な認証メカニズムを包含する使用すべき認証のタイプに関して応答することが可能である。クライエント310が、既に、特定した認証機能性を有するものでない場合には、クライエント310は対応する認証アップデートをリクエストすることが可能である。
サーバー320は専用の認証ブローカーサーバーとすることが可能であり、又はサーバー320はその他の資源を提供することが可能である。例えば、サーバー320は本明細書に記載したような文書制御サーバーとすることが可能であり、且つ種々のクライエントにより開始されるオペレーション(例えば、文書ビューイング、リボーキング(revoking)及びセキュアリング)は、又、これらのオペレーションの完了がサーバーとコンタクトすることを必要とする場合のあるサーバーに基づくオペレーションとすることが可能であり、このようなクライエントにより開始されるサーバーに基づくオペレーションは、又、動的にデリバーされる認証プロセスを使用して認証をトリガすることが可能である。
サーバー320は、認証プロセス315を獲得し且つ認証プロセス315をクライエント310へ送ることによりリクエスト350に応答することが可能である。認証プロセス315はサーバー320によるか又は別のサーバー(例えば、エンタプライズシステム内のサーバー)により格納することが可能である。従って、認証コンポーネントは、サーバー320上、及び、オプションとして、別個の認証サーバー上のクライエント310において常駐することが可能である。認証は、既存のエンタプライズ認証メカニズム(例えば、パスワードに基づく認証)を使用するため、又は後にデプロイ即ち配備される場合のあるカスタム認証メカニズム(例えば、バイオメトリック認証、又は新たなスマートカードシステム)を実現するためにサーバー320を形態特定することを可能とするサービスプロバイダーインターフェースを介して取り扱うことが可能である。認証サービスプロバイダーインターフェースは、サーバー320がユーザを認証するために使用するメッソドを定義即ち画定することが可能であり、且つ認証サービスプロバイダーはウインドウズ及びLDAP(Lightweight Directory Access Protocol)認証用、及び、又、例えばカリフォルニア州プレザントンのデキュメンタムインコーポレイテッドにより提供されているドキュメンタム(Documentum)(商標)コンテント管理システムにおけるドキュメンタムログインマネージャを使用する認証のような1つ又はそれ以上の文書管理システム用に実現することが可能である。
認証プロセス315は、マシンをして認証手順を行わせるオペレーションを実行させるべく動作可能な命令を有するソフトウエアプログラムを表わしている。認証プロセス315は受取られるとクライエント310の1つのコンポーネントとなることが可能であり、又はスタンドアローンで且つクライエント310と通信することが可能である。認証プロセス315はカリフォルニア州サンノゼのアドビシステムズインコーポレイテッドにより提供されている例えばアドビアクロバット(商標)ソフトウエア等の文書ビューイングアプリケーションに対するプラグインとすることが可能である。該認証プロセスはサーバー320へ認証情報を通信するためにクライエント310により提供される既存のインターフェースを使用することが可能である(例えば、文書ビューイングアプリケーションは、以下に更に説明するような認証プロセス315と通信を行うセキュリティハンドラーコンポーネント310を包含することが可能である)。認証プロセス315はクライエント認証ライブラリ(例えば、ダイナミックリンクライブラリ(DLL))又はサーバーサービスプロバイダーとすることが可能である。
従って、クライエント310はリクエスト350をサーバー320へ送ることの結果として、新たな認証プロセスでトランスペアレントにアップデートさせることが可能である。従って、認証の特定のメカニズムはコンフィギャラブル即ち形態特定可能であり、且つ認証コンポーネントのエンド・ツー・エンドデリバリはユーザがアップデートに気が付くこと無しに実施することが可能である。アドミニストレーターがある文書に対して使用すべき認証手順を変えると、その文書に関して特定された認証を必要とするアクションを実施せんとする全てのクライエントは新たに特定されたメカニズムを使用して認証することが可能であるように自動的に且つトランスペアレントにアップデートさせることが可能である。認証手順はある文書に関するシーケンシャルなアクションの間で変えることも可能であり、従って、新たなリクエスト350は既にデリバーされた文書に関して実施されるべき同一のアクションに対して新たな認証プロセス315をデリバーさせることが可能である。
認証プロセス315は任意のローカルなハードウエアを必要に応じてインターフェースし且つ制御する(例えば、バイオメトリック認証手順はバイオメトリック読取装置を使用する)クライエント310の位置において認証手順を実現することが可能であり、且つ認証プロセス315はサーバー320に対して認証情報を通信するためにクライエント310により提供されるインターフェースを使用することが可能である。認証プロセス315は試みられるアクションに依存してマルチレベル及び/又はマルチファクタの認証を包含する多様な異なる認証手順を実現することが可能である。認証プロセス315は各リクエストに応答して動的にデリバーさせることが可能であるので、組織体は容易に認証手順を変えることが可能であり、必要に応じて文書制御システムに対して新たなセキュリティ特徴を付加させる。
認証プロセス315は入力(例えば、テキスト、バイオメトリックデータ等)についてクライエント310におけるユーザにクエリー即ち質問することが可能であり、受取った入力をエンコードし、且つエンコードした入力をサーバー320上の認証プロバイダーへ返すことが可能である(例えば、エンコードした入力をクライエント310内のセキュリティハンドラー317へ送り、それがその情報をサーバー320へ転送する)。サーバー320は直接的に又は認証サーバー330と関連して認証を取り扱うことが可能である。このパススルー認証メカニズムにおいては、クライエント310はサーバー320に対してクリデンシャル即ち身分証明書を与えることが可能であり、且つサーバー320は例えばユーザを認証するためのLDAP又はRADIUS等のサードパーティ認証システムと共に作業することが可能である。認証が成功すると、認証サービスプロバイダーは認証されたユーザネームを返すことが可能である。
更に、サーバー320はクライエント認証情報を直接的に解釈することが可能であることは必要ではない。クライエント310がサーバー320に対して直接的にクリデンシャル即ち身分証明書を与える代わりに、クライエント310は、最初に、認証を行い、次いで、何等かの結果的に得られる情報をサーバー320へ供給して、クライエント310が前に認証したことをサーバー320が再度検証することを可能とさせる。例えば、認証プロセス315はユーザを直接的に認証するために認証サーバー330とコンタクトすることが可能であり、且つ認証の受領はサーバー320へ返すことが可能である。サーバー320はその受領を認証サーバー330へパスすることが可能であり、且つ実際に認証が成功したことを検証することが可能である。従って、クライエント310は別の認証システムへ直接的にクリデンシャル即ち身分証明書を提供することが可能であり、次いで、認証されたトークンをサーバー320へ供給することが可能であり、それは別の認証システムでのユーザの同一性即ち識別を検証するために使用することが可能である。
サーバー320は複数の認証サービスプロバイダーを使用することが可能である。サーバー320は、以下に説明するインターフェースを使用して、必要に応じ、1つ又はそれ以上の認証プロセス315をクライエント310へ動的にデリバー即ち配達することが可能である。このような認証プロセス315はクライエント310へ確実にデリバーさせることが可能であり、且つソースコードライブラリローディングに関連して以下に説明するように、スプーフィング即ちなりすましを防止することが可能である。クライエント310は、又、例えばユーザネーム・パスワードテキストエントリをキャプチャすることが可能な認証ライブラリのような既に使用可能な1つ又はそれ以上のデフォルトの認証プロセスを有することが可能である。このようなデフォルト認証プロセスは認証サービスプロバイダー内のこの情報を抽出するためのユーザインターフェース(UI)カスタム化及びスタンダードフォーマットに対するサポートを包含することが可能である。更に、クライエント310は、ユーザがオペレーションを実施する度にログオンする必要性がないようにある時間期間の間クリデンシャル即ち身分証明書を維持することが可能である。このようなオフラインアクセスをサポートするためにクライエントのクリデンシャル即ち身分証明書を維持することの1つの例は図11−14に関連して後に更に説明する。
セキュアコード(secure code)ライブラリローディングは、これらの認証ライブラリがクライエントに関してスプーフィングされること(例えば、トロージャンホースプログラムにより)を防止しながら、ユーザの側で何等のアクション(又は知識)を必要とすることなしに、アップデートを与えるか又はクライエントをカスタム化するためにクライエントに対して1つ又はそれ以上の認証ライブラリ(例えば、DLL、ジャババイトコード、ジャバスクリプト等)をプッシュするために全てのサーバー320に対して実現することが可能である。サーバー320からダウンロードされた認証ライブラリの真正性を検証するためにあるメカニズムを設けることが可能である。サーバー320が認証ライブラリをクライエントへプッシュする場合に、サーバー320はそのライブラリのハッシュを計算し且つこのハッシュをクライエント310へ送ることが可能であり、及び/又はサーバー320はそれをクライエントへ送る前にその認証ライブラリに署名することが可能である。そのハッシュはクライエントにおいて局所的に維持することが可能であり、且つクライエント310はその認証ライブラリのハッシュを計算し且つロード時間においてそれを維持されている値に対して検証させることによりその認証ライブラリが有効なものであることを確かめることが可能である。更に、選択された組のライブラリをプロバイダーにより署名させることが可能であり、又は全てのライブラリをプロバイダーにより署名させることが可能であり、且つプロバイダーの公開鍵をクライエント310において維持することが可能である(例えば、DLLは、アドビ公開鍵が包含された状態で、クライエント310がアドビアクロバットソフトウエアである場合に、アドビにより署名することが可能である)。
図4はサーバーにより使用される認証技術を例示したフローチャートである。ある文書に関してアクションを取るためのリクエストが400において受取られる。このリクエストに応答して、認証プロセスが410において獲得される。その認証プロセスは420においてクライエントへ送られ、現在のユーザを識別し且つ該電子文書に関連する現在のユーザ及び文書・許可情報に基づいてその電子文書に関するアクションを制御する場合に使用される。従って、該認証メカニズムはサーバー上で特定することが可能であり、且つ適宜のコードをクライエントに対してトランスペアレントな態様で、必要に応じて、動的にクライエントへダウンロードさせることが可能である。
認証インターフェースはテキストに基づいたユーザネーム・パスワード記述化又は単一認証ライブラリのいずれかを与えることが可能である。このことは、認証用の2つのタイプのメッソドを使用して実現することが可能である。第一のメッソドはユーザネームのみならず不透明なトークン(例えば、途切れのないバイトストリング)を取ることが可能であるが、その実現例はいずれかを無視すべく選択することが可能である。第二のメッソドは、ユーザネーム、パスワード、及び、オプションとして、所望により「ドメイン」又は「接続ストリング」を特定することが可能な第三引数を取ることが可能である。認証プロバイダーはブルートフォースアタックに対しそれ自身の防御を実現することが可能であり、且つ正しいクリデンシャル即ち身分証明書が定義される場合であっても認証を拒否するオプションを有することが可能である。
実現例は、又、ユーザの認証が成功したか(検証された)否かを特定する認証応答を返すことが可能である。検証が誤りである場合には、何故それが検証されなかったかを表わす付加的なエラーメッセージ(例えば、このようなユーザは存在しない)を返すことが可能であり、このエラーメッセージはクライエントへ返すことは必要ではないが、サーバー上にログ即ち記録させることが可能である(認証システムを破壊するために使用することが可能な有用な情報をクライエントへ与えることがないように)。将来の認証試みにおいて使用すべきトークンも返すことが可能であるが、サーバーはこれを無視することが可能である。サーバーが誰が認証したかを理解することが可能であるように検証された試みに対してユーザネームも返されるべきである。アクセス制御リスト(ACL)サービスプロバイダーはこのユーザネームを取り且つそれをカノニカライズ即ち正規化することが可能であるべきである。ユーザネームの正規化形態はワークフローにわたり一貫性を持って使用することが可能であり、且つ該システム内の正規化形態を支配する定義はインプリメンテーション即ち実現例と共に変化することが可能である。
クライエントは複数のメッソド即ち方法を介して認証することが可能であるので、サーバーはデフォルトによりどのようにしてクライエントが認証すべく試みるべきであるか、又は認証が失敗した場合には次にどのメッソドで試みるべきかを記述することが可能であるべきである。認証サービスプロバイダーはどのようにして認証を行うべきであるか、例えば、特定のコードライブラリを介して、又はユーザに対して表示されている基本的なテキストエントリダイアログを介して行うべきであるかを記述することが可能である。コードライブラリを使用するべき場合には、サーバーはそのコードライブラリに関するメタデータをクライエントへ通信することが可能である(例えば、DLLの名前、寸法等)。基本テキストエントリダイアログを使用する場合には、サーバーは、そのUIがユーザに対してどのように見えるかを特定することが可能であり、例えば、タイトルは「あなたの会社のLDAPパスワードをエンターして下さい」というべきであり、その場合には、2個のフィールド「ユーザネーム」及び「パスワード」が必要とされるに過ぎない。
説明した認証システム及び技術に加えて、文書制御システム及び技術を提供することが可能である。これらは説明した認証と結合することが可能であり又は別々に使用することが可能である。
図5は文書制御システムにおけるワークフローを例示したブロック図である。クライエント510はネットワーク500を介して許可・ブローカーサーバー520と通信的に結合させることが可能である。文書供給源530もネットワーク500を介して許可・ブローカーサーバー520と通信的に結合させることが可能である。文書供給源530は文書レポジトリー(例えば、文書管理システム又はファイルシステム)及び/又は文書ハンドリング(取り扱い)システム(例えば、電子メールシステム)とすることが可能である。一般的に、文書供給源530は2つのタイプのうちの1つと考えることが可能であり、それら2つのタイプとは、(1)文書540が維持され且つ将来アクセス可能であることが予定されている文書供給源、及び(2)文書540が維持され且つ将来アクセス可能であることが予定されていない文書供給源(然しながら、実際的にはアクセス可能な場合がある)の2つである。
文書供給源530が第一のタイプのものである場合には、文書・許可情報550を文書供給源530において維持することが可能であり且つ必要である場合に許可・ブローカーサーバー520へ送ることが可能である。従って、文書・許可情報550は許可・ブローカーサーバー520において維持することは必要ではない(然しながら、このような情報はサーバー520に対して特定された許可・定義フォーマットにおいてサーバー520において維持することが可能である)。文書供給源530が第二のタイプのものである場合には、文書・許可情報550は、文書540が確保された文書545を作成するために確保される場合に、文書供給源530において、許可・ブローカーサーバー520において、又はクライエント510において発生することが可能であり、且つ文書・許可情報550は許可・ブローカーサーバー520において維持することが可能である。文書・許可情報550は、文書540に対して認可されているアクションのタイプを定義するACLとすることが可能である。更に、文書・許可情報はその文書自身より小さな粒度のレベルにおいてアクセス許可を特定することが可能である(例えば、該文書内の特定の頁、パラグラフ及び/又は単語へのアクセスを制御する)。
セキュアされた即ち確保された文書545は許可・ブローカーサーバー520により発生される暗号化鍵を使用して暗号化させることが可能であり、且つ確保された文書545はサーバー520及び文書545を識別する即ち同定する情報を包含することが可能である(例えば、サーバー520へのリンク及びサーバー520のコンテキスト内において一意的な文書識別子)。確保された文書545は任意の態様でクライエント510へデリバー即ち送ることが可能であり(例えば、電子メール、文書レポジトリーからダウンロード、コンパクトディスク上での受取り)、且つ確保された文書545は別の確保された文書(例えば、別の供給源から転送された電子メールへのアタッチメント即ち添付物)のコピーとすることが可能である。
クライエント510が確保された文書545に関してアクションを取ることが必要である場合には、クライエント510は、文書545がセキュア即ち確保されていることを判別し、サーバー520及び文書545を識別即ち同定する情報を抽出し、且つそのアクションに対応し且つ文書識別情報を包含するサーバー520へのリクエスト515を送ることが可能である。このリクエストに応答して、許可・ブローカーサーバー520は文書・許可情報550を第二の文書・許可情報555へ翻訳即ち変換することが可能である。この第二の文書・許可情報555はクライエント510における文書545に関してのアクションを支配するためにクライエント510へ送ることが可能である。クライエント510はカリフォルニア州サンノゼのアドビシステムズインコーポレイテッドにより提供されているアドビアクロバット(ADOBE ACROBAT(商標))ソフトウエアのような文書ビューイングアプリケーションとすることが可能であり、且つ文書545はPDF(商標)文書とすることが可能である。
図6は許可・ブローカーサーバーにより使用される文書制御技術を例示したフローチャートである。電子文書に関してアクションと取るためのクライエントからのリクエスト即ち要求が600において受取られる。このリクエストに応答して、その電子文書に関連する第一文書・許可情報が610において識別される。この第一文書・許可情報は第一許可・定義フォーマットにおけるものとすることが可能である。その識別された第一文書・許可情報は620において第二許可・定義フォーマットにおける第二文書・許可情報へ翻訳即ち変換される。この第二文書・許可情報は630においてクライエントにおける電子文書に関するアクションを支配するためにクライエントへ送られる。
再度図5を参照すると、第一文書・許可情報550は第二文書・許可情報555において使用される第二許可・定義フォーマットにおいて完全に定義することが可能な少なくとも1つのタイプの許可情報を包含する第一許可・定義フォーマットにおけるものとすることが可能であり、且つこれら2つの組の情報550,555の間の翻訳即ち変換は、リクエスト515と関連する付加的な情報に基づく翻訳即ち変換が関与する場合がある。例えば、第一情報550は第二情報555において完全に定義することが可能な時間依存性許可情報を包含することが可能である。何故ならば、許可・定義フォーマットは時間の概念を包含するものではないからである。この時間従属性許可情報はそのリクエストの時間を考慮に入れることにより現在のリクエストの制限された目的のために第二文書・許可情報555において定義することが可能である。第一文書・許可情報555が、リクエスト515の時間に関連して、そのリクエストされたアクションが認可されるものであることを表わす場合には、このことは第二文書・許可情報555において表現することが可能であり、且つ同様に、第一文書・許可情報550が、リクエスト515の時間に関連して、そのリクエストされたアクションが認可されるものでないことを表わす場合には、このことは、第二文書・許可情報555において表現することが可能である。その後のアクションがリクエストされると、再度その後のリクエストの時間に基づいて翻訳即ち変換を実施することが可能である。
別の例として、第一情報550は第二文書・許可情報555において完全に定義することが不可能なユーザ依存性許可情報を包含することが可能である。何故ならば、その許可・定義フォーマットはユーザの概念を包含するものではないからである。このユーザ依存性許可情報はユーザ及びグループの両方に基づいた文書制御情報を包含することが可能であり且つクライエント510を介して得られたユーザ・識別情報を考慮に入れることにより現在のリクエストの制限された目的のために第二文書・許可情報555において定義することが可能である。このユーザ・識別情報は、本明細書の他の箇所において説明した認証システム及び技術を使用して獲得することが可能である。その後のアクションがリクエストされると、新たに得られたユーザ・識別情報に基づいて再度翻訳即ち変換を実施することが可能である。更に、許可・ブローカーサーバー520により受取られた複数のリクエストは、サーバー520をして文書545に関してクライエント510において取られたアクションに関連する情報525を格納させることが可能である。これらのアクションはユーザネームと関連付けることが可能であり、又、クライエントと関連するネットワークアドレス(例えば、インターネットプロトコル(IP)アドレス)と関連付けることが可能である(両方共クライエントにより報告されるように且つサーバーにより報告されるように)。リクエストされたアクションは、又、取られたアクションと考えることが可能であり、且つ格納された情報525は、以下に更に説明するように、文書545と関連する格納されたアクション−取られた情報の監査を発生するためにサーバー520により使用することが可能である。格納された情報525は、又、サーバー520か又は文書供給源530のいずれかにおいて実施され及び/又はリクエストされたアクションを包含することが可能であり(例えば、ファイルシステム、文書管理システム等において実施されるアクション)、且つ発生された監査はこの情報を包含することが可能である。
図7は文書レポジトリー700と統合された文書制御システムにおけるワークフローを例示したブロック図である。許可・ブローカーサーバー730はバッチモードにおいて(例えば、サーバー730が最初にインストールされる場合)及び/又はコンテントマネージメントシステム(CMS)ワークフローにおける1つのステップとしてレポジトリー700における文書をセキュア即ち確保するために使用することが可能である。セキュアリング即ち確保を行うクライエント720はレポジトリー700から文書710を検索することが可能である。文書識別子715も検索し且つサーバー730へパスすることが可能である。文書識別子715はコンテントに関するアクションを制御するためにサーバー730により内部的に使用することが可能である。レポジトリー700がCMSである場合には、文書識別子715はCMS700において使用される文書識別子とすることが可能であり、且つレポジトリー700がファイルシステムである場合には、文書識別子715はその文書のURL(ユニバーサルリソースロケーター)とすることが可能である。
サーバー730は、文書・許可情報740(例えば、CMSからのACL又はファイルシステムからのファイル許可情報)を獲得するために文書識別子715を使用してレポジトリー700と通信を行うことが可能である。文書許可情報740は文書710に対して特定的なものとすることが可能であり又は複数文書に対する許可を定義することが可能である(例えば、文書管理システムにより維持されているポリシー、又はファイルシステムにより維持されている1組のファイル許可)。獲得された文書・許可情報740は文書710に対する初期的ACLを発生するためにサーバー730により使用することが可能である。初期的ACL、文書識別子715、サーバー730により発生された鍵を包含することが可能な1組のデータ750は、セキュアリング即ち確保を行うクライエント720へ送り戻すことが可能である。クライエント720はその1組のデータ750を使用して確保された文書760を作成することが可能であり、それは文書710の暗号化されたバージョンである。この確保された文書760は初期的ACL、文書識別子715、文書760の一部としてパッケージ化した鍵を包含することが可能である。
クライエントが第二文書760に関してアクションを試みる場合(例えば、文書760又はこの文書のいずれかのコピーを開こうと試みる)、文書識別子715を該文書から検索し、サーバー730へ送り、且つ文書760に対する現在のACLを獲得するために使用することが可能であり、尚、現在のACLはレポジトリー700内のその文書の現在の状態を反映する。従って、セキュアされた即ち確保された文書に関して取られるアクションは、文書レポジトリー700内の供給源文書に対する現在の許可を定義する文書・許可情報に基づいて制御することが可能である。この供給源文書は最初に確保した文書760とすることが可能であり、又は、確保された文書がレポジトリー700へ送り戻されない場合には、その供給源文書はオリジナルの文書710とすることが可能である。サーバー730は文書・許可情報を格納することが必要ではない。何故ならば、この情報はレポジトリー700から検索することが可能であり且つ文書760へのアクセスが要求される場合に翻訳することが可能だからであるが、サーバー730は他の目的のためにその文書・許可情報を格納する場合がある。
図8は電子メールクライエント800と統合された文書制御システムにおけるワークフローを例示したブロック図である。電子メールクライエント800は電子メージシステムに対するプラグインとすることが可能であり且つ電子メールに対するアタッチメント810を確保するために使用することが可能である。ユーザが電子メールアタッチメント810をセキュア即ち確保することを選択する場合に、電子メールクライエント800はユーザがそのアタッチメントに対して適用することを所望する規則をユーザに対してプロンプト表示することが可能であり及び/又はその規則はその電子メールに対する受取人リストに基づいて自動的に発生させることが可能である。その規則はセキュアリング即ち確保を行うクライエント820においてACL830へ変換させることが可能であり且つ許可・ブローカーサーバー840へ送ることが可能である。サーバー840はそのACLを格納し且つ上述した如くに1組のデータ850をリターン即ち返すことが可能である。このデータ850はセキュア即ち安全なアタッチメント(添付物)860を作成するために使用することが可能であり、そのアタッチメントはサーバー840において発生させ且つ格納することがコーティングとが可能な文書識別子と、初期的ACLと、暗号化鍵とを包含している。
クライエントが確保された文書860に関するアクションを試みる場合(例えば、文書860又はこの文書のいずれかのコピーを開こうと試みる)、該文書識別子は該文書から検索し、サーバー840へ送り、且つ文書860に対する現在のACLを獲得するために使用することが可能であり、尚現在のACLはサーバー840内に格納されている文書ACLの現在の状態を反映する。該電子メールの送信者は、該電子メールを送った後においても、文書860に対する現在のACLを変換させるためにサーバー840と相互作用を行うことが可能である。従って、確保された文書に関して取られるアクションを制御することが可能であり、且つ確保された文書が配信された後においても、その文書に関するセキュリティの性質を修正することが可能である。
図5乃至8は文書制御システムにおいて実現することが可能であるようなアクセス制御インフラストラクチャを例示している。図2に関連して説明したサーバーの文脈において、アクセスサービスプロバイダーを実現することが可能であり、その場合に、アクセス制御はアクセス制御リスト(ACL)により定義することが可能である。ACLは本人(例えば、ユーザ及びグループ)に対する許可(例えば、印刷することが可能、見ることが可能等)をマップすることが可能であり、且つその逆に又真である。アクセス制御プロバイダーインターフェースは、これらの本人をワークフローにわたって一貫して使用することが可能な正規形態へマップするためにサーバーにより使用されるメッソドを定義することが可能である。アクセス制御サービスプロバイダーは例えばNIS(ネットワークインフォメーションサービス)、LDAP、電子メールシステム(例えば、インターネットメーリングリストを取り扱うために主にUNIXマシン上で稼動する公的なソフトウエアプログラムであるMajordomo)等の種々のシステムに対して実現することが可能である。更に、このアクセス制御インフラストラクチャは共用ACLをサポートすることが可能である(例えば、複数の文書間で共用されるべき1個のACL、このような共用ACLはポリシーと呼称される場合がある)。
図9は図2の例に対応する文書制御サーバー900を例示したブロック図である。サーバー900は多様な基本的な特徴をサポートすることが可能であり、例えば、(1)アクセス制御−誰が文書にアクセスすることが可能であるか且つどのような許可を有しているかを制御する能力、(2)リボケーション即ち失効−それを最早見ることが出来ないように文書を失効させる能力、(3)満期及び/又は有効期間−その前後においてその文書を見ることが不可能な時間を特定する能力、(4)文書シュレッディング−その文書の暗号化鍵を破壊することによりその文書の満期により文書制御サーバーに関して文書を回復不可能とさせる能力、(5)監査−文書に関して実施されるアクションを監査する能力(例えば、ビューイング、試みられたビューイング等)、(6)オフラインアクセス−オフラインである場合に文書へアクセスする能力、を包含している。更に、アーキテクチャを変化させること無しに特徴を容易に付加させることが可能である。
認証サービスプロバイダー910は、本明細書の他の箇所において説明したように実現することが可能であり、且つアクセス制御サービスプロバイダー930は説明したアクセス制御インフラストラクチャに影響を与えることが可能である。ACLは1組のアクセス制御エントリ(ACE)及び1組のプロパティを包含することが可能である。ACLプロパティはACL全体(例えば、満期日)へ適用することが可能である。ACEは本人を規則に対してマッピングすることが可能であり且つ本人、規則、ACEに対する有効期間を包含することが可能である。ACLが評価される場合に、それらの有効期間内に存在するACEのみを考慮することが必要であるに過ぎない。有効期間は異なるユーザ及びグループが異なる時間に文書をビュー即ち見ることが許可されることを可能とする。例えば、ACEは、「渉外担当職員のみがその公開日前に文書を見ることが出来るに過ぎず、その後には誰でもその文書を見ることが出来る」を特定することが可能である。
規則は1組のプロパティ及び認められた及び拒否された許可を包含することが可能である。これらの許可は定義されたビューイングクライエントアプリケーション(例えば、アドビアクロバット(商標)ソフトウエア)及び/又はサーバーに対して特定的なものとすることが可能である。更に、プロパティのように許可は拡張可能なものとすることが可能であり、従って、ACLを変化すること無しに新たなものを付加することが可能である。
サーバー900は何等の外部的なACLメカニズムを使用すること無しに、セキュアリングクライエント(Securing Client)インターフェースを使用してアクセス制御リストをユーザが特定することを可能とするそれ自身の簡単なメカニズムを有することが可能である。更に、サードパーティACL/権利仕様はサーバー900によって使用される内部的なACLフォーマットへ翻訳即ち変換させることが可能である。サーバー900は他のシステムのアクセス制御ファシリティ(例えば、文書管理システム、データベースシステム、ファイルシステム等)と統合することが可能であり、これらのシステムにおける機能性にレバレッジを与える。
サーバー900は不完全な情報を包含する場合のある多様なユーザ及びグループレポジトリーと統合することをサポートすることが可能であり、且つサーバー900はカノニカル(正規)ユーザ中心的な態様でこの情報へ効率的にアクセスすることを可能とさせることが可能である。サーバー900及びクライエント980の両方の上でACLを操作するためのファシリティ即ち設備を設けることが可能である。サーバー900は、サーバーを基礎にした文書セキュアラー(securer)960か又はクライエントを基礎とした文書セキュアラー990のいずれかを使用して、文書がセキュア即ち安全確保される前にACLが有効なものであることを確保するためにACLを検証することが可能である。ACLは拡張可能なものとすることが可能であり且つ不透明なサードパーティ許可を許すことが可能である。更に、文書のセキュアリング即ち安全確保はサーバー900へ接続されてオンライン態様で行うことが可能である。何故ならば、サーバーはACLを検証することが可能だからである。
サーバー900はどの本人(例えば、ユーザ及びグループ)がある文書に対してどの許可を有しているかを特定するためにACLを文書と関連づけることが可能である。本人は複数の名前を有することが可能であるが、本人は、又、区別されたカノニカル(正規)名前を有するべきである。サーバー900のタスクのうちの1つは、ある本人の種々の名前をそのカノニカル(正規)名前へ変換することが可能なことである。許可及びプロパティの両方が認可されたオペレーションを記述することが可能であるが、許可はブール型の値とすることが可能であり且つプロパティは多様なタイプのものとすることが可能である。許可は、明示的に認められており且つ明示的に否定されていない場合に認めることが可能であり、宣言されていない許可は暗示的に否定することが可能である。
各文書は単一のACLと関連付けることが可能である。典型的に、この関係は1:1とすることが可能であるが、ポリシーの場合にはこの関係はN:1とすることが可能であり、その場合には、複数の文書が同一のACLを共有する。電子文書ファイルはセキュアリング即ち安全確保の時までのACLの不変のスナップショットを包含することが可能である。サーバー900は、又、最も最近のACLのコピーを維持することが可能であり、それは認可された個人により修正することが可能である。サーバー900はACLが使用される前にそれらを正規化することが可能である(例えば、全ての本人の名前をそれらのカノニカル即ち正規形態へ変換する)。このことは、ACLが作成されるか又は修正される場合には何時でも行うことが可能である(例えば、セキュアリング即ち安全確保の時において、又はACL定義が変化される場合)。ACLがカノニカル即ち正規形態になると、それはクライエント980及びサーバー900の両方に関するACLを評価することを一層簡単なものとすることが可能である。何故ならばグループ内のメンバーであることの決定及び特定の認可されたユーザに対する関連する権限の決定は基本的なストリングマッチングを介して行うことが可能だからである。
特定の時刻における特定のユーザに対するACLのサーバー側評価(例えば、オンラインビューイング、失効、文書監査検索等のため)はサーバー900内において直接的に実行することが可能である。サーバー900は、現在有効であり且つ認可されたユーザ又は彼女又は彼がメンバーであるグループのいずれかを包含するACEを探すことによりACLを検査し、次いで、許可及びプロパティを抽出することが可能である。サーバー900内の正規化を取り扱うためのサーバーインフラストラクチャは3つの層を有することが可能である。第一層は非正規化本人をそれらの正規化形態へマッピングするサーバー900内のメモリ内キャッシュとすることが可能である。第二の永続的なキャッシュは正規化マッピング及びグループ内ユーザ情報を格納することが可能であり、このキャッシュは潜在的に複数のサーバー900にわたり使用することが可能である。第三層はアクセス制御サービスプロバイダー930とすることが可能である。
アクセス制御サービスプロバイダー930は何等かの組の非正規化ストリングの正規化形態を与える1組の主要なモジュールを包含することが可能である。それらの主要なモジュールは、正規化形態が正規化グループ又は正規化ユーザに対応するか否かを特定することが可能である。然しながら、そのアーキテクチャは、特定の主要なモジュールが一般的に全ての答えを知っていること、又は特定の非正規化ストリングに関して完全な答えを与えることが可能であることを仮定することは必要ではない。ユーザ及びグループレポジトリーのコンテキスト即ち文脈内において複数の専門分野をサポートするために、各主要なモジュールはその分野に関してそれがオーソリティである分野を公表することが可能である。サーバー900内において直接的に実行することが可能な正規化プロセスは非正規化形態を取り且つリターンされる値が正規化であることを宣言するまでオーソリティを有するモジュールにクエリー即ち質問することによりそれを反復的に洗練させることが可能である。
サーバー900におけるメッソド970は認証されたユーザ中心的なものとすることが可能である。何故ならば、典型的な筋書きは、サーバー900が、彼女又は彼がどのグループにいるかを考慮しながら特定のユーザがあるオペレーション即ち動作を実施するための許可を有しているか否かを決定することが関与するからである。多くのサードパーティグループメカニズムは「あるグループのメンバーは誰か?」によってアクセス可能なグループメンバーシップを組織化するものであり、「どのグループが特定のユーザを包含するか?」によるものではない。更に、多くの場合に、グループは非正規化形態のユーザを包含している場合がある。従って、グループレポジトリーの出力はサーバー900により直接的に使用可能なものでない場合があり、且つ中間の翻訳即ち変換を使用することが可能である。
グループプロバイダーに対して非常に低い共通点を仮定することが可能である。グループプロバイダーは既知の正規化グループのリストを提供することが可能であるものと予測することが可能である。従って、有効なグループはグループモジュールにより特定された既知のグループの集合内にあるものとすることが可能である。グループモジュールは、又、グループ中心的態様で組織化されたメンバーシップ情報を提供することが可能でありそれは多数の既存のレポジトリーの実現が与えられる場合に効率的なアプローチである場合がある。
サーバー900はシステム内で後に使用するためにグループ情報をバッチ予備処理する能力を有することが可能である。例えば、1つのグループのサーバー内における1つのサーバーは日毎にこのようなバッチオペレーションを稼動することが可能である。このことはサーバーコアにおいて実行することが可能であり且つ全てのグループの列挙、メンバーの正規化、グループネスティングの検査及び閉包の計算を関与させることが可能である。閉包計算の殆どは格納プロバイダー920内とすることが可能である。何故ならば、それはデータベースシステムを使用してこれらのタイプのオペレーションを実施するのに自然だからである。
本人はユーザか又はグループのいずれかとすることが可能である。本人はストリングとして表現することが可能である。グループは本人を包含することが可能である。本人は、評価し且つ主要な正規形態へ還元させることが可能な多数のエイリアス表現を有することが可能である。ユーザ及びグループは複数のドメイン即ち分野のものとすることが可能である。例え文書制御システム統合が電子メールに基づくものでない場合であっても電子メールアドレスにおいて使用されるname@sub.domain.comフォーマットが関与する表記法を採用することが可能である。更に、正規化形態はどのようなものとすべきかの仕様は一般的なシステムにおいて未定義のものとすることが可能である。何故ならば、この仕様は統合依存性の場合があるからである。特定の統合コンテキスト(文脈)における例は次のような場合がある。「herbach@company.com」は「jonathan herbach@corp.company.com」及び「jherbach@company.com」を包含する多数のストリングに対する正規化形態であり、同様に、「atg@company.com」は「ate@sea.company.com」に対する正規化形態である。
アクセス制御サービスプロバイダーインターフェースは2つのサブタイプに分割することが可能な本人プロバイダーを包含することが可能であり、これら2つのサブタイプとはユーザモジュール及びグループモジュールである。これらのモジュールの目標は、正規化情報及びグループメンバーシップ情報を提供することが可能なことである。本人プロバイダーは、本人を出来る限り正規化形態へ翻訳即ち変換することが可能である。本人プロバイダーは、リターンされた値が正規化形態にあるか否か、それがグループ又はユーザとして知られているか否か、及びリターンされた結果が何時までキャッシュ内において有効なものと考えることが可能であるかを表示することが可能である。本人プロバイダーは1組の通常表現定義として特定されたオーソリティ分野を有することが可能であり、且つグループプロバイダーはそのオーソリティ分野内においてそれが知っている全てのグループを列挙することが可能である。
種々のサーバーメッソド970をサポートするためにユーザ及びグループ情報を論理的に供給することが可能である。何故ならば、このような情報の複数の供給源が存在する場合があるからである。従って、幾つかのユーザモジュール及び幾つかのグループモジュールが存在する場合がある。ハイレベルから、各自を異なって形態特定することが可能であり、異なるバックエンドシステムとインターフェースとすることが可能であり、且つ多分複数の分野にわたるオーソリティとすることが可能である。更に、異なるモジュールをドメイン(分野)オーソリティとして定義することはエクストラネットのサポートを与えることを助けることが可能である。
本人モジュールのコンフィギュレーション即ち形態特定は、適宜のクラスファイルを記述することが可能である。各モジュールは、又、オーソリティとは何かをコンフィギュア即ち形態特定するためのインフラストラクチャのみならず、例えばコネクトストリングズ(connect strings)及びプリフェレンシズ(preferences)等の何等かのモジュール依存性コンフィギュレーション情報を有することが可能である。異なる実現例は、又、システムの残部との統合を容易化するために事前処理及び後処理を支配する規則を有することが可能である。
ACLマネージャ940は任意の数の本人プロバイダーをローディングすることに関連するコードを包含することが可能である。図10は図9からのサーバーの詳細の例を例示したブロック図である。該サーバーはグループメンバーシップ又は正規化マッピング用のACLマネージャ1010により取り扱われる主要なメモリ内キャッシュを有することが可能である。ユーザは一般的なリクエストに対してサービスプロバイダーがコール即ち発呼されることが必要でないようにメモリ内に最近の正規化マッピングを格納することが可能である。
ACLマネージャ1010は、又、クロスメソッド(cross−method)コードを包含することが可能であり、且つACLサービスプロバイダーマネージャ1020は格納レベル(例えば、クロスサーバー)キャッシュシングに対してトランスペアレントなインターフェースとすることが可能である。ACLサービスプロバイダーマネージャ1020へのクエリーは、最初に、格納プロバイダー1030が必要な情報を有しているか否かをチェックするようにし、且つそれをリターンすることが可能である。そうでない場合には、ACLサービスプロバイダーマネージャ1020はユーザ及びグループモジュール1040に対してクエリーを発行し且つ格納レイヤーへ出来るだけ多くの情報を持続することを試みることが可能である。キャッシュエントリはリターンされた正規化結果と関連する満期毎に削除することが可能である(例えば、格納プロバイダーか又は本人モジュールのいずれかにより特定される如く)。
再度図9を参照すると、格納サービスプロバイダー920は、永続的な格納部においてデータを作成し且つ検索するために使用するモジュールの集合を記述するインターフェースを提供することが可能である。このインターフェースはシステム内の最大のサービスプロバイダーインターフェースである場合があり且つ文書制御システム内に新たな統合及び特徴が実現される場合に更に成長する場合がある。格納サービスプロバイダー920は以下のエリアにおいてメッソドを提供することが可能である。即ち、(1)文書チケットの割当て−サーバー上に確保されている各文書はGUID(グローバルユニークアイデンティファイア)を具備するチケットが与えられる場合がある、(2)文書失効の記録、(3)ユーザ、グループ、文書、ルートサーバー鍵に対する暗号化鍵の保存、(4)ユーザエイリアス及びグループメンバーシップデータのキャッシュ、(5)ユーザアクセス及びセキュアリングの監査、(6)名前付きACL又はポリシーの管理及び格納、(7)文書に対する現在のACLの格納及び検索、(8)文書に対する初期的ACLの作成等である。
格納プロバイダーインターフェースは、多様なバックエンドシステムにわたり複数の実現例を可能とさせるべく設計することが可能である。このことは、ODBC及びJDBCの両方と共に作業を行うことが可能な汎用リレーショナルデータベース実現例を使用して行うことが可能である。更に、格納プロバイダーインターフェースは、Documentum(商標)システム等のコンテント管理システムに対する実現例をサポートすべく設計することが可能である。チケット発生は簡単明瞭なものである場合がある。例えば、このことは、各予約毎にインクリメントされるデータベース内の整数を有することにより実現することが可能である。文書失効は、そのチケットに基づいてある文書を失効させ且つ与えられたチケットと関連する文書が失効されか否かを別にクエリー即ち質問する能力として定義することが可能である。格納プロバイダーは、又、名前により任意のバイトアレイとすることが可能な鍵を格納し且つ検索することが可能である。
格納プロバイダーは、又、ユーザエイリアス及びグループメンバーシップデータに対する格納を提供することが可能である。エイリアス及びメンバーチップ情報は、アクセス制御リストを評価するために使用することが可能であり、格納プロバイダー920は、例えアクセス制御サービスプロバイダー930がこの情報への効率的なアクセスを提供することが可能でない場合であっても、妥当な性能を確保することを助けるためのキャッシュとして使用することが可能である。例えば、制限的な場合において、アクセス制御情報は所要のデータを与えるフラットファイルから来る場合がある。ユーザ及びグループエイリアス情報をキャッシュする場合に、格納プロバイダーは、ユーザ及びグループプロバイダーのように、本人に基づいてクエリーの検索を実施することが可能である。リターンされるデータは同一のフォーマットのものとすべきであり、又有効性の評価を与える。その目標は、サーバーがユーザエイリアス又はグループメンバーシップデータを使用する場合には、提供されたデータが実時間であるか又はキャッシュされたバージョンであるかをサーバーが区別すべきものではないようにすることとする場合がある。
与えられたユーザ又はグループに対して、そのユーザ又はグループの正規名を得ることが可能である。ユーザの場合には、このユーザが属するグループの全てを得ることが可能である。エイリアスデータに対する変化はすぐさま見ることが可能なものとすることが可能である。グループメンバーシップキャッシュに対する変化は、閉包計算のためにより複雑なものとなる場合がある(グループを包含するグループのグループメンバーシップ)。そのために、グループコンテント変化は、サーバーが現在のところグループの閉包を計算している場合にはすぐさま見ることが可能なものでない場合がある。
文書セキュアリングオペレーション及び文書アクセス試み(成功したか否か)は格納プロバイダー920の監査メッソドを介して監査することが可能である。セキュアリング即ち安全確保及びアクセスイベントを記録するためのメッソドを定義することに加えて、該インターフェースは、又、監査履歴に関する2,3のクエリーメッソドを定義することが可能である−文書チケットによる及びユーザによるクエリー。格納プロバイダーは、又、ACLの作成及び修正を可能とさせるメッソドを実現することが可能である。これらのメッソドは監査履歴情報を維持するために使用することが可能である。格納サービスプロバイダー920の複数の実現例を必要に応じて実現することが可能であり、リレーショナルデータベースを使用すること及び/又は監査ログの既存の文書管理システム概念を使用すること(例えば、Documentum(商標)監査トレールオブジェクト)を包含している。
格納プロバイダー920は名前によりACLを格納及び検索することが可能である。ACLはプライベートACL(例えば、特定のユーザに対して)又はパブリックACLとすることが可能である。パブリックACLは種々のユーザによりセキュア即ち確保される複数の文書にわたり共有されることが意図されているポリシーを表わす。ACLの格納されている表現は格納プロバイダーにとってのみ関心がある場合がある。何故ならば、そのプロバイダー実現例は単にACLを引数として取り且つACLを結果としてリターンすべく設計することが可能だからである。ACLはアクセス制御リストインターフェースにより記述することが可能である。
格納プロバイダーはACLを作成し、アップデートし、削除し、検索するための1組のメッソドを有することが可能である。これらのメッソドは名前付きACL又はポリシー(例えば、パブリックACL)のいずれかを記述する引数を取ることが可能である。格納されているACLを与えられた文書と関連付ける(チケットGUIDを介し)するためのメッソドも存在することが可能である。与えられた文書をACLと関連付ける場合に、チケットデータも格納することが可能である。このチケットデータは特定の文書に対して特定的とすることが可能であり且つどの本人がその文書をセキュア即ち確保したかということのみならず何時その文書がセキュアされたかの日付のような文書に特定的な情報を格納するために使用することが可能である。文書間において共有されるACLは、又、セキュアリングの時間又はその文書をセキュア即ち確保した人に関する制御を特定することが可能である。チケットデータは、又、サービスプロバイダーに対応する情報を提供するためにセキュアリングクライエントにより使用することが可能である。例えば、Documentum(商標)システム統合においては、チケットデータは供給源文書に対しDocumentum(商標)GUIDを提供することが可能である。サービスプロバイダー情報は、又、サービスプロバイダーに対応するその文書の適宜の情報的側面をキャプチャする1組の名前/値の対を包含するサービスプロバイダーから受取られるバイトシーケンスとすることが可能である。
それらの名前によりACLを検索するための能力に加えて、該サーバーは、又、特定の文書に対するACLを検索することが可能である。使用するためにACLを検索する場合に、該サーバーは、オプションとして、パラメータとして本人(主体)を提供することが可能である。このことはヒントを与え、最適化させた格納プロバイダーがその特定の本人に対して関連性のあるACLのサブセットをリターンすることを可能とさせる。
ACLを作成し且つ格納する場合に、セキュアリングクライエントに対して提供されたサービスプロバイダー特定データをパススルーする機会も存在している。このことはどの特定のACLをこの文書が参照するかに関するヒントをサービスプロバイダーへ与えるためのエンド・ツー・エンドメカニズムを与えることが可能である。このことはチケットデータに関連して上に説明した能力と類似しているが、文書ではなくACLに対して特定的なものとすることが可能である。
格納プロバイダーはACLを解釈することは必要ではない。格納プロバイダーは何等解釈を行うこと無しに単純にACLを格納し且つ検索することが可能である。ある文書が作成されると、それは初期的なACLを与えることが可能であり、それは該文書内に格納し且つその文書に対するその他のACLが該クライエントにおいて局所的に存在しない場合にオフラインアクセス制御のために使用することが可能である。格納インターフェースは、これらの現在及び初期的なACLがサーバーのセキュアリング又はビューイングコンポーネントへ送り戻されるメッソドを提供することが可能である。一般的に、2つの主要な場合が存在しており、即ち(1)セキュア即ち確保されるコンテントが文書制御システム外において何等別のアイデンティティ即ち識別性を有するものでない場合(例えば、そのコンテントが電子メールのアタッチメントである場合)、(2)そのコンテントが文書制御システム外においてアイデンティティ即ち識別性を有している場合(例えば、そのコンテントがDocumentum(商標)レポジトリー内部の文書のPDF(商標)レンディションである場合)である。後者の場合においては、サービスプロバイダーはそのコンテントが派生されたオブジェクトに対してレポジトリーが適用する現在の規則によりそのコンテントに対して動的にアクセスを制御することが可能なものとすべきである。更に、ACLが保存されると、それは所有者により、又はポリシーの場合におけるシステムアドミニストレーターにより修正することが可能である。
初期的な及び現在のACLの両方が格納サービスプロバイダーにより発生させることが可能であり、且つそのコンテントに対するアクセス制御は、その基礎となるオブジェクトに関するアクセス制御により仲介させることが可能である。そうでない場合には、そのコンテントの管理はオンライン及びオフラインの両方の場合において精密に同一のものである場合がある。更に、ブール型サポートプロバイダーメッソドを提供することが可能であり、その場合にクライエントはどのサービスがサービスプロバイダーによりサポートされているかを判別するために使用することが可能である。従って、クライエントはどのサービスプロバイダーを使用することが可能であるかの期待を有することが可能であり、且つこのサービスが実際にこの文書制御サーバーコンフィギュレーションによりサポートされるかどうかをサポートプロバイダーメッソドから判別することが可能である(例えば、これは、どの組の名前/値の対がチケットデータ内のサービスプロバイダー情報内に合法的に包含させることが可能であるかを判別する)。もしもsupportsProvider()即ちサポートプロバイダーメッソドがあるサービスに対して真である場合には、そのインターフェースの残部を実現すべきである。従って、顧客は文書レポジトリー内のコンテントを保護するため及び電子メールアタッチメントを保護するための両方のために同一のサーバーを使用することが可能である。
サーバー900は、又、暗号コンポーネント950を包含することが可能であり、それは種々の生来的な暗号化コンポーネント(例えば、Java暗号拡張又は.Net暗号コンポーネント)を利用する二重の実現例を有することが可能である。一般的に、文書制御サーバーは幾つかの暗号プリミティブを使用する。これらの暗号プリミティブ実現例は一般的なインターフェースの背後に配置させることが可能であり、例えばセキュリティ特徴を付加させること及び/又は特定のエンタプライズの必要性に対処すること等の必要に応じてそのインプリメンテーション即ち実現例を変化させることを可能とさせる(例えば、鍵寸法の変化等)。更に、これらの暗号プリミティブの実現例はカスタムオペレーションのみならず標準的な暗号オペレーションを使用することが可能である。
暗号コンポーネント950のインターフェースは以下のプリミティブに対するサポートを提供することが可能であり、即ち、(1)対称的暗号化及び復号化(暗号解読)(例えば、128ビットAES(Advanced Encryption Standard)及び/又は128ビットRC4(Rivest Cipher 4))、(2)公開鍵暗号化及び復号化+署名及び検証(例えば、1024ビットRSA)、(3)文書のインテグリティを与えるために使用されるメッセージ認証コード(MAC)(例えば、128ビット鍵を有する一方向HMACSHA1ハッシュ関数)、(4)同一の値(例えば、SHA1)へハッシュする2つのメッセージを見つけることは計算的に実現不可能であるセキュアハッシュ関数、(5)暗号鍵を作成し且つメッセージ内にランダム性を導入するために使用される乱数発生(例えば、.Net実現例に対する.Netフレームワークで与えられるセキュア乱数発生器及びJava実現例における乱数発生用のjava.SecureRandomクラス)である。これらの暗号プリミティブは、ジャバ暗号拡張(JCE)メカニズムを使用してジャバ(Java)において及び.Netサービスプロバイダーメカニズムを使用して.Net言語のうちの1つで実現することが可能である。この暗号インターフェース及び暗号インプリメンテーション(実現例)もクライエント上で使用すべきである。というのは、文書制御システムにおけるクライエント及びサーバーの両方がこれらの暗号記述を使用して文書をセキュア即ち確保し且つアクセスすることが可能だからである。暗号インターフェースは、又、C++で書かれたクライエント上で使用される任意の暗号オペレーションに対してC++でインプリメント即ち実現することが可能である。
図11は文書制御システムにおいて使用することが可能なオフライン文書アクセスモデルを例示したブロック図である。クライエント1110はネットワーク1100を介して文書制御サーバー1120と通信的に結合させることが可能である。文書制御サーバー1120はマルチオフライン利用モデルを提供することが可能であり、文書が最初にアクセスされる場合にユーザがオンラインでなければならず且つその後に特定した時間期間の間、即ちリース期間の間その文書をオフラインでアクセスすることが可能な従来のオフラインアクセスモデルに類似したリースモデルを包含している。更に、文書制御サーバー1120は初期的アクセスモデルを提供することが可能であり、その場合には、ユーザはその文書が最初にアクセスされる場合にオフラインとすることが可能である。本明細書において使用されているように、「オンライン」という用語は、クライエント1110がサーバー1120と通信することが可能であることを意味しており、従って、クライエント1110がオンラインである場合には、クライエント1110はネットワーク1100と接続されており、且つサーバー1120が動作可能状態である。
一般的に、クライエント1110及び文書制御サーバー1120はクライエント1110において維持されているオフラインアクセス情報に対する何等かの変化をアップデートさせるために周期的に同期し、その場合にこのオフラインアクセス情報は、クライエント1110がネットワーク1100へ接続されている間に未だにアクセスされていないセキュア即ち確保された文書に関するアクションを可能とさせるためにクライエントを効果的に事前認可することが可能である(例えば、電子メールを介してクライエントにおいて受取られているが未だに開かれていないセキュア即ち確保された文書)。クライエント1110はリクエスト1130を文書制御サーバー1120へ送ることが可能である。リクエスト1130はそのオフラインアクセス情報に対するアップデートのためのものとすることが可能である。例えば、サーバー1120へ周期的に接続し且つオフラインアクセス情報をダウンロードするクライエント1110をエージェントに設けることが可能であり、この同期オペレーションは、クライエント1110のユーザがそのアップデートに気が付くこと無しに、バックグラウンドにおいて静かに行うことが可能であり、次回にユーザが文書を開こうと試みると、そのダウンロードされたオフラインアクセス情報はオフラインにある間に将来のアクセスのためにクライエントにより使用することが可能である。
リクエスト1130は周期的にサーバー1120へ送られる任意のタイプのリクエスト(要求)とすることが可能であり、例えば文書1135に間してアクションを取るためのクライエント1110からのリクエストとすることが可能であり、その文書はクライエント1110又はその他の箇所に位置されているものとすることが可能であり且つセキュア即ち確保された文書かそうでないものとすることが可能である。サーバー1120はリクエスト1130に関連してクライエント1110における認証されたユーザを検証することが可能であり、且つこの認証されたユーザの検証は同期オペレーションを開始させることが可能である。例えば、サーバー1120は上述したいずれかのようなサーバーとすることが可能であり、且つ同期オペレーションは認証を使用するその他のオペレーションを利用することが可能である(例えば、ユーザがオンラインにある間に文書へアクセスするか又はセキュア即ち確保すべく試みる場合)。一方、同期は事前の認証無しで発生することが可能であり、サーバー1120はそのユーザのみが解読することが可能であるようにそのユーザの公開鍵を使用してオフラインアクセス情報を暗号化することが可能であり、その暗号化されたオフラインアクセス情報はクライエント1110により維持させることが可能であり、且つそのユーザが次に文書を開こうと試みる場合に、その維持されている情報を解読し且つ使用して以下に更に詳細に説明するようにそのクライエントのセキュア即ち安全な局所的データベースをアップデートさせることが可能である。
クライエント1110がサーバー1120と同期する場合に、サーバー1120はその現在のユーザが属する複数のユーザからなるグループと関連している鍵1145を包含するオフラインアクセス情報1140を送ることが可能である(図面中においては1個又はそれ以上の暗号鍵を表わすために1個の鍵の1つの絵が模式的に使用されている)。この鍵1145は、電子文書1150内の第二鍵1155を解読することによりオフライン中にセキュア即ち確保されている電子文書1150へアクセスするために使用することが可能である。電子文書1150は鍵1155で暗号化されているコンテントを包含することが可能であり、且つ電子文書1150は鍵1145で暗号化されている鍵1155を包含することが可能である。一方、この鍵暗号関係において1つ又はそれ以上のレベルの間接化が存在する場合がある。例えば、鍵1145は鍵1155を暗号解読するために使用することが可能であり、鍵1155は文書1150のコンテントを解読するために使用される別の鍵を暗号解読するために使用することが可能である。間接化レベルの数及び使用される鍵の数に拘わらずに、複数のユーザからなるグループと関連している鍵1145は、電子文書1150内の第二鍵155を暗号解読することにより、オフライン中に、セキュア即ち確保されている電子文書1150へアクセスするために使用することが可能である。更に、オフラインアクセス情報1140はその他のグループ特定鍵、1個又はそれ以上のユーザ特定鍵、複数の文書(例えば、上述したようなポリシー)と関連する少なくとも1組の文書・許可情報、及び文書失効リストを包含することが可能である。
同期オペレーションは、又、オフライン中にクライエントにより実施されるオペレーションのオフライン監査ログ1160をサーバー1120へクライエント1110が送り戻すことを関与させることが可能である。従って、クライエントは局所的に維持されている監査ログメッセージをアップロードし且つ最も最近の失効リスト及び何等かのポリシーに対するアップデートをダウンロードするために周期的にサーバーと同期することが可能である。上述したようなACLを使用するシステムにおいては、そのシステムにおけるACLの数が大きくなる蓋然性のために、全ての新たなACLは各同期と共にダウンロードさせることは必要ではない。文書制御システムはデータの新らしさに関して制約された組の保証を与えることが可能である。使用される保証は以下のようなものとすることが可能であり、即ち(1)各文書特定ACL及びポリシーがオフライン有効性の期間を特定する(例えば、サーバーとの別の同期が必要とされる前に文書特定ACLが有効である時間数又は日数であって、その後においては、その文書は同期無しでオフラインにおいて見ることは不可能である)、(2)各同期において、全ての失効及びポリシーのアップデートがクライエントと同期される。従って、ポリシー又は失効リストは、せいぜい、特定の文書に関し日のうちの特定した数の時間単位とすることが可能である。更に、同期は、又、オフライン中にアクセスされる任意の文書に対する現在のACLを送ることが可能である。
図12はサーバーにより実施される同期オペレーションを例示したフローチャートである。リクエストが1200において受取られる。このリクエストに応答して、サーバーは、1210においてアップデートが必要とされるか否かを判別する。例えば、サーバーは最後に記録されているクライエント同期の時間をそのユーザに対するユーザグループ情報における最後の変化の時間と比較することが可能であり、又はサーバーはそのユーザに対する現在のユーザグループ情報をそのクライエントからそのユーザに対して受取ったユーザグループ情報と比較することが可能である(例えば、クライエントはその現在維持されているユーザ及びグループ鍵をサーバーに対して識別することが可能であり、且つサーバーはそのクライエントの維持されている鍵に対する何等かの変化が必要とされるか否かに基づいて応答することが可能である)。
アップデートが必要とされる場合には、サーバーは1220においてオフラインアクセス情報を送る。このことは、サーバーが、局所的に、除去すべき鍵及び付加すべき鍵のリストをクライエントに送ることを関与させることが可能である。アップデートが必要とされない場合には、サーバーは1230において現在のユーザグループ情報のバリレーション即ち妥当性確認を送る。このことは、現在のオフラインアクセス情報が有効であることをクライエントに対して表示し、且つクライエント及びサーバーは現在の時間で同期される。更に、サーバーが1220においてオフラインアクセス情報を送るか又は1230においてクライエントのオフラインアクセス情報を再度妥当性確認を行う場合には、サーバーは、クライエントにおいて記録され且つクライエント・サーバー同期が将来再度必要とされる時を決定する場合に使用すべくサーバー・参照時間を送ることが可能である。最後に、サーバーは1240においてクライエントからオフライン監査ログを受取る。従って、サーバーは上述したように監査を発生することが可能であり、それはオフライン中に文書に関して取られるアクションに関する情報を包含している。
図13はクライエントにより実施される同期オペレーションを例示したフローチャートである。第一鍵を包含するオフラインアクセス情報が受取られ、且つクライエントが1300においてネットワークへ接続される場合にオフライン監査ログがサーバーへアップロードされる。クライエントは1310においてオフラインアクセス情報を維持する。暗号鍵及びその他の機密情報は、アタッカーがこのような情報に対して容易にアクセスを獲得することが出来ないような安全な態様でユーザのマシン上に局所的に維持させることが可能である。
ニューヨーク州アーモンクのインターナショナルビジネスマシンコーポレイションにより供給される幾つかのラップトップと共に配送されるような例えばスマートカード又は埋込型セキュリティチップ等の改竄防止ハードウエア内に格納される暗号化鍵でファイルを暗号化することによりセキュリティを与えることが可能である。ハードウエアの改竄防止格納装置が使用可能でない場合には、ある程度のセキュリティを与えるためにソフトウエア難読化技術を使用することが可能である。クライエントにおいて維持されているデータはユーザ及びグループのプライベート鍵、文書失効リスト、ポリシーに対するアップデートされたACL、オンライン中にクライエントがアクセスした文書に対するアップデートされたACL及びセキュリティデータ、オフライン中にクライエントにより実施されたオペレーションのオフライン監査ログを包含することが可能である。
1330において、クライエントがネットワークへ接続されていない場合に、文書へのアクセスするためのリクエストが受取られる。判定1340において最近のサーバー同期が発生したか否かを判別するためのチェックが行われる。例えば、現在時間とオフラインアクセス情報の受取時間との間の差異がサーバー・同期・周波数パラメータを超えているか否かをクライエントがチェックすることが可能である。サーバー・同期・周波数パラメータはアクセスされるべき文書に対して特定的なものとすることが可能である。更に、現在時間を決定する場合に、最後の既知の同期時間とローカルシステムクロックとの間の比較を関与させることが可能である。
サーバーとの同期が充分最近に発生したものでない場合には、クライエントは1350においてその文書へのアクセスを阻止する。充分最近に同期が発生した場合には、1360において第一鍵を使用してその文書内の第二鍵を解読する。電子文書に関するアクションは、1370においてその電子文書と関連する文書・許可情報に基づいて支配することが可能である。電子文書に関するアクションを支配する場合に、その文書自身から文書・許可情報を得ることを関与させることが可能である。電子文書に関するアクションを支配する場合に、その電子文書における文書ポリシー参照を識別すること、及びその文書ポリシー参照に基づいて、局所的に維持されている文書・許可情報を獲得することを関与させることが可能である。更に、文書アクセス及び試みられた文書アクセスの両方を記録することが可能なオフライン監査ログを1380において維持することが可能である。
図14はセキュア即ち確保された文書1400のコンポーネントを例示したブロック図である。セキュア即ち確保された文書1400内には暗号化辞書1450を包含させることが可能である。この暗号化辞書1405は文書1400のコンテント即ち内容へアクセスするために使用することが可能な暗号化された鍵、及びオンラインにある場合にコンタクトすべきサーバーのアドレス(例えば、ホスト名、ポート番号、接続プロトコル)を包含することが可能である。この暗号化辞書1405はその文書を暗号化するために使用した(即ち、その文書のコンテントを暗号化するために使用した)文書鍵により暗号化されていない位置においてその暗号化された文書1400内に埋込むことが可能である。
例示的な暗号化辞書1410は文書許可情報1420(例えば、上述した初期的ACL)及び1個又はそれ以上の暗号化した文書鍵1430を包含している。文書1400のコンテントを暗号化するために使用した文書鍵は、グループ鍵及びユーザ鍵を使用して複数回暗号化させることが可能であり、これらの暗号化した文書鍵1430はセキュア即ち確保した文書1400内の暗号化辞書1405内に包含させることが可能である。文書制御サーバーは文書制御システムにおけるユーザ及びグループに対してユーザ及びグループ鍵を動的に発生し且つ維持することが可能である。暗号化された文書鍵1430及び文書・許可情報1420を文書1400内に包含させることにより、上述した同期オペレーションを使用してクライエントに対して適宜のユーザ及びグループ鍵を与えることによりオフラインアクセスをサポートすることが可能である。
別の例示的な暗号化辞書1440は文書鍵1450、ACL1460、文書チケット1470、バージョン情報1480(例えば、フォーマットバージョンストリング)、暗号化したセッション鍵1490を包含している。文書鍵1450は文書制御サーバーにより発生され且つその文書のコンテントを暗号化(例えば、RC4又はAES暗号化を使用)してランダムな128ビットの鍵とすることが可能である。暗号化辞書1440の一部は発生されたセッション鍵を使用して暗号化させることが可能であり、且つ暗号化辞書の修正を検知するためにMACを使用することが可能である。暗号化されたセッション鍵1490はグループ鍵及びユーザ鍵を使用して複数回暗号化したセッション鍵とすることが可能である。更に、セッション鍵はサーバーの公開鍵で暗号化させることが可能である。
ユーザがオフラインで文書を開こうと試みる場合に、その文書に対するセッション鍵がユーザ鍵又はそのユーザがメンバーであるグループのグループ鍵で暗号化されているか否かを判別するためにクライエントがチェックを行うことが可能である。クライエントは、サーバーとの同期期間中に、ユーザの鍵及びそのユーザがメンバーである全てのグループに対する鍵を獲得することが可能である。次いで、適宜の鍵を使用してその文書の暗号化辞書における情報を解読する。次いで、クライエントはサーバー上でACLが評価されたのと同一の態様でACLを評価してどのような許可をそのユーザが有しているかを決定することが可能である。クライエントの失効リストをチェックすることが可能であり、且つその文書が失効されておらず且つ満期を過ぎていない場合には、その文書を開くことが可能であり且つその文書に対するユーザのアクセスを局所的に監査することが可能である。
この初期的アクセスモデルは、文書へ最初にアクセスする場合にユーザがオフラインにいることを許容する。文書1400がセキュア即ち確保されると、その文書に対する初期的ACLをその文書内に埋込み不変のものとさせることが可能である。ユーザがその文書を開こうと試みる場合に、その埋め込まれているACLを使用してそのユーザがアクセスを有するか否かを判別することが可能である。文書1400は、初期的ACLが文書内に維持されているものであっても、いまだに失効させるか又は満期を過ぎることが可能である。更に、他の箇所に維持されている文書1400に対する現在のACLをアップデートさせることが可能であり、且つ上述したように、クライエントがオンラインである場合には、このACLを使用することが可能である。
ユーザがオンラインで文書にアクセスする場合には、サーバー上に格納することが可能なACLをクライエント上に維持し且つそのアクセスのために使用することが可能である。維持されているACLはその文書に対する将来のオフラインアクセスのために使用することが可能である。クライエントがサーバーからアップデートされたACLを獲得すると、クライエントはその文書にアクセスすることが可能な各ユーザ及びグループの鍵で別個に暗号化されている文書セッション鍵を獲得することが可能である。ACL及び暗号化された鍵の両方はその文書内に初期的に埋め込まれているものと同様の態様でセキュア即ち安全確保することが可能である。
更に、その文書における文書許可情報1420,1460はポリシー、即ち文書ポリシー参照又は識別子を包含することが可能である。従って、クライエントは、オフラインにある間に、電子文書内の文書ポリシー参照を識別することが可能であり、且つその文書ポリシー参照に基づいて局所的に維持されているポリシーの文書・許可情報を獲得することが可能である。全てのポリシーアップデートは各クライエントサーバー同期でクライエント上に反映されることを文書制御システムは保証することが可能であるので、アドミニストレーター即ち管理者はポリシーを変化させ且つ有界な時間量内において、未だに文書に対してアクセスを与えている全てのクライエントに関してその変化が反映されることを知ることが可能である。
上述した初期的オフラインアクセスモデルに加えて、付加的な柔軟性を与えるために、文書制御システム内に従来のリースモデルを使用することも可能である。このモデルにおいては、最初にユーザが特定のマシンからある文書にアクセスする場合には、ユーザはオンラインになければならない。その時に、ユーザはオフラインリースを受取り、それはそのリースが更新されねばならなくなる前に特定した時間期間の間オフラインでその文書をユーザが見ることを可能とさせる。このようなリースモデルは、本人即ち主体に対してアクセスを許可するものでない初期的なACLを埋込み、且つサーバーから新たなものをフェッチすることが必要となる前にどれ位の間ACLがクライエント上に維持することが可能であるかを特定するvalidity interval即ち有効期間を使用することによって、説明した文書制御システムにおいて実現することが可能である。更に、本文書制御システムはある文書へアクセスするためにユーザがオンラインでなければならない非オフラインアクセスモデルをイネーブル即ち動作可能とさせるためにコンフィギャラブル即ち形態特定可能なものとすることが可能であり、この場合には、その文書を開くために必要とされる鍵はクライエント上に維持されることは必要ではない。
文書制御システムは、通常、クライエント時間の精度に依存するものであるが、以下のセキュリティ保証の全てを一体的に提供することが可能である。(1)ポリシー修正−全てのポリシーは全ての同期オペレーションにおいて同期されるので、そのポリシーにおいて特定されたoffline validity interval即ちオフライン有効期間内において各クライエントに関しポリシー修正が反映されることが保証されている。(2)ACL修正−修正された(非ポリシー)ACLは、それがオンラインにある間に見られた場合にのみクライエントに関して反映される。維持された非ポリシーACLは、そのACL内において特定されている場合に、validity period即ち有効期間内にクライエントからドロップ即ち捨て去られることが保証されている。(3)失効−失効された文書は、失効が全ての同期オペレーションにおいてクライエントと同期されているので、その文書のACLにおいて特定されたoffline validity interval即ちオフライン有効期間内においてそのシステムにおける全てのクライエントにより見ることが出来ないものとされることが保証されている。(4)満了−満了した文書は、ユーザがオンラインにあるか又はオフラインにあるかに拘わらずに、満了日に見ることが出来ないものとなる。(5)満了修正−満了はACLにおいて特定され、従って満了修正はポリシー毎又はACL修正毎に反映される。(6)ユーザ又はグループメンバーシップ修正−ユーザ鍵が失効される(例えば、ユーザがその会社を去る)又はそのユーザがグループから除去される場合に、その文書に対するoffline validity interval即ちオフライン有効期間内に対して最早アクセスを有することのない文書をそのユーザが見ることが不可能であることを保証することが可能である。
図15はサーバーにより使用される文書情報デリバリ技術を例示したフローチャートである。第一電子文書に関してアクションを取るためのクライエントに対するリクエストが1500においてサーバーにおいて受取られる。このリクエストに応答して、第一電子文書に関する情報が1510において識別される。その関連情報は、第一電子文書と関連しており且つそれとは異なる第二電子文書を表示することが可能である。この情報は2つ又はそれ以上の文書を関連付けることが可能であり且つそれらの関係を記述することが可能であり、この関連情報は例えばテーブル又はデータベース内においてサーバーにおいて格納することが可能である。第二電子文書に関する情報は取られるべきアクションを容易なものとさせるために1520においてクライエントに関係付けられる。
第二文書情報をクライエントに関係付ける場合に、そのアクションに関して第一及び第二文書のうちの1つを選択することを可能とするためにクライエントへ第二文書情報を送ることを関与させることが可能である。第二文書情報をクライエントと関連付ける場合に、第一電子文書に関する代わりに第二電子文書に関してアクションを取ることを可能とするために、第二電子文書を獲得し且つ第二電子文書をクライエントヘ送ることを関与させることが可能である。この第二文書は既に存在しているか又は全体的に又は部分的に発生させることが必要な場合があり、そのことは第二文書を表示する関連情報によって表わすことが可能である。
図16は文書制御システムにおけるワークフローを例示したブロック図である。クライエント1610はネットワーク1600を介して文書制御サーバー1620と通信的に結合させることが可能である。クライエント1610はリクエスト1630を文書制御サーバー1620へ送ることが可能であり、そこでリクエスト1630は文書1640に関して取られるべきアクションと関連する。サーバー1620は情報1645をチェックすることが可能であり、それは局所的に又は他の個所に格納することが可能であり即ち文書1640と関連しており且つ第二文書1650を表示する。サーバー1620は情報1655を送ることが可能であり、それは第二文書1650及び/又は文書1650自身に関する情報とすることが可能である。
クライエント1610は情報1655に基づいて第二文書1650をユーザが見ることを強制させることが可能である。例えば、第二文書1650は第一文書1640の後のバージョンとすることが可能であり、且つ情報1655はそのアクションが第一文書1640に関して許可されていないことを特定する文書・許可情報を包含することが可能である。第一文書1640は潜在的にユーザの知るところがない場合を包含するクライエント1610により第二文書1650と置換させることが可能である(例えば、第一文書の代わりに開き及び/又は第一文書上に格納すべく書込む)。第二文書1650は第一文書1640とは異なる言語バージョン(例えば、オリジナルが英語である場合のフランス語バージョン)又は異なるフォーマットのバージョン(例えば、異なるファイル圧縮及び/又は暗号化方法)とすることが可能である。
サーバー1620において第二電子文書1650を獲得する場合に、第二電子文書1650の少なくとも一部を発生させること(潜在的に全体的な文書1650を発生させることを包含する)を関与させることが可能であり、又は文書1650は予め存在する文書とすることが可能である。関連情報1645はユーザに基づく関連情報を包含することが可能であり、且つ文書1650を獲得する場合に、ユーザに基づく関連情報及びクライエント1610において識別されたユーザに基づいて文書1650を獲得することを関与させることが可能である。文書1650は特定のユーザ、そのユーザの位置及び/又はそのユーザのアクセス時間に対してカスタム化することが可能である(例えば、文書1640は、送られた場合に既に期限経過したものとして識別されるスタブ文書とすることが可能であり、且つこのスタブ文書が開かれる場合に、各ユーザはアクセスを試みる時にそのユーザに対し特に発生された新たな文書を自動的に受取ることが可能であり、即ちそのスタブ文書はオペレーティングシステムにおいて通常の文書のように見え且つそのように取り扱うことが可能であるが、オンライン中に開かれる場合に常に現在の状態である)。文書1650のカスタム化はサーバー1620において又はその他の箇所において行うことが可能である。ユーザは上述した如くに識別することが可能であり、且つ文書制御システムは本明細書を介して記載したシステム及び技術を使用することが可能であり、文書1640,1650は上述したようなセキュア即ち確保した文書とすることが可能である。
図17はクライエントにより使用される文書情報受取事実を例示したフローチャートである。局所的に維持されている配信された文書が1700において開かれる。この配信された文書は、上述したようなセキュア即ち確保された文書とすることが可能であり、それはコンタクトすべき文書制御サーバーを識別する。配信された文書から識別制御サーバーは1710においてコンタクトされる。該サーバーは、配信された文書が適切な文書であるか否か、又は異なる関連する文書が代わりに使用されるべきであるか否かを判別することが可能である。配信された文書の代わりに第二文書を使用することは、文書制御サーバーから受取った情報に基づいて、文書アクションに関して1720において強制される。
従って、文書制御システムは1つのシステムにおいて文書セキュリティ及びバージョン管理の両方の問題に対処することが可能である。配信された文書の異なるバージョンが配信されたバージョンの代わりに見るべきである場合には、このことは配信された文書に対して文書セキュリティを取り扱う文書制御サーバーにおいて定義され且つ制御することが可能である。文書の著者は、文書の配信したバージョンが期限を経過しているものであり且つその代わりにより新しいバージョンを見るべきであることを特定することが可能である。更に、著者は、1つの文書の複数のバージョン及び誰がどのバージョンを見るべきかのユーザに基づく定義を容易に制御することが可能である。
著者又はアドミニストレーター(管理者)は、二人のユーザが異なるコンテントを有する全く異なる文書を受取る可能性を含めてどの文書がどの受取人に対して適切なバージョンであるか、及び両者共元々配信した文書に関連するという意味においてどれが異なる文書バージョンであるかを指定することが可能である。文書間のバージョン関係は、文書セキュリティ目的のために発生される文書識別子を使用して特定することが可能である。このバージョン関係は、各ノードがバージョンである有向グラフを使用して定義することが可能であり、且つ有向エッジはどのバージョンが優先性を有するかを表わす。各エッジもどのユーザに対してそれが適用するかを表わすことが可能である。図を表示させるためのグラフィカルユーザインターフェースを使用してバージョン関係を定義することが可能であり、例えば、ドラッグアンドドロップ操作によりどのバージョンがその他のバージョンの利益となるように期限経過即ち満了となることを特定する。
各文書を改訂することが可能であり且つ各ユーザは文書の最も最近のバージョンのみを見ることを本システムが確保することが可能である場合の文書の異なる逐次的なバージョンの文脈において、文書制御システムにおける失効の考えをある文書が別の文書で置換されたか否かを包含すべく拡張することが可能である。従って、文書を開くと、ユーザがその文書に関して従来のアクション(例えば、印刷等)を実施するためにアクセスを有しているか否かをチェックすることに加えて、そのユーザがその文書の特定のバージョンに対してのアクセスを有するべきであるか否かに関して判別を行うことが可能である。サーバー1620は、持続的にバージョン化されている文書を格納することが可能な付加的なレポジトリーサービスを潜在的に提供することを包含して、文書をどこで見つけることが可能であるかの情報を格納することが可能である。
各ユーザが異なるバージョンを見ることが出来る場合には、同様のアプローチを使用することが可能であり、交差するユーザ/グループを特定するための能力を付加する(例えば、「バージョン0の代わりに、全ての従業員はバージョンAを見るべきである;全てのマネージャはバージョンBを見るべきである;役員はバージョンCを見るべきである」、尚付加的なバージョン関係情報は、役員はバージョンCに加えて従属バージョンA及びBを開くことが可能であることを特定する)。競合を解決するための規則を与えることが可能である。
本明細書に記載したシステム及び技術は、複数の文書制御サーバーを使用する包括的な文書制御システムにおいて結合させることが可能である。再度図9を参照すると、文書制御サーバー900は説明した種々の技術を結合して実現することが可能である。システムのセキュリティを増加させるために、全てのクライエント・サーバー通信は、セキュリティソケットレイヤー(SSL)を介するものとすることが可能であり、それは通信を暗号化し且つサーバー認証を提供し、及び/又は文書のセキュアリング即ち安全確保はクライエント側のセキュアリングを使用して行うことが可能である。サーバー900はアタッカーから物理的にセキュア即ち安全確保することが可能であり且つ少なくとも1個のファイヤウォールの後ろ側に位置することが可能である。サーバー900における全ての機密状態情報は、それが安定な格納装置へ持続される前に暗号化させることが可能であり、このために使用される暗号化鍵はサーバーコード内に埋め込むことが可能であり、不明瞭なシステム資源内に隠され及び/又は改竄防止暗号モジュール内に包含させることが可能である。更に、クライエント側において、ユーザのログオンクリデンシャル即ち身分証明をキャッシュさせて、認証を必要とする複数の連続的なオペレーションに対する繰り返される認証を回避することが可能である。キャッシュされたクリデンシャルはサーバープライベート鍵により署名し、この目的のために専用のものとさせ、且つクライエント上に常駐することが可能であり、その署名されたクリデンシャルはその有効期間を制限するために期限日を包含することが可能であり且つクライエントがサーバー900に対する認証を試みる場合に定義させることが可能である。
上述したように、文書はサーバーにおいて又はクライエントにおいてのいずれかにおいてセキュア即ち確保することが可能である。文書はセキュアリング即ち安全確保の前に1つのフォーマットから別のオーマットへ変換することが可能である(例えば、マイクロソフトワードからPDF(商標)へ)、文書制御システムはこの目的のためにPDF(商標)作成サービスと統合させることが可能である。セキュアラー(securer)コンポーネント960,990はPDF(商標)ライブラリー周りのラッパー(wrapper)とすることが可能であり、それは、入力としてPDF(商標)文書、及び暗号鍵及びPDF(商標)文書の暗号化辞書内へ埋め込まれるべき情報を表わす1組の名前/値の対を取る。該セキュアラーは提供された暗号化鍵でその文書の暗号化を行い且つ特定した情報をその文書内に埋め込むことが可能である。そのセキュアリング即ち安全確保がサーバー900上で実施されると、そのセキュアリングは別のプロセスで行うことが可能であり−このようなプロセスのプールは、複数のセキュアリングリクエストを同時に満足させることが可能であるように使用可能に維持することが可能であり、且つこのようなプロセスの最大数はサーバー900に対するコンフィギュレーションオプションとすることが可能である。これらのセキュアリングプロセスはある数の成功したセキュアリングオペレーションの後に終了させることが可能であり、その数はコンフィギュレーションオプションとすることが可能であり、又はいずれかの不成功なセキュアリングオペレーションの後に終了させることが可能である。
図18は図9の文書制御サーバーにおける文書セキュアリングワークフローを例示したブロック図である。文書のセキュアリング即ち安全確保は、通常、2つのハイレベルなオペレーションを関与させることが可能であり、即ち、文書のセキュアリングに関連するシステム状態の準備と、関連情報の文書内への埋込及びその暗号化である。状態の準備は、どのようにして文書をセキュア即ち確保すべきかを特定するセキュアリングクライエントと、文書をセキュアリングするためにシステムを準備することが可能なサーバーとの間のジョイントオペレーションとすることが可能である。情報を文書内へ埋込み且つセキュアリングはサーバー上(例えば、暗号化されていない文書をセキュアリングの時にサーバーへ送り、次いで暗号化した形態をクライエントへリターンする)、又はクライエント上(例えば、クライエントが文書を暗号化するのに必要なコンポーネントを有している)のいずれかにおいて行うことが可能である。
セキュアリングクライエントはセキュア即ち確保すべき文書に対する所望のセキュリティの使用を準備することが可能である。このことは、ワシントン州レドモンドのマイクロソフトコーポレイションにより提供されているアウトルック(Outlook)(商標)ソフトウエアのような電子メールアプリケーションの如きクライエントにおけるエンドユーザインタラクションを関与させることが可能である。クライエントはRPCを介してサーバーへ接続し、認証を行い、且つ情報をサーバーへ送ることが可能である(1800)。システムがサーバー側のセキュアリングを使用している場合には、クライエントは暗号化されていない文書及びセキュアリング仕様をサーバーへ送る。システムがクライエント側のセキュアリングを使用する場合には、その仕様を送ることが必要であるに過ぎない。
サーバーはユーザを認証することが可能であり、彼が文書をセキュア即ち確保するための許可を有していることを確保する(1805)。サービスプロバイダーはその文書に対するチケット(GUID)を供給することが可能である(1810)。アクセス制御リスト仕様をアクセス制御マネージャへ与えることが可能であり、従ってそれは本人即ち主体を正規化させ且つ多分許可を妥当性確認することが可能である(1815)、ACMは、最初に、正規化マッピングのメモリ内キャッシュを使用することを試みることが可能である。格納プロバイダーはその他のキャッシュされた正規化マッピングに対してクエリー即ち質問されることが可能である(1820)。本人プロバイダーは全てのキャッシュされていない正規化エントリに対してクエリー即ち質問されることが可能である(1825)。正規化されたACLは格納プロバイダー内に持続させることが可能であり、それによりACLのその後の修正を可能とさせる(1830)。
暗号化され且つ文書内に格納されるべき情報(例えば、チケット及びACL)はクリプトサービスプロバイダーへ(Crypto Service Provider)供給することが可能であり(1835)、それはその文書を暗号化するために使用される文書鍵を作成することが可能である。文書シュレッディングが所望されない場合には、文書鍵、チケット、ACLはサーバー公開鍵を使用して暗号化することが可能である。シュレッディングが所望される場合には、その文書鍵はサーバーを離れるべきではないので、その文書鍵を暗号化すべきではない。システムがサーバー側のセキュアリングを使用している場合には、暗号モジュールからの暗号化されたチケットデータをその文書内に埋込むことが可能であり、且つその文書鍵をその文書を暗号化するために使用することが可能である(1840)。システムがクライエント側のセキュアリングを使用している場合には、このことは必要ではない。
本システムは文書がセキュア即ち確保されたことを監査することが可能である(1845)。システムがサーバー側のセキュアリングを使用している場合には、暗号化されたファイルをクライエントへリターン即ち戻すことが可能である(1850)。そうでない場合には、暗号化されたチケットデータ及び文書鍵はクライエントへリターン即ち戻すことが可能である(1850)。システムがクライエント側のセキュアリングを使用している場合には、そのクライエントに関する文書セキュアラーは暗号化されたチケットデータを埋込み且つそのクライエントに関する文書鍵を使用してその文書を暗号化することが可能である(1855)。
図19は図9の文書制御サーバーにおけるサーバー側ACL評価ワークフローを例示したブロック図である。サーバーが許可を包含するオペレーションを実施する場合に、サーバーは、最初に、認証されたユーザのアイデンティティ即ち識別を決定することが可能である(1900)。その文書内の暗号化されたサーバー制御情報を解読することが可能である(1910)。暗号化された制御情報におけるチケットは、格納サービスプロバイダーから最も最近の文書ACLを検索するために使用することが可能である(1920)。アクセス制御マネージャはACLを評価することが可能であり、どの許可が認証されたユーザに対して関連性があるかを決定する(1930)。ACLはグループを参照する場合があり、従って格納プロバイダーは、認証されたユーザがどのグループに属するかを決定するためにクエリー即ち質問されることが可能である(1940)。
図20は図9の文書制御サーバーにおけるオンライン文書ビューイングワークフローを例示したブロック図である。オンライン中に文書のビューイング即ち見ることは、2つの主要なフェーズを関与させることが可能である。第一フェーズは、認証されたユーザがどの許可を有しているかを決定することを関与させ、且つ第二フェーズはクライエント上の文書を解読するために文書鍵をリターン即ち返すことが関与する。文書がオンラインでビュー即ち見るべきである場合には、ビューイングアプリケーションがセキュア即ち確保されている文書を開き且つその文書が制御サーバーと関連していることを認識することが可能である(例えば、その文書はビューイングクライエントにおいてセキュリティハンドラーを関与させることが可能である)。サーバーRPCを使用して、ビューイングアプリケーションは、文書内の暗号化辞書内の暗号化された制御情報をサーバーへ送信することが可能である(2000)。サーバーは、図19に関連して上述したように、許可を包含するオペレーションとしてACLを評価することが可能である(2010)。次いで、格納プロバイダーは、この文書が失効されていないことを確保するためにクエリー即ち質問されることが可能である(2020)。その文書鍵は制御情報から抽出することが可能である(2030)。サーバーはこの文書のオンラインビューイングを監査することが可能である(2040)。この文書をビューイングするための規則である最も最近のACL、及び文書鍵をビューイングクライエントへリターン即ち返すことが可能である(2050)。次いで、このビューイングアプリケーションは許可を実施することが可能である(例えば、セキュリティハンドラーはどの許可を実施するかをビューイングアプリケーションに報告し、且つその文書を見ることが可能であるように暗号解読鍵を提供することが可能である)。
図21は図9の文書制御サーバーにおける失効ワークフローを例示したブロック図である。クライエントは暗号化した制御情報をサーバーへ送ることが可能である(2100)。サーバーは、認証されたユーザが、図19に関連して上述したように、文書を失効させるための許可を有しているか否かを判別することが可能である(2110)。次いで、サーバーはその文書を失効させることが可能である(2120)。クライエントはアクノレッジメントを受取ることが可能である(2130)。
図22は図9の文書制御サーバーにおける監査イベント検索ワークフローを例示したブロック図である。クライエントはサーバーへ暗号化した制御情報を送ることが可能である(2200)。サーバーは、認証されたユーザが、図19に関連して上述したように、この文書に対する監査履歴を得るための許可を有しているか否かを判別することが可能である(2210)。格納プロバイダーは、どのイベントがこの文書に対して関連性があるかを決定するためにクエリー即ち質問されることが可能である(2220)。次いで、クライエントは監査情報を受取り且つユーザへ表示することが可能である(2230)。
図23はマルチ文書制御サーバー2360を具備する文書制御システムを例示したブロック図である。このシステムは、信頼性及びスケーラビリティ即ち拡縮性を与えるために三層アーキテクチャを使用することが可能である。アプリケーション層2300におけるクライエント2310,2320,2330はビジネス論理層2350における文書制御サーバー2360と通信を行い、サーバー2360は格納層2370におけるエンタプライズシステム(例えば、データベース管理システム(DBMS)2380)と通信を行う。そのサーバーの特定のインスタンスに対して特定なものではない全てのサーバー状態を第三層2370内に格納することが可能であり、従って複数のサーバーインスタンスはこのような状態を共有することが可能である。
複数の文書制御サーバーインスタンス2360が使用される場合には、1つがダウンすると、リクエストは他のサーバーへ経路付けさせることが可能である。ロードバランサー(load balancer)2340はサーバーインスタンス2360に対するリクエストのルーチング即ち経路付けを取り扱うことが可能である。サーバー自身内において、例えばJava又は.Net言語等の管理型コードを使用する言語でサーバーを書くことにより高い信頼性を達成することが可能である。多数の正規及び非正規主体乃至は本人を管理するために、2つのレベルのキャッシュを主体乃至は本人情報に対して設けることが可能である。サーバー2360は最近クエリーされた正規ユーザに対する正規マッピング及びグループメンバーシップのメモリ内キャッシュを有することが可能である。多数の文書制御サーバーが格納プロバイダー内に二次的キャッシュを共有することが可能である。
所望の情報がこれらのキャッシュのうちのいずれかの中に存在しない場合には、サーバーはアクセス制御サービスプロバイダー内の直接的本人乃至は主体プロバイダーへ直接的にアクセスすることが可能であり、次いで、局所的に及び格納プロバイダー内においての両方でその情報をキャッシュすることが可能である。グループメンバーシップ情報は、妥当な時間で必要に応じて検索することが可能であるように、バッチ処理されるべきである。二次的サービスとしての文書制御サーバーのうちの1つはマスターに指定することが可能であり且つバッチ処理タスクを実施する責任を有している。多くの場合において、実際のセキュアリングはサーバーへの及びそれからの文書を転送することのオーバーヘッドを取除くため及びサーバーに関するロードを減少させるためにクライエント上で行うことが可能である。同様に、クライエント側のセキュアリングの場合には、クライエントは文書の暗号化を実施することも可能であり、そのことはサーバーのロード即ち負荷を更に減少させる。
この三層アーキテクチャは、サーバーのレプリカを大きなエンタプライズに対してスケーリングするために付加させることを可能とする。文書は、上述したように、特定のホスト名に対しての代わりに複数のサービスからなるクラスターへ繋げることが可能である。DNS(ドメインネーミングシステム)ラウンドロビンをシステムへ付加し、付加的なハードウエアが文書制御サーバーとして作用することを可能とさせることが可能である。サーバーは状態を包含することがない場合があり、従ってハードウエアのスケーラビリティ即ち拡縮性の懸念は標準の「1つのデータベース」問題へ還元させることが可能である。本人即ち主体管理に関するアルゴリズムを個々のオペレーションに対するO(1)及び集合的オペレーション(バッチ処理等)に対するO(n)とすべく設計することが可能である。
本発明及び本明細書において説明した機能的オペレーション即ち動作の全てはデジタル電子回路において、又はコンピュータハードウエア、ファームウエア、ソフトウエアにおいて、又はそれらの結合において実現することが可能である。本発明の装置は、プログラム可能なプロセッサにより実行するためにマシン読取可能な格納装置にタンジブルに実現させたソフトウエアプロダクト(例えば、コンピュータプログラムプロダクト)で実現することが可能であり、且つ本発明のオペレーションの処理は、入力データに関して動作し且つ出力を発生することにより本発明の機能を実施する命令からなるプログラムを実行するプログラム可能なプロセッサにより実施することが可能である。本発明は、データ格納システムからデータ及び命令を受取り且つそれへデータ及び命令を送信すべく結合されている少なくとも1個のプログラム可能なプロセッサ、少なくとも1個の入力装置、少なくとも1個の出力装置を包含するプログラム可能なシステム上で実行可能な1つ又はそれ以上のソフトウエアプログラムで効果的に実現することが可能である。各ソフトウエアプログラムはハイレベル手順又はオブジェクト指向型プログラミング言語において、又は所望により、アッセンブリ又はマシン言語で実現することが可能であり、且ついずれの場合においても、この言語はコンパイル型又はインタプリタ型の言語とすることが可能である。適宜のプロセサは、例示として、汎用及び特別目的の両方のマイクロプロセッサを包含する。通常、プロセッサはリードオンリメモリ、ランダムアクセスメモリ及び/又はマシン読取可能な信号(例えば、ネットワーク接続を介して受取られるデジタル信号)から命令及びデータを受取る。通常、コンピュータは、データファイルを格納するための1つ又はそれ以上の大量記憶装置を包含しており、このような装置は、内部ハードディスク及び着脱自在なディスク等の磁気ディスク、磁気・光学ディスク、及び光学ディスクを包含している。ソフトウエアプログラム命令及びデータをタンジブルに実現するのに適した格納装置は、例示として、EPROM(電気的にプログラム可能なリードオンメモリ)、EEPROM(電気的に消去可能プログラム可能なリードオンリメモリ)、フラッシュメモリ装置等の半導体メモリ装置、内部ハードディスク及び着脱自在なディスク等の磁気ディスク、磁気・光学ディスク、CD−ROMディスクを包含する全ての形態の非揮発性メモリを包含する。前述したもののいずれも、ASIC(応用特定集積回路)により補充するか、又はその中に組込むことが可能である。
本発明を特定の実施例について説明した。その他の実施例は特許請求の範囲内のものである。例えば、本発明のオペレーション即ち動作は、異なる順番で実施することが可能であり尚且つ所望の結果を達成することが可能である。そのオペレーションはサブスクリプションビジネスモデルを使用してホスト型サービスとして提供することが可能であり、且つインターネットを介して使用可能な通常使用可能なシステムインフラストラクチャと統合させることが可能である。文書バージョン制御技術をピアツーピアシステム及び技術を使用して実現することが可能である。更に、文書に対するパミッション即ち許可の組を異なるワークフローが与えられる文書コンテントに関して種々のアクションをカバーすべく拡張させることが可能である(例えば、ある人のみが1つの文書、又は1つの文書の一部に署名することを可能とさせる許可、及び/又は誰が電子形態の異なるセクションを書込み及び/又は見ることが可能であるかを制御する許可)。
更に、ポリシーアップデートを常に同期させるか必ずしもその他のACLを同期させるものではないことに対する代替は、システム内のどのACLが変化したかに関する情報を提供することを関与させることが可能である。同期オペレーションは高及び低優先度オペレーションへ分割することが可能である。高優先度同期はバックグラウンドにおいてより頻繁に発生することが可能であり、且ついつ情報が変化したかの表示を与える。例えば、どのアクセス制御リスト及びポリシーがそのクライエントの最後の同期以来変化したかの表示である。低優先度同期オペレーションはどのようにして情報が変化したかを必要とする場合がある。例えば、このことは、変化したシステム内の全ての文書に対するオフラインアクセス情報を包含する。どのようにしてアクセス制御情報が変化をしたかを同期させることは、何が変化したかの要約よりも通常より資源集約的である。文書に対するアクセス制御が修正され且つクライエントが修正に気が付いているが低優先度同期を実施していない場合には、システムは保守的なものとすることが可能であり且つ低優先度同期が行われるまでインプリメンテーションがその文書へのアクセスを阻止することが可能である。
以上、本発明の具体的実施の態様について詳細に説明したが、本発明は、これら具体例にのみ制限されるべきものではなく、本発明の技術的範囲を逸脱することなしに種々の変形が可能であることは勿論である。
文書制御システムに対する動作環境を例示したブロック図。 例示的な文書制御サーバーを例示したブロック図。 認証システムにおけるワークフローを例示したブロック図。 サーバーにより使用される認証技術を例示したフローチャート。 文書制御システムにおけるワークフローを例示したブロック図。 許可・ブローカーサーバーにより使用される文書制御技術を例示したフローチャート。 文書レポジトリーと統合された文書制御システムにおけるワークフローを例示したブロック図。 電子メールクライエントと統合された文書制御システムにおけるワークフローを例示したブロック図。 図2の例に対応する文書制御サーバーを例示したブロック図。 図9からのサーバーの例示的な詳細を例示したブロック図。 文書制御システムにおいて使用することが可能なオフライン文書アクセスモデルを例示したブロック図。 サーバーにより実施される同期オペレーションを例示したフローチャート。 クライエントにより実施される同期オペレーションを例示したフローチャート。 セキュア即ち確保された文書のコンポーネントを例示したブロック図。 サーバーにより使用される文書情報デリバリ技術を例示したフローチャート。 文書制御システムにおけるワークフローを例示したブロック図。 クライエントにより使用される文書情報受取技術を例示したフローチャート。 図9の文書制御サーバーにおける文書セキュアリングワークフローを例示したブロック図。 図9の文書制御サーバーにおけるサーバー側アクセス制御リスト評価ワークフローを例示したブロック図。 図9の文書制御サーバーにおけるオンライン文書ビューイングワークフローを例示したブロック図。 図9の文書制御サーバーにおける失効ワークフローを例示したブロック図。 図9の文書制御サーバーにおける監査イベント検索ワークフローを例示したブロック図。 複数文書制御サーバーを具備する文書制御システムを例示したブロック図。
符号の説明
100 ネットワーク
110 クライエント
120 サーバー
130 エンタプライズシステム
200 文書制御サーバー
210 サーバーコア
220,230 コンフィギュレーション及びロギングコンポーネント
240 内部サービスコンポーネント
250 メッソド
260 外部サービスプロバイダー

Claims (57)

  1. クライエントからリクエストを受取り、
    ユーザのグループと関連する第一鍵を有するオフラインアクセス情報を前記クライエントへ送ることにより前記グループのメンバーとしてユーザによるアクションを可能とさせるために前記リクエストに応答して前記クライエントを事前認可し、
    前記第一鍵は電子文書内の第二鍵を解読することにより前記電子文書へアクセスするために前記クライエントにおいて使用可能である、
    ことを特徴とする方法。
  2. 請求項1において、前記クライエントを事前認可する場合に、最後に記録したクライエント・同期の時間をそのユーザに対するユーザ・グループ情報における最後の変化の時間と比較することを特徴とする方法。
  3. 請求項1において、前記クライエントを事前認可する場合に、そのユーザに対する現在のユーザ・グループ情報をそのクライエントからそのユーザに対して受取ったユーザ・グループ情報と比較することを特徴とする方法。
  4. 請求項1において、前記クライエントが、前記電子文書内に存在する文書・許可情報に基づいて前記電子文書に関するアクションを可能とさせることを特徴とする方法。
  5. 請求項1において、前記オフラインアクセス情報が、更に、前記電子文書を包含する複数の文書に関連する文書・許可情報を有しており、且つ前記クライエントが前記文書・許可情報に基づいて前記電子文書に関するアクションを可能とさせることを特徴とする方法。
  6. 請求項1において、リクエストを受取る場合に、第二文書に関するアクションを取ることのリクエストを前記クライエントから受取ることを特徴とする方法。
  7. 請求項6において、更に、前記クライエントにおけるユーザを認証されたユーザとして検証することを特徴とする方法。
  8. 請求項6において、前記オフラインアクセス情報が、更に、
    少なくとも1個のユーザ特定鍵、
    前記第一鍵を包含する少なくとも1個のグループ特定鍵、
    複数の文書と関連する少なくとも1組の文書・許可情報、
    を有していることを特徴とする方法。
  9. 請求項8において、更に、前記クライエントからオフライン監査ログを受取ることを特徴とする方法。
  10. 請求項8において、前記少なくとも1組の文書・許可情報が、前記第二文書と関連する1つ又はそれ以上のポリシーを有しており、且つ前記オフラインアクセス情報が、更に、文書失効リストを有していることを特徴とする方法。
  11. 請求項8において、前記オフラインアクセス情報が、更に、同期優先順位付け情報に基づいて選択された特定の文書と関連する少なくとも1組の文書・許可情報を有していることを特徴とする方法。
  12. 文書制御サーバーのユーザのグループと関連する第一鍵を有するオフラインアクセス情報を、オンラインである場合に、文書制御サーバーから受取り、
    電子文書内の第二鍵を解読するために前記第一鍵を使用し且つ前記電子文書と関連する文書・許可情報に基づいて前記電子文書に関するアクションを支配するオペレーションを実施することにより、オフラインである場合に、前記電子文書へのアクセスを許可する、
    ことを特徴とする方法。
  13. 請求項12において、前記電子文書に関するアクションを支配する場合に、前記電子文書から前記文書・許可情報を獲得することを特徴とする方法。
  14. 請求項12において、前記電子文書に関するアクションを支配する場合に、
    前記電子文書の文書ポリシー参照を識別し、
    前記文書ポリシー参照に基づいて局所的に維持されている文書・許可情報を獲得する、
    ことを特徴とする方法。
  15. 請求項12において、前記オフラインアクセス情報が、少なくとも1個のユーザ特定鍵、前記第一鍵を包含する少なくとも1個のグループ特定鍵、複数の文書と関連する少なくとも1組の文書・許可情報、文書失効リスト、を有していることを特徴とする方法。
  16. 請求項12において、更に、現在の時間と前記オフラインアクセス情報の受取時間との間の差異がサーバー・同期・周波数パラメータを超える場合には、オフラインである場合に、前記文書へのアクセスを阻止することを特徴とする方法。
  17. 請求項16において、前記サーバー・同期・周波数パラメータが前記文書に対して特定的であることを特徴とする方法。
  18. 請求項12において、更に、
    オフライン監査ログを維持し、
    オンラインである場合に前記オフライン監査ログをアップロードする、
    ことを特徴とする方法。
  19. 電子文書を暗号化し、
    文書制御サーバーのアドレスと、文書・許可情報と、前記暗号化した電子文書を解読する場合に使用可能な暗号化鍵とを前記暗号化した電子文書内に組込み、
    前記暗号化鍵が前記文書制御サーバーにより発生され且つ前記文書制御サーバーのユーザのグループと関連している鍵で暗号化されていることを特徴とする方法。
  20. 請求項19において、前記暗号化鍵が前記文書制御サーバーにより発生されるセッション鍵を有しており、前記電子文書を暗号化する場合に文書鍵を使用して前記電子文書を暗号化し、且つ組込む場合に前記文書鍵及び前記文書・許可情報を有する文書セキュリティペイロードを前記暗号化した電子文書内に組込み、前記文書セキュリティペイロードが前記セッション鍵を使用して暗号化されていることを特徴とする方法。
  21. 請求項20において、前記文書セキュリティペイロードが、更に、前記文書制御サーバーにより割当てられる文書識別子を有しており、且つ組込む場合に、更に、前記文書制御サーバーと関連する公開鍵を使用して暗号化されている前記セッション鍵のコピーを前記暗号化された電子文書内に組込むことを特徴とする方法。
  22. 請求項19において、前記文書・許可情報が前記電子文書より小さな粒度のレベルにおいてアクセス許可を特定することを特徴とする方法。
  23. 機械読取可能な媒体内にタンジブルに実現されているソフトウエアプロダクトにおいて、前記ソフトウエアプロダクトが1つ又はそれ以上のデータ処理装置をして、
    クライエントからリクエストを受取り、
    ユーザのグループと関連する第一鍵を有するオフラインアクセス情報を前記クライエントへ送ることにより前記ユーザのグループのメンバーとしてユーザによるアクションを可能とさせるために前記リクエストに応答して前記クライエントを事前認可し、前記第一鍵が電子文書内の第二鍵を解読することにより前記電子文書へのアクセスを前記クライエントにおいて使用可能とする、
    オペレーションを実施すべく動作可能な命令を有していることを特徴とするソフトウエアプロダクト。
  24. 請求項23において、クライエントを事前認可する場合に、最後に記録したクライエント・同期の時間をそのユーザに対するユーザ・グループ情報における最後の変化の時間と比較することを特徴とするソフトウエアプロダクト。
  25. 請求項23において、前記クライエントを事前認可する場合に、そのユーザに対する現在のユーザ・グループ情報を前記クライエントからそのユーザに対して受取ったユーザ・グループ情報と比較することを特徴とするソフトウエアプロダクト。
  26. 請求項23において、前記クライエントが、前記電子文書内に存在する文書・許可情報に基づいて前記電子文書に関するアクションを可能とさせることを特徴とするソフトウエアプロダクト。
  27. 請求項23において、前記オフラインアクセス情報が、更に、前記電子文書を包含する複数の文書と関連する文書・許可情報を有しており、且つ前記クライエントが前記文書・許可情報に基づいて前記電子文書に関するアクションを可能とさせることを特徴とするソフトウエアプロダクト。
  28. 請求項23において、リクエストを受取る場合に、第二文書に関するアクションを取ることの要求を前記クライエントから受取ることを特徴とするソフトウエアプロダクト。
  29. 請求項28において、前記オペレーションが、更に、前記クライエントにおけるユーザを認証されたユーザとして検証することを特徴とするソフトウエアプロダクト。
  30. 請求項28において、前記オフラインアクセス情報が、更に、
    少なくとも1個のユーザ特定鍵、
    前記第一鍵を包含する少なくとも1個のグループ特定鍵、
    複数の文書と関連する少なくとも1組の文書・許可情報、
    を有することを特徴とするソフトウエアプロダクト。
  31. 請求項30において、前記オペレーションが、更に、前記クライエントからのオフライン監査ログを受取ることを包含していることを特徴とするソフトウエアプロダクト。
  32. 請求項30において、前記少なくとも1組の文書・許可情報が、前記第二文書と関連する1つ又はそれ以上のポリシーを有しており、且つ前記オフラインアクセス情報が、更に、文書失効リストを有していることを特徴とするソフトウエアプロダクト。
  33. 請求項30において、前記オフラインアクセス情報が、更に、特定の文書と関連する少なくとも1組の文書・許可情報を有しており、且つ前記オペレーションが、更に、同期優先順位付け情報に基づいて前記文書特定文書・許可情報を選択することを包含していることを特徴とするソフトウエアプロダクト。
  34. 機械読取可能な媒体にタンジブルに実現されているソフトウエアプロダクトにおいて、前記ソフトウエアプロダクトが、1つ又はそれ以上のデータ処理装置をして、
    文書制御サーバーのユーザのグループと関連する第一鍵を有するオフラインアクセス情報を、オンラインである場合に、前記文書制御サーバーから受取り、
    前記電子文書内の第二鍵を解読するために前記第一鍵を使用し且つ前記電子文書と関連する文書・許可情報に基づいて前記電子文書に関するアクションを支配するオペレーションを実施することにより、オフラインである場合に、電子文書へのアクセスを可能とさせる、
    オペレーションを実施させるべく動作可能な命令を有していることを特徴とするソフトウエアプロダクト。
  35. 請求項34において、前記電子文書に関するアクションを支配する場合に、前記電子文書から前記電子文書・許可情報を獲得することを特徴とするソフトウエアプロダクト。
  36. 請求項34において、前記電子文書に関するアクションを支配する場合に、
    前記電子文書内の文書ポリシー参照を識別し、
    前記文書ポリシー参照に基づいて局所的に維持されている文書・許可情報を獲得する、
    ことを特徴とするソフトウエアプロダクト。
  37. 請求項34において、前記オフラインアクセス情報が、少なくとも1個のユーザ特定鍵と、前記第一鍵を包含する少なくとも1個のグループ特定鍵と、複数の文書と関連する少なくとも1組の文書・許可情報と、文書失効リストとを有していることを特徴とするソフトウエアプロダクト。
  38. 請求項34において、前記オペレーションが、更に、現在の時間と前記オフラインアクセス情報の受取時間との間の差異がサーバー・同期・周波数パラメータを超える場合に、オフラインである場合に、前記文書へのアクセスを阻止することを特徴とするソフトウエアプロダクト。
  39. 請求項38において、前記サーバー・同期・周波数パラメータが前記文書に対して特定的であることを特徴とするソフトウエアプロダクト。
  40. 請求項34において、前記オペレーションが、更に、
    オフライン監査ログを維持し、
    オンラインである場合に前記オフライン監査ログをアップロードする、
    ことを包含していることを特徴とするソフトウエアプロダクト。
  41. 機械読取可能な媒体にタンジブルに実現されているソフトウエアプロダクトにおいて、前記ソフトウエアプロダクトが、1つ又はそれ以上のデータ処理装置をして、
    電子文書を暗号化し、
    文書制御サーバーのアドレスと、文書・許可情報と、前記暗号化した電子文書を解読する場合に使用可能な暗号化鍵であって前記文書制御サーバーにより発生され且つ前記文書制御サーバーのユーザのグループと関連している鍵で暗号化されている暗号化鍵とを前記暗号化されている電子文書内に組込む、
    オペレーションを実施すべく動作可能な命令を有していることを特徴とするソフトウエアプロダクト。
  42. 請求項41において、前記暗号化鍵が前記文書制御サーバーにより発生されるセッション鍵を有しており、前記電子文書を暗号化する場合に文書鍵を使用して前記電子文書を暗号化し、且つ組込む場合に前記文書鍵と前記文書・許可情報とを有する文書セキュリティペイロードを前記暗号化した電子文書内に組込み、前記文書セキュリティペイロードが前記セッション鍵を使用して暗号化されていることを特徴とするソフトウエアプロダクト。
  43. 請求項42において、前記文書セキュリティペイロードが、更に、前記文書制御サーバーにより割当てられた文書識別子を有しており、且つ組込む場合に、更に、前記文書制御サーバーと関連する公開鍵を使用して暗号化された前記セッション鍵のコピーを前記暗号化された電子文書内に組込むことを特徴とするソフトウエアプロダクト。
  44. 請求項41において、前記文書・許可情報が、前記電子文書より小さな粒度のレベルにおいてアクセス許可を特定とすることを特徴とするソフトウエアプロダクト。
  45. クライエントリクエストに応答してオフラインアクセス情報をクライエントと同期させる文書制御サーバーが設けられており、前記オフラインアクセス情報が1つのグループと関連する第一鍵を有しており、前記第一鍵が電子文書内の第二鍵を解読することにより前記電子文書へアクセスことを前記クライエントにおいて使用可能であり、
    オフラインである場合にグループのメンバーとしてのユーザによる前記電子文書へのアクセスを可能とさせるクライエントが、前記電子文書内の前記第二鍵を解読するために前記第一鍵を使用し且つ前記電子文書に関連する文書・許可情報に基づいて前記電子文書に関するアクションを支配する、
    ことを特徴とするシステム。
  46. 請求項45において、前記電子文書が前記文書・許可情報を有していることを特徴とするシステム。
  47. 請求項46において、前記第二鍵が前記文書制御サーバーにより発生されるセッション鍵を有しており、且つ前記電子文書が、更に、文書鍵と前記文書・許可情報とを有する文書セキュリティペイロードを有しており、前記文書セキュリティペイロードが前記セッション鍵を使用して暗号化されていることを特徴とするシステム。
  48. 請求項45において、前記オフラインアクセス情報が、更に、
    少なくとも1個のユーザ特定鍵、
    前記第一鍵を包含する少なくとも1個のグループ特定鍵、
    複数の文書と関連する少なくとも1組の文書・許可情報、
    を有していることを特徴とするシステム。
  49. 請求項45において、前記クライエントが、前記オフラインアクセス情報を同期させるために周期的に前記文書制御サーバーとコンタクトするエージェントを有していることを特徴とするシステム。
  50. 請求項45において、前記文書制御サーバーが、
    コンフィギュレーション及びロギングコンポーネントを具備するサーバーコア、
    動的にロードした方法にわたって機能性を与える内部サービスコンポーネント、
    1つ又はそれ以上のアクセス制御サービスプロバイダーを包含する動的にロードした外部サービスプロバイダー、
    を有していることを特徴とするシステム。
  51. 請求項45において、更に、
    前記文書制御サーバーを包含する複数の文書制御サーバーからなるクラスターを有しているビジネスロジック層、
    ビュアクライエント、セキュアリングクライエント、管理クライエントを有する前記クライエントを包含するアプリケーション層、
    クライエントリクエストを前記文書制御サーバーへ経路付けするロードバランサー、
    を有していることを特徴とするシステム。
  52. 請求項45において、前記クライエントリクエストが、第二文書に関するアクションを取ることの前記クライエントからのリクエストを有していることを特徴とするシステム。
  53. 請求項52において、前記文書制御サーバーが翻訳コンポーネントを包含している許可・ブローカーサーバーを有しており、前記第二文書が前記許可・ブローカーサーバーにより前に確保された文書を有しており、且つ前記翻訳コンポーネントが前記クライエントから受取ったリクエストに応答して第一許可・定義フォーマットにある第一文書・許可情報を第二許可・定義フォーマットでの第二文書・許可情報へ翻訳すべく動作可能であることを特徴とするシステム。
  54. 請求項52において、前記サーバーが前記リクエストに応答して前記第二文書に関連する情報を識別すべく動作可能な許可・ブローカーサーバーを有しており、前記関連する情報が前記サーバーにおいて維持され且つ前記第二文書とは異なり且つそれと関連している第三電子文書を表示し、前記サーバーが前記第三電子文書に関する情報を前記取るべきアクションを容易化させるために前記クライエントを関係付けるべく動作可能であることを特徴とするシステム。
  55. 請求項52において、前記サーバーが1つ又はそれ以上のデータ処理装置をして認証手順を行わせるオペレーションを実施させるべく動作可能な命令を有するソフトウエアプログラムを前記リクエストに応答して獲得し且つ送信すべく動作可能な許可・ブローカーサーバーを有しており、且つ前記クライエントが前記認証プログラムを使用して現在のユーザを識別し且つ前記第二文書に関連する現在のユーザ及び文書・許可情報に基づいて前記第二文書に関するアクションを制御することを特徴とするシステム。
  56. 複数ユーザのグループのメンバーとしてユーザによるアクションを可能とさせるためにクライエントを事前認可するために制御された文書に対してオフラインアクセス情報であって前記グループに関連する第一鍵であって電子文書内の第二鍵を解読することにより前記電子文書へアクセスするために前記クライエントにおいて使用可能な第一鍵を有しているオフラインアクセス情報をトランスペアレントに供給するサーバー手段、
    前記オフラインアクセス情報を使用して前記電子文書へアクセスするクライエント手段、
    を有していることを特徴とするシステム。
  57. 請求項56において、更に、
    電子文書に関してアクションを取るためにクライエントリクエストに応答して認証プロセスを動的に獲得し且つ送信するサーバー手段、
    現在のユーザを識別するために受取った認証プロセスとインターフェースし且つ前記現在のユーザ及び文書・許可情報に基づいて電子文書に関するアクションを制御するクライエント手段、
    を有していることを特徴とするシステム。
JP2004318250A 2003-10-31 2004-11-01 文書制御システムにおけるオフラインアクセス Expired - Fee Related JP4853939B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/699124 2003-10-31
US10/699,124 US7930757B2 (en) 2003-10-31 2003-10-31 Offline access in a document control system

Publications (2)

Publication Number Publication Date
JP2005141746A true JP2005141746A (ja) 2005-06-02
JP4853939B2 JP4853939B2 (ja) 2012-01-11

Family

ID=34423435

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004318250A Expired - Fee Related JP4853939B2 (ja) 2003-10-31 2004-11-01 文書制御システムにおけるオフラインアクセス

Country Status (3)

Country Link
US (2) US7930757B2 (ja)
EP (1) EP1528455A1 (ja)
JP (1) JP4853939B2 (ja)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006228057A (ja) * 2005-02-18 2006-08-31 Canon Inc 情報処理装置及びデータ管理システム
JP2007058567A (ja) * 2005-08-24 2007-03-08 Canon Inc 文書配信システム、クライアント装置および文書配信方法
JP2007207171A (ja) * 2006-02-06 2007-08-16 Ricoh Co Ltd 文書アクセス制御システム
JP2009015766A (ja) * 2007-07-09 2009-01-22 Nec Corp ユーザ端末、アクセス管理システム、アクセス管理方法、およびプログラム
JP2010503123A (ja) * 2006-09-08 2010-01-28 マイクロソフト コーポレーション セキュリティ許可照会
WO2010047080A1 (ja) * 2008-10-20 2010-04-29 日本電気株式会社 アクセス制御システム、アクセス制御方法およびプログラム
WO2010073443A1 (en) 2008-12-26 2010-07-01 Digital Arts Inc. Electronic file sending method
US8493581B2 (en) 2005-08-04 2013-07-23 Ricoh Company, Ltd. Electronic document having authentication function
US8656503B2 (en) 2006-09-11 2014-02-18 Microsoft Corporation Security language translations with logic resolution
US8938783B2 (en) 2006-09-11 2015-01-20 Microsoft Corporation Security language expressions for logic resolution
JP2018518738A (ja) * 2015-04-15 2018-07-12 サイトリックス システムズ,インコーポレイテッド サーバまたは他の装置からのエントロピーに基づくクライアント装置の認証
USD886129S1 (en) 2016-05-10 2020-06-02 Citrix Systems, Inc. Display screen or portion thereof with graphical user interface
US10673845B2 (en) 2015-05-12 2020-06-02 Citrix Systems, Inc. Multifactor contextual authentication and entropy from device or device input or gesture authentication

Families Citing this family (144)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3901484B2 (ja) * 2001-10-05 2007-04-04 株式会社ジェイテクト 電動パワーステアリング装置
US7921450B1 (en) 2001-12-12 2011-04-05 Klimenty Vainstein Security system using indirect key generation from access rules and methods therefor
US7565683B1 (en) 2001-12-12 2009-07-21 Weiqing Huang Method and system for implementing changes to security policies in a distributed security system
US8065713B1 (en) 2001-12-12 2011-11-22 Klimenty Vainstein System and method for providing multi-location access management to secured items
US7380120B1 (en) 2001-12-12 2008-05-27 Guardian Data Storage, Llc Secured data format for access control
US7930756B1 (en) 2001-12-12 2011-04-19 Crocker Steven Toye Multi-level cryptographic transformations for securing digital assets
US7921288B1 (en) 2001-12-12 2011-04-05 Hildebrand Hal S System and method for providing different levels of key security for controlling access to secured items
US8006280B1 (en) 2001-12-12 2011-08-23 Hildebrand Hal S Security system for generating keys from access rules in a decentralized manner and methods therefor
US10360545B2 (en) 2001-12-12 2019-07-23 Guardian Data Storage, Llc Method and apparatus for accessing secured electronic data off-line
US7178033B1 (en) 2001-12-12 2007-02-13 Pss Systems, Inc. Method and apparatus for securing digital assets
US7260555B2 (en) 2001-12-12 2007-08-21 Guardian Data Storage, Llc Method and architecture for providing pervasive security to digital assets
US10033700B2 (en) 2001-12-12 2018-07-24 Intellectual Ventures I Llc Dynamic evaluation of access rights
US7921284B1 (en) 2001-12-12 2011-04-05 Gary Mark Kinghorn Method and system for protecting electronic data in enterprise environment
US7950066B1 (en) 2001-12-21 2011-05-24 Guardian Data Storage, Llc Method and system for restricting use of a clipboard application
US8176334B2 (en) 2002-09-30 2012-05-08 Guardian Data Storage, Llc Document security system that permits external users to gain access to secured files
US7748045B2 (en) * 2004-03-30 2010-06-29 Michael Frederick Kenrich Method and system for providing cryptographic document retention with off-line access
JP4347123B2 (ja) * 2003-05-02 2009-10-21 キヤノン株式会社 文書処理システムおよび文書処理方法およびコンピュータが読取り可能な記憶媒体およびプログラム
US8707034B1 (en) 2003-05-30 2014-04-22 Intellectual Ventures I Llc Method and system for using remote headers to secure electronic files
US8127366B2 (en) 2003-09-30 2012-02-28 Guardian Data Storage, Llc Method and apparatus for transitioning between states of security policies used to secure electronic documents
US7703140B2 (en) 2003-09-30 2010-04-20 Guardian Data Storage, Llc Method and system for securing digital assets using process-driven security policies
US20050125717A1 (en) * 2003-10-29 2005-06-09 Tsakhi Segal System and method for off-line synchronized capturing and reviewing notes and presentations
US8627489B2 (en) 2003-10-31 2014-01-07 Adobe Systems Incorporated Distributed document version control
US8108672B1 (en) 2003-10-31 2012-01-31 Adobe Systems Incorporated Transparent authentication process integration
US7930757B2 (en) 2003-10-31 2011-04-19 Adobe Systems Incorporated Offline access in a document control system
US20050162696A1 (en) * 2004-01-26 2005-07-28 Helms Janine L. Print auditing network
US7802262B1 (en) 2004-03-05 2010-09-21 Adobe Systems Incorporated System and method for communicating state and title information between a browser and a rich internet application with browser forward and back button support
US7536672B1 (en) * 2004-03-05 2009-05-19 Adobe Systems Incorporated Management of user interaction history with software applications
US8015504B1 (en) 2004-03-26 2011-09-06 Adobe Systems Incorporated System and method for communicating information over a network
GB0411560D0 (en) 2004-05-24 2004-06-23 Protx Group Ltd A method of encrypting and transferring data between a sender and a receiver using a network
US7660798B1 (en) * 2004-10-04 2010-02-09 Adobe Systems Incorporated System and method for providing document security, access control and automatic identification of recipients
US7774753B1 (en) 2004-11-18 2010-08-10 Adobe Systems Incorporated System and method for communicating data among two or more programs
US7995758B1 (en) 2004-11-30 2011-08-09 Adobe Systems Incorporated Family of encryption keys
WO2006099271A2 (en) * 2005-03-14 2006-09-21 Holomar, Inc. Combining models of goods and services
US9497172B2 (en) 2005-05-23 2016-11-15 Litera Corp. Method of encrypting and transferring data between a sender and a receiver using a network
US8527938B2 (en) * 2005-06-21 2013-09-03 The Boeing Company Worklet modeling
US7627569B2 (en) * 2005-06-30 2009-12-01 Google Inc. Document access control
US8832047B2 (en) 2005-07-27 2014-09-09 Adobe Systems Incorporated Distributed document version control
US7472821B1 (en) * 2005-09-07 2009-01-06 Adobe Systems Incorporated Methods and apparatus for identifying a source of content
GB2430523B (en) * 2005-09-22 2010-02-17 Software 2000 Ltd Managing user permissions in a computer system
US8499031B1 (en) 2005-10-21 2013-07-30 Oracle America, Inc. Markup language messaging service for secure access by edge applications
US8001458B1 (en) 2005-11-14 2011-08-16 Adobe Systems Incorporated System and method for communicating state and title information between a browser and a rich Internet application
JP4739000B2 (ja) * 2005-12-07 2011-08-03 富士通株式会社 電子文書管理プログラム、電子文書管理システム及び電子文書管理方法
US20070168529A1 (en) * 2005-12-09 2007-07-19 Paulo Taylor Contact list display system and method
US9942271B2 (en) 2005-12-29 2018-04-10 Nextlabs, Inc. Information management system with two or more interactive enforcement points
US7877781B2 (en) * 2005-12-29 2011-01-25 Nextlabs, Inc. Enforcing universal access control in an information management system
US8627490B2 (en) * 2005-12-29 2014-01-07 Nextlabs, Inc. Enforcing document control in an information management system
US7774363B2 (en) 2005-12-29 2010-08-10 Nextlabs, Inc. Detecting behavioral patterns and anomalies using information usage data
US7716240B2 (en) * 2005-12-29 2010-05-11 Nextlabs, Inc. Techniques and system to deploy policies intelligently
US8621549B2 (en) * 2005-12-29 2013-12-31 Nextlabs, Inc. Enforcing control policies in an information management system
US8875218B2 (en) 2005-12-29 2014-10-28 Nextlabs, Inc. Deploying policies and allowing off-line policy evaluations
WO2007107658A1 (fr) * 2006-03-22 2007-09-27 France Telecom Procede de controle d'acces, procede d'utilisation d'une base de donnees, installation, programme d'ordinateur et base de donnees
US8108464B1 (en) 2006-03-31 2012-01-31 Google Inc. Collaborative workflow through messaging conversations
CA2649449A1 (en) * 2006-04-14 2007-10-25 Advanced Solutions, Inc. Method, apparatus and computer-readabele medium to provide customized classification of documents in a file management system
US8166003B2 (en) * 2006-05-05 2012-04-24 Microsoft Corporation Permission-based document server
WO2007138229A2 (fr) * 2006-05-30 2007-12-06 France Telecom Procede d'acces securise a une ressource cryptee
US20070282927A1 (en) * 2006-05-31 2007-12-06 Igor Polouetkov Method and apparatus to handle changes in file ownership and editing authority in a document management system
US20080002695A1 (en) * 2006-06-28 2008-01-03 Motorola, Inc. Preservation of session information on a communications network
US8683600B2 (en) * 2006-10-11 2014-03-25 Adobe Systems Incorporated Print policy commands
US8554749B2 (en) * 2006-10-23 2013-10-08 Adobe Systems Incorporated Data file access control
US8515912B2 (en) 2010-07-15 2013-08-20 Palantir Technologies, Inc. Sharing and deconflicting data changes in a multimaster database system
US8319988B2 (en) * 2006-11-30 2012-11-27 Sharp Laboratories Of America, Inc. Job auditing systems and methods for direct imaging of documents
US20080163364A1 (en) * 2006-12-27 2008-07-03 Andrew Rodney Ferlitsch Security method for controlled documents
JP2008219454A (ja) * 2007-03-05 2008-09-18 Hitachi Ltd 通信内容監査支援システム
US8510790B2 (en) * 2007-03-12 2013-08-13 Hitachi Kokusai Electric Inc. Substrate processing apparatus
EP1978468A1 (en) * 2007-04-04 2008-10-08 Sap Ag A method and a system for secure execution of workflow tasks in a distributed workflow management system within a decentralized network system
US8230417B1 (en) 2007-06-08 2012-07-24 Adobe Systems Incorporated Combined application and execution environment install
US20090030705A1 (en) * 2007-07-23 2009-01-29 Michel Shane Simpson Project management black box protections
US8448161B2 (en) 2007-07-30 2013-05-21 Adobe Systems Incorporated Application tracking for application execution environment
US7930273B1 (en) 2007-07-30 2011-04-19 Adobe Systems Incorporated Version management for application execution environment
US8375381B1 (en) 2007-07-30 2013-02-12 Adobe Systems Incorporated Management user interface for application execution environment
NO20075351A (no) * 2007-10-18 2009-02-09 Fast Search & Transfer Asa Fremgangsmåte for å begrense aksess til søkeresultater og søkemotor som støtter fremgangsmåten
JP4479778B2 (ja) * 2007-10-31 2010-06-09 富士ゼロックス株式会社 情報管理プログラム及び情報管理装置
DE102007057868B4 (de) * 2007-11-29 2020-02-20 LIMO GmbH Vorrichtung zur Erzeugung einer linienförmigen Intensitätsverteilung
US9002012B2 (en) * 2007-12-01 2015-04-07 Hewlett-Packard Development Company, L.P. Apparatus and method for securing data in computer storage
US20090183255A1 (en) * 2007-12-21 2009-07-16 Kiester W Scott Server services on client for disconnected authentication
US20090208015A1 (en) * 2008-02-15 2009-08-20 Microsoft Corporation Offline consumption of protected information
US20090234872A1 (en) * 2008-03-11 2009-09-17 Microsoft Corporation Synchronization of disconnected/offline data processing/entry
JP5355032B2 (ja) * 2008-10-23 2013-11-27 キヤノン株式会社 クライアント装置、サーバ装置、及び、それらを用いた文書管理システム、文書管理方法、文書管理プログラム
EP2192514A1 (en) * 2008-11-26 2010-06-02 Thomson Licensing Method and system for processing digital content according to a workflow
US8311938B2 (en) * 2009-02-24 2012-11-13 Doxo, Inc. Provider relationship management system that facilitates interaction between an individual and organizations
US20110218912A1 (en) * 2009-02-24 2011-09-08 Doxo, Inc. Provider relationship management system that facilitates interaction between an individual and organizations
US8256010B2 (en) * 2009-04-01 2012-08-28 Microsoft Corporation Providing access to a data item using access graphs
US9311618B2 (en) * 2009-04-07 2016-04-12 Clearslide, Inc. Mixed content type presentation system
US8578157B2 (en) 2009-05-29 2013-11-05 Adobe Systems Incorporated System and method for digital rights management with authorized device groups
US9124422B2 (en) 2009-05-29 2015-09-01 Adobe Systems Incorporated System and method for digital rights management with secure application-content binding
US10198523B2 (en) 2009-06-03 2019-02-05 Microsoft Technology Licensing, Llc Utilizing server pre-processing to deploy renditions of electronic documents in a computer network
US20110028209A1 (en) * 2009-07-30 2011-02-03 Microsoft Corporation Controlling content access
US9063932B2 (en) 2009-12-18 2015-06-23 Vertafore, Inc. Apparatus, method and article to manage electronic or digital documents in a networked environment
US8700682B2 (en) 2009-12-24 2014-04-15 Vertafore, Inc. Systems, methods and articles for template based generation of markup documents to access back office systems
US9059851B2 (en) 2010-02-23 2015-06-16 Salesforce.Com, Inc. Method and computer program product for order preserving symbol based encryption
US9489523B2 (en) * 2010-04-08 2016-11-08 University Of Washington Through Its Center For Commercialization Systems and methods for file access auditing
US8601600B1 (en) 2010-05-18 2013-12-03 Google Inc. Storing encrypted objects
TWI465957B (zh) * 2010-08-10 2014-12-21 Trustview Inc 以終端裝置執行的之版權管理離線授權之方法與終端裝置
US9589145B2 (en) * 2010-11-24 2017-03-07 Oracle International Corporation Attaching web service policies to a group of policy subjects
US9384198B2 (en) 2010-12-10 2016-07-05 Vertafore, Inc. Agency management system and content management system integration
US9137014B2 (en) * 2011-01-25 2015-09-15 Adobe Systems Incorporated Systems and methods for controlling electronic document use
US8996985B1 (en) 2011-03-16 2015-03-31 Google Inc. Online document processing service for displaying comments
US8731973B2 (en) 2011-04-19 2014-05-20 Vertafore, Inc. Overlaying images in automated insurance policy form generation
CN103688485A (zh) * 2011-05-18 2014-03-26 西里克斯系统公司 用于对数据进行安全处理的系统和方法
US9652741B2 (en) 2011-07-08 2017-05-16 Box, Inc. Desktop application for access and interaction with workspaces in a cloud-based content management system and synchronization mechanisms thereof
CN102281141B (zh) * 2011-07-26 2013-11-06 华为数字技术(成都)有限公司 一种文档权限管理方法、装置及系统
US9626379B1 (en) * 2011-09-22 2017-04-18 Amazon Technologies, Inc. Optimistic commit processing for an offline document repository
US9355115B2 (en) * 2011-11-21 2016-05-31 Microsoft Technology Licensing, Llc Client application file access
GB2500152A (en) 2011-11-29 2013-09-11 Box Inc Mobile platform file and folder selection functionalities for offline access and synchronization
US8295490B1 (en) * 2011-12-13 2012-10-23 Google Inc. Method and system for storing and providing an encryption key for data storage
US9203610B2 (en) * 2011-12-13 2015-12-01 Zyad Azzouz Systems and methods for secure peer-to-peer communications
US8955086B2 (en) * 2012-03-16 2015-02-10 Red Hat, Inc. Offline authentication
US9575981B2 (en) 2012-04-11 2017-02-21 Box, Inc. Cloud service enabled to handle a set of files depicted to a user as a single file in a native operating system
US9794256B2 (en) 2012-07-30 2017-10-17 Box, Inc. System and method for advanced control tools for administrators in a cloud-based service
US9553758B2 (en) 2012-09-18 2017-01-24 Box, Inc. Sandboxing individual applications to specific user folders in a cloud-based service
US9081975B2 (en) 2012-10-22 2015-07-14 Palantir Technologies, Inc. Sharing information between nexuses that use different classification schemes for information access control
US9501761B2 (en) * 2012-11-05 2016-11-22 Palantir Technologies, Inc. System and method for sharing investigation results
US8972732B2 (en) 2012-12-12 2015-03-03 Microsoft Technology Licensing, Llc Offline data access using trusted hardware
US10235383B2 (en) 2012-12-19 2019-03-19 Box, Inc. Method and apparatus for synchronization of items with read-only permissions in a cloud-based environment
US9953036B2 (en) 2013-01-09 2018-04-24 Box, Inc. File system monitoring in a system which incrementally updates clients with events that occurred in a cloud-based collaboration platform
US9507795B2 (en) 2013-01-11 2016-11-29 Box, Inc. Functionalities, features, and user interface of a synchronization client to a cloud-based environment
EP2757491A1 (en) 2013-01-17 2014-07-23 Box, Inc. Conflict resolution, retry condition management, and handling of problem files for the synchronization client to a cloud-based platform
US10657278B2 (en) 2013-03-15 2020-05-19 Live Nation Entertainment, Inc. Prioritized link establishment for data transfer using task scheduling
US9798892B2 (en) 2013-03-15 2017-10-24 Live Nation Entertainment, Inc. Prioritized link establishment for data transfer using task scheduling
US9928380B2 (en) * 2013-05-07 2018-03-27 International Business Machines Corporation Managing file usage
US10725968B2 (en) 2013-05-10 2020-07-28 Box, Inc. Top down delete or unsynchronization on delete of and depiction of item synchronization with a synchronization client to a cloud-based platform
US9633037B2 (en) 2013-06-13 2017-04-25 Box, Inc Systems and methods for synchronization event building and/or collapsing by a synchronization component of a cloud-based platform
US9805050B2 (en) 2013-06-21 2017-10-31 Box, Inc. Maintaining and updating file system shadows on a local device by a synchronization client of a cloud-based platform
US9535924B2 (en) 2013-07-30 2017-01-03 Box, Inc. Scalability improvement in a system which incrementally updates clients with events that occurred in a cloud-based collaboration platform
US9507814B2 (en) 2013-12-10 2016-11-29 Vertafore, Inc. Bit level comparator systems and methods
US9367435B2 (en) 2013-12-12 2016-06-14 Vertafore, Inc. Integration testing method and system for web services
US9697378B2 (en) * 2013-12-13 2017-07-04 International Business Machines Corporation Network encrypted data object stored on an encrypted file system
US20150269522A1 (en) * 2014-03-21 2015-09-24 ASPN Solutions, LLC System and method for sharing diligence information related to an investment fund
US9614854B2 (en) * 2014-03-25 2017-04-04 Open Text Sa Ulc System and method for maintenance of transitive closure of a graph and user authentication
US10530854B2 (en) 2014-05-30 2020-01-07 Box, Inc. Synchronization of permissioned content in cloud-based environments
US9747556B2 (en) 2014-08-20 2017-08-29 Vertafore, Inc. Automated customized web portal template generation systems and methods
US20160088065A1 (en) * 2014-09-21 2016-03-24 Varonis Systems, Ltd. Demanded downloads by links
US10387577B2 (en) * 2015-03-03 2019-08-20 WonderHealth, LLC Secure data translation using machine-readable identifiers
US9710619B2 (en) 2015-03-31 2017-07-18 Canon Information And Imaging Solutions, Inc. System and method for providing an electronic document
SE540498C2 (en) * 2015-10-13 2018-09-25 Surfboard Innovations Ab Method for making an electronic payment
US9600400B1 (en) 2015-10-29 2017-03-21 Vertafore, Inc. Performance testing of web application components using image differentiation
US10068100B2 (en) 2016-01-20 2018-09-04 Microsoft Technology Licensing, Llc Painting content classifications onto document portions
US20210111880A1 (en) * 2016-02-18 2021-04-15 Agency For Science, Technology And Research Access control methods, access control devices, and computer readable media
KR102621877B1 (ko) * 2017-01-06 2024-01-05 한화비전 주식회사 멀티캐스트 환경의 보안 시스템에서 키를 관리하는 방법
WO2019083677A1 (en) * 2017-10-27 2019-05-02 Fujifilm Sonosite, Inc. METHOD AND APPARATUS FOR INTERACTING WITH MEDICAL WORK SHEETS IN INTERVENTION POINT BROWSER
US11798665B2 (en) 2017-10-27 2023-10-24 Fujifilm Sonosite, Inc. Method and apparatus for interacting with medical worksheets
US11270069B1 (en) * 2018-04-30 2022-03-08 InVisionApp Inc. Collaboration synchronization across devices
US11258580B2 (en) * 2019-10-04 2022-02-22 Red Hat, Inc. Instantaneous key invalidation in response to a detected eavesdropper
CN112906021B (zh) * 2021-02-10 2022-02-18 北京深思数盾科技股份有限公司 一种文档处理方法及装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04504794A (ja) * 1989-04-28 1992-08-20 ソフテル,インコーポレイテッド コンピュータソフトウェアの使用を遠隔制御及びモニタするための方法及び装置
JPH07295801A (ja) * 1994-04-25 1995-11-10 Internatl Business Mach Corp <Ibm> ソフトウェア・オブジェクトの配布方法
JP2000227870A (ja) * 1998-12-23 2000-08-15 Internatl Business Mach Corp <Ibm> 電子デ―タ・ファイルを検索するシステムおよびその維持方法
WO2002080447A1 (en) * 2001-03-29 2002-10-10 Sony Corporation Information processing apparatus
JP2003218851A (ja) * 2001-12-12 2003-07-31 Pervasive Security Systems Inc ディジタル資産を安全化する方法及び装置
JP2003228520A (ja) * 2001-12-12 2003-08-15 Pervasive Security Systems Inc 保護電子データにオフラインでアクセスする方法及び装置
JP2003228519A (ja) * 2001-12-12 2003-08-15 Pervasive Security Systems Inc デジタル資産にパーベイシブ・セキュリティを提供する方法及びアーキテクチャ

Family Cites Families (145)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US633925A (en) * 1899-05-16 1899-09-26 Warner Swasey Co Friction-clutch.
US5586260A (en) 1993-02-12 1996-12-17 Digital Equipment Corporation Method and apparatus for authenticating a client to a server in computer systems which support different security mechanisms
NL9301348A (nl) 1993-08-02 1995-03-01 Stefanus Alfonsus Brands Elektronisch betalingssysteem.
EP0674253B1 (en) 1994-03-15 2003-02-19 Kabushiki Kaisha Toshiba Shared file editing system with file content secrecy, version management and asynchronous editing
ATE419586T1 (de) 1995-02-13 2009-01-15 Intertrust Tech Corp Systeme und verfahren zur gesicherten transaktionsverwaltung und elektronischem rechtsschutz
JPH08249317A (ja) 1995-03-08 1996-09-27 Toshiba Corp 文書提供方法、文書提供装置、及び文書要求装置
US5951639A (en) 1996-02-14 1999-09-14 Powertv, Inc. Multicast downloading of software and data modules and their compatibility requirements
AU2230597A (en) * 1996-02-28 1997-09-16 Aim Corporation Communication system for distributing such message as advertisement to user of terminal equipment
US6009543A (en) 1996-03-01 1999-12-28 Massachusetts Institute Of Technology Secure software system and related techniques
US5864837A (en) 1996-06-12 1999-01-26 Unisys Corporation Methods and apparatus for efficient caching in a distributed environment
EP0848334A4 (en) 1996-07-01 2007-08-29 Fujitsu Ltd METHOD AND DEVICE FOR MANAGING THE USE OF SHARED RESOURCES BY SEVERAL GROUPS
US6006034A (en) 1996-09-05 1999-12-21 Open Software Associates, Ltd. Systems and methods for automatic application version upgrading and maintenance
AU4315097A (en) * 1996-09-25 1998-04-17 British Telecommunications Public Limited Company Network-based conference system
US6553490B1 (en) 1997-06-30 2003-04-22 Sun Microsystems, Inc. Computer system including local computer with capability to automatically update operating system or application program from network server
US6240414B1 (en) 1997-09-28 2001-05-29 Eisolutions, Inc. Method of resolving data conflicts in a shared data environment
US6321242B1 (en) 1998-02-06 2001-11-20 Sun Microsystems, Inc. Re-linking technology for a moving web site
EP0936805A1 (en) * 1998-02-12 1999-08-18 Hewlett-Packard Company Document transfer systems
US6623529B1 (en) 1998-02-23 2003-09-23 David Lakritz Multilingual electronic document translation, management, and delivery system
US6457130B2 (en) 1998-03-03 2002-09-24 Network Appliance, Inc. File access control in a multi-protocol file server
US20010044901A1 (en) 1998-03-24 2001-11-22 Symantec Corporation Bubble-protected system for automatic decryption of file data on a per-use basis and automatic re-encryption
US6088694A (en) 1998-03-31 2000-07-11 International Business Machines Corporation Continuous availability and efficient backup for externally referenced objects
US6487301B1 (en) 1998-04-30 2002-11-26 Mediasec Technologies Llc Digital authentication with digital and analog documents
US20040117664A1 (en) 1998-06-04 2004-06-17 Z4 Technologies, Inc. Apparatus for establishing a connectivity platform for digital rights management
JP3836261B2 (ja) 1998-08-10 2006-10-25 株式会社リコー ファイルシステム
US6038322A (en) 1998-10-20 2000-03-14 Cisco Technology, Inc. Group key distribution
US6694434B1 (en) 1998-12-23 2004-02-17 Entrust Technologies Limited Method and apparatus for controlling program execution and program distribution
US6381602B1 (en) 1999-01-26 2002-04-30 Microsoft Corporation Enforcing access control on resources at a location other than the source location
US6795967B1 (en) 1999-01-26 2004-09-21 Microsoft Corporation Changing user identities without closing applications
US7062765B1 (en) 1999-05-25 2006-06-13 Realnetworks, Inc. System and method for updating information via a network
US6289450B1 (en) * 1999-05-28 2001-09-11 Authentica, Inc. Information security architecture for encrypting documents for remote access while maintaining access control
GB9913165D0 (en) * 1999-06-08 1999-08-04 Secr Defence Access control in a web environment
US6988199B2 (en) * 2000-07-07 2006-01-17 Message Secure Secure and reliable document delivery
TW431094B (en) 1999-07-16 2001-04-21 Via Tech Inc Memory access of Ethernet
US6327584B1 (en) 1999-07-30 2001-12-04 Hewlett-Packard Company Apparatus and method for using version control to dynamically update files while the files are available for access
US6609198B1 (en) 1999-08-05 2003-08-19 Sun Microsystems, Inc. Log-on service providing credential level change without loss of session continuity
US6961849B1 (en) * 1999-10-21 2005-11-01 International Business Machines Corporation Selective data encryption using style sheet processing for decryption by a group clerk
US6931532B1 (en) * 1999-10-21 2005-08-16 International Business Machines Corporation Selective data encryption using style sheet processing
US6941459B1 (en) * 1999-10-21 2005-09-06 International Business Machines Corporation Selective data encryption using style sheet processing for decryption by a key recovery agent
US6978367B1 (en) * 1999-10-21 2005-12-20 International Business Machines Corporation Selective data encryption using style sheet processing for decryption by a client proxy
US6564215B1 (en) 1999-12-16 2003-05-13 International Business Machines Corporation Update support in database content management
US6963971B1 (en) * 1999-12-18 2005-11-08 George Bush Method for authenticating electronic documents
US7676674B2 (en) * 1999-12-18 2010-03-09 George Bush Method for authenticating electronic documents
US6721747B2 (en) 2000-01-14 2004-04-13 Saba Software, Inc. Method and apparatus for an information server
US6907546B1 (en) * 2000-03-27 2005-06-14 Accenture Llp Language-driven interface for an automated testing framework
US6950935B1 (en) 2000-04-21 2005-09-27 Sun Microsystems, Inc. Pluggable authentication modules for telecommunications management network
DE60128290T2 (de) * 2000-05-11 2007-08-30 Matsushita Electric Industrial Co., Ltd., Kadoma Vorrichtung zur Dateienverwaltung
US6796489B2 (en) * 2000-06-06 2004-09-28 Ingeo Systems, Inc. Processing electronic documents with embedded digital signatures
KR100354488B1 (ko) 2000-06-16 2002-10-11 주식회사 이플래닛 물리적 상품을 이용하여 디지털 상품의 복제/배포를방지하는 장치 및 방법
KR20010113235A (ko) * 2000-06-17 2001-12-28 윤종용 기록가능한 광디스크를 이용한 데이터 베이스 갱신 방법및 이에 적합한 장치들
US6986039B1 (en) 2000-07-11 2006-01-10 International Business Machines Corporation Technique for synchronizing security credentials using a trusted authenticating domain
AU7593601A (en) 2000-07-14 2002-01-30 Atabok Inc Controlling and managing digital assets
US7197638B1 (en) 2000-08-21 2007-03-27 Symantec Corporation Unified permissions control for remotely and locally stored files whose informational content may be protected by smart-locking and/or bubble-protection
US8832852B2 (en) 2000-08-28 2014-09-09 Contentguard Holdings, Inc. Method and apparatus for dynamic protection of static and dynamic content
US7743259B2 (en) 2000-08-28 2010-06-22 Contentguard Holdings, Inc. System and method for digital rights management using a standard rendering engine
JP2002080447A (ja) 2000-08-31 2002-03-19 Tokushima Prefecture Chiiki Sangyo Gijutsu Kaihatsu Kenkyu Kiko 第四級アンモニウム塩化合物、その製造法及び応用
US20020138617A1 (en) 2000-09-06 2002-09-26 Jacob Christfort Providing content from multiple services
US20020083438A1 (en) * 2000-10-26 2002-06-27 So Nicol Chung Pang System for securely delivering encrypted content on demand with access contrl
US20020083183A1 (en) 2000-11-06 2002-06-27 Sanjay Pujare Conventionally coded application conversion system for streamed delivery and execution
US6873976B2 (en) 2000-12-01 2005-03-29 900Pennies Incorporated Secured purchasing system
US6856976B2 (en) 2000-12-01 2005-02-15 900Pennies Incorporated Secured commercial transaction
US6944815B2 (en) 2000-12-15 2005-09-13 International Business Machines Corporation Technique for content off-loading in a document processing system using stub documents
US6978376B2 (en) * 2000-12-15 2005-12-20 Authentica, Inc. Information security architecture for encrypting documents for remote access while maintaining access control
US20020124109A1 (en) 2000-12-26 2002-09-05 Appareon System, method and article of manufacture for multilingual global editing in a supply chain system
US20020087876A1 (en) 2000-12-28 2002-07-04 Larose Gordon Edward Adaptive software installation process supporting multiple layers of security-related attributes
US7076067B2 (en) 2001-02-21 2006-07-11 Rpk New Zealand Limited Encrypted media key management
JP2002259606A (ja) * 2001-02-28 2002-09-13 Internatl Business Mach Corp <Ibm> プログラム使用許諾期間の更新方法、プログラムの使用許諾方法、情報処理システムおよびプログラム
US6847983B2 (en) 2001-02-28 2005-01-25 Kiran Somalwar Application independent write monitoring method for fast backup and synchronization of open files
US7140012B2 (en) 2001-03-09 2006-11-21 Bea Systems, Inc. Method and apparatus for multi-version updates of application services
US7058663B2 (en) * 2001-03-13 2006-06-06 Koninklijke Philips Electronics, N.V. Automatic data update
US6981138B2 (en) * 2001-03-26 2005-12-27 Microsoft Corporation Encrypted key cache
US7117493B2 (en) 2001-03-28 2006-10-03 Ricoh Company, Ltd. Image formation system, software acquisition method, and computer product
US20020178353A1 (en) * 2001-04-11 2002-11-28 Graham Randall James Secure messaging using self-decrypting documents
US7461405B2 (en) 2001-04-26 2008-12-02 Autodesk, Inc. Mixed-media data encoding
US6941456B2 (en) * 2001-05-02 2005-09-06 Sun Microsystems, Inc. Method, system, and program for encrypting files in a computer system
US6912591B2 (en) 2001-05-02 2005-06-28 Science Application International Corporation System and method for patch enabled data transmissions
US20030055927A1 (en) * 2001-06-06 2003-03-20 Claudius Fischer Framework for a device and a computer system needing synchronization
US7395245B2 (en) 2001-06-07 2008-07-01 Matsushita Electric Industrial Co., Ltd. Content usage management system and server used in the system
US6889233B2 (en) 2001-06-18 2005-05-03 Microsoft Corporation Selective file purging for delete or rename
EP1271310B1 (de) 2001-06-26 2003-02-05 Aladdin Knowledge Systems GmbH&amp; Co. KG Verfahren zum Erweitern einer mittels eines Installationsprogramms zu installierenden Anwendung um eine Funktion und Computerprogrammprodukt
US6968396B1 (en) 2001-07-26 2005-11-22 Openwave Systems Inc. Reloading of hypermedia pages by sending only changes
US7076736B2 (en) 2001-07-31 2006-07-11 Thebrain Technologies Corp. Method and apparatus for sharing many thought databases among many clients
EP1563389A4 (en) 2001-08-01 2008-06-25 Actona Technologies Ltd VIRTUAL DATA DISTRIBUTION NETWORK
GB2379041B (en) 2001-08-22 2005-03-23 Hewlett Packard Co A method of performing a data processing operation
JP3970137B2 (ja) 2001-09-14 2007-09-05 キヤノン株式会社 文書処理方法及びその装置
US20030065739A1 (en) 2001-10-01 2003-04-03 J. Mitchell Shnier Methods for independently generating a reference to desired information available from a remote source
US7359517B1 (en) * 2001-10-09 2008-04-15 Adobe Systems Incorporated Nestable skeleton decryption keys for digital rights management
US7200747B2 (en) * 2001-10-31 2007-04-03 Hewlett-Packard Development Company, L.P. System for ensuring data privacy and user differentiation in a distributed file system
US7171557B2 (en) * 2001-10-31 2007-01-30 Hewlett-Packard Development Company, L.P. System for optimized key management with file groups
US6895289B2 (en) * 2001-11-16 2005-05-17 Hitachi, Ltd. Document management system and method
US8006280B1 (en) * 2001-12-12 2011-08-23 Hildebrand Hal S Security system for generating keys from access rules in a decentralized manner and methods therefor
US7921450B1 (en) * 2001-12-12 2011-04-05 Klimenty Vainstein Security system using indirect key generation from access rules and methods therefor
US7631184B2 (en) * 2002-05-14 2009-12-08 Nicholas Ryan System and method for imposing security on copies of secured items
US7380120B1 (en) * 2001-12-12 2008-05-27 Guardian Data Storage, Llc Secured data format for access control
US8065713B1 (en) * 2001-12-12 2011-11-22 Klimenty Vainstein System and method for providing multi-location access management to secured items
US7921288B1 (en) * 2001-12-12 2011-04-05 Hildebrand Hal S System and method for providing different levels of key security for controlling access to secured items
US10033700B2 (en) * 2001-12-12 2018-07-24 Intellectual Ventures I Llc Dynamic evaluation of access rights
US6889210B1 (en) * 2001-12-12 2005-05-03 Pss Systems, Inc. Method and system for managing security tiers
US20030110169A1 (en) * 2001-12-12 2003-06-12 Secretseal Inc. System and method for providing manageability to security information for secured items
US7783765B2 (en) * 2001-12-12 2010-08-24 Hildebrand Hal S System and method for providing distributed access control to secured documents
US7681034B1 (en) * 2001-12-12 2010-03-16 Chang-Ping Lee Method and apparatus for securing electronic data
US7478418B2 (en) * 2001-12-12 2009-01-13 Guardian Data Storage, Llc Guaranteed delivery of changes to security policies in a distributed system
JP4108973B2 (ja) 2001-12-26 2008-06-25 株式会社日立製作所 バックアップシステム
US6592332B1 (en) 2002-01-14 2003-07-15 Joe Kent Stoker Pump-off control interrupter
US7237189B2 (en) * 2002-02-11 2007-06-26 Sap Aktiengesellschaft Offline e-learning system
US20030154071A1 (en) 2002-02-11 2003-08-14 Shreve Gregory M. Process for the document management and computer-assisted translation of documents utilizing document corpora constructed by intelligent agents
US20030191917A1 (en) * 2002-04-04 2003-10-09 International Business Machines Corporation Apparatus and method of maintaining reliable offline mirror copies in virtual volume groups
US6931597B1 (en) * 2002-04-17 2005-08-16 Pss Systems, Inc. Indications of secured digital assets
US20050071657A1 (en) * 2003-09-30 2005-03-31 Pss Systems, Inc. Method and system for securing digital assets using time-based security criteria
US7748045B2 (en) * 2004-03-30 2010-06-29 Michael Frederick Kenrich Method and system for providing cryptographic document retention with off-line access
US7209559B2 (en) * 2002-04-29 2007-04-24 The Boeing Company Method and apparatus for securely distributing large digital video/data files with optimum security
US20030208686A1 (en) * 2002-05-06 2003-11-06 Thummalapally Damodar R. Method of data protection
US7219230B2 (en) * 2002-05-08 2007-05-15 Hewlett-Packard Development Company, L.P. Optimizing costs associated with managing encrypted data
US20030217264A1 (en) 2002-05-14 2003-11-20 Signitas Corporation System and method for providing a secure environment during the use of electronic documents and data
US7814025B2 (en) 2002-05-15 2010-10-12 Navio Systems, Inc. Methods and apparatus for title protocol, authentication, and sharing
US7058630B2 (en) * 2002-08-12 2006-06-06 International Business Machines Corporation System and method for dynamically controlling access to a database
US20070022155A1 (en) * 2002-08-22 2007-01-25 Owens David H Method and system for integrating enterprise software applications with desktop software applications
AU2003260071A1 (en) * 2002-08-27 2004-03-19 Td Security, Inc., Dba Trust Digital, Llc Enterprise-wide security system for computer devices
US20040049571A1 (en) * 2002-09-06 2004-03-11 Johnson Bruce L. Tracking document usage
US20040059590A1 (en) 2002-09-13 2004-03-25 Dwayne Mercredi Credential promotion
AU2003279950A1 (en) 2002-10-10 2004-05-04 Rocksteady Networks, Inc. System and method for providing access control
US7143288B2 (en) * 2002-10-16 2006-11-28 Vormetric, Inc. Secure file system server architecture and methods
US7085755B2 (en) 2002-11-07 2006-08-01 Thomson Global Resources Ag Electronic document repository management and access system
US7367060B2 (en) * 2002-12-11 2008-04-29 Ravi Someshwar Methods and apparatus for secure document printing
US7181016B2 (en) * 2003-01-27 2007-02-20 Microsoft Corporation Deriving a symmetric key from an asymmetric key for file encryption or decryption
US7788177B2 (en) 2003-02-19 2010-08-31 Bible Jr Robert Encrypted e-commerce product
US7233981B2 (en) 2003-02-27 2007-06-19 Nortel Networks Limited System and method for multi-site load-balancing of encrypted traffic
US7320076B2 (en) * 2003-03-05 2008-01-15 Sun Microsystems, Inc. Method and apparatus for a transaction-based secure storage file system
US7370344B2 (en) 2003-04-14 2008-05-06 Sas Institute Inc. Computer-implemented data access security system and method
US7353397B1 (en) 2003-04-30 2008-04-01 Adobe Systems Incorporated Repurposing digitally signed information
US20040249765A1 (en) 2003-06-06 2004-12-09 Neopost Inc. Use of a kiosk to provide verifiable identification using cryptographic identifiers
US8122100B2 (en) 2003-07-28 2012-02-21 Limelight Networks, Inc. Multiple object download
US7515717B2 (en) 2003-07-31 2009-04-07 International Business Machines Corporation Security containers for document components
US7302570B2 (en) * 2003-08-19 2007-11-27 International Business Machines Corporation Apparatus, system, and method for authorized remote access to a target system
US7434048B1 (en) 2003-09-09 2008-10-07 Adobe Systems Incorporated Controlling access to electronic documents
US8127366B2 (en) * 2003-09-30 2012-02-28 Guardian Data Storage, Llc Method and apparatus for transitioning between states of security policies used to secure electronic documents
US7703140B2 (en) 2003-09-30 2010-04-20 Guardian Data Storage, Llc Method and system for securing digital assets using process-driven security policies
US7441011B2 (en) * 2003-10-23 2008-10-21 Microsoft Corporation Truth on client persistent caching
US7280956B2 (en) 2003-10-24 2007-10-09 Microsoft Corporation System, method, and computer program product for file encryption, decryption and transfer
US8108672B1 (en) * 2003-10-31 2012-01-31 Adobe Systems Incorporated Transparent authentication process integration
US7930757B2 (en) 2003-10-31 2011-04-19 Adobe Systems Incorporated Offline access in a document control system
US8627489B2 (en) 2003-10-31 2014-01-07 Adobe Systems Incorporated Distributed document version control
JP2006020253A (ja) * 2004-07-05 2006-01-19 Ricoh Co Ltd 情報管理システム、情報管理方法、記録媒体及びプログラム
JP4504794B2 (ja) 2004-12-03 2010-07-14 日本山村硝子株式会社 キャップ、内容物充填容器および内容物充填容器の洗浄方法
US7739746B2 (en) 2005-10-04 2010-06-15 Adobe Systems Incorporated Document control
US8554749B2 (en) 2006-10-23 2013-10-08 Adobe Systems Incorporated Data file access control

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04504794A (ja) * 1989-04-28 1992-08-20 ソフテル,インコーポレイテッド コンピュータソフトウェアの使用を遠隔制御及びモニタするための方法及び装置
JPH07295801A (ja) * 1994-04-25 1995-11-10 Internatl Business Mach Corp <Ibm> ソフトウェア・オブジェクトの配布方法
JP2000227870A (ja) * 1998-12-23 2000-08-15 Internatl Business Mach Corp <Ibm> 電子デ―タ・ファイルを検索するシステムおよびその維持方法
WO2002080447A1 (en) * 2001-03-29 2002-10-10 Sony Corporation Information processing apparatus
JP2003218851A (ja) * 2001-12-12 2003-07-31 Pervasive Security Systems Inc ディジタル資産を安全化する方法及び装置
JP2003228520A (ja) * 2001-12-12 2003-08-15 Pervasive Security Systems Inc 保護電子データにオフラインでアクセスする方法及び装置
JP2003228519A (ja) * 2001-12-12 2003-08-15 Pervasive Security Systems Inc デジタル資産にパーベイシブ・セキュリティを提供する方法及びアーキテクチャ

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006228057A (ja) * 2005-02-18 2006-08-31 Canon Inc 情報処理装置及びデータ管理システム
JP4717464B2 (ja) * 2005-02-18 2011-07-06 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
US8493581B2 (en) 2005-08-04 2013-07-23 Ricoh Company, Ltd. Electronic document having authentication function
US7853986B2 (en) 2005-08-24 2010-12-14 Canon Kabushiki Kaisha Document distribution system and method
JP2007058567A (ja) * 2005-08-24 2007-03-08 Canon Inc 文書配信システム、クライアント装置および文書配信方法
JP4481903B2 (ja) * 2005-08-24 2010-06-16 キヤノン株式会社 文書配信システム、文書管理クライアント、文書配信方法およびプログラム
JP2007207171A (ja) * 2006-02-06 2007-08-16 Ricoh Co Ltd 文書アクセス制御システム
US7992188B2 (en) 2006-02-06 2011-08-02 Ricoh Company, Ltd. Document access control system, data processing apparatus, program product and method for performing document access control
US8584230B2 (en) 2006-09-08 2013-11-12 Microsoft Corporation Security authorization queries
JP2010503123A (ja) * 2006-09-08 2010-01-28 マイクロソフト コーポレーション セキュリティ許可照会
US8656503B2 (en) 2006-09-11 2014-02-18 Microsoft Corporation Security language translations with logic resolution
US9282121B2 (en) 2006-09-11 2016-03-08 Microsoft Technology Licensing, Llc Security language translations with logic resolution
US8938783B2 (en) 2006-09-11 2015-01-20 Microsoft Corporation Security language expressions for logic resolution
JP2009015766A (ja) * 2007-07-09 2009-01-22 Nec Corp ユーザ端末、アクセス管理システム、アクセス管理方法、およびプログラム
WO2010047080A1 (ja) * 2008-10-20 2010-04-29 日本電気株式会社 アクセス制御システム、アクセス制御方法およびプログラム
WO2010073443A1 (en) 2008-12-26 2010-07-01 Digital Arts Inc. Electronic file sending method
US10701065B2 (en) 2015-04-15 2020-06-30 Citrix Systems, Inc. Authentication of a client device based on entropy from a server or other device
JP2018518738A (ja) * 2015-04-15 2018-07-12 サイトリックス システムズ,インコーポレイテッド サーバまたは他の装置からのエントロピーに基づくクライアント装置の認証
US11558372B2 (en) 2015-04-15 2023-01-17 Citrix Systems, Inc. Authentication of a client device based on entropy from a server or other device
US10673845B2 (en) 2015-05-12 2020-06-02 Citrix Systems, Inc. Multifactor contextual authentication and entropy from device or device input or gesture authentication
USD888732S1 (en) 2015-05-12 2020-06-30 Citrix Systems, Inc. Display screen or portion thereof with transitional graphical user interface
US11297055B2 (en) 2015-05-12 2022-04-05 Citrix Systems, Inc. Multifactor contextual authentication and entropy from device or device input or gesture authentication
USD886129S1 (en) 2016-05-10 2020-06-02 Citrix Systems, Inc. Display screen or portion thereof with graphical user interface
USD907652S1 (en) 2016-05-10 2021-01-12 Citrix Systems, Inc. Display screen or portion thereof with graphical user interface
USD915419S1 (en) 2016-05-10 2021-04-06 Citrix Systems, Inc. Display screen or portion thereof with transitional graphical user interface
USD888730S1 (en) 2016-05-10 2020-06-30 Citrix Systems, Inc. Display screen or portion thereof with graphical user interface
USD888731S1 (en) 2016-05-10 2020-06-30 Citrix Systems, Inc. Display screen or portion thereof with transitional graphical user interface

Also Published As

Publication number Publication date
EP1528455A1 (en) 2005-05-04
US8479301B2 (en) 2013-07-02
JP4853939B2 (ja) 2012-01-11
US20050097061A1 (en) 2005-05-05
US7930757B2 (en) 2011-04-19
US20110191858A1 (en) 2011-08-04

Similar Documents

Publication Publication Date Title
JP4853939B2 (ja) 文書制御システムにおけるオフラインアクセス
US8925108B2 (en) Document access auditing
US8627489B2 (en) Distributed document version control
US8627077B2 (en) Transparent authentication process integration
US8832047B2 (en) Distributed document version control
US20130212707A1 (en) Document control system
US11475137B2 (en) Distributed data storage by means of authorisation token
US7320076B2 (en) Method and apparatus for a transaction-based secure storage file system
US10275603B2 (en) Containerless data for trustworthy computing and data services
EP2513804B1 (en) Trustworthy extensible markup language for trustworthy computing and data services
CN111147255B (zh) 数据安全服务系统、方法和计算机可读储存介质
US7587608B2 (en) Method and apparatus for storing data on the application layer in mobile devices
US6272631B1 (en) Protected storage of core data secrets
US7434048B1 (en) Controlling access to electronic documents
JP2003228519A (ja) デジタル資産にパーベイシブ・セキュリティを提供する方法及びアーキテクチャ
US10546142B2 (en) Systems and methods for zero-knowledge enterprise collaboration
WO2023069444A1 (en) Personal data protection
Gawande et al. A Survey of Various Security Management Models for Cloud Computing Storage Systems

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071101

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100629

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100928

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20101001

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20101028

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20101102

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110208

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110509

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110512

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110607

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110610

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110705

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110708

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110801

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110920

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20111005

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20111014

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111020

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141104

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4853939

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees