(57)【要約】【課題】利用者により要求された電子情報に対する操作が操作権情報に基づく許可がなされない操作であっても、その電子情報又はその電子情報と対応付けされた対応付け場所に対する要求元の利用者による操作の履歴に基づいて操作を許可するようにした情報管理プログラムを提供する。【解決手段】情報管理プログラムは、コンピュータに、許可される操作を利用者ごとに定めた操作権情報と対応付けられた電子情報に対する操作の要求を受け付ける機能と、電子情報等に対する操作を実行する機能と、電子情報等に対する操作の履歴を示す操作履歴情報を操作履歴記憶手段に記憶させる機能と、操作権情報に基づいて操作の要求元に操作を許可すると判断したときに、操作の実行を開始させるように制御する機能と、操作の要求元による電子情報等に対する操作の履歴が予め定められた条件を満たしているときに、操作の実行を開始させるように制御する機能を実現させる。【選択図】図１
2010055520.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
許可される操作を利用者ごとに定めた操作権情報と対応付けられた電子情報に対する操作の要求を受け付ける操作要求受付機能と、
電子情報又は電子情報と対応付けされた対応付け場所に対する操作を実行する操作実行機能と、
前記操作実行機能により実行された電子情報又は電子情報と対応付けされた対応付け場所に対する操作の履歴を示す操作履歴情報を操作履歴記憶手段に記憶させる機能と、
前記操作要求受付機能により電子情報に対する操作の要求を受け付けた場合、当該電子情報に対応付けられた操作権情報に基づいて当該操作の要求元の利用者に当該操作を許可すると判断したときに、前記操作実行機能に当該操作の実行を開始させるように制御する第１の操作制御機能と、
前記操作要求受付機能により電子情報に対する操作の要求を受け付けた場合、前記操作履歴記憶手段に記憶された操作履歴情報に示される、当該操作の要求元の利用者による当該電子情報又は当該電子情報と対応付けされた対応付け場所に対する操作の履歴が予め定められた条件を満たしているときに、前記操作実行機能に当該操作の実行を開始させるように制御する第２の操作制御機能
を実現させることを特徴とする情報管理プログラム。
【請求項２】
前記予め定められた条件として、
前記操作の要求元の利用者によって、前記操作要求受付機能により操作の要求を受け付けた電子情報に対する操作が現在より予め定められた期間以内にあったこと、
又は、前記操作要求受付機能により操作の要求を受け付けた電子情報と対応付けされた対応付け場所に対する操作が現在より予め定められた期間以内にあったこと、
を含むことを特徴とする請求項１に記載の情報管理プログラム。
【請求項３】
前記コンピュータに、
前記第２の操作制御機能による処理を実行させるか否かを切り替える切替機能
をさらに実現させることを特徴とする請求項１又は２のいずれか一項に記載の情報管理プログラム。
【請求項４】
前記操作の対象の電子情報は、木構造を構成する要素であり、
前記第２の操作制御機能は、前記操作の要求元の利用者による前記電子情報を要素とする木構造における上位に位置する電子情報に対する操作の履歴が予め定められた条件を満たしているときに、前記操作実行機能に当該操作の実行を開始させるように制御する
ことを特徴とする請求項１から３のいずれか一項に記載の情報管理プログラム。
【請求項５】
前記操作実行機能は、前記操作を実行する場合は、前記操作の対象である電子情報を複製した複製電子情報に対して行い、
前記コンピュータに、
前記操作実行機能によって実行された操作を承認するか否かの権限を有する利用者に対して問い合わせる問い合わせ機能
をさらに実現させ、
前記操作実行機能は、前記問い合わせ機能による問い合わせに対して承認された場合は、前記操作の対象である複製元の原電子情報を前記複製電子情報に基づいて更新する
ことを特徴とする請求項１から４のいずれか一項に記載の情報管理プログラム。
【請求項６】
前記予め定められた条件として、
前記操作の要求元の利用者によって、前記操作要求受付機能により操作の要求を受け付けた電子情報又は当該電子情報と対応付けされた対応付け場所に対する操作が現在より予め定められた第１の期間以内にはない場合であって、前記操作の要求元の利用者は、現在より予め定められた第２の期間以内に操作権が付与された者であること
を含むことを特徴とする請求項５に記載の情報管理プログラム。
【請求項７】
許可される操作を利用者ごとに定めた操作権情報と対応付けられた電子情報に対する操作の要求を受け付ける操作要求受付手段と、
電子情報又は電子情報と対応付けされた対応付け場所に対する操作を実行する操作実行手段と、
前記操作実行手段により実行された電子情報又は電子情報と対応付けされた対応付け場所に対する操作の履歴を示す操作履歴情報を記憶する操作履歴記憶手段と、
前記操作要求受付手段により電子情報に対する操作の要求を受け付けた場合、当該電子情報に対応付けられた操作権情報に基づいて当該操作の要求元の利用者に当該操作を許可すると判断したときに、前記操作実行手段に当該操作の実行を開始させるように制御する第１の操作制御手段と、
前記操作要求受付手段により電子情報に対する操作の要求を受け付けた場合、前記操作履歴記憶手段に記憶された操作履歴情報に示される、当該操作の要求元の利用者による当該電子情報又は当該電子情報と対応付けされた対応付け場所に対する操作の履歴が予め定められた条件を満たしているときに、前記操作実行手段に当該操作の実行を開始させるように制御する第２の操作制御手段
を具備することを特徴とする情報管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報管理プログラム及び情報管理システムに関する。
【背景技術】
【０００２】
電子情報に対して許可される操作を利用者ごとに定めた操作権情報に応じて、利用者による電子情報に対する操作を制御する情報管理システムが知られている。
【０００３】
これに関連する技術として、例えば、特許文献１には、少なくとも複数台の端末装置がネットワーク上に接続されて成るコンピュータシステムにおいて、データ種別及び担当者別にデータ更新を制限する権限定義情報及び承認先の端末情報を記憶する記憶手段と、前記記憶手段内の権限定義情報及び端末情報を参照することによりデータ更新の可否とその承認先の端末を決定する決定手段と、所定管理者の承認を必要とするデータに対して更新指示が行われた場合に、前記決定手段によりデータ更新可が決定されていることを条件に、その更新指示内容を一時記憶手段に書き込んで記憶保持しておくと共に、データの更新指定の承認要請を通知する第１の更新制御手段と、前記承認要請に応じて前記決定手段で決定された承認先の端末において承認可の入力が行われたことを条件に、前記一時記憶手段内の更新指示内容に基づいてデータを更新する第２の更新制御手段とを具備したデータ処理システムが開示されている。
【特許文献１】特許第３９２１８６５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は、利用者により要求された電子情報に対する操作が操作権情報に基づく許可がなされない操作であっても、その電子情報又はその電子情報と対応付けされた対応付け場所に対する要求元の利用者による操作の履歴に基づいて操作を許可するようにした情報管理プログラム及び情報管理システムを提供することを目的としている。
【課題を解決するための手段】
【０００５】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項１の発明は、コンピュータに、許可される操作を利用者ごとに定めた操作権情報と対応付けられた電子情報に対する操作の要求を受け付ける操作要求受付機能と、電子情報又は電子情報と対応付けされた対応付け場所に対する操作を実行する操作実行機能と、前記操作実行機能により実行された電子情報又は電子情報と対応付けされた対応付け場所に対する操作の履歴を示す操作履歴情報を操作履歴記憶手段に記憶させる機能と、前記操作要求受付機能により電子情報に対する操作の要求を受け付けた場合、当該電子情報に対応付けられた操作権情報に基づいて当該操作の要求元の利用者に当該操作を許可すると判断したときに、前記操作実行機能に当該操作の実行を開始させるように制御する第１の操作制御機能と、前記操作要求受付機能により電子情報に対する操作の要求を受け付けた場合、前記操作履歴記憶手段に記憶された操作履歴情報に示される、当該操作の要求元の利用者による当該電子情報又は当該電子情報と対応付けされた対応付け場所に対する操作の履歴が予め定められた条件を満たしているときに、前記操作実行機能に当該操作の実行を開始させるように制御する第２の操作制御機能を実現させることを特徴とする情報管理プログラムである。
【０００６】
請求項２の発明は、前記予め定められた条件として、前記操作の要求元の利用者によって、前記操作要求受付機能により操作の要求を受け付けた電子情報に対する操作が現在より予め定められた期間以内にあったこと、又は、前記操作要求受付機能により操作の要求を受け付けた電子情報と対応付けされた対応付け場所に対する操作が現在より予め定められた期間以内にあったこと、を含むことを特徴とする請求項１に記載の情報管理プログラムである。
【０００７】
請求項３の発明は、前記コンピュータに、前記第２の操作制御機能による処理を実行させるか否かを切り替える切替機能をさらに実現させることを特徴とする請求項１又は２のいずれか一項に記載の情報管理プログラムである。
【０００８】
請求項４の発明は、前記操作の対象の電子情報は、木構造を構成する要素であり、前記第２の操作制御機能は、前記操作の要求元の利用者による前記電子情報を要素とする木構造における上位に位置する電子情報に対する操作の履歴が予め定められた条件を満たしているときに、前記操作実行機能に当該操作の実行を開始させるように制御することを特徴とする請求項１から３のいずれか一項に記載の情報管理プログラムである。
【０００９】
請求項５の発明は、前記操作実行機能は、前記操作を実行する場合は、前記操作の対象である電子情報を複製した複製電子情報に対して行い、前記コンピュータに、前記操作実行機能によって実行された操作を承認するか否かの権限を有する利用者に対して問い合わせる問い合わせ機能をさらに実現させ、前記操作実行機能は、前記問い合わせ機能による問い合わせに対して承認された場合は、前記操作の対象である複製元の原電子情報を前記複製電子情報に基づいて更新することを特徴とする請求項１から４のいずれか一項に記載の情報管理プログラムである。
【００１０】
請求項６の発明は、前記予め定められた条件として、前記操作の要求元の利用者によって、前記操作要求受付機能により操作の要求を受け付けた電子情報又は当該電子情報と対応付けされた対応付け場所に対する操作が現在より予め定められた第１の期間以内にはない場合であって、前記操作の要求元の利用者は、現在より予め定められた第２の期間以内に操作権が付与された者であることを含むことを特徴とする請求項５に記載の情報管理プログラムである。
【００１１】
請求項７の発明は、許可される操作を利用者ごとに定めた操作権情報と対応付けられた電子情報に対する操作の要求を受け付ける操作要求受付手段と、電子情報又は電子情報と対応付けされた対応付け場所に対する操作を実行する操作実行手段と、前記操作実行手段により実行された電子情報又は電子情報と対応付けされた対応付け場所に対する操作の履歴を示す操作履歴情報を記憶する操作履歴記憶手段と、前記操作要求受付手段により電子情報に対する操作の要求を受け付けた場合、当該電子情報に対応付けられた操作権情報に基づいて当該操作の要求元の利用者に当該操作を許可すると判断したときに、前記操作実行手段に当該操作の実行を開始させるように制御する第１の操作制御手段と、前記操作要求受付手段により電子情報に対する操作の要求を受け付けた場合、前記操作履歴記憶手段に記憶された操作履歴情報に示される、当該操作の要求元の利用者による当該電子情報又は当該電子情報と対応付けされた対応付け場所に対する操作の履歴が予め定められた条件を満たしているときに、前記操作実行手段に当該操作の実行を開始させるように制御する第２の操作制御手段を具備することを特徴とする情報管理システムである。
【発明の効果】
【００１２】
請求項１記載の情報管理プログラムによれば、利用者により要求された電子情報に対する操作が操作権情報に基づく許可がなされない操作であっても、その電子情報又はその電子情報と対応付けされた対応付け場所に対する要求元の利用者による操作の履歴に基づいて操作を許可することができる。
【００１３】
請求項２記載の情報管理プログラムによれば、過去に電子情報又はその電子情報と対応付けされた対応付け場所に対する操作があった利用者に対して、その操作を許可することができる。
【００１４】
請求項３記載の情報管理プログラムによれば、利用者により要求された電子情報に対する操作の許可を、その電子情報に対する要求元の利用者による操作の履歴に基づいて行うか否かを切り替えることができる。
【００１５】
請求項４記載の情報管理プログラムによれば、操作対象の電子情報を要素とする木構造における上位に位置する電子情報に対する操作の履歴に基づいて操作を許可することができる。
【００１６】
請求項５記載の情報管理プログラムによれば、承認が行われるまでは、複写元の原電子情報に対する更新が行われないようにすることができる。
【００１７】
請求項６記載の情報管理プログラムによれば、操作権が付与された者であっても、過去に電子情報又はその電子情報と対応付けされた対応付け場所に対する操作がなかった利用者に対しては、承認が行われるまでは、複写元の原電子情報に対する更新が行われないようにすることができる。
【００１８】
請求項７記載の情報管理システムによれば、利用者により要求された電子情報に対する操作が操作権情報に基づく許可がなされない操作であっても、その電子情報又はその電子情報と対応付けされた対応付け場所に対する要求元の利用者による操作の履歴に基づいて操作を許可することができる。
【発明を実施するための最良の形態】
【００１９】
以下、図面に基づき本発明を実現するにあたっての好適な一実施の形態の例を説明する。
図１は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア（コンピュータ・プログラム）、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、コンピュータ・プログラム、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能にほぼ一対一に対応しているが、実装においては、１モジュールを１プログラムで構成してもよいし、複数モジュールを１プログラムで構成してもよく、逆に１モジュールを複数プログラムで構成してもよい。また、複数モジュールは１コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって１モジュールが複数コンピュータで実行されてもよい。なお、１つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続（データの授受、指示、データ間の参照関係等）の場合にも用いる。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク（一対一対応の通信接続を含む）等の通信手段で接続されて構成されるほか、１つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。「予め定められた」とは、対象としている処理の前であることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。アクセスとは、コンピュータで、記憶装置（メモリ等を含み、必ずしも該コンピュータ内にあるものとは限らない）に対して、データの読み出し又は書き込みを行うことをいう。
【００２０】
以下、電子情報として、文書を主に例示して説明する。なお、文書とは、テキスト及び場合によっては画像、動画、音声等の電子データであり、名前の付いた構造体の単位であって、記憶、編集及び検索等ができ、システム又は利用者間で個別の単位として交換し得るものをいい、これらに類似するものを含む。具体例として、文書作成ソフトウェアによって作成された文書、電子メール等がある。また、操作対象の文書と対応付けされた対応付け場所は、文書を分類等するために用いられる論理的な場所として構成され、例えば、フォルダー、ディレクトリー等がある。以下、フォルダーを主に例示して説明する。
また、電子情報の木構造とは、前述の文書の例では、文書がフォルダー内に含まれていることをいい、その場合、文書の上位に位置する電子情報として、フォルダーが該当することになる。また、そのフォルダーは更に上位のフォルダーに含まれていてもよい。したがって、文書の上位に位置するフォルダーとして、直近のフォルダーのみならず、更に上位のフォルダーであってもよい。
また、利用者として、本実施の形態の説明においては、その場面に応じて、本実施の形態における操作者、ユーザー、承認者、要求者等がいる。
操作権として、アクセス権を主に例示して説明する。
【００２１】
本実施の形態は、図１に示すように、操作要求受付モジュール１１０、権利・操作処理モジュール１２０、利用者情報記憶モジュール１３０、操作履歴記憶モジュール１４０、電子情報記憶モジュール１５０、問い合わせモジュール１６０、切替モジュール１７０を有している。権利・操作処理モジュール１２０は、操作権確認モジュール１２１、操作履歴判断モジュール１２２、操作実行モジュール１２３を有している。
【００２２】
操作要求受付モジュール１１０は、権利・操作処理モジュール１２０と接続されている。操作権情報と対応付けられた電子情報に対する操作の要求を受け付ける。そして、受け付けた要求を権利・操作処理モジュール１２０に渡す。なお、操作権情報とは、電子情報に対して許可される操作を利用者ごとに定めたものである。したがって、利用者に操作権があるとは、その利用者が電子情報に対して操作しようとした場合に、その操作が許可されている状態をいう。
【００２３】
権利・操作処理モジュール１２０は、操作要求受付モジュール１１０、利用者情報記憶モジュール１３０、操作履歴記憶モジュール１４０、電子情報記憶モジュール１５０、問い合わせモジュール１６０、切替モジュール１７０と接続されている。操作要求受付モジュール１１０から要求を受け取り、その要求にしたがって操作権確認モジュール１２１、操作履歴判断モジュール１２２、操作実行モジュール１２３を制御して、要求を行った利用者に対して操作を許可するか否かを判断して、許可する場合は、その操作の実行を行う。また、その実行は、問い合わせモジュール１６０又は切替モジュール１７０からの指示にしたがってもよい。
【００２４】
操作権確認モジュール１２１は、利用者情報記憶モジュール１３０にアクセスして、操作の対象である電子情報に対し、要求元の利用者に、その電子情報に対応付けられた操作権情報に従ってその操作を実施する操作権があるか否かを確認する。例えば、具体的には、利用者は、文書に対して、読み出し権限、書き込み権限、実行権限等の操作に対応するアクセス権があるか否かを確認する。そして、その操作権があると確認された場合は、操作実行モジュール１２３によって、その操作が実行される。また、その操作権がないと確認された場合は、操作履歴判断モジュール１２２による判断処理に制御が移る。
【００２５】
操作履歴判断モジュール１２２は、操作権確認モジュール１２１によって操作権がないと判断された場合にあって、操作履歴記憶モジュール１４０に記憶されたその利用者によるその電子情報又はその電子情報と対応付けされた対応付け場所に対する操作履歴が予め定めた条件を満たしているか否かを判断する。そして、条件を満たしていると判断された場合は、操作実行モジュール１２３によって、その操作が実行される。また、条件を満たしていないと判断された場合は、エラー処理を行う。例えば、利用者にその操作は許可されていない旨等を提示する。なお、条件についての詳細は後述する。
また、操作履歴判断モジュール１２２は、利用者による電子情報の木構造における上位に位置する電子情報に対する操作履歴記憶モジュール１４０に記憶されている操作履歴が予め定めた条件を満たしているか否かを判断するようにしてもよい。例えば、具体的には、文書が格納されているフォルダー（そのフォルダーが格納されている、より上位のフォルダーであってもよい）に対する操作履歴が予め定めた条件を満たしているか否かを判断する。
【００２６】
なお、操作権確認モジュール１２１と操作履歴判断モジュール１２２とは、いずれか一方が実行される場合、両方とも実行される場合がある。また、前述の例では、操作権確認モジュール１２１による処理が行われた後に、操作履歴判断モジュール１２２による処理を行うように制御されているが、操作権確認モジュール１２１による処理と並行して、操作履歴判断モジュール１２２による処理が実行されてもよい。操作権確認モジュール１２１による処理を行わずに、操作履歴判断モジュール１２２による処理を実行してもよい。また、操作履歴判断モジュール１２２による処理が行われた後に、つまり、条件を満たしていないと判断された場合にあって、操作権確認モジュール１２１による処理を行うように制御してもよい。
【００２７】
操作実行モジュール１２３は、電子情報又は電子情報と対応付けされた対応付け場所に対する操作を実行する。そして、操作権確認モジュール１２１によって操作権があると確認された場合又は操作履歴判断モジュール１２２によって操作履歴が予め定めた条件を満たしていると判断された場合は、操作要求受付モジュール１１０が受け付けた要求にしたがって操作を実行する。また、操作を実行する場合は、操作の対象である電子情報を複製した複製電子情報に対して行うようにしてもよい。そして、問い合わせモジュール１６０による問い合わせに対して承認された場合は、操作対象である複製元の原電子情報を前記複製電子情報に基づいて更新するようにしてもよい。
【００２８】
利用者情報記憶モジュール１３０は、権利・操作処理モジュール１２０からアクセスされる。利用者に関する情報、例えば、具体的には、利用者の名称、担当しているプロダクト、所属している組織等の情報が記憶されている。
操作履歴記憶モジュール１４０は、権利・操作処理モジュール１２０からアクセスされる。操作実行モジュール１２３により実行された電子情報又は電子情報と対応付けされた対応付け場所に対する操作の履歴を示す操作履歴情報を記憶する。つまり、電子情報等に対する利用者の操作履歴が記憶されることになる。
電子情報記憶モジュール１５０は、権利・操作処理モジュール１２０からアクセスされる。操作対象である電子情報を記憶している。例えば、具体的には、文書データベース等が該当する。
【００２９】
問い合わせモジュール１６０は、権利・操作処理モジュール１２０と接続されている。権利・操作処理モジュール１２０からの指示にしたがって、操作実行モジュール１２３によって実行された操作を承認するか否かの権限を有する利用者に対して問い合わせる。そして、その問い合わせの結果（承認権限を有する利用者の返事（承認するか否か））を権利・操作処理モジュール１２０へ渡す。
【００３０】
切替モジュール１７０は、権利・操作処理モジュール１２０と接続されている。権利・操作処理モジュール１２０からの指示にしたがって、操作対象の電子情報に対して操作の権限を有する利用者からの要求を受け取り、その要求に応じて、操作履歴判断モジュール１２２における、要求元の利用者に操作を実施する操作権がなかった場合にその操作を実施させるか否かの判断をさせるか否かを切り替える。つまり、操作履歴判断モジュール１２２を機能させるか否かを、対象としている電子情報に対して操作権限を有している者に判断させるものである。
【００３１】
図２は、本実施の形態を実現するにあたっての第１の実現形態の構成例についての概念的なモジュール構成図である。
図２の例に示す第１の実現形態は、操作処理モジュール２１０、更新処理モジュール２２０、アクセス評価モジュール２３０、仮想ロール処理モジュール２４０、仮想ロール格納モジュール２５０、ユーザー情報格納モジュール２６０、文書情報格納モジュール２７０、操作履歴格納モジュール２８０を有している。
図２の例に示した操作処理モジュール２１０は操作要求受付モジュール１１０を、アクセス評価モジュール２３０は操作権確認モジュール１２１を、仮想ロール処理モジュール２４０、仮想ロール格納モジュール２５０は操作履歴判断モジュール１２２、問い合わせモジュール１６０、切替モジュール１７０を、更新処理モジュール２２０は操作実行モジュール１２３を、ユーザー情報格納モジュール２６０は利用者情報記憶モジュール１３０を、操作履歴格納モジュール２８０は操作履歴記憶モジュール１４０を、文書情報格納モジュール２７０は電子情報記憶モジュール１５０を、それぞれ具現化した例である。
【００３２】
本実施の形態（第１から第３の実現形態を含む）では、仮想ロールという概念を用いる。この仮想ロールとは、対象となっている文書に対してはアクセス権を有していないユーザーに対して、その文書に対しての操作を許可するための条件であって、その文書に対する操作履歴を用いて規定したものである。また、その文書に対する操作履歴の他に、その文書の属性、その文書に関係するオブジェクト（親フォルダー等）に対する操作履歴、その文書に関係するオブジェクトの属性、そのユーザーの属性、そのユーザーが含まれているグループの属性等を用いて規定した条件であってもよい。
例えば、ユーザーが組織を異動した場合等に利用するものである。本実施の形態の構成を有していないシステムでは、その異動の際に、ユーザーのアクセス権の設定、グループに対するメンバーの増減等で対処しなければならないものであり、さらに、ある期間のみの設定ということを行う必要がある。
【００３３】
操作処理モジュール２１０は、更新処理モジュール２２０、アクセス評価モジュール２３０と接続されている。文書に対するユーザーの操作を受け付ける。例えば、ユーザーによって、ディスプレイ等の表示装置に表示されている文書を選択して、その文書を開く（内容を表示させる）等の操作が行われた場合に、これを検知することが該当する。そして、操作処理モジュール２１０は、そのユーザーのその文書に対するその操作は可能であるか否かをアクセス評価モジュール２３０を用いてチェックする。そして、アクセス評価モジュール２３０によるアクセス評価の結果、操作が許可されていた場合は、更新処理モジュール２２０に操作を行わせる。また、アクセス評価モジュール２３０によるアクセス評価の結果、操作が許されていなかった場合は、その旨の提示等のエラー処理を行って、処理を終了する。
【００３４】
更新処理モジュール２２０は、操作処理モジュール２１０、文書情報格納モジュール２７０と接続されている。操作処理モジュール２１０からの操作指示に応じて、文書情報格納モジュール２７０内に格納されている文書に対して操作を行う。例えば、その文書へのアクセス、内容の編集等を行って、文書情報格納モジュール２７０内の文書を更新する。また、その操作の履歴を操作履歴格納モジュール２８０に格納する。例えば、文書を識別する文書識別子に対応付けて、ユーザーを識別するユーザー識別子、その操作が行われた日時、その操作等を格納する。
【００３５】
アクセス評価モジュール２３０は、操作処理モジュール２１０、仮想ロール処理モジュール２４０、ユーザー情報格納モジュール２６０、文書情報格納モジュール２７０と接続されている。操作処理モジュール２１０からのアクセス権評価の指示を受け、ユーザー情報格納モジュール２６０及び文書情報格納モジュール２７０に格納されている情報を用いて、そのユーザーのその文書に対するその操作が許可されているものであるか否かの判断を行う。いわゆる一般的なアクセス評価を行う。その操作が許可されている場合は、その旨を操作処理モジュール２１０に通知する。
また、その操作が許可されていない場合は、そのユーザーのその文書に対するその操作は可能であるか否かを仮想ロール処理モジュール２４０を用いてチェックする。そして、仮想ロール処理モジュール２４０によるアクセス評価の結果を操作処理モジュール２１０に通知する。
【００３６】
仮想ロール処理モジュール２４０は、アクセス評価モジュール２３０、仮想ロール格納モジュール２５０、ユーザー情報格納モジュール２６０、文書情報格納モジュール２７０、操作履歴格納モジュール２８０と接続されている。アクセス評価モジュール２３０からのアクセス権評価の指示を受け、仮想ロール格納モジュール２５０内に仮想ロールが設定されているか否かを判断する。つまり、仮想ロール格納モジュール２５０より仮想ロールの設定を取得し、ユーザー情報格納モジュール２６０、文書情報格納モジュール２７０、操作履歴格納モジュール２８０に格納されている情報に対して検索を実施し、操作しようとしているユーザーが、該当するかどうかを判断する。その判断結果をアクセス評価モジュール２３０に通知する。
また、仮想ロール処理モジュール２４０によって、操作が許可された場合は、その操作の結果、文書が更新されたとしても、その操作による更新を承認するか否かの権限を有する者、例えば、その文書が用いられているプロダクトのリーダー等に対して、その文書が本来アクセスが許可されていないユーザーによって、操作されたことを通知して、承認された場合に、その操作による更新をユーザー情報格納モジュール２６０内の文書に反映させるようにしてもよい。
【００３７】
仮想ロール格納モジュール２５０は、仮想ロール処理モジュール２４０からアクセスされる。仮想ロールに関する情報を記憶している。例えば、図１２の例に示す仮想ロール情報格納テーブル１２００、図１３の例に示す仮想ロール条件格納テーブル１３００を記憶している。
図１２は、仮想ロール情報格納テーブル１２００のデータ構造例を示す説明図である。仮想ロール情報格納テーブル１２００は、ｖＲｏｌｅＩＤ欄１２１０、仮想ロール名欄１２２０、作成日時欄１２３０、変更日時欄１２４０、その他属性情報欄１２５０を有しており、仮想ロール自身の情報を格納するテーブルである。ｖＲｏｌｅＩＤ欄１２１０は、仮想ロールを識別する識別子を記憶する。仮想ロール名欄１２２０は、仮想ロールの名称を記憶する。作成日時欄１２３０は、仮想ロールが作成された日時を記憶する。変更日時欄１２４０は、その仮想ロールが変更された場合は、その日時を記憶する。その他属性情報欄１２５０は、仮想ロールの属性に関する情報を記憶する。
【００３８】
図１３は、仮想ロール条件格納テーブル１３００のデータ構造例を示す説明図である。仮想ロール条件格納テーブル１３００は、ｖＲｏｌｅＩＤ欄１３１０、順序欄１３２０、対象連結欄１３３０、抽出対象欄１３４０、条件連結欄１３５０、条件欄１３６０を有しており、仮想ロールの設定（条件）を格納するテーブルである。ｖＲｏｌｅＩＤ欄１３１０は、仮想ロール識別子を記憶する。同じ仮想ロール識別子を有している行から、その仮想ロールは構成されている。例えば、図１３の例に示す仮想ロール識別子：２００００２である仮想ロールは、第３行目から第８行目までの条件によって構成されている。順序欄１３２０は、その仮想ロール内で条件として適用される順序を記憶する。対象連結欄１３３０は、対象であるユーザー又はグループに関する条件の連結関係を記憶する。なお、連結関係とは、条件間の論理的関係をいい、「ＡＮＤ（論理積）」、「ＯＲ（論理和）」等がある。抽出対象欄１３４０は、条件として抽出すべき対象を記憶する。例えば、ユーザー（ＵＳＥＲ）、グループ（ＧＲＯＵＰ）、履歴（ＨＩＳＴＯＲＹ）等がある。条件連結欄１３５０は、前行の条件欄１３６０内の条件の連結関係を記憶する。連結関係とは前行の条件欄１３６０内の条件との連結関係であり「ＡＮＤ（論理積）」、「ＯＲ（論理和）」がある。条件欄１３６０は、条件を記憶する。これらを用いて仮想ロールが生成される。具体的な仮想ロールの意味については後述する。
【００３９】
ユーザー情報格納モジュール２６０は、アクセス評価モジュール２３０、仮想ロール処理モジュール２４０からアクセスされる。ユーザー識別子に対応付けて、そのユーザーの名称、所属組織等のユーザーに関する情報を記憶している。また、グループに関する情報、例えば、そのグループに含まれているユーザー識別子等を記憶しており、グループにはユーザーの他にグループを含んでいてもよく、グループは木構造を有している場合がある。
【００４０】
文書情報格納モジュール２７０は、更新処理モジュール２２０、仮想ロール処理モジュール２４０からアクセスされる。文書を記憶している。また、その文書に関する属性（その文書に対してアクセスを許可しているユーザー又はグループ等を含む）、フォルダー等の木構造等を記憶していてもよい。
【００４１】
操作履歴格納モジュール２８０は、仮想ロール処理モジュール２４０からアクセスされる。文書情報格納モジュール２７０に格納されている文書に対して、ユーザー情報格納モジュール２６０内に格納されているユーザーが行った操作の履歴に関する情報を記憶している。例えば、図１１の例に示す操作履歴格納テーブル１１００を記憶している。図１１は、操作履歴格納テーブル１１００のデータ構造例を示す説明図である。操作履歴格納テーブル１１００は、ｏｂｊｅｃｔＩＤ欄１１１０、操作者欄１１２０、操作日時欄１１３０、操作内容欄１１４０、管理情報欄１１５０、その他属性情報欄１１６０を有している。ｏｂｊｅｃｔＩＤ欄１１１０は、操作対象の文書の識別子又はフォルダーの識別子を記憶する。操作者欄１１２０は、その操作を行ったユーザーの識別子を記憶する。操作日時欄１１３０は、その操作が行われた日時（年、分、秒等を含めてもよい）を記憶する。操作内容欄１１４０は、その操作の内容を記憶する。なお、図１１内で、「（親）」とあるのはその文書が格納されているフォルダーのことをいい、「（自身）」とあるのはその文書そのもののことを指す。管理情報欄１１５０は、操作履歴を管理するにあたって必要となる情報を記憶する。その他属性情報欄１１６０は、その操作履歴の属性に関する情報を記憶する。
操作履歴格納テーブル１１００に格納されている情報は、仮想ロールでグループ／ユーザーを特定する条件として指定し得るものである。
【００４２】
図３は、第１の実現形態による処理例を示すフローチャートである。つまり、ある文書に対しての更新要求を操作処理モジュール２１０が受け付け、一般的なアクセス権がない場合（つまり、仮想ロールを用いた判断に関する処理）について説明する。
ステップＳ３０２では、仮想ロール処理モジュール２４０が、評価対象（文書に対して操作しようとしているユーザー）は、仮想ロール格納モジュール２５０に記憶されている仮想ロール内の対象であるか否かを判断する。かかる判断において対象である場合（Ｙ）はステップＳ３０４へ進み、それ以外の場合（Ｎ）はステップＳ３０６へ進む。
ステップＳ３０４では、仮想ロール処理モジュール２４０が、その仮想ロールを評価し、該当するグループ又はユーザーを特定する。この処理の詳細については、図６を用いて後述する。
【００４３】
ステップＳ３０６では、仮想ロール処理モジュール２４０が、更新要求を行ったユーザーによるその仮の更新が、仮想ロールの条件を満たしている場合（Ｙ）、つまり、更新要求を行ったユーザーが、特定されたグループに属しているか又は特定されたユーザーである場合は、ステップＳ３０８へ進み、それ以外の場合（Ｎ）はステップＳ３１０へ進む。
ステップＳ３０８では、仮想ロール処理モジュール２４０が、その更新要求である操作を更新処理モジュール２２０が実行し、文書情報格納モジュール２７０内の対象としている文書（マスター文書）を更新する。
ステップＳ３１０では、操作処理モジュール２１０が、更新が認められなかった旨の提示等をするエラー処理を行う。
【００４４】
図４は、本実施の形態を実現するにあたっての第２の実現形態の構成例についての概念的なモジュール構成図である。第２の実現形態は、仮の更新を認めるか否かについて仮想ロールを用いるものである。
図４の例に示す第２の実現形態は、操作処理モジュール２１０、仮想ロール処理モジュール２４０、仮想ロール格納モジュール２５０、ユーザー情報格納モジュール２６０、文書情報格納モジュール２７０、操作履歴格納モジュール２８０、仮アクセス処理モジュール４１０、仮アクセス格納モジュール４２０を有している。図２の例に示した第１の実現形態の更新処理モジュール２２０、アクセス評価モジュール２３０を不要とし、仮アクセス処理モジュール４１０、仮アクセス格納モジュール４２０を付加したものである。なお、第１の実現形態と同種のモジュールには同一符号を付し重複した説明を省略する。ただし、同一符号のモジュールであっても、第１の実現形態におけるモジュールの機能、処理等に加えて行うものがある場合は、それを説明する。
【００４５】
操作処理モジュール２１０は、仮アクセス処理モジュール４１０と接続されている。文書に対するユーザーの操作を受け付け、そのユーザーのその文書に対するその操作は、仮の操作として可能であるか否かを仮アクセス処理モジュール４１０を用いてチェックする。
仮アクセス処理モジュール４１０は、操作処理モジュール２１０、仮想ロール処理モジュール２４０、ユーザー情報格納モジュール２６０、文書情報格納モジュール２７０、操作履歴格納モジュール２８０、仮アクセス格納モジュール４２０と接続されている。操作処理モジュール２１０からのアクセス権評価の指示を受け、そのユーザーのその文書に対するその仮の操作は可能であるか否かを仮想ロール処理モジュール２４０を用いてチェックする。その仮の操作が許可されている場合は、文書情報格納モジュール２７０に格納されている文書に対して、その仮の操作を行い、その結果の文書を仮アクセス格納モジュール４２０に一時的に格納する。そして、その仮の操作による更新を承認するか否かの権限を有する者による承認があった場合は、文書情報格納モジュール２７０内の文書を更新する。また、その仮の操作が許可されていない場合は、その旨を操作処理モジュール２１０に通知する。
【００４６】
仮アクセス格納モジュール４２０は、仮アクセス処理モジュール４１０と接続されている。仮の操作に関する情報、例えば、仮の操作が行われた場合の文書等を記憶している。
仮想ロール処理モジュール２４０は、仮想ロール格納モジュール２５０、ユーザー情報格納モジュール２６０、文書情報格納モジュール２７０、操作履歴格納モジュール２８０、仮アクセス処理モジュール４１０と接続されている。仮アクセス処理モジュール４１０からのアクセス権評価の指示を受け、第１の実現形態と同等の処理を行う。
【００４７】
図５は、第２の実現形態による処理例を示すフローチャートである。つまり、ある文書に対しての仮の更新要求を操作処理モジュール２１０が受け付け、仮想ロールを用いて行う判断に関する処理について説明する。
ステップＳ５０２からステップＳ５０６までは、図３の例に示したフローチャート内のステップＳ３０２からステップＳ３０６までと同等である。
ステップＳ５０８では、仮アクセス処理モジュール４１０によって、その仮の操作が行われ、文書情報格納モジュール２７０に記憶されている文書に対して、操作を行い、その操作結果を仮の更新結果として、仮アクセス格納モジュール４２０に格納する。つまり、その操作によっては、文書情報格納モジュール２７０内の対象としている文書自身を更新するわけではない。
【００４８】
ステップＳ５１２では、仮想ロール処理モジュール２４０が、その更新の権限を有する者である承認者は、仮想ロール格納モジュール２５０に記憶されている仮想ロール内の対象であるか否かを判断する。かかる判断において対象である場合（Ｙ）はステップＳ５１４へ進み、それ以外の場合（Ｎ）はステップＳ５１６へ進む。
ステップＳ５１４では、仮想ロール処理モジュール２４０が、その仮想ロールを評価し、該当するグループ又はユーザーを特定する。この処理例の詳細については、図６を用いて後述する。
ステップＳ５１６では、仮アクセス処理モジュール４１０は、承認者に、仮更新の操作を行ったユーザー名と仮更新された文書の仮アクセス格納モジュール４２０内の格納場所を通知する。
【００４９】
ステップＳ５１８では、承認者によって、ステップＳ５１６で通知された更新内容が確認されたか否かを判断する。つまり、確認者の操作によって、確認されたことを示す操作が行われたことを検知する。例えば、確認ボタンが選択されたこと、又はその通知が開かれた状態になり、仮アクセス格納モジュール４２０内の文書にアクセスされたこと等を検知する。確認された場合（Ｙ）はステップＳ５２０へ進み、それ以外の場合（Ｎ）はステップＳ５１８を繰り返す。
ステップＳ５２０では、承認者によって更新が承認されたか否かを判断する。かかる判断において承認された場合（Ｙ）はステップＳ５２６へ進み、それ以外の場合（Ｎ）はステップＳ５２２へ進む。
【００５０】
ステップＳ５２２では、仮アクセス処理モジュール４１０は、仮アクセス格納モジュール４２０から更新された文書データを削除して、更新を撤回する。つまり、その操作は行われなかったこととなる。
ステップＳ５２６では、仮アクセス処理モジュール４１０は、仮アクセス格納モジュール４２０から更新された文書データを取得して、その文書データで文書情報格納モジュール２７０内のマスター文書を更新する。
【００５１】
図６は、第２の実現形態によるユーザー評価の処理例を示すフローチャートである。ステップＳ５０４、ステップＳ５１４による処理内容である。
ステップＳ６０２では、仮想ロール処理モジュール２４０が、仮想ロール格納モジュール２５０からユーザーを特定するための設定（仮想ロール）を抽出する。
ステップＳ６０４では、仮想ロール処理モジュール２４０が、抽出対象（仮想ロール条件格納テーブル１３００の抽出対象欄１３４０）はグループ（ＧＲＯＵＰ）であるか否かを判断する。かかる判断においてグループであると判断された場合（Ｙ）はステップＳ６１２へ進み、それ以外の場合（Ｎ）はステップＳ６０６へ進む。
ステップＳ６０６では、仮想ロール処理モジュール２４０が、抽出対象（仮想ロール条件格納テーブル１３００の抽出対象欄１３４０）はユーザー（ＵＳＥＲ）であるか否かを判断する。かかる判断においてユーザーであると判断された場合（Ｙ）はステップＳ６１４へ進み、それ以外の場合（Ｎ）はステップＳ６０８へ進む。
ステップＳ６０８では、仮想ロール処理モジュール２４０が、抽出対象（仮想ロール条件格納テーブル１３００の抽出対象欄１３４０）は履歴（ＨＩＳＴＯＲＹ）であるか否かを判断する。かかる判断において履歴であると判断された場合（Ｙ）はステップＳ６１６へ進み、それ以外の場合（Ｎ）はステップＳ６１０へ進む。
ステップＳ６１０では、仮アクセス処理モジュール４１０が、エラー処理を行う。
【００５２】
ステップＳ６１２、ステップＳ６１４、ステップＳ６１６では、仮想ロール処理モジュール２４０が、条件（仮想ロール条件格納テーブル１３００の条件欄１３６０）があるか否かを判断する。かかる判断において条件がある場合（Ｙ）はステップＳ６１８へ進み、それ以外の場合（Ｎ）はステップＳ６０４へ戻る。
ステップＳ６１８では、仮想ロール処理モジュール２４０が、条件は履歴であるか否かを判断する。かかる判断において履歴である場合（Ｙ）はステップＳ６２４へ進み、それ以外の場合（Ｎ）はステップＳ６２０へ進む。
ステップＳ６２０では、仮想ロール処理モジュール２４０が、条件はユーザーであるか否かを判断する。かかる判断においてユーザーである場合（Ｙ）はステップＳ６３２へ進み、それ以外の場合（Ｎ）はステップＳ６２２へ進む。
ステップＳ６２２では、仮想ロール処理モジュール２４０が、条件はグループであるか否かを判断する。かかる判断においてグループである場合（Ｙ）はステップＳ６４０へ進み、それ以外の場合（Ｎ）はステップＳ６１０へ進む。
【００５３】
ステップＳ６２４では、仮想ロール処理モジュール２４０が、操作履歴格納モジュール２８０に対して検索を行い、該当の履歴を抽出する。
ステップＳ６２６では、仮想ロール処理モジュール２４０が、次の条件も履歴であるか否かを判断する。かかる判断において履歴である場合（Ｙ）はステップＳ６２４へ戻る。それ以外の場合（Ｎ）はステップＳ６２８へ進む。
ステップＳ６２８では、仮想ロール処理モジュール２４０が、仮想ロールの履歴の条件間の論理関係（仮想ロール条件格納テーブル１３００の条件連結欄１３５０）を評価し、ステップＳ６２４で抽出した履歴のうち該当するものを抽出する。
ステップＳ６３０では、仮想ロール処理モジュール２４０が、ステップＳ６２８で抽出された履歴の情報から、その履歴を行ったユーザーに関する情報を抽出する。
【００５４】
ステップＳ６３２では、仮想ロール処理モジュール２４０が、ユーザー情報格納モジュール２６０に対して検索を行い、該当のユーザーを抽出する。
ステップＳ６３４では、仮想ロール処理モジュール２４０が、次の条件もユーザーであるか否かを判断する。かかる判断においてユーザーである場合（Ｙ）はステップＳ６３２へ戻る。それ以外の場合（Ｎ）はステップＳ６３６へ進む。
ステップＳ６３６では、仮想ロール処理モジュール２４０が、仮想ロールのユーザーの条件間の論理関係（仮想ロール条件格納テーブル１３００の条件連結欄１３５０）を評価し、ステップＳ６３２で抽出したユーザーのうち該当するものを抽出する。
ステップＳ６３８では、仮想ロール処理モジュール２４０が、操作を行ったユーザーである要求者は、ステップＳ６３０で抽出されたユーザーに関する情報の論理関係（仮想ロール条件格納テーブル１３００の対象連結欄１３３０）を加味した場合の条件を満たしているか否かを評価する。
【００５５】
ステップＳ６４０では、仮想ロール処理モジュール２４０が、ユーザー情報格納モジュール２６０に対して検索を行い、該当のグループを抽出する。
ステップＳ６４２では、仮想ロール処理モジュール２４０が、次の条件もグループであるか否かを判断する。かかる判断においてグループである場合（Ｙ）はステップＳ６４０へ戻る。それ以外の場合（Ｎ）はステップＳ６４４へ進む。
ステップＳ６４４では、仮想ロール処理モジュール２４０が、仮想ロールのグループの条件間の論理関係（仮想ロール条件格納テーブル１３００の条件連結欄１３５０）を評価し、ステップＳ６４０で抽出したグループのうち該当するものを抽出する。
ステップＳ６４６では、仮想ロール処理モジュール２４０が、操作を行ったユーザーである要求者は、ステップＳ６４４で抽出されたグループに関する情報の論理関係（仮想ロール条件格納テーブル１３００の対象連結欄１３３０）を加味した場合の条件を満たしている場合のグループに属しているユーザーであるか否かを評価する。
【００５６】
ステップＳ６４８では、仮想ロール処理モジュール２４０が、ステップＳ６３８又はステップＳ６４６での評価結果によって、操作を行ったユーザーである要求者は、仮想ロールの条件に該当するユーザーであるか否かを判断する。かかる判断において該当するユーザーである場合（Ｙ）はステップＳ６６０へ進み、それ以外の場合（Ｎ）はステップＳ６５０へ進む。
ステップＳ６５０では、評価結果として、操作を行ったユーザーである要求者は、仮想ロールの条件を満たしていないことが判明する。
ステップＳ６６０では、評価結果として、操作を行ったユーザーである要求者は、仮想ロールの条件を満たしていることが判明する。
【００５７】
図７は、本実施の形態を実現するにあたっての第３の実現形態の構成例についての概念的なモジュール構成図である。なお、第１又は第２の実現形態と同種のモジュールには同一符号を付し重複した説明を省略する。ただし、同一符号のモジュールであっても、第１又は第２の実現形態におけるモジュールの機能、処理等に加えて行うものがある場合は、それを説明する。
【００５８】
図７の例に示す第３の実現形態は、操作処理モジュール２１０、更新処理モジュール２２０、アクセス評価モジュール２３０、仮想ロール処理モジュール２４０、仮想ロール格納モジュール２５０、ユーザー情報格納モジュール２６０、文書情報格納モジュール２７０、操作履歴格納モジュール２８０、仮アクセス処理モジュール４１０、仮アクセス格納モジュール４２０を有している。つまり、図２の例に示した第１の実現形態と図４の例に示した第２の実現形態とを組み合わせたものである。つまり、アクセス権として仮アクセス権を設け、アクセス権の設定がない場合は、仮想ロールによる条件を満たすか否かが判断され、また仮のアクセス権が設定されていた場合は、仮想ロールによる条件を満たすか否かが判断される。
【００５９】
操作処理モジュール２１０は、更新処理モジュール２２０、アクセス評価モジュール２３０、仮アクセス処理モジュール４１０と接続されている。文書に対するユーザーの操作を受け付ける。そして、操作処理モジュール２１０は、まず、そのユーザーのその文書に対するその操作は可能であるか否かをアクセス評価モジュール２３０を用いてチェックする。そして、アクセス評価モジュール２３０によるアクセス評価の結果、操作が許可されていた場合は、更新処理モジュール２２０に操作を行わせる。また、アクセス評価モジュール２３０によるアクセス評価の結果、そのユーザーのその文書に対するその操作は仮の操作として可能である場合は仮アクセス処理モジュール４１０による処理を行わせる。
【００６０】
アクセス評価モジュール２３０は、操作処理モジュール２１０、仮想ロール処理モジュール２４０、ユーザー情報格納モジュール２６０、文書情報格納モジュール２７０と接続されている。操作処理モジュール２１０からのアクセス権評価の指示を受け、ユーザー情報格納モジュール２６０及び文書情報格納モジュール２７０に格納されている情報を用いて、そのユーザーのその文書に対するその操作が許可されているものであるか否かの判断を行う。いわゆる一般的なアクセス評価を行う。その操作が許可されている場合は、その旨を操作処理モジュール２１０に通知する。
また、そのユーザーのその文書に対するその操作は仮の操作として可能である場合は、その旨を操作処理モジュール２１０に通知する。そして、操作処理モジュール２１０は仮アクセス処理モジュール４１０に処理を行わせることになる。
次に、いずれの場合でもない場合は、そのユーザーのその文書に対するその操作は可能であるか否かを仮想ロール処理モジュール２４０を用いてチェックする。そして、仮想ロール処理モジュール２４０によるアクセス評価の結果を操作処理モジュール２１０に通知する。
【００６１】
仮想ロール処理モジュール２４０は、アクセス評価モジュール２３０、仮想ロール格納モジュール２５０、ユーザー情報格納モジュール２６０、文書情報格納モジュール２７０、操作履歴格納モジュール２８０、仮アクセス処理モジュール４１０と接続されている。アクセス評価モジュール２３０、仮アクセス処理モジュール４１０から、アクセス権評価の指示を受ける。操作処理モジュール２１０が受け付けた１つの操作に対しては、アクセス評価モジュール２３０、仮アクセス処理モジュール４１０のうちいずれか一方からアクセス権評価の指示を受けること、又は何も指示を受けないこと（いわゆる一般的なアクセス権がある場合）がある。
【００６２】
図８は、第３の実現形態による処理例を示すフローチャートである。つまり、ある文書に対しての更新要求を操作処理モジュール２１０が受け付けた場合の処理について説明する。
ステップＳ８０２では、アクセス評価モジュール２３０が、その文書に対してそのユーザーが行う操作の許可の判断は、通常のアクセス権の設定によって行われるか否かを判断する。つまり、仮のアクセス権が設定されているか否かを判断する。通常のアクセス権が設定されている場合（Ｙ、つまり仮のアクセス権が設定されていない場合）は、ステップＳ８０４へ進み、それ以外の場合はステップＳ８１４へ進む。
【００６３】
ステップＳ８０４からステップＳ８１２までの処理は、図３に示したフローチャート内のステップＳ３０２からステップＳ３１０までの処理に該当する。
ステップＳ８１４からステップＳ８３８までの処理は、図５に示したフローチャート内のステップＳ５０２からステップＳ５２８までの処理に該当する。ただし、ステップＳ８１２はステップＳ５１０に該当する。
【００６４】
図９は、ユーザーの担当変更例を示す説明図である。図９（ａ）に示す例は、ユーザーＡがプロダクトＡ、Ｃ、Ｅ等を担当していること、ユーザーＢがプロダクトＤ、Ｆ等を担当していることを示している。ここで、担当変更があり、図９（ｂ）に示す例のように、ユーザーＡはプロダクトＡの担当からはずれ、ユーザーＢがプロダクトＡに加入する。さらに、図９（ｃ）に示す例のように、ユーザーＡが新たにプロダクトＢに加入して、プロダクトＢ、Ｃ、Ｅ等を担当していることになる。そして、ユーザーＢがプロダクトＡ、Ｄ、Ｆ等を担当していることになる。
例えば、このような状態になった直後に、プロダクトＡで用いられている文書をユーザーＡが変更しようとしても、第１から第３の実現形態のいずれかを有していない場合は、プロダクトＡの担当からはずれた時点で操作はできないことになってしまう。一方、ユーザーＢは担当になったばかりであるが、その文書に対して無制限に操作を行うことができてしまう。このような場合に、第１から第３の実現形態は、仮想ロールの条件を満たすユーザーＡは操作し得るようになり、またユーザーＢは操作が制限されることになる。
【００６５】
図１０は、仮想ロールの条件構成例を示す説明図である。この仮想ロールの条件構成例は、ルート条件１０１０、グループそのものを特定するためのグループ特定条件１０２０、ユーザーそのものを特定するためのユーザー特定条件１０３０、オブジェクトの属性１０４０、関連オブジェクトのタイプ１０５０、履歴そのものを特定するためのオブジェクトの履歴条件１０６０等がある。
例えば、ルート条件１０１０内の１行目のフォームである、
現在の操作者：Ｉｎ  Ｍｅｍｂｅｒ／  Ｎｏｔ  Ｉｎ  Ｍｅｍｂｅｒ：グループ特定条件
は、「現在の操作者」として「グループ特定条件」によって特定されるグループ（グループ特定条件１０２０参照）に属しているメンバー（「Ｉｎ  Ｍｅｍｂｅｒ」）又はそのグループには属していないこと（「Ｎｏｔ  Ｉｎ  Ｍｅｍｂｅｒ」）を表す条件式の生成フォームを示している。
【００６６】
この条件を組み合わせることによって、仮想ロールとして、
現在の操作者  ＝  （ドキュメントのプロダクト名  ＝  グループの担当プロダクト）のグループのメンバー    ＡＮＤ    現在の操作者  ！＝  （アクセス履歴の操作日時  ＜  １ヶ月  ＡＮＤ  操作内容が更新）の操作者    ＡＮＤ    現在の操作者の作成日時  ＜  １ヶ月
のような条件が設定可能となる。
【００６７】
次に、具体例として、ユーザーの担当が変更された場合の、前述の実現形態による処理に関して説明する。より具体的には、操作履歴判断モジュール１２２が行う判断に用いられる予め定められた条件として、操作の要求元の利用者によって、操作要求受付モジュール１１０により操作の要求を受け付けた文書に対する操作が現在より予め定められた期間以内（例えば、１ヶ月以内）にあったこと、を採用するものである。
図９に示した例のように、以前、ユーザーＡがプロダクトＡを担当していて、ユーザーＢが担当になり、ユーザーＡはプロダクトＡから担当をはずれた場合に、１ヶ月以内にユーザーＡがプロダクトＡで用いている文書に対して何らかの操作を行っていた場合には、ユーザーＡが前任者として更新可能なように運用するような状況を想定する。
【００６８】
ユーザーの担当が変更になる場合、図９に示した例のようにユーザーに関する属性値（担当のプロダクト名）の変更が行われる。
このとき、プロダクトＡで用いている文書のアクセス権が以下のように設定されていたとする。
（Ａ１）  アクセス権タイプ  ：  仮アクセス権
（Ａ２）  承認者  ：  担当者（仮想ロール）
（Ａ３）  権限  ：  前任者（仮想ロール）  ：  要承認
（Ａ４）  権限  ：  担当グループメンバー（仮想ロール）  ：  更新可
（Ａ５）  権限  ：  その他  ：  更新不可
【００６９】
前記（Ａ２）の担当者の仮想ロールについて説明する。担当者の仮想ロールは、「対象文書のプロダクト名属性の値が、担当プロダクト名属性に含まれるユーザー」という条件で指定され、それを条件式で表現すると以下のようになる。
操作者  ＝  ＵＳＥＲ（ＯｂｊｅｃｔのｐｒｏｄｕｃｔＮａｍｅ属性  ＩＮ  ユーザーのｐｒｏｄｕｃｔＮａｍｅ属性）
この条件を仮想ロール格納モジュール２５０内の仮想ロール情報格納テーブル１２００、仮想ロール条件格納テーブル１３００に格納した場合、ｖＲｏｌｅＩＤ（仮想ロール識別子）が２００００１である行のように、そのテーブルに格納される。
【００７０】
前記（Ａ３）の前任者の仮想ロールについて説明する。前任者の仮想ロールは、「対象文書の操作履歴で１ヶ月以内に更新を行ったユーザーで、現在対象文書のプロダクト名属性の値が、担当プロダクト名属性に含まれない」という条件で指定され、それを条件式で表現すると以下のようになる。
操作者  ＝  ＵＳＥＲ（履歴（Ｏｂｊｅｃｔの履歴のｏｐｅｒａｔｉｏｎＤａｔｅ  ＞  現時刻より１ヶ月前    ＡＮＤ    Ｏｂｊｅｃｔの履歴のｏｐｅｒａｔｉｏｎＵｓｅｒ＝操作者）のｏｐｅｒａｔｉｏｎＵｓｅｒ）    ＡＮＤ    ＵＳＥＲ（ＯｂｊｅｃｔのｐｒｏｄｕｃｔＮａｍｅ属性  ＮＯＴ  ＩＮ  ユーザーのｐｒｏｄｕｃｔＮａｍｅ属性）
この条件を仮想ロール格納モジュール２５０内の仮想ロール情報格納テーブル１２００、仮想ロール条件格納テーブル１３００に格納した場合、ＲｏｌｅＩＤが２００００２である行のように、そのテーブルに格納される。
【００７１】
前記（Ａ４）の担当グループメンバーの仮想ロールについて説明する。担当グループメンバーの仮想ロールは、「対象文書のプロダクト名属性の値が、担当プロダクト名属性に含まれるユーザーの所属グループのメンバー」という条件で指定され、それを条件式で表現すると以下のようになる。
ＧＲＯＵＰ（ＧＲＯＵＰ  ＩＮ  ＭＥＭＢＥＲ  ＵＳＥＲ（ＯｂｊｅｃｔのｐｒｏｄｕｃｔＮａｍｅ属性  ＩＮ  ユーザーのｐｒｏｄｕｃｔＮａｍｅ属性））  ＩＮ  ＭＥＭＢＥＲ  操作者
この条件を仮想ロール格納モジュール２５０内の仮想ロール情報格納テーブル１２００、仮想ロール条件格納テーブル１３００に格納した場合、ｖＲｏｌｅＩＤが２００００４である行のように、そのテーブルに格納される。
【００７２】
このような仮アクセス権を設定しておくと、ユーザーＢが担当する文書に対してユーザーＡが更新を行おうとした場合に、図５の例に示すフローチャートに従って、ユーザーＡが前任者であるとして仮更新処理が行われる。仮想ロールの評価に関しては、図６の例に示すフローチャートに従う。
また、担当者の所属グループのメンバーも担当グループメンバーの仮想ロールに該当し更新でき得る状態となる。
承認者は、デフォルトで更新可能となるため、担当者の仮想ロールに該当するユーザーＢは更新可能となる。
【００７３】
次に、具体例として、グループのメンバーの増減が発生した場合の、前述の実現形態による処理に関して説明する。より具体的には、操作履歴判断モジュール１２２が行う判断に用いられる予め定められた条件として、操作の要求元の利用者によって、操作要求受付モジュール１１０により操作の要求を受け付けた文書に対する操作が現在より予め定められた第１の期間以内（例えば、１ヶ月以内）にはない場合であって、操作の要求元の利用者は、現在より予め定められた第２の期間以内（第１の期間とは独立であり、異なっていてもよく、同じ期間であってもよい。例えば、１ヶ月以内）にアクセス権が付与された者であること、を採用するものである。
図９に示した例のように、グループＡのメンバーであったユーザーＡがプロダクトＡを担当していて、グループＡからユーザーＡが異動しグループＡのメンバーではなくなり、グループＡにユーザーＢが追加され新たにメンバーになった場合に、１ヶ月以内にユーザーＡが文書の更新を行っていた場合には、ユーザーＡが前任者として更新可能なように、１ヶ月よりも前に参照を行った履歴のないユーザー（ユーザーＢ）には承認がなければ更新できないような運用をする状況を想定する。
【００７４】
このとき、ドキュメントのアクセス権が以下のように設定されていたとする。
（Ｂ１）  アクセス権タイプ  ：  仮アクセス権
（Ｂ２）  承認者  ：  担当グループ責任者（仮想ロール）
（Ｂ３）  権限  ：  担当グループメンバー（仮想ロール）  ：  更新可
（Ｂ４）  権限  ：  担当グループ新メンバー（仮想ロール）  ：  要承認
（Ｂ５）  権限  ：  担当グループ旧メンバー（仮想ロール）  ：  要承認
（Ｂ６）  権限  ：  その他  ：  更新不可
【００７５】
前記（Ｂ２）の担当グループ責任者の仮想ロールについて説明する。担当グループ責任者の仮想ロールは、「対象文書のプロダクト名属性の値が、担当プロダクト名属性に含まれるユーザーが、所属するグループの責任者属性に設定されているユーザー」という条件で指定され、それを条件式で表現すると以下のようになる。
操作者  ＝  ＵＳＥＲ（ＧＲＯＵＰ（ＧＲＯＵＰ  ＩＮ  ＭＥＭＢＥＲ  ＵＳＥＲ（ＯｂｊｅｃｔのｐｒｏｄｕｃｔＮａｍｅ属性  ＩＮ  ユーザーのｐｒｏｄｕｃｔＮａｍｅ属性））の  ｍａｎａｇｅｒ）
この条件を仮想ロール格納モジュール２５０内の仮想ロール情報格納テーブル１２００、仮想ロール条件格納テーブル１３００に格納した場合、ｖＲｏｌｅＩＤが２００００３である行のように、そのテーブルに格納される。
【００７６】
前記（Ｂ３）の担当グループメンバーの仮想ロールについて説明する。担当グループメンバーの仮想ロールは、「対象文書のプロダクト名属性の値が、担当プロダクト名属性に含まれるユーザーの所属グループのメンバー」という条件で指定され、それを条件式で表現すると以下のようになる。
ＧＲＯＵＰ（ＧＲＯＵＰ  ＩＮ  ＭＥＭＢＥＲ  ＵＳＥＲ（ＯｂｊｅｃｔのｐｒｏｄｕｃｔＮａｍｅ属性  ＩＮ  ユーザーのｐｒｏｄｕｃｔＮａｍｅ属性））  ＩＮ  ＭＥＭＢＥＲ  操作者
この条件を仮想ロール格納モジュール２５０内の仮想ロール情報格納テーブル１２００、仮想ロール条件格納テーブル１３００に格納した場合、ｖＲｏｌｅＩＤが２００００２である行のように、そのテーブルに格納される。
【００７７】
前記（Ｂ４）の担当グループ新メンバーの仮想ロールについて説明する。担当グループ新メンバーの仮想ロールは、「対象文書のプロダクト名属性の値が、担当プロダクト名属性に含まれるユーザーの所属グループのメンバーで、かつ対象文書の操作履歴で１ヶ月以前に操作を行った記録がない」という条件で指定され、それを条件式で表現すると以下のようになる。
ＧＲＯＵＰ（ＧＲＯＵＰ  ＩＮ  ＭＥＭＢＥＲ  ＵＳＥＲ（ＯｂｊｅｃｔのｐｒｏｄｕｃｔＮａｍｅ属性  ＩＮ  ユーザーのｐｒｏｄｕｃｔＮａｍｅ属性））  ＩＮ  ＭＥＭＢＥＲ  操作者    ＡＮＤ    操作者！＝ＵＳＥＲ（履歴（Ｏｂｊｅｃｔの操作履歴のｏｐｅｒａｔｉｏｎＤａｔｅ  ＜  現時刻より１ヶ月前    ＡＮＤ    Ｏｂｊｅｃｔの操作履歴の  ｏｐｅｒａｔｉｏｎＵｓｅｒ  ＝  操作者）  の  ｏｐｅｒａｔｉｏｎＵｓｅｒ）
この条件を仮想ロール格納モジュール２５０内の仮想ロール情報格納テーブル１２００、仮想ロール条件格納テーブル１３００に格納した場合、ｖＲｏｌｅＩＤが２００００５である行のように、そのテーブルに格納される。
【００７８】
前記（Ｂ５）の担当グループ旧メンバーの仮想ロールについて説明する。担当グループ旧メンバーの仮想ロールは、「対象文書のプロダクト名属性の値が、担当プロダクト名属性に含まれるユーザーの所属グループのメンバーではなく、かつ対象文書の操作履歴で１ヶ月以内に操作を行った記録がある」という条件で指定され、それを条件式で表現すると以下のようになる。
ＧＲＯＵＰ（ＧＲＯＵＰ  ＩＮ  ＭＥＭＢＥＲ  ＵＳＥＲ（ＯｂｊｅｃｔのｐｒｏｄｕｃｔＮａｍｅ属性  ＩＮ  ユーザーのｐｒｏｄｕｃｔＮａｍｅ属性））    ＮＯＴ  ＩＮ  ＭＥＭＢＥＲ  操作者    ＡＮＤ    操作者＝ＵＳＥＲ（履歴（Ｏｂｊｅｃｔの操作履歴のｏｐｅｒａｔｉｏｎＤａｔｅ  ＞  現時刻より１ヶ月前    ＡＮＤ  Ｏｂｊｅｃｔの操作履歴の  ｏｐｅｒａｔｉｏｎＵｓｅｒ  ＝  操作者）  の  ｏｐｅｒａｔｉｏｎＵｓｅｒ）
この条件を仮想ロール格納モジュール２５０内の仮想ロール情報格納テーブル１２００、仮想ロール条件格納テーブル１３００に格納した場合、ｖＲｏｌｅＩＤが２００００６である行のように、そのテーブルに格納される。
【００７９】
このような仮アクセス権を設定しておくと、グループＡのメンバーが担当する文書に対して、グループＡから異動したユーザーＡが更新を行おうとした場合に、図５の例に示すフローチャートに従って、ユーザーＡが担当グループの旧メンバーであるとして仮更新処理が行われる。
また、ユーザーＢは１ヶ月以前に履歴に記録がないため、担当グループ新メンバーの仮想ロールに該当し、仮更新処理が行われる。１ヶ月経過すれば、操作記録が１ヶ月以前の履歴として検出されるため通常の担当グループメンバーと同じになり、更新でき得る状態となる。
【００８０】
次に、具体例として、上位のフォルダーの情報を利用してアクセス評価を実施する場合の、前述の実現形態による処理に関して説明する。より具体的には、操作履歴判断モジュール１２２が行う判断に用いられる予め定められた条件として、操作の要求元の利用者によって、操作要求受付モジュール１１０により操作の要求を受け付けた文書があるフォルダーに対する操作が現在より予め定められた期間以内（例えば、１ヶ月以内）にあったこと、を採用するものである。
文書が所属するフォルダーの親フォルダーに対して１ヶ月以内に何らかの操作を実施したユーザーは、担当グループではなくても、上位フォルダー担当者として参照可能として運用する状況を想定する。
【００８１】
このとき、ドキュメントのアクセス権が以下のように設定されていたとする。
（Ｃ１）  アクセス権タイプ  ：  アクセス権
（Ｃ２）  権限  ：  担当グループメンバー（仮想ロール）  ：  更新可
（Ｃ３）  権限  ：  上位フォルダー担当者（仮想ロール）  ：  参照可
【００８２】
前記（Ｃ２）の担当グループメンバーの仮想ロールについて説明する。担当グループメンバーの仮想ロールは、「対象文書のプロダクト名属性の値が、担当プロダクト名属性に含まれるユーザーの所属グループのメンバー」という条件で指定され、それを条件式で表現すると以下のようになる。
ＧＲＯＵＰ（ＧＲＯＵＰ  ＩＮ  ＭＥＭＢＥＲ  ＵＳＥＲ（ＯｂｊｅｃｔのｐｒｏｄｕｃｔＮａｍｅ属性  ＩＮ  ユーザーのｐｒｏｄｕｃｔＮａｍｅ属性））  ＩＮ  ＭＥＭＢＥＲ  操作者
この条件を仮想ロール格納モジュール２５０内の仮想ロール情報格納テーブル１２００、仮想ロール条件格納テーブル１３００に格納した場合、ｖＲｏｌｅＩＤが２００００２である行のように、そのテーブルに格納される。
【００８３】
前記（Ｃ３）の上位フォルダー担当者の仮想ロールについて説明する。上位フォルダー担当者の仮想ロールは、「対象文書の親フォルダーのさらに親であるフォルダーの、操作履歴で１ヶ月以内に操作を行った記録がある」という条件で指定され、それを条件式で表現すると以下のようになる。
操作者  ＝  ＵＳＥＲ（履歴（ＯＢＪＥＣＴ（ＯＢＪＥＣＴ（Ｏｂｊｅｃｔの親）の親）の操作履歴のｏｐｅｒａｔｉｏｎＵｓｅｒ＝操作者    ＡＮＤ    ＯＢＪＥＣＴ（ＯＢＪＥＣＴ（Ｏｂｊｅｃｔの親）の親）の操作履歴のｏｐｅｒａｔｉｏｎＤａｔｅ＞現時刻より１ヶ月前）のｏｐｅｒａｔｉｏｎＵｓｅｒ）
この条件を仮想ロール格納モジュール２５０内の仮想ロール情報格納テーブル１２００、仮想ロール条件格納テーブル１３００に格納した場合、ｖＲｏｌｅＩＤが２００００７である行のように、そのテーブルに格納される。
【００８４】
このようなアクセス権を設定しておくと、対象文書及びその親フォルダーのアクセス権設定に上位担当グループを含めることなく、親フォルダーの親を担当しているユーザーも参照だけはし得る運用に対応することになる。
【００８５】
次に、仮アクセス（仮更新）の処理について説明する。仮アクセスの処理は、仮更新と承認の２つの処理に分かれる。
仮更新は、文書に対して操作するユーザーが、仮アクセス権の権限しかない場合に、正式の文書（文書情報格納モジュール２７０内の文書）は更新せず、更新内容を一時的な格納場所である仮アクセス格納モジュール４２０に保持する処理である。
文書情報格納モジュール２７０内に、例えば、図１４の例に示すような正式データ格納テーブル１４００に文書の情報が格納されていたとする。図１４は、正式データ格納テーブル１４００のデータ構造例を示す説明図である。正式データ格納テーブル１４００は、ｏｂｊｅｃｔＩＤ欄１４１０、名前欄１４２０、変更日時欄１４３０、ユーザー属性１欄１４４０、その他属性情報欄１４５０を有している。ｏｂｊｅｃｔＩＤ欄１４１０は、オブジェクトである文書の識別子を記憶する。名前欄１４２０は、そのオブジェクトの名称を記憶する。変更日時欄１４３０は、そのオブジェクトに対して操作が行われた日時を記憶する。ユーザー属性１欄１４４０は、そのオブジェクトに関する属性を記憶する。その他属性情報欄１４５０は、そのオブジェクトに関するその他の属性を記憶する。
【００８６】
仮アクセス権しかないユーザーは、正式データ格納テーブル１４００を更新することはできない。しかし、更新内容を一時的に別のテーブルに格納することを可能にする。これを仮更新処理とする。
例えば、仮アクセス権しか権限のないユーザー１が、正式データ格納テーブル１４００においてＤｏｃｕｍｅｎｔ０２のユーザー属性１（ユーザー属性１欄１４４０）を仮更新する場合、別のテーブルである仮更新データ格納テーブル１５００にＤｏｃｕｍｅｎｔ０２の情報を全てコピーし、ユーザー１は仮更新データ格納テーブル１５００を更新する。
一時的に更新を格納する仮更新データ格納テーブル１５００のデータ構成は、正式データを格納する正式データ格納テーブル１４００と同じ情報を保持でき、更新された内容（ユーザー属性１欄１５４０）とだれが更新したか（更新者欄１５６０）を保持している。図１５は、仮更新データ格納テーブル１５００のデータ構造例を示す説明図である。仮更新データ格納テーブル１５００は、ｏｂｊｅｃｔＩＤ欄１５１０、名前欄１５２０、変更日時欄１５３０、ユーザー属性１欄１５４０、その他属性情報欄１５５０、更新者欄１５６０を有している。ｏｂｊｅｃｔＩＤ欄１５１０からその他属性情報欄１５５０は、正式データ格納テーブル１４００のｏｂｊｅｃｔＩＤ欄１４１０からその他属性情報欄１４５０に対応するが、ユーザー属性１欄１５４０は、更新された内容を記憶する。そして、更新者欄１５６０は、その更新を行ったユーザーを記憶する。
【００８７】
このとき、ユーザー１が文書の一覧の提示を要求した場合には、図１６の例に示す仮更新を行ったユーザーの一覧結果テーブル１６００のように提示するが、他のユーザーには正式データのみの図１４の例に示す正式データ格納テーブル１４００のような結果を提示する。図１６は、仮更新を行ったユーザーの一覧結果テーブル１６００のデータ構造例を示す説明図である。仮更新を行ったユーザーの一覧結果テーブル１６００は、ｏｂｊｅｃｔＩＤ欄１６１０、名前欄１６２０、変更日時欄１６３０、ユーザー属性１欄１６４０、その他属性情報欄１６５０を有している。仮更新を行ったユーザーの一覧結果テーブル１６００は、正式データ格納テーブル１４００と同じ構成を有している。ただし、仮更新処理を行っているユーザーと仮更新処理を行っていないユーザー間、又は仮更新処理を行っているユーザー間によって、異なる内容となる。
承認処理は、設定されている承認者が、前述の仮更新処理の内容を確認し、承認操作を行うことによって、仮更新データ格納テーブル１５００に保存されている内容を、正式データ格納テーブル１４００に反映し、仮更新データ格納テーブル１５００に格納されている内容を削除することによって実現する。
【００８８】
なお、本実施の形態としてのプログラムが実行されるコンピュータのハードウェア構成は、図１７に例示するように、一般的なコンピュータであり、具体的にはパーソナルコンピュータ、サーバーとなり得るコンピュータ等である。つまり、具体例として、処理部（演算部）としてＣＰＵ１７０１を用い、記憶装置としてＲＡＭ１７０２、ＲＯＭ１７０３、ＨＤ１７０４（例えばハードディスクを用いることができる）を用いている。操作要求受付モジュール１１０、権利・操作処理モジュール１２０、利用者情報記憶モジュール１３０、操作履歴記憶モジュール１４０、電子情報記憶モジュール１５０、操作処理モジュール２１０、更新処理モジュール２２０、アクセス評価モジュール２３０、仮想ロール処理モジュール２４０、仮アクセス処理モジュール４１０等のプログラムを実行するＣＰＵ１７０１と、そのプログラムやデータを記憶するＲＡＭ１７０２と、本コンピュータを起動するためのプログラム等が格納されているＲＯＭ１７０３と、補助記憶装置であるＨＤ１７０４と、キーボード、マウス等のデータを入力する入力装置１７０６と、ＣＲＴや液晶ディスプレイ等の出力装置１７０５と、通信ネットワークと接続するための通信回線インタフェース１７０７（例えばネットワークインタフェースカードを用いることができる）、そして、それらをつないでデータのやりとりをするためのバス１７０８により構成されている。これらのコンピュータが複数台互いにネットワークによって接続されていてもよい。
【００８９】
前述の実施の形態のうち、コンピュータ・プログラムによるものについては、本ハードウェア構成のシステムにソフトウェアであるコンピュータ・プログラムを読み込ませ、ソフトウェアとハードウェア資源とが協働して、前述の実施の形態が実現される。
なお、図１７に示すハードウェア構成は、１つの構成例を示すものであり、本実施の形態は、図１７に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア（例えばＡＳＩＣ等）で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図１７に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、特に、パーソナルコンピュータの他、情報家電、複写機、ファックス、スキャナ、プリンタ、複合機（スキャナ、プリンタ、複写機、ファックス等のいずれか２つ以上の機能を有している画像処理装置）などに組み込まれていてもよい。
【００９０】
なお、前述の実施の形態において、「提示」としたものは、ディスプレイ等の表示装置への表示の他に、プリンタ等の印刷装置への印刷、スピーカー等の音声出力装置への音声の出力等があり、それらの組み合わせであってもよい。
【００９１】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）であって、ＤＶＤフォーラムで策定された規格である「ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ等」、ＤＶＤ＋ＲＷで策定された規格である「ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等」、コンパクトディスク（ＣＤ）であって、読出し専用メモリ（ＣＤ−ＲＯＭ）、ＣＤレコーダブル（ＣＤ−Ｒ）、ＣＤリライタブル（ＣＤ−ＲＷ）等、ブルーレイ・ディスク（Ｂｌｕｅ−ｒａｙ  Ｄｉｓｋ）、光磁気ディスク（ＭＯ）、フレキシブルディスク（ＦＤ）、磁気テープ、ハードディスク、読出し専用メモリ（ＲＯＭ）、電気的消去及び書換可能な読出し専用メモリ（ＥＥＰＲＯＭ）、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
【図面の簡単な説明】
【００９２】
【図１】本実施の形態の構成例についての概念的なモジュール構成図である。
【図２】本実施の形態を実現するにあたっての第１の実現形態の構成例についての概念的なモジュール構成図である。
【図３】第１の実現形態による処理例を示すフローチャートである。
【図４】本実施の形態を実現するにあたっての第２の実現形態の構成例についての概念的なモジュール構成図である。
【図５】第２の実現形態による処理例を示すフローチャートである。
【図６】第２の実現形態によるユーザー評価の処理例を示すフローチャートである。
【図７】本実施の形態を実現するにあたっての第３の実現形態の構成例についての概念的なモジュール構成図である。
【図８】第３の実現形態による処理例を示すフローチャートである。
【図９】ユーザーの担当変更例を示す説明図である。
【図１０】仮想ロールの条件構成例を示す説明図である。
【図１１】操作履歴格納テーブルのデータ構造例を示す説明図である。
【図１２】仮想ロール情報格納テーブルのデータ構造例を示す説明図である。
【図１３】仮想ロール条件格納テーブルのデータ構造例を示す説明図である。
【図１４】正式データ格納テーブルのデータ構造例を示す説明図である。
【図１５】仮更新データ格納テーブルのデータ構造例を示す説明図である。
【図１６】仮更新を行ったユーザーの一覧結果テーブルのデータ構造例を示す説明図である。
【図１７】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【符号の説明】
【００９３】
１１０…操作要求受付モジュール
１２０…権利・操作処理モジュール
１２１…操作権確認モジュール
１２２…操作履歴判断モジュール
１２３…操作実行モジュール
１３０…利用者情報記憶モジュール
１４０…操作履歴記憶モジュール
１５０…電子情報記憶モジュール
１６０…問い合わせモジュール
１７０…切替モジュール
２１０…操作処理モジュール
２２０…更新処理モジュール
２３０…アクセス評価モジュール
２４０…仮想ロール処理モジュール
２５０…仮想ロール格納モジュール
２６０…ユーザー情報格納モジュール
２７０…文書情報格納モジュール
２８０…操作履歴格納モジュール
４１０…仮アクセス処理モジュール
４２０…仮アクセス格納モジュール
【図１】
2010055520.tif 000003
【図２】
2010055520.tif 000004
【図３】
2010055520.tif 000005
【図４】
2010055520.tif 000006
【図５】
2010055520.tif 000007
【図６】
2010055520.tif 000008
【図７】
2010055520.tif 000009
【図８】
2010055520.tif 000010
【図９】
2010055520.tif 000011
【図１０】
2010055520.tif 000012
【図１１】
2010055520.tif 000013
【図１２】
2010055520.tif 000014
【図１３】
2010055520.tif 000015
【図１４】
2010055520.tif 000016
【図１５】
2010055520.tif 000017
【図１６】
2010055520.tif 000018
【図１７】
2010055520.tif 000019