(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-08-02
(45)【発行日】2022-08-10
(54)【発明の名称】情報処理システム、制御方法、プログラム
(51)【国際特許分類】
G06F 21/62 20130101AFI20220803BHJP
G06F 21/60 20130101ALI20220803BHJP
G06F 16/31 20190101ALI20220803BHJP
G06F 16/383 20190101ALI20220803BHJP
【FI】
G06F21/62 318
G06F21/60 340
G06F16/31
G06F16/383
(21)【出願番号】P 2019234414
(22)【出願日】2019-12-25
【審査請求日】2020-11-18
(73)【特許権者】
【識別番号】390002761
【氏名又は名称】キヤノンマーケティングジャパン株式会社
(73)【特許権者】
【識別番号】592135203
【氏名又は名称】キヤノンITソリューションズ株式会社
(74)【代理人】
【識別番号】100189751
【氏名又は名称】木村 友輔
(72)【発明者】
【氏名】蔵満 琢麻
(72)【発明者】
【氏名】佐々木 儀光
【審査官】岸野 徹
(56)【参考文献】
【文献】特開2010-020525(JP,A)
【文献】再公表特許第2010/055901(JP,A1)
【文献】特開2001-344245(JP,A)
【文献】特開2011-133928(JP,A)
【文献】特開平10-111833(JP,A)
【文献】米国特許出願公開第2008/0168048(US,A1)
【文献】特開2010-117885(JP,A)
【文献】特開2007-041883(JP,A)
【文献】特開2016-167145(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/62
G06F 21/60
G06F 16/31
G06F 16/383
(57)【特許請求の範囲】
【請求項1】
権限情報を持つ複数のデータを管理する情報処理システムであって、
前記複数のデータの権限情報
に対して、権限情報を一意に識別する権限識別キーを付与する付与手段と、
前記データと
当該データの権限情報に付与された権限識別キーとの対応付けを含む索引情報を作成する索引作成手段と
を備えることを特徴とする情報処理システム。
【請求項2】
前記
付与手段は、
前記データ
へのアクセスが許可される
ユーザに係る範囲
が同じである権限情報
に対して、同一の権限識別キーを付与することを特徴とする請求項1項に記載の情報処理システム。
【請求項3】
データを検索する
権限識別キーを決定する決定手段と、
前記決定された
権限識別キーと前記索引情報に基づいて前記複数のデータから所望のデータを検索する検索手段と
を備えることを特徴とする請求項1
または2のいずれか1項に記載の情報処理システム。
【請求項4】
前記決定手段は、データを検索するユーザの権限に基づいて前記
権限識別キーを決定することを特徴とする請求項3に記載の情報処理システム。
【請求項5】
前記
権限識別キーは前記データ
へのアクセス
が許可されるユーザに係る対象
に対応付けられ、前記ユーザが含まれる
対象であってアクセスが許可されるユーザに係る対象として対応付けられた権限識別キーを前記データを検索する
権限f識別キーとして決定することを特徴とする請求項
4に記載の情報処理システム。
【請求項6】
前記
権限識別キーは前記データ
へのアクセス
が許可されるユーザに係る対象
に対応付けられ、前記ユーザが含まれる
対象であってアクセスが許可されないユーザに係る対象として対応付けられた権限識別キーを除いて前記データを検索する
権限識別キーを決定することを特徴とする請求項
4または
5に記載の情報処理システム。
【請求項7】
前記データは階層的に管理されるファイルであることを特徴とする請求項1~
6のいずれか1項に記載の情報処理システム。
【請求項8】
権限情報を持つ複数のデータを管理する情報処理システムの制御方法であって、
前記情報処理システムの付与
手段が、前記複数のデータの権限情報
に対して、権限情報を一意に識別する権限識別キーを付与する付与ステップと、
前記情報処理システムの
索引作成手段が、前記データと
当該データの権限情報に付与された権限識別キーとの対応付けを含む索引情報を作成する索引作成ステップと
を備えることを特徴とする情報処理システムの制御方法。
【請求項9】
権限情報を持つ複数のデータを管理する情報処理システムにおいて実行可能なプログラムであって、
前記情報処理システムを、
前記複数のデータの権限情報
に対して、権限情報を一意に識別する権限識別キーを付与する付与手段と、
前記データと
当該データの権限情報に付与された権限識別キーとの対応付けを含む索引情報を作成する索引作成手段
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
権限に応じたデータ検索を実施する技術に関する。
【背景技術】
【0002】
従来より、文書データごとにユーザやグループの情報によるアクセス権が設定されているデータソースから、検索者の権限に応じた検索結果を返す検索システムが構築されている。
【0003】
前述の検索システムを実現する方法として、アクセス権の情報を検索インデックスの項目に含め、検索時において、検索者のアクセス権を検索条件に含める方法が考えられる。しかし、データソース上に存在するファイルのアクセス権が変更されるたびに、検索インデックスにおける当該ファイルの情報も更新する必要があり、頻繁な更新処理によってデータソースや検索システムの負荷が増大するという問題がある。また、検索者であるユーザが複数のグループに所属している場合など、ユーザ自身が複数の権限を有している場合に、権限の数に応じたOR条件が発生し、検索処理自体のパフォーマンスも低下する問題がある。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2011-133928号公報
【文献】特開2013-114331号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1には、検索者であるユーザのグループに対する帰属関係を示す対応関係情報を作成することで、データソースにおける権限の変更が検索インデックスに反映されるまでの時間を短縮する方法、および、検索時間を短縮する方法について記載されている。また、特許文献2においては、グループに所属するユーザIDの一覧をグループリストとして管理し、グループのメンバーが更新されたときの更新処理を効率的に実施する方法が記載されている。
【0006】
しかし、いずれの手法も、データソース上の文書に参照権限の変更があった場合、データソースとの権限を正しく同期するために、その変更がどのような種類のものであっても、当該文書に対する索引情報の更新が必要になる。
【0007】
ファイルシステムなど、文書が木構造の階層で管理されているようなデータソースにおいては、上位階層の参照権限が下位の階層の文書へ継承される仕組みになっていることがある。このようなデータソースに対しては、上位階層の権限を管理し、下位の文書においては上位階層の権限を参照する形にすることで、索引情報の更新処理を効率化できる可能性がある。
【0008】
本発明は、データの権限情報を用いて索引情報を効率的に作成する仕組みを提供することを目的とする。
【課題を解決するための手段】
【0009】
本発明は、権限情報を持つ複数のデータを管理する情報処理システムであって、前記複数のデータの権限情報に対して、権限情報を一意に識別する権限識別キーを付与する付与手段と、前記データと当該データの権限情報に付与された権限識別キーとの対応付けを含む索引情報を作成する索引作成手段とを備えることを特徴とする。
【発明の効果】
【0010】
本発明によれば、データの権限情報を用いて索引情報を効率的に作成する仕組みを提供することが可能となる。
【図面の簡単な説明】
【0011】
【
図1】本発明の実施形態における、検索システムのシステム構成の一例を示す図である。
【
図2】本発明の実施形態における、検索端末101、文書蓄積サーバ102、検索サーバ103、データベースサーバ104、索引作成サーバ105のハードウェア構成の一例を示すブロック図である。
【
図3】本発明の実施形態における、索引を作成する処理の一例を示すフローチャートである。
【
図4】本発明の実施形態における、検索する処理の一例を示すフローチャートである。
【
図5】本発明の実施形態における、権限コレクションテーブルの一例を示す図である。
【
図6】本発明の実施形態における、データコレクションテーブルの一例を示す図である。
【
図7】本発明の実施形態における、ファイルデータの一例である。
【発明を実施するための形態】
【0012】
以下、図面を参照して、本発明の実施形態を詳細に説明する。
【0013】
図1は、本発明の実施形態における検索システムのシステム構成の一例を示す図である。
【0014】
検索システムは、検索端末101、文書蓄積サーバ102、検索サーバ103、データベースサーバ104、索引作成サーバ105が、LAN106を介して接続される構成となっている。
【0015】
検索端末101は、ユーザの入力を受け付け、検索サーバ103に検索を依頼し、検索サーバ103から受け取った検索結果の表示を行う。
【0016】
文書蓄積サーバ102は、一般的な階層構造のファイルシステムを持ち、検索対象となる文書(ファイル)の蓄積を行う。権限情報は各ファイルが持っていてもよいし、ファイルが所属するフォルダまたはその上位のフォルダの権限を継承してもよいものとする。ファイルデータ例を
図7に示す。
【0017】
検索サーバ103は、検索端末101に入力された検索条件を受け付けてデータベースサーバ104に格納された情報を検索し、検索結果を検索端末101に送付する。
【0018】
データベースサーバ104は、索引情報を保持する。
【0019】
索引作成サーバ105は、索引情報を作成し、データベースサーバ104のデータベースの更新を行う。
【0020】
図2は、本発明の実施形態における検索端末101、文書蓄積サーバ102、検索サーバ103、データベースサーバ104、索引作成サーバ105のハードウェア構成の一例を示すブロック図である。
【0021】
図2に示すように、情報処理装置は、システムバス204を介してCPU(Central Processing Unit)201、ROM(Read Only Memory)202、RAM(Random Access Memory)203、入力コントローラ205、ビデオコントローラ206、メモリコントローラ207、よび通信I/Fコントローラ208が接続される。
【0022】
CPU201は、システムバス204に接続される各デバイスやコントローラを統括的に制御する。
【0023】
ROM202あるいは外部メモリ211は、CPU201が実行する制御プログラムであるBIOS(Basic Input/Output System)やOS(Operating System)や、本情報処理方法を実現するためのコンピュータ読み取り実行可能なプログラムおよび必要な各種データ(データテーブルを含む)を保持している。
【0024】
RAM203は、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して必要なプログラム等をROM202あるいは外部メモリ211からRAM203にロードし、ロードしたプログラムを実行することで各種動作を実現する。
【0025】
入力コントローラ205は、キーボード209や不図示のマウス等のポインティングデバイス等の入力装置からの入力を制御する。入力装置がタッチパネルの場合、ユーザがタッチパネルに表示されたアイコンやカーソルやボタンに合わせて押下(指等でタッチ)することにより、各種の指示を行うことができることとする。
【0026】
また、タッチパネルは、マルチタッチスクリーンなどの、複数の指でタッチされた位置を検出することが可能なタッチパネルであってもよい。
【0027】
ビデオコントローラ206は、ディスプレイ210などの外部出力装置への表示を制御する。ディスプレイは本体と一体になったノート型パソコンのディスプレイも含まれるものとする。なお、外部出力装置はディスプレイに限ったものははく、例えばプロジェクタであってもよい。また、前述のタッチ操作を受け付け可能な装置については、入力装置も提供する。
【0028】
なおビデオコントローラ206は、表示制御を行うためのビデオメモリ(VRAM)を制御することが可能で、ビデオメモリ領域としてRAM203の一部を利用することもできるし、別途専用のビデオメモリを設けることも可能である。
【0029】
メモリコントローラ207は、外部メモリ211へのアクセスを制御する。外部メモリとしては、ブートプログラム、各種アプリケーション、フォントデータ、ユーザファイル、編集ファイル、および各種データ等を記憶する外部記憶装置(ハードディスク)、フレキシブルディスク(FD)、或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等を利用可能である。
【0030】
通信I/Fコントローラ208は、ネットワークを介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いた通信やISDNなどの電話回線、および携帯電話の3G回線を用いた通信が可能である。
【0031】
尚、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ210上での表示を可能としている。また、CPU201は、ディスプレイ210上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【0032】
次に
図3のフローチャートを用いて、本発明の実施形態における索引作成サーバ105が実行する処理について説明する。
【0033】
図3のフローチャートは、索引作成サーバ105のCPU201が所定の制御プログラムを読み出して実行する処理であり、索引を作成する処理を示すフローチャートである。
【0034】
ステップS301では、文書蓄積サーバ102内の対象ファイルがすべてに対して、ステップS302からS309までの処理を繰り返す。
【0035】
ステップS302では、文書蓄積サーバ102内の対象ファイルのうち未処理のファイルの1つについてファイルの属性を取り出す。
【0036】
ステップS303では、ステップ302で取り出したファイルの属性に権限情報があるかどうかを判断する。権限情報があればその情報を取得する(ステップS304)。権限情報を持っていない場合は継承元から権限情報を取得する(ステップS305)。
【0037】
ステップS304では、ファイルから権限情報を取得する。
【0038】
ステップS305では、当該ファイルの権限情報の継承元から権限情報を取得する。
【0039】
ステップS306では、ステップS304またはステップS305で取得した権限情報がデータベースサーバ104の権限コレクションテーブル(
図5)にすでに存在するかを判断する。すでに存在する情報であればステップS307で変更の有無を判断し、変更があれば権限コレクションテーブルの該当レコードを更新する(ステップS308)。ステップS304またはステップS305で取得した権限情報がデータベースサーバ104の権限コレクションテーブル(
図5)に無い情報であれば権限コレクションテーブルにレコードを追加する(S310)。
【0040】
ステップS309では、ファイルの内容から抽出した検索キーワードと権限IDからなるレコードをデータベースサーバ104のデータコレクションテーブル(
図6)に追加する。
【0041】
ステップS310では、文書蓄積サーバ102内の対象ファイルがすべて処理済みかを判断し、処理済みであれば繰り返しを終了する。
【0042】
次に
図4のフローチャートを用いて、本発明の実施形態における検索サーバ103が実行する処理について説明する。
【0043】
図4のフローチャートは、検索サーバ103のCPU201が所定の制御プログラムを読み出して実行する処理であり、検索する処理を示すフローチャートである。
【0044】
ステップS401では、検索者の権限でデータベースサーバ104の権限コレクションテーブル(
図5)を検索してAllowリストを作成する。たとえば
図5のデータ例を対象にして「総務部」グループに所属する「渡辺」というメンバーのAllowリストを作成すると{権限A、権限B}となる。
【0045】
ステップS402では、検索者の権限でデータベースサーバ104の権限コレクションテーブル(
図5)を検索してDenyリストを作成する。たとえば
図5のデータ例を対象にして「総務部」グループに所属する「渡辺」というメンバーのDenyリストを作成すると{権限B}となる。
【0046】
ステップS403では、「Allowリスト内の権限IDのいずれかを含む」かつ「Denyリスト内の権限IDのいずれも含まない」レコードをデータベースサーバ104のデータコレクションテーブル(
図6)から検索。
図5のデータを例にとると、「総務部」グループに所属する「渡辺」というメンバーが検索者の場合、Allowリストが{権限A、権限B}でDenyリストが{権限B}となるので、権限Aを持つファイルをデータコレクションテーブル(
図6)から検索することになる。
【0047】
ステップS404では、検索結果から表示に必要な情報を取り出して検索結果リストを作成。たとえば
図5および
図6のデータ例を対象にして「総務部」グループに所属する「渡辺」というメンバーが検索者の場合、検索リストには
図6のデータコレクションテーブルのファイルYのレコードとファイルZのレコードが入る。
【0048】
ステップS405では、検索結果リストを検索端末101に送る。(検索端末101に検索結果が表示される
図5の権限コレクションテーブルは、権限情報と権限IDを格納するテーブルであり、権限ID501、Allow502、Deny503等の項目からなる。
【0049】
権限ID501には、許可(Allow)と拒否(Deny)の組み合わせを識別するための一意の権限IDが登録される。
【0050】
Allow502には、その権限IDを持つファイルへのアクセスが許可されるグループまたは個人の識別子が登録される。
【0051】
Deny503には、の権限IDを持つファイルへのアクセスが拒否されるグループまたは個人の識別子が登録される。
【0052】
図6のデータコレクションテーブルは、ファイルに関連する情報を格納するテーブルであり、データID601、権限ID602、検索キーワード603等の項目からなる。
【0053】
データID601には、ファイルを一意に識別する情報が登録される。
【0054】
権限ID602には、ファイルのアクセス権限を識別する識別子が登録される。権限ID602と権限コレクションテーブル(
図5)の権限ID501で、データコレクションテーブルと権限コレクションテーブルが関連付けられる。
【0055】
検索キーワード603には、ファイルの内容を特徴づけるキーワード等が登録される。
【0056】
図7は文書蓄積サーバに格納されるファイルデータの例である。権限703の情報は
図5の権限コレクションテーブルのデータの追加または更新に使用される。データ本体704に含まれる文書を特徴づける文字列が
図6のデータコレクションテーブルの検索キーワード603に格納される。
【0057】
以上、いくつかの実施形態について示したが、本発明は、例えば、システム、装置、方法、コンピュータプログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【0058】
また、本発明におけるコンピュータプログラムは、
図3、
図4に示すフローチャートの処理方法をコンピュータが実行可能なコンピュータプログラムであり、本発明の記憶媒体は
図3、
図4の処理方法をコンピュータが実行可能なコンピュータプログラムが記憶されている。なお、本発明におけるコンピュータプログラムは
図3、
図4の各装置の処理方法ごとのコンピュータプログラムであってもよい。
【0059】
以上のように、前述した実施形態の機能を実現するコンピュータプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたコンピュータプログラムを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【0060】
この場合、記録媒体から読み出されたコンピュータプログラム自体が本発明の新規な機能を実現することになり、そのコンピュータプログラムを記憶した記録媒体は本発明を構成することになる。
【0061】
コンピュータプログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、CD-R、DVD-ROM、磁気テープ、不揮発性のメモリカード、ROM、EEPROM、シリコンディスク、ソリッドステートドライブ等を用いることができる。
【0062】
また、コンピュータが読み出したコンピュータプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのコンピュータプログラムの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0063】
さらに、記録媒体から読み出されたコンピュータプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのコンピュータプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0064】
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にコンピュータプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのコンピュータプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【0065】
さらに、本発明を達成するためのコンピュータプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【0066】
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【0067】
101 検索端末
102 文書蓄積サーバ
103 検索サーバ
104 データベースサーバ
105 索引作成サーバ