説明

印刷システム、印刷方法、及び、印刷装置

【課題】印刷装置の処理負荷の増大を防ぎ、印刷管理を容易とする印刷システムを提供する。
【解決手段】印刷装置がホストにおいてユーザから入力されたアカウント情報によりユーザを認証する認証手段と、認証手段によりユーザが認証された後、印刷装置がユーザとアプリケーションと印刷機能制限情報とが関連付けられた情報を参照することにより、印刷機能制限情報を含むトークンを生成しホストに送信するトークン生成手段と、ホストが、トークンを受信し印刷機能制限情報を含むコマンドを生成し印刷装置に送信するコマンド生成手段と、印刷装置が、コマンドを受信し印刷機能を制限された印刷を行う印刷手段とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ホストコンピュータが生成した画像データをネットワークなどのインフラを介して画像処理装置に送信し、実際の用紙に印刷を行なう印刷システムに関する。
【背景技術】
【0002】
昨今、印刷システムにおいて、プリンタやシステムの初期導入費用だけではなく、印刷用紙やトナーに代表される着色剤などの消耗品のコストを含めたTCOの削減が、オフィスの経費削減の観点より注目されている。また地球環境の保全の点から注目されている。TCOとは、「Total Cost of Ownership」の略である。
【0003】
従来の印刷システムの問題点として、オフィスにプリンタが設置されており、ネットワークにアクセスできてしまえば、誰でもプリンタを使用した印刷ができてしまうということがあげられる。誰にも印刷制限がかからず、形跡も残らないため、使用者の精神的な歯止めも効かないため本来必要な出力を超えた印刷が行なわれることが度々あり、オフィスのコスト増大を招いていた。
【0004】
これらに対抗するために、第1の手段としてTCP/IPにおけるIPアドレスなどのアドレス情報による印刷制限や、第2の手段として印刷ログの取得による印刷枚数の管理を実現している印刷システムが多数実現化されている。しかし、第1の手段は特定のIPアドレスに制限をかけてしまうという大雑把な方法であり、特定のユーザの出力枚数を制限するといった詳細な管理はできなかった。また第2の方法によれば、出力によりログを残すことは可能であるが、管理者がいちいちログを監視して不正な印刷が行なわれているかの調査には大きな人的コストがかかるためTCO削減の趣旨から外れてしまうことになる。
【0005】
上記の問題を解決するために、特許文献1において、ユーザ毎に出力枚数を制限するユーザ制限機能が提案されている。従来においては、印刷可能枚数制限のみが管理対象とされていた。しかしながら、特許文献1には、プリンタから出力される枚数自体を減らすことができる両面印刷やNup印刷、さらにはトナー消費を抑えるためのカラー/モノクロ印刷に関する制限もユーザ毎に管理するシステムが記載されている。
【0006】
従来においては、更に、あるユーザに割り当てられた印刷可能枚数がゼロになってしまった状況下で、そのユーザが勤務管理アプリから勤務レポートを出力して提出しなければならないような場合があった。その場合、枚数制限の制限を解除したいという要求があった。また特定アプリからの出力に関しては体裁を重視したいのでNup印刷などの印刷機能制限を外したいという要求があった。
【0007】
それらの要求を満たすため、特許文献2には、ユーザの他に、印刷するアプリケーション毎、印刷されるドキュメント毎、印刷が実行されるホストコンピュータ毎などに細かく管理するシステムが記載されている。
【0008】
図13は、従来におけるホスト装置100と印刷装置200とで構成されるシステムにおける動作のシーケンスを示す図である。まず、ステップS401において、ホスト装置100上で、印刷を行いたいユーザは、アカウント情報を入力する。ここで、アカウント情報には、ユーザを識別するためのユーザ名と、そのユーザであることを証明するパスワードが含まれている。ステップS402において、ホスト装置100は、ユーザアカウント情報以外の印刷機能制限を託す条件を取得する。ここで、印刷するアプリケーションの印刷モジュール名称を取得している。ステップS403において、ホスト装置は、ユーザアカウント情報と印刷機能制限を託す条件を印刷装置200に送付する。次に、ステップS404において、印刷装置200は、ユーザアカウント情報が正しいことを確認する。ここで、従来におけるユーザアカウント情報について説明する。図14は、印刷装置200が管理するユーザアカウント情報の一例を示す図である。800はユーザ認証情報である。ユーザ名とそのユーザ毎のパスワードと、そのユーザが所属するグループとが管理されている。ユーザ認証情報800を元に、ユーザアカウント情報が正しいことが確認される。ユーザアカウントと印刷機能制限を託す条件を元に、印刷権限トークンが生成される。図14の810は、グループ毎の印刷許可情報である。グループに対して、印刷許可、片面許可、カラー許可、Nup印刷許可の管理がされている。図14の820は、アプリケーション毎の印刷制限情報である。アプリケーション毎に、印刷許可、片面許可、カラー許可、Nup印刷許可の管理がされている。印刷装置200は、ユーザ認証情報800とグループ毎の印刷許可情報810とアプリケーション毎の印刷制限情報820とを演算して、印刷権限トークンを生成する。
【0009】
図15は、従来における印刷権限トークンの一例を示す図である。例えば、ユーザAがワープロを使って印刷を行う場合に、管理者グループの印刷許可情報810を元に、印刷権限トークン900を生成する。また、ユーザAがスケジューラを使いたい場合には、スケジューラの印刷許可情報を元に、印刷権限トークン910を生成する。このように印刷装置200がユーザアカウント情報と印刷機能制限を元に計算を行って印刷権限トークンを生成する。印刷機能制限トークンにはその改竄を防止するために電子署名が付与される。
【0010】
再び、図13を参照する。ステップS405において、印刷装置200は、ステップS404で生成された印刷権限トークンを送信する。ステップS406において、ホスト装置100は、取得した印刷権限トークンの内容を読み取り、印刷ジョブ中の印刷機能に対して制限をかける。ステップS407において、ステップS406によって印刷機能制限がかかったPDLを生成する。
【0011】
図16は、生成したPDLの一例を示す図である。PDL1000は、PDLヘッダ1001と、印刷権限トークン1002と、そしてPDLボディ1003とで構成される。PDLヘッダ1001は印刷ジョブ全体に対する印刷機能設定を含んでいる。印刷権限トークン1002は、ステップS405で印刷装置200より渡されたものであり、その情報を元に、印刷装置200で印刷機能の制限が正しく行われているか否かを検証する。PDLボディ1003には、ページに対する印刷機能や描画内容が含まれている。ステップS408において、ステップS407で生成されたPDL1000をホスト装置100から印刷装置200に送信する。ステップS409において、印刷装置は、PDL1000内の印刷権限トークン1002が存在するかを確認し、その内容を参照して、PDLヘッダ1001とPDLボディ1003内の印刷機能が正しく適用されているか否かを検証する。ステップS410において、正しく適用されていると判定された場合に、PDL1000の印刷を行う。
【0012】
以上が従来における印刷システムの動作である。しかしながら、一般的なユーザ環境においては、ホスト装置の数は印刷装置の数に比べて多い。ステップS404の印刷権限トークンの生成処理は、ユーザ認証処理と、データベースアクセスと、印刷権限の合成処理と、そして印刷権限トークンへの電子署名といった、データ検索と計算負荷が必要な処理で構成されている。また、印刷機能制限を託する条件毎に、個別に印刷権限トークンの生成処理を行う必要がある。そのため、同時に複数のホスト装置より印刷ユーザの承認と印刷権限トークンの取得要求が発生すると印刷装置に処理負荷が集中し、応答が遅延する場合があった。
【0013】
ここで、印刷権限トークン生成負荷軽減のために全ての条件に関する情報を前もって生成し、格納する方法も考えられる。しかしながら、その場合でも格納容量の問題が生じるため実用上の問題がある。また、従来例を改良し、認証用サーバを別途も設けて計算負荷を分散する方法も考えられる。しかしながら、その場合でも別途サーバを動作させるためのホスト装置を設定する必要があり購入コストと管理コストの増大となりTCOが削減されないという問題が生じる。別の方法として、ホスト装置で印刷機能トークンをキャッシュし再利用する方法も考えられる。しかし印刷機能制限を託す条件毎に印刷機能トークンが異なるため、ホスト装置内での印刷機能トークンのキャッシュ量が多くなり、管理が煩雑になるという課題が生じる。
【特許文献1】特開2003−150336号公報(段落0160)
【特許文献2】特開2007−293703号公報(段落0080)
【発明の開示】
【発明が解決しようとする課題】
【0014】
そこで、上記の点に鑑み、本発明は、印刷機能制限の処理における負荷の増大を防ぐ印刷システムを提供することを目的とする。
【課題を解決するための手段】
【0015】
本発明に係る印刷システムは、外部からの印刷の指示を受け付けるアプリケーションを含み、印刷のためのコマンドを生成するホストと、ホストとネットワークを介して接続され、生成されたコマンドにより印刷を行う印刷装置とを含んで構成される印刷システムであって、印刷装置が、ホストにおいてユーザから入力されたアカウント情報によりユーザを認証する認証手段と、認証手段によりユーザが認証された後、印刷装置が、ユーザとアプリケーションと印刷機能制限情報とが関連付けられた情報を参照することにより、印刷機能制限情報を含むトークンを生成しホストに送信するトークン生成手段と、ホストが、生成手段により生成されたトークンを受信し、印刷機能制限情報を含むコマンドを生成し印刷装置に送信するコマンド生成手段と、印刷装置が、コマンド生成手段により生成されたコマンドを受信し、印刷機能を制限された印刷を行う印刷手段とを備える。
【0016】
また、本発明に係る印刷装置は、外部からの印刷の指示を受け付けるアプリケーションを含み、印刷のためのコマンドを生成するホストとネットワークを介して接続され、コマンドにより印刷を行う印刷装置であって、ホストにおいてユーザから入力されたアカウント情報によりユーザを認証する認証手段と、認証手段によりユーザが認証された後、ユーザとアプリケーションと印刷機能制限情報とが関連付けられた関連付け情報を参照することにより、印刷機能制限情報を含むトークンを生成しホストに送信するトークン生成手段とを有し、トークンに応答してホストから送信された印刷機能制限情報を含むコマンドを受信することにより印刷機能を制限された印刷を行う。
【発明の効果】
【0017】
本発明によれば、印刷機能制限の処理において、負荷の増大を防ぐことができる。
【発明を実施するための最良の形態】
【0018】
以下に、本発明を実施するための最良の形態について、図面を参照しながら詳しく説明する。なお、同一の構成要素には同一の参照番号を付して、説明を省略する。図1は、本発明に係る実施形態における一般的なシステム構成を示す図である。図1に示すように、複数のホスト装置100と印刷装置200とが、ネットワーク300を介して接続されている。本実施形態において、印刷装置200が、ユーザアカウントの認証と印刷権限トークンの発行を行う。ここで、本実施形態において、印刷装置200が複数台存在してもよい。一般的に、ホスト装置100は、印刷装置200より多い。そのため、複数のホスト装置100から同時にユーザアカウントの認証と印刷権限トークンの発行の依頼が印刷装置200に集中する場合がある。
【0019】
図2は、本実施形態におけるホスト装置100内のモジュール構成を示す図である。まず、ホスト装置100における一般的な印刷処理フローについて説明する。ホスト装置100において、ファイルアクセスやネットワーク通信などの基本機能を提供するOS101が動作している。OS101上で、ワープロや表計算ソフトに代表されるアプリケーション102が動作している。ホスト装置100は、アプリケーション102によって、外部(ユーザ)からの印刷指示を受け付けることができる。アプリケーション102は、OS101から提供されるグラフィックスエンジン103を介してプリンタドライバ104に印刷指示を行う。グラフィックスエンジン103は、印刷装置200のベンダが提供するプリンタドライバ104を呼び出し、印刷指示を印刷装置200が解釈可能なPDLコマンドに変換する。プリンタドライバ104は、両面印刷やカラー印刷やNup印刷などのユーザが設定した印刷機能と、グラフィックスエンジン103により渡されたページ上の描画を表す描画命令を、印刷装置200で解釈可能なPDLコマンドに変換する。プリンタドライバ104は、変換したPDLコマンドをOS101から提供されるシステムスプーラ105に渡す。システムスプーラ105は、通信モジュール106を使って、ネットワーク300経由で、実際に印刷出力を行う印刷装置200にPDLコマンドを送信する。
【0020】
本実施形態において、プリンタドライバ104は、ユーザ認証情報送信手段107と、印刷機能制限情報受信手段108と、印刷機能制限手段109とを含んでいる。ユーザ認証情報送信手段107と印刷機能制限情報受信手段108は、通信モジュール106を介してネットワークに接続されている。ユーザ認証情報送信手段107は、印刷時に印刷を行うユーザのユーザアカウント情報の収集と、その印刷装置への転送処理を担当する。印刷機能制限情報受信手段108は、ユーザアカウント情報を元に印刷装置200で生成された印刷権限トークンを受信し、印刷機能制限手段109に渡す処理を担当する。印刷機能制限手段109は、印刷権限トークンの内容に従い、印刷機能を制限する。また、改竄防止等のために、PDLの加工も担当する。
【0021】
図3は、本実施形態における印刷装置200内のモジュール構成を示す図である。まず一般的な印刷動作について説明する。印刷装置200は、印刷装置側通信モジュール201によってネットワーク300に接続されている。印刷装置側通信モジュール201は、PDLコマンドを受けると、そのPDLコマンドを印刷ジョブ解析手段204に渡す。印刷ジョブ解析手段204は、PDLコマンドを解析し、Nup印刷などのユーザが設定した印刷機能情報と、ページ上の描画を表す描画命令情報に分離する。印刷ジョブ解析手段204は、印刷機能情報を印刷機能制御手段206へ、描画命令情報を印刷イメージ生成手段208へ渡す。印刷機能制御手段206は、印刷機能情報を解析し、両面印刷などのオプション装置でハードウェア的に実現される機能を、オプション装置制御手段207へ依頼する。また、印刷機能制御手段206は、カラー印刷やNup印刷などの描画に関する機能を印刷イメージ生成手段208に依頼する。オプション装置制御手段207は、印刷機能制御手段206の依頼をうけて、オプション装置の制御を行う。印刷イメージ生成手段208は、カラー印刷やNup印刷など印刷機能制御手段206の依頼を加味しながら、ページ上の描画を表す描画命令情報をプリンタエンジン210が処理可能なイメージ画像へ変換する。印刷イメージ生成手段208が生成したイメージ画像は、一旦、印刷イメージ格納手段209へ格納され、プリンタエンジン210により紙などの媒体へ印刷される。
【0022】
本実施形態においては、更に、印刷装置200は、印刷機能制限情報生成手段202と、アカウント情報記憶手段203と、印刷ジョブ判定手段205とを含んでいる。印刷機能制限情報生成手段202は、印刷装置側通信モジュール201を介して、ネットワークに接続されている。また、アカウント情報記憶手段203は、図4に示すユーザ認証情報400とグループ毎の印刷許可情報410を保持している。図4については後述する。印刷機能制限情報生成手段202は、ホスト装置100より送付されたユーザアカウント情報を受け、アカウント情報記憶手段203に格納されている情報を元に、ユーザ認証と印刷権限トークンを発行する。印刷ジョブ判定手段は、印刷装置200が受け取ったPDLを検証する。
【0023】
図5を参照して、本実施形態におけるホスト装置100と印刷装置200との処理の手順について説明する。ホスト装置100において、ユーザは、アプリケーション102を用いて印刷指示を行う。アプリケーション102は、OS101から提供されるグラフィックスエンジン103を介して印刷指示を行う。グラフィックスエンジン103は、印刷装置200のベンダから提供されるプリンタドライバ104を呼び出す。ここまでは、既に説明した一般的な印刷処理フローの説明と同じである。ステップS100において、プリンタドライバ104は、ユーザ認証情報送信手段107を呼び出し、図6に示すユーザアカウント情報の入力を促すユーザ認証ダイアログ600を表示する。ユーザは、ユーザ認証ダイアログ600のユーザ名601とパスワード602の入力フィールドにユーザアカウント情報を入力し、OKボタン603を押す。ユーザ認証情報送信手段107は、ユーザ認証ダイアログ600に入力された情報をユーザアカウント情報として取得する。
【0024】
次に、ステップS101において、ユーザ認証情報送信手段107は、取得したユーザアカウント情報を印刷装置にネットワークを介して送付し、印刷装置200に印刷権限トークンを要求する。一般的に、ユーザアカウント情報をそのままネットワークに流すのはセキュリティ上問題が多いので、暗号化するなど各種暗号化技術の方法が取られても良い。
【0025】
ステップS102において、印刷装置側通信モジュール201は、ユーザアカウント情報を受け、印刷機能制限情報生成手段202にその情報を渡す。印刷機能制限情報生成手段202は、図4に示すユーザ認証情報400を元に、ホスト装置100より渡されたユーザアカウント情報が正しいか否かを検証する。ここで、ユーザアカウント情報が正しい場合、印刷機能制限情報生成手段202は、該当するグループの優先順位が高いグループ情報を呼び出し、図4に示すグループ毎の印刷許可情報410から印刷が許可されている機能情報を入手する。印刷機能制限情報生成手段202は、その情報を元に、図7に示す印刷権限トークンを生成する。図7については、後述する。
【0026】
次に、ステップS103において、 印刷機能制限情報生成手段202は、印刷装置側通信モジュール201を介して、ホスト装置100に印刷権限トークンを送信する。本実施形態において、印刷権限トークンには、図15に示す従来の印刷権限トークン900及び910と同様に、改竄防止の署名が付加されている。但し、本実施形態における印刷権限トークンは、従来の印刷権限トークン900及び910と異なり、印刷機能制限を託す条件毎に対して印刷機能制限事項が全て記載されている。
【0027】
ステップS104において、印刷機能制限情報受信手段108は、通信モジュール106を介して印刷権限トークンを受信する。また、印刷機能制限情報受信手段108は、印刷機能制限を託す条件である現在印刷を指示しているアプリケーション102の印刷実行モジュール名称をOS101機能を用いて取得する。印刷機能制限情報受信手段108は、印刷権限トークンと、印刷機能制限を託す条件である印刷実行モジュール名称を印刷機能制限手段109に渡す。
【0028】
次に、ステップS105において、印刷機能制限手段109は、印刷機能制限を託す条件である印刷実行モジュール名称に該当する印刷機能制限事項を印刷権限トークンより読み取る。ここで、印刷実行モジュール名称が印刷権限トークンに無い場合には、標準の印刷制限項目を用いる。読み取った印刷機能制限事項を元に、ユーザインタフェース(本実施形態においては、図8に示す印刷機能制限を託す旨を伝えるダイアログ610)によってユーザに表示する。ダイアログ610には、印刷権限トークンに含まれる一般名称タグで囲まれたアプリケーション名(例えば、“スケジューラ”)と、印刷機能として許可されている項目(例えば、“印刷許可、片面許可、カラー許可、1up許可)が表示される。ユーザが、OKボタン612を押すことにより、ダイアログ610は閉じられる。ユーザの確認後、印刷機能制限手段109は、プリンタドライバ104に働きかけて、印刷機能制限を託す条件である印刷実行モジュール名称に該当する印刷権限トークン内の印刷機能制限事項の印刷機能制限を行う。プリンタドライバ104は、PDLコマンドを生成する。
【0029】
ステップS106において、印刷機能制限手段109は、プリンタドライバ104が生成したPDLに対して、印刷権限トークン702の付与と、もし条件を利用していれば印刷実行モジュール名称などの印刷機能制限を託した条件703を追加する。また、悪意のあるユーザによるPDLコマンドの改竄を防止するため、PDLコマンドを複数個に分割し、分割したパート毎に電子署名を行う。図9に改竄防止がされたPDLコマンド700の例を示す。署名704は、PDLヘッダ701、印刷権限トークン702、印刷機能制限を託した条件703の3つのパートへの署名である。第1の署名706は、署名704と第1のPDLボディ705に関する署名である。以下、前回の署名と現在のPDLボディへの署名を生成し、現在のPDLボディの後ろに配置する。前の署名を署名対象に含めることにより、PDLコマンド全体への署名を行うことができる。
【0030】
次に、ステップS107において、プリンタドライバ104は、生成したPDLコマンド700を一般的な印刷処理フローと同様に、システムスプーラ105に渡す。システムスプーラ105は、通信モジュール106を使ってネットワーク300を介し、印刷装置200にPDLコマンド700を送信する。即ち、ホスト装置100は、ステップS104において受信した印刷権限トークンに応答して、ステップS107において、印刷装置200にPDLコマンドを送信する。
【0031】
ステップS108において、印刷装置200では、印刷装置側通信モジュール201を介して印刷ジョブ解析手段204が、PDLコマンド700を受信する。印刷ジョブ解析手段204は、PDLコマンド700を印刷ジョブ判定手段205に渡す。印刷ジョブ判定手段205は、まず、PDLコマンド700に改竄がなされていないか否か、PDLコマンドの各パートとその署名が一致しているか否かを検証する。続けて、印刷機能制限情報生成手段202に依頼して印刷権限トークンの署名が正しいか否かを検証する。最後にPDLコマンド700の印刷機能制限を託す条件と印刷機能情報が一致しているか否かを検証する。一致しない印刷機能制限は、印刷機能情報に適用できないとして処理される。
【0032】
ステップS109において、印刷ジョブ判定手段205で、検証済みのPDLコマンド700は、再度、印刷ジョブ解析手段204に渡され、通常の印刷処理の手順で印刷が実行される。
【0033】
ここで、図4について説明する。図4は、印刷装置200のアカウント情報記憶手段203に格納されているユーザ認証情報400と、グループ毎の印刷許可情報410を示す図である。ユーザ認証情報400は、ユーザ名とパスワードと、そのユーザが属するグループ名とを複数個管理している。例えば、ユーザAに関するユーザ認証情報は、列401であり、ユーザAは、「管理者」と「一般」のグループに属している。ここで、本実施形態においては、グループ1が、グループ2より優先度が高いものとしている。グループ毎の印刷許可情報410によって、グループに対する印刷機能許可事項を管理することができる。また、図14に示す従来の例と異なり、印刷機能制限を託す条件である印刷実行モジュール名称に関する情報も同じ表で管理されている。例えば、管理者グループの標準的な印刷機能許可項目は列411で管理されている。また、管理者グループがスケジューラを使用した場合の印刷機能許可項目は、列412で管理されている。更に、アプリケーションに関する一般名称も同じ表の2列目の「アプリ名」として管理されている。この情報を元に、図8に示すユーザへの印刷許可項目を示すダイアログ上で、アプリケーション名が表示されることができる。
【0034】
図7は、印刷権限トークンの一例を示す図である。図4に示すユーザ認証情報400とグループ毎の印刷許可情報410とを用いて、印刷権限トークンの情報が生成される。ユーザAに対する印刷権限トークン500は、図4に示すユーザ認証情報400の列401と、グループ毎の印刷許可情報410の列411、列412、列413をXML形式として表したものである。また、ユーザBに対する印刷権限トークン510は、図4に示すユーザ認証情報400の列402と、グループ毎の印刷許可情報410の列414、列415をXML形式として表したものである。どちらの印刷権限トークンも<署名>タグで囲まれた署名情報を含んでいる。この署名は、<許可内容>以下の要素情報に関する署名であり、印刷権限トークンの改竄防止のための署名である。
【0035】
図10は、本実施形態におけるホスト装置100での処理の手順を示すフローチャートである。以下、ホスト装置100における処理について説明する。ステップS201において、プリンタドライバ104は、ユーザ認証情報送信手段107を呼び出し、図6に示すユーザアカウント情報の入力を促すユーザ認証ダイアログ600を表示する。
【0036】
次に、ステップS202において、ユーザが、ユーザ認証ダイアログ600のユーザ名601とパスワード602の入力フィールドにユーザアカウント情報を入力する。ここで、ユーザがOKボタン603を押した場合には、ユーザアカウント情報が入力されてステップS203に進む。一方、キャンセルボタン604を押した場合には、ステップS214に進み、印刷を中止する。以下、ユーザAによる認証があった場合について説明する。ステップS203において、ユーザ認証情報送信手段107は、取得したユーザアカウント情報を印刷装置200にネットワーク300を介して送信する。印刷機能制限情報受信手段108は、通信モジュール106を介してユーザAのための印刷権限トークン500を受信する。
【0037】
ステップS204において、印刷機能制限情報受信手段108は、印刷機能制限を託す条件を、OS101の機能を用いて取得する。本実施形態においては、印刷を実行しているアプリケーションの印刷実行モジュール名が、その条件として取得される。例えば、スケジューラの場合には、「schedule.exe」という実行モジュール名が取得される。印刷機能制限情報受信手段108は、印刷権限トークン500と、印刷機能制限を託す条件を印刷機能制限手段109に渡す。
【0038】
次に、ステップS205において、印刷機能制限手段109は、印刷機能制限を託す条件に該当する印刷機能制限事項を印刷権限トークン500から読み取る。例えば、印刷機能制限を託す条件が「schedule.exe」であった場合、モジュール名属性として「schedule.exe」があるタグ<アプリ許可>内の情報を現在の印刷機能制限事項とする。もし、印刷実行モジュール名が印刷権限トークンに無い場合には、標準の印刷制限事項を用いる。読み取った印刷機能制限事項を元に、図8に示す印刷機能制限を託す旨を伝えるダイアログ610をユーザに表示する。ダイアログ610には、印刷権限トークンに含まれる一般名称タグで囲まれたアプリケーション名(例えば、“スケジューラ”)と、印刷機能として許可されている項目(例えば。“印刷許可、片面許可、カラー許可、1up許可)が表示される。ユーザがOKボタン612を押すことにより、ダイアログ610は閉じられる。
【0039】
ステップS206において、現在の印刷機能制限事項で印刷が許可されている場合には、ステップS207に進む。一方、印刷が許可されていない場合には、ステップS214に進み、印刷を中止する。
【0040】
次に、ステップS207において、印刷機能制限手段109により、プリンタドライバ104は、印刷権限トークン内の印刷機能制限を託す条件である印刷実行モジュール名称に該当する印刷機能制限事項に基づいて印刷機能制限を行う。
【0041】
ステップS208において、ステップS207で印刷機能制限がプリンタドライバ104で実施されない場合がある。例えば、片面印刷が許可されていない場合に、ユーザがOHP用紙を選択した場合、プリンタドライバ104に両面印刷を指示しても、意味を成さない印刷になるので、印刷機能制限が適用されない。そのため、実際に印刷機能制限が適用されたか否かを確認する。ここで、適用できたと判定された場合には、ステップS209に進む。一方、適用できなかったと判定された場合には、ステップS213に進む。
【0042】
次に、ステップS209において、印刷設定に従い、プリンタドライバ104は、PDLコマンドを生成する。
【0043】
ステップS210において、印刷機能制限手段109は、プリンタドライバ104が生成したPDLコマンドに対して、印刷権限トークン702を付与する。
【0044】
次に、ステップS211において、印刷機能制限手段109は、プリンタドライバ104が生成したPDLコマンドに対して、印刷実行モジュール名称などの印刷機能制限を託した条件703を追加する。
【0045】
ステップS212において、印刷機能制限手段109は、PDLコマンドを複数個に分割し、分割したパート毎に電子署名を行う。図9に改竄防止がされたPDLコマンド700の一例を示す。署名704は、PDLヘッダ701、印刷権限トークン702、印刷機能制限を託した条件703への署名であり、第1の署名706は、第1のPDLボディ705への署名である。以下、各PDLボディの後ろにその署名が付加されて、改竄防止がされたPDLコマンド700が生成される(PDLコマンド生成)。
【0046】
ステップS213において、例えば、片面印刷が許可されていない場合に、ユーザがOHP用紙を選択した場合、プリンタドライバ104に両面印刷を指示しても、意味を成さない印刷になるので、印刷機能制限が適用されない。この印刷制限が適用されない状態を厳密に管理し印刷をキャンセルとすべきかを管理者が規定する。これを以下厳密モードと呼ぶ。ステップS207で印刷機能制限がプリンタドライバ104で実施されない場合に、管理者が厳密モードを設定していた場合に、ステップS214に進み、印刷を中止する。一方、厳密モードを設定していない場合には、ステップS209に進み、印刷を続行する。
【0047】
図11は、本実施形態における印刷装置200でのPDLコマンドを受信後の処理の手順を示すフローチャートである。以下、PDLコマンドを受信後の印刷装置200での処理について説明する。
【0048】
ステップS301において、印刷装置200は、印刷装置側通信モジュール201を介して印刷ジョブ解析手段204が、PDLコマンド700を受信する。印刷ジョブ解析手段204は、PDLコマンド700を印刷ジョブ判定手段205に渡す。
【0049】
次に、ステップS302において、印刷ジョブ判定手段205は、まず、PDLコマンド700が改竄されているか否か、PDLコマンドの各パートとその署名が一致しているか否かを検証する。続けて、印刷機能制限情報生成手段202に依頼して、印刷権限トークンの署名が正しいか否かを検証する。検証の結果、改竄されていない場合には、ステップS303に進む。改竄がある場合には、ステップS310に進み、印刷を中止する。
【0050】
ステップS303において、印刷ジョブ判定手段205は、PDLコマンド700の印刷機能制限を託す条件が存在するかを確認する。印刷機能制限を託す条件が存在しない場合には、ステップS304に進み、印刷権限トークン内の標準のものを印刷機能制限事項として選択する。印刷機能制限を託す条件が存在する場合には、ステップS305に進み、印刷権限トークン内のその条件に該当するものを印刷機能制限事項として選択する。
【0051】
ステップS304において、印刷ジョブ判定手段205は、印刷権限トークン内の標準のものを現在の印刷機能制限事項として選択する。ステップS305において、印刷ジョブ判定手段205は、印刷権限トークン内のその条件に該当するものを、現在の印刷機能制限事項として選択する。
【0052】
次に、ステップS306において、印刷ジョブ判定手段205は、現在の印刷機能制限事項で印刷が許可されているか否かを判定する。ここで、許可されていると判定された場合には、S307に進む。一方、許可されていない場合には、ステップS310に進み、印刷を中止する。
【0053】
ステップS307において、印刷ジョブ判定手段205は、現在の印刷機能制限事項とPDL内の印刷機能情報が一致しているか否かを判定する。ここで、一致していると判定された場合には、ステップS309に進む。一方、一致していないと判定された場合には、ステップS308に進む。
【0054】
ステップS308において管理者が厳密モードを設定していた場合には、ステップS310に進み、印刷を中止する。厳密モードを設定していない場合にはステップS309に進む。
【0055】
ステップS309においては、印刷ジョブ判定手段205で検証済みのPDLコマンド700は、再度、印刷ジョブ解析手段204に渡され、通常の印刷処理の手順により印刷が実行される。
【0056】
以上の説明のように、本実施形態においては、図4に示すようなユーザ認証情報とグループの印刷許可情報を参照することによって、ユーザとアプリケーションと印刷機能制限情報とが関連付けられた印刷権限トークンを生成することができる。その結果、テーブル同士の演算は、必要とされないので、印刷装置における処理を簡易とすることができる。尚、印刷権限トークンは、上記のようなユーザとアプリケーションと印刷機能制限とが関連付けられたテーブルを参照することにより生成される以外の形態でも良い。例えば、テーブル参照ではなくアルゴリズムの判断フローによって、ユーザとアプリケーションと印刷機能制限とが関連付けられた情報を参照する形態としても良い。
【0057】
本実施形態において、部門毎に印刷上限枚数の制限を行いたい場合は、図12に示すようにアカウント情報記憶手段203にユーザ認証情報1100とグループ毎の印刷許可情報1110を格納する。印刷装置200で部門毎の印刷枚数を計測し、印刷上限枚数を超えた場合に印刷許可を禁止にすることによって、部門毎に印刷上限枚数を制限することができる。また、印刷上限枚数を超えた場合においても、特定アプリケーションに関しては印刷を許可したい場合には、その特定アプリケーションの印刷許可のみ許可状態とすればよい。
【0058】
図15に示す従来の印刷権限トークンと異なり、図7に示す印刷権限トークンは、ユーザに関する印刷機能制限を託す条件に関して全ての情報を印刷権限トークン内に有している。そのため、ユーザに関して生成されたものは、アカウント情報記憶手段203に格納されている図4のユーザ認証情報400とグループ毎の印刷許可情報410とが変化しない限り、変化しない。従って、印刷機能制限情報生成手段202で一旦、生成した印刷権限トークンをユーザ毎にキャッシュして、印刷権限トークンの要求に再度、利用することもできる。
【0059】
また、ホスト装置100内のユーザ認証情報送信手段107で、印刷権限トークンを一定時間保持することにより、一定時間内は印刷装置200に問い合わせることなく、印刷権限トークンを再利用することもできる。本実施形態においては、印刷装置200が、ユーザアカウントの認証と印刷権限トークンの発行を行っているが、別途、代替サーバを立てるように構成されて、そのサーバにおいて行われても良い。
【図面の簡単な説明】
【0060】
【図1】本発明に係る実施形態における一般的なシステム構成を示す図である。
【図2】本実施形態におけるホスト装置内のモジュール構成を示す図である。
【図3】本実施形態における印刷装置内のモジュール構成を示す図である。
【図4】印刷装置のアカウント情報記憶手段に格納されているユーザ認証情報と、グループ毎の印刷許可情報を示す図である。
【図5】本実施形態におけるホスト装置と印刷装置との間の処理の手順について説明する図である。
【図6】ユーザ認証ダイアログの一例を示す図である。
【図7】印刷権限トークンの一例を示す図である。
【図8】印刷機能制限を託す旨を伝えるダイアログの一例を示す図である。
【図9】改竄防止がされたPDLコマンドの一例を示す図である。
【図10】本実施形態におけるホスト装置での処理の手順を示すフローチャートである。
【図11】本実施形態における印刷装置でのPDLコマンドを受信後の処理の手順を示すフローチャートである。
【図12】アカウント情報記憶手段に格納されているユーザ認証情報と、グループ毎の印刷許可情報の他の例を示す図である。
【図13】従来におけるホスト装置と印刷装置との間の処理の手順について説明する図である。
【図14】従来におけるユーザ認証情報と、グループ毎の印刷許可情報と、アプリケーション毎の印刷情報を示す図である。
【図15】従来における印刷権限トークンの一例を示す図である。
【図16】従来における生成されたPDLの一例を示す図である
【符号の説明】
【0061】
400、1100 ユーザ認証情報
410、1110 グループ毎の印刷許可情報
500、510 印刷権限トークン
700 PDLコマンド

