(57)【要約】  【課題】  アクセス権によるアクセス制御を行う際に、アクセス権が細分化されて設定されている場合であっても、処理性能を悪化させることのない情報管理プログラムおよび装置並びに方法を提供する。  【解決手段】  データ管理手段からアクセス権を取得した場合に、取得したアクセス権の有効期限を算出し、取得したアクセス権を、算出した有効期限とともに、キャッシュ手段にキャッシュする。キャッシュ手段は、アクセス権を有効期限とともに管理する。【選択図】        図５
2007219619.tif 000002
【特許請求の範囲】
【請求項１】
アクセス権に基づいてアクセス制御を実施する情報管理プログラムであって、
キャッシュ手段に、アクセス権の有効なキャッシュが存在するか否かを確認するキャッシュ確認処理と、
前記キャッシュの存在が確認された場合に、前記キャッシュ手段からアクセス権を取得し、前記キャッシュの存在が確認されなかった場合に、アクセス権を管理するデータ管理手段からアクセス権を取得するアクセス権取得処理と、
前記アクセス権取得処理で前記データ管理手段からアクセス権を取得した場合に、該取得したアクセス権の有効期限を算出する有効期限算出処理と、
前記アクセス権取得処理で前記データ管理手段からアクセス権を取得した場合に、該取得したアクセス権を、前記有効期限算出処理で算出した有効期限とともに、前記キャッシュ手段にキャッシュするキャッシュ処理と、
前記アクセス権取得処理で取得したアクセス権に基づいてアクセス制御を行うアクセス制御処理と
をコンピュータに実行させることを特徴とする情報管理プログラム。
【請求項２】
操作画面情報を生成する操作画面情報生成処理をさらに前記コンピュータに実行させ、
前記有効期限算出処理は、前記操作画面情報生成処理に基づいて予め定められた時間に応じて前記有効期限を算出する
ことを特徴とする請求項１記載の情報管理プログラム。
【請求項３】
操作画面情報を生成する操作画面情報生成処理をさらに前記コンピュータに実行させ、
前記キャッシュ確認処理と、前記アクセス権取得処理と、前記有効期限算出処理と、前記キャッシュ処理とを前記操作画面情報生成処理毎に独立して前記コンピュータに実行させる
ことを特徴とする請求項１記載の情報管理プログラム。
【請求項４】
アクセス権に基づいてアクセス制御を実施する情報管理装置において、
キャッシュ管理手段と、
前記キャッシュ管理手段に、アクセス権の有効なキャッシュが存在するか否かを確認するキャッシュ確認手段と、
前記キャッシュの存在が確認された場合に、前記キャッシュ管理手段からアクセス権を取得し、前記キャッシュの存在が確認されなかった場合に、アクセス権を管理するデータ管理手段からアクセス権を取得するアクセス権取得手段と、
前記アクセス権取得手段が前記データ管理手段からアクセス権を取得した場合に、該取得したアクセス権の有効期限を算出する有効期限算出手段と、
前記アクセス権取得手段が前記データ管理手段からアクセス権を取得した場合に、該取得したアクセス権を、前記有効期限算出手段が算出した有効期限とともに、前記キャッシュ管理手段にキャッシュするキャッシュ手段と、
前記アクセス権取得手段が取得したアクセス権に基づいてアクセス制御を行うアクセス制御手段と
を具備することを特徴とする情報管理装置。
【請求項５】
アクセス権に基づいてアクセス制御を実施する情報管理方法において、
キャッシュ確認手段が、キャッシュ管理手段に、アクセス権の有効なキャッシュが存在するか否かを確認し、前記キャッシュの存在が確認された場合に、アクセス権取得手段が前記キャッシュ管理手段からアクセス権を取得し、前記キャッシュの存在が確認されなかった場合に、前記アクセス権取得手段が、アクセス権を管理するデータ管理手段からアクセス権を取得し、前記アクセス権取得手段が前記データ管理手段からアクセス権を取得した場合に、有効期限算出手段が該取得したアクセス権の有効期限を算出し、キャッシュ手段が該取得したアクセス権を該算出した有効期限とともに前記キャッシュ管理手段にキャッシュし、アクセス制御手段が、前記アクセス権取得手段が取得したアクセス権に基づいてアクセス制御を行うことを特徴とする情報管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報管理プログラムおよび装置並びに方法に関し、特に、アクセス権によるアクセス制御を行う情報管理プログラムおよび装置並びに方法に関する。
【背景技術】
【０００２】
一般に、情報管理システムにおいては、文書ファイル、画像ファイル、図面ファイル、音声データファイル等の情報ファイルに属性を付加して管理し、アクセス権によるアクセス制御を行っている。また、アクセス権は、情報に対する操作毎に分離されたり、情報の属性毎に分離されたりしている。
【０００３】
このような情報管理システムにおいては、操作画面等のユーザインタフェイスを介して情報ファイルの属性情報を一覧表示したり、情報ファイルに対する操作ボタンを提示したりするが、この際に、特定の属性や操作に対するアクセス権がないユーザに対しては、当該属性を非表示にしたり、操作ボタンやリンクを非表示にしたりする処理を行う。例えば、図９（ａ）に示したユーザインタフェイスは、全情報ファイルに対して全ての操作が可能なユーザに対するもので、図９（ｂ）に示したユーザインタフェイスは、一部の情報ファイルに対しては閲覧のみが可能なユーザに対するものである。
【０００４】
このため、ユーザインタフェイスで属性情報の一覧表示や操作ボタン等の提示を行う場合、当該処理に際してアクセス権の確認が頻繁に行われることとなる。例えば、ユーザインタフェイスにウェブブラウザを利用する場合、ウェブブラウザに表示する１ページのＨＴＭＬを生成する非常に短い時間で、頻繁にアクセス権の確認を行うこととなる。これにより情報管理システムの処理性能が悪化してしまう可能性があり、特に、アクセス権が細分化されているほど、その影響は大きくなる。
【０００５】
ところで、データ処理の一般的な手法では、一旦データを取得してそれをメモリ上に保持（キャッシュ）しておくことにより、以降の処理を高速化するということが行われている。
【０００６】
また、データ処理以外でも、ＷＷＷやＦＴＰサービスに代表される分散計算機システムでは、クライアントとサーバの間にプロキシ（Proxy）サーバと呼ばれる中継装置を設け、ファイルコンテンツをキャッシュすることでアクセスの高速化を図ることが一般的に行われている。また、ファイルコンテンツをキャッシュする時間に有効期限を設け、期限が過ぎている場合にはキャッシュを無効にするという管理方法が一般的になっている。
【０００７】
例えば、特許文献１には、オリジナルコンテンツの更新頻度が高く、さらにクライアントから不特定多数のサーバへの情報提供要求が出力される場合において、その平均レスポンスタイムを向上させる手法が記載されており、特許文献２には、ネットワークに依存する各種パラメータ設定の変更を簡便に行なうことができ、あるネットワーク接続時に参照したファイルオブジェクトを、他のネットワーク接続時においても簡単に参照可能なゲートウェイ計算機で用いられるファイルオブジェクト中継方法について記載されている。
【特許文献１】特開２００４−２８０８４７号公報
【特許文献２】特開平１１−２１２８８６３４６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
ところで、一般的なデータ処理の手法を利用してアクセス権をキャッシュすることで、情報管理システムの処理性能が悪化することを防止することが考えられるが、アクセス権をキャッシュした場合、アクセス制御上問題が生じることがある。例えば、特定のユーザに特定の属性を表示させないようにアクセス権が更新された場合でも、それ以前のアクセス権がキャッシュされていると、その属性が表示されてしまうこととなる。
【０００９】
また、特許文献１や特許文献２には、キャッシュを利用する手法が記載されているが、これらは、いずれも、ＨＴＭＬ（HyperText Markup Language）文書や、ＨＴＭＬ文書のリンクに設定されている別のＨＴＭＬ文書を生成後にキャッシュするものであり、ＨＴＭＬ文書を生成時に利用される文書のメタデータやアクセス権のキャッシュを扱うものではないため、ユーザインタフェイス用の表示画面の生成に適したものではない。
【００１０】
そこで、本発明は、アクセス権によるアクセス制御を行う際に、アクセス権が細分化されて設定されている場合であっても、処理性能の悪化を抑制する情報管理プログラムおよび装置並びに方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述した目的を達成するため、請求項１の発明は、アクセス権に基づいてアクセス制御を実施する情報管理プログラムであって、キャッシュ手段に、アクセス権の有効なキャッシュが存在するか否かを確認するキャッシュ確認処理と、前記キャッシュの存在が確認された場合に、前記キャッシュ手段からアクセス権を取得し、前記キャッシュの存在が確認されなかった場合に、アクセス権を管理するデータ管理手段からアクセス権を取得するアクセス権取得処理と、前記アクセス権取得処理で前記データ管理手段からアクセス権を取得した場合に、該取得したアクセス権の有効期限を算出する有効期限算出処理と、前記アクセス権取得処理で前記データ管理手段からアクセス権を取得した場合に、該取得したアクセス権を、前記有効期限算出処理で算出した有効期限とともに、前記キャッシュ手段にキャッシュするキャッシュ処理と、前記アクセス権取得処理で取得したアクセス権に基づいてアクセス制御を行うアクセス制御処理とをコンピュータに実行させることを特徴とする。
【００１２】
また、請求項２の発明は、請求項１の発明において、操作画面情報を生成する操作画面情報生成処理をさらに前記コンピュータに実行させ、前記有効期限算出処理は、前記操作画面情報生成処理に基づいて予め定められた時間に応じて前記有効期限を算出することを特徴とする。
【００１３】
また、請求項３の発明は、請求項１の発明において、操作画面情報を生成する操作画面情報生成処理をさらに前記コンピュータに実行させ、前記キャッシュ確認処理と、前記アクセス権取得処理と、前記有効期限算出処理と、前記キャッシュ処理とを前記操作画面情報生成処理毎に独立して前記コンピュータに実行させることを特徴とする。
【００１４】
また、請求項４の発明は、アクセス権に基づいてアクセス制御を実施する情報管理装置において、キャッシュ管理手段と、前記キャッシュ管理手段に、アクセス権の有効なキャッシュが存在するか否かを確認するキャッシュ確認手段と、前記キャッシュの存在が確認された場合に、前記キャッシュ管理手段からアクセス権を取得し、前記キャッシュの存在が確認されなかった場合に、アクセス権を管理するデータ管理手段からアクセス権を取得するアクセス権取得手段と、前記アクセス権取得手段が前記データ管理手段からアクセス権を取得した場合に、該取得したアクセス権の有効期限を算出する有効期限算出手段と、前記アクセス権取得手段が前記データ管理手段からアクセス権を取得した場合に、該取得したアクセス権を、前記有効期限算出手段が算出した有効期限とともに、前記キャッシュ管理手段にキャッシュするキャッシュ手段と、前記アクセス権取得手段が取得したアクセス権に基づいてアクセス制御を行うアクセス制御手段とを具備することを特徴とする。
【００１５】
また、請求項５の発明は、アクセス権に基づいてアクセス制御を実施する情報管理方法において、キャッシュ確認手段が、キャッシュ管理手段に、アクセス権の有効なキャッシュが存在するか否かを確認し、前記キャッシュの存在が確認された場合に、アクセス権取得手段が前記キャッシュ管理手段からアクセス権を取得し、前記キャッシュの存在が確認されなかった場合に、前記アクセス権取得手段が、アクセス権を管理するデータ管理手段からアクセス権を取得し、前記アクセス権取得手段が前記データ管理手段からアクセス権を取得した場合に、有効期限算出手段が該取得したアクセス権の有効期限を算出し、キャッシュ手段が該取得したアクセス権を該算出した有効期限とともに前記キャッシュ管理手段にキャッシュし、アクセス制御手段が、前記アクセス権取得手段が取得したアクセス権に基づいてアクセス制御を行うことを特徴とする。
【発明の効果】
【００１６】
本発明によれば、アクセス権によるアクセス制御に悪影響を与えることなく、処理効率を向上させることが可能となる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明に係る情報管理プログラムおよび装置並びに方法の一実施の形態について、添付図面を参照して詳細に説明する。
【実施例１】
【００１８】
図１は、本発明を適用した情報管理システムの構成例を示した図である。同図に示す情報管理システムは、情報管理装置１と複数のクライアント２（２−１〜２−ｎ）、データ管理装置３をネットワーク４を介して接続して構成される。なお、データ管理装置３は、その主たる機能を情報管理装置１に含ませた場合には不要となる。
【００１９】
情報管理装置１は、クライアント２に対して情報ファイルに対する処理を指示するための操作画面（以下、ユーザインタフェイスと称する）を表示する操作画面情報を提供し、これに基づいて表示されたユーザインタフェイスを介して指示された内容にしたがって、管理対象の情報ファイルを処理する。
【００２０】
クライアント２は、ユーザが操作するもので、情報管理装置１から提供されるユーザインタフェイスを介して、情報ファイルに対する処理等を指示する。
【００２１】
データ管理装置３は、情報ファイルの実体や、各情報ファイルの属性、各情報ファイルに対するアクセス権等の情報を記憶管理する。
【００２２】
ここで、情報管理装置１について説明する。図２は、情報管理装置１の構成を示すブロック図であり、図３は、情報管理装置１の機能的な構成を示すブロック図である。
【００２３】
図２に示すように、情報管理装置１は、ＣＰＵ（Central Processing Unit）１０と、ＲＯＭ（Read Only Memory）１１、ＲＡＭ（Random Access Memory）１２、ＨＤＤ（Hard Disk Drive）１３、ＮＩＣ（Network Interface Card）１４を具備して構成される。この情報管理装置１の構成は、一般的なコンピュータと同様のものである。
【００２４】
また、図３に示すように、情報管理装置１は、ユーザインタフェイス処理部１５と、データ処理部１６、データ管理部１７、キャッシュ管理部１８の各機能部を具備して構成される。これら各機能部は、図２に示したＣＰＵ１０をプログラムに従って動作させ、ＣＰＵ１０が図２に示した各部を動作させることで実現されるものである。ただし、情報管理装置１を、図３に示す各機能部を実現する専用のハードウェアの集合として構成することも可能である。
【００２５】
ユーザインタフェイス処理部１５は、ユーザが操作するクライアント２を介してユーザに情報を提供するとともに、ユーザからの処理要求を受け取るもので、具体的には、クライアント２に操作画面を提供する。このユーザインタフェイスは、クライアント２で動作するウェブブラウザ若しくはクライアント２で動作する専用のアプリケーションによってクライアント２で表示されるもので、ＮＩＣ１４を介して表示データを送信し、処理要求を受信する。
【００２６】
データ処理部１６は、ユーザインタフェイス処理部１５がクライアント２から受け付けた処理要求に応じて処理を実行し、その結果をユーザインタフェイス処理部１５に返す。実行する処理としては、情報ファイル一覧を表示するためのデータの生成や、受け付け可能な処理を示すデータの生成であり、これらのデータの生成に際してアクセス権の確認を行う。
【００２７】
データ管理部１７は、ファイルシステムやデータベースにより情報ファイルのメタデータを永続管理する。このデータ管理部１７の構成は、例えば、図４に示すようなもので、管理対象となる各情報ファイルの属性や各情報ファイルに対するアクセス権を管理している。なお、データ管理部１７は、ＨＤＤ１３の記憶領域の一部を利用して構築してもよく、データ管理装置３に構築してもよい。また、データ管理部１７は、情報ファイルの実体を記憶してもよい。
【００２８】
キャッシュ管理部１８は、データ管理部１７が管理しているデータをキャッシュ管理する。具体的には、データがキャッシュされているか否かの確認やキャッシュの更新等の処理を行う。キャッシュ管理部１８がキャッシュするデータは、ＲＡＭ１２に記憶されることとなる。キャッシュ管理部１８の構成は、例えば、図５に示すようなもので、データ管理部１８が管理している各情報ファイルの属性や各情報ファイルに対するアクセス権を管理している。また、キャッシュ管理部１８は、各情報ファイルに対するアクセス権については、有効期限を設定して管理するが、この有効期限は、ユーザインタフェイス処理部１５がユーザインタフェイスを生成する際に、データ処理部１６がアクセス権の確認に要する時間に十分な短時間に設定されるもので、例えば、キャッシュを行ってから１秒後の時刻が設定される。
【００２９】
次に、情報管理装置１の動作をデータ処理部１６の動作に基づいて説明する。図６は、データ処理部１６の動作の流れを示すフローチャートである。
【００３０】
情報管理装置１は、ユーザインタフェイス処理部１５がクライアント２からの処理要求を受け付けると動作を開始し、データ処理部１６は、ユーザインタフェイス処理部１５から情報ファイルのメタデータの取得要求を受け付ける（ステップ１０１）。
【００３１】
情報ファイルのメタデータの取得要求を受け付けると、データ処理部１６は、キャッシュ管理部１８に対して対象情報ファイルのアクセス権をキャッシュし、当該キャッシュが有効期限内のものであるか否かを確認させ、その結果、キャッシュ管理部１８が有効期限内のアクセス権をキャッシュしていれば（ステップ１０２でＹＥＳ）、データ処理部１６は、キャッシュ管理部１８から該当するアクセス権を取得する（ステップ１０３）。
【００３２】
一方、キャッシュ管理部１８が該当するアクセス権をキャッシュしていないか、キャッシュいていたとしても有効期限を経過していた場合には（ステップ１０２でＮＯ）、データ処理部１６は、データ管理部１７から該当するアクセス権を取得する（ステップ１０４）。そして、データ処理部１６は、現在時刻（処理時点の時刻）から、取得したアクセス権をキャッシュする際の有効期限を算出し（ステップ１０５）、算出した有効期限とともに該当するアクセス権をキャッシュ管理部１８にキャッシュ管理させる（ステップ１０６）。
【００３３】
続いて、データ処理部１６は、取得したアクセス権から、取得要求のあったメタデータへのアクセスが許可されているか否かを確認する。確認の結果、アクセスが許可されていた場合には（ステップ１０７でＹＥＳ）、データ処理部１６は、キャッシュ管理部１８が取得対象のメタデータをキャッシュしているか否かを確認し、キャッシュされている場合には（ステップ１０８でＹＥＳ）、キャッシュ管理部１８から取得対象のメタデータを取得し（ステップ１０９）、取得したメタデータを、ユーザインタフェイス処理部１５に、先に受け付けた取得要求に対する応答として、返す（ステップ１１０）。
【００３４】
一方、キャッシュ管理部１８が取得対象のメタデータをキャッシュしていなかった場合には（ステップ１０８でＮＯ）、データ処理部１６は、データ管理部１７から取得対象のメタデータを取得し（ステップ１１１）、取得したメタデータをキャッシュ管理部１８にキャッシュ管理させるとともに（ステップ１１２）、ユーザインタフェイス処理部１５に、先に受け付けた取得要求に対する応答として、返す（ステップ１１０）。
【００３５】
また、データ処理部１６は、取得要求のあったメタデータへのアクセスが許可されていなかった場合には（ステップ１０７でＮＯ）、先に受け付けた取得要求に対する応答として、ユーザインタフェイス処理部１５にエラーメッセージを返す（ステップ１１３）。
【００３６】
この図６に示したデータ処理部１６の動作は、ユーザインタフェイス処理部１５からメタデータの取得要求がある毎に行われ、ユーザインタフェイス処理部１５は、ユーザインタフェイス（画面）を生成する際に、通常、複数回のメタデータの取得要求を発するため、キャッシュ管理部１８によるキャッシュ管理によりデータ処理部１６の処理効率は向上することとなる。
【００３７】
例えば、ユーザインタフェイス処理部１５により、ある情報ファイルの作成日属性（メタデータの１つ）が要求された際に、データ処理部１６が当該情報ファイルのアクセス権をデータ管理部１７から取得したとしても、続いて、ユーザインタフェイス処理部１５により、同じ情報ファイルの作成者属性（メタデータの１つ）が要求された際には、データ処理部１６はキャッシュ管理部１８がキャッシュ管理するアクセス権を取得することが可能となる。
【実施例２】
【００３８】
実施例１では、キャッシュ管理部１８が管理するキャッシュのうち、アクセス権に対して有効期限を設定した場合を説明したが、実施例２では、キャッシュするメタデータに対しても有効期限を設定する場合を説明する。
【００３９】
情報管理装置１がメタデータのキャッシュに対して有効期限を設定する場合には、キャッシュ管理部１８の構成は、図７に示すようになる。メタデータのキャッシュに対して設定する有効期限は、データ処理部１６により、図６に示したステップ１１２の直前に算出することとなる。ただし、情報管理装置１が管理するメタデータは、その種類により、更新頻度や最新性の重要度が異なる。そのため、メタデータの種類ごとにキャッシュの有効期限を設定できるようにする。 
例えば、メタデータのうち、作成日属性や作成者属性は値が更新されることがないため、キャッシュ有効期限は無制限でよいが、最終アクセス日時属性や最終アクセスユーザー属性は更新頻度が高いので、キャッシュ有効期限は短いほうがよいこととなる。 
なお、メタデータ毎の有効期限を、メタデータの更新頻度を加味して動的に決定してもよい。この場合には、メタデータ毎に更新頻度カウンタを設けて、更新頻度が高いものは短く、低いものは長くなるように有効期限を設定する。 
【実施例３】
【００４０】
実施例３では、キャッシュをリクエスト毎に独立して管理する場合を説明する。
【００４１】
実施例３では、ユーザインタフェイス処理部１５からデータ処理部１６に要求を送信する際に、クライアントＩＤを一緒に渡すようにし、各キャッシュエントリがクライアントＩＤに関連付けられるようにキャッシュ管理部１８を構成する。この場合のキャッシュ管理部１８の構成は、図８に示すようになる。
【００４２】
この構成では、ユーザインタフェイス処理部１５が、クライアント２からのリクエスト毎にクライアントＩＤを生成するようにして、キャッシュがリクエスト毎に独立して管理されるようにし、別のリクエストに対応する処理で利用されないようにしている。
【００４３】
この場合には、キャッシュの利用期間をユーザインタフェイス処理部１５が１ユーザからの１リクエストを処理する期間以内に制限できるため、アクセス制御の機密性がより向上することとなる。
【００４４】
なお、図８に示した例では、アクセス権のキャッシュにのみクライアントＩＤを付与して管理しているが、同様に、メタデータのキャッシュもクライアントＩＤ毎に独立して管理することも可能である。
【図面の簡単な説明】
【００４５】
【図１】本発明を適用した情報管理システムの構成例を示した図である。
【図２】情報管理装置１の構成を示すブロック図である。
【図３】情報管理装置１の機能的な構成を示すブロック図である。
【図４】データ管理部１７の構成例を示した図である。
【図５】キャッシュ管理部１８の構成例を示した図である。
【図６】データ処理部１６の動作の流れを示すフローチャートである。
【図７】実施例２におけるキャッシュ管理部１８の構成例を示した図である。
【図８】実施例３におけるキャッシュ管理部１８の構成例を示した図である。
【図９】ユーザインタフェイスの表示例を示した図である。
【符号の説明】
【００４６】
１    情報管理装置
２−１〜２−ｎ    クライアント
３    データ管理装置
４    ネットワーク
１０    ＣＰＵ
１１    ＲＯＭ
１２    ＲＡＭ
１３    ＨＤＤ
１４    ＮＩＣ
１５    ユーザインタフェイス処理部
１６    データ処理部
１７    データ管理部
１８    キャッシュ管理部
【図１】
2007219619.tif 000003
【図２】
2007219619.tif 000004
【図３】
2007219619.tif 000005
【図４】
2007219619.tif 000006
【図５】
2007219619.tif 000007
【図６】
2007219619.tif 000008
【図７】
2007219619.tif 000009
【図８】
2007219619.tif 000010
【図９】
2007219619.tif 000011