文書管理システム、文書管理方法、及びそのプログラム
【課題】文書管理サーバからダウンロードした文書をパソコンで閲覧している途中に、パソコンを持って別の場所に移動する時や、一時的にネットワークケーブルが抜けてしまう等といったサーバとのセッション(通信)が一時的に切れてしまう場合には、セキュリティや操作性の面から考えて、これまで行っていた閲覧を終了するか継続すべきかの判断が難しいといった問題が生じる。
【解決手段】現在パソコンに表示されているページではないページを表示させる場合に、セッションが切れていても、ページ表示を継続できるかをセッション切れ有効時間によりを判定する。
【解決手段】現在パソコンに表示されているページではないページを表示させる場合に、セッションが切れていても、ページ表示を継続できるかをセッション切れ有効時間によりを判定する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、文書管理システム、文書管理方法、及びそのプログラムに関し、特にネットワークを介して、閲覧したいドキュメントをサーバにて暗号化して、端末にダウンロードした後、端末が復号化してドキュメントを閲覧することができる文書管理システム、文書管理方法及びそのプログラムに関する。
【背景技術】
【0002】
文書管理システム内では、アクセス制限によりドキュメントのセキュリティは確保される。しかしながら、一度ドキュメントがクライアントによりダウンロードされると、そのドキュメントへの何らセキュリティは掛けられなくなってしまう。そのため、ドキュメントをダウンロードした後に、不正に配布されてしまうと、文書管理システム上のセキュリティが担保されない。その1つの例として、特許文献1では認証情報とワンタイムパスワード生成手段によって生成されたワンタイムパスワードとを比較することにより前記利用者が正当な利用者であるか否かの認証判定を行なう認証手段と、該認証手段によって前記
【0003】
利用者が正当な利用者であることを認証した場合に前記暗号化ファイルを復号化する復号鍵を前記他の端末装置に送信し、前記他の端末装置に前記暗号化ファイルの復号化を実行させる復号鍵送信手段をさらにそなえて構成されていることを特徴とする電子ファイル管理システムが開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2007−286935
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1に記載の電子ファイル管理システムおよび電子ファイル管理プログラムにおいては、認証後にUSBメモリおよび携帯型記憶装置に復号化されたファイルを保存できてしまう。
【0006】
更に閲覧開始後に、パソコンを持って別の場所に移動する時や、一時的にネットワークケーブルが抜けてしまうなど、サーバとのセッション(通信)が一時的に切れてしまうといった場合には、これまで行っていた閲覧処理を終了するか継続すべきかの判断をセキュリティや操作性の面から考えると、その判断が難しいといった問題が生じる。
【0007】
本発明は上記の課題を解決するためになされたものであり、閲覧時にはページ単位で復号化して、必要最小限のページ以外は復号化しないことにより閲覧時の表示レスポンスを確保しつつ、高度なセキュリティを確保でき、かつ、クライアント端末において文書の閲覧開始後であっても、セッションが一時的に切れてしまった場合に、設定した有効時間内にセッションが再度確立できれば、これまでおこなった閲覧操作が継続でき、表示されているページ以外のページも閲覧を許可する仕組みを提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明は、文書管理サーバと閲覧端末とが通信可能に構成された文書管理システムであって、前記文書管理サーバは、ページ毎のアドレス情報を含む暗号化された文書を送信する暗号化文書送信手段と、閲覧端末にシステム時刻を回答する回答手段と、前記閲覧端末は、前記暗号化された文書を受信する暗号化文書受信手段と、前記暗号化文書受信手段が受信した文書をページ毎のアドレス情報に基づいて、ページ毎に復号化する復号化手段と、前記ページ毎に復号化された文書をページ毎に表示するページ表示手段と、前記文書管理サーバにシステム時刻を問い合わせる問い合わせ手段と、前記文書管理サーバの前記システム時刻から、前記復号化手段のページ毎の復号化を許可する所定の時刻を決定する決定手段と、前記ページ表示手段が復号化された文書のページ表示をした後に、前記文書管理サーバと前記閲覧端末とが通信確立中であるかを判定する第1の判定手段と、前記第1の判定手段が、通信確立中ではないと判定した場合に、前記所定の時刻と閲覧端末のシステム時刻から、前記ページ表示手段が表示していないページの表示を許可するかを判定する第2の判定手段を備える事を特徴とする。
【0009】
また、前記閲覧端末は、前記ページ表示手段が表示するページの複製、編集、印刷といった操作の停止指示する操作停止指示手段を更に有し、前記第1の判定手段が、通信確立中ではないと判定した場合に、前記操作停止手段が操作停止指示する事を特徴とする。
【0010】
また、前記第2の判定手段が、前記所定の時刻が閲覧端末のシステム時刻よりも早いと判定した場合には、前記ページ表示手段にページ表示させない事を特徴とする。
【0011】
また、前記閲覧端末は、前記所定の時間を記憶する第1の記憶手段と前記決定手段が決定した所定の時刻を記憶する第2の記憶手段とを更に有し、前記決定手段は、前記所定の時間と前記問い合わせ手段が問い合わせた文書管理サーバのシステム時刻により、前記所定の時刻を決定する事を特徴とする。
【0012】
また、前記第2の判定手段が、前記所定の時刻が閲覧端末のシステム時刻より遅いと判定した場合には、前記問い合わせ手段は文書管理サーバにシステム時刻の問い合わせをし、前記第2の記憶手段が記憶する前記所定の時刻を更新する更新手段を更に有する事を特徴とする。
【発明の効果】
【0013】
本発明によれば、必要最小限のページ以外は復号化しないことにより閲覧時の表示レスポンスを確保しつつ、高度なセキュリティを確保でき、かつ、クライアント端末において文書の閲覧開始後であっても、セッションが一時的に切れてしまった場合に、設定した有効時間内にセッションが再度確立できれば、これまでおこなった閲覧操作が継続でき、表示されているページ以外のページも閲覧を許可することができる。
【図面の簡単な説明】
【0014】
【図1】本発明の文書管理システムのシステム構成を示す図である。
【図2】本発明の文書管理サーバとクライアントのハードウェア構成を示す図である。
【図3】本発明の実施形態のクライアント端末の文書ダウンロード処理を示すフローチャートである。
【図4】本発明の実施形態のクライアント端末の文書アップロード処理を示すフローチャートである。
【図5】本発明の実施形態の文書管理サーバのドキュメントの暗号化処理の詳細な処理フローを示す図である。
【図6】本発明の実施形態の文書管理サーバのドキュメントの復号化処理の詳細な処理フローを示す図である。
【図7】本発明の実施形態のクライアント端末の暗号化されたドキュメントの閲覧(復号化)処理の詳細な処理フローを示す図である。
【図8】クライアント端末の文書ダウンロード操作時の画面を示す図である。
【図9】クライアント端末の文書アップロード操作時の画面を示す図である。
【図10】クライアント端末の文書アップロード操作時の画面を示す図である。
【図11】文書閲覧中のクライアント端末の画面を示す図である。
【図12】文書管理DBの項目例を示す図である。
【図13】ユーザマスタの項目例を示す図である。
【図14】組織マスタの項目例を示す図である。
【図15】文書管理マスタの項目例を示す図である。
【図16】一時ファイル、文書ヘッダファイル、初期設定ファイルの項目例を示す図である。
【発明を実施するための形態】
【0015】
以下、図面を参照して、本発明の実施形態を詳細に説明する。図1は、本発明の実施の形態における文書システムのシステム構成を示す図である。文書管理サーバ100は通信回線300を介してクライアント端末200と通信可能に構成されている。文書管理サーバ100の外部メモリ211のハードディスクには各種のテーブルや印刷フォームが記憶されており、クライアント200から通信回線300を介して文書管理サーバ100にドキュメントの閲覧要求を送信し、文書管理サーバ100はドキュメントを暗号化してからクライアント200に送信する。
次に図2は、文書管理サーバ100及びクライアント200のハードウェアの概略構成を示す模式図である。
【0016】
CPU201は、システムバス204に接続される各デバイスやコントローラを統括的に制御する。また、ROM202あるいは外部メモリ211には、CPU201の制御プログラムであるBIOS(Basic Input / Output System)やオペレーティングシステムプログラム(以下、OS)や、文書管理サーバ100の各プログラムを実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。
【0017】
RAM203は、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して必要なプログラム等をRAM203にロードして、プログラムを実行することで各種動作を実現するものである。また、入力コントローラ205は、キーボード(KB)209や不図示のマウス等のポインティングデバイスからの入力を制御する。ビデオコントローラ206は、CRTディスプレイ(CRT)210等の表示器への表示を制御する。表示器はCRTだけでなく、液晶ディスプレイでも構わない。
【0018】
メモリコントローラ207は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク(HD)やフロッピー(登録商標)ディスク(FD)或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等の外部メモリ211へのアクセスを制御する。通信I/Fコントローラ208は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いたネットワーク通信等が可能である。
【0019】
外部メモリ211のハードディスクはオペレーティングシステムや図3〜図7のフローチャートで示されるアプリケーションプログラムや図8〜図11に示す各画面をクライアント200のディスプレイに表示させるためのアプリケーションプログラムの一部としての画面情報や、図12に示す文書管理DBや図13に示すユーザマスタ、図14に示す組織マスタ、図15に示す文書管理マスタ等の各データベースやテーブル、マスタファイルを記憶している。クライアント200では外部メモリ211のハードディスクの代わりにRAM203と兼用の不揮発性メモリを用いても良い。
【0020】
なお、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、CRT210上での表示を可能としている。また、CPU201は、CRT210上の不図示のマウスカーソル等でのユーザ指示を可能とする。
ここでテーブル及びマスタファイルについて説明する。
【0021】
図12に示す文書管理DBは、一意の文書番号(キー)、ドキュメント名、ドキュメント種別(企画書、稟議書、仕様書、議事録等のドキュメントの種別)、機密ランク(後述する)、作成者ID(ドキュメントの作成者のユーザID)、 保存場所(ドキュメントのフルパス+ドキュメントのファイル名)、作成日(ドキュメントの作成日)、改訂日、改訂者ID(ドキュメントの最後の改訂者のユーザID)、保管期限年月日(ドキュメントの保管期限、99999999は永年保管)の各項目を記憶している。文書管理DBの機密ランクは、後述するユーザマスタの機密ランクが文書管理DBの機密ランクと等しいか又は高ランクの場合にアクセス可能であることを示す。例えば文書管理DBの機密ランクSは、ユーザマスタの機密ランクがSランクの人のみがアクセス可能であり、書管理DBの機密ランクCはユーザマスタの機密ランクがSランク乃至Cランクの人がアクセス可能であることを示している。機密ランクの実際のデータはSランクが7、Aランクが6、Bランクが5、Cランクが4、Dランクが3、Eランクが2、Fランクが1として記憶される。なお、文書管理DBの機密ランクがFランク(1)である場合、ユーザマスタのFランクの人がアクセスできるため、このドキュメントが機密でない一般書類であることを意味する。
【0022】
図13に示すユーザマスタは、一意のユーザID(キー項目)、氏名、所属組織コード、機密ランク、職位、電子メールアドレス、内線電話番号、所属ドメインの各項目を記憶している。職位は例えばSが役員以上、Aが事業部長、Bが本部長又は相当職、Cが部長又は相当職、Dは課長又は相当職、Eが課長代理又は相当職、Fが一般職であることを示す。機密ランクの実際のデータは文書管理DBと同様にSランク乃至Fランクに対して7乃至1を記憶する。機密ランクはどのランクの機密書類にアクセスできるかを示し、例えばS(7)は全社の機密書類にアクセス可能、Aは自己が属する事業部の機密書類にアクセス可能、Bは自己が属する本部の機密書類にアクセス可能、Cは自己が属する部の機密書類にアクセス可能、Dは自己が属する課の機密書類にアクセス可能、Eは自己が作成した機密書類にアクセス可能、Fは機密書類にアクセスできないことを意味する。所属ドメインはユーザのPCが接続されているネットワークのドメインを示す。
【0023】
図14に示す組織マスタは、一意の組織コード(キー)、組織名称、組織ランク(5乃至1で上位組織ほど数字が大きくなる)、組織長ユーザID(ライン長のユーザID)、上位組織コード1(その組織の1つ上のレベルの組織コード)、上位組織コード2(その組織の2つ上のレベルの組織コード)、上位組織コード3(その組織の3つ上のレベルの組織コード)、上位組織コード4(その組織の4つ上のレベルの組織コード)、組織改編年月日(その組織が始まった年月日)、組織廃止年月日(その組織を廃止した年月日)、旧組織コード(組織変更の場合の旧組織の組織コード)の各項目を記憶している。組織ランクは例えば事業部は5、本部は4、部は3、課は2、係は1を意味する。上位組織コードは例えば課の場合、上位組織コード1は課が含まれる部の組織コード、上位組織コード2は課が含まれる本部の組織コード、上位組織コード3は課が含まれる事業部の組織コードを示す。
【0024】
図15に示す文書管理マスタは、拡張子毎の暗号化の有無を記憶しており、ドキュメントのファイル名の末尾(.より後ろ)に付ける拡張子(キー項目)と暗号化区分(暗号化要の場合1:、暗号化不要の場合:0)とを記憶している。
【0025】
次に文書管理システムの暗号化・復号化システムの基本的な処理フローについて、図3を用いて説明する。図3は本発明の実施形態の文書管理システムにおいてクライアント端末から閲覧をしたい文書のダウンロード要求を文書管理サーバに送信し、文書管理サーバは受信したクライアントから閲覧要求された文書を暗号化し、クライアント端末に暗号化した文書を送信し、クライアント端末は暗号化された文書を受信(ダウンロード)する場合の基本的な処理フローを示す図である。
【0026】
図3のステップ101〜ステップ107は、クライアント200のCPU201の制御の元で実行する処理であり、ステップ121〜ステップ126は、文書管理サーバ100のCPU201の制御の元で実行する処理である。
【0027】
まず、ステップ101では、クライアント200は、文書管理サーバ100から提供される操作画面を介して、ユーザID、パスワード、及びユーザの属するドメイン名を特定する情報からなるログイン情報を文書管理サーバ100へ送信する。
【0028】
ステップ121では、文書管理サーバ100は受信したログイン情報をRAM203のワークエリアに記憶し、ログイン情報のユーザIDをキーとして、ユーザマスタを参照し、ユーザIDとパスワードとが一致するかのユーザの認証を行う。ユーザIDとパスワードとが一致しない場合、文書管理サーバ100からエラーメッセージをクライアント200に送信し、クライアント200はログイン許可メッセージ受信してエラーメッセージを表示後、再度ユーザIDとパスワードと入力して文書管理サーバ100に送信する。ユーザIDとパスワードとが一致した場合、文書管理サーバ100からログイン許可メッセージと操作画面をクライアント200に表示させるための操作画面情報とをクライアント200に送信する。
ステップ102では、クライアント200はログイン許可メッセージ受信し、処理をステップ103に進める。
【0029】
ステップ103では、クライアント200は文書管理サーバ100から受信した操作画面情報を用いて表示される操作画面を介して、ドキュメントの検索依頼情報(ユーザIDと検索条件情報を含み、検索条件情報は、ドキュメントの名称又はその一部、ドキュメントの作成者氏名、ドキュメントの作成年月日等の少なくともいずれか1つ含む)を文書管理サーバ100へ送信する。
【0030】
ステップ122では、文書管理サーバ100は、クライアント200から受信した検索依頼情報に含まれるドキュメントの検索条件情報を用いて文書管理DBの検索を行い、検索条件に一致したドキュメントの書誌情報(ドキュメント番号とドキュメント名称、作成者、改訂年月日等)をRAM203のワークエリアに記憶し、処理をステップ123に進める。具体的には、ユーザIDをキーにしてユーザマスタを参照して、当該ユーザの機密ランクと所属組織コードを取得し、文書管理DBの検索では検索条件情報と機密ランクとを用いて、検索条件情報に合致し、かつ当該ユーザIDに対応する機密ランク以下のドキ
ュメントを検索する。
【0031】
つまり例えば当該ユーザの機密ランクがCランクであれば、文書の機密ランクがCランク乃至Fランクのドキュメントを検索する。ドキュメントの作成者氏名が検索条件に含まれる場合は、氏名でユーザマスタを参照してユーザIDを取得してユーザID含めた検索条件で文書管理DBを検索する。なお、ドキュメントをダウンロードして閲覧しようとしているユーザのユーザIDでユーザマスタを参照して、閲覧しようとしているユーザの機密ランクと所属組織コードを取得し、この所属組織コードで図14に示す組織マスタを参照してドキュメントを作成したユーザの所属組織と、ドキュメントを
ダウンロードして閲覧しようとしているユーザの所属組織との関係を判定して閲覧可否を決定することができる。
【0032】
ステップ123では、文書管理サーバ100はRAM203のワークエリアに記憶しているドキュメントの書誌情報を用いて、検索条件にマッチするドキュメントの一覧画面(検索結果一覧)をクライアント200に表示するための画面情報を作成してRAM203のワークエリアに記憶する。
ステップ124では、文書管理サーバ100は作成した検索結果一覧用の画面情報をクライアント200に送信する。
【0033】
ステップ104では、文書管理サーバ100から検索結果一覧用の画面情報を受信したクライアント200は画面に図8の画面G100に検索結果一覧を表示する。
【0034】
ステップ105では、クライアント200は検索結果一覧画面よりダウンロードするドキュメントを選択して、文書管理サーバ100へ選択されたドキュメントを特定可能な選択情報をユーザIDと共に送信する。
【0035】
ステップ125では、文書管理サーバ100のCPU201はユーザのログイン時のユーザIDとクライアントマシンを特定できる固有のID(Macアドレス等)とを関数操作したものに変換し、暗号化キーを作成してRAM203のワークエリアに記憶し、処理をステップ126に進める。
【0036】
ステップ126では、文書管理サーバ100のCPU201は暗号化処理中画面(図8の画面G101)をクライアント200に表示させるための画面情報をクライアント200に送信し、選択情報で特定されたドキュメントをRAM203のワークエリアに記憶して暗号化処理を行う。
ここで文書管理サーバ100のCPU201は、クライアント端末に暗号化文書を送信する。
暗号化前のドキュメントは削除する。なお暗号化処理の詳細フローチャートは図5に記載されており、後で説明する。
ステップ106では、クライアント200のCPU201は文書管理サーバから暗号化文書を受信する。
【0037】
クライアント200のCPU201は受信した文書をRAM203のワークエリアに記憶し、ステップ107において、受信した文書をページ単位で復号化する事により閲覧処理を行い、閲覧する事が可能になる。ステップ107の閲覧の詳細フローチャートは図7に記載されており、詳細は後で説明する。
【0038】
次に図4は本発明の実施形態の文書管理システムの復号化システムの基本的な処理フローを示す図である。復号化システムはクライアント200から文書管理サーバ100にドキュメントをアップロードする際の処理である。
【0039】
図4のステップ201〜ステップ203は、クライアント200のCPU201の制御の元で実行する処理であり、ステップ221〜ステップ224は、文書管理サーバ100のCPU201の制御の元で実行する処理である。
【0040】
まずステップ201では、クライアント200は、文書管理サーバ100から受信した画面情報を用いて表示される操作画面(ログイン)を介して、ユーザID、及びパスワード等からなるログイン情報を文書管理サーバ100へ送信する。
【0041】
ステップ221では、文書管理サーバ100はユーザ情報をもとに、図3のステップ121と同様の処理でユーザの認証を行う。ユーザIDと対応するパスワードが一致したら、ログイン許可のメッセージ情報をクライアント200へ送信する。
ステップ202では、クライアント200はメッセージ情報を表示し処理をステップ203に進める。
【0042】
ステップ203では、操作画面で所望のすでに暗号化されているドキュメントを選択し、選択した暗号化ドキュメントと暗号化ドキュメントの書誌情報(機密ランク、ドキュメント種別、作成者ID又は改訂者ID、保管期限年月日)をユーザIDと共に文書管理サーバ100へ送信する。
【0043】
ステップ222では、文書管理サーバ100はクライアント200より送信された暗号化ドキュメントと書誌情報とユーザIDとを受信してRAM203のワークエリアに記憶し、処理をステップ223に進める。
【0044】
ステップ223では、RAM203のワークエリアに記憶した暗号化ドキュメントの復号化処理を行う。復号化処理の詳細フローチャートは図6に記載されており、後で説明する。
【0045】
ステップ224では、文書管理サーバ100は復号化されたドキュメントを登録する。具体的には復号化されたドキュメントを所定のフォルダに移動するとともに、書誌情報を文書管理DBに登録する。復号化されたドキュメントが既に存在する場合は、所定のフォルダでリプレースされ、文書管理DBの保存されたフルパスとファイル名とを含む書誌事項を上書きする。以上で図4のフローチャートの説明を終わる。
【0046】
次に、図5は本発明の実施形態の文書管理システムの図3の暗号化システム中の文書管理サーバ100が行う暗号化処理(図3のステップ126)の詳細なフローチャートを示す図である。
図5のフローチャートでステップ301〜ステップ331は文書管理サーバ100のCPU201の制御の元で実行する処理である。
【0047】
まず、ステップ301では、ステップS125で作成した暗号キーをRAM203のワークエリアからCPU201の所定のレジスタに移動し、処理をステップ302に進める。
【0048】
ステップ302では、RAM203のワークエリアを参照し、ドキュメントを要求したユーザのユーザIDをキーにしてユーザマスタを参照し、当該ユーザの所属するドメインを取得し、暗号化処理を実行するか判断する。暗号化しない場合は文書管理サーバ100と当該ユーザの使用するクライアント200が同一ドメインにある場合であり、暗号化しないドメインのときは、処理をステップ320に進める。
【0049】
ステップ320では、文書管理サーバ100はクライアント200にオリジナルファイルのダウンロードダイアログを表示させるための画面情報を、クライアント200に送信する。クライアント200は受信した画面情報を用いてオリジナルファイルのダウンロードダイアログを表示し処理を終了する。暗号化するドメインのときは(文書管理サーバ100と当該ユーザの使用するクライアント200が同一ドメインにある場合)、処理をステップ303に進める。
【0050】
ステップ303では、文書管理サーバ100は選択されたドキュメントの拡張子をキーにして図15に示す文書管理マスタを参照し暗号化区分をRAM203のワークエリアに記憶して処理をステップ304に進める。
【0051】
ステップ304では、RAM203のワークエリアに記憶している暗号化区分を用いて暗号化対象の拡張子であるかを判断し、暗号化対象の拡張子でないときは、処理をステップ320に進める。
【0052】
ステップ320では、文書管理サーバ100はクライアント200にオリジナルファイルのダウンロードダイアログを表示させるための画面情報を、クライアント200に送信する。クライアント200は受信した画面情報を用いてオリジナルファイルのダウンロードダイアログを表示し処理を終了する。
ステップ304で暗号化する拡張子と判断したときは、処理をステップS305に進める。
【0053】
ステップ305では、文書管理サーバ100のCPU201はクライアント200に暗号化処理中を示すサブウィンドウを表示させるための画面情報を、クライアント200に送信する。クライアント200は受信した画面情報を用いて暗号化処理中を示すサブウィンドウ(図8のG101)を表示し、処理をステップS306に進める。
【0054】
ステップ306では、ドキュメント(文書)をCPU201のレジスタで記憶している暗号化キーを用いて暗号化対象のドキュメントをページ単位で暗号化しページ単位の暗号化データをこの暗号化データのバイト数と共にRAM203のワークエリアに記憶する。
【0055】
さらに全ページを暗号化した後で、各ページの開始アドレスと終了アドレスとを用いて合体した場合のアドレスを計算し、暗号化したドキュメント本体の前にヘッダ情報(暗号化したドキュメント(文書)のページ毎のバイト数を用いて、各ページの番号とこのページの暗号データが始まる暗号化ファイルの最初のアドレスとこのページの暗号化データが終わる最後のアドレスとを記録した一種のジャンプテーブルである目次情報)を付加して暗号化ドキュメント(文書)を作成する。
【0056】
さらに暗号化フォルダに暗号化ドキュメント(文書)を記憶し、図3の125で作成した暗号化キーを不図示の暗号化キーテーブルに保存し処理をステップ307に進める。
【0057】
ステップ307では、暗号化ファイルの存在を確認し、暗号化ファイルが無く暗号化に失敗した場合(暗号化エラー)又はタイムアウト(所定時間内に暗号化が完了しないエラー)が生じた場合は処理をステップS330に処理を進める。
【0058】
ステップ330では、発生したエラー内容(エラーの種類、発生年月日時刻、ユーザID、ドキュメント名称)を含むエラーログファイルを出力し、ステップ331に処理を進める。
【0059】
ステップ331では、発生したエラーが暗号化エラーのときは、文書管理サーバ100は、クライアント200に暗号化エラー画面を表示させるための画面情報を、クライアント200に送信し、クライアント200は受信した画面情報を用いて暗号化エラー画面(図8のG105)を表示する。タイムアウトエラーのときは、文書管理サーバ100は、クライアント200にタイムアウトエラー画面を表示させるための画面情報を、クライアント200に送信し、クライアント200は受信した画面情報を用いてタイムアウトエラー画面(図8のG103)を表示して処理を終了する。
ステップ307で暗号化ファイルが有るときは処理をステップ308に進める。
【0060】
ステップ308では、暗号化フォルダにコピーしたドキュメント(暗号化後容量がゼロになっている不要なファイル)を削除して処理をステップ309に進める。
【0061】
ステップ309では、文書管理サーバ100は、クライアント200に暗号化ファイルのダウンロード画面を表示させるための画面情報を、クライアント200に送信し、ステップ310に処理を進める。クライアント200は受信した画面情報を用いて暗号化ファイルのダウンロード画面(図8のG102)を表示する。
【0062】
ステップ310では、文書管理サーバ100は、クライアント200においてダウンロードボタンを押下(クリック)した旨の情報を、クライアント200から受信した場合、処理をステップ311に進める。
【0063】
ステップ311では、文書管理サーバ100は、クライアント200にダウンロードダイアログを表示させるための画面情報を、クライアント200に送信し、クライアント200からの応答を待つ。クライアント200は受信した画面情報を用いて画面にダウンロードダイアログ(図8のG104)を表示する。
【0064】
文書管理サーバ100は、折り返しクライアント200から「開く」ボタン又は「保存」ボタンを押下した旨の情報を受信すると、暗号化ドキュメントのクライアント200へのダウンロードを開始し、ダウンロードが完了したら、処理をステップ312に進める。
【0065】
ステップ312では、文書管理サーバ100は、暗号化フォルダに残った暗号化ドキュメントを削除し、暗号化ドキュメントのダウンロード画面(図8のG102)を閉じる旨の画面情報をクライアント200に送信し、クライアント200はダウンロード画面を閉じる。以上で図5の説明を終わる。
【0066】
図6は本発明の実施形態文書管理のシステムの図4の復号化システム中の文書管理サーバ100の復号化処理(図4のステップ223)の詳細を示すフローチャートである。
図6のフローチャートでステップ401〜ステップ441は文書管理サーバ100のCPU201の制御の元で実行する処理である。
【0067】
まず、ステップ401では、文書管理サーバ100は、ファイルの名称をキーにして文書管理DBを参照し、アップロードされたドキュメントが新規追加であるか、更新(バージョン追加)であるかを判定して、判定結果をRAM203のワークエリアに記憶して、処理をステップ402に進める。
【0068】
ステップ402では、文書管理サーバ100は、ファイルの拡張子をキーにして文書管理マスタを参照して暗号化区分を取得し、RAM203のワークエリアに記憶してステップ403に処理を進める。
【0069】
ステップ403では、文書管理サーバ100は、RAM203のワークエリアに記憶した暗号化区分を用いて復号化対象のドキュメントか判断し、復号化対象のドキュメントと判断した場合は処理をステップ404に進める。他方、復号化対象外の拡張子のときは処理をステップ420に進める。
【0070】
ステップ420では、文書管理サーバ100は、文書管理サーバ100へのドキュメントの登録処理(ドキュメントを所定のフォルダに記憶し、文書管理DBに書誌情報を登録する処理)を行い処理をステップS414に進める。
【0071】
ステップ404では、文書管理サーバ100は、クライアント200に一覧画面(図9のG200)を表示させるための画面情報を、クライアント200に送信し、クライアント200は受信した画面情報を用いて一覧画面(図9のG200)を表示してこの処理を終了する。
【0072】
他方、ステップ403で復号化対象の拡張子と判断した場合、ステップ404では、文書管理サーバ100は、クライアント200に復号化処理中を示す画面(図10のG204)を表示させるための画面情報を、クライアント200に送信し、クライアント200は、受信した画面情報を用いての復号化処理中を示す画面(図10のG204)を表示する。
【0073】
この間、文書管理サーバ100は、ステップ125と同様の方法でクライアント200のログイン時のユーザIDとクライアントマシンを特定できる固有のID(Macアドレス等)とを関数操作して作成した暗号化キーを用いてサーバの暗号化キーテーブルを参照し、同一暗号化キーが記憶されていたらこの暗号化キーを用いてドキュメントの復号化処理を行い、処理をステップ405に進める。
【0074】
ここで復号化処理が成功した場合は、内容が空の「.success」ファイルを作成する。他方、復号化処理が失敗した場合は、エラー内容(例えば、拡張子とドキュメントの内容が一致しない等のエラー内容)を含む「.error」ファイルを作成する。
ステップ405では、文書管理サーバ100は、復号化された所定のドキュメントを復号化フォルダにコピーして、処理をステップ406に進める。
【0075】
ステップ406では、文書管理サーバ100は、拡張子が「.success」のファイル、又は拡張子が「.error」のファイルの存否を判断し、拡張子が「.success」のファイルも拡張子が「.error」のファイルも共に無いときは、ステップ440に処理を進める。
ステップ440では、処理が異常終了した旨のエラーログファイルを出力し、処理をステップ441に進める。
【0076】
ステップ441では、文書管理サーバ100は、クライアント200にタイムアウトエラー画面(図10のG206)を表示させるための画面情報を、クライアント200に送信し、クライアント200は受信した画面情報を用いてタイムアウトエラー画面(図10のG206)を表示して、処理をステップ433に進める。
【0077】
ステップ433では、クライアント200はこのタイムアウトエラー画面の「戻る」ボタンの押下を検知した旨のメッセージを文書管理サーバ100に送信し、文書管理サーバ100は「戻る」ボタンの押下を検知した旨のメッセージを受信すると処理をステップ410に進める。
【0078】
ステップ410では、文書管理サーバ100は、クライアント200に一覧画面(図9のG200)を表示させるための画面情報を、クライアント200に送信し、クライアント200は受信した画面情報を用いての一覧画面(図9のG200)を表示してこの処理を終了する。
他方拡張子が「.success」のファイル又は拡張子が「.error」のファイルのいずれか一方があるときは、ステップ407に処理を進める。
【0079】
ステップ407では、文書管理サーバ100は、拡張子が「.success」のファイルがある場合は処理をステップ408に進め、拡張子が「.error」のファイルのファイルがある場合は処理をステップ430に進める。
ステップ408では、文書管理サーバ100は、拡張子が「.success」のファイルを削除して処理をステップ409に進める。
【0080】
ステップ409では、文書管理サーバ100は、復号化したドキュメントのファイルを所定のフォルダに記憶し、書誌的情報を文書管理DBに登録する。ステップ407で拡張子が「.error」のときは、
【0081】
ステップ430では、拡張子が「.error」のファイルの内容をRAM203のワークエリアに記憶して、拡張子が「.error」のファイルを削除して、処理をステップ431に進める。
ステップ431では、RAM203のワークエリアに記憶したエラーの内容を用いてエラーログファイルを出力して処理をステップ432に進める。
【0082】
ステップ432では、文書管理サーバ100は、クライアント200にエラー画面(図10のG207)を表示させるための画面情報を、クライアント200に送信し、クライアント200は受信した画面情報を用いてエラー画面(図10のG207)を表示してステップ433に処理を進める。
【0083】
ステップ433では、クライアント200はこのエラー画面の「戻る」ボタンの押下又はタイムアウト画面の「戻る」ボタンの押下を検知した旨のメッセージを文書管理サーバ100に送信し、文書管理サーバ100は「戻る」ボタンの押下を検知した旨のメッセージを受信すると処理をステップ410に進める。
【0084】
ステップ410では、文書管理サーバ100は、クライアント200に一覧画面(図9のG200)を表示させるための画面情報を、クライアント200に送信し、クライアント200は受信した画面情報を用いて一覧画面(図9のG200)を表示してこの処理を終了する。
【0085】
次に図7は本発明の実施形態における文書管理のシステムにおいて、図5で説明した文書管理サーバが暗号化したドキュメント(文書)をクライアント(閲覧端末)200が受信し、閲覧処理をする詳細なフローを示す図である。
図7のフローチャートでステップ701〜ステップ724はクライアント端末200のCPU201の制御の元で実行する処理である。
まず、ステップ701でクライアント200のCPU201は文書管理サーバ100とセッションの確立を確認する。
ここでクライアント200のCPU201は文書管理サーバと通信確立中かを判定する。
【0086】
セッションが確立できていないときは、閲覧処理を終了する。つまりここでセッションが無い場合は、復号化処理を一切実行しない。セッションの確立を閲覧の前提とすることで、セッションの確立できない環境化において既にダウンロード済みの暗号化処理された文書の復号化処理を防止し、セキュリティを高めることができる。セッションを確立できた場合は処理をステップ702に進め、閲覧処理(ページ表示)を進める。セッション確立の確認方法はLANケーブルが抜けた場合に、クライアント端末が認識する方法と同じといった公知技術を用いる。
【0087】
ステップ702では、クライアント200のCPU201はクライアントの暗号化キーをもとに文書管理サーバ100の暗号化キーテーブルを参照し、同一暗号化キーが存在しなかった場合は閲覧処理を終了する。つまりここで暗号化キーが無い場合は、復号化処理を一切実行しない。存在したときはステップ703に処理を進める。
ステップ703ではクライアント200のCPU201は一時ファイルを自動で作成する。更にクライアント200のCPU201は一時ファイルを記憶する。
ここでクライアント200のCPU201は文書管理サーバの現在のシステム時刻を問い合わせる。
ここで文書管理サーバ100のCPU201は文書管理サーバの現在のシステム時刻を回答する。
【0088】
一時ファイル(図16の1601)の内容は、ドキュメント番号、ドキュメントはドキュメントのヘッダ情報より取得し、ユーザIDは文書管理サーバ100のユーザマスタより所得し、アクセス日、アクセス時間はクライアント200が文書管理サーバ100にアクセスした日、アクセスした(問い合わせた)時間を文書管理サーバ100のシステム時間(システム時刻)より取得し、有効時間は文書管理サーバ100の初期設定ファイル(図16の1603)より設定されている情報(有効期限)を取得し、現在の文書管理サーバ100のシステム時間にプラスして、一時ファイルをクライアント200のRAM203のワークエリアに記憶し、処理を704に進める。
クライアント200のCPU201は初期設定ファイルを予め記憶する。
アクセス時間とは文書管理サーバ100のシステム時間(システム時刻)を端末からサーバにアクセスした(問い合わせた)時に読み込んだものである。
【0089】
有効期限(所定の時間)とは初期設定ファイルに予め書き込まれている時間であり、セッションが切れていても(ステップ705の無)、有効時間(所定の時刻)までにセッション(通信)が再度確立されれば、その後の文書閲覧(復号化処理)を許可をする為の許容時間であり、例えば10分(600秒)の様な値を使用する。
【0090】
すなわち有効時間(所定の時刻)はアクセス時間(文書管理サーバのシステム時刻)に有効期限(所定の時間)を足した時間であり、アクセス時間が2009年12月25日15:10である場合は、有効期限(所定の時間)10分を足した2009年12月25日15:20が有効時間(所定の時刻)となる。
ここでクライアント200のCPU201は有効時間(所定の時刻)を決定する。
【0091】
サーバとのセッションが切れたときに一時ファイルの有効時間(所定の時刻)を参照(ステップ721)するため、ここで、一時ファイルを作成する必要がある。
一旦ドキュメントをクライアントにて表示した後に一時ファイルの内容を更新(ステップ707)するため、ここで、一時ファイルを作成する必要がある。
【0092】
ステップ704ではクライアント200のCPU201はドキュメントのヘッダ情報より取得したページ毎のアドレス情報(ページ毎の開始アドレスと終了アドレス)と設定されたページ数をRAM203のワークエリアに記憶する。
ここでクライアント200のCPU201は最初のページの暗号化データをページ毎のアドレス情報に基づいて、ページ毎に復号化する。
【0093】
さらにRAM203のワークエリアに記憶する。次にクライアント200のCPU201はページ毎に復号化したドキュメント(文書)の最初のページ(図11のG300)をクライアント端末の表示画面にページ表示し、処理をステップ705に進める。
【0094】
ステップ705でクライアント200のCPU201は暗号化ドキュメントのヘッダ情報より取得したページ毎のアドレス情報と暗号化キーとを用いて現在表示している次のページ分の復号化処理(先読み復号化処理)を行う。クライアント200のCPU201は復号化したドキュメントのデータ(復号化された次ページのデータ)をRAM203のワークエリアに記憶し、処理をステップ706に進める。
ステップ706では、クライアント200のCPU201は、文書管理サーバ100とのセッション(通信)を再度確認する。
ここでクライアント200のCPU201は文書管理サーバと通信確立中かを判定する。
【0095】
このステップ706でのセッションの確認は、ここから先、復号化した文書を一旦表示したあとに、継続してサーバとのセッションの確認を行うためのものである。セッションが確立していないときは、ステップ720に進める。セッションが確立している場合は処理をステップ707に進める。
【0096】
ここでのセッション確認はステップ701での確認とは異なる。ここでのセッション確認はステップ702で暗号化キーの参照が完了した後、セッションがあるときにステップ703にて作成した一時ファイルの有効時間の更新(ステップ707)を行う。尚、ステップ701と同じようにセッション確立の確認方法はLANケーブルが抜けた場合に、クライアント端末が認識する方法と同じといった公知技術を用いる。
【0097】
ステップ720では、文書管理サーバ100とのセッションが切れている間、クライアント200で表示しているドキュメントに対してセキュリティを確保する為に、クライアント200で表示しているドキュメントに対して公知技術を用いて、以下に対しての制限をするように制御をする。
【0098】
クライアント200のCPU201は、画面のキャプチャ機能(Print Screenキーや画面キャプチャソフトでの画面のハードコピー等)を禁止する。
クライアント200のCPU201は、ドキュメントの編集機能(メニュー一覧から保存、コピーを選択不可にする)を制御する、
クライアント200のCPU201は、ドキュメント上にてドラッグしての文字列のコピー、文字や記号、図などの追加、削除等)を禁止する。
クライアント200のCPU201は、ドキュメントの印刷機能(印刷ボタンを消す、メニュー一覧から印刷を選択不可にする等)を禁止する。
クライアント200のCPU201は、ページ遷移(画面スクロールやページ送り等)を禁止する。
その他、上記機能に準ずる複製、編集、印刷を実現する機能を禁止する。
つまりここでクライアント200のCPU201は現在表示している文書のキャプチャ、複製、編集、印刷、ページ遷移といった操作停止指示をする。
【0099】
ステップ721では、クライアント200のCPU201は、クライアント200のRAM203のワークエリアに記録されている一時ファイルの有効時間(所定の時刻)とクライアント200のCPU201がクライアント200の現在のシステム時間(システム時刻)を取得し比較する。
【0100】
ここでクライアント端末200のCPU201は有効時間(所定の時刻)とクライアント端末(閲覧端末)のシステム時刻のどちらが大きい(遅い)かを判定する。
【0101】
例えば、一時ファイルの有効時間が2009年12月25日15時20分で、現在のシステム時間(システム時刻)が2009年12月25日15時10分であれば有効時間が大きい(遅い)と判定する。有効時間が大きいときは、ステップ722に処理を進める。有効時間が小さい(早い)場合は、処理をステップ1915に進める。
【0102】
ステップ721でのシステム時刻はクライアント端末に内蔵されている時刻であり、クライアント200のCPU201は公知技術により、内蔵時刻を確認する。
【0103】
ステップ722では、クライアント200のCPU201は、文書管理サーバ100とのセッションを再度確認する。セッションが確立していないときは、ステップ721に戻る。有効時間内であればステップ721、ステップ722の処理を繰り返し、セッションの確認を継続して行う。
ここでクライアント200のCPU201は文書管理サーバと通信確立中かを判定する。
セッションが確立している場合は処理をステップ723に進める。
【0104】
ステップ723では、クライアント200のCPU201は現在閲覧している文書の文書ヘッダファイル(図16の1602)のドキュメント番号とドキュメント名をRAM203のワークエリアに保存されている一時ファイルのドキュメント番号とドキュメント名を比較して確認する。
【0105】
一時ファイルと文書ヘッダファイルを比較して、その両方に記録されているドキュメント番号、ドキュメント名のうち、いずれかが違う場合は、処理をステップ714に進み、一時ファイルを削除する。ドキュメント番号、ドキュメント名の両方とも同じ場合は処理をステップ724へ進める。
【0106】
ステップ724では、クライアント200のCPU201は、ステップ720にて行ったクライアント200で表示しているドキュメントに対して、公知技術を用いて操作停止指示を解除する。
ステップ707では、クライアント200のCPU201は一時ファイルの有効時間を更新する。
ここでクライアント200のCPU201は文書管理サーバの現在のシステム時刻を問い合わせる。
ここで文書管理サーバ100のCPU201は文書管理サーバの現在のシステム時刻を回答する。
【0107】
更新内容は、文書管理サーバ100のシステム時間をクライアント200のRAM203のワークエリアに保存されている一時ファイルのアクセス時間にセットし、文書管理サーバ100の初期設定ファイルから読み出した有効期限(例えば10分)を文書管理サーバ100のシステム時間にプラスし、一時ファイルの有効時間を更新し処理をステップ1908に進める。
【0108】
例えば、更新前の一時ファイルの有効時間が2009年12月25日15時20分で、現在の文書管理サーバ100のシステム時間が2009年12月25日15時30分であれば、更新後の一時ファイルの有効時間は2009年12月25日15時40分となる。
ここでクライアント200のCPU201は有効時間(所定の時刻)を決定する。
ここでクライアント200のCPU201は有効時間(所定の時刻)を更新する。
【0109】
ステップ708では、クライアント200のCPU201はドキュメント閲覧画面でのページ指定入力の有無の判定を行い、ページ指定入力有り(図11のG300のGOボタンが押下された)のときはステップ709に処理を進め、他方、ステップ708でページ指定入力が無いと判定したときは、処理をステップ711に進める。
ステップ709では、クライアント200のCPU201は指定されたページの復号化処理を行う。処理をステップ710に進める。
ステップ710では、クライアント200のCPU201は指定ページの表示指示し、指定ページを表示する。
【0110】
ステップ711では、クライアント200のCPU201は次ページ指定入力の有無を判定し、次ページ指定入力有り(図11のG300の次ページボタンが押下された)のときは、処理をステップ712に進め、ステップ711で次ページ指定入力無しのときは、ステップ713の閲覧終了判定へ処理を進める。
ステップ712では、クライアント200のCPU201は次ページの表示指示し、次ページを表示する。
【0111】
ステップ713では、閲覧終了の入力の有無を判定し、閲覧を終了する旨の入力がないときは、ステップ705の次ページ復号化の処理へ戻る。閲覧終了の入力があると判定した場合は、処理をステップ714に処理を進める。
【0112】
ステップ714では、クライアント200のCPU201は、ステップ1903にて作成したクライアント200のRAM203のワークエリアに作成した一時ファイルの削除を行い、処理をステップ715の終了(現在表示されている文書の表示を消す)へ進める。
以上で図7の説明を終わる。
図16の1601の一時ファイルは図7で説明した閲覧処理中のステップ703で自動作成され、一時ファイル内に記録される内容はRAM203が記憶する。
【0113】
図16の1602の文書ヘッダファイルは図3で説明した文書保存中のステップ106でクライアント端末が受信し、文書ヘッダファイル内に記録される内容はRAM203が記憶する。
図16の1603の初期設定ファイルはクライアント端末が保存し、初期設定ファイルに記録される内容はRAM203または外部メモリが記憶する。
[その他の実施例]
【0114】
本実施形態における図3乃至図7のフローチャート及び,図8乃至図11の画面に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【0115】
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【0116】
この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【0117】
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,DVD−ROM,磁気テープ,不揮発性のメモリカード,ROM,EEPROM,シリコンディスク等を用いることができる。
【0118】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0119】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0120】
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
さらに、本発明を達成するためのソフトウェアによって表されるプログラムをネットワーク上のサーバ,データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【符号の説明】
【0121】
100 文書管理サーバ
200 クライアント端末
201 CPU
202 ROM
203 RAM
204 システムバス
205 入力コントローラ
206 ビデオコントローラ
207 メモリコントローラ
208 通信I/Fコントローラ
209 キーボード
201 CRT
211 外部メモリ(ハードディスク等)
300 通信回線
【技術分野】
【0001】
本発明は、文書管理システム、文書管理方法、及びそのプログラムに関し、特にネットワークを介して、閲覧したいドキュメントをサーバにて暗号化して、端末にダウンロードした後、端末が復号化してドキュメントを閲覧することができる文書管理システム、文書管理方法及びそのプログラムに関する。
【背景技術】
【0002】
文書管理システム内では、アクセス制限によりドキュメントのセキュリティは確保される。しかしながら、一度ドキュメントがクライアントによりダウンロードされると、そのドキュメントへの何らセキュリティは掛けられなくなってしまう。そのため、ドキュメントをダウンロードした後に、不正に配布されてしまうと、文書管理システム上のセキュリティが担保されない。その1つの例として、特許文献1では認証情報とワンタイムパスワード生成手段によって生成されたワンタイムパスワードとを比較することにより前記利用者が正当な利用者であるか否かの認証判定を行なう認証手段と、該認証手段によって前記
【0003】
利用者が正当な利用者であることを認証した場合に前記暗号化ファイルを復号化する復号鍵を前記他の端末装置に送信し、前記他の端末装置に前記暗号化ファイルの復号化を実行させる復号鍵送信手段をさらにそなえて構成されていることを特徴とする電子ファイル管理システムが開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2007−286935
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1に記載の電子ファイル管理システムおよび電子ファイル管理プログラムにおいては、認証後にUSBメモリおよび携帯型記憶装置に復号化されたファイルを保存できてしまう。
【0006】
更に閲覧開始後に、パソコンを持って別の場所に移動する時や、一時的にネットワークケーブルが抜けてしまうなど、サーバとのセッション(通信)が一時的に切れてしまうといった場合には、これまで行っていた閲覧処理を終了するか継続すべきかの判断をセキュリティや操作性の面から考えると、その判断が難しいといった問題が生じる。
【0007】
本発明は上記の課題を解決するためになされたものであり、閲覧時にはページ単位で復号化して、必要最小限のページ以外は復号化しないことにより閲覧時の表示レスポンスを確保しつつ、高度なセキュリティを確保でき、かつ、クライアント端末において文書の閲覧開始後であっても、セッションが一時的に切れてしまった場合に、設定した有効時間内にセッションが再度確立できれば、これまでおこなった閲覧操作が継続でき、表示されているページ以外のページも閲覧を許可する仕組みを提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明は、文書管理サーバと閲覧端末とが通信可能に構成された文書管理システムであって、前記文書管理サーバは、ページ毎のアドレス情報を含む暗号化された文書を送信する暗号化文書送信手段と、閲覧端末にシステム時刻を回答する回答手段と、前記閲覧端末は、前記暗号化された文書を受信する暗号化文書受信手段と、前記暗号化文書受信手段が受信した文書をページ毎のアドレス情報に基づいて、ページ毎に復号化する復号化手段と、前記ページ毎に復号化された文書をページ毎に表示するページ表示手段と、前記文書管理サーバにシステム時刻を問い合わせる問い合わせ手段と、前記文書管理サーバの前記システム時刻から、前記復号化手段のページ毎の復号化を許可する所定の時刻を決定する決定手段と、前記ページ表示手段が復号化された文書のページ表示をした後に、前記文書管理サーバと前記閲覧端末とが通信確立中であるかを判定する第1の判定手段と、前記第1の判定手段が、通信確立中ではないと判定した場合に、前記所定の時刻と閲覧端末のシステム時刻から、前記ページ表示手段が表示していないページの表示を許可するかを判定する第2の判定手段を備える事を特徴とする。
【0009】
また、前記閲覧端末は、前記ページ表示手段が表示するページの複製、編集、印刷といった操作の停止指示する操作停止指示手段を更に有し、前記第1の判定手段が、通信確立中ではないと判定した場合に、前記操作停止手段が操作停止指示する事を特徴とする。
【0010】
また、前記第2の判定手段が、前記所定の時刻が閲覧端末のシステム時刻よりも早いと判定した場合には、前記ページ表示手段にページ表示させない事を特徴とする。
【0011】
また、前記閲覧端末は、前記所定の時間を記憶する第1の記憶手段と前記決定手段が決定した所定の時刻を記憶する第2の記憶手段とを更に有し、前記決定手段は、前記所定の時間と前記問い合わせ手段が問い合わせた文書管理サーバのシステム時刻により、前記所定の時刻を決定する事を特徴とする。
【0012】
また、前記第2の判定手段が、前記所定の時刻が閲覧端末のシステム時刻より遅いと判定した場合には、前記問い合わせ手段は文書管理サーバにシステム時刻の問い合わせをし、前記第2の記憶手段が記憶する前記所定の時刻を更新する更新手段を更に有する事を特徴とする。
【発明の効果】
【0013】
本発明によれば、必要最小限のページ以外は復号化しないことにより閲覧時の表示レスポンスを確保しつつ、高度なセキュリティを確保でき、かつ、クライアント端末において文書の閲覧開始後であっても、セッションが一時的に切れてしまった場合に、設定した有効時間内にセッションが再度確立できれば、これまでおこなった閲覧操作が継続でき、表示されているページ以外のページも閲覧を許可することができる。
【図面の簡単な説明】
【0014】
【図1】本発明の文書管理システムのシステム構成を示す図である。
【図2】本発明の文書管理サーバとクライアントのハードウェア構成を示す図である。
【図3】本発明の実施形態のクライアント端末の文書ダウンロード処理を示すフローチャートである。
【図4】本発明の実施形態のクライアント端末の文書アップロード処理を示すフローチャートである。
【図5】本発明の実施形態の文書管理サーバのドキュメントの暗号化処理の詳細な処理フローを示す図である。
【図6】本発明の実施形態の文書管理サーバのドキュメントの復号化処理の詳細な処理フローを示す図である。
【図7】本発明の実施形態のクライアント端末の暗号化されたドキュメントの閲覧(復号化)処理の詳細な処理フローを示す図である。
【図8】クライアント端末の文書ダウンロード操作時の画面を示す図である。
【図9】クライアント端末の文書アップロード操作時の画面を示す図である。
【図10】クライアント端末の文書アップロード操作時の画面を示す図である。
【図11】文書閲覧中のクライアント端末の画面を示す図である。
【図12】文書管理DBの項目例を示す図である。
【図13】ユーザマスタの項目例を示す図である。
【図14】組織マスタの項目例を示す図である。
【図15】文書管理マスタの項目例を示す図である。
【図16】一時ファイル、文書ヘッダファイル、初期設定ファイルの項目例を示す図である。
【発明を実施するための形態】
【0015】
以下、図面を参照して、本発明の実施形態を詳細に説明する。図1は、本発明の実施の形態における文書システムのシステム構成を示す図である。文書管理サーバ100は通信回線300を介してクライアント端末200と通信可能に構成されている。文書管理サーバ100の外部メモリ211のハードディスクには各種のテーブルや印刷フォームが記憶されており、クライアント200から通信回線300を介して文書管理サーバ100にドキュメントの閲覧要求を送信し、文書管理サーバ100はドキュメントを暗号化してからクライアント200に送信する。
次に図2は、文書管理サーバ100及びクライアント200のハードウェアの概略構成を示す模式図である。
【0016】
CPU201は、システムバス204に接続される各デバイスやコントローラを統括的に制御する。また、ROM202あるいは外部メモリ211には、CPU201の制御プログラムであるBIOS(Basic Input / Output System)やオペレーティングシステムプログラム(以下、OS)や、文書管理サーバ100の各プログラムを実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。
【0017】
RAM203は、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して必要なプログラム等をRAM203にロードして、プログラムを実行することで各種動作を実現するものである。また、入力コントローラ205は、キーボード(KB)209や不図示のマウス等のポインティングデバイスからの入力を制御する。ビデオコントローラ206は、CRTディスプレイ(CRT)210等の表示器への表示を制御する。表示器はCRTだけでなく、液晶ディスプレイでも構わない。
【0018】
メモリコントローラ207は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク(HD)やフロッピー(登録商標)ディスク(FD)或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等の外部メモリ211へのアクセスを制御する。通信I/Fコントローラ208は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いたネットワーク通信等が可能である。
【0019】
外部メモリ211のハードディスクはオペレーティングシステムや図3〜図7のフローチャートで示されるアプリケーションプログラムや図8〜図11に示す各画面をクライアント200のディスプレイに表示させるためのアプリケーションプログラムの一部としての画面情報や、図12に示す文書管理DBや図13に示すユーザマスタ、図14に示す組織マスタ、図15に示す文書管理マスタ等の各データベースやテーブル、マスタファイルを記憶している。クライアント200では外部メモリ211のハードディスクの代わりにRAM203と兼用の不揮発性メモリを用いても良い。
【0020】
なお、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、CRT210上での表示を可能としている。また、CPU201は、CRT210上の不図示のマウスカーソル等でのユーザ指示を可能とする。
ここでテーブル及びマスタファイルについて説明する。
【0021】
図12に示す文書管理DBは、一意の文書番号(キー)、ドキュメント名、ドキュメント種別(企画書、稟議書、仕様書、議事録等のドキュメントの種別)、機密ランク(後述する)、作成者ID(ドキュメントの作成者のユーザID)、 保存場所(ドキュメントのフルパス+ドキュメントのファイル名)、作成日(ドキュメントの作成日)、改訂日、改訂者ID(ドキュメントの最後の改訂者のユーザID)、保管期限年月日(ドキュメントの保管期限、99999999は永年保管)の各項目を記憶している。文書管理DBの機密ランクは、後述するユーザマスタの機密ランクが文書管理DBの機密ランクと等しいか又は高ランクの場合にアクセス可能であることを示す。例えば文書管理DBの機密ランクSは、ユーザマスタの機密ランクがSランクの人のみがアクセス可能であり、書管理DBの機密ランクCはユーザマスタの機密ランクがSランク乃至Cランクの人がアクセス可能であることを示している。機密ランクの実際のデータはSランクが7、Aランクが6、Bランクが5、Cランクが4、Dランクが3、Eランクが2、Fランクが1として記憶される。なお、文書管理DBの機密ランクがFランク(1)である場合、ユーザマスタのFランクの人がアクセスできるため、このドキュメントが機密でない一般書類であることを意味する。
【0022】
図13に示すユーザマスタは、一意のユーザID(キー項目)、氏名、所属組織コード、機密ランク、職位、電子メールアドレス、内線電話番号、所属ドメインの各項目を記憶している。職位は例えばSが役員以上、Aが事業部長、Bが本部長又は相当職、Cが部長又は相当職、Dは課長又は相当職、Eが課長代理又は相当職、Fが一般職であることを示す。機密ランクの実際のデータは文書管理DBと同様にSランク乃至Fランクに対して7乃至1を記憶する。機密ランクはどのランクの機密書類にアクセスできるかを示し、例えばS(7)は全社の機密書類にアクセス可能、Aは自己が属する事業部の機密書類にアクセス可能、Bは自己が属する本部の機密書類にアクセス可能、Cは自己が属する部の機密書類にアクセス可能、Dは自己が属する課の機密書類にアクセス可能、Eは自己が作成した機密書類にアクセス可能、Fは機密書類にアクセスできないことを意味する。所属ドメインはユーザのPCが接続されているネットワークのドメインを示す。
【0023】
図14に示す組織マスタは、一意の組織コード(キー)、組織名称、組織ランク(5乃至1で上位組織ほど数字が大きくなる)、組織長ユーザID(ライン長のユーザID)、上位組織コード1(その組織の1つ上のレベルの組織コード)、上位組織コード2(その組織の2つ上のレベルの組織コード)、上位組織コード3(その組織の3つ上のレベルの組織コード)、上位組織コード4(その組織の4つ上のレベルの組織コード)、組織改編年月日(その組織が始まった年月日)、組織廃止年月日(その組織を廃止した年月日)、旧組織コード(組織変更の場合の旧組織の組織コード)の各項目を記憶している。組織ランクは例えば事業部は5、本部は4、部は3、課は2、係は1を意味する。上位組織コードは例えば課の場合、上位組織コード1は課が含まれる部の組織コード、上位組織コード2は課が含まれる本部の組織コード、上位組織コード3は課が含まれる事業部の組織コードを示す。
【0024】
図15に示す文書管理マスタは、拡張子毎の暗号化の有無を記憶しており、ドキュメントのファイル名の末尾(.より後ろ)に付ける拡張子(キー項目)と暗号化区分(暗号化要の場合1:、暗号化不要の場合:0)とを記憶している。
【0025】
次に文書管理システムの暗号化・復号化システムの基本的な処理フローについて、図3を用いて説明する。図3は本発明の実施形態の文書管理システムにおいてクライアント端末から閲覧をしたい文書のダウンロード要求を文書管理サーバに送信し、文書管理サーバは受信したクライアントから閲覧要求された文書を暗号化し、クライアント端末に暗号化した文書を送信し、クライアント端末は暗号化された文書を受信(ダウンロード)する場合の基本的な処理フローを示す図である。
【0026】
図3のステップ101〜ステップ107は、クライアント200のCPU201の制御の元で実行する処理であり、ステップ121〜ステップ126は、文書管理サーバ100のCPU201の制御の元で実行する処理である。
【0027】
まず、ステップ101では、クライアント200は、文書管理サーバ100から提供される操作画面を介して、ユーザID、パスワード、及びユーザの属するドメイン名を特定する情報からなるログイン情報を文書管理サーバ100へ送信する。
【0028】
ステップ121では、文書管理サーバ100は受信したログイン情報をRAM203のワークエリアに記憶し、ログイン情報のユーザIDをキーとして、ユーザマスタを参照し、ユーザIDとパスワードとが一致するかのユーザの認証を行う。ユーザIDとパスワードとが一致しない場合、文書管理サーバ100からエラーメッセージをクライアント200に送信し、クライアント200はログイン許可メッセージ受信してエラーメッセージを表示後、再度ユーザIDとパスワードと入力して文書管理サーバ100に送信する。ユーザIDとパスワードとが一致した場合、文書管理サーバ100からログイン許可メッセージと操作画面をクライアント200に表示させるための操作画面情報とをクライアント200に送信する。
ステップ102では、クライアント200はログイン許可メッセージ受信し、処理をステップ103に進める。
【0029】
ステップ103では、クライアント200は文書管理サーバ100から受信した操作画面情報を用いて表示される操作画面を介して、ドキュメントの検索依頼情報(ユーザIDと検索条件情報を含み、検索条件情報は、ドキュメントの名称又はその一部、ドキュメントの作成者氏名、ドキュメントの作成年月日等の少なくともいずれか1つ含む)を文書管理サーバ100へ送信する。
【0030】
ステップ122では、文書管理サーバ100は、クライアント200から受信した検索依頼情報に含まれるドキュメントの検索条件情報を用いて文書管理DBの検索を行い、検索条件に一致したドキュメントの書誌情報(ドキュメント番号とドキュメント名称、作成者、改訂年月日等)をRAM203のワークエリアに記憶し、処理をステップ123に進める。具体的には、ユーザIDをキーにしてユーザマスタを参照して、当該ユーザの機密ランクと所属組織コードを取得し、文書管理DBの検索では検索条件情報と機密ランクとを用いて、検索条件情報に合致し、かつ当該ユーザIDに対応する機密ランク以下のドキ
ュメントを検索する。
【0031】
つまり例えば当該ユーザの機密ランクがCランクであれば、文書の機密ランクがCランク乃至Fランクのドキュメントを検索する。ドキュメントの作成者氏名が検索条件に含まれる場合は、氏名でユーザマスタを参照してユーザIDを取得してユーザID含めた検索条件で文書管理DBを検索する。なお、ドキュメントをダウンロードして閲覧しようとしているユーザのユーザIDでユーザマスタを参照して、閲覧しようとしているユーザの機密ランクと所属組織コードを取得し、この所属組織コードで図14に示す組織マスタを参照してドキュメントを作成したユーザの所属組織と、ドキュメントを
ダウンロードして閲覧しようとしているユーザの所属組織との関係を判定して閲覧可否を決定することができる。
【0032】
ステップ123では、文書管理サーバ100はRAM203のワークエリアに記憶しているドキュメントの書誌情報を用いて、検索条件にマッチするドキュメントの一覧画面(検索結果一覧)をクライアント200に表示するための画面情報を作成してRAM203のワークエリアに記憶する。
ステップ124では、文書管理サーバ100は作成した検索結果一覧用の画面情報をクライアント200に送信する。
【0033】
ステップ104では、文書管理サーバ100から検索結果一覧用の画面情報を受信したクライアント200は画面に図8の画面G100に検索結果一覧を表示する。
【0034】
ステップ105では、クライアント200は検索結果一覧画面よりダウンロードするドキュメントを選択して、文書管理サーバ100へ選択されたドキュメントを特定可能な選択情報をユーザIDと共に送信する。
【0035】
ステップ125では、文書管理サーバ100のCPU201はユーザのログイン時のユーザIDとクライアントマシンを特定できる固有のID(Macアドレス等)とを関数操作したものに変換し、暗号化キーを作成してRAM203のワークエリアに記憶し、処理をステップ126に進める。
【0036】
ステップ126では、文書管理サーバ100のCPU201は暗号化処理中画面(図8の画面G101)をクライアント200に表示させるための画面情報をクライアント200に送信し、選択情報で特定されたドキュメントをRAM203のワークエリアに記憶して暗号化処理を行う。
ここで文書管理サーバ100のCPU201は、クライアント端末に暗号化文書を送信する。
暗号化前のドキュメントは削除する。なお暗号化処理の詳細フローチャートは図5に記載されており、後で説明する。
ステップ106では、クライアント200のCPU201は文書管理サーバから暗号化文書を受信する。
【0037】
クライアント200のCPU201は受信した文書をRAM203のワークエリアに記憶し、ステップ107において、受信した文書をページ単位で復号化する事により閲覧処理を行い、閲覧する事が可能になる。ステップ107の閲覧の詳細フローチャートは図7に記載されており、詳細は後で説明する。
【0038】
次に図4は本発明の実施形態の文書管理システムの復号化システムの基本的な処理フローを示す図である。復号化システムはクライアント200から文書管理サーバ100にドキュメントをアップロードする際の処理である。
【0039】
図4のステップ201〜ステップ203は、クライアント200のCPU201の制御の元で実行する処理であり、ステップ221〜ステップ224は、文書管理サーバ100のCPU201の制御の元で実行する処理である。
【0040】
まずステップ201では、クライアント200は、文書管理サーバ100から受信した画面情報を用いて表示される操作画面(ログイン)を介して、ユーザID、及びパスワード等からなるログイン情報を文書管理サーバ100へ送信する。
【0041】
ステップ221では、文書管理サーバ100はユーザ情報をもとに、図3のステップ121と同様の処理でユーザの認証を行う。ユーザIDと対応するパスワードが一致したら、ログイン許可のメッセージ情報をクライアント200へ送信する。
ステップ202では、クライアント200はメッセージ情報を表示し処理をステップ203に進める。
【0042】
ステップ203では、操作画面で所望のすでに暗号化されているドキュメントを選択し、選択した暗号化ドキュメントと暗号化ドキュメントの書誌情報(機密ランク、ドキュメント種別、作成者ID又は改訂者ID、保管期限年月日)をユーザIDと共に文書管理サーバ100へ送信する。
【0043】
ステップ222では、文書管理サーバ100はクライアント200より送信された暗号化ドキュメントと書誌情報とユーザIDとを受信してRAM203のワークエリアに記憶し、処理をステップ223に進める。
【0044】
ステップ223では、RAM203のワークエリアに記憶した暗号化ドキュメントの復号化処理を行う。復号化処理の詳細フローチャートは図6に記載されており、後で説明する。
【0045】
ステップ224では、文書管理サーバ100は復号化されたドキュメントを登録する。具体的には復号化されたドキュメントを所定のフォルダに移動するとともに、書誌情報を文書管理DBに登録する。復号化されたドキュメントが既に存在する場合は、所定のフォルダでリプレースされ、文書管理DBの保存されたフルパスとファイル名とを含む書誌事項を上書きする。以上で図4のフローチャートの説明を終わる。
【0046】
次に、図5は本発明の実施形態の文書管理システムの図3の暗号化システム中の文書管理サーバ100が行う暗号化処理(図3のステップ126)の詳細なフローチャートを示す図である。
図5のフローチャートでステップ301〜ステップ331は文書管理サーバ100のCPU201の制御の元で実行する処理である。
【0047】
まず、ステップ301では、ステップS125で作成した暗号キーをRAM203のワークエリアからCPU201の所定のレジスタに移動し、処理をステップ302に進める。
【0048】
ステップ302では、RAM203のワークエリアを参照し、ドキュメントを要求したユーザのユーザIDをキーにしてユーザマスタを参照し、当該ユーザの所属するドメインを取得し、暗号化処理を実行するか判断する。暗号化しない場合は文書管理サーバ100と当該ユーザの使用するクライアント200が同一ドメインにある場合であり、暗号化しないドメインのときは、処理をステップ320に進める。
【0049】
ステップ320では、文書管理サーバ100はクライアント200にオリジナルファイルのダウンロードダイアログを表示させるための画面情報を、クライアント200に送信する。クライアント200は受信した画面情報を用いてオリジナルファイルのダウンロードダイアログを表示し処理を終了する。暗号化するドメインのときは(文書管理サーバ100と当該ユーザの使用するクライアント200が同一ドメインにある場合)、処理をステップ303に進める。
【0050】
ステップ303では、文書管理サーバ100は選択されたドキュメントの拡張子をキーにして図15に示す文書管理マスタを参照し暗号化区分をRAM203のワークエリアに記憶して処理をステップ304に進める。
【0051】
ステップ304では、RAM203のワークエリアに記憶している暗号化区分を用いて暗号化対象の拡張子であるかを判断し、暗号化対象の拡張子でないときは、処理をステップ320に進める。
【0052】
ステップ320では、文書管理サーバ100はクライアント200にオリジナルファイルのダウンロードダイアログを表示させるための画面情報を、クライアント200に送信する。クライアント200は受信した画面情報を用いてオリジナルファイルのダウンロードダイアログを表示し処理を終了する。
ステップ304で暗号化する拡張子と判断したときは、処理をステップS305に進める。
【0053】
ステップ305では、文書管理サーバ100のCPU201はクライアント200に暗号化処理中を示すサブウィンドウを表示させるための画面情報を、クライアント200に送信する。クライアント200は受信した画面情報を用いて暗号化処理中を示すサブウィンドウ(図8のG101)を表示し、処理をステップS306に進める。
【0054】
ステップ306では、ドキュメント(文書)をCPU201のレジスタで記憶している暗号化キーを用いて暗号化対象のドキュメントをページ単位で暗号化しページ単位の暗号化データをこの暗号化データのバイト数と共にRAM203のワークエリアに記憶する。
【0055】
さらに全ページを暗号化した後で、各ページの開始アドレスと終了アドレスとを用いて合体した場合のアドレスを計算し、暗号化したドキュメント本体の前にヘッダ情報(暗号化したドキュメント(文書)のページ毎のバイト数を用いて、各ページの番号とこのページの暗号データが始まる暗号化ファイルの最初のアドレスとこのページの暗号化データが終わる最後のアドレスとを記録した一種のジャンプテーブルである目次情報)を付加して暗号化ドキュメント(文書)を作成する。
【0056】
さらに暗号化フォルダに暗号化ドキュメント(文書)を記憶し、図3の125で作成した暗号化キーを不図示の暗号化キーテーブルに保存し処理をステップ307に進める。
【0057】
ステップ307では、暗号化ファイルの存在を確認し、暗号化ファイルが無く暗号化に失敗した場合(暗号化エラー)又はタイムアウト(所定時間内に暗号化が完了しないエラー)が生じた場合は処理をステップS330に処理を進める。
【0058】
ステップ330では、発生したエラー内容(エラーの種類、発生年月日時刻、ユーザID、ドキュメント名称)を含むエラーログファイルを出力し、ステップ331に処理を進める。
【0059】
ステップ331では、発生したエラーが暗号化エラーのときは、文書管理サーバ100は、クライアント200に暗号化エラー画面を表示させるための画面情報を、クライアント200に送信し、クライアント200は受信した画面情報を用いて暗号化エラー画面(図8のG105)を表示する。タイムアウトエラーのときは、文書管理サーバ100は、クライアント200にタイムアウトエラー画面を表示させるための画面情報を、クライアント200に送信し、クライアント200は受信した画面情報を用いてタイムアウトエラー画面(図8のG103)を表示して処理を終了する。
ステップ307で暗号化ファイルが有るときは処理をステップ308に進める。
【0060】
ステップ308では、暗号化フォルダにコピーしたドキュメント(暗号化後容量がゼロになっている不要なファイル)を削除して処理をステップ309に進める。
【0061】
ステップ309では、文書管理サーバ100は、クライアント200に暗号化ファイルのダウンロード画面を表示させるための画面情報を、クライアント200に送信し、ステップ310に処理を進める。クライアント200は受信した画面情報を用いて暗号化ファイルのダウンロード画面(図8のG102)を表示する。
【0062】
ステップ310では、文書管理サーバ100は、クライアント200においてダウンロードボタンを押下(クリック)した旨の情報を、クライアント200から受信した場合、処理をステップ311に進める。
【0063】
ステップ311では、文書管理サーバ100は、クライアント200にダウンロードダイアログを表示させるための画面情報を、クライアント200に送信し、クライアント200からの応答を待つ。クライアント200は受信した画面情報を用いて画面にダウンロードダイアログ(図8のG104)を表示する。
【0064】
文書管理サーバ100は、折り返しクライアント200から「開く」ボタン又は「保存」ボタンを押下した旨の情報を受信すると、暗号化ドキュメントのクライアント200へのダウンロードを開始し、ダウンロードが完了したら、処理をステップ312に進める。
【0065】
ステップ312では、文書管理サーバ100は、暗号化フォルダに残った暗号化ドキュメントを削除し、暗号化ドキュメントのダウンロード画面(図8のG102)を閉じる旨の画面情報をクライアント200に送信し、クライアント200はダウンロード画面を閉じる。以上で図5の説明を終わる。
【0066】
図6は本発明の実施形態文書管理のシステムの図4の復号化システム中の文書管理サーバ100の復号化処理(図4のステップ223)の詳細を示すフローチャートである。
図6のフローチャートでステップ401〜ステップ441は文書管理サーバ100のCPU201の制御の元で実行する処理である。
【0067】
まず、ステップ401では、文書管理サーバ100は、ファイルの名称をキーにして文書管理DBを参照し、アップロードされたドキュメントが新規追加であるか、更新(バージョン追加)であるかを判定して、判定結果をRAM203のワークエリアに記憶して、処理をステップ402に進める。
【0068】
ステップ402では、文書管理サーバ100は、ファイルの拡張子をキーにして文書管理マスタを参照して暗号化区分を取得し、RAM203のワークエリアに記憶してステップ403に処理を進める。
【0069】
ステップ403では、文書管理サーバ100は、RAM203のワークエリアに記憶した暗号化区分を用いて復号化対象のドキュメントか判断し、復号化対象のドキュメントと判断した場合は処理をステップ404に進める。他方、復号化対象外の拡張子のときは処理をステップ420に進める。
【0070】
ステップ420では、文書管理サーバ100は、文書管理サーバ100へのドキュメントの登録処理(ドキュメントを所定のフォルダに記憶し、文書管理DBに書誌情報を登録する処理)を行い処理をステップS414に進める。
【0071】
ステップ404では、文書管理サーバ100は、クライアント200に一覧画面(図9のG200)を表示させるための画面情報を、クライアント200に送信し、クライアント200は受信した画面情報を用いて一覧画面(図9のG200)を表示してこの処理を終了する。
【0072】
他方、ステップ403で復号化対象の拡張子と判断した場合、ステップ404では、文書管理サーバ100は、クライアント200に復号化処理中を示す画面(図10のG204)を表示させるための画面情報を、クライアント200に送信し、クライアント200は、受信した画面情報を用いての復号化処理中を示す画面(図10のG204)を表示する。
【0073】
この間、文書管理サーバ100は、ステップ125と同様の方法でクライアント200のログイン時のユーザIDとクライアントマシンを特定できる固有のID(Macアドレス等)とを関数操作して作成した暗号化キーを用いてサーバの暗号化キーテーブルを参照し、同一暗号化キーが記憶されていたらこの暗号化キーを用いてドキュメントの復号化処理を行い、処理をステップ405に進める。
【0074】
ここで復号化処理が成功した場合は、内容が空の「.success」ファイルを作成する。他方、復号化処理が失敗した場合は、エラー内容(例えば、拡張子とドキュメントの内容が一致しない等のエラー内容)を含む「.error」ファイルを作成する。
ステップ405では、文書管理サーバ100は、復号化された所定のドキュメントを復号化フォルダにコピーして、処理をステップ406に進める。
【0075】
ステップ406では、文書管理サーバ100は、拡張子が「.success」のファイル、又は拡張子が「.error」のファイルの存否を判断し、拡張子が「.success」のファイルも拡張子が「.error」のファイルも共に無いときは、ステップ440に処理を進める。
ステップ440では、処理が異常終了した旨のエラーログファイルを出力し、処理をステップ441に進める。
【0076】
ステップ441では、文書管理サーバ100は、クライアント200にタイムアウトエラー画面(図10のG206)を表示させるための画面情報を、クライアント200に送信し、クライアント200は受信した画面情報を用いてタイムアウトエラー画面(図10のG206)を表示して、処理をステップ433に進める。
【0077】
ステップ433では、クライアント200はこのタイムアウトエラー画面の「戻る」ボタンの押下を検知した旨のメッセージを文書管理サーバ100に送信し、文書管理サーバ100は「戻る」ボタンの押下を検知した旨のメッセージを受信すると処理をステップ410に進める。
【0078】
ステップ410では、文書管理サーバ100は、クライアント200に一覧画面(図9のG200)を表示させるための画面情報を、クライアント200に送信し、クライアント200は受信した画面情報を用いての一覧画面(図9のG200)を表示してこの処理を終了する。
他方拡張子が「.success」のファイル又は拡張子が「.error」のファイルのいずれか一方があるときは、ステップ407に処理を進める。
【0079】
ステップ407では、文書管理サーバ100は、拡張子が「.success」のファイルがある場合は処理をステップ408に進め、拡張子が「.error」のファイルのファイルがある場合は処理をステップ430に進める。
ステップ408では、文書管理サーバ100は、拡張子が「.success」のファイルを削除して処理をステップ409に進める。
【0080】
ステップ409では、文書管理サーバ100は、復号化したドキュメントのファイルを所定のフォルダに記憶し、書誌的情報を文書管理DBに登録する。ステップ407で拡張子が「.error」のときは、
【0081】
ステップ430では、拡張子が「.error」のファイルの内容をRAM203のワークエリアに記憶して、拡張子が「.error」のファイルを削除して、処理をステップ431に進める。
ステップ431では、RAM203のワークエリアに記憶したエラーの内容を用いてエラーログファイルを出力して処理をステップ432に進める。
【0082】
ステップ432では、文書管理サーバ100は、クライアント200にエラー画面(図10のG207)を表示させるための画面情報を、クライアント200に送信し、クライアント200は受信した画面情報を用いてエラー画面(図10のG207)を表示してステップ433に処理を進める。
【0083】
ステップ433では、クライアント200はこのエラー画面の「戻る」ボタンの押下又はタイムアウト画面の「戻る」ボタンの押下を検知した旨のメッセージを文書管理サーバ100に送信し、文書管理サーバ100は「戻る」ボタンの押下を検知した旨のメッセージを受信すると処理をステップ410に進める。
【0084】
ステップ410では、文書管理サーバ100は、クライアント200に一覧画面(図9のG200)を表示させるための画面情報を、クライアント200に送信し、クライアント200は受信した画面情報を用いて一覧画面(図9のG200)を表示してこの処理を終了する。
【0085】
次に図7は本発明の実施形態における文書管理のシステムにおいて、図5で説明した文書管理サーバが暗号化したドキュメント(文書)をクライアント(閲覧端末)200が受信し、閲覧処理をする詳細なフローを示す図である。
図7のフローチャートでステップ701〜ステップ724はクライアント端末200のCPU201の制御の元で実行する処理である。
まず、ステップ701でクライアント200のCPU201は文書管理サーバ100とセッションの確立を確認する。
ここでクライアント200のCPU201は文書管理サーバと通信確立中かを判定する。
【0086】
セッションが確立できていないときは、閲覧処理を終了する。つまりここでセッションが無い場合は、復号化処理を一切実行しない。セッションの確立を閲覧の前提とすることで、セッションの確立できない環境化において既にダウンロード済みの暗号化処理された文書の復号化処理を防止し、セキュリティを高めることができる。セッションを確立できた場合は処理をステップ702に進め、閲覧処理(ページ表示)を進める。セッション確立の確認方法はLANケーブルが抜けた場合に、クライアント端末が認識する方法と同じといった公知技術を用いる。
【0087】
ステップ702では、クライアント200のCPU201はクライアントの暗号化キーをもとに文書管理サーバ100の暗号化キーテーブルを参照し、同一暗号化キーが存在しなかった場合は閲覧処理を終了する。つまりここで暗号化キーが無い場合は、復号化処理を一切実行しない。存在したときはステップ703に処理を進める。
ステップ703ではクライアント200のCPU201は一時ファイルを自動で作成する。更にクライアント200のCPU201は一時ファイルを記憶する。
ここでクライアント200のCPU201は文書管理サーバの現在のシステム時刻を問い合わせる。
ここで文書管理サーバ100のCPU201は文書管理サーバの現在のシステム時刻を回答する。
【0088】
一時ファイル(図16の1601)の内容は、ドキュメント番号、ドキュメントはドキュメントのヘッダ情報より取得し、ユーザIDは文書管理サーバ100のユーザマスタより所得し、アクセス日、アクセス時間はクライアント200が文書管理サーバ100にアクセスした日、アクセスした(問い合わせた)時間を文書管理サーバ100のシステム時間(システム時刻)より取得し、有効時間は文書管理サーバ100の初期設定ファイル(図16の1603)より設定されている情報(有効期限)を取得し、現在の文書管理サーバ100のシステム時間にプラスして、一時ファイルをクライアント200のRAM203のワークエリアに記憶し、処理を704に進める。
クライアント200のCPU201は初期設定ファイルを予め記憶する。
アクセス時間とは文書管理サーバ100のシステム時間(システム時刻)を端末からサーバにアクセスした(問い合わせた)時に読み込んだものである。
【0089】
有効期限(所定の時間)とは初期設定ファイルに予め書き込まれている時間であり、セッションが切れていても(ステップ705の無)、有効時間(所定の時刻)までにセッション(通信)が再度確立されれば、その後の文書閲覧(復号化処理)を許可をする為の許容時間であり、例えば10分(600秒)の様な値を使用する。
【0090】
すなわち有効時間(所定の時刻)はアクセス時間(文書管理サーバのシステム時刻)に有効期限(所定の時間)を足した時間であり、アクセス時間が2009年12月25日15:10である場合は、有効期限(所定の時間)10分を足した2009年12月25日15:20が有効時間(所定の時刻)となる。
ここでクライアント200のCPU201は有効時間(所定の時刻)を決定する。
【0091】
サーバとのセッションが切れたときに一時ファイルの有効時間(所定の時刻)を参照(ステップ721)するため、ここで、一時ファイルを作成する必要がある。
一旦ドキュメントをクライアントにて表示した後に一時ファイルの内容を更新(ステップ707)するため、ここで、一時ファイルを作成する必要がある。
【0092】
ステップ704ではクライアント200のCPU201はドキュメントのヘッダ情報より取得したページ毎のアドレス情報(ページ毎の開始アドレスと終了アドレス)と設定されたページ数をRAM203のワークエリアに記憶する。
ここでクライアント200のCPU201は最初のページの暗号化データをページ毎のアドレス情報に基づいて、ページ毎に復号化する。
【0093】
さらにRAM203のワークエリアに記憶する。次にクライアント200のCPU201はページ毎に復号化したドキュメント(文書)の最初のページ(図11のG300)をクライアント端末の表示画面にページ表示し、処理をステップ705に進める。
【0094】
ステップ705でクライアント200のCPU201は暗号化ドキュメントのヘッダ情報より取得したページ毎のアドレス情報と暗号化キーとを用いて現在表示している次のページ分の復号化処理(先読み復号化処理)を行う。クライアント200のCPU201は復号化したドキュメントのデータ(復号化された次ページのデータ)をRAM203のワークエリアに記憶し、処理をステップ706に進める。
ステップ706では、クライアント200のCPU201は、文書管理サーバ100とのセッション(通信)を再度確認する。
ここでクライアント200のCPU201は文書管理サーバと通信確立中かを判定する。
【0095】
このステップ706でのセッションの確認は、ここから先、復号化した文書を一旦表示したあとに、継続してサーバとのセッションの確認を行うためのものである。セッションが確立していないときは、ステップ720に進める。セッションが確立している場合は処理をステップ707に進める。
【0096】
ここでのセッション確認はステップ701での確認とは異なる。ここでのセッション確認はステップ702で暗号化キーの参照が完了した後、セッションがあるときにステップ703にて作成した一時ファイルの有効時間の更新(ステップ707)を行う。尚、ステップ701と同じようにセッション確立の確認方法はLANケーブルが抜けた場合に、クライアント端末が認識する方法と同じといった公知技術を用いる。
【0097】
ステップ720では、文書管理サーバ100とのセッションが切れている間、クライアント200で表示しているドキュメントに対してセキュリティを確保する為に、クライアント200で表示しているドキュメントに対して公知技術を用いて、以下に対しての制限をするように制御をする。
【0098】
クライアント200のCPU201は、画面のキャプチャ機能(Print Screenキーや画面キャプチャソフトでの画面のハードコピー等)を禁止する。
クライアント200のCPU201は、ドキュメントの編集機能(メニュー一覧から保存、コピーを選択不可にする)を制御する、
クライアント200のCPU201は、ドキュメント上にてドラッグしての文字列のコピー、文字や記号、図などの追加、削除等)を禁止する。
クライアント200のCPU201は、ドキュメントの印刷機能(印刷ボタンを消す、メニュー一覧から印刷を選択不可にする等)を禁止する。
クライアント200のCPU201は、ページ遷移(画面スクロールやページ送り等)を禁止する。
その他、上記機能に準ずる複製、編集、印刷を実現する機能を禁止する。
つまりここでクライアント200のCPU201は現在表示している文書のキャプチャ、複製、編集、印刷、ページ遷移といった操作停止指示をする。
【0099】
ステップ721では、クライアント200のCPU201は、クライアント200のRAM203のワークエリアに記録されている一時ファイルの有効時間(所定の時刻)とクライアント200のCPU201がクライアント200の現在のシステム時間(システム時刻)を取得し比較する。
【0100】
ここでクライアント端末200のCPU201は有効時間(所定の時刻)とクライアント端末(閲覧端末)のシステム時刻のどちらが大きい(遅い)かを判定する。
【0101】
例えば、一時ファイルの有効時間が2009年12月25日15時20分で、現在のシステム時間(システム時刻)が2009年12月25日15時10分であれば有効時間が大きい(遅い)と判定する。有効時間が大きいときは、ステップ722に処理を進める。有効時間が小さい(早い)場合は、処理をステップ1915に進める。
【0102】
ステップ721でのシステム時刻はクライアント端末に内蔵されている時刻であり、クライアント200のCPU201は公知技術により、内蔵時刻を確認する。
【0103】
ステップ722では、クライアント200のCPU201は、文書管理サーバ100とのセッションを再度確認する。セッションが確立していないときは、ステップ721に戻る。有効時間内であればステップ721、ステップ722の処理を繰り返し、セッションの確認を継続して行う。
ここでクライアント200のCPU201は文書管理サーバと通信確立中かを判定する。
セッションが確立している場合は処理をステップ723に進める。
【0104】
ステップ723では、クライアント200のCPU201は現在閲覧している文書の文書ヘッダファイル(図16の1602)のドキュメント番号とドキュメント名をRAM203のワークエリアに保存されている一時ファイルのドキュメント番号とドキュメント名を比較して確認する。
【0105】
一時ファイルと文書ヘッダファイルを比較して、その両方に記録されているドキュメント番号、ドキュメント名のうち、いずれかが違う場合は、処理をステップ714に進み、一時ファイルを削除する。ドキュメント番号、ドキュメント名の両方とも同じ場合は処理をステップ724へ進める。
【0106】
ステップ724では、クライアント200のCPU201は、ステップ720にて行ったクライアント200で表示しているドキュメントに対して、公知技術を用いて操作停止指示を解除する。
ステップ707では、クライアント200のCPU201は一時ファイルの有効時間を更新する。
ここでクライアント200のCPU201は文書管理サーバの現在のシステム時刻を問い合わせる。
ここで文書管理サーバ100のCPU201は文書管理サーバの現在のシステム時刻を回答する。
【0107】
更新内容は、文書管理サーバ100のシステム時間をクライアント200のRAM203のワークエリアに保存されている一時ファイルのアクセス時間にセットし、文書管理サーバ100の初期設定ファイルから読み出した有効期限(例えば10分)を文書管理サーバ100のシステム時間にプラスし、一時ファイルの有効時間を更新し処理をステップ1908に進める。
【0108】
例えば、更新前の一時ファイルの有効時間が2009年12月25日15時20分で、現在の文書管理サーバ100のシステム時間が2009年12月25日15時30分であれば、更新後の一時ファイルの有効時間は2009年12月25日15時40分となる。
ここでクライアント200のCPU201は有効時間(所定の時刻)を決定する。
ここでクライアント200のCPU201は有効時間(所定の時刻)を更新する。
【0109】
ステップ708では、クライアント200のCPU201はドキュメント閲覧画面でのページ指定入力の有無の判定を行い、ページ指定入力有り(図11のG300のGOボタンが押下された)のときはステップ709に処理を進め、他方、ステップ708でページ指定入力が無いと判定したときは、処理をステップ711に進める。
ステップ709では、クライアント200のCPU201は指定されたページの復号化処理を行う。処理をステップ710に進める。
ステップ710では、クライアント200のCPU201は指定ページの表示指示し、指定ページを表示する。
【0110】
ステップ711では、クライアント200のCPU201は次ページ指定入力の有無を判定し、次ページ指定入力有り(図11のG300の次ページボタンが押下された)のときは、処理をステップ712に進め、ステップ711で次ページ指定入力無しのときは、ステップ713の閲覧終了判定へ処理を進める。
ステップ712では、クライアント200のCPU201は次ページの表示指示し、次ページを表示する。
【0111】
ステップ713では、閲覧終了の入力の有無を判定し、閲覧を終了する旨の入力がないときは、ステップ705の次ページ復号化の処理へ戻る。閲覧終了の入力があると判定した場合は、処理をステップ714に処理を進める。
【0112】
ステップ714では、クライアント200のCPU201は、ステップ1903にて作成したクライアント200のRAM203のワークエリアに作成した一時ファイルの削除を行い、処理をステップ715の終了(現在表示されている文書の表示を消す)へ進める。
以上で図7の説明を終わる。
図16の1601の一時ファイルは図7で説明した閲覧処理中のステップ703で自動作成され、一時ファイル内に記録される内容はRAM203が記憶する。
【0113】
図16の1602の文書ヘッダファイルは図3で説明した文書保存中のステップ106でクライアント端末が受信し、文書ヘッダファイル内に記録される内容はRAM203が記憶する。
図16の1603の初期設定ファイルはクライアント端末が保存し、初期設定ファイルに記録される内容はRAM203または外部メモリが記憶する。
[その他の実施例]
【0114】
本実施形態における図3乃至図7のフローチャート及び,図8乃至図11の画面に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【0115】
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【0116】
この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【0117】
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,DVD−ROM,磁気テープ,不揮発性のメモリカード,ROM,EEPROM,シリコンディスク等を用いることができる。
【0118】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0119】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0120】
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
さらに、本発明を達成するためのソフトウェアによって表されるプログラムをネットワーク上のサーバ,データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【符号の説明】
【0121】
100 文書管理サーバ
200 クライアント端末
201 CPU
202 ROM
203 RAM
204 システムバス
205 入力コントローラ
206 ビデオコントローラ
207 メモリコントローラ
208 通信I/Fコントローラ
209 キーボード
201 CRT
211 外部メモリ(ハードディスク等)
300 通信回線
【特許請求の範囲】
【請求項1】
文書管理サーバと閲覧端末とが通信可能に構成された文書管理システムであって、
前記文書管理サーバは、
ページ毎のアドレス情報を含む暗号化された文書を送信する暗号化文書送信手段と、
閲覧端末にシステム時刻を回答する回答手段と、
前記閲覧端末は、
前記暗号化された文書を受信する暗号化文書受信手段と、
前記暗号化文書受信手段が受信した文書をページ毎のアドレス情報に基づいて、ページ毎に復号化する復号化手段と、
前記ページ毎に復号化された文書をページ毎に表示するページ表示手段と、
前記文書管理サーバにシステム時刻を問い合わせる問い合わせ手段と、
前記文書管理サーバの前記システム時刻から、所定の時刻を決定する決定手段と、
前記ページ表示手段が復号化された文書のページ表示をした後に、前記文書管理サーバと前記閲覧端末とが通信確立中であるかを判定する第1の判定手段と、
前記第1の判定手段が、通信確立中ではないと判定した場合に、前記所定の時刻と閲覧端末のシステム時刻から、前記ページ表示手段が表示していないページの表示を許可するかを判定する第2の判定手段を備える事を特徴とする文書管理システム。
【請求項2】
前記閲覧端末は、
前記ページ表示手段が表示するページの複製、編集、印刷といった操作の停止指示する操作停止指示手段を更に有し、
前記第1の判定手段が、通信確立中ではないと判定した場合に、前記操作停止手段が操作停止指示する事を特徴とする請求項1に記載の文書管理システム。
【請求項3】
前記第2の判定手段が、前記所定の時刻が閲覧端末のシステム時刻よりも早いと判定した場合には、前記ページ表示手段にページ表示させない事を特徴とする請求項1に記載の文書管理システム。
【請求項4】
前記閲覧端末は、
前記所定の時間を記憶する第1の記憶手段と
前記決定手段が決定した所定の時刻を記憶する第2の記憶手段と
を更に有し、
前記決定手段は、前記所定の時間と前記問い合わせ手段が問い合わせた文書管理サーバのシステム時刻により、前記所定の時刻を決定する事を特徴とする請求項1に記載の文書管理システム。
【請求項5】
前記第2の判定手段が、前記所定の時刻が閲覧端末のシステム時刻より遅いと判定した場合には、前記問い合わせ手段は文書管理サーバにシステム時刻の問い合わせをし、前記第2の記憶手段が記憶する前記所定の時刻を更新する更新手段を更に有する事を特徴とする請求項4に記載の文書管理システム。
【請求項6】
文書管理サーバと閲覧端末とが通信可能に構成された文書管理システムの制御方法であって、
前記文書管理サーバの暗号化文書送信手段が、ページ毎のアドレス情報を含む暗号化された文書を送信する暗号化文書送信工程と、
前記文書管理サーバの回答手段が、閲覧端末にシステム時刻を回答する回答工程と、
前記閲覧端末の暗号化文書受信手段が、前記暗号化された文書を受信する暗号化文書受信工程と、
前記閲覧端末の復号化手段が、前記暗号化文書受信工程が受信した文書をページ毎のアドレス情報に基づいて、ページ毎に復号化する復号化工程と、
前記閲覧端末のページ表示手段が、前記ページ毎に復号化された文書をページ毎に表示するページ表示工程と、
前記閲覧端末の問い合わせ手段が、前記文書管理サーバにシステム時刻を問い合わせる問い合わせ工程と、
前記閲覧端末の決定手段が、前記文書管理サーバの前記システム時刻から、所定の時刻を決定する決定工程と、
前記閲覧端末の第1の判定手段が、前記ページ表示工程が復号化された文書のページ表示をした後に、前記文書管理サーバと前記閲覧端末とが通信確立中であるかを判定する第1の判定工程と、
前記閲覧端末の第2の判定手段が、前記第1の判定工程が、通信確立中ではないと判定した場合に、前記所定の時刻と閲覧端末のシステム時刻から、前記ページ表示工程が表示していないページの表示を許可するかを判定する第2の判定工程を含む事を特徴とする文書管理システムの制御方法。
【請求項7】
前記閲覧端末の操作停止指示手段が、前記ページ表示工程が表示するページの複製、編集、印刷といった操作の停止指示する操作停止指示工程を更に含み、
前記閲覧端末の前記操作停止手段が、前記第1の判定工程が、通信確立中ではないと判定した場合に、操作停止指示する工程を含む事を特徴とする請求項6に記載の文書管理システムの制御方法。
【請求項8】
前記閲覧端末の前記ページ表示手段が、前記第2の判定工程が、前記所定の時刻が閲覧端末のシステム時刻よりも早いと判定した場合には、ページ表示させない工程を含む事を特徴とする請求項6に記載の文書管理システムの制御方法。
【請求項9】
前記閲覧端末の第1の記憶手段が、前記所定の時間を記憶する第1の記憶工程と
前記閲覧端末の第2の記憶手段が、前記決定工程が決定した所定の時刻を記憶する第2の記憶工程と
を更に含み、
前記閲覧端末の前記決定手段が、前記所定の時間と前記問い合わせ工程が問い合わせた文書管理サーバのシステム時刻により、前記所定の時刻を決定する工程を含む事を特徴とする請求項6に記載の文書管理システムの制御方法。
【請求項10】
前記閲覧端末の更新手段が、前記第2の判定工程が前記所定の時刻が閲覧端末のシステム時刻より遅いと判定した場合には、前記問い合わせ工程は文書管理サーバにシステム時刻の問い合わせをし、前記第2の記憶工程が記憶する前記所定の時刻を更新する更新工程を更に含む事を特徴とする請求項9に記載の文書管理システムの制御方法。
【請求項11】
文書管理サーバと閲覧端末とが通信可能に構成された文書管理システムで実行されるプログラムであって、
前記文書管理サーバは、
ページ毎のアドレス情報を含む暗号化された文書を送信する暗号化文書送信手段と、
閲覧端末にシステム時刻を回答する回答手段と、
前記閲覧端末は、
前記暗号化された文書を受信する暗号化文書受信手段と、
前記暗号化文書受信手段が受信した文書をページ毎のアドレス情報に基づいて、ページ毎に復号化する復号化手段と、
前記ページ毎に復号化された文書をページ毎に表示するページ表示手段と、
前記文書管理サーバにシステム時刻を問い合わせる問い合わせ手段と、
前記文書管理サーバの前記システム時刻から、所定の時刻を決定する決定手段と、
前記ページ表示手段が復号化された文書のページ表示をした後に、前記文書管理サーバと前記閲覧端末とが通信確立中であるかを判定する第1の判定手段と、
前記第1の判定手段が、通信確立中ではないと判定した場合に、前記所定の時刻と閲覧端末のシステム時刻から、前記ページ表示手段が表示していないページの表示を許可するかを判定する第2の判定手段として機能させる事を特徴とする文書管理システムのプログラム。
【請求項1】
文書管理サーバと閲覧端末とが通信可能に構成された文書管理システムであって、
前記文書管理サーバは、
ページ毎のアドレス情報を含む暗号化された文書を送信する暗号化文書送信手段と、
閲覧端末にシステム時刻を回答する回答手段と、
前記閲覧端末は、
前記暗号化された文書を受信する暗号化文書受信手段と、
前記暗号化文書受信手段が受信した文書をページ毎のアドレス情報に基づいて、ページ毎に復号化する復号化手段と、
前記ページ毎に復号化された文書をページ毎に表示するページ表示手段と、
前記文書管理サーバにシステム時刻を問い合わせる問い合わせ手段と、
前記文書管理サーバの前記システム時刻から、所定の時刻を決定する決定手段と、
前記ページ表示手段が復号化された文書のページ表示をした後に、前記文書管理サーバと前記閲覧端末とが通信確立中であるかを判定する第1の判定手段と、
前記第1の判定手段が、通信確立中ではないと判定した場合に、前記所定の時刻と閲覧端末のシステム時刻から、前記ページ表示手段が表示していないページの表示を許可するかを判定する第2の判定手段を備える事を特徴とする文書管理システム。
【請求項2】
前記閲覧端末は、
前記ページ表示手段が表示するページの複製、編集、印刷といった操作の停止指示する操作停止指示手段を更に有し、
前記第1の判定手段が、通信確立中ではないと判定した場合に、前記操作停止手段が操作停止指示する事を特徴とする請求項1に記載の文書管理システム。
【請求項3】
前記第2の判定手段が、前記所定の時刻が閲覧端末のシステム時刻よりも早いと判定した場合には、前記ページ表示手段にページ表示させない事を特徴とする請求項1に記載の文書管理システム。
【請求項4】
前記閲覧端末は、
前記所定の時間を記憶する第1の記憶手段と
前記決定手段が決定した所定の時刻を記憶する第2の記憶手段と
を更に有し、
前記決定手段は、前記所定の時間と前記問い合わせ手段が問い合わせた文書管理サーバのシステム時刻により、前記所定の時刻を決定する事を特徴とする請求項1に記載の文書管理システム。
【請求項5】
前記第2の判定手段が、前記所定の時刻が閲覧端末のシステム時刻より遅いと判定した場合には、前記問い合わせ手段は文書管理サーバにシステム時刻の問い合わせをし、前記第2の記憶手段が記憶する前記所定の時刻を更新する更新手段を更に有する事を特徴とする請求項4に記載の文書管理システム。
【請求項6】
文書管理サーバと閲覧端末とが通信可能に構成された文書管理システムの制御方法であって、
前記文書管理サーバの暗号化文書送信手段が、ページ毎のアドレス情報を含む暗号化された文書を送信する暗号化文書送信工程と、
前記文書管理サーバの回答手段が、閲覧端末にシステム時刻を回答する回答工程と、
前記閲覧端末の暗号化文書受信手段が、前記暗号化された文書を受信する暗号化文書受信工程と、
前記閲覧端末の復号化手段が、前記暗号化文書受信工程が受信した文書をページ毎のアドレス情報に基づいて、ページ毎に復号化する復号化工程と、
前記閲覧端末のページ表示手段が、前記ページ毎に復号化された文書をページ毎に表示するページ表示工程と、
前記閲覧端末の問い合わせ手段が、前記文書管理サーバにシステム時刻を問い合わせる問い合わせ工程と、
前記閲覧端末の決定手段が、前記文書管理サーバの前記システム時刻から、所定の時刻を決定する決定工程と、
前記閲覧端末の第1の判定手段が、前記ページ表示工程が復号化された文書のページ表示をした後に、前記文書管理サーバと前記閲覧端末とが通信確立中であるかを判定する第1の判定工程と、
前記閲覧端末の第2の判定手段が、前記第1の判定工程が、通信確立中ではないと判定した場合に、前記所定の時刻と閲覧端末のシステム時刻から、前記ページ表示工程が表示していないページの表示を許可するかを判定する第2の判定工程を含む事を特徴とする文書管理システムの制御方法。
【請求項7】
前記閲覧端末の操作停止指示手段が、前記ページ表示工程が表示するページの複製、編集、印刷といった操作の停止指示する操作停止指示工程を更に含み、
前記閲覧端末の前記操作停止手段が、前記第1の判定工程が、通信確立中ではないと判定した場合に、操作停止指示する工程を含む事を特徴とする請求項6に記載の文書管理システムの制御方法。
【請求項8】
前記閲覧端末の前記ページ表示手段が、前記第2の判定工程が、前記所定の時刻が閲覧端末のシステム時刻よりも早いと判定した場合には、ページ表示させない工程を含む事を特徴とする請求項6に記載の文書管理システムの制御方法。
【請求項9】
前記閲覧端末の第1の記憶手段が、前記所定の時間を記憶する第1の記憶工程と
前記閲覧端末の第2の記憶手段が、前記決定工程が決定した所定の時刻を記憶する第2の記憶工程と
を更に含み、
前記閲覧端末の前記決定手段が、前記所定の時間と前記問い合わせ工程が問い合わせた文書管理サーバのシステム時刻により、前記所定の時刻を決定する工程を含む事を特徴とする請求項6に記載の文書管理システムの制御方法。
【請求項10】
前記閲覧端末の更新手段が、前記第2の判定工程が前記所定の時刻が閲覧端末のシステム時刻より遅いと判定した場合には、前記問い合わせ工程は文書管理サーバにシステム時刻の問い合わせをし、前記第2の記憶工程が記憶する前記所定の時刻を更新する更新工程を更に含む事を特徴とする請求項9に記載の文書管理システムの制御方法。
【請求項11】
文書管理サーバと閲覧端末とが通信可能に構成された文書管理システムで実行されるプログラムであって、
前記文書管理サーバは、
ページ毎のアドレス情報を含む暗号化された文書を送信する暗号化文書送信手段と、
閲覧端末にシステム時刻を回答する回答手段と、
前記閲覧端末は、
前記暗号化された文書を受信する暗号化文書受信手段と、
前記暗号化文書受信手段が受信した文書をページ毎のアドレス情報に基づいて、ページ毎に復号化する復号化手段と、
前記ページ毎に復号化された文書をページ毎に表示するページ表示手段と、
前記文書管理サーバにシステム時刻を問い合わせる問い合わせ手段と、
前記文書管理サーバの前記システム時刻から、所定の時刻を決定する決定手段と、
前記ページ表示手段が復号化された文書のページ表示をした後に、前記文書管理サーバと前記閲覧端末とが通信確立中であるかを判定する第1の判定手段と、
前記第1の判定手段が、通信確立中ではないと判定した場合に、前記所定の時刻と閲覧端末のシステム時刻から、前記ページ表示手段が表示していないページの表示を許可するかを判定する第2の判定手段として機能させる事を特徴とする文書管理システムのプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【公開番号】特開2011−138209(P2011−138209A)
【公開日】平成23年7月14日(2011.7.14)
【国際特許分類】
【出願番号】特願2009−296244(P2009−296244)
【出願日】平成21年12月25日(2009.12.25)
【出願人】(390002761)キヤノンマーケティングジャパン株式会社 (656)
【出願人】(301015956)キヤノンソフトウェア株式会社 (364)
【Fターム(参考)】
【公開日】平成23年7月14日(2011.7.14)
【国際特許分類】
【出願日】平成21年12月25日(2009.12.25)
【出願人】(390002761)キヤノンマーケティングジャパン株式会社 (656)
【出願人】(301015956)キヤノンソフトウェア株式会社 (364)
【Fターム(参考)】
[ Back to top ]