(57)【要約】【課題】ユーザ認証によって保護されたインターネット上の文書管理システム内の文書をＷｅｂブラウザ経由でイントラネット内の出力デバイスへセキュアに印刷したい。【解決手段】Ｗｅｂブラウザから対象文書の印刷を指示する印刷要求と、出力デバイスが行う印刷対象データ要求の双方に同一の印刷チケットを付与し、文書管理システム側で印刷チケットを確認し文書をルーティングすることで、Ｗｅｂブラウザからのアクセスするユーザ権限でセキュアに印刷する系を実現する。【選択図】  図１０
2011138390.tif 000002
【特許請求の範囲】
【請求項１】
クライアント端末、データ管理システム、及び出力デバイスを含み、前記クライアント端末もしくは前記出力デバイスを起因として各装置間で通信が可能な印刷システムであって、
前記出力デバイスは、
印刷指示に関連付けられた印刷チケットを発行するチケット発行部と、
前記印刷チケットを付した印刷対象データ要求を前記データ管理システムに対して行う印刷対象データ要求制御部と、
前記データ管理システムから前記印刷対象データ要求の応答として取得した印刷対象データを出力する出力部と
を有し、
前記データ管理システムは、
データを保管するデータ記憶部と、
前記クライアント端末で実行させ、印刷指示をユーザに入力させるためのスクリプトを生成するスクリプト生成部と、
前記出力デバイスからの前記印刷対象データ要求を受け付けて一時的に応答待ち状態とし、印刷対象データが指定された後に当該印刷対象データ要求に対する応答を実行するよう制御する要求管理部と、
ユーザを特定するユーザ認証部と、
保管したデータに対するユーザのアクセス権を判定するアクセス権判定部と、
前記クライアント端末からの印刷要求に付されている印刷チケットを用いて、応答待ち状態にある印刷対象データ要求の中から対応するものを検索する要求検索部と、
前記アクセス権判定部にて指定されたデータに対するアクセス権判定を行い、アクセスが許可されている場合に、印刷要求で指定された当該データを前記対応する印刷対象データ要求で要求される印刷対象データとして指定する対応文書指定部と、
前記対応文書指定部にて指定された印刷対象データを前記印刷対象データ要求の応答として前記出力デバイスへ送信する送信部と
を有し、
前記データ管理システムにて生成されたスクリプトは、
前記クライアント端末にて実行され、ユーザにより指定された出力デバイスへ前記印刷指示を送信し、
前記出力デバイスにて発行された印刷チケットを前記データ管理システムへ印刷対象とするデータを示す情報と共に印刷要求として送信する
ことを特徴とする印刷システム。
【請求項２】
前記出力デバイスの前記印刷対象データ要求制御部は、前記印刷対象データ要求に印刷設定情報を更に付し、
前記印刷対象データ要求制御部からの印刷対象データ要求の応答に付される当該印刷設定情報に従って印刷命令を生成する印刷命令生成部と
を更に有し、
前記データ管理システムは、
前記印刷対象データ要求を記憶する印刷対象データ要求記憶部を更に有し、
前記要求管理部は、前記印刷対象データ要求の一部である前記印刷設定情報を前記印刷チケットに基づいて更新する
ことを特徴とする請求項１に記載の印刷システム。
【請求項３】
前記出力デバイスの前記印刷対象データ要求制御部は、前記印刷対象データ要求に当該出力デバイスが印刷可能なデータ形式情報を更に付し、
前記データ管理システムは、前記データ形式情報に基づいて前記出力デバイスが印刷可能なデータ形式に変換を行う文書変換部を有する
ことを特徴とする請求項２に記載の印刷システム。
【請求項４】
クライアント端末、データ管理システムに接続された出力デバイスであって、
印刷指示に関連付けられた印刷チケットを発行するチケット発行部と、
前記印刷チケットを付した印刷対象データ要求を前記データ管理システムに対して行う印刷対象データ要求制御部と、
前記データ管理システムから取得した印刷対象データを出力する出力部と、
を有することを特徴とする出力デバイス。
【請求項５】
クライアント端末、出力デバイスに接続されたデータ管理システムであって、
データを保管するデータ記憶部と、
前記クライアント端末で実行させ、印刷指示をユーザに入力させるためのスクリプトを生成するスクリプト生成部と、
前記出力デバイスからの印刷対象データ要求を受け付けて一時的に応答待ち状態とし、印刷対象データが指定された後に当該印刷対象データ要求に対する応答を実行するよう制御する要求管理部と、
ユーザを特定するユーザ認証部と、
保管したデータに対するユーザのアクセス権を判定するアクセス権判定部と、
前記クライアント端末からの印刷要求に付されている印刷チケットを用いて、応答待ち状態にある印刷対象データ要求の中から対応するものを検索する要求検索部と、
前記アクセス権判定部にて指定されたデータに対するアクセス権判定を行い、アクセスが許可されている場合に、印刷要求で指定された当該データを前記対応する印刷対象データ要求で要求される印刷対象データとして指定する対応文書指定部と、
前記対応文書指定部にて指定された印刷対象データを前記印刷対象データ要求の応答として前記出力デバイスへ送信する送信部と
を有することを特徴とするデータ管理装置。
【請求項６】
クライアント端末、データ管理システム、及び出力デバイスを含み、前記クライアント端末もしくは前記出力デバイスを起因として各装置間で通信が可能な印刷システムの制御方法であって、
前記出力デバイスにおいて、
チケット発行部が、印刷指示に関連付けられた印刷チケットを発行するチケット発行工程と、
印刷対象データ要求制御部が、前記印刷チケットを付した印刷対象データ要求を前記データ管理システムに対して行う印刷対象データ要求制御工程と、
出力部が、前記データ管理システムから前記印刷対象データ要求の応答として取得した印刷対象データを出力する出力工程と
を有し、
前記データ管理システムにおいて、
データ記憶部が、データを保管するデータ記憶工程と、
スクリプト生成部が、前記クライアント端末により実行させ、印刷指示をユーザに入力させるためのスクリプトを生成するスクリプト生成工程と、
要求管理部が、前記出力デバイスからの前記印刷対象データ要求を受け付けて一時的に応答待ち状態とし、印刷対象データが指定された後に当該印刷対象データ要求に対する応答を実行するよう制御する要求管理工程と、
ユーザ認証部が、ユーザを特定するユーザ認証工程と、
アクセス権判定部が、保管したデータに対するユーザのアクセス権を判定するアクセス権判定工程と、
要求検索部が、前記クライアント端末からの印刷要求に付されている印刷チケットを用いて、応答待ち状態にある印刷対象データ要求の中から対応するものを検索する要求検索工程と、
対応文書指定部が、前記アクセス権判定工程にて指定されたデータに対するアクセス権判定を行い、アクセスが許可されている場合に、印刷要求で指定された当該データを前記対応する印刷対象データ要求で要求される印刷対象データとして指定する対応文書指定工程と、
送信部が、前記対応文書指定工程にて指定された印刷対象データを前記印刷対象データ要求の応答として前記出力デバイスへ送信する送信工程と
を有し、
前記データ管理システムにて生成されたスクリプトは、
前記クライアント端末にて実行され、ユーザにより指定された出力デバイスへ前記印刷指示を送信し、
前記出力デバイスにて発行された印刷チケットを前記データ管理システムへ印刷対象とするデータを示す情報と共に印刷要求として送信する
ことを特徴とする制御方法。
【請求項７】
コンピュータを、
印刷指示に関連付けられた印刷チケットを発行するチケット発行部と、
前記印刷チケットを付した印刷対象データ要求をデータ管理システムに対して行う印刷対象データ要求制御部と、
前記データ管理システムから前記印刷対象データ要求の応答として取得した印刷対象データを出力する出力部と
して機能させることを特徴とするプログラム。
【請求項８】
コンピュータを、
データを保管するデータ記憶部と、
クライアント端末で実行させ、印刷指示をユーザに入力させるためのスクリプトを生成するスクリプト生成部と、
出力デバイスからの印刷対象データ要求を受け付けて一時的に応答待ち状態とし、印刷対象データが指定された後に当該印刷対象データ要求に対する応答を実行するよう制御する要求管理部と、
ユーザを特定するユーザ認証部と、
保管したデータに対するユーザのアクセス権を判定するアクセス権判定部と、
前記クライアント端末からの印刷要求に付されている印刷チケットを用いて、応答待ち状態にある印刷対象データ要求の中から対応するものを検索する要求検索部と、
前記アクセス権判定部にて指定されたデータに対するアクセス権判定を行い、アクセスが許可されている場合に、印刷要求で指定された当該データを前記対応する印刷対象データ要求で要求される印刷対象データとして指定する対応文書指定部と、
前記対応文書指定部にて指定された印刷対象データを前記印刷対象データ要求の応答として前記出力デバイスへ送信する送信部と
して機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はファイヤウォール外のサーバー・サービスで管理されるデータをファイヤウォール内の出力デバイスで出力するための印刷システムに関する。
【背景技術】
【０００２】
近年、オフィスのネットワーク化が進む中、出力デバイスもオフィスのネットワークにつなげられ、オフィス内の各端末からの出力指示に基づいて、印刷、ＦＡＸ送信などの出力処理をネットワーク越しに実行することが一般的となってきた。
【０００３】
また、ネットワークの高速化、インターネットサービスの充実などを背景に、文書等のデータを保管・管理するサーバー（以下、データ管理システム）をインターネット上に構築する動きが進んでいる。
【０００４】
一方で、オフィス内のＰＣ端末は、メンテナンスやセキュリティなどの観点から、極力アプリケーションをインストールしないことが望まれる傾向にあり、汎用的なＷｅｂブラウザのみを使用して、目的の業務を遂行できるシステムが望まれている。
【０００５】
このような背景の中で問題となるのが、インターネット上のサーバーで管理されているデータを、ＰＣ端末のＷｅｂブラウザで操作する際、ファイヤウォールの内側にあるイントラネットにある出力デバイスで印刷する方法である。
【０００６】
ファイヤウォールがなければ、データ管理システムから出力デバイスに対して印刷データを送信することで、印刷が可能である。しかし、ファイヤウォールによって、インターネット上のサーバーからイントラネット上の出力デバイスへデータを送信することが制限されてしまう。
【０００７】
そこで、インターネット上のＷｅｂサーバーにある画像をイントラネット上に存在する出力デバイスにて出力する方法として、特許文献１にも示されているようなＵＲＬプリントという仕組みが考案されている。これは、まずＷｅｂサーバー上にある目的の画像を指し示すＵＲＬを調べ、出力デバイスに渡す。ＵＲＬを出力デバイスへ渡す方法として様々な方法が存在するが、一例を挙げると携帯電話などの端末に組み込まれた赤外線通信機能を用い、同じく赤外線通信機能を有する出力デバイスへ画像のＵＲＬを送信する方法がある。ＵＲＬを渡された出力デバイスは、渡されたＵＲＬを元にＷｅｂサーバーへアクセスし、対象画像のダウンロードと、その画像の出力処理を実行する。この場合、出力デバイス側からインターネット上のサーバーにアクセスを行うので、ファイヤウォールに拒まれることなく対象画像の取得をすることができる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００３−３４５５７９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上述のＵＲＬプリントは、通常公開された画像もしくはＷｅｂページを対象としているので、目的とするＵＲＬさえ知っていれば誰でも印刷することは可能である。しかし業務データが印刷対象となる場合、ＵＲＬを知っているだけでだれでも印刷できてしまうのはセキュリティの観点からも問題である。ただし、通常はデータ管理システムからデータを取得するためにはユーザ認証が必要で、正しいパスワードとユーザＩＤを提示しない限り、データの取得や印刷はできない。
【００１０】
そこで、図２に示すようにＰＣ端末から出力デバイスにユーザ名とパスワードを目的とするＵＲＬと一緒に渡すようにし、出力デバイスからデータ管理システムに対してユーザ認証を行うことで、出力デバイスが印刷対象データを取得する方法が考えられる。しかし、出力デバイスではユーザ管理が行われていないか、ユーザ管理が行われていても出力デバイスとインターネット上のデータ管理システムは別々にユーザ管理が行われているのが通常である。つまり、データ管理システムのパスワードは「出力デバイスを利用するために必要な情報」ではない、にも関わらず出力デバイスへ渡すというのはセキュリティ上の大きなリスクとなり、問題であるといえる。例えば、データ管理システムのパスワードを出力デバイスへ渡すと、仮に出力デバイスを動かすプログラムが悪意あるものであったり、脆弱性があるものであったりした場合、データ管理システムのパスワードという機密情報が漏えいしてしまう危険性がある。
【００１１】
本発明で解決したい課題は、インターネット上のデータ管理システムによって保護・管理されているデータを、Ｗｅｂブラウザから操作してイントラネット内の出力デバイスで印刷する機能をセキュアに実現することである。ここでいうセキュアとは、印刷対象のデータに対するセキュリティを弱めることなく、また、データ管理システムへのパスワードなどが漏洩するリスクをとることもなく実現できることを言う。
【課題を解決するための手段】
【００１２】
上記課題を解決するために、本発明は以下の構成を有する。クライアント端末、データ管理システム、及び出力デバイスを含み、前記クライアント端末もしくは前記出力デバイスを起因として各装置間で通信が可能な印刷システムであって、前記出力デバイスは、印刷指示に関連付けられた印刷チケットを発行するチケット発行部と、前記印刷チケットを付した印刷対象データ要求を前記データ管理システムに対して行う印刷対象データ要求制御部と、前記データ管理システムから前記印刷対象データ要求の応答として取得した印刷対象データを出力する出力部とを有し、前記データ管理システムは、データを保管するデータ記憶部と、前記クライアント端末で実行させ、印刷指示をユーザに入力させるためのスクリプトを生成するスクリプト生成部と、前記出力デバイスからの前記印刷対象データ要求を受け付けて一時的に応答待ち状態とし、印刷対象データが指定された後に当該印刷対象データ要求に対する応答を実行するよう制御する要求管理部と、ユーザを特定するユーザ認証部と、保管したデータに対するユーザのアクセス権を判定するアクセス権判定部と、前記クライアント端末からの印刷要求に付されている印刷チケットを用いて、応答待ち状態にある印刷対象データ要求の中から対応するものを検索する要求検索部と、前記アクセス権判定部にて指定されたデータに対するアクセス権判定を行い、アクセスが許可されている場合に、印刷要求で指定された当該データを前記対応する印刷対象データ要求で要求される印刷対象データとして指定する対応文書指定部と、前記対応文書指定部にて指定された印刷対象データを前記印刷対象データ要求の応答として前記出力デバイスへ送信する送信部とを有し、前記データ管理システムにて生成されたスクリプトは、前記クライアント端末にて実行され、ユーザにより指定された出力デバイスへ前記印刷指示を送信し、前記出力デバイスにて発行された印刷チケットを前記データ管理システムへ印刷対象とするデータを示す情報と共に印刷要求として送信する。
【発明の効果】
【００１３】
インターネット上のデータ管理システムによって保護・管理されているデータを、Ｗｅｂブラウザから操作してイントラネットの出力デバイスで印刷する機能をセキュアに実現することができる。
【図面の簡単な説明】
【００１４】
【図１】本実施形態に係る基本システム構成の例図。
【図２】本実施形態に係る課題説明のための図。
【図３】本実施形態に係るクライアント端末のハードウェア構成の例図。
【図４】本実施形態に係る出力デバイスのハードウェア構成の例図。
【図５】本実施形態に係る文書管理システムのソフトウェア構成の例図。
【図６】本実施形態に係る出力デバイスのソフトウェア構成の例図。
【図７】本実施形態に係るクライアント端末のブラウザソフト構成の例図。
【図８】本実施形態に係る印刷設定情報データ構造例の図。
【図９】本実施形態に係るデータ構造の例図。
【図１０】第一の実施形態に係るフローチャートの図。
【図１１】第二の実施形態に係るフローチャートの図。
【図１２】本実施形態に係るプリンタ指定ダイアログＵＩの例の図。
【図１３】第三の実施形態に係るフローチャートの図。
【発明を実施するための形態】
【００１５】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【００１６】
［システム構成］
図１は、本発明の実施形態に係る印刷システムのシステム概念図である。文書管理システム１００１は、文書を保管・管理する機能を有するデータ管理システムとしてのＷｅｂサーバーであり、インターネット上に構築され、一般的なオフィスからアクセス可能なものとする。なお、ここでは扱うデータを文書データとして記載するが、これに限定されるものではなく、例えば画像データ等の他のデータを対象としてもよい。また、以下に“文書”と記載した場合、文書データそのもの及びそれに付随する情報を含むものとする。出力デバイス１００２は、所定の形式で受け取ったデータを指定された設定に従って印刷やＦＡＸ転送、メール転送など実行する出力機能を有し、自デバイスの給紙状態やフィニッシャー機器の設置状況など検知し、現在の能力・状態を把握する機能をも有する。さらに、Ｗｅｂサーバーなどに接続できる通信機能を有する上、外部のＷｅｂブラウザ等からのリクエストを受信する機能をも有する。また、本発明はクラウド・コンピューティングに適用できるものである。
【００１７】
クライアント端末１００３は、インターネット上のＷｅｂサーバーとの通信を行い、Ｗｅｂサーバーから配信されるＨＴＭＬの描画やＪａｖａ（登録商標）  Ｓｃｒｉｐｔ（登録商標）などのスクリプトの実行などが可能な汎用ＷｅｂブラウザがインストールされたＰＣである。本実施形態に関わる印刷システムの操作は、ユーザが本端末の汎用Ｗｅｂブラウザを使用して行うものである。なお、出力デバイス１００２とクライアント端末１００３は、オフィス内のローカルエリアネットワーク（以下、ネットワーク）内に設置されており、インターネットなどの外部ネットワークからはアクセス制限により制御された環境となっている。つまり文書管理システム１００１からは出力デバイス１００２およびクライアント端末１００３へは共にアクセスが制限されている。もちろん、ネットワーク側からインターネットへのアクセスは可能であり、出力デバイス１００２およびクライアント端末１００３を起因として文書管理システム１００１への通信は可能である。
【００１８】
［ハードウェア構成］
図３は、本発明の実施形態に係る文書管理システム１００１およびクライアント端末１００３を構成するＰＣのハードウェア構成図を示している。図４は、本発明の実施形態に係る出力デバイス１００２のハードウェア構成図を示している。図３および図４に示されるハードウェア構成図は一般的な情報処理装置および出力デバイスのハードウェア構成図に相当するものとし、本実施形態の各ＰＣ／出力デバイスには一般的な情報処理装置のハードウェア構成を適用できる。
【００１９】
図３において、ＣＰＵ３００は、ＲＯＭ３０２のプログラム用ＲＯＭに記憶された、或いは外部メモリ３０９からＲＡＭ３０１にロードされたＯＳやアプリケーション等のプログラムを実行する。ここでＯＳとはコンピュータ上で稼動するオペレーティングシステムの略語であり、以下オペレーティングシステムのことをＯＳと呼ぶ。後述する各フローチャートの処理はこのプログラムの実行により実現できる。ＲＡＭ３０１は、ＣＰＵ３００の主メモリ、ワークエリア等として機能する。キーボードコントローラ３０３は、キーボード３０７やポインティングデバイス（不図示）からのキー入力を制御する。ディスプレイコントローラ３０４は、各種ディスプレイ３０８の表示を制御する。ディスクコントローラ３０５は、各種データを記憶するハードディスク（ＨＤ）３０９やフロッピー（登録商標）ディスク（ＦＤ）等におけるデータアクセスを制御する。ＮＣ３０６はネットワークに接続されて、ネットワークに接続された他の装置間での通信制御処理を実行する。
【００２０】
図４において、ＣＰＵ４００は、内部バス４０７を介して後述する各機能／装置を接続し、出力デバイス１００２を制御するものである。表示装置４０１は、タッチパネルなどの画面を表示するための装置である。ユーザは、ユーザ所望の動作を行うための操作等を表示装置４０１に表示される画面を介して行う。プリンタ装置４０２は、印刷を行うための装置であり、プリンタ情報管理部４０３は、プリンタ装置４０２の機能／状態の情報を管理／保持する。
【００２１】
更に、メモリ４０４は、ＣＰＵ４００が出力デバイス１００２を制御するために実行する各種命令（アプリケーションプログラム含む）を記憶し、大容量記憶装置４０５には、プリンタ装置４０２で印刷するためのデータを一時保存する。また、ネットワークインターフェース４０６は、ＣＰＵ４００に従いネットワークを介して信号の送受信を行う。
【００２２】
［ソフトウェア構成］
図５は、本発明の実施形態に係る文書管理システム１００１のソフトウェア構成の一例を示す図である。図５で矩形として表現される各構成要素はそれぞれ、外部メモリ３０９やプログラムＲＯＭ３０２からＲＡＭ３０１へロードされ、ＣＰＵ３００で実行されるプログラムコンポーネントを表している。また、円柱状で表される各パーツは、外部メモリ３０９やＲＡＭ３０１、データＲＯＭ３０２などに記憶・保存されているデータの集合を表している。各コンポーネントやデータの集合は、論理的に分割して表現しているだけで、物理的には必ずしも分割されていなくてもよい。
【００２３】
通信部５０１は、インターネットを介して送られてくるリクエスト情報を受信して、メイン制御部５０２に渡すと共に、そのリクエストに対応するレスポンス情報をメイン制御部５０２から受け取り、リクエスト元に対して送信する役割を担うコンポーネントである。これらのリクエスト情報およびレスポンス情報の送受信は基本的にＨＴＴＰもしくは、ＨＴＴＰＳプロトコルに基づいて通信を行う。
【００２４】
メイン制御部５０２は、通信部５０１を通して受信したリクエストを解釈し、適切なコンポーネントを呼び出すとともにリクエストデータを渡して処理を実行させる役割を担っている。また、メイン制御部５０２は、コンポーネント間の処理の橋渡しを行うとともに、各コンポーネントで処理した結果をリクエスト元へ返信するためのレスポンスデータを生成し、通信部５０１へ返信する。ユーザ認証部５０３はリクエストに付与された認証データを取り出し、ユーザ情報記憶部５０４に格納されている情報と比較することでリクエストを実行したユーザを特定する役割を担う。ユーザ情報記憶部５０４は、図９（Ａ）に示すようなユーザに関する情報を外部メモリ３０９もしくは、ＲＡＭ３０１に記憶し、管理している。
【００２５】
Ｗｅｂ  ＵＩ生成部５０５は、メイン制御部５０２より指示を受け、状況に応じたＷｅｂ  ＵＩ（ＨＴＭＬ）を生成する。スクリプト生成部５０６は、メイン制御部５０２の指示により、Ｊａｖａ(登録商標）  Ｓｃｒｉｐｔなどのスクリプトを生成する。要求管理部５０７はメイン制御部５０２の指示を受け、通信部５０１が受信した「印刷対象データ要求（後述）」のリクエスト情報を印刷対象データ要求記憶部５０８に保存する。さらに、要求管理部５０７は、メイン制御部５０２の指示を受け、印刷対象データ要求記憶部５０８に保存されている印刷対象データ要求のリクエスト情報の一部である印刷設定情報（後述）の更新も行う。この「印刷対象データ要求」に対して対応する印刷対象データが指定されると、要求管理部５０７はリクエスト元に指定された印刷対象データを返すよう、メイン制御部５０２に依頼して、対象のリクエスト情報を印刷対象データ要求記憶部５０８から削除する。ただし、一定時間内に印刷対象データが指定されなかった場合、要求管理部５０７は印刷対象データ要求記憶部５０８からそのリクエスト情報を削除し、この「印刷対象データ要求」のリクエスト元にタイムアウトエラーを返すよう、メイン制御部５０２に依頼する。
【００２６】
印刷対象データ要求記憶部５０８は、図９（Ｄ）及び（Ｅ）に示すような印刷対象データ要求に関する情報を外部メモリ３０９もしくは、ＲＡＭ３０１に記憶する。そして、管理している要求検索部５０９はメイン制御部５０２から指定されたものと同じ印刷チケットに関連付けられている「印刷対象データ要求」のリクエスト情報を印刷対象データ要求記憶部５０８から探して、メイン制御部５０２へ返却する。印刷チケットに関しては後述するが、本実施形態において、クライアント端末１００３から印刷指示が行われるたびに出力デバイス１００２で発行され印刷指示を特定可能なグローバルに一意な文字列もしくは数値、またはファイルのことである。指定された印刷チケットが印刷対象データ要求記憶部５０８に見つからなかった場合、要求検索部５０９は、対応するリソースが見つからなかった旨のエラーをリクエスト元に返却するよう、メイン制御部５０２へ依頼する。
【００２７】
対応文書指定部５１０は、メイン制御部５０２の指示に基づいて、指定された印刷チケットに関連付けられている「印刷対象データ要求」に同じくメイン制御部５０２に指定された文書の関連付けを実行する。文書取出部５１１は、メイン制御部５０２の指示を受け、文書記憶部５１２に格納されている文書を取り出して、メイン制御部５０２へ渡す。文書記憶部５１２の中では文書はＵＲＩという一意な識別子（文字列でも数字でもよい）が割り振られて管理されており、メイン制御部５０２からの指示は、このＵＲＩの形で指定される。文書記憶部５１２は、文書を格納保持しておく部分で、図９（Ｂ）及び（Ｃ）に示すような文書データおよびそれに付随する情報を外部メモリ３０９もしくは、ＲＡＭ３０１に記憶し、管理している。これによりデータ記憶部を実現する。
【００２８】
文書変換部５１３は、メイン制御部５０２の指示に基づいて、文書データのファイルフォーマット変換を行う。アクセス権判定部５１４は、文書記憶部５１２に格納されているアクセス制御情報を元に指定されたユーザが対象の文書に対して読み取り権限を持っているか、もしくは書き込み権限を持っているかの判定を行う。
【００２９】
図６は、本発明の実施形態に係る出力デバイスを制御するソフトウェアの一例を構成図である。図６で矩形として表現される各構成要素はそれぞれ、大容量記憶装置４０５からメモリ４０４へロードされ、ＣＰＵ４００で実行されるプログラムコンポーネントを表している。また、円柱状で表されるパーツは、大容量記憶装置４０５に記憶・保存されているデータの集合を表している。各コンポーネントやデータの集合は、論理的に分割して表現しているだけで、物理的には必ずしも分割されていなくてもよい。
【００３０】
メイン制御部６０１は、本発明の実施形態に係る出力デバイスシステムのシステム全体を制御し、後述する各部に対する指示、管理を行う。通信部６０２は、クライアント端末１００３においてユーザがＷｅｂブラウザを介して出した命令を受け取ってメイン制御部６０１へ送り、メイン制御部６０１より指示を受けた結果をクライアント端末１００３へ返答する。また通信部６０２は、印刷対象データ要求制御部６０３より指示を受けて文書管理システム１００１の通信部５０１へ接続し、印刷対象データ要求制御部６０３から受けた命令を送信すると共に、その結果を受け取り印刷対象データ要求制御部６０３へと渡す。
【００３１】
印刷対象データ要求制御部６０３は、メイン制御部６０１からの指示を受け、通信部６０２を通じて文書管理システム１００１への印刷対象データ要求を行う。また、印刷対象データ要求制御部６０３は、応答として受けた印刷対象データを印刷命令生成部６０４で印刷命令に変換し、出力部６０８を用いて出力させる。印刷命令生成部６０４は、印刷対象データ要求制御部６０３の指示に基づいて、印刷対象データを受け取り、出力デバイス１００２の出力実行命令に変換する。ここで出力実行命令とは、プリンタ装置４０２を具体的に動作させるためのプリンタ装置制御コードである。この時、印刷対象データ要求制御部６０３は印刷設定情報も同時に渡す場合があり、この場合、印刷命令生成部６０４は印刷設定情報の内容を解釈し、指定された内容に基づいた出力実行命令に変換する。
【００３２】
チケット発行部６０５は、メイン制御部６０１より指示を受け、印刷チケットを生成して、メイン制御部６０１へ渡す。ここで印刷チケットとは、印刷指示リクエストを受けるたびに動的に生成するインターネット、イントラネット含めてネットワーク上で一意な情報であり、ＧＵＩＤのような一意な文字列もしくは数字を示すが、一意な情報を含むファイルでもよい。印刷設定情報生成部６０６は、メイン制御部６０１より指示を受けてフィニッシャーなどのオプション設置状況や自デバイスの能力をプリンタ情報管理部４０３から取得・確認し、現時点で可能な印刷設定情報を生成してメイン制御部６０１へ報告を行う。印刷設定情報は、ＸＭＬやＪＳＯＮのような形で表現されることを想定しているが、フォーマットに関しては特に問わないものとする。出力部６０８は、印刷対象データ要求制御部６０３から渡される印刷命令を順次実行し、プリンタ装置４０２から出力させる。
【００３３】
図７は、本発明の実施形態に係るクライアント端末１００３上で動作するＷｅｂブラウザのソフトウェア構成図である。図７で矩形として表現される各構成要素はそれぞれ、外部メモリ３０９やプログラムＲＯＭ３０２からＲＡＭ３０１へロードされ、ＣＰＵ３００で実行されるプログラムコンポーネントを表している。各コンポーネントやデータの集合は、論理的に分割して表現しているだけで、物理的には必ずしも分割されていなくてもよい。
【００３４】
メイン制御部７０１は、Ｗｅｂブラウザ全体をコントロールするもので、各コンポーネントの呼び出しと実行制御、およびコンポーネント間のデータの受け渡しを行う。通信部７０２は、メイン制御部７０１の指示に基づいてＮＣ３０６経由でネットワークリクエストを流す。また通信部７０２は、送信したリクエストのレスポンスとしてＮＣ３０６経由で情報を受け取り、メイン制御部７０１へと渡す。
【００３５】
描画部７０３は、メイン制御部７０１から受け取ったＨＴＭＬデータを解釈し、描画する。スクリプト実行部７０４は、メイン制御部７０１から受け取ったスクリプトを解釈し、実行する。また、スクリプト実行部７０４は、実行したスクリプトが外部へデータを送信したり、描画要求をしたりする場合、メイン制御部７０１へその実行を依頼する。ユーザ操作検知部７０５は、ユーザがＷｅｂブラウザ経由で行った操作をメイン制御部７０１へと伝える。
【００３６】
［データ構造］
図９（Ａ）は、文書管理システム１００１がユーザ情報記憶部５０４で管理するデータ構造の一例を示すもので、ユーザ名と対応するパスワード情報が管理されている。図９（Ｂ）及び（Ｃ）は文書管理システム１００１が文書記憶部５１２で管理するデータ構造の一例を示す。図９（Ｂ）は、文書のデータを格納し、その文書に対応する名前と、その文書を一意に特定することが可能なＵＲＩとを関連付けるテーブルである。このＵＲＩを指定することで、クライアント端末１００３上のＷｅｂブラウザは対象文書を取得することが可能である。図９（Ｃ）は、文書に対する各ユーザのアクセス権限を定めたアクセス制御情報テーブルである。例えば、ＤｏｃＩＤが１の文書に対して、ＵｓｅｒＩＤが１のユーザは、Ｒ（読み取り）権限とＷ（書き込み）権限の両方が与えられていることを示している。
【００３７】
図９（Ｄ）及び（Ｅ）は、文書管理システム１００１が印刷対象データ要求記憶部５０８で管理するデータ構造の一例を示す。図９（Ｄ）は、出力デバイス１００２からリクエストを受けている印刷対象データ要求の一覧を管理するテーブルである。図９（Ｅ）は印刷対象データ要求に付与されてきた印刷チケットを管理するテーブルで、ここでは印刷チケットがＧＵＩＤの場合を示しており、ＴｉｃｋｅｔＤａｔａ列に印刷チケットのデータが格納されている。印刷チケットがファイル構造の場合にも同様にＴｉｃｋｅｔＤａｔａ列にバイナリ情報として印刷チケットのデータを格納してもよいし、文書管理システム１００１内にファイルとして置き、ＴｉｃｋｅｔＤａｔａ列にはそのファイルパスを格納してもよい。また、図９（Ｄ）及び（Ｅ）は、ＴｉｃｋｅｔＩＤで関連付けられている。
【００３８】
［フローチャート］
図１０は、文書管理システム１００１、出力デバイス１００２、クライアント端末１００３で実行される処理の流れを表したフローチャートである。なお、図１０のフローチャートにおいて、文書管理システム１００１上での処理は、図５に示したソフトウェアをＣＰＵ３００が実行することによって処理されるものとする。同じく、図１０のフローチャートにおいて、出力デバイス１００２上での処理は、図６に示したソフトウェアをＣＰＵ４００が実行することによって処理されるものとする。同じく、図１０のフローチャートにおいて、クライアント端末１００３上での処理は、図７で示したＷｅｂブラウザのソフトウェアをＣＰＵ３００が実行することによって処理されるものとする。
【００３９】
まず、図１０は、クライアント端末１００３上のＷｅｂブラウザが文書管理システム１００１にアクセスしている状態である。ここで、Ｓ１２０１において、クライアント端末１００３上のＷｅｂブラウザがユーザによる印刷対象文書の選択と印刷ボタン押下という操作を受け付け、文書管理システム１００１へ通知する。この通知をうけ、文書管理システム１００１はＳ１２０２として印刷ボタンの押下イベントを検知し、Ｓ１２０３で印刷指示用スクリプトをクライアント端末へイベントの応答という形で配信を行う。Ｓ１２０４では、クライアント端末１００３が配信された印刷指示用スクリプトを実行し、印刷先指定ダイアログを表示する。図１２は、クライアント端末１００３のＷｅｂブラウザで印刷先指定ダイアログを表示するＵＩの一例で、印刷ボタン１４０１、印刷先指定ダイアログ１４０２を備える。
【００４０】
Ｓ１２０５は、この印刷先指定ダイアログ１４０２が印刷先をユーザによって出力デバイスのＩＰアドレスなどという形で指定されるのを受け付ける。印刷先の指定方法はここではＩＰアドレスを例として挙げたが、例えば、出力デバイスのネットワーク名での指定でもよい。また、印刷指示用スクリプトにローカルデバイスを探索・列挙するスクリプトを含めておいて、それを実行してから印刷先指定ダイアログを表示させることで、印刷先をＵＩ上で列挙しその中から選択させるような形式にしてもよい。
【００４１】
次にＳ１２０６では、印刷指示用スクリプトが、Ｓ１２０５で指定された出力デバイスに対して印刷指示を送信する。この印刷指示には、文書管理システム１００１のアクセス先アドレス情報も添付されるものとする。印刷指示を受け取った出力デバイス１００２は、Ｓ１２０７として、印刷チケットの発行を行う。ここでいう印刷チケットは、ＧＵＩＤなどの一意なＩＤ文字列や数値もしくはファイル形式でもよい。次にＳ１２０８として、出力デバイス１００２は、印刷指示として受け取った文書管理システム１００１のアドレスに対し、Ｓ１２０７で発行した印刷チケットを添付し、文書管理システム１００１へ印刷対象データ要求を行う。
【００４２】
文書管理システム１００１は、Ｓ１２０９で、出力デバイス１００２からの印刷対象データ要求を受信するが、すぐには応答せず、応答待ち状態にしておく。この時受信した印刷対象データ要求は添付されている印刷チケットとともに、文書管理システム１００１が印刷対象データ要求記憶部５０８に図９（Ｄ）及び（Ｅ）のようなデータ構造の形態で一時的に保存する。出力デバイス１００２は、Ｓ１２０８で印刷対象データ要求を行った後、Ｓ１２１０で印刷指示の送信元であるクライアント端末１００３へ印刷チケットを返信する。
【００４３】
クライアント端末１００３は、Ｓ１２１１で印刷指示の応答として印刷チケットを取得し、Ｓ１２１２でその印刷チケットとＳ１２０１で選択した文書のＵＲＩを添付して文書管理システム１００１に対する印刷要求を行う。また、この印刷要求には、実行ユーザを示す情報も添付されて誰からの要求なのか文書管理システム１００１から判別可能であるのが通常である。Ｓ１２１３では、文書管理システム１００１が印刷要求を受信し、添付されている実行ユーザを示す情報からアクセス権判定部５１４が指定されたＵＲＩの文書に対して読み取りアクセス権があるかどうかを判定する。Ｓ１２２１では、その判定に基づいて、アクセスを許可された権限がない場合にはＳ１２１５へ、アクセスを許可された権限がある場合には１２２２へと処理を切り替える。
【００４４】
Ｓ１２２２では、印刷要求に添付されている印刷チケットに対応する印刷対象データ要求を検索する。この印刷対象データ要求の検索は、要求検索部５０９が図９（Ｄ）及び（Ｅ）のように管理されている印刷対象データ要求記憶部５０８から検索を行うことで実現する。Ｓ１２１４では、文書管理システム１００１のメイン制御部５０２が、要求検索部５０９が目的の印刷対象データ要求を見つけられたかどうかを判定する。目的の印刷対象データ要求を見つけることが出来なければメイン制御部５０２は、Ｓ１２１５にて印刷エラー画面を生成し、クライアント端末１００３へ返信する。
【００４５】
一方、Ｓ１２１６で目的の印刷対象データ要求を見つけることができた場合は、Ｓ１２０９で応答待ち状態になっていた印刷対象データ要求受付スレッドが、印刷対象文書を応答するよう通知を受ける。具体的には、まず応答待ち状態になっている印刷対象データ要求受付スレッドが、図９（Ｄ）の対応する印刷対象データ要求のＤｏｃＵＲＩ列を監視しておく。この状態でメイン制御部５０２の指示に基づき対応文書指定部５１０が印刷要求に添付された文書のＵＲＩを、ＤｏｃＵＲＩ列に書き込むことで印刷対象データ要求受付スレッドが通知を受けたとみなす。ただし、この通知方法はあくまで一例であり、対象データ要求受付スレッドに対して、対応文書指定部がイベント発行やメッセージ送信などの手段で文書ＵＲＩの通知を行ってもよい。
【００４６】
上記のように通知を受けた印刷対象データ要求受付スレッドは、文書ＵＲＩが指定されると文書取出部５１１を通じて文書を取り出し、印刷対象データ要求への応答として文書を返信する。これにより、送信部としての役割を担う。
【００４７】
Ｓ１２１７では、出力デバイス１００２が印刷対象データ要求の応答として文書を受け取り、このデータの印刷を実行し、Ｓ１２１８として実行結果を文書管理システム１００１へ通知する。文書管理システム１００１はＳ１２１９で印刷結果を受け取って、印刷完了画面を生成し、クライアント端末１００３へ返信する。クライアント端末１００３は、印刷要求の応答として、印刷完了画面を受け取るので、それを描画してユーザに提示する。
【００４８】
上記記載から、本印刷システムを実現するにあたって印刷対象データに対するセキュリティは文書管理システムで設定したアクセス権と同一になるため、データに対するセキュリティは維持されているといえる。また、文書管理システムのパスワードを他の構成要素へ渡すようなセキュリティリスクを冒さずに、本印刷システムが実現可能であることが示されている。
【００４９】
よって、本実施形態によれば、インターネット上の文書管理システムによって保護・管理された文書を、Ｗｅｂブラウザから操作してイントラネット内の出力デバイスで印刷する機能をセキュアに実現することができる。
【００５０】
＜第二の実施形態＞
第一の実施形態では、クライアント端末１００３で指定した文書を出力デバイス１００２が取得し印刷を実行していた。しかし、印刷設定を指定して印刷を実行することができなかった。また印刷設定は出力デバイスの機種や状況（ホチキス止め機構などのオプション機構設置の有無）によって指定可能な機能が異なる。そのため、出力デバイスから指定可能な印刷設定情報をクライアント端末１００３が受け取る必要があるが、この手段も提示されていなかった。
【００５１】
本実施形態では、第一の実施形態で説明したフローチャート（図１０）の代わりに、図１１に示すフローチャートで説明される形態について説明する。まず、図１１のＳ１２０１からＳ１２０７までは、図１０と全く同じ処理が実行される。図１０では次にＳ１２０８として、出力デバイス１００２が、文書管理システム１００１のアドレスに対し、印刷チケットを添付し、文書管理システム１００１へ印刷対象データ要求を行った。しかし図１１では、Ｓ１２０７の次にＳ１３０１として出力デバイス１００２は文書管理システム１００１のアドレスに対し、印刷チケットだけでなく印刷設定情報も添付し、文書管理システム１００１へ印刷対象データ要求を行うものとする。
【００５２】
ここで印刷設定情報とは、出力デバイス１００２が自分の機能およびオプションの設置状況などを把握し、印刷設定情報生成部６０６が生成するもので、出力デバイス１００２で設定可能な印刷設定をまとめたデータである。図８は印刷設定情報の一例であり、ＸＭＬ形式で表現されているが、データの表現形式はＸＭＬに限定するものではなく、ＪＳＯＮやＣＳＶといった他の形式でもかまわない。
【００５３】
この例では、用紙サイズ（ＰａｐｅｒＳｉｚｅ）、１枚の紙に印刷するページ数（ＮｕｍｂｅｒＯｆＰａｇｅＯｎＰａｐｅｒ）、カラーモード（ＣｏｌｏｒＭｏｄｅ）が指定可能である。また、各々ＸＭＬ要素で定義され、ｖａｌｕｅ属性として現在設定が示され、子要素として選択肢を列挙されている。例えば、用紙サイズに関しては、Ａ４／Ａ３／Ｂ５の中から選択可能で現在は、Ａ４が指定されていることを示す。また、１枚の紙に印刷するページ数としては、１／２／４／８から選択可能で現在は２が指定されているので、一枚の紙に２ページ分のデータが印刷される設定になっている。さらに、カラーモードはカラー／白黒のどちらかを選択可能で、現在はカラー印刷される設定になっている。
【００５４】
Ｓ１３０１が実行された後は、Ｓ１２０９からＳ１２１１までは再び図１０と同様の処理が実行される。Ｓ１２１１の後、図１１ではＳ１３０２が実行され、印刷指示スクリプトが「クイック印刷」するかどうかをユーザに選択させるダイアログを表示し、Ｙｅｓ／Ｎｏの入力を受け付ける。ここでいう「クイック印刷」とは印刷設定を変更しない印刷を意味する。ユーザによりＹｅｓが選択されれば、図１０と同様にＳ１２１２へ進むが、Ｎｏが選択されれば、印刷指示スクリプトは印刷チケットを添付した印刷設定取得要求を文書管理システム１００１に対して実行する。
【００５５】
文書管理システム１００１はＳ１３０４で印刷設定取得要求を受信し、添付されている印刷チケットに合致する印刷設定を検索する。印刷設定の検索方法は、Ｓ１２１３と同様で、要求検索部５０９がまずは添付された印刷チケットに合致する印刷対象データ要求を検索し、その印刷対象データ要求から添付されている印刷設定情報を取得する。Ｓ１３０５では、文書管理システム１００１は印刷設定情報と印刷設定表示用スタイルシートを返信する。ここで印刷設定表示用スタイルシートとは、図８に示すような印刷設定情報をＷｅｂブラウザで表示可能な形に書式付与を行うスタイル情報データである。例えば、図８のように印刷設定情報がＸＭＬで表現される場合には、印刷設定表示用スタイルシートはＸＳＬＴで表現されるのが通常である。また、Ｗｅｂブラウザで印刷設定の変更を検知可能なようにＪａｖａ（登録商標）  Ｓｃｒｉｐｔなどのスクリプトを含めてもよい。
【００５６】
クライアント端末１００３は、Ｓ１３０６で印刷設定情報とスタイルシートを受信してブラウザに表示する。また、Ｓ１３０７でクライアント端末１００３はユーザによる印刷設定変更操作を受け付け、変更された印刷設定情報に印刷チケットを付与して文書管理システム１００１へ送信する。Ｓ１３０８で変更された印刷設定情報を受け取った文書管理システム１００１は、添付されている印刷チケットを使用して、Ｓ１３０４と同様の操作で現在印刷対象データ要求記憶部に保持されている印刷設定情報を検索する。ここで文書管理システム１００１は印刷対象データ要求記憶部に保管されている現在の印刷設定情報を、変更された印刷設定情報で更新する。一方、変更された印刷設定情報を送信した後、クライアント端末１００３は、Ｓ１２１２を図１０と同様に実行する。そして、Ｓ１３０９において、文書管理システム１００１は、Ｓ１２１２にて送信された印刷要求を受信し、印刷チケットに対応する印刷対象データ要求を検索する。その後、Ｓ１２１３からＳ１２１４までも図１０と同様に実行される。
【００５７】
Ｓ１３１０では図１０のＳ１２１５と同様に印刷対象データ要求応答待ちスレッドは、指定ＵＲＩの文書を出力デバイス１００２へ応答として返すが、この時印刷設定情報も付与して応答を返す。Ｓ１３１１で出力デバイス１００２は印刷対象データと印刷設定情報を受信するが、この受信した印刷対象データを付与されている印刷設定情報に従って印刷処理を実行する。その後のＳ１２１８からＳ１２２０は、図１０と同様である。
【００５８】
本実施形態によれば、インターネット上のファイヤウォール外で管理されている文書を、イントラネット内にある出力デバイスで出力する際、出力デバイスの機種や状況に応じた印刷設定を行って出力することが可能になる。
【００５９】
＜第三の実施形態＞
第二の実施形態では、クライアント端末１００３で指定した文書を出力デバイス１００２が取得し印刷を実行していた。しかし、出力デバイス１００２が印刷処理可能な文書フォーマットは限られており、文書管理システム１００１で管理されているフォーマットとは異なる場合がある。
【００６０】
本実施形態では、第二の実施形態で説明したフローチャート（図１１）の代わりに、図１３に示すフローチャートで説明される形態について説明する。まず、図１３のＳ１２０１からＳ１２０７までは、図１０、図１１と同様の処理を実行する。Ｓ１２０７が実行された後、出力デバイス１００２はＳ１５０１で印刷チケットと印刷設定情報と、出力デバイスが出力可能なデータ形式を示すデータ形式情報を付与し、文書管理システム１００１に対して印刷対象データ要求を行うものとする。ここで出力可能なデータ形式情報とは、出力デバイス１００２が印刷可能なフォーマットを識別可能な文字列（例えば「ＰＤＦ」や「ＸＰＳ」など）で表わすものとする。その後、Ｓ１２０９からＳ１２１４まで図１１で示した処理と同様の処理が実行される。
【００６１】
Ｓ１２１４で対応印刷対象データ要求が見つかった場合、文書管理システム１００１はＳ１５０２として、印刷対象データと印刷設定情報とが印刷対象データ要求へ応答として返される。この時、Ｓ１５０１で受け取った印刷可能なフォーマット情報に従って、文書変換部５１３が対象ＵＲＩの文書を出力デバイス１００２が印刷可能なフォーマットへと変換する。文書管理システム１００１は、Ｓ１５０２でこの返還後のデータを印刷対象データとして返信する。
【００６２】
本実施形態によれば、インターネット上のファイヤウォール外で管理されている文書が指定の出力デバイスで処理可能なデータ形式で保管されていない場合でも、指定の出力デバイスで出力することが可能になる。
【００６３】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2011138390.tif 000003
【図２】
2011138390.tif 000004
【図３】
2011138390.tif 000005
【図４】
2011138390.tif 000006
【図５】
2011138390.tif 000007
【図６】
2011138390.tif 000008
【図７】
2011138390.tif 000009
【図８】
2011138390.tif 000010
【図９】
2011138390.tif 000011
【図１０】
2011138390.tif 000012
【図１１】
2011138390.tif 000013
【図１２】
2011138390.tif 000014
【図１３】
2011138390.tif 000015