JP5783010B2 - インデックス管理プログラム、インデックス管理装置及び検索システム - Google Patents

インデックス管理プログラム、インデックス管理装置及び検索システム Download PDF

Info

Publication number
JP5783010B2
JP5783010B2 JP2011257774A JP2011257774A JP5783010B2 JP 5783010 B2 JP5783010 B2 JP 5783010B2 JP 2011257774 A JP2011257774 A JP 2011257774A JP 2011257774 A JP2011257774 A JP 2011257774A JP 5783010 B2 JP5783010 B2 JP 5783010B2
Authority
JP
Japan
Prior art keywords
group
list
user
data source
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.)
Expired - Fee Related
Application number
JP2011257774A
Other languages
English (en)
Other versions
JP2013114331A (ja
Inventor
諒 漆原
諒 漆原
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2011257774A priority Critical patent/JP5783010B2/ja
Publication of JP2013114331A publication Critical patent/JP2013114331A/ja
Application granted granted Critical
Publication of JP5783010B2 publication Critical patent/JP5783010B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、インデックス管理プログラム、インデックス管理装置及び検索システムに関し、特に、アクセス権を反映した検索結果の取得のためのインデックス情報の管理に関する。
電子化された情報の検索について様々な技術が提案されているが、その一態様として、アクセス権の設定されたデータソースを検索して検索結果を提示する際、検索者であるユーザのアクセス権限を考慮してデータソースを検索し、検索者であるユーザがアクセス権を有しないデータについては検索結果に含めず、ユーザがアクセス権を有するデータのみを検索結果に表示することが求められる。
アクセス権が設定されたデータソースを検索する技術として、データソースのデータベース化の際にアクセス権の情報をインデックスファイルの項目に加えることにより、アクセス権を反映した検索結果の取得を可能とする方法が提案されている(例えば、特許文献1参照)。
特許文献1に開示された技術においてアクセス権のインデックス化処理の対象となっているのはファイルサーバに格納された情報のみである。しかしながら、電子化された情報の検索システムにおけるデータソースはファイルサーバに格納された情報に限らず、様々な情報形式があり、夫々アクセス権処理の方法が異なる。
例えば、一般的なwebページとして提供されるデータソースの場合、ディレクトリ単位、ファイル単位でアクセス許可/拒否を指定可能であり、また許可と拒否の優先順位も変更可能である。また、CIFS(Common Internet File System)プロトコルに従うサーバでは、データソースである情報の格納されたフォルダ階層に従い、情報に近いフォルダほど優先度が高く、アクセス許可/拒否が設定される。
さらに、グループウェアによっては、その文書が属する文書グループと、その文書そのものの2階層でのみアクセス権の記述が可能であり、その処理も、当然、2つの階層において記述された情報を用いている。
アクセス権がインデックス化されていないデータソースに対する検索結果をアクセス権に応じて表示させる方法として、検索結果を得る度に、抽出された個々のデータについてアクセス権の問い合わせを行い、アクセスが許可されているデータのみに絞り込んだうえで検索結果として表示する方法が考えられる。しかしながら、検索結果として抽出された夫々のデータについてアクセスの可否を問い合わせる必要があるため、検索結果を表示するまでに要する処理量が増大し、検索結果の表示までに要する時間が長くなる。
特許文献1に開示された技術を様々なデータソース、様々なアクセス権管理態様に対応させるように拡張することも可能である。しかしながら、その場合、データソースが増えることによって新規なアクセス権管理態様が追加される度に、インデックスを生成するクローラのアクセス権についての項目の機能を拡張する必要があり、運用コストが増大する。
検索結果を高速に表示し、かつ、問い合わせの種類を増やさない方法としては、あらかじめ、アクセス権情報を計算によって単純化し、アクセス可能なユーザの一覧に変換しておく方法が考えられる。この場合、検索部は、検索を行っているユーザが、その文書に対するアクセス権を持っているか否かのみを判断すればよいため、問い合わせの種類は増えない。
これに対して、文書のもともとのアクセス権情報が、グループを用いて記述されているような場合、文書側において何ら情報の変更が行われず、グループを管理する側のモジュールにおいてグループに含まれるメンバーの変更が行われる場合がある。このような場合、文書とユーザ名とは直接関連付けられていないため、ユーザ名のリストのみでは、単純化されたアクセス権情報を変更すべきか否かが判断できないため、グループメンバーの更新があるようなケースでは、データソース内の全文書について、アクセス権情報を再取得し、再計算する必要がある。その結果、不要なクロールが発生し、システム全体としてのクロール速度の低下につながる。
このような課題に対しては、夫々の文書について、アクセス権を再計算するための情報を関連付けておくことにより解決する方法が考えられる。即ち、文書に対するユーザやグループについてのアクセス権の設定を数式などで記述した情報を文書に関連付けておき、グループの追加、削除、変更等が発生した場合には、アクセス権を再計算するための情報に基づいてアクセス権を再計算する方法である。
しかしながら、様々なデータソースを一括して検索するようなシステムにおいては、データソース毎にアクセス権が記述された形式が異なるため、上述したようなアクセス権を再計算するための情報の記述が困難である。また、検索対象となるデータソースの種類が増えた場合、それまで使用されていた記述態様を用いることが出来ない場合は、上述したようなアクセス権を再計算するための情報を作り直す必要がある。
本特許は、上記した状況に鑑み、異なったアクセス権処理を行う複数種類のデータソースを対象とした検索システムにおいて、検索結果を表示するのに要する時間の増大や煩雑なアクセス権の運用管理を必要とすることなく、アクセス権に応じた検索結果を表示させることを目的とする。
上記課題を解決するために、本発明の一態様は、ユーザが複数組み合わせられてグループとして管理される検索システムにおいて検索による抽出対象であるデータソースに基づいて検索対象となるインデックス情報を管理するインデックス管理プログラムであって、前記インデックス情報は、それぞれの前記データソースについて、そのデータソースに対するアクセスを許可されたユーザの一覧を示すアクセス許可ユーザ一覧の情報及びそのデータソースに対するアクセス可否の判断に関わるグループを識別する関連グループIDを含み、それぞれの前記グループに含まれるユーザの一覧を前記検索システムの利用権限を認証する認証部から取得するステップと、前記グループを識別するグループIDと、それぞれのグループに含まれるユーザを識別するユーザIDとが関連付けられたグループリストに基づき、前記取得されたユーザの一覧と前記グループリストにおいて対応するグループIDに関連付けられたユーザIDとが一致するか否か確認するステップと、前記取得されたユーザの一覧と前記グループリストにおけるグループIDに関連付けられたユーザIDとが不一致である場合に、前記取得されたユーザの一覧によって前記グループリストにおける前記グループIDに関連付けられたユーザIDを更新するステップと、前記不一致であったグループのグループIDが前記関連グループIDとして関連付けられているデータソースを識別するデータソースIDを、前記インデックス情報から抽出するステップと、前記抽出されたデータソースIDによって識別されるデータソースについて、前記更新されたグループリストに基づき、前記インデックス情報における前記アクセス許可ユーザ一覧の情報を更新するステップとを情報処理装置に実行させることを特徴とする。
また、本発明の他の態様は、ユーザが複数組み合わせられてグループとして管理される検索システムにおいて検索による抽出対象であるデータソースに基づいて検索対象となるインデックス情報を管理するインデックス管理装置であって、前記インデックス情報は、それぞれの前記データソースについて、そのデータソースに対するアクセスを許可されたユーザの一覧を示すアクセス許可ユーザ一覧の情報及びそのデータソースに対するアクセス可否の判断に関わるグループを識別する関連グループIDを含み、それぞれの前記グループに含まれるユーザの一覧を前記検索システムの利用権限を認証する認証部から取得し、前記グループを識別するグループIDと、それぞれのグループに含まれるユーザを識別するユーザIDとが関連付けられたグループリストに基づき、前記取得されたユーザの一覧と前記グループリストにおいて対応するグループIDに関連付けられたユーザIDとが一致するか否か確認するグループ変更確認部と、前記取得されたユーザの一覧と前記グループリストにおけるグループIDに関連付けられたユーザIDとが不一致である場合に、前記取得されたユーザの一覧によって前記グループリストにおける前記グループIDに関連付けられたユーザIDを更新するグループリスト更新部と、前記不一致であったグループのグループIDが前記関連グループIDとして関連付けられているデータソースを識別するデータソースIDを、前記インデックス情報から抽出する更新対象ID抽出部と、前記抽出されたデータソースIDによって識別されるデータソースについて、前記更新されたグループリストに基づき、前記インデックス情報における前記アクセス許可ユーザ一覧の情報を更新するアクセス許可ユーザ一覧更新部とを含むことを特徴とする。
また、本発明の更に他の態様は、ユーザが複数組み合わせられてグループとして管理される検索システムであって、検索による抽出対象であるデータソースに基づいて検索対象となるインデックス情報を管理するインデックス管理装置と、前記インデックス情報を記憶しているインデックス情報記憶部と、前記グループを識別するグループIDと、それぞれのグループに含まれるユーザを識別するユーザIDとが関連付けられたグループリストを記憶しているグループリスト記憶部と、前記ユーザIDに基づいて前記検索システムの利用権限を認証する認証部とを含み、前記インデックス情報記憶部は、それぞれの前記データソースについて、そのデータソースに対するアクセスを許可されたユーザの一覧を示すアクセス許可ユーザ一覧の情報及びそのデータソースに対するアクセス可否の判断に関わるグループを識別する関連グループIDを含むインデックス情報を記憶しており、前記インデックス管理部は、それぞれの前記グループに含まれるユーザの一覧を前記認証部から取得し、前記グループリストに基づき、前記取得されたユーザの一覧と前記グループリストにおいて対応するグループIDに関連付けられたユーザIDとが一致するか否か確認し、前記取得されたユーザの一覧と前記グループリストにおけるグループIDに関連付けられたユーザIDとが不一致である場合に、前記取得されたユーザの一覧によって前記グループリストにおける前記グループIDに関連付けられたユーザIDを更新し、前記不一致であったグループのグループIDが前記関連グループIDとして関連付けられているデータソースを識別するデータソースIDを、前記インデックス情報から抽出し、前記抽出されたデータソースIDによって識別されるデータソースについて、前記更新されたグループリストに基づき、前記インデックス情報における前記アクセス許可ユーザ一覧の情報を更新することを特徴とする。
本発明によれば、異なったアクセス権処理を行う複数種類のデータソースを対象とした検索システムにおいて、検索結果を表示するのに要する時間の増大や煩雑なアクセス権の運用管理を必要とすることなく、アクセス権に応じた検索結果を表示させることができる。
本発明の実施形態に係るシステムの全体構成を示す図である。 本発明の実施形態に係るアクセス権の設定態様を示す図である。 本発明の実施形態に係るアクセス権の設定態様を示す図である。 本発明の実施形態に係るLDAPサーバによるユーザ、グループの管理態様を示す図である。 本発明の実施形態に係る検索DBの内容を示す図である。 本発明の実施形態に係るグループリストの内容を示す図である。 本発明の実施形態に係るクロール部の動作を示すフローチャートである。 本発明の実施形態に係る情報処理装置のハードウェア構成を模式的に示すブロック図である。
以下、図面を参照して、本発明の実施形態を詳細に説明する。本実施形態においては、電子化された文書を利用するシステムであって、文書を管理するサーバと、ユーザが文書を閲覧する際のユーザインタフェースとなる情報処理端末とを含むシステムを例として説明する。
図1は、本発明の実施形態に係る検索システムの全体構成を示すブロック図である。図1に示すように、本実施形態に係る検索システムは、検索部101、検索DB102、グループリスト103、タスクスケジューラ104、LDAP(Lightweight Directory Access Protocol)サーバ105、グループウェア106、ファイルサーバ107、クロール部110を含む。また、クロール部110は、文書情報取得部A111、文書情報取得部B112及びユーザ・グループ更新チェック部113を含む。
本実施形態に係る検索システムにおける検索対象のデータソースはグループウェア106及びファイルサーバ107に格納された情報である。グループウェア106及びファイルサーバ107へのアクセス権は、LDAPサーバ105において管理されるユーザ名やグループ名に従って認証される。即ち、LDAPサーバ105が、ユーザの検索システムの利用権限を認証する認証部として機能する。ここで、グループウェア106及びファイルサーバ107のアクセス権の具体例について説明する。なお、以下の説明において、文書やファイルのアクセス権としては、作成や更新、削除、読み取りなどさまざまなものがあるが、本発明では、文書やファイルからは情報を読み出すだけであるため、読み取り権のみを扱うものとする。
図2は、ファイルサーバ107に格納された情報を示す。図2において、“aaa.bbb.ccc.com”は、ファイルサーバのネットワーク上のアドレスを示す。また、ファイルサーバ107には、フォルダ1〜フォルダ4の4つのフォルダが含まれ、フォルダ2にファイル3、フォルダ3にファイル2、フォルダ4にファイル1が格納されている。
CIFS(Common Internet File System)のファイルサーバでは、読み取り権はネットワーク共有上の読み取り制御リストと、フォルダやファイル毎の読み取り制御リストの2種類から決定され、2つのうち厳しい方の制限が適用される。図2には、グループ1を“g1”、ユーザ1を“u1”といった値で示した読み取り制御リストが示されている。本実施形態においては、これらの“g1”、“u1”といった文字列がグループを識別するためのグループID、ユーザを識別するためのユーザIDとして用いられる。そして、“許可”や“拒否”は、それぞれ破線で関連付けられているネットワーク共有、フォルダ及びファイルについての読み取り権の有無を示す。
例えば、ネットワーク共有上の読み取り制御リストとしては、“g1”及び“g2”が“許可”であり、“u10”が“拒否”であることが設定されている。また、フォルダ1の読み取り制御リストとして、“g1”が“許可”であることが設定されている。また、ファイル1の読み取り制御リストとして、“u4”が“許可”であることが設定されている。
フォルダ・ファイルの読み取り制御リストは、複数の上位フォルダの読み取り制御リストを継承し、自身の読み取り制御リストとあわせて決定される。そのため、複数個所の読み取り制御リストを評価する必要がある。たとえばファイル1の場合、g1に属するユーザであっても、g4に属するユーザはアクセスが拒否されるが、u4のユーザは読み取りが許可される。
図3は、グループウェア106に格納された情報を示す。図3に示すように、本実施形態に係るグループウェア106は、掲示板1及び掲示板2を含み、破線で関連付けて示すように、それぞれの掲示について固有の読み取り制御リストが設定されている。また、それぞれの掲示板には、投稿文書1〜投稿文書3のように投稿文書が含まれ、それぞれの投稿文書にも読み取り制御リストが設定されている。なお、図3において、“ALL”で示されるグループは、システムにアクセス可能な全メンバーを示す。
図3に示すように、グループウェア106にはファイルサーバ107の場合と異なり、掲示板と文書以外の階層は無く、また、掲示板に対して読み取り権を持たないユーザやグループは、個別の文書に対する読み取り権限の記述によらず、掲示板内の文書を読むことはできない。すなわち、本実施例中のグループウェアは、ファイルサーバ107の仕組みであるCIFSとは異なるアクセス制御の仕組みに従って動作している。
図4は、LDAPサーバ105によるグループ及びユーザの管理態様を示す図である。図4に示すように、組織としてのbbb.ccc.comには、ou=g1及びou=g2の2つの部署があり、ou=g1にはさらに2つの部署ou=g3及びou=g4が含まれる。uid=u1〜u10はそれぞれユニークなユーザである。
検索部101は、ユーザが本実施形態に係る検索システムを利用する際のユーザインタフェースとして機能する。検索部101は、例えば、ウェブブラウザのアプリケーション・プログラムや、本実施形態に係る検索システムを利用するための専用のアプリケーション・プログラムがインストールされたPC(Personal Computer)のような情報処理端末によって構成される。
検索DB102は、検索対象であるグループウェア106及びファイルサーバ107の情報がインデックス化されて格納されたインデックス情報のデータベースである。検索DB102に格納されている情報について図5を参照して説明する。図5に示すように、本実施形態に係る検索DB102は、“文書ID”、“文書URL”、“種別”、“テキスト”、“検索用アクセス権情報”、“関連グループ名”を含む。
“文書ID”は文字列値であり、検索対象となる個別の投稿文書やファイル(以下、総じて文書とする)をユニークに示す識別子である。即ち、“文書ID”がデータソースIDとして用いられる。“文書URL”は、文字列値であり、不グループウェア106やファイルサーバ107において、文書が格納されている記憶領域をネットワークアドレスとして示す。
“種別”は文書を取得したクローラである文書情報取得部A111、文書情報取得部B113に応じた値であり、ファイルサーバ用であれば“1”、グループウェア用であれば“2”の整数値となる。“テキスト”は文字列値であり、それぞれの文書から抽出したテキストが格納されている。検索DB102内では、この“テキスト”を元にインデックスが作成されている。
“検索用アクセス権情報”には、文書の読み取り権を持つユーザのリストが、文字列の配列として格納されている。このユーザのリストは、図2、図3において説明したようにユーザについて設定された許可/拒否の値に加えて、グループについて設定された許可/拒否の値をグループに含まれるユーザに適用し、アクセス権を有するユーザのリストとして生成された情報である。即ち、本実施形態に係る“検索用アクセス権情報”はデータソースに対するアクセスを許可されたユーザの一覧を示すアクセス許可ユーザ一覧の情報である。
“関連グループ名”は文字列値である。“関連グループ名”には、各文書のアクセス権設定に関係しているグループ名が列挙されている。ここで、「アクセス権設定に関係している」グループ名とは、図2、図3に示す「許可」に限らず、「拒否」等、その文書にアクセス可能なユーザを決定する上で考慮する必要のあるグループ名である。即ち、“関連グループ名”が、関連グループIDとして用いられる。
例えば、図5に示す“file1”は、図2の“ファイル1”に対応するが、“ファイル1”のアクセス権設定に関するグループは、“aaa.bbb.ccc.com”に対する“g1”、“g2”の「許可」、“フォルダ1”に対する“g1”の「許可」、“フォルダ4”に対する“g4”の「拒否」である。そのため、“file1”に対する“関連グループ名”には、“g1”、“g2”及び“g4”が設定される。
グループリスト103は、図6に示すように、夫々のグループに含まれるユーザのリストを示す情報が格納されたデータベースであり、“グループ名”、“ユーザリスト”、“更新日時”、“ハッシュ値”の情報を含む。グループリスト103は、図4において説明したように、LDAPサーバ105において管理されている情報に基づいてユーザ・グループ更新チェック部113が生成する。“グループ名”は文字列値であり、検索システムが対象とするデータソース群で利用されているグループを示す情報である。“グループ名”は、図4に示すLDAPサーバの管理態様における“ou”属性である。
“ユーザリスト”は文字列値の配列であり、そのグループに含まれる複数のユーザを示す情報を格納している。ユーザは、図4に示すLDAPサーバの管理態様における“uid”属性である。“更新日時”は、そのグループのユーザリストが最後に更新された日時を示す。“ハッシュ値”は、ユーザリストから一意に計算されるハッシュ値である。
タスクスケジューラ104は、クロール部110に含まれるそれぞれの構成を、予め定められたタイミングで起動する。クロール部110は、本実施形態に係る検索システムにおいて、データソースであるグループウェア106及びファイルサーバ107の情報をインデックス化して検索DB102を更新すると共に、アクセス権に応じた検索を可能とするために図5に示す“検索用アクセス権情報”を更新する。クロール部110の処理が本実施形態に係る要旨の1つである。
文書情報取得部A111および文書情報取得部B112は、それぞれファイルサーバ107、グループウェア106を対象としてデータソースである文書情報を取得し、図5に示す“文書ID”、“文書URL”、“種別”、“テキスト”、“検索用アクセス権情報”、“関連グループ名”の情報を生成して格納または更新する。以下、文書情報取得部A111および文書情報取得部B112を総じて文書情報取得部とする。
ユーザ・グループ更新チェック部113は、グループリスト103における“ユーザリスト”と、LDAPサーバ105中のユーザ・グループの情報との間に不一致が無いかを確認し、両者に不一致があった場合、“ユーザリスト”を更新する。また、ユーザ・グループ更新チェック部113は、“ユーザリスト”の更新に応じて、更新された“グループ名”に基づいて検索DB102の“関連グループ名”を検索し、更新された“グループ名”を含む文書の“文書ID”を抽出すると、その抽出結果を文書情報取得部に通知することにより、文書情報取得部に対して、“検索用アクセス権情報”の再生成を実行させる。
検索用アクセス権情報計算部AおよびBは、上述したように“検索用アクセス権情報”の再生成のための文書IDの通知を受けると、通知を受けた文書IDについて、ファイルサーバ107またはグループウェア106と、グループリスト103とを参照して“検索用アクセス権情報”を再計算し、検索DB102を更新する。このように“検索用アクセス権情報”が再計算されるまでの一連の処理及びそのための構成が本実施形態に係る要旨である。
このようなシステムにおいて、ユーザは検索部101を操作することによってまずシステムにログインした後に、検索条件等を入力して検索を行う。検索部101は、ユーザのログイン操作に応じて、LDAPサーバ105に対して認証処理を行う。検索処理においては、ユーザの操作に応じて検索条件を受け取り、認証されたユーザ名を条件に用いて検索DB102に問い合わせを行い、結果を取得し、検索結果をユーザに提示するための表示情報を生成して表示装置に表示させる。その結果、表示される検索結果は、当該ユーザがアクセス権を持つ文書だけである。
このような態様によれば、検索部101は、他の検索キーと同様にユーザ情報についても“検索用アクセス権情報”を検索するのみでよいため、文書毎にアクセス権を判断する必要がなく、処理負荷を低減して検索結果が表示されるまでの時間を短縮することができる。
以下、本実施形態に係るシステムの動作について説明する。なお、本来、データソースから削除された文書を検索DB102から削除する処理が必要であるが、本発明の特徴となる動作を説明するために必須ではないため、以下の説明においては、文書の削除処理について説明を省略する。
図7は、本実施形態の要旨に係る動作、即ち、LDAPサーバ105において新たにグループが追加された場合、グループが削除された場合、グループメンバーが変更された場合の動作を示すフローチャートである。図7に示すように、まずは、ユーザ・グループ更新チェック部113が、タスクスケジューラ104によってスケジューリングされたタイミングに従い、LDAPサーバ105からグループ名毎にそのグループに含まれるユーザ名一覧を取得する(S701)。
LDAPサーバ105からユーザ名の一覧を取得すると、ユーザ・グループ更新チェック部113は、取得したユーザ名一覧を用いてハッシュ値を計算する(S702)。S702においてユーザ・グループ更新チェック部113は、図6に示す“ハッシュ値”を生成するために用いられる計算方法と同一の計算方法を用いる。
ハッシュ値を計算すると、ユーザ・グループ更新チェック部113は、S702において生成したハッシュ値と、グループリスト103において図6に示すように格納されている“ハッシュ値”のうち、対応するグループ名のものとを比較する(S703)。即ち、ここではユーザ・グループ更新チェック部113が、グループ変更確認部として機能する。S703の比較の結果、S702において算出されたハッシュ値とグループリスト103に格納されているハッシュ値とが異なる場合(S703/YES)、ユーザ・グループ更新チェック部113は、グループリスト103の項目の更新を行う(S704)。即ち、ここでは、ユーザ・グループ更新チェック部113が、グループリスト更新部として機能する。
S704における更新処理において、ユーザ・グループ更新チェック部113は、現在の日時、新しいハッシュ値、ユーザ名一覧を用いて、“更新日時”、“ハッシュ値”、“ユーザリスト”を更新する。他方、算出されたハッシュ値とグループリスト103に格納されているハッシュ値とが同一であれば(S703/NO)、特に処理は行わずに次の処理に進む。このように、S702〜S704の処理により、LDAPサーバ105におけるグループの変更有無の確認が行われる。
尚、LDAPサーバ105におけるグループの変更については、グループに含まれるメンバーの変更の他、グループの追加や削除もあり得る。しかしながら、グループが追加、削除された場合は、ファイルサーバ107、グループウェア106におけるアクセス権の設定そのものが変更されることとなる。本件は、ファイルサーバ107、グループウェア106におけるアクセス権の設定変更を伴わないにも関わらず、検索DB102における“検索用アクセス権情報”を更新する必要がある場合に対応するものであるため、グループの追加や削除については説明を省略する。
ユーザ・グループ更新チェック部113は、グループリスト103に格納されている全てのグループ名について、S701〜S704の処理を繰り返し(S705/NO)、全てのグループ名についてS701〜S704の処理が完了したら(S705/YES)、S703において“YES”と判断されたグループ名を抽出して一覧を生成する(S706)。S706において生成される一覧を、更新グループ名一覧とする。
S706の処理は、即ち、グループのメンバーであるユーザ名に変更のあったグループ名の一覧を生成する処理である。ユーザ・グループ更新チェック部113は、更新グループ名一覧を生成すると、それに含まれるグループ名に基づいて検索DB102の“関連グループ名”を検索する(S707)。これにより、ユーザ・グループ更新チェック部113は、変更等のあったグループ名が“関連グループ名”として関連付けられている“文書ID”を抽出し、抽出した文書IDを文書情報取得部に通知する(S708)。
S708において抽出されて文書情報取得部に通知される情報は、内容が変更されたグループが、アクセス権の判断に関係する文書、即ち、“検索用アクセス権情報”の更新が必要な文書の情報である。砂割り、ここではユーザ・グループ更新チェック部113が、更新対象ID抽出部として機能する。
S708の処理は、即ち、グループの変更等により“検索用アクセス権情報”に変更の可能性がある文書の識別情報を文書情報取得部に通知する処理である。ユーザ・グループ更新チェック部からの文書IDの通知を受けた文書情報取得部A111及び文書情報取得部B112は、夫々ファイルサーバ107、グループウェア106を参照し、S704において更新されたグループリスト103に基づいて、通知された文書IDに対する“検索用アクセス権情報”を再計算して検索DB102を更新する(S709)。即ち、ここでは文書情報取得部がアクセス許可ユーザ一覧更新部として機能する。このような処理により、本実施形態の要旨に係る動作が完了する。
本実施形態においては、図6に示すように、検索DB102において、夫々の文書にアクセス可能なユーザ名を判断する際に考慮する必要のあるグループ名が“関連グループ名”として関連付けられている。そして、追加、削除、変更等があったグループ名に基づいて“関連グループ名”を検索することにより、“検索用アクセス権情報”を再計算するべき文書を容易に抽出することができる。このようにして“検索用アクセス権情報”を再計算するべき文書を抽出した後は、抽出した文書についてのみ“検索用アクセス権情報”を再計算して更新すれば良く、簡易な処理で目的を達成することができる。
このように、本実施形態に係るクロール部110を含む検索システムにおいては、検索対象となる検索DB102において、データソース毎に設定されたアクセス権を判断する際に考慮する必要のあるグループ名が、“関連グループ名”として、夫々の文書に関連付けられている。この“関連グループ名”はテキスト情報であり、単純にグループ名を示すテキストが列挙されているだけであるため、ファイルサーバ107やグループウェア106夫々におけるアクセス権の設定に係る形式が異なり、アクセス権の再計算用の情報を生成することが困難な場合であっても、容易に実現可能である。
また、単純なテキスト情報であるため、ファイルサーバ107やグループウェア106の他に更にデータソースが追加された場合であっても、そのデータソースにおいて、夫々の文書に対するアクセス権の判断に関係するグループ名を列挙すれば良く、データソースの追加にも容易に対応することが可能である。
そして、グループに変更があった際には、変更のあったグループに関係する文書のみ、文書情報取得部が通常の処理によって“検索用アクセス権情報”のみを更新する。従って、予め“検索用アクセス権情報”を更新する文書を絞り込んだ上で、“検索用アクセス権情報”のみを再クロールするため、グループに変更があった場合の“検索用アクセス権情報”の更新を少ない処理量で実現することができる。
また、S709においては、文書情報収録部が通常のクロール動作、即ち、検索DB102の“文書ID”、“文書URL”、“種別”、“テキスト”、“検索用アクセス権情報”、“関連グループ名”の全ての情報を生成し直すのではなく、“検索用アクセス権情報”のみを生成し直すため、処理量を更に低減することが可能である。
尚、上記実施形態においては、ユーザ・グループ更新チェック部113が、更新グループ名一覧に基づいて検索DB102から文書IDを抽出した後、その文書IDを文書情報取得部に通知して“検索用アクセス権情報”の再生成を実行させる場合を例として説明した。しかしながら、これは一例である。
例えば、ユーザ・グループ更新チェック部113は、更新グループ名一覧に基づいて検索DB102から抽出した文書IDについて、文書情報取得部に“検索用アクセス権情報”の再生成を実行させるためのフラグ情報を格納するようにしても良い。この場合、文書情報取得部は、このようにして格納されたフラグ情報を定期的に確認し、フラグ情報が格納されている文書IDについて、フラグ情報を確認したタイミングで“検索用アクセス権情報”の再生成を実行する。
また、ユーザ・グループ更新チェック部113は、更新グループ名一覧に基づいて検索DB102から抽出した文書IDについて、検索DB102の“検索用アクセス権情報”をNull値とするようにしても良い。この場合、文書情報取得部は、検索DB102の“検索用アクセス権情報”がNull値であるか否かを定期的に確認し、検索DB102の“検索用アクセス権情報”がNull値である文書IDについて、Null値であることを確認したタイミングで“検索用アクセス権情報”の再生成を実行する。
このように、どのような処理の流れやタイミングであっても、変更されたグループのグループIDに基づいて“関連グループ名”を検索して抽出された文書IDについて“検索用アクセス権情報”を再計算することにより、上記と同様に本実施形態に係る目的を達成することが可能である。
尚、上述した検索部101、クロール部110、LDAPサーバ105、タスクスケジューラ104並びに検索DB102、グループリスト103、グループウェア106、ファイルサーバ107は、PC等の情報処理装置によって実現される。図8を参照して、本実施形態に係る検索システム1を構成する情報処理装置のハードウェア構成について説明する。
図8に示すように、本実施形態に係る情報処理装置は、一般的なサーバやPC(Personal Computer)等と同様の構成を含む。即ち、本実施形態に係る情報処理装置は、CPU(Central Processing Unit)10、RAM(Random Access Memory)20、ROM(Read Only Memory)30、HDD(Hard Disk Drive)40及びI/F50がバス80を介して接続されている。また、I/F50にはLCD(Liquid Crystal Display)60及び操作部70が接続されている。
CPU10は演算手段であり、情報処理装置全体の動作を制御する。RAM20は、情報の高速な読み書きが可能な揮発性の記憶媒体であり、CPU10が情報を処理する際の作業領域として用いられる。ROM30は、読み出し専用の不揮発性記憶媒体であり、ファームウェア等のプログラムが格納されている。HDD40は、情報の読み書きが可能な不揮発性の記憶媒体であり、OS(Operating System)や各種の制御プログラム、アプリケーション・プログラム等が格納される。
I/F50は、バス80と各種のハードウェアやネットワーク等を接続し制御する。LCD60は、ユーザが情報処理装置の状態を確認するための視覚的ユーザインタフェースである。操作部70は、キーボードやマウス、タッチパネル等、ユーザが情報処理装置に情報を入力するためのユーザインタフェースである。なお、LDAPサーバ105やクロール部110等、本実施形態に係る検索システム1の各部はサーバとして運用される場合もあり得る。従って、LCD60及び操作部70等のユーザインタフェースは省略可能である。
このようなハードウェア構成において、ROM30やHDD40若しくは図示しない光学ディスク等の記憶媒体に格納されたプログラムがRAM20に読み出され、CPU10がそれらのプログラムに従って演算を行うことにより、ソフトウェア制御部が構成される。このようにして構成されたソフトウェア制御部と、ハードウェアとの組み合わせによって、本実施形態に係る検索システム1の各部の機能を実現する機能ブロックが構成される。特に、クロール部110の機能を実現するためのプログラムが、インデックス管理プログラムである。
尚、図1に示す検索システム1は、単一の装置によって構成される場合に限らず、ネットワークを介して接続された複数の情報処理装置によって実現される場合もある。例えば、検索部101として機能する1つのPC、検索DB102、ユーザリスト103(またはユーザ定義108)、タスクスケジューラ104及びクロール部110を含む1つのサーバ、LDAPサーバ105として機能する1つのサーバ、ファイルサーバ107として機能する1つのサーバ、グループウェア106として機能する1つのサーバによって実現される態様が考えられる。
1 検索システム
10 CPU
20 RAM
30 ROM
40 HDD
50 I/F
60 LCD
70 操作部
80 バス
101 検索部
102 検索DB
103 グループリスト
104 タスクスケジューラ
105 LDAP
106 グループウェア
107 ファイルサーバ
108 ユーザ定義
110 クロール部
111 文書情報取得部A
112 文書情報取得部B
113 ユーザ・グループ更新チェック部
特開2010−108111号公報

Claims (5)

  1. ユーザが複数組み合わせられてグループとして管理される検索システムにおいて検索による抽出対象であるデータソースに基づいて検索対象となるインデックス情報を管理するインデックス管理プログラムであって、
    前記インデックス情報は、それぞれの前記データソースについて、そのデータソースに対するアクセスを許可されたユーザの一覧を示すアクセス許可ユーザ一覧の情報及びそのデータソースに対するアクセス可否の判断に関わるグループを識別する関連グループIDを含み、
    それぞれの前記グループに含まれるユーザの一覧を前記検索システムの利用権限を認証する認証部から取得するステップと、
    前記グループを識別するグループIDと、それぞれのグループに含まれるユーザを識別するユーザIDとが関連付けられたグループリストに基づき、前記取得されたユーザの一覧と前記グループリストにおいて対応するグループIDに関連付けられたユーザIDとが一致するか否か確認するステップと、
    前記取得されたユーザの一覧と前記グループリストにおけるグループIDに関連付けられたユーザIDとが不一致である場合に、前記取得されたユーザの一覧によって前記グループリストにおける前記グループIDに関連付けられたユーザIDを更新するステップと、
    前記不一致であったグループのグループIDが前記関連グループIDとして関連付けられているデータソースを識別するデータソースIDを、前記インデックス情報から抽出するステップと、
    前記抽出されたデータソースIDによって識別されるデータソースについて、前記更新されたグループリストに基づき、前記インデックス情報における前記アクセス許可ユーザ一覧の情報を更新するステップとを情報処理装置に実行させることを特徴とするインデックス管理プログラム。
  2. 前記データソースに対するアクセス可否は、前記ユーザを識別ユーザID及び前記グループを識別するグループIDを用いて設定されており、
    前記インデックス情報において、前記データソースに対するアクセス可否の判断に関わるグループを識別する関連グループIDは、前記データソースに対するアクセス可否の設定において用いられているグループIDであることを特徴とする請求項1に記載のインデックス管理プログラム。
  3. 前記グループリストは、それぞれのグループIDについて、関連付けられているユーザIDの一覧に基づいて生成されるハッシュ値を含み、
    前記認証部から取得されたユーザの一覧に基づいて生成されたハッシュ値と前記グループリストに含まれるハッシュ値とを比較することにより前記取得されたユーザの一覧と前記グループリストにおけるグループIDに関連付けられたユーザIDとが一致するか否か確認することを特徴とする請求項1または2に記載のインデックス管理プログラム。
  4. ユーザが複数組み合わせられてグループとして管理される検索システムにおいて検索による抽出対象であるデータソースに基づいて検索対象となるインデックス情報を管理するインデックス管理装置であって、
    前記インデックス情報は、それぞれの前記データソースについて、そのデータソースに対するアクセスを許可されたユーザの一覧を示すアクセス許可ユーザ一覧の情報及びそのデータソースに対するアクセス可否の判断に関わるグループを識別する関連グループIDを含み、
    それぞれの前記グループに含まれるユーザの一覧を前記検索システムの利用権限を認証する認証部から取得し、前記グループを識別するグループIDと、それぞれのグループに含まれるユーザを識別するユーザIDとが関連付けられたグループリストに基づき、前記取得されたユーザの一覧と前記グループリストにおいて対応するグループIDに関連付けられたユーザIDとが一致するか否か確認するグループ変更確認部と、
    前記取得されたユーザの一覧と前記グループリストにおけるグループIDに関連付けられたユーザIDとが不一致である場合に、前記取得されたユーザの一覧によって前記グループリストにおける前記グループIDに関連付けられたユーザIDを更新するグループリスト更新部と、
    前記不一致であったグループのグループIDが前記関連グループIDとして関連付けられているデータソースを識別するデータソースIDを、前記インデックス情報から抽出する更新対象ID抽出部と、
    前記抽出されたデータソースIDによって識別されるデータソースについて、前記更新されたグループリストに基づき、前記インデックス情報における前記アクセス許可ユーザ一覧の情報を更新するアクセス許可ユーザ一覧更新部とを含むことを特徴とするインデックス管理装置。
  5. ユーザが複数組み合わせられてグループとして管理される検索システムであって、
    検索による抽出対象であるデータソースに基づいて検索対象となるインデックス情報を管理するインデックス管理装置と、
    前記インデックス情報を記憶しているインデックス情報記憶部と、
    前記グループを識別するグループIDと、それぞれのグループに含まれるユーザを識別するユーザIDとが関連付けられたグループリストを記憶しているグループリスト記憶部と、
    前記ユーザIDに基づいて前記検索システムの利用権限を認証する認証部とを含み、
    前記インデックス情報記憶部は、それぞれの前記データソースについて、そのデータソースに対するアクセスを許可されたユーザの一覧を示すアクセス許可ユーザ一覧の情報及びそのデータソースに対するアクセス可否の判断に関わるグループを識別する関連グループIDを含むインデックス情報を記憶しており、
    前記インデックス管理部は、
    それぞれの前記グループに含まれるユーザの一覧を前記認証部から取得し、
    前記グループリストに基づき、前記取得されたユーザの一覧と前記グループリストにおいて対応するグループIDに関連付けられたユーザIDとが一致するか否か確認し、
    前記取得されたユーザの一覧と前記グループリストにおけるグループIDに関連付けられたユーザIDとが不一致である場合に、前記取得されたユーザの一覧によって前記グループリストにおける前記グループIDに関連付けられたユーザIDを更新し、
    前記不一致であったグループのグループIDが前記関連グループIDとして関連付けられているデータソースを識別するデータソースIDを、前記インデックス情報から抽出し、
    前記抽出されたデータソースIDによって識別されるデータソースについて、前記更新されたグループリストに基づき、前記インデックス情報における前記アクセス許可ユーザ一覧の情報を更新することを特徴とする検索システム。
JP2011257774A 2011-11-25 2011-11-25 インデックス管理プログラム、インデックス管理装置及び検索システム Expired - Fee Related JP5783010B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011257774A JP5783010B2 (ja) 2011-11-25 2011-11-25 インデックス管理プログラム、インデックス管理装置及び検索システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011257774A JP5783010B2 (ja) 2011-11-25 2011-11-25 インデックス管理プログラム、インデックス管理装置及び検索システム

Publications (2)

Publication Number Publication Date
JP2013114331A JP2013114331A (ja) 2013-06-10
JP5783010B2 true JP5783010B2 (ja) 2015-09-24

Family

ID=48709855

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011257774A Expired - Fee Related JP5783010B2 (ja) 2011-11-25 2011-11-25 インデックス管理プログラム、インデックス管理装置及び検索システム

Country Status (1)

Country Link
JP (1) JP5783010B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108717426A (zh) * 2018-05-04 2018-10-30 苏州朗动网络科技有限公司 企业数据的更新方法、装置、计算机设备及存储介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7171312B2 (ja) * 2018-08-28 2022-11-15 株式会社Screenホールディングス 検索装置、検索方法及び検索プログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001344245A (ja) * 2000-03-29 2001-12-14 Fujitsu Ltd 情報処理装置
JP2010020525A (ja) * 2008-07-10 2010-01-28 Mitsubishi Electric Corp 検索装置及びコンピュータプログラム及び検索方法
JP5346549B2 (ja) * 2008-10-29 2013-11-20 株式会社日立ソリューションズ ファイル検索システム、及びファイル検索サーバ装置
US9002811B2 (en) * 2008-11-14 2015-04-07 Nec Corporation System, method and program for information processing
JP2010160577A (ja) * 2009-01-06 2010-07-22 Canon Inc 検索装置及びその制御方法、並びにコンピュータプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108717426A (zh) * 2018-05-04 2018-10-30 苏州朗动网络科技有限公司 企业数据的更新方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
JP2013114331A (ja) 2013-06-10

Similar Documents

Publication Publication Date Title
US10095879B1 (en) Restrictive access control list
US11899623B2 (en) Suggesting content items to be accessed by a user
JP4726545B2 (ja) データソースを発見して接続するための方法、システムおよび装置
US8429740B2 (en) Search result presentation
US9565232B2 (en) Importing content items
JP5439337B2 (ja) 情報処理システム、情報処理システムの制御方法、検索制御装置
US20150302111A1 (en) Method and Apparatus for Constructing File System in Key-Value Storage System, and Electronic Device
US8180812B2 (en) Templates for configuring file shares
JP2020513599A (ja) コンテンツ管理システムにおけるタスクの管理
US10963526B2 (en) Techniques for managing writable search results
US20120173511A1 (en) File search system and program
CN106575307A (zh) 具有用于个人搜索的方法的多用户搜索系统
JP2008003846A (ja) 文書利用管理システム及び方法、文書管理サーバ及びそのプログラム
US20080282355A1 (en) Document container data structure and methods thereof
CN106682186A (zh) 文件访问控制列表管理方法和相关装置和系统
US8079065B2 (en) Indexing encrypted files by impersonating users
JP2011191862A (ja) ファイル管理装置、ファイル管理システム、およびファイル管理プログラム
JP2022549983A (ja) コンテキスト付きのコンテンツ・アイテム共有
US10262026B2 (en) Relational file database and graphic interface for managing such a database
JP5783010B2 (ja) インデックス管理プログラム、インデックス管理装置及び検索システム
JP2010079444A (ja) メタデータによるファイル管理方法及びシステム
JP5842426B2 (ja) インデックス管理プログラ及び検索システム
JP5197179B2 (ja) データ管理装置
WO2022249259A1 (ja) 検索方法、検索プログラム、および情報処理装置
JP7001457B2 (ja) ファイル管理装置、ファイル管理システム、ファイル管理方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141020

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20150122

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150616

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: 20150623

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150706

R151 Written notification of patent or utility model registration

Ref document number: 5783010

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees