[第1の実施形態]
図1は、実施形態に係る画像処理形成システムの一例を示す図である。ネットワーク101は、例えば、TCP/IPプロトコルなどをサポートする通信回線網である。ネットワーク101は、有線回線であってもよいし、無線回線であってもよい。複合機102は、画像処理装置の一例である。画像処理装置としては、単体のスキャナ装置や、スキャナ装置とPCとを組み合わせたシステムであってもよい。なお、これらは、単なる画像処理装置の一例に過ぎない。
ポリシーサーバ103は、文書ファイルに対するユーザのアクセスを制御するサーバ装置またはサーバプログラムである。ここで、アクセスとは、文書ファイルへの各種操作(表示、編集、印刷その他の処理)を意味する。クライアントコンピュータ104および105(以下、クライアントコンピュータ104と称す。)は、ユーザが文書ファイルを複合機102から受信して操作するためのコンピュータである。
例えば、複合機102は、読み取り装置が原稿を読み取ることにより生成された画像データを含む文書ファイルを、ネットワークを介してクライアントコンピュータ104に送信する。クライアントコンピュータ104は、文書ファイルに対するユーザのアクセス権限(アクセスポリシーの定義情報など)をポリシーサーバ103に問い合わせて取得する。クライアントコンピュータ104は、取得したアクセス権限に応じて、画像データを表示したり、編集したりまたは印刷したりする。
もちろん、これらの構成は、本発明を理解しやすくするために示した構成例に過ぎない。クライアントコンピュータは3以上存在してもよい。また、複合機102も複数存在してもよい。
図2は、実施形態に係る画像処理装置の概略構成を示すブロック図である。CPU(Central Processing Unit)201は、システムバス216に接続される各ユニットを統括的に制御する中央処理装置である。ROM(Read Only Memory)202は、制御プログラム等を記憶する不揮発性の記憶装置である。ハードディスクドライブ203は、各種の制御プログラムやデータなどを記憶する大容量の記憶装置である。RAM(Random Access Memory)204は、複合機102が動作する上で必要なデータを記憶する揮発性の記憶装置である。
表示部206は、駆動条件、装置状態、あるいは入力情報などの各種情報を表示する表示装置である。操作部207は、操作者による設定や命令等の入力操作を行うための入力装置である。例えば、テンキーやスタートキー等のキーや、タッチパネル等である。タッチパネルは、表示部206の表面付近に搭載されている。
通信制御部208は、無線や有線のネットワークを経由して、イントラネットまたはインターネットに接続して、画像データを含む文書データや制御コマンドの送受信を実行する通信回路である。網制御装置209は、公衆電話回線であるPSTN(Public Switched Telephone Network)に接続する回線接続制御装置である。網制御装置209はモデム装置を内蔵しており、当該モデム装置により、画像データや制御信号を変調または復調することで、ファクシミリの送信または受信を実行する。
読み取り装置211は、原稿からの反射光を光電変換することで原稿画像の画像データを生成するスキャナ装置である。印刷制御部210は、読み取り装置211や記録装置212を制御する。印刷制御部210は、画像データを送信する場合、画装データを通信制御部208に渡す。また、印刷制御部210は、画像データを複写する場合は、画像データを記録装置212に渡す。さらに、印刷制御部210は、画像データを保存する際は、ハードディスクドライブ203に保存する。
記録装置212は、印刷制御部210を介して画像データ、もしくは印字データを受け取り、永久可視像を記録紙上に形成する装置である。画像データ、もしくは印字データは、例えば、読み取り装置211またはクライアントコンピュータ104などの情報発生源から受信したものである。
画像メモリ213は、読み取った画像データまたは受信した画像データ、もしくは印字データを一時的に蓄積する記憶装置である。複合機102の状態によっては、ハードディスク203やRAM204が画像メモリ213として機能してもよい。
画像処理部214は、送信対象の画像データをデータ圧縮して符号化したり、受信した画像データを伸張して復号化したりする。また、画像処理部214は、受信した印字データを画像データに変換したり、保存する画像データを適切なフォーマットまたはユーザから指定されたフォーマット(例えばPDFフォーマット等)に変換したりしてもよい。また、画像処理部214は、読み取り装置211の光学応答特性やセンダのばらつき等に応じた画像補正処理を行ってもよい。さらに、画像処理部214は、操作者が操作部207から入力操作する画像の変倍処理等の画像加工処理を実行してもよい。さらに、画像処理部214は、記録装置212の書き込み特性に画像データを適合させる、いわゆる最適化処理などを実行してもよい。
認証処理部215は、ユーザやワークグループの認証に加えて、印刷ジョブの認証を行ったりする。認証処理部215は、例えば、ユーザIDやグループIDが書き込まれた磁気カードを読み取る読み取り装置としてもよい。あるいは、生体認証を実行する生体認証装置を認証処理部215として採用してもよい。あるいは、ユーザIDとパスワードとを入力させ、入力されたユーザIDとパスワードとが予め登録された正規の情報か否かを判定する認証ソフトウエアであってもよい。
したがって、本複合機102は、読み取り画像データを伝送するファクシミリ通信機能、文書管理サーバコンピュータに画像データを転送する転送機能、読み取り画像データを記録出力する複写機能を含む。さらに、本複合機102は、画像データをファクシミリ受信して印刷する受信印刷機能、クライアントコンピュータ104から印刷データを受信して印刷する印刷機能を含んでいる。このように、複合機102は、複写機としてだけではなく、ファクシミリ装置、プリンタ装置、スキャナ装置としても利用可能になっている。
なお、記録装置212の記録方式に本発明が影響されることはない。例えば、記録装置212としては、電子写真記録方式以外にも、インクジェット方式、サーマルヘッド方式、ドットインパクト方式など、種々の記録方式を採用できる。
図3は、実施形態に係るクライアントコンピュータやポリシーサーバの概略構成を示すブロック図である。CPU301は、システムバス304に接続される各ユニットを統括的に制御する中央処理装置である。ROM302は、制御プログラム等を記憶する不揮発性の記憶装置である。ハードディスクドライブ310は、各種の制御プログラムやデータなどを記憶する大容量の記憶装置である。RAM303は、CPU301の主メモリ、ワークエリア等として機能する揮発性の記憶装置である。
ホストインタフェース(I/F)305は、ローカルプリンタ、ネットワークプリンタ、他のネットワーク機器あるいは他のPCと双方向にデータをやりとりするための通信装置である。ディスクコントローラ(DKC)306は、ハードディスクドライブ(HDD)310およびフレキシブルディスクドライブ(FDD)309とのアクセスを制御する制御装置である。ハードディスクドライブ(HDD)310には、ブートプログラム、種々のアプリケーションソフトウエア、編集ファイル、ユーザファイルなどが記憶されている。
CRTコントローラ(CRTC)307は、CRTディスプレイ(CRT)311への表示を制御する制御装置である。CRTではなく、液晶表示装置などを採用してもよい。コマンド入力コントローラ(KBC)308は、キーボード(KB)312や不図示のポインティングデバイスなどからの入力を制御する制御装置である。
<画像処理装置におけるファイルの送信処理>
図4は、実施形態に係るファイル送信処理を示す例示的なフローチャートである。このファイル送信処理は、複合機102において実行されるものとする。
ステップS401において、CPU201は、操作部207から入力される情報に基づいて基本設定を実行する。例えば、あて先(受信者IDや電子メールアドレス)の設定や、ファイルに対する受信者ごとのアクセスポリシーの設定などがある。アクセスポリシーとしては、表示の可否、編集の可否および印刷の可否、有効期限などがある。
図5は、実施形態に係るユーザインタフェースの一例を示す図である。このユーザインタフェースは、表示部206と、操作部207とによって実現されている。501〜506は、各操作や設定を行うためのボタンである。宛先入力ボタン501が押下げられると、CPU201は、宛先入力画面を表示部206に表示し、操作部207を通じて、宛先の情報を入力する。宛先入力画面には、英数字等を入力するためのキーが表示される。
アドレス帳参照ボタン502が押下げられると、CPU201は、予め登録されているアドレス帳をハードディスクドライブ203から読み出して、表示部206に表示する。続いて、表示されたメールアドレスのうち、操作部207から指定されたものをCPU201は、あて先としてRAM204に保持する。
アドレス帳登録ボタン503が押し下げられると、CPU201は、ユーザ名とメールアドレスなどの入力画面を表示部206に表示する。なお、入力画面には、英数字等を入力するためのキーが表示される。CPU201は、新規のユーザIDを生成し、操作部207を通じて入力されたユーザ名とメールアドレスとを関連付けてアドレス帳に登録する。アドレス帳はハードディスクドライブ203に記憶されるものとする。
図6は、実施形態に係るアドレス帳(ユーザテーブル)の一例を示す図である。アドレス帳は、ユーザテーブルとしてハードディスクドライブ203に記憶されている。また、図から明らかなように、アドレス帳には、ユニークなユーザID、ユーザ名およびメールアドレスが対応付けて記憶される。
アクセスポリシー設定ボタン504が押し下げられると、CPU201は、アクセスポリシーの設定画面を表示部206に表示する。操作者は、この設定画面を通じて、定義情報を作成するために必要となるアクセスポリシーに関する情報を手動で複合機102に設定できる。
当該設定画面には、表示の可否、編集の可否および印刷の可否などを指定するためのラジオボックスが含まれてもよい。また、有効期限を入力するためのテキストボックスまたはカレンダーが含まれてもよい。なお、CPU201は、アクセスポリシーが付与された場合、フラグを1に設定し、フラグをRAM204に記憶する。アクセスポリシーが付与されるとは、所望のファイルに対してユーザまたはグループごとのアクセス権限を設定することである。通常は、ポリシーサーバ103に文書IDとアクセス権限に関する定義情報(定義要素)とが登録されると、アクセスポリシーが文書ファイルに付与されたことになる。しかしながら、本明細書においては、アクセスポリシーを定義するために必要となる情報が操作者により入力、指定または選択されている場合も、アクセスポリシーが付与されているものとする。反対に、アクセスポリシーを定義するために必要となる情報が操作者により入力、指定または選択されていない場合、アクセスポリシーが付与されていないとCPU201は判定する。
アクセスポリシーが付与されてない場合、フラグを0に設定し、フラグをRAM204に記憶する。また、CPU201は、アクセスポリシーが付与された場合、当該アクセスポリシーを定義するための定義情報を作成し、ハードディスクドライブ203に記憶してもよい。さらに、CPU201は、定義情報を含む登録要求をポリシーサーバ103に送信する。これにより、送信対象ファイルについてのアクセスポリシーがポリシーサーバ103によって管理されることになる。
送信設定ボタン505が押し下げられると、CPU201は、送信設定画面を表示部206に表示する。送信設定画面には、例えば、件名、本文、返信先など情報を入力するテキストボックスが含まれている。
送信履歴ボタン506が押し下げられると、CPU201は、ログイン中のユーザが過去に実行した送信ジョブの履歴をハードディスクドライブ203から読み出して、表示部206に表示する。なお、CPU201は、認証処理部215を通じて、操作者にユーザIDやパスワードを入力させることで認証処理を実行する。
宛先表示フィールド507に、CPU201は、操作部207を通じて指定された宛先(メールアドレスや受信者のユーザ名など)を表示する。制御情報表示フィールド508に、CPU201は、操作部207を通じて設定されたアクセスポリシーを表示する。なお、アクセスポリシーが指定されていない場合、CPU201は、例えば、空欄を表示するか、未設定を意味するのメッセージなどを表示してもよい。キャンセルボタン510が押下げられると、CPU201は、基本設定処理を終了する。
ステップS402において、CPU201は、操作部207から指示に応じて、送信対象ファイルを指定する。例えば、送信ボタン509が押下げられると、CPU201は、読み取り装置211により原稿画像の読み取りを実行させ、送信用の画像データを格納したファイルを作成する。なお、CPU201は、ハードディスクドライブ203に記憶されているファイルを選択して送信してもよい。この場合、CPU201は、表示部206にファイルの一覧を表示し、操作部207を通じて1以上のファイルの指定を受け付ける。
ステップS403において、CPU201は、送信対象ファイルに対してアクセスポリシーが付与されているか否かを判定する。例えば、CPU201は、RAM204に記憶されているフラグを読み出して、付与済みか否かを判定する。付与済みであれば、ステップS406に進む。一方、アクセスポリシーが付与済みでなければ、ステップS404に進む。
ステップS404において、CPU201は、アクセスポリシーの定義情報を作成する。例えば、CPU201は、操作者にアクセスポリシーの付与を促すためのメッセージを表示部206に表示し、定義情報を作成するために必要な情報の入力を待つ。必要な情報が入力されると、CPU201は、定義情報を作成する。なお、CPU201は、送信対象ファイルの識別情報(例:文書ID)を生成し、定義情報に含めてもよい。これにより、ファイルごとに独自のアクセスポリシーを定義することが可能となろう。なお、CPU201は、送信対象ファイルに文書IDを埋め込んでもよい。
ステップS405において、CPU201は、定義情報を含む登録要求をポリシーサーバ103に送信する。ステップS406において、CPU201は、CPU201は、送信対象ファイルを添付ファイルとする電子メールを作成し、あて先に送信する。
以上説明したように、本実施形態によれば、送信対象ファイルにアクセスポリシーが付与されていない場合、アクセスポリシーを定義する定義情報を作成することで、操作者の負担を軽減している。すなわち、基本設定のプロセスにおいて、操作者がアクセスポリシーの設定を省略したとしても、複合機102が、ほぼ自動的に定義情報を作成してポリシーサーバに登録してくれる。そのため、本実施形態に係る発明は、アクセスポリシーの付与作業の煩わしさを軽減することができるだろう。
図7は、実施形態に係るアクセスポリシーの定義情報を作成する処理についての例示的なフローチャートである。この作成処理は、上述のステップS404に相当する。
ステップ701において、CPU201は、認証処理部215を通じて得られた送信者(複合機102にログインしている操作者)の識別情報と、操作部207を通じて入力された受信者の識別情報とが一致するか判定する。一致すれば、送信者が自分宛てにファイルを送信しようとしていることになる。よって、この場合は、ステップS706に進み、CPU201は、送信者のみが送信対象ファイルを操作(表示、編集、印刷など)できるようにするための定義情報を作成する。一方、送信者と受信者とが不一致であれば、ステップS702に進む。
ステップS702において、CPU201は、アクセスポリシーの付与をユーザに要求するためのメッセージ(例:表示画面など)を表示部206に表示する。ステップS703において、CPU201は、受信者に対して適用されるアクセスポリシーを定義するために必要となる情報を、操作部207を通じて受け付ける。なお、CPU201は、送信者に適用されるアクセスポリシーの定義情報についても必要な情報を受け付けてもよい。また、複数の受信者があて先として設定されている場合、CPU201は、受信者ごとに異なる定義情報を作成してもよいし、共通の定義情報を作成してもよい。この場合は、必要な情報が、受信者ごとに個別に指定されることになる。ここで、必要な情報とは、例えば、表示の可否、編集の可否、印刷の可否、および、アクセスポリシーの有効期限などである。
ステップS704において、CPU201は、操作部207を通じて入力された情報に基づいて、定義情報を作成する。定義情報には、例えば、ユーザを識別するためのユーザID、ファイルを識別するための文書ID、表示等の可否に関する情報などが含まれる。
本実施形態によれば、送信者と受信者とが不一致の場合に限り、操作者への入力を促す構成を採用しているため、ユーザの負担はより削減されよう。例えば、送信者と受信者とが一致する場合、複合機102は、送信者のみが送信対象ファイルにアクセス権限を有するような定義情報を自動的に作成するため、操作者の入力操作が最小限度となろう。
図8は、実施形態に係る他のファイル送信処理を示す例示的なフローチャートである。なお、既に説明したステップについては、同一の参照符号を付すことで説明を簡潔にする。なお、以下のステップS801ないしS805は、上述したステップS401およびS402の下位概念の一例である。
まずステップS801において、CPU201は、認証処理部215を通じて操作者がログインしているかどうかを判定する。操作者がログインしている場合は、S801のループを抜けて、ステップS802に進む。ステップS802において、CPU201は、操作部207を通じてスキャン文書の送信機能が選択されたことを検出し、送信用のアプリケーションプログラムを起動する。
ステップS803において、CPU201は、基本設定画面(図5)を表示部206に表示する。ここで操作者は、送信する宛先や送信設定などを行うことができる。また、図5を用いて説明したようにアクセスポリシーを定義するための情報も基本設定画面を通じて入力できる。また、CPU201が、既存のアクセスポリシーに関する定義情報をハードディスクドライブ203から読み出して、表示部206に表示してもよい。このようにすれば、操作者は、操作部207を通じて既存のアクセスポリシーを選択または指定できるようになるため、定義に必要な情報を入力する手間を省けるだろう。既存のアクセスポリシーが指定された場合は、アクセスポリシーを識別するための識別情報(ポリシーIDなど)をRAM204に記憶する。
ステップS804において、CPU201は、基本設定画面に含まれる送信ボタン509が押下されたことを検出すると、ステップS805に進む。ステップS805において、CPU201は、印刷制御部210に原稿のスキャンを指示する。印刷制御部210は、読み取り装置211を駆動して原稿の画像を読み取らせる。読み取り装置211から出力されるデータは、画像メモリ213に一時保存される。なお、CPU201は、画像メモリ213に記憶されている画像ファイルに文書IDを埋め込んでもよい。その後、ステップS403を実行する。
ステップS403において、アクセスポリシーが付与されていると判定されると、ステップS806に進む。ステップS806において、CPU201は、ステップS706と同様の処理を実行する。一方、アクセスポリシーが付与されていないと判定されると、ステップS807に進む。
ステップS807において、CPU201は、既存のアクセスポリシーが指定されているか否かを判定する。既存のアクセスポリシーが指定されている場合、ステップS808に進む。ステップS808において、CPU201は、指定されたアクセスポリシーの識別情報をRAM204から読み出し、ステップS405に進む。一方、既存のアクセスポリシーが指定されていない場合、ステップS404に進む。ステップS404において、CPU201は、ユーザによる設定内容を反映した定義情報作成し、ステップS405に進む。
ステップS405において、CPU201は、スキャン画像に埋め込まれた文書ID、作成された定義情報(S404、S706)または既存のアクセスポリシーの識別情報を含む登録要求コマンドを作成し、ポリシーサーバ103に送信する。
ステップS812において、CPU201は、アクセスポリシーの定義情報の登録に成功したか否かを判定する。成功したか否かは、例えば、ポリシーサーバ103が送信する成功通知や失敗通知に基づいて判定できる。成功であれば、ステップS406に進み、CPU201は、スキャン画像を画像メモリ213から読み出し、電子メールに添付して送信する。その後、ステップS816に進み、CPU201は、送信完了を表すメッセージを表示部206に表示する。
一方、定義情報の登録が失敗した場合は、ステップS813に進み、CPU201は、アクセスポリシーを送信対象ファイルに付与することに失敗したことを表すメッセージを表示部206に表示する。ステップS814において、CPU201は、スキャン画像を画像メモリ213から削除する。
このように本実施形態によれば、既存のアクセスポリシーを流用できるため、ユーザは、改めて定義に必要な詳細情報を入力する手間を省けるようになる。
ところで、図7にステップS404の具体例を示したが、図7に示したサブルーチンをステップS806に代えて採用してもよい。なお、以下で説明する図9または図10に示すサブルーチンも同様である。
図9は、実施形態に係る他のアクセスポリシーの定義情報を作成する処理についての例示的なフローチャートである。本フローチャートは、図7に示したサブルーチンの代替案である。
ステップS901において、CPU201は、宛先として指定された受信者のユーザIDをユーザテーブル(図6)から検索して抽出する。受信者のユーザIDの抽出に成功した場合、ステップS902に進み、CPU201は、送信者と受信者のみが送信対象ファイルを操作可能とする定義情報を作成する。一方、受信者のユーザIDの抽出に失敗した場合、ステップS903に進み、CPU201は、送信者のみが送信対象ファイルを操作可能とする定義情報を作成する。
本実施形態によれば、予めユーザテーブルに登録されていないユーザが文書ファイル操作をできないようなアクセスポリシーが自動で作成される。そのため、未登録のユーザにファイルが送信されてしまったとしても、当該ユーザによるファイルへの操作を禁止できる利点がある。さらに、受信者が登録済みのユーザであれば、送信者と当該受信者のみがファイルを操作可能となるような定義情報を複合機102が自動で作成する。そのため、複合機102の操作者の負担を軽減できよう。
図10は、実施形態に係るさらに他のアクセスポリシーの定義情報を作成する処理についての例示的なフローチャートである。本フローチャートは、図7または図9に示したサブルーチンの代替案である。なお、既に説明した処理については、同一の参照符号を付すことで説明を簡略化する。
ステップ701で、送信者と受信者とが一致しない場合に、ステップS1001に進む。ステップS1001において、CPU201は、既存のアクセスポリシーを指定するよう要求する画面を表示部206に表示する。当該画面には、複数のアクセスポリシーの候補も表示されるので、操作者は、何れかのアクセスポリシーを操作部207から選択的に指定できる。例えば、第1のアクセスポリシーは、全ての操作を許可するアクセスポリシーである。また、第2のアクセスポリシーは、表示のみ許可するアクセスポリシーである。なお、これらは単なる例示に過ぎない。
ステップS1002において、CPU201は、操作部207を通じてアクセスポリシーが指定されたか否かを判定する。指定されていない場合、ステップS1001に戻る。一方、指定された場合、ステップS1003に進み、CPU201は、指定されたアクセスポリシーの定義情報を識別するためのポリシーIDを取得する。
本実施形態によれば、送信者以外のユーザにファイルが送信される場合は、予め登録されたアクセスポリシーを指定できる。よって、ユーザは、定義情報を作成するために詳細な情報を入力する手間を省ける利点がある。
図11は、実施形態に係るアクセスポリシーの定義情報を取得する処理についての例示的なフローチャートである。本フローチャートは、図7または図9に示したサブルーチンの代替案である。図11に関する処理では、基本設定画面においてアクセスポリシーが付与されていない場合、ユーザごとに予め登録されているデフォルトのアクセスポリシーをファイルに適用する。
ステップS1101において、CPU201は、宛先に設定された受信者のユーザIDをユーザテーブルから抽出する。ユーザIDを抽出できなければ、ステップS706を実行する。ユーザIDを抽出できれば、ステップS1102に進み、CPU201は、ハードディスクドライブ203からデフォルトの定義情報を読み出す。
図12は、実施形態に係るデフォルトの定義情報を記憶するテーブルの一例を示す図である。図からわかるように、ユーザIDと対応付けて、各種操作の可否や有効期限に関するデフォルト情報が記憶されている。
以上説明したように、本実施形態では、ユーザ(送信者および受信者)ごとのデフォルトの定義情報を予め登録しておくことで、自動的にアクセスポリシーを送信対象ファイルに付与することができる。よって、アクセスポリシーを付与する際のユーザの負担を従来よりも軽減できるようになろう。
<ポリシーサーバ>
次にポリシーサーバについての主要な動作について説明する。主要な動作としては、アクセスポリシーの定義情報を登録する処理、アクセスポリシーの内容をクライアントに送信する処理などがある。
図13は、実施形態に係るポリシーサーバのデータ処理手順の一例を示すフローチャートである。
ステップS1301において、CPU301は、サーバアプリケーションプログラムを起動する。当該プログラムは、ハードディスクドライブ310に記憶されている。ステップS1302において、CPU301は、複合機102またはクライアントコンピュータ104などから送信されるコマンドの受信を待機する。
図14は、実施形態に係るコマンドの一例を示す図である。図において、コマンド長は、コマンドのサイズを示す情報である。アクセスユーザIDは、ポリシーサーバ103にアクセスするユーザを識別するための情報である。要求IDは、要求の種別を識別するための情報である。例えば、文書IDにより指定された文書ファイルに適用されるべき定義情報の登録要求、当該定義情報の取得要求などがある。定義情報の取得要求は、いわゆるアクセスポリシーの問い合せである。文書IDは、文書ファイルを識別するための情報である。ポリシーIDは、既存のアクセスポリシーを識別するための情報である。要素数は、登録対象となる定義要素の数である。定義要素は、ユーザごとに設定または作成されたアクセスポリシーの定義情報である。ひとつの定義要素には、ユーザID、表示の可否、編集の可否、印刷の可否、有効期限の始期と終期などの情報が含まれている。
なお、クライアントコンピュータ104は、様々なコマンドをポリシーサーバ103に送信する。例えば、サーバアプリケーションが、WEBアプリケーションであるとする。この場合、クライアントコンピュータ104のWEBブラウザは、WEB画面の取得要求コマンドを送信することになる。サーバアプリケーションは、WEBブラウザに画面情報(Htmlファイル、画像データなど)を送信する。
図15は、実施形態に係るID管理テーブルの一例を示す図である。図からわかるように、当該テーブルには、文書IDとポリシーIDとが対応付けて記憶されている。ID管理テーブルは、ハードディスクドライブ310に記憶されているものとする。
図16は、実施形態に係る定義情報テーブルの一例を示す図である。図から明らかなように、当該テーブルには、各アクセスポリシーを識別するためのポリシーID、当該アクセスポリシーが適用されるユーザのID、および各種の定義要素が含まれている。
さて、通信IF305を通じてコマンドが受信されると、ステップS1303に進む。ステップS1303において、CPU301は、コマンドを解析し、コマンドに含まれるアクセスユーザのユーザIDを抽出し、当該ユーザIDは許可されたユーザのユーザIDであるか否かを判定する。ポリシーサーバ103を使用することが許可されたユーザのIDは、例えば、ユーザリストに予め登録されているものとする。ユーザリストは、ハードディスクドライブ310に記憶されている。許可されたユーザでなければ、ステップS1304に進み、CPU301は、アクセス権なしを表すメッセージを作成する。一方、許可されたユーザからのコマンドであれば、ステップS1305に進む。
ステップS1305において、CPU301は、コマンドに含まれる要求IDを抽出し、指定された文書ファイルに対する定義情報の登録要求であるかどうかを判定する。登録要求であれば、ステップS1306に進み、CPU301は、ポリシーIDを生成し、文書ID、ユーザID、定義情報とともにを定義情報テーブル(図16)に登録する。また、CPU301は、生成したポリシーIDと、文書IDとをID管理テーブル(図15)に登録する。
登録要求でなければ、ステップS1307に進み、CPU301は、要求IDが、指定された文書に設定されている定義情報の取得要求かどうかを判定する。取得要求でなければ、ステップS1308に進み、CPU301は、要求の識別に失敗したことを表すメッセージを作成する。
一方、取得要求であれば、ステップS1309に進み、CPU301は、文書IDに対応するポリシーIDをID管理テーブル(図15)から読み出し、さらに、ポリシーIDに対応する定義情報を定義情報テーブル(図16)から読み出す。
ステップS1310において、CPU301は、コマンドの実行結果を、コマンドを送信してきた装置に返信する。例えば、上記の失敗メッセージや、取得に成功した定義情報などを返信する。
図17は、実施形態に係る定義情報の登録処理に関する例示的なフローチャートである。このフローチャートは、ステップS1306をサブルーチンとして示したものである。
ステップS1701において、CPU301は、コマンドにより指定された文書IDをID管理テーブル(図15)に登録する。
ステップS1702において、CPU301は、コマンドによりポリシーIDが指定されているかどうかを判定する。指定されている場合、ステップS1703に進み、CPU301は、指定されたポリシーIDについて定義情報テーブルを検索し、登録済みのポリシーIDかどうかを判定する。登録されていない場合、ステップS1704に進み、CPU301は、定義情報の登録に失敗したことを表すメッセージを作成する。次に、ステップS1705に進み、CPU301は、登録した文書IDをID管理テーブルから削除し、元の処理へ戻る。
一方、ステップS1703において、ポリシーIDが登録されている場合、ステップS1706に進む。ステップS1706において、CPU301は、指定された文書IDに対応して、当該ポリシーIDをID管理テーブルに登録し、元の処理へ戻る。
また、ステップS1702において、ポリシーIDが指定されていない場合、ステップS1707に進む。ステップS1707において、CPU301は、定義情報を構成するための要素がコマンドによって指定されているかどうかを判定する。指定されていない場合、上述したステップS1704に進む。一方で、要素が指定されている場合は、ステップS1710に進む。ステップS1710において、CPU301は、ポリシーIDを生成し、定義情報テーブルに登録する。
ステップS1711において、CPU301は、コマンドから読み出した定義要素(ユーザIDや各操作の実行の可否、有効期限など)をポリシーIDと対応付けて定義情報テーブルに登録する。
ステップS1712において、CPU301は、コマンドで指定された最後の定義要素について登録が完了したか否かを判定する。まだ未登録の定義要素が存在していれば、ステップS1711に戻り、次の定義要素を定義情報テーブルに登録する。一方、全ての定義要素について登録済みであれば、ステップS1713に進む。ステップS1713において、CPU301は、文書IDに対応付けてポリシーIDをID管理テーブルに登録し、元の処理へ戻る。
図18は、実施形態に係るアクセスポリシーの定義情報の取得処理に関する例示的なフローチャートである。本フローチャートは、ステップS1309に関するサブルーチンに相当する。
ステップS1801において、CPU301は、コマンドにより指定された文書IDがID管理テーブルに登録されているかどうかを判定する。未登録の文書IDであれば、ステップS1802に進み、未登録の文書であることを表すメッセージを作成する。一方、文書IDが登録されている場合、ステップS1803に進み、CPU301は、指定された文書IDに対応するポリシーIDをID管理テーブルから抽出する。
ステップS1804において、CPU301は、ポリシーIDの抽出に成功したか否かを判定する。失敗した場合は、ステップS1805に進み、CPU301は、ポリシーIDの抽出に失敗したことを表すメッセージを作成し、元の処理へ戻る。
一方、ポリシーIDの抽出に成功した場合、ステップS1806に進み、CPU301は、ポリシーIDに対応するユーザIDを定義情報テーブルから抽出する。ステップS1807において、CPU301は、抽出されたユーザIDと、コマンドにより指定されていたアクセスユーザのユーザIDとが一致するか否かを判定する。これにより、コマンドの送信者が、正規のユーザか否かを判定できる。両者が不一致であれば、正規のユーザでないとのメッセージを作成する。一方、両者が一致すれば、ステップS1809に進み、CPU301は、ユーザIDに対応する定義要素を定義情報テーブルから取得する。
<クライアントコンピュータ>
クライアントコンピュータ104は、WEBブラウザ上の画面にコマンドが入力されると、入力されたコマンドをポリシーサーバ103に送信する。あるいは、ユーザがアクセスポリシーの付与されている文書ファイルを開こうとすると、クライアント用のWEBアプリケーションが起動する。当該アプリケーションは、文書ファイルから文書IDを抽出し、また、操作部から入力されたユーザIDとともに、定義情報の取得要求を含むコマンドを生成し、サーバ103に送信する。このようにして、ユーザごとの文書表示の可否を確認することができる。
図19は、実施形態に係る文書ファイルへの操作に関する例示的なフローチャートである。
ステップS1901において、CPU301は、通信IF305を通じて、複合機102から文書ファイルを受信する。ステップS1902において、CPU301は、キーボード312またはポインティングデバイスから入力されるファイルオープンの指示に応じて、文書ファイルをオープンする。ステップS1903において、CPU301は、文書ファイルから文書IDを読み出す。
図20は、実施形態に係る文書ファイルの一例を示す図である。文書ファイルには、文書IDに加え、画像データや文書データなどが格納されている。
ステップS1904において、CPU301は、クライアントコンピュータ104にログインしている操作者のユーザIDと、文書IDとを含む、定義情報取得要求コマンドを作成し、ポリシーサーバ103に送信する。ステップS1905において、CPU301は、ポリシーサーバ103から受信した情報に基づいて、表示権限があるか否かを判定する。表示権限があれば、ステップS1906に進み、文書の内容を表示部であるCRT307に表示する。一方、表示権限がなければ、ステップS1907に進み、CPU301は、エラーを表示する。
次に、操作者によりキーボード312などを通じて編集が要求されると、ステップS1908に進み、CPU301は、ポリシーサーバ103から受信した情報に基づいて、編集権限があるか否かを判定する。編集権限があれば、ステップS1909に進み、キーボード312を通じて文書の内容の編集操作を受け付ける。一方、編集権限がなければ、ステップS1910に進み、CPU301は、エラーを表示する。
次に、ユーザにより印刷が要求されると、ステップS1911に進み、CPU301は、ポリシーサーバ103から受信した情報に基づいて、印刷権限があるか否かを判定する。権限があれば、ステップS1912に進み、文書の印刷を実行する。例えば、CPU301は、通信IF305を通じて、複合機102に印刷ジョブデータを送信する。一方、権限がなければ、ステップS1913に進み、CPU301は、エラーを表示する。
[他の実施形態]
上述の実施形態では、複合機102の読み取り装置211により読み取ったスキャン画像データを送信する際にアクセスポリシーを付与するものであった。しかしながら、複合機102のハードディスクドライブ203内に保存されている文書ファイルについても同様にアクセスポリシーを付与できることはいうまでもない。
以上、様々な実施形態を詳述したが、本発明は、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。例えば、スキャナ、プリンタ、PC、複写機、複合機及びファクシミリ装置の如くである。
本発明は、前述した実施形態の各機能を実現するソフトウェアプログラムを、システム若しくは装置に対して直接または遠隔から供給し、そのシステム等に含まれるコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される。
従って、本発明の機能・処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、上記機能・処理を実現するためのコンピュータプログラム自体も本発明の一つである。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RWなどがある。また、記録媒体としては、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などもある。
また、プログラムは、クライアントコンピュータのブラウザを用いてインターネットのホームページからダウンロードしてもよい。すなわち、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードしてもよいのである。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明の構成要件となる場合がある。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布してもよい。この場合、所定条件をクリアしたユーザにのみ、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報で暗号化されたプログラムを復号して実行し、プログラムをコンピュータにインストールしてもよい。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現されてもよい。なお、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行ってもよい。もちろん、この場合も、前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれてもよい。そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ってもよい。このようにして、前述した実施形態の機能が実現されることもある。