情報処理プログラム及び情報処理装置
【課題】情報群に含まれる情報に対して、複数人の利用者によって操作ができてしまうことを抑制する情報処理プログラムを提供する。
【解決手段】操作の対象となる情報である操作対象情報と、操作を示す操作情報と、利用者の利用者情報とを受け付け、操作によって変更され得る情報である変更対象情報を、第1の対応付情報から抽出し、第2の対応付情報の利用者情報を受け付けられた利用者情報に更新し、操作対象情報に示された第2の対応付情報のうちで受け付けられた利用者情報がある場合には、受け付けられた利用者情報の利用者に、第2の対応付情報によって対応付けられた情報に対して、操作ができるように制御し、操作対象情報に示された第2の対応付情報のうちで受け付けられた利用者情報がない場合には、受け付けられた利用者情報の利用者には、操作対象情報に示された第2の対応付情報によって対応付けられた操作ができないように制御する。
【解決手段】操作の対象となる情報である操作対象情報と、操作を示す操作情報と、利用者の利用者情報とを受け付け、操作によって変更され得る情報である変更対象情報を、第1の対応付情報から抽出し、第2の対応付情報の利用者情報を受け付けられた利用者情報に更新し、操作対象情報に示された第2の対応付情報のうちで受け付けられた利用者情報がある場合には、受け付けられた利用者情報の利用者に、第2の対応付情報によって対応付けられた情報に対して、操作ができるように制御し、操作対象情報に示された第2の対応付情報のうちで受け付けられた利用者情報がない場合には、受け付けられた利用者情報の利用者には、操作対象情報に示された第2の対応付情報によって対応付けられた操作ができないように制御する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理プログラム及び情報処理装置に関する。
【背景技術】
【0002】
情報に対して、利用者が可能な操作を管理する技術がある。
これに関連する技術として、例えば、特許文献1には、最初にロックを獲得するための別々の外部参照を要せずに、共用外部データ上におけるオペレーションを可能とする、共用外部データに対する順序化アクセスを実施する機構を提供することを目的とし、リスト・データ構造が、プロセッサに結合される構造化外部記憶プロセッサ内に提供され、プロセッサ上で実行されるアプリケーションがリスト・データ構造内のデータを共用し、構造化外部記憶において条件付きでコマンドを実行する機構が提供され、複雑なデータ・オブジェクト・オペレーションの条件付きオペレーションは、原子的に実行される述語オペレーションに基づき、当該オペレーションは他のデータ・オブジェクト操作を許可する以前にデータ・オブジェクトの仮定状態を確認し、状態情報の変更もまた原子的に実行されることが開示されている。
【0003】
また、例えば、特許文献2には、データベース管理システムにおいてそのアプリケーション自体を変更することなく、それを標準化したとしても、データベースに対してアクセス要求を行ったクライアントのタイプに応じた制限を定義テーブルに単に記述しておくだけで、そのテーブルの記述内容にしたがった制限を実現することを課題とし、データベースサーバーは定義テーブル内のユーザー定義テーブルを参照してアクセス要求を行ったクライアントのタイプを特定し、このタイプに基づいて定義テーブル内の機能制限テーブルを参照してそれに対応する各種機能別の制限情報を読み出して要求元のクライアントへ送信し、クライアント端末はこの制限情報に基づいて各種機能を制限することが開示されている。
【0004】
また、例えば、特許文献3には、アクセス対象となる資源の属性の値の変更を適切に制御することのできる情報処理装置、資源管理装置、属性変更許否判定方法、属性変更許否判定プログラム及び記録媒体の提供を目的とし、アクセス対象となる資源の属性の値の変更許否判定を行う判定手段を有する情報処理装置であって、前記判定手段は、前記アクセス対象となる資源の属性の値について変更前の値と変更後の値との組み合わせに応じた前記属性の値の変更についての許否判定に関する規則が定義された定義情報に基づいて、前記アクセス対象となる資源の属性の値の変更についての許否判定を行うことにより前記課題を解決することが開示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平06−083783号公報
【特許文献2】特開2000−137682号公報
【特許文献3】特開2005−316952号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
本発明は、他の利用者による操作によって変更され得る対象となっている情報を参照する操作の実行を抑制するようにした情報処理プログラム及び情報処理装置を提供することを目的としている。
【課題を解決するための手段】
【0007】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項1の発明は、コンピュータに、操作の対象となる情報である操作対象情報と、該操作対象情報に対する操作を示す操作情報と、該操作を行う利用者の利用者情報とを受け付ける受付機能と、前記受付機能によって受け付けられた操作情報に示される操作によって変更され得る情報である変更対象情報を、記憶手段に記憶された、操作を示す操作情報と該操作によって変更され得る対象となる情報とを対応付けた第1の対応付情報から抽出する情報抽出機能と、記憶手段に記憶された、情報と該情報に対して実行可能な操作を示す操作情報と該情報に対して該操作情報に示された操作を実行可能な利用者を示す利用者情報とを対応付けた第2の対応付情報のうち、前記変更対象情報について示された第2の対応付情報の利用者情報を前記受付機能によって受け付けられた利用者情報に更新する更新機能と、前記更新機能による更新によって、前記操作対象情報に示された第2の対応付情報のうちで前記受付機能によって受け付けられた利用者情報がある場合には、該受付機能によって受け付けられた利用者情報に示される利用者に、該第2の対応付情報によって対応付けられた情報に対して、該第2の対応付情報によって対応付けられた操作ができるように制御し、該操作対象情報に示された第2の対応付情報のうちで該受付機能によって受け付けられた利用者情報がない場合には、該受付機能によって受け付けられた利用者情報に示される利用者には、該操作対象情報に示された第2の対応付情報によって対応付けられた操作ができないように制御する操作制御機能を実現させるための情報処理プログラムである。
【0008】
請求項2の発明は、前記更新機能は、前記受付機能によって受け付けられた操作情報に示された操作が終了した場合に、前記第2の対応付情報のうちで該受付機能によって受け付けられた利用者情報を元の利用者情報に戻すことを特徴とする請求項1に記載の情報処理プログラムである。
【0009】
請求項3の発明は、前記コンピュータに、前記利用者の利用者情報と前記操作対象情報とに対応する操作情報を前記第2の対応付情報から抽出し、該利用者が前記操作対象情報に対して可能な操作を示す情報を該利用者に提示する提示機能をさらに実現させることを特徴とする請求項1に記載の情報処理プログラムである。
【0010】
請求項4の発明は、操作の対象となる情報である操作対象情報と、該操作対象情報に対する操作を示す操作情報と、該操作を行う利用者の利用者情報とを受け付ける受付手段と、前記受付手段によって受け付けられた操作情報に示される操作によって変更され得る情報である変更対象情報を、記憶手段に記憶された、操作を示す操作情報と該操作によって変更され得る対象となる情報とを対応付けた第1の対応付情報から抽出する情報抽出手段と、記憶手段に記憶された、情報と該情報に対して実行可能な操作を示す操作情報と該情報に対して該操作情報に示された操作を実行可能な利用者を示す利用者情報とを対応付けた第2の対応付情報のうち、前記変更対象情報について示された第2の対応付情報の利用者情報を前記受付手段によって受け付けられた利用者情報に更新する更新手段と、前記更新手段による更新によって、前記操作対象情報に示された第2の対応付情報のうちで前記受付手段によって受け付けられた利用者情報がある場合には、該受付手段によって受け付けられた利用者情報に示される利用者に、該第2の対応付情報によって対応付けられた情報に対して、該第2の対応付情報によって対応付けられた操作ができるように制御し、該操作対象情報に示された第2の対応付情報のうちで該受付手段によって受け付けられた利用者情報がない場合には、該受付手段によって受け付けられた利用者情報に示される利用者には、該操作対象情報に示された第2の対応付情報によって対応付けられた操作ができないように制御する操作制御手段を具備することを特徴とする情報処理装置である。
【発明の効果】
【0011】
請求項1の情報処理プログラムによれば、他の利用者による操作によって変更され得る対象となっている情報について、変更前の内容に基づき操作を実行してしまうことを抑制することができる。
【0012】
請求項2の情報処理プログラムによれば、操作が終了した場合に、次の利用者による操作ができるようにする。
【0013】
請求項3の情報処理プログラムによれば、情報に対して可能な操作を利用者に提示することができる。
【0014】
請求項4の情報処理装置によれば、他の利用者による操作によって変更され得る対象となっている情報について、変更前の内容に基づき操作を実行してしまうことを抑制することができる。
【図面の簡単な説明】
【0015】
【図1】本実施の形態の構成例についての概念的なモジュール構成図である。
【図2】本実施の形態を実現するためのシステム構成の例を示す説明図である。
【図3】本実施の形態による処理例を示すフローチャートである。
【図4】操作・対象データ対応テーブルのデータ構造例を示す説明図である。
【図5】対象データ・アクセス権対応テーブルのデータ構造例を示す説明図である。
【図6】操作・対象データ対応テーブルのデータ構造例を示す説明図である。
【図7】対象データ・アクセス権対応テーブルのデータ構造例を示す説明図である。
【図8】対象データ・アクセス権対応テーブルのデータ構造例を示す説明図である。
【図9】操作・対象データ対応テーブルのデータ構造例を示す説明図である。
【図10】対象データ・アクセス権対応テーブルのデータ構造例を示す説明図である。
【図11】対象データ・アクセス権対応テーブル1100のデータ構造例を示す説明図である。
【図12】本実施の形態による文書一覧の提示例を示す説明図である。
【図13】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【0016】
以下、図面に基づき本発明を実現するにあたっての好適な一実施の形態の例を説明する。
図1は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア(コンピュータ・プログラム)、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム(コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム)、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、1モジュールを1プログラムで構成してもよいし、複数モジュールを1プログラムで構成してもよく、逆に1モジュールを複数プログラムで構成してもよい。また、複数モジュールは1コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって1モジュールが複数コンピュータで実行されてもよい。なお、1つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続(データの授受、指示、データ間の参照関係等)の場合にも用いる。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク(一対一対応の通信接続を含む)等の通信手段で接続されて構成されるほか、1つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」(社会システム)にすぎないものは含まない。
また、各モジュールによる処理ごとに又はモジュール内で複数の処理を行う場合はその処理ごとに、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、RAM(Random Access Memory)、外部記憶媒体、通信回線を介した記憶装置、CPU(Central Processing Unit)内のレジスタ等を含んでいてもよい。
【0017】
本実施の形態である情報処理装置は、情報に対して、利用者が可能な操作を管理するものであって、図1の例に示すように、システムA:112、システムB:114、操作受付モジュール120、操作・対象データ・アクセス権管理モジュール130、操作・対象データ定義記憶モジュール140、対象データ・アクセス権記憶モジュール150、評価モジュール160、編集処理モジュール170を有している。
【0018】
システムA:112、システムB:114は、操作受付モジュール120、操作・対象データ・アクセス権管理モジュール130と接続されている。システムA:112、システムB:114は、利用者の操作に応じて、複数の情報により構成される情報群の編集の指示を行う。ここで、情報群とは、例えば、電子文書等が該当する。なお、電子文書とは、テキストデータ、場合によっては画像、動画、音声等の電子データ、又はこれらの組み合わせであり、記憶、編集及び検索等の対象となるものをいい、これらに類似するものを含む。また、情報群を構成している情報としては、例えば、情報群が電子文書の場合、その電子文書の内容を示すコンテンツ、その電子文書の属性を示す属性情報がある。さらに、コンテンツ、属性情報は、本実施の形態によって管理される対象としての情報として複数に分かれていてもよい。なお、情報群に含まれる情報は、一般的には複数であるが、本実施の形態では1つであってもよい。
また、情報群に対しては、複数人の利用者によって操作が可能である。つまり、1つの情報群に対して、複数のシステムやアプリケーションから利用され得る。ただし、可能な操作としては、その情報群内の異なる情報に対して、それぞれの利用者が操作する場合であって、その情報群内の同じ情報に対しては、複数人の利用者による操作は禁止されるように処理する。
【0019】
また、システムA:112、システムB:114は、複数の同じシステムであってもよいし、異なるシステムであってもよい。また、システムA:112、システムB:114は、搭載しているアプリケーションによって情報群を編集する場合は、各々のシステムに同じアプリケーションを搭載していてもよいし、異なるアプリケーションを搭載していてもよい。また、異なるシステム又はアプリケーションである場合は、同じ情報群に対してであっても異なる編集ができるようになっているのが一般的である。
【0020】
なお、図1に示す例では、システムA:112、システムB:114の2つであったが、より多くのシステムが接続されていてもよい。
システムA:112、システムB:114は、操作対象となる情報群と、その情報群に対する操作を示す操作情報と、その操作を行う利用者の利用者情報とを操作受付モジュール120に渡す。
また、システムA:112、システムB:114は、それぞれの第1の対応付情報を操作・対象データ・アクセス権管理モジュール130に渡す。第1の対応付情報の詳細については、操作・対象データ定義記憶モジュール140を用いて後述する。
【0021】
操作受付モジュール120は、システムA:112、システムB:114、操作・対象データ・アクセス権管理モジュール130、評価モジュール160と接続されている。システムA:112又はシステムB:114から、操作の対象となる情報群(操作対象情報)と、その情報群に対する操作を示す操作情報と、その操作を行う利用者の利用者情報とを受け付ける。具体的には、例えば、情報群として、情報群を本実施の形態内で一意に識別できる情報であればよく、電子文書の名称、URL(Uniform Resource Locator)等が該当し、操作情報として、操作を本実施の形態内で一意に識別できる情報であればよく、操作名、操作ID(IDentification)等が該当し、利用者情報として、利用者を本実施の形態内で一意に識別できる情報であればよく、利用者名、利用者ID等が該当する。
【0022】
操作・対象データ・アクセス権管理モジュール130は、システムA:112、システムB:114、操作受付モジュール120、操作・対象データ定義記憶モジュール140、対象データ・アクセス権記憶モジュール150、評価モジュール160と接続されている。操作受付モジュール120によって受け付けられた操作情報に示される操作によって変更され得る情報(変更対象情報)を操作・対象データ定義記憶モジュール140から抽出する。
また、操作・対象データ・アクセス権管理モジュール130は、対象データ・アクセス権記憶モジュール150内の第2の対応付情報のうち、変更対象情報に対応している第2の対応付情報の利用者情報を操作受付モジュール120によって受け付けられた利用者情報に更新する。つまり、操作・対象データ・アクセス権管理モジュール130は、抽出した情報に対応させて、対象データ・アクセス権記憶モジュール150の利用者情報に操作受付モジュール120によって受け付けられた利用者情報を記憶させるように制御する。
また、操作・対象データ・アクセス権管理モジュール130は、利用者の利用者情報と操作対象情報とに対応する操作情報を第2の対応付情報から抽出し、その利用者がその操作対象情報に対して可能な操作を示す情報をその利用者に提示する。つまり、操作・対象データ・アクセス権管理モジュール130は、利用者の利用者情報に対応する操作情報を対象データ・アクセス権記憶モジュール150内の第2の対応付情報から抽出し、その利用者が情報群を構成する情報に対して可能な操作を、システムA:112、システムB:114の利用者に提示する。
また、操作・対象データ・アクセス権管理モジュール130は、操作受付モジュール120によって受け付けられた操作情報に示された操作が終了した場合に、第2の対応付情報のうちで操作受付モジュール120によって受け付けられた利用者情報を元の利用者情報に戻す。ここでの操作情報と利用者情報は対応している。つまり、両者の関係は、利用者情報に示された利用者が行った操作の操作情報である。また、元の利用者情報に戻すとは、前述のように、変更対象情報に対応している第2の対応付情報の利用者情報を操作受付モジュール120によって受け付けられた利用者情報に更新したが、これを更新前の状態にすることをいう。
また、操作・対象データ・アクセス権管理モジュール130は、システムA:112、システムB:114からそのシステム又はアプリケーションによる操作とその操作によって変更され得る対象となる情報との対応を受け付け、操作・対象データ定義記憶モジュール140に記憶させる。
【0023】
操作・対象データ定義記憶モジュール140は、操作・対象データ・アクセス権管理モジュール130と接続されている。記憶装置に記憶されており、操作を示す操作情報とその操作によって変更され得る対象となる情報(変更対象情報)とを対応付けた第1の対応付情報を記憶する。例えば、図4に示した操作・対象データ対応テーブル400が該当する。操作・対象データ対応テーブル400は、操作名欄410、対象データ欄420を有している。操作名欄410は、操作情報を記憶する。例えば、checkout(チェックアウト)等がある。対象データ欄420は、その操作情報が示す操作によって変更され得る電子文書を構成している情報を記憶する。例えば、電子文書の内容であることを示すcontent、属性の一部であり、電子文書が最後に更新された日時を示すlast−modified−on、その最後に更新を指示した者を示すlast−modified−by等がある。また、操作名欄410が記憶している操作が複数の情報を変更し得る場合は、対象データ欄420は、その複数の情報を記憶する。なお、列方向の項目欄430、値欄440は説明用に付加したものであり、操作名と対象データが対応していればよい。
【0024】
対象データ・アクセス権記憶モジュール150は、操作・対象データ・アクセス権管理モジュール130と接続されている。情報とその情報に対して実行可能な操作を示す操作情報とその情報に対してその操作情報に示された操作を実行可能な利用者を示す利用者情報とを対応付けている第2の対応付情報を記憶装置に記憶している。つまり、情報群を構成している情報と利用者情報とその情報に対してその利用者情報の利用者が可能な操作を示す操作情報とを対応付けた第2の対応付情報を記憶する。例えば、図5に示した対象データ・アクセス権対応テーブル500が該当する。対象データ・アクセス権対応テーブル500は、対象データ欄510、対象ユーザー欄520、アクセス権欄530を有している。対象データ欄510は、情報群を構成している情報を記憶する。対象ユーザー欄520は、利用者情報を記憶する。アクセス権欄530は、その情報に対してその利用者情報の利用者が可能な操作を示す操作情報を記憶する。例えば、編集できることを示すedit、閲覧できることを示すview、削除できることを示すdelete等がある。対象データ・アクセス権対応テーブル500は、アクセス権管理を行うために必要となる情報を記憶する。なお、対象ユーザー欄520が記憶する「operator」とは、特定された利用者ではない利用者情報であること(アクセス権を設定し得ること、なお「operator」が一つの場合は未だアクセス権を有している者がいないことを示しており、対象ユーザー欄520に「operator」が複数ある場合は、対象となっている情報に対して、複数人の利用者が操作可能であることを示している。
また、操作・対象データ・アクセス権管理モジュール130によって、対象データ・アクセス権記憶モジュール150の利用者情報に操作受付モジュール120によって受け付けられた利用者情報を記憶させるように制御した場合は、例えば、図5に示した対象データ・アクセス権対応テーブル500は図8に示した対象データ・アクセス権対応テーブル800のようになる。これは、「operator」に具体的な「ユーザーA」を記憶された例である。つまり、「ユーザーA」は「content」に対して「edit」、「view」、「delete」の操作ができることを示している。したがって、それ以外のユーザーは「content」に対してこれらの操作ができないこととなる。
【0025】
評価モジュール160は、操作受付モジュール120、操作・対象データ・アクセス権管理モジュール130、編集処理モジュール170と接続されている。評価モジュール160は、操作・対象データ・アクセス権管理モジュール130による更新によって、操作対象情報に示された第2の対応付情報のうちで操作受付モジュール120によって受け付けられた利用者情報がある場合には、操作受付モジュール120によって受け付けられた利用者情報に示される利用者に、第2の対応付情報によって対応付けられた情報に対して、第2の対応付情報によって対応付けられた操作ができるように制御し、その操作対象情報に示された第2の対応付情報のうちで操作受付モジュール120によって受け付けられた利用者情報がない場合には、操作受付モジュール120によって受け付けられた利用者情報に示される利用者には、その操作対象情報に示された第2の対応付情報によって対応付けられた操作ができないように制御する。
評価モジュール160は、情報群に含まれる情報に対して、操作受付モジュール120によって受け付けられた利用者情報とは異なる利用者情報が対象データ・アクセス権記憶モジュール150内の第2の対応付情報に記憶されている場合は、操作受付モジュール120によって受け付けられた利用者情報の利用者には、その第2の対応付情報によって対応付けられた操作ができないように、編集処理モジュール170を制御する。
また、評価モジュール160は、操作・対象データ・アクセス権管理モジュール130によって、対象データ・アクセス権記憶モジュール150内の第2の対応付情報に記憶された利用者情報の利用者には、その第2の対応付情報によって対応付けられた情報に対して、その第2の対応付情報によって対応付けられた操作ができるように制御する。
編集処理モジュール170は、評価モジュール160と接続されている。評価モジュール160の制御にしたがって、情報群の処理を行う。なお、編集処理モジュール170は、システムA:112、システムB:114に搭載されているアプリケーションの一部であってもよいし、他のシステムに搭載されていてもよい。
【0026】
図2は、本実施の形態を実現するためのシステム構成の例を示す説明図である。
システムA:112、システムB:114、情報処理装置200、文書編集装置210は、通信回線290を介してそれぞれ接続されている。情報処理装置200は、図1に例示した操作受付モジュール120、操作・対象データ・アクセス権管理モジュール130、操作・対象データ定義記憶モジュール140、対象データ・アクセス権記憶モジュール150、評価モジュール160を有し、システムA:112、システムB:114から電子文書に対する編集指示、その指示を行った利用者の利用者情報を受け取り、その編集ができるか否かを判断し、文書編集装置210にその結果を渡すことによって、編集を制御する。文書編集装置210は、編集処理モジュール170を有し、情報処理装置200の判断結果を受け取って、電子文書に対する編集を行う。また、その電子文書を記憶していてもよい。
【0027】
図3は、本実施の形態による処理例を示すフローチャートである。
ステップS302では、システムA:112が、システムA:112又はシステムB:114から編集対象である電子文書、操作情報、利用者情報を受け付け、操作・対象データ・アクセス権管理モジュール130が、その操作情報に対応する対象操作定義情報としての操作・対象データ対応テーブル400が操作・対象データ定義記憶モジュール140内にあるか否かを判断し、ある場合はステップS304へ進み、それ以外の場合はステップS318へ進む。ここでは、受け付けた操作情報が、本実施の形態による処理対象であるか否かを判断しているものである。
【0028】
ステップS304では、操作・対象データ・アクセス権管理モジュール130が、操作・対象データ定義記憶モジュール140内の操作・対象データ対応テーブル400に操作情報に対応する対象データに対するアクセス権を、対象データ・アクセス権記憶モジュール150内の対象データ・アクセス権対応テーブル500から抽出する。より具体的には、操作情報に対応する対象データを操作・対象データ対応テーブル400の対象データ欄420から抽出する。そして、その抽出した対象データに対応するアクセス権を対象データ・アクセス権対応テーブル500のアクセス権欄530から抽出する。
ステップS306では、評価モジュール160が、アクセス権限があるか否かを判断し、ある場合はステップS308へ進み、それ以外の場合はステップS316へ進む。ここで、アクセス権限があるか否かの判断は、ステップS304で対象データ・アクセス権対応テーブル500のアクセス権欄530からアクセス権を抽出できたか否かによって判断する。
【0029】
ステップS308では、操作・対象データ・アクセス権管理モジュール130が、アクセス権の更新が可能か否かを判断し、可能な場合はステップS310へ進み、それ以外の場合はステップS314へ進む。ここで、アクセス権の更新が可能か否かの判断は、対象データ・アクセス権対応テーブル500の対象ユーザー欄520に「operator」が記憶されているか否かによって判断する。「operator」が記憶されているということは、現在は誰もその情報に対して編集を行っていないことを意味し、「operator」以外の利用者情報が記憶されているということは、その利用者情報の利用者が、現在はその情報に対して編集を行っていることを意味しているためである。つまり、排他制御を行っている。なお、対象ユーザー欄520には、複数の「operator」が記憶されている場合があり、1つでも「operator」が記憶されていれば、「operator」が記憶されている(つまり、アクセス権の更新が可能である)と判断する。
なお、ステップS308でアクセス権の更新は可能ではないと判断した場合はステップS314へ進むのではなく、ステップS316へ進むようにしてもよい。
【0030】
ステップS310では、操作・対象データ・アクセス権管理モジュール130が、アクセス権情報を更新する。アクセス権情報の更新は、対象データ・アクセス権対応テーブル500の対象ユーザー欄520に「operator」の代わりにその編集の指示を行った利用者の利用者情報を記憶させる。
ステップS312では、評価モジュール160が、アクセス可能の旨を編集処理モジュール170に通知する。これによって、編集処理モジュール170はその操作情報に伴う編集を行う。また、アクセス可能の旨を操作指示を行ったシステムA:112又はシステムB:114に通知してもよい。
【0031】
ステップS314では、操作・対象データ・アクセス権管理モジュール130が、対象データ・アクセス権対応テーブル500の対象ユーザー欄520に「operator」が記憶されるまで待機する。この後、ステップS310へ進む。つまり、アクセス権はあるが、既に他の利用者によって編集されている状態であるので、その編集が終了するまで待機する。なお、待機する旨をシステムA:112又はシステムB:114の利用者に通知し、利用者の操作によって、待機する旨の指示がなされ、その指示を受け付けた場合は、待機するようにしてもよい。もちろんのことながら、編集が終了したときに、操作・対象データ・アクセス権管理モジュール130は、対象データ・アクセス権対応テーブル500の対象ユーザー欄520に、その編集の指示を行った利用者の利用者情報の代わりに「operator」を記憶させる。つまり、対象データ・アクセス権対応テーブル500に記憶されている利用者の利用者情報を「operator」に戻す処理を行う。
【0032】
ステップS316では、評価モジュール160は、アクセス不可の旨を編集処理モジュール170に通知する。これによって、編集処理モジュール170はその操作情報に伴う編集はできない。また、アクセス不可の旨を操作指示を行ったシステムA:112又はシステムB:114に通知してもよい。
ステップS318では、評価モジュール160は、無関与の旨を編集処理モジュール170に通知する。つまり、受け付けた操作情報は、本実施の形態による処理対象ではない旨を編集処理モジュール170に通知する。評価モジュール160は、本実施の形態による処理を伴わないアクセス権管理を行い、編集処理モジュール170はそのアクセス権管理に従って電子文書に対する編集を行う。
【0033】
次に、操作によって変更され得る情報ごとにアクセス権を評価することで、他のシステム又はアプリケーションによる電子文書への操作をブロックする処理(排他制御の処理)について説明する。
ある電子文書XをシステムA:112のアプリケーションAからチェックアウトしている最中に、アプリケーションBから承認作業を実行して、承認作業がブロックされる状況を例として説明する。
まず、システムA:112のアプリケーションAから、図4に例示する操作・対象データ対応テーブル400のような操作と対象データの関連を操作・対象データ・アクセス権管理モジュール130が受け付け、操作・対象データ定義記憶モジュール140に記憶させる。
そして、操作・対象データ対応テーブル400内の対象データに対して、図5に例示する対象データ・アクセス権対応テーブル500のようなアクセス権限が設定されている。対象データ・アクセス権対応テーブル500は、予め定められていてもよい。
【0034】
一方、システムB:114のアプリケーションBから、図6に例示する操作・対象データ対応テーブル600のような操作と対象データの関連を操作・対象データ・アクセス権管理モジュール130が受け付け、操作・対象データ定義記憶モジュール140に記憶させる。操作・対象データ対応テーブル600は、操作「approve(承認)」によって変更され得る対象となる対象データとして、電子文書の属性の一部であり、その電子文書に対して最後に更新を指示した者を示すlast−modified−by、その電子文書が最後に更新された日時を示すlast−modified−onがあることを示している。
そして、操作・対象データ対応テーブル600内の対象データに対して、図7に例示する対象データ・アクセス権対応テーブル700のようなアクセス権限が設定されている。対象データ・アクセス権対応テーブル700は、予め定められていてもよい。対象データ・アクセス権対応テーブル700は、last−modified−by、last−modified−onともに、「operator」にedit、viewのアクセス権があることを示している。
【0035】
このような状況である場合に、システムA:112のアプリケーションAでユーザーAにより、電子文書Xに対して、操作「checkout」が指示されると、電子文書Xについて各対象データのアクセス権が図8に例示する対象データ・アクセス権対応テーブル800のように変更される。つまり、操作・対象データ・アクセス権管理モジュール130は、図5に例示した対象データ・アクセス権対応テーブル500の状態にあるので、「ユーザーA」にアクセス権限があり(図3に例示のフローチャートでは、ステップS306で「あり」)、アクセス権の更新も可能である(図3に例示のフローチャートでは、ステップS308で「可能」)と判断する。したがって、対象ユーザー欄520内の「operator」を「ユーザーA」に変更して、対象データ・アクセス権対応テーブル500を対象データ・アクセス権対応テーブル800に変更する。
【0036】
この後に、システムB:114のアプリケーションBでユーザーBにより、同じ電子文書Xに対して、操作「approve」が指示されると、操作「approve」に対応する対象データであるlast−modified−byとlast−modified−onのeditとviewがユーザーAのみになっているため(図8に例示の対象データ・アクセス権対応テーブル800を参照)、操作・対象データ・アクセス権管理モジュール130は、アクセス権の更新は可能ではないと判断し(図3に例示のフローチャートでは、ステップS308で「不可能」)、ユーザーAによる操作が終了するまで待機する(図3に例示のフローチャートでは、ステップS314)。また、図3に例示のフローチャートで、前述のようにステップS308で「不可能」の場合に、ステップS316へ進むようにしてもよいが、そのようにした場合、評価モジュール160によってシステムB:114のアプリケーションBからは操作「approve」を実行することができないように制御される。
【0037】
次に、操作によって変更され得る情報ごとに評価することで、対象とする電子文書に対して実行可能な操作を提示する処理について説明する。
ある電子文書XをシステムA:112のアプリケーションAから操作「checkout(チェックアウト)」の処理を行っているときに、システムB:114のアプリケーションBから電子文書Xに対して、操作「addComments(コメント付与)」を実行可能とする例を説明する。
まず、システムA:112のアプリケーションAから、前述した図4に例示する操作・対象データ対応テーブル400のような操作と対象データの関連を操作・対象データ・アクセス権管理モジュール130が受け付け、操作・対象データ定義記憶モジュール140に記憶させる。
そして、操作・対象データ対応テーブル400内の対象データに対して、前述した図5に例示する対象データ・アクセス権対応テーブル500のようなアクセス権限が設定されている。対象データ・アクセス権対応テーブル500は、予め定められていてもよい。
さらに、システムB:114のアプリケーションBから、図9に例示する操作・対象データ対応テーブル900のような操作と対象データの関連を操作・対象データ・アクセス権管理モジュール130が受け付け、操作・対象データ定義記憶モジュール140に記憶させる。操作・対象データ対応テーブル900は、操作「addComments」によって変更され得る対象となる対象データとして、電子文書の属性の一部であるコメントattribute(comment)があることを示している。なお、コメントは文書の内容に影響を与えるものではないため、文書の属性であるlast−modified−by、last−modified−onなどの属性には影響を与えない。
また、操作・対象データ対応テーブル900内の対象データに対して、図10に例示する対象データ・アクセス権対応テーブル1000のようなアクセス権限が設定されている。対象データ・アクセス権対応テーブル1000は、attribute(comment)に、「operator」にedit、view、deleteのアクセス権があることを示している。
【0038】
システムA:112のアプリケーションAからユーザーAにより電子文書Xに対して操作「checkout」が指示されると、電子文書Xについて各対象データのアクセス権は、操作・対象データ・アクセス権管理モジュール130によって、図11に例示する対象データ・アクセス権対応テーブル1100のように変更される。つまり、操作「checkout」の対象データは、図4に例示する操作・対象データ対応テーブル400からcontent、last−modified−by、last−modified−onの3つである。したがって、その3つの対象データに対しては、対象データ・アクセス権対応テーブル1100の対象ユーザー欄1120は、operatorの代わりに、操作・対象データ・アクセス権管理モジュール130によってユーザーAが記憶されており、ユーザーAには、対象データに応じて、「edit、view、delete」又は、「edit、view」のアクセス権があることとなる。そして、それ以外の対象データであるattribute(comment)に対応する対象ユーザー欄1120はoperatorのままである。つまり、ユーザーA以外の利用者によっても操作が可能であることを示している。
【0039】
図12は、本実施の形態による文書一覧の提示例を示す説明図である。
文書一覧提示領域1200はシステムB:114の提示装置に提示されるものであって、内容として文書名欄1210、操作欄1220、最終変更日時欄1240、最終変更者欄1250を提示している。文書名欄1210は文書名を提示する。操作欄1220はその電子文書に対して、その利用者(ここではユーザーB)が可能な操作を提示する。最終変更日時欄1240は属性である最終更新日時を提示する。最終変更者欄1250は属性である最終更新者を提示する。
利用者の操作によって操作欄1220内のプルダウンメニュー提示ボタン1230がクリックされると、「承認」操作選択領域1231、「コメント付与」操作選択領域1232、「チェックアウト」操作選択領域1233、「削除」操作選択領域1234をプルダウンメニューとして提示する。操作・対象データ・アクセス権管理モジュール130は、図11に例示した対象データ・アクセス権対応テーブル1100を参照して、ユーザーBが可能な操作としてattribute(comment)であるコメント付与があることを示すように「コメント付与」操作選択領域1232を選択可能に提示する。なお、他の「承認」操作選択領域1231、「チェックアウト」操作選択領域1233、「削除」操作選択領域1234は、選択ができないように(例えば、グレーアウトして)提示する。
【0040】
なお、本実施の形態としてのプログラムが実行されるコンピュータのハードウェア構成は、図13に例示するように、一般的なコンピュータであり、具体的にはパーソナルコンピュータ、サーバーとなり得るコンピュータ等である。つまり、具体例として、処理部(演算部)としてCPU1301を用い、記憶装置としてRAM1302、ROM1303、HD1304を用いている。HD1304として、例えばハードディスクを用いてもよい。操作・対象データ・アクセス権管理モジュール130、評価モジュール160、編集処理モジュール170等のプログラムを実行するCPU1301と、そのプログラムやデータを記憶するRAM1302と、本コンピュータを起動するためのプログラム等が格納されているROM1303と、補助記憶装置であるHD1304と、キーボード、マウス等のデータを入力する入力装置1306と、CRTや液晶ディスプレイ等の出力装置1305と、ネットワークインタフェースカード等の通信ネットワークと接続するための通信回線インタフェース1307、そして、それらをつないでデータのやりとりをするためのバス1308により構成されている。これらのコンピュータが複数台互いにネットワークによって接続されていてもよい。
【0041】
前述の実施の形態のうち、コンピュータ・プログラムによるものについては、本ハードウェア構成のシステムにソフトウェアであるコンピュータ・プログラムを読み込ませ、ソフトウェアとハードウェア資源とが協働して、前述の実施の形態が実現される。
なお、図13に示すハードウェア構成は、1つの構成例を示すものであり、本実施の形態は、図13に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア(例えばASIC等)で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図13に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、特に、パーソナルコンピュータの他、情報家電、複写機、ファックス、スキャナ、プリンタ、複合機(スキャナ、プリンタ、複写機、ファックス等のいずれか2つ以上の機能を有している画像処理装置)などに組み込まれていてもよい。
【0042】
なお、前述の実施の形態において、「提示」としたものは、ディスプレイ等の表示装置への表示の他に、プリンタ等の印刷装置への印刷、スピーカー等の音声出力装置への音声の出力等があり、それらの組み合わせであってもよい。
【0043】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク(DVD)であって、DVDフォーラムで策定された規格である「DVD−R、DVD−RW、DVD−RAM等」、DVD+RWで策定された規格である「DVD+R、DVD+RW等」、コンパクトディスク(CD)であって、読出し専用メモリ(CD−ROM)、CDレコーダブル(CD−R)、CDリライタブル(CD−RW)等、ブルーレイ・ディスク(Blu−ray Disc(登録商標))、光磁気ディスク(MO)、フレキシブルディスク(FD)、磁気テープ、ハードディスク、読出し専用メモリ(ROM)、電気的消去及び書換可能な読出し専用メモリ(EEPROM)、フラッシュ・メモリ、ランダム・アクセス・メモリ(RAM)等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、ワイド・エリア・ネットワーク(WAN)、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
【符号の説明】
【0044】
112…システムA
114…システムB
120…操作受付モジュール
130…操作・対象データ・アクセス権管理モジュール
140…操作・対象データ定義記憶モジュール
150…対象データ・アクセス権記憶モジュール
160…評価モジュール
170…編集処理モジュール
【技術分野】
【0001】
本発明は、情報処理プログラム及び情報処理装置に関する。
【背景技術】
【0002】
情報に対して、利用者が可能な操作を管理する技術がある。
これに関連する技術として、例えば、特許文献1には、最初にロックを獲得するための別々の外部参照を要せずに、共用外部データ上におけるオペレーションを可能とする、共用外部データに対する順序化アクセスを実施する機構を提供することを目的とし、リスト・データ構造が、プロセッサに結合される構造化外部記憶プロセッサ内に提供され、プロセッサ上で実行されるアプリケーションがリスト・データ構造内のデータを共用し、構造化外部記憶において条件付きでコマンドを実行する機構が提供され、複雑なデータ・オブジェクト・オペレーションの条件付きオペレーションは、原子的に実行される述語オペレーションに基づき、当該オペレーションは他のデータ・オブジェクト操作を許可する以前にデータ・オブジェクトの仮定状態を確認し、状態情報の変更もまた原子的に実行されることが開示されている。
【0003】
また、例えば、特許文献2には、データベース管理システムにおいてそのアプリケーション自体を変更することなく、それを標準化したとしても、データベースに対してアクセス要求を行ったクライアントのタイプに応じた制限を定義テーブルに単に記述しておくだけで、そのテーブルの記述内容にしたがった制限を実現することを課題とし、データベースサーバーは定義テーブル内のユーザー定義テーブルを参照してアクセス要求を行ったクライアントのタイプを特定し、このタイプに基づいて定義テーブル内の機能制限テーブルを参照してそれに対応する各種機能別の制限情報を読み出して要求元のクライアントへ送信し、クライアント端末はこの制限情報に基づいて各種機能を制限することが開示されている。
【0004】
また、例えば、特許文献3には、アクセス対象となる資源の属性の値の変更を適切に制御することのできる情報処理装置、資源管理装置、属性変更許否判定方法、属性変更許否判定プログラム及び記録媒体の提供を目的とし、アクセス対象となる資源の属性の値の変更許否判定を行う判定手段を有する情報処理装置であって、前記判定手段は、前記アクセス対象となる資源の属性の値について変更前の値と変更後の値との組み合わせに応じた前記属性の値の変更についての許否判定に関する規則が定義された定義情報に基づいて、前記アクセス対象となる資源の属性の値の変更についての許否判定を行うことにより前記課題を解決することが開示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平06−083783号公報
【特許文献2】特開2000−137682号公報
【特許文献3】特開2005−316952号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
本発明は、他の利用者による操作によって変更され得る対象となっている情報を参照する操作の実行を抑制するようにした情報処理プログラム及び情報処理装置を提供することを目的としている。
【課題を解決するための手段】
【0007】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項1の発明は、コンピュータに、操作の対象となる情報である操作対象情報と、該操作対象情報に対する操作を示す操作情報と、該操作を行う利用者の利用者情報とを受け付ける受付機能と、前記受付機能によって受け付けられた操作情報に示される操作によって変更され得る情報である変更対象情報を、記憶手段に記憶された、操作を示す操作情報と該操作によって変更され得る対象となる情報とを対応付けた第1の対応付情報から抽出する情報抽出機能と、記憶手段に記憶された、情報と該情報に対して実行可能な操作を示す操作情報と該情報に対して該操作情報に示された操作を実行可能な利用者を示す利用者情報とを対応付けた第2の対応付情報のうち、前記変更対象情報について示された第2の対応付情報の利用者情報を前記受付機能によって受け付けられた利用者情報に更新する更新機能と、前記更新機能による更新によって、前記操作対象情報に示された第2の対応付情報のうちで前記受付機能によって受け付けられた利用者情報がある場合には、該受付機能によって受け付けられた利用者情報に示される利用者に、該第2の対応付情報によって対応付けられた情報に対して、該第2の対応付情報によって対応付けられた操作ができるように制御し、該操作対象情報に示された第2の対応付情報のうちで該受付機能によって受け付けられた利用者情報がない場合には、該受付機能によって受け付けられた利用者情報に示される利用者には、該操作対象情報に示された第2の対応付情報によって対応付けられた操作ができないように制御する操作制御機能を実現させるための情報処理プログラムである。
【0008】
請求項2の発明は、前記更新機能は、前記受付機能によって受け付けられた操作情報に示された操作が終了した場合に、前記第2の対応付情報のうちで該受付機能によって受け付けられた利用者情報を元の利用者情報に戻すことを特徴とする請求項1に記載の情報処理プログラムである。
【0009】
請求項3の発明は、前記コンピュータに、前記利用者の利用者情報と前記操作対象情報とに対応する操作情報を前記第2の対応付情報から抽出し、該利用者が前記操作対象情報に対して可能な操作を示す情報を該利用者に提示する提示機能をさらに実現させることを特徴とする請求項1に記載の情報処理プログラムである。
【0010】
請求項4の発明は、操作の対象となる情報である操作対象情報と、該操作対象情報に対する操作を示す操作情報と、該操作を行う利用者の利用者情報とを受け付ける受付手段と、前記受付手段によって受け付けられた操作情報に示される操作によって変更され得る情報である変更対象情報を、記憶手段に記憶された、操作を示す操作情報と該操作によって変更され得る対象となる情報とを対応付けた第1の対応付情報から抽出する情報抽出手段と、記憶手段に記憶された、情報と該情報に対して実行可能な操作を示す操作情報と該情報に対して該操作情報に示された操作を実行可能な利用者を示す利用者情報とを対応付けた第2の対応付情報のうち、前記変更対象情報について示された第2の対応付情報の利用者情報を前記受付手段によって受け付けられた利用者情報に更新する更新手段と、前記更新手段による更新によって、前記操作対象情報に示された第2の対応付情報のうちで前記受付手段によって受け付けられた利用者情報がある場合には、該受付手段によって受け付けられた利用者情報に示される利用者に、該第2の対応付情報によって対応付けられた情報に対して、該第2の対応付情報によって対応付けられた操作ができるように制御し、該操作対象情報に示された第2の対応付情報のうちで該受付手段によって受け付けられた利用者情報がない場合には、該受付手段によって受け付けられた利用者情報に示される利用者には、該操作対象情報に示された第2の対応付情報によって対応付けられた操作ができないように制御する操作制御手段を具備することを特徴とする情報処理装置である。
【発明の効果】
【0011】
請求項1の情報処理プログラムによれば、他の利用者による操作によって変更され得る対象となっている情報について、変更前の内容に基づき操作を実行してしまうことを抑制することができる。
【0012】
請求項2の情報処理プログラムによれば、操作が終了した場合に、次の利用者による操作ができるようにする。
【0013】
請求項3の情報処理プログラムによれば、情報に対して可能な操作を利用者に提示することができる。
【0014】
請求項4の情報処理装置によれば、他の利用者による操作によって変更され得る対象となっている情報について、変更前の内容に基づき操作を実行してしまうことを抑制することができる。
【図面の簡単な説明】
【0015】
【図1】本実施の形態の構成例についての概念的なモジュール構成図である。
【図2】本実施の形態を実現するためのシステム構成の例を示す説明図である。
【図3】本実施の形態による処理例を示すフローチャートである。
【図4】操作・対象データ対応テーブルのデータ構造例を示す説明図である。
【図5】対象データ・アクセス権対応テーブルのデータ構造例を示す説明図である。
【図6】操作・対象データ対応テーブルのデータ構造例を示す説明図である。
【図7】対象データ・アクセス権対応テーブルのデータ構造例を示す説明図である。
【図8】対象データ・アクセス権対応テーブルのデータ構造例を示す説明図である。
【図9】操作・対象データ対応テーブルのデータ構造例を示す説明図である。
【図10】対象データ・アクセス権対応テーブルのデータ構造例を示す説明図である。
【図11】対象データ・アクセス権対応テーブル1100のデータ構造例を示す説明図である。
【図12】本実施の形態による文書一覧の提示例を示す説明図である。
【図13】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【0016】
以下、図面に基づき本発明を実現するにあたっての好適な一実施の形態の例を説明する。
図1は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア(コンピュータ・プログラム)、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム(コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム)、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、1モジュールを1プログラムで構成してもよいし、複数モジュールを1プログラムで構成してもよく、逆に1モジュールを複数プログラムで構成してもよい。また、複数モジュールは1コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって1モジュールが複数コンピュータで実行されてもよい。なお、1つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続(データの授受、指示、データ間の参照関係等)の場合にも用いる。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク(一対一対応の通信接続を含む)等の通信手段で接続されて構成されるほか、1つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」(社会システム)にすぎないものは含まない。
また、各モジュールによる処理ごとに又はモジュール内で複数の処理を行う場合はその処理ごとに、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、RAM(Random Access Memory)、外部記憶媒体、通信回線を介した記憶装置、CPU(Central Processing Unit)内のレジスタ等を含んでいてもよい。
【0017】
本実施の形態である情報処理装置は、情報に対して、利用者が可能な操作を管理するものであって、図1の例に示すように、システムA:112、システムB:114、操作受付モジュール120、操作・対象データ・アクセス権管理モジュール130、操作・対象データ定義記憶モジュール140、対象データ・アクセス権記憶モジュール150、評価モジュール160、編集処理モジュール170を有している。
【0018】
システムA:112、システムB:114は、操作受付モジュール120、操作・対象データ・アクセス権管理モジュール130と接続されている。システムA:112、システムB:114は、利用者の操作に応じて、複数の情報により構成される情報群の編集の指示を行う。ここで、情報群とは、例えば、電子文書等が該当する。なお、電子文書とは、テキストデータ、場合によっては画像、動画、音声等の電子データ、又はこれらの組み合わせであり、記憶、編集及び検索等の対象となるものをいい、これらに類似するものを含む。また、情報群を構成している情報としては、例えば、情報群が電子文書の場合、その電子文書の内容を示すコンテンツ、その電子文書の属性を示す属性情報がある。さらに、コンテンツ、属性情報は、本実施の形態によって管理される対象としての情報として複数に分かれていてもよい。なお、情報群に含まれる情報は、一般的には複数であるが、本実施の形態では1つであってもよい。
また、情報群に対しては、複数人の利用者によって操作が可能である。つまり、1つの情報群に対して、複数のシステムやアプリケーションから利用され得る。ただし、可能な操作としては、その情報群内の異なる情報に対して、それぞれの利用者が操作する場合であって、その情報群内の同じ情報に対しては、複数人の利用者による操作は禁止されるように処理する。
【0019】
また、システムA:112、システムB:114は、複数の同じシステムであってもよいし、異なるシステムであってもよい。また、システムA:112、システムB:114は、搭載しているアプリケーションによって情報群を編集する場合は、各々のシステムに同じアプリケーションを搭載していてもよいし、異なるアプリケーションを搭載していてもよい。また、異なるシステム又はアプリケーションである場合は、同じ情報群に対してであっても異なる編集ができるようになっているのが一般的である。
【0020】
なお、図1に示す例では、システムA:112、システムB:114の2つであったが、より多くのシステムが接続されていてもよい。
システムA:112、システムB:114は、操作対象となる情報群と、その情報群に対する操作を示す操作情報と、その操作を行う利用者の利用者情報とを操作受付モジュール120に渡す。
また、システムA:112、システムB:114は、それぞれの第1の対応付情報を操作・対象データ・アクセス権管理モジュール130に渡す。第1の対応付情報の詳細については、操作・対象データ定義記憶モジュール140を用いて後述する。
【0021】
操作受付モジュール120は、システムA:112、システムB:114、操作・対象データ・アクセス権管理モジュール130、評価モジュール160と接続されている。システムA:112又はシステムB:114から、操作の対象となる情報群(操作対象情報)と、その情報群に対する操作を示す操作情報と、その操作を行う利用者の利用者情報とを受け付ける。具体的には、例えば、情報群として、情報群を本実施の形態内で一意に識別できる情報であればよく、電子文書の名称、URL(Uniform Resource Locator)等が該当し、操作情報として、操作を本実施の形態内で一意に識別できる情報であればよく、操作名、操作ID(IDentification)等が該当し、利用者情報として、利用者を本実施の形態内で一意に識別できる情報であればよく、利用者名、利用者ID等が該当する。
【0022】
操作・対象データ・アクセス権管理モジュール130は、システムA:112、システムB:114、操作受付モジュール120、操作・対象データ定義記憶モジュール140、対象データ・アクセス権記憶モジュール150、評価モジュール160と接続されている。操作受付モジュール120によって受け付けられた操作情報に示される操作によって変更され得る情報(変更対象情報)を操作・対象データ定義記憶モジュール140から抽出する。
また、操作・対象データ・アクセス権管理モジュール130は、対象データ・アクセス権記憶モジュール150内の第2の対応付情報のうち、変更対象情報に対応している第2の対応付情報の利用者情報を操作受付モジュール120によって受け付けられた利用者情報に更新する。つまり、操作・対象データ・アクセス権管理モジュール130は、抽出した情報に対応させて、対象データ・アクセス権記憶モジュール150の利用者情報に操作受付モジュール120によって受け付けられた利用者情報を記憶させるように制御する。
また、操作・対象データ・アクセス権管理モジュール130は、利用者の利用者情報と操作対象情報とに対応する操作情報を第2の対応付情報から抽出し、その利用者がその操作対象情報に対して可能な操作を示す情報をその利用者に提示する。つまり、操作・対象データ・アクセス権管理モジュール130は、利用者の利用者情報に対応する操作情報を対象データ・アクセス権記憶モジュール150内の第2の対応付情報から抽出し、その利用者が情報群を構成する情報に対して可能な操作を、システムA:112、システムB:114の利用者に提示する。
また、操作・対象データ・アクセス権管理モジュール130は、操作受付モジュール120によって受け付けられた操作情報に示された操作が終了した場合に、第2の対応付情報のうちで操作受付モジュール120によって受け付けられた利用者情報を元の利用者情報に戻す。ここでの操作情報と利用者情報は対応している。つまり、両者の関係は、利用者情報に示された利用者が行った操作の操作情報である。また、元の利用者情報に戻すとは、前述のように、変更対象情報に対応している第2の対応付情報の利用者情報を操作受付モジュール120によって受け付けられた利用者情報に更新したが、これを更新前の状態にすることをいう。
また、操作・対象データ・アクセス権管理モジュール130は、システムA:112、システムB:114からそのシステム又はアプリケーションによる操作とその操作によって変更され得る対象となる情報との対応を受け付け、操作・対象データ定義記憶モジュール140に記憶させる。
【0023】
操作・対象データ定義記憶モジュール140は、操作・対象データ・アクセス権管理モジュール130と接続されている。記憶装置に記憶されており、操作を示す操作情報とその操作によって変更され得る対象となる情報(変更対象情報)とを対応付けた第1の対応付情報を記憶する。例えば、図4に示した操作・対象データ対応テーブル400が該当する。操作・対象データ対応テーブル400は、操作名欄410、対象データ欄420を有している。操作名欄410は、操作情報を記憶する。例えば、checkout(チェックアウト)等がある。対象データ欄420は、その操作情報が示す操作によって変更され得る電子文書を構成している情報を記憶する。例えば、電子文書の内容であることを示すcontent、属性の一部であり、電子文書が最後に更新された日時を示すlast−modified−on、その最後に更新を指示した者を示すlast−modified−by等がある。また、操作名欄410が記憶している操作が複数の情報を変更し得る場合は、対象データ欄420は、その複数の情報を記憶する。なお、列方向の項目欄430、値欄440は説明用に付加したものであり、操作名と対象データが対応していればよい。
【0024】
対象データ・アクセス権記憶モジュール150は、操作・対象データ・アクセス権管理モジュール130と接続されている。情報とその情報に対して実行可能な操作を示す操作情報とその情報に対してその操作情報に示された操作を実行可能な利用者を示す利用者情報とを対応付けている第2の対応付情報を記憶装置に記憶している。つまり、情報群を構成している情報と利用者情報とその情報に対してその利用者情報の利用者が可能な操作を示す操作情報とを対応付けた第2の対応付情報を記憶する。例えば、図5に示した対象データ・アクセス権対応テーブル500が該当する。対象データ・アクセス権対応テーブル500は、対象データ欄510、対象ユーザー欄520、アクセス権欄530を有している。対象データ欄510は、情報群を構成している情報を記憶する。対象ユーザー欄520は、利用者情報を記憶する。アクセス権欄530は、その情報に対してその利用者情報の利用者が可能な操作を示す操作情報を記憶する。例えば、編集できることを示すedit、閲覧できることを示すview、削除できることを示すdelete等がある。対象データ・アクセス権対応テーブル500は、アクセス権管理を行うために必要となる情報を記憶する。なお、対象ユーザー欄520が記憶する「operator」とは、特定された利用者ではない利用者情報であること(アクセス権を設定し得ること、なお「operator」が一つの場合は未だアクセス権を有している者がいないことを示しており、対象ユーザー欄520に「operator」が複数ある場合は、対象となっている情報に対して、複数人の利用者が操作可能であることを示している。
また、操作・対象データ・アクセス権管理モジュール130によって、対象データ・アクセス権記憶モジュール150の利用者情報に操作受付モジュール120によって受け付けられた利用者情報を記憶させるように制御した場合は、例えば、図5に示した対象データ・アクセス権対応テーブル500は図8に示した対象データ・アクセス権対応テーブル800のようになる。これは、「operator」に具体的な「ユーザーA」を記憶された例である。つまり、「ユーザーA」は「content」に対して「edit」、「view」、「delete」の操作ができることを示している。したがって、それ以外のユーザーは「content」に対してこれらの操作ができないこととなる。
【0025】
評価モジュール160は、操作受付モジュール120、操作・対象データ・アクセス権管理モジュール130、編集処理モジュール170と接続されている。評価モジュール160は、操作・対象データ・アクセス権管理モジュール130による更新によって、操作対象情報に示された第2の対応付情報のうちで操作受付モジュール120によって受け付けられた利用者情報がある場合には、操作受付モジュール120によって受け付けられた利用者情報に示される利用者に、第2の対応付情報によって対応付けられた情報に対して、第2の対応付情報によって対応付けられた操作ができるように制御し、その操作対象情報に示された第2の対応付情報のうちで操作受付モジュール120によって受け付けられた利用者情報がない場合には、操作受付モジュール120によって受け付けられた利用者情報に示される利用者には、その操作対象情報に示された第2の対応付情報によって対応付けられた操作ができないように制御する。
評価モジュール160は、情報群に含まれる情報に対して、操作受付モジュール120によって受け付けられた利用者情報とは異なる利用者情報が対象データ・アクセス権記憶モジュール150内の第2の対応付情報に記憶されている場合は、操作受付モジュール120によって受け付けられた利用者情報の利用者には、その第2の対応付情報によって対応付けられた操作ができないように、編集処理モジュール170を制御する。
また、評価モジュール160は、操作・対象データ・アクセス権管理モジュール130によって、対象データ・アクセス権記憶モジュール150内の第2の対応付情報に記憶された利用者情報の利用者には、その第2の対応付情報によって対応付けられた情報に対して、その第2の対応付情報によって対応付けられた操作ができるように制御する。
編集処理モジュール170は、評価モジュール160と接続されている。評価モジュール160の制御にしたがって、情報群の処理を行う。なお、編集処理モジュール170は、システムA:112、システムB:114に搭載されているアプリケーションの一部であってもよいし、他のシステムに搭載されていてもよい。
【0026】
図2は、本実施の形態を実現するためのシステム構成の例を示す説明図である。
システムA:112、システムB:114、情報処理装置200、文書編集装置210は、通信回線290を介してそれぞれ接続されている。情報処理装置200は、図1に例示した操作受付モジュール120、操作・対象データ・アクセス権管理モジュール130、操作・対象データ定義記憶モジュール140、対象データ・アクセス権記憶モジュール150、評価モジュール160を有し、システムA:112、システムB:114から電子文書に対する編集指示、その指示を行った利用者の利用者情報を受け取り、その編集ができるか否かを判断し、文書編集装置210にその結果を渡すことによって、編集を制御する。文書編集装置210は、編集処理モジュール170を有し、情報処理装置200の判断結果を受け取って、電子文書に対する編集を行う。また、その電子文書を記憶していてもよい。
【0027】
図3は、本実施の形態による処理例を示すフローチャートである。
ステップS302では、システムA:112が、システムA:112又はシステムB:114から編集対象である電子文書、操作情報、利用者情報を受け付け、操作・対象データ・アクセス権管理モジュール130が、その操作情報に対応する対象操作定義情報としての操作・対象データ対応テーブル400が操作・対象データ定義記憶モジュール140内にあるか否かを判断し、ある場合はステップS304へ進み、それ以外の場合はステップS318へ進む。ここでは、受け付けた操作情報が、本実施の形態による処理対象であるか否かを判断しているものである。
【0028】
ステップS304では、操作・対象データ・アクセス権管理モジュール130が、操作・対象データ定義記憶モジュール140内の操作・対象データ対応テーブル400に操作情報に対応する対象データに対するアクセス権を、対象データ・アクセス権記憶モジュール150内の対象データ・アクセス権対応テーブル500から抽出する。より具体的には、操作情報に対応する対象データを操作・対象データ対応テーブル400の対象データ欄420から抽出する。そして、その抽出した対象データに対応するアクセス権を対象データ・アクセス権対応テーブル500のアクセス権欄530から抽出する。
ステップS306では、評価モジュール160が、アクセス権限があるか否かを判断し、ある場合はステップS308へ進み、それ以外の場合はステップS316へ進む。ここで、アクセス権限があるか否かの判断は、ステップS304で対象データ・アクセス権対応テーブル500のアクセス権欄530からアクセス権を抽出できたか否かによって判断する。
【0029】
ステップS308では、操作・対象データ・アクセス権管理モジュール130が、アクセス権の更新が可能か否かを判断し、可能な場合はステップS310へ進み、それ以外の場合はステップS314へ進む。ここで、アクセス権の更新が可能か否かの判断は、対象データ・アクセス権対応テーブル500の対象ユーザー欄520に「operator」が記憶されているか否かによって判断する。「operator」が記憶されているということは、現在は誰もその情報に対して編集を行っていないことを意味し、「operator」以外の利用者情報が記憶されているということは、その利用者情報の利用者が、現在はその情報に対して編集を行っていることを意味しているためである。つまり、排他制御を行っている。なお、対象ユーザー欄520には、複数の「operator」が記憶されている場合があり、1つでも「operator」が記憶されていれば、「operator」が記憶されている(つまり、アクセス権の更新が可能である)と判断する。
なお、ステップS308でアクセス権の更新は可能ではないと判断した場合はステップS314へ進むのではなく、ステップS316へ進むようにしてもよい。
【0030】
ステップS310では、操作・対象データ・アクセス権管理モジュール130が、アクセス権情報を更新する。アクセス権情報の更新は、対象データ・アクセス権対応テーブル500の対象ユーザー欄520に「operator」の代わりにその編集の指示を行った利用者の利用者情報を記憶させる。
ステップS312では、評価モジュール160が、アクセス可能の旨を編集処理モジュール170に通知する。これによって、編集処理モジュール170はその操作情報に伴う編集を行う。また、アクセス可能の旨を操作指示を行ったシステムA:112又はシステムB:114に通知してもよい。
【0031】
ステップS314では、操作・対象データ・アクセス権管理モジュール130が、対象データ・アクセス権対応テーブル500の対象ユーザー欄520に「operator」が記憶されるまで待機する。この後、ステップS310へ進む。つまり、アクセス権はあるが、既に他の利用者によって編集されている状態であるので、その編集が終了するまで待機する。なお、待機する旨をシステムA:112又はシステムB:114の利用者に通知し、利用者の操作によって、待機する旨の指示がなされ、その指示を受け付けた場合は、待機するようにしてもよい。もちろんのことながら、編集が終了したときに、操作・対象データ・アクセス権管理モジュール130は、対象データ・アクセス権対応テーブル500の対象ユーザー欄520に、その編集の指示を行った利用者の利用者情報の代わりに「operator」を記憶させる。つまり、対象データ・アクセス権対応テーブル500に記憶されている利用者の利用者情報を「operator」に戻す処理を行う。
【0032】
ステップS316では、評価モジュール160は、アクセス不可の旨を編集処理モジュール170に通知する。これによって、編集処理モジュール170はその操作情報に伴う編集はできない。また、アクセス不可の旨を操作指示を行ったシステムA:112又はシステムB:114に通知してもよい。
ステップS318では、評価モジュール160は、無関与の旨を編集処理モジュール170に通知する。つまり、受け付けた操作情報は、本実施の形態による処理対象ではない旨を編集処理モジュール170に通知する。評価モジュール160は、本実施の形態による処理を伴わないアクセス権管理を行い、編集処理モジュール170はそのアクセス権管理に従って電子文書に対する編集を行う。
【0033】
次に、操作によって変更され得る情報ごとにアクセス権を評価することで、他のシステム又はアプリケーションによる電子文書への操作をブロックする処理(排他制御の処理)について説明する。
ある電子文書XをシステムA:112のアプリケーションAからチェックアウトしている最中に、アプリケーションBから承認作業を実行して、承認作業がブロックされる状況を例として説明する。
まず、システムA:112のアプリケーションAから、図4に例示する操作・対象データ対応テーブル400のような操作と対象データの関連を操作・対象データ・アクセス権管理モジュール130が受け付け、操作・対象データ定義記憶モジュール140に記憶させる。
そして、操作・対象データ対応テーブル400内の対象データに対して、図5に例示する対象データ・アクセス権対応テーブル500のようなアクセス権限が設定されている。対象データ・アクセス権対応テーブル500は、予め定められていてもよい。
【0034】
一方、システムB:114のアプリケーションBから、図6に例示する操作・対象データ対応テーブル600のような操作と対象データの関連を操作・対象データ・アクセス権管理モジュール130が受け付け、操作・対象データ定義記憶モジュール140に記憶させる。操作・対象データ対応テーブル600は、操作「approve(承認)」によって変更され得る対象となる対象データとして、電子文書の属性の一部であり、その電子文書に対して最後に更新を指示した者を示すlast−modified−by、その電子文書が最後に更新された日時を示すlast−modified−onがあることを示している。
そして、操作・対象データ対応テーブル600内の対象データに対して、図7に例示する対象データ・アクセス権対応テーブル700のようなアクセス権限が設定されている。対象データ・アクセス権対応テーブル700は、予め定められていてもよい。対象データ・アクセス権対応テーブル700は、last−modified−by、last−modified−onともに、「operator」にedit、viewのアクセス権があることを示している。
【0035】
このような状況である場合に、システムA:112のアプリケーションAでユーザーAにより、電子文書Xに対して、操作「checkout」が指示されると、電子文書Xについて各対象データのアクセス権が図8に例示する対象データ・アクセス権対応テーブル800のように変更される。つまり、操作・対象データ・アクセス権管理モジュール130は、図5に例示した対象データ・アクセス権対応テーブル500の状態にあるので、「ユーザーA」にアクセス権限があり(図3に例示のフローチャートでは、ステップS306で「あり」)、アクセス権の更新も可能である(図3に例示のフローチャートでは、ステップS308で「可能」)と判断する。したがって、対象ユーザー欄520内の「operator」を「ユーザーA」に変更して、対象データ・アクセス権対応テーブル500を対象データ・アクセス権対応テーブル800に変更する。
【0036】
この後に、システムB:114のアプリケーションBでユーザーBにより、同じ電子文書Xに対して、操作「approve」が指示されると、操作「approve」に対応する対象データであるlast−modified−byとlast−modified−onのeditとviewがユーザーAのみになっているため(図8に例示の対象データ・アクセス権対応テーブル800を参照)、操作・対象データ・アクセス権管理モジュール130は、アクセス権の更新は可能ではないと判断し(図3に例示のフローチャートでは、ステップS308で「不可能」)、ユーザーAによる操作が終了するまで待機する(図3に例示のフローチャートでは、ステップS314)。また、図3に例示のフローチャートで、前述のようにステップS308で「不可能」の場合に、ステップS316へ進むようにしてもよいが、そのようにした場合、評価モジュール160によってシステムB:114のアプリケーションBからは操作「approve」を実行することができないように制御される。
【0037】
次に、操作によって変更され得る情報ごとに評価することで、対象とする電子文書に対して実行可能な操作を提示する処理について説明する。
ある電子文書XをシステムA:112のアプリケーションAから操作「checkout(チェックアウト)」の処理を行っているときに、システムB:114のアプリケーションBから電子文書Xに対して、操作「addComments(コメント付与)」を実行可能とする例を説明する。
まず、システムA:112のアプリケーションAから、前述した図4に例示する操作・対象データ対応テーブル400のような操作と対象データの関連を操作・対象データ・アクセス権管理モジュール130が受け付け、操作・対象データ定義記憶モジュール140に記憶させる。
そして、操作・対象データ対応テーブル400内の対象データに対して、前述した図5に例示する対象データ・アクセス権対応テーブル500のようなアクセス権限が設定されている。対象データ・アクセス権対応テーブル500は、予め定められていてもよい。
さらに、システムB:114のアプリケーションBから、図9に例示する操作・対象データ対応テーブル900のような操作と対象データの関連を操作・対象データ・アクセス権管理モジュール130が受け付け、操作・対象データ定義記憶モジュール140に記憶させる。操作・対象データ対応テーブル900は、操作「addComments」によって変更され得る対象となる対象データとして、電子文書の属性の一部であるコメントattribute(comment)があることを示している。なお、コメントは文書の内容に影響を与えるものではないため、文書の属性であるlast−modified−by、last−modified−onなどの属性には影響を与えない。
また、操作・対象データ対応テーブル900内の対象データに対して、図10に例示する対象データ・アクセス権対応テーブル1000のようなアクセス権限が設定されている。対象データ・アクセス権対応テーブル1000は、attribute(comment)に、「operator」にedit、view、deleteのアクセス権があることを示している。
【0038】
システムA:112のアプリケーションAからユーザーAにより電子文書Xに対して操作「checkout」が指示されると、電子文書Xについて各対象データのアクセス権は、操作・対象データ・アクセス権管理モジュール130によって、図11に例示する対象データ・アクセス権対応テーブル1100のように変更される。つまり、操作「checkout」の対象データは、図4に例示する操作・対象データ対応テーブル400からcontent、last−modified−by、last−modified−onの3つである。したがって、その3つの対象データに対しては、対象データ・アクセス権対応テーブル1100の対象ユーザー欄1120は、operatorの代わりに、操作・対象データ・アクセス権管理モジュール130によってユーザーAが記憶されており、ユーザーAには、対象データに応じて、「edit、view、delete」又は、「edit、view」のアクセス権があることとなる。そして、それ以外の対象データであるattribute(comment)に対応する対象ユーザー欄1120はoperatorのままである。つまり、ユーザーA以外の利用者によっても操作が可能であることを示している。
【0039】
図12は、本実施の形態による文書一覧の提示例を示す説明図である。
文書一覧提示領域1200はシステムB:114の提示装置に提示されるものであって、内容として文書名欄1210、操作欄1220、最終変更日時欄1240、最終変更者欄1250を提示している。文書名欄1210は文書名を提示する。操作欄1220はその電子文書に対して、その利用者(ここではユーザーB)が可能な操作を提示する。最終変更日時欄1240は属性である最終更新日時を提示する。最終変更者欄1250は属性である最終更新者を提示する。
利用者の操作によって操作欄1220内のプルダウンメニュー提示ボタン1230がクリックされると、「承認」操作選択領域1231、「コメント付与」操作選択領域1232、「チェックアウト」操作選択領域1233、「削除」操作選択領域1234をプルダウンメニューとして提示する。操作・対象データ・アクセス権管理モジュール130は、図11に例示した対象データ・アクセス権対応テーブル1100を参照して、ユーザーBが可能な操作としてattribute(comment)であるコメント付与があることを示すように「コメント付与」操作選択領域1232を選択可能に提示する。なお、他の「承認」操作選択領域1231、「チェックアウト」操作選択領域1233、「削除」操作選択領域1234は、選択ができないように(例えば、グレーアウトして)提示する。
【0040】
なお、本実施の形態としてのプログラムが実行されるコンピュータのハードウェア構成は、図13に例示するように、一般的なコンピュータであり、具体的にはパーソナルコンピュータ、サーバーとなり得るコンピュータ等である。つまり、具体例として、処理部(演算部)としてCPU1301を用い、記憶装置としてRAM1302、ROM1303、HD1304を用いている。HD1304として、例えばハードディスクを用いてもよい。操作・対象データ・アクセス権管理モジュール130、評価モジュール160、編集処理モジュール170等のプログラムを実行するCPU1301と、そのプログラムやデータを記憶するRAM1302と、本コンピュータを起動するためのプログラム等が格納されているROM1303と、補助記憶装置であるHD1304と、キーボード、マウス等のデータを入力する入力装置1306と、CRTや液晶ディスプレイ等の出力装置1305と、ネットワークインタフェースカード等の通信ネットワークと接続するための通信回線インタフェース1307、そして、それらをつないでデータのやりとりをするためのバス1308により構成されている。これらのコンピュータが複数台互いにネットワークによって接続されていてもよい。
【0041】
前述の実施の形態のうち、コンピュータ・プログラムによるものについては、本ハードウェア構成のシステムにソフトウェアであるコンピュータ・プログラムを読み込ませ、ソフトウェアとハードウェア資源とが協働して、前述の実施の形態が実現される。
なお、図13に示すハードウェア構成は、1つの構成例を示すものであり、本実施の形態は、図13に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア(例えばASIC等)で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図13に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、特に、パーソナルコンピュータの他、情報家電、複写機、ファックス、スキャナ、プリンタ、複合機(スキャナ、プリンタ、複写機、ファックス等のいずれか2つ以上の機能を有している画像処理装置)などに組み込まれていてもよい。
【0042】
なお、前述の実施の形態において、「提示」としたものは、ディスプレイ等の表示装置への表示の他に、プリンタ等の印刷装置への印刷、スピーカー等の音声出力装置への音声の出力等があり、それらの組み合わせであってもよい。
【0043】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク(DVD)であって、DVDフォーラムで策定された規格である「DVD−R、DVD−RW、DVD−RAM等」、DVD+RWで策定された規格である「DVD+R、DVD+RW等」、コンパクトディスク(CD)であって、読出し専用メモリ(CD−ROM)、CDレコーダブル(CD−R)、CDリライタブル(CD−RW)等、ブルーレイ・ディスク(Blu−ray Disc(登録商標))、光磁気ディスク(MO)、フレキシブルディスク(FD)、磁気テープ、ハードディスク、読出し専用メモリ(ROM)、電気的消去及び書換可能な読出し専用メモリ(EEPROM)、フラッシュ・メモリ、ランダム・アクセス・メモリ(RAM)等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、ワイド・エリア・ネットワーク(WAN)、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
【符号の説明】
【0044】
112…システムA
114…システムB
120…操作受付モジュール
130…操作・対象データ・アクセス権管理モジュール
140…操作・対象データ定義記憶モジュール
150…対象データ・アクセス権記憶モジュール
160…評価モジュール
170…編集処理モジュール
【特許請求の範囲】
【請求項1】
コンピュータに、
操作の対象となる情報である操作対象情報と、該操作対象情報に対する操作を示す操作情報と、該操作を行う利用者の利用者情報とを受け付ける受付機能と、
前記受付機能によって受け付けられた操作情報に示される操作によって変更され得る情報である変更対象情報を、記憶手段に記憶された、操作を示す操作情報と該操作によって変更され得る対象となる情報とを対応付けた第1の対応付情報から抽出する情報抽出機能と、
記憶手段に記憶された、情報と該情報に対して実行可能な操作を示す操作情報と該情報に対して該操作情報に示された操作を実行可能な利用者を示す利用者情報とを対応付けた第2の対応付情報のうち、前記変更対象情報について示された第2の対応付情報の利用者情報を前記受付機能によって受け付けられた利用者情報に更新する更新機能と、
前記更新機能による更新によって、前記操作対象情報に示された第2の対応付情報のうちで前記受付機能によって受け付けられた利用者情報がある場合には、該受付機能によって受け付けられた利用者情報に示される利用者に、該第2の対応付情報によって対応付けられた情報に対して、該第2の対応付情報によって対応付けられた操作ができるように制御し、該操作対象情報に示された第2の対応付情報のうちで該受付機能によって受け付けられた利用者情報がない場合には、該受付機能によって受け付けられた利用者情報に示される利用者には、該操作対象情報に示された第2の対応付情報によって対応付けられた操作ができないように制御する操作制御機能
を実現させるための情報処理プログラム。
【請求項2】
前記更新機能は、前記受付機能によって受け付けられた操作情報に示された操作が終了した場合に、前記第2の対応付情報のうちで該受付機能によって受け付けられた利用者情報を元の利用者情報に戻す
ことを特徴とする請求項1に記載の情報処理プログラム。
【請求項3】
前記コンピュータに、
前記利用者の利用者情報と前記操作対象情報とに対応する操作情報を前記第2の対応付情報から抽出し、該利用者が前記操作対象情報に対して可能な操作を示す情報を該利用者に提示する提示機能
をさらに実現させることを特徴とする請求項1に記載の情報処理プログラム。
【請求項4】
操作の対象となる情報である操作対象情報と、該操作対象情報に対する操作を示す操作情報と、該操作を行う利用者の利用者情報とを受け付ける受付手段と、
前記受付手段によって受け付けられた操作情報に示される操作によって変更され得る情報である変更対象情報を、記憶手段に記憶された、操作を示す操作情報と該操作によって変更され得る対象となる情報とを対応付けた第1の対応付情報から抽出する情報抽出手段と、
記憶手段に記憶された、情報と該情報に対して実行可能な操作を示す操作情報と該情報に対して該操作情報に示された操作を実行可能な利用者を示す利用者情報とを対応付けた第2の対応付情報のうち、前記変更対象情報について示された第2の対応付情報の利用者情報を前記受付手段によって受け付けられた利用者情報に更新する更新手段と、
前記更新手段による更新によって、前記操作対象情報に示された第2の対応付情報のうちで前記受付手段によって受け付けられた利用者情報がある場合には、該受付手段によって受け付けられた利用者情報に示される利用者に、該第2の対応付情報によって対応付けられた情報に対して、該第2の対応付情報によって対応付けられた操作ができるように制御し、該操作対象情報に示された第2の対応付情報のうちで該受付手段によって受け付けられた利用者情報がない場合には、該受付手段によって受け付けられた利用者情報に示される利用者には、該操作対象情報に示された第2の対応付情報によって対応付けられた操作ができないように制御する操作制御手段
を具備することを特徴とする情報処理装置。
【請求項1】
コンピュータに、
操作の対象となる情報である操作対象情報と、該操作対象情報に対する操作を示す操作情報と、該操作を行う利用者の利用者情報とを受け付ける受付機能と、
前記受付機能によって受け付けられた操作情報に示される操作によって変更され得る情報である変更対象情報を、記憶手段に記憶された、操作を示す操作情報と該操作によって変更され得る対象となる情報とを対応付けた第1の対応付情報から抽出する情報抽出機能と、
記憶手段に記憶された、情報と該情報に対して実行可能な操作を示す操作情報と該情報に対して該操作情報に示された操作を実行可能な利用者を示す利用者情報とを対応付けた第2の対応付情報のうち、前記変更対象情報について示された第2の対応付情報の利用者情報を前記受付機能によって受け付けられた利用者情報に更新する更新機能と、
前記更新機能による更新によって、前記操作対象情報に示された第2の対応付情報のうちで前記受付機能によって受け付けられた利用者情報がある場合には、該受付機能によって受け付けられた利用者情報に示される利用者に、該第2の対応付情報によって対応付けられた情報に対して、該第2の対応付情報によって対応付けられた操作ができるように制御し、該操作対象情報に示された第2の対応付情報のうちで該受付機能によって受け付けられた利用者情報がない場合には、該受付機能によって受け付けられた利用者情報に示される利用者には、該操作対象情報に示された第2の対応付情報によって対応付けられた操作ができないように制御する操作制御機能
を実現させるための情報処理プログラム。
【請求項2】
前記更新機能は、前記受付機能によって受け付けられた操作情報に示された操作が終了した場合に、前記第2の対応付情報のうちで該受付機能によって受け付けられた利用者情報を元の利用者情報に戻す
ことを特徴とする請求項1に記載の情報処理プログラム。
【請求項3】
前記コンピュータに、
前記利用者の利用者情報と前記操作対象情報とに対応する操作情報を前記第2の対応付情報から抽出し、該利用者が前記操作対象情報に対して可能な操作を示す情報を該利用者に提示する提示機能
をさらに実現させることを特徴とする請求項1に記載の情報処理プログラム。
【請求項4】
操作の対象となる情報である操作対象情報と、該操作対象情報に対する操作を示す操作情報と、該操作を行う利用者の利用者情報とを受け付ける受付手段と、
前記受付手段によって受け付けられた操作情報に示される操作によって変更され得る情報である変更対象情報を、記憶手段に記憶された、操作を示す操作情報と該操作によって変更され得る対象となる情報とを対応付けた第1の対応付情報から抽出する情報抽出手段と、
記憶手段に記憶された、情報と該情報に対して実行可能な操作を示す操作情報と該情報に対して該操作情報に示された操作を実行可能な利用者を示す利用者情報とを対応付けた第2の対応付情報のうち、前記変更対象情報について示された第2の対応付情報の利用者情報を前記受付手段によって受け付けられた利用者情報に更新する更新手段と、
前記更新手段による更新によって、前記操作対象情報に示された第2の対応付情報のうちで前記受付手段によって受け付けられた利用者情報がある場合には、該受付手段によって受け付けられた利用者情報に示される利用者に、該第2の対応付情報によって対応付けられた情報に対して、該第2の対応付情報によって対応付けられた操作ができるように制御し、該操作対象情報に示された第2の対応付情報のうちで該受付手段によって受け付けられた利用者情報がない場合には、該受付手段によって受け付けられた利用者情報に示される利用者には、該操作対象情報に示された第2の対応付情報によって対応付けられた操作ができないように制御する操作制御手段
を具備することを特徴とする情報処理装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2012−22464(P2012−22464A)
【公開日】平成24年2月2日(2012.2.2)
【国際特許分類】
【出願番号】特願2010−159067(P2010−159067)
【出願日】平成22年7月13日(2010.7.13)
【出願人】(000005496)富士ゼロックス株式会社 (21,908)
【Fターム(参考)】
【公開日】平成24年2月2日(2012.2.2)
【国際特許分類】
【出願日】平成22年7月13日(2010.7.13)
【出願人】(000005496)富士ゼロックス株式会社 (21,908)
【Fターム(参考)】
[ Back to top ]