【特許請求の範囲】
【請求項1】
外部からの印刷の指示を受け付けるアプリケーションを含み、印刷のためのコマンドを生成するホストと、前記ホストとネットワークを介して接続され、生成されたコマンドにより印刷を行う印刷装置とを含んで構成される印刷システムであって、
前記印刷装置が、前記ホストにおいてユーザから入力されたアカウント情報によりユーザを認証する認証手段と、
前記認証手段によりユーザが認証された後、前記印刷装置が、前記ユーザと前記アプリケーションと印刷機能制限情報とが関連付けられた情報を参照することにより、前記印刷機能制限情報を含むトークンを生成し前記ホストに送信するトークン生成手段と、
前記ホストが、前記生成手段により生成されたトークンを受信し、前記印刷機能制限情報を含むコマンドを生成し前記印刷装置に送信するコマンド生成手段と、
前記印刷装置が、前記コマンド生成手段により生成されたコマンドを受信し、印刷機能を制限された印刷を行う印刷手段と、
を備えることを特徴とする印刷システム。
【請求項2】
前記トークン生成手段により生成されたトークンと、前記コマンド生成手段により生成されたコマンドが、暗号化されていることを特徴とする請求項1記載の印刷システム。
【請求項3】
印刷機能制限情報を、ユーザインタフェースを用いてユーザに表示する表示手段を、更に備えることを特徴とする請求項1又は2記載の印刷システム。
【請求項4】
外部からの印刷の指示を受け付けるアプリケーションを含み、印刷のためのコマンドを生成するホストと、前記ホストとネットワークを介して接続され、生成されたコマンドにより印刷を行う印刷装置とを含んで構成される印刷システムにおいて実行される印刷方法であって、
前記印刷システムの認証手段が、前記ホストにおいてユーザから入力されたアカウント情報によりユーザを認証する認証工程と、
前記印刷システムのトークン生成手段が、前記認証工程によりユーザが認証された後、前記ユーザと前記アプリケーションと印刷機能制限情報とが関連付けられた情報を参照することにより、前記印刷機能制限情報を含むトークンを生成するトークン生成工程と、
前記印刷システムのコマンド生成手段が、前記生成工程により生成されたトークンから、前記印刷機能制限情報を含むコマンドを生成するコマンド生成工程と、
前記印刷システムの印刷手段が、前記コマンド生成工程により生成されたコマンドから、印刷機能を制限された印刷を行う印刷工程と、
を備えることを特徴とする印刷方法。
【請求項5】
外部からの印刷の指示を受け付けるアプリケーションを含み、印刷のためのコマンドを生成するホストとネットワークを介して接続され、前記コマンドにより印刷を行う印刷装置であって、
前記ホストにおいてユーザから入力されたアカウント情報によりユーザを認証する認証手段と、
前記認証手段によりユーザが認証された後、前記ユーザと前記アプリケーションと印刷機能制限情報とが関連付けられた関連付け情報を参照することにより、前記印刷機能制限情報を含むトークンを生成し前記ホストに送信するトークン生成手段とを有し、
前記トークンに応答して前記ホストから送信された印刷機能制限情報を含むコマンドを受信することにより印刷機能を制限された印刷を行うことを特徴とする印刷装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate


【公開番号】特開2009−199253(P2009−199253A)
【公開日】平成21年9月3日(2009.9.3)
【国際特許分類】
【出願番号】特願2008−39096(P2008−39096)
【出願日】平成20年2月20日(2008.2.20)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】