(57)【要約】【課題】印刷ジョブの出力を適切に制御することができるようにする。【解決手段】認証サーバ４０２は、ホストコンピュータ４０１からの依頼に基づき、再発行有効期限が記述された制限チケットを発行する。ホストコンピュータ４０１は、制限チケットを印刷ジョブに埋め込んでセキュア印刷ジョブを生成してプリントシステム４０５に送信する。プリントシステム４０５は、セキュア印刷ジョブに付加された制限チケットの有効期限が切れている場合、制限チケットの再発行を認証サーバ４０２に依頼する。認証サーバ４０２は、元の制限チケットの再発行有効期限が切れていない等の条件を満足していると、再発行制限チケットをプリントサーバ４０５に発行する。プリントサーバ４０５は、再発行制限チケットを元の制限チケットの代わりに使用するための属性書き換え命令を再発行制限チケットと共に印刷ジョブに付加する。【選択図】図４
2007323186.tif 000002
【特許請求の範囲】
【請求項１】
印刷ジョブの出力を制御するための印刷制御データであって、その印刷制御データの有効期限を含む第１の印刷制御データを生成する第１の印刷制御データ生成手段と、
前記第１の印刷制御データ生成手段により生成された第１の印刷制御データを出力する第１の印刷制御データ出力手段と、
前記第１の印刷制御データが有効期限内のものであるか否かを、前記有効期限を用いて判定する判定手段と、
前記判定手段により、前記第１の印刷制御データが有効期限外のものであると判定された場合に、前記第１の印刷制御データ出力手段により出力された第１の印刷制御データの再発行の依頼がなされると、その第１の印刷制御データを元に、第２の印刷制御データを生成する第２の印刷制御データ生成手段と、
前記第２の印刷制御データ生成手段により生成された第２の印刷制御データを出力する第２の印刷制御データ出力手段とを有することを特徴とする印刷制御データ生成装置。
【請求項２】
前記第１の印刷制御データ出力手段により出力された第１の印刷制御データの再発行の依頼がなされると、その第１の印刷制御データを再発行するか否かを判断する再発行判断手段を有し、
前記第２の印刷制御データ生成手段は、前記再発行判断手段により、第１の印刷制御データを再発行すると判断された場合には、その第１の印刷制御データを元に、第２の印刷制御データを生成し、そうでない場合には第２の印刷制御データを生成しないことを特徴とする請求項１に記載の印刷制御データ生成装置。
【請求項３】
前記第１の印刷制御データは、その第１の印刷制御データの再発行可能期限を更に含み、
前記再発行判断手段は、前記第１の印刷制御データに含まれている再発行可能期限が経過している場合には、第２の印刷制御データを再発行しないと判断することを特徴とする請求項２に記載の印刷制御データ生成装置。
【請求項４】
前記第１の印刷制御データ出力手段により出力された第１の印刷制御データの署名情報を受け取ると、その署名情報が正当なものであるか否かを判定する署名情報判定手段を有し、
前記再発行判断手段は、前記署名情報判定手段により署名情報が正当なものでないと判定された場合に、前記第１の印刷制御データを再発行しないと判断することを特徴とする請求項２又は３に記載の印刷制御データ生成装置。
【請求項５】
前記再発行判断手段は、前記第１の印刷制御データの再発行の依頼元の証明書が予め記憶媒体に記憶されていない場合には、第２の印刷制御データを再発行しないと判断することを特徴とする請求項２〜４の何れか１項に記載の印刷制御データ生成装置。
【請求項６】
前記再発行判断手段は、前記第１の印刷制御データのユーザが存在していない場合には、第２の印刷制御データを再発行しないと判断することを特徴とする請求項２〜５の何れか１項に記載の印刷制御データ生成装置。
【請求項７】
前記再発行判断手段は、前記第１の印刷制御データが、前記印刷ジョブの出力先である印刷装置で保持されていない場合に、前記第２の印刷制御データを再発行すると判断する第２の再発行判断手段を有することを特徴とする請求項１〜６の何れか１項に記載の印刷制御データ生成装置。
【請求項８】
前記第１の印刷制御データ生成手段は、前記印刷ジョブの出力先に関する第１の出力先情報を含む第１の印刷制御データを生成し、
前記第２の印刷制御データ生成手段は、前記印刷ジョブの出力先に関する第２の出力先情報を含む第２の印刷制御データを生成し、
前記第２の出力先情報は、前記第１の印刷制御データの再発行の依頼元からの情報に基づいて設定されることを特徴とする請求項１〜７の何れか１項に記載の印刷制御データ生成装置。
【請求項９】
前記第１の印刷制御データの再発行の依頼元からの情報に基づいて、前記印刷ジョブの出力先が複数であるか否かを判断する出力先判断手段を有し、
前記第２の印刷制御データ生成手段は、前記出力先判断手段により、前記印刷ジョブの出力先が複数であると判断された場合には、出力先の数に合わせて複数の第２の印刷制御データを生成することを特徴とする請求項８に記載の印刷制御データ生成装置。
【請求項１０】
印刷ジョブの出力を制限するための印刷制御データを含む第１の印刷制御データを有する印刷ジョブを入力する第１の入力手段と、
前記第１の入力手段により入力された印刷ジョブの中の第１の印刷制御データに対応する印刷制御データの再発行を要求する再発行要求手段と、
前記再発行要求手段の要求に応じて発行される第２の印刷制御データを入力する第２の入力手段と、
前記第２の入力手段により第２の印刷制御データが入力されると、前記第１の印刷制御データの代わりに前記第２の印刷制御データを使用することを指定するための属性変更命令情報を、前記第２の印刷制御データと共に、前記印刷ジョブに付加する付加手段と、
前記付加手段により属性変更命令情報と第２の印刷制御データとが付加された印刷ジョブを出力する出力手段とを有することを特徴とする印刷管理装置。
【請求項１１】
前記付加手段は、前記属性変更命令情報と、前記第２の印刷制御データとを、前記印刷ジョブの先頭に付加することを特徴とする請求項１０に記載の印刷管理装置。
【請求項１２】
前記付加手段は、前記印刷ジョブの改ざんを防止するための改ざん防止情報を前記印刷ジョブに含まれる第２の印刷制御データに更に付加することを特徴とする請求項１０又は１１に記載の印刷管理装置。
【請求項１３】
前記印刷ジョブの出力先に関する情報を、前記第１の印刷制御データの再発行の要求先に出力する第２の出力手段を有することを特徴とする請求項１０〜１２の何れか１項に記載の印刷管理装置。
【請求項１４】
前記付加手段は、前記印刷ジョブの属性情報を変更するための情報を前記印刷ジョブに更に付加することを特徴とする請求項１０〜１３の何れか１項に記載の印刷管理装置。
【請求項１５】
前記印刷ジョブの属性情報を変更するための情報は、前記印刷ジョブのジョブ属性ＩＤ、印刷体裁、印刷部数、及び印刷ページ数のうち、少なくとも何れか１つを変更するための情報を含むことを特徴とする請求項１４に記載の印刷管理装置。
【請求項１６】
前記付加手段は、１つの印刷ジョブの出力先が複数ある場合には、それら複数の出力先に対応する複数の印刷ジョブのそれぞれに、前記印刷ジョブの属性情報を変更するための情報と前記第２の印刷制御データとを付加することを特徴とする請求項１０〜１５の何れか１項に記載の印刷管理装置。
【請求項１７】
印刷ジョブを入力する入力手段と、
前記印刷ジョブの出力を制限するための第１の印刷制御データと、第２の印刷制御データとが、前記印刷ジョブに含まれている場合には、その第２の印刷制御データに基づく印刷制御が可能か否かを判定する再発行判定手段と、
前記再発行判定手段により、前記第２の印刷制御データに基づく印刷制御が可能であると判定された場合には、前記第２の印刷制御データに含まれている情報に従って、前記印刷ジョブに基づく印刷を行う印刷手段と、
前記再発行判定手段により、前記第２の印刷制御データに基づく印刷制御が可能でないと判定された場合には、前記印刷ジョブに基づく印刷を取り消す印刷取消手段とを有することを特徴とする印刷装置。
【請求項１８】
前記第２の印刷制御データは、その第２の印刷制御データの有効期限を含み、
前記印刷取消手段は、前記第２の印刷制御データに含まれている有効期限を経過している場合、又は前記印刷ジョブに前記第１の印刷制御データが含まれていない場合には、前記印刷ジョブに基づく印刷を取り消すことを特徴とする請求項１７に記載の印刷装置。
【請求項１９】
前記印刷ジョブが改ざんされているか否かを判定する改ざん判定手段を有し、
前記印刷取消手段は、前記改ざん判定手段により、前記印刷ジョブが改ざんされていると判定された場合には、前記印刷ジョブに基づく印刷を取り消すことを特徴とする請求項１７又は１８に記載の印刷装置。
【請求項２０】
前記印刷ジョブは、前記印刷ジョブが改ざんされることを防止するための改ざん防止情報を含み、
前記改ざん判定手段は、前記改ざん防止情報に基づいて、前記印刷ジョブが改ざんされているか否かを判定することを特徴とする請求項１９に記載の印刷装置。
【請求項２１】
前記改ざん防止情報は、前記第１の印刷制御データ及び前記第２の印刷制御データと異なる領域に含まれている第１の改ざん防止情報と、前記第２の印刷制御データに含まれている第２の改ざん防止情報とのうち、少なくとも何れか一方を含むことを特徴とする請求項２０に記載の印刷装置。
【請求項２２】
前記印刷手段は、前記第１の印刷制御データが前記印刷ジョブに含まれており、且つ前記第２の印刷制御データが前記印刷ジョブに含まれていない場合には、前記第１の印刷制御データに含まれている情報に基づいて、前記印刷ジョブに基づく印刷を行うことを特徴とする請求項１７〜２１の何れか１項に記載の印刷装置。
【請求項２３】
前記第２の印刷制御データは、その第２の印刷制御データの出力先に関する出力先情報を含み、
前記印刷中止手段は、前記第２の印刷制御データに含まれている出力先情報が、予め設定された印刷装置でない場合には、前記印刷ジョブに基づく印刷を取り消すことを特徴とする請求項１７〜２２の何れか１項に記載の印刷装置。
【請求項２４】
前記印刷手段により印刷が行われた印刷ジョブに、前記印刷手段により印刷が行われた印刷ジョブに、前記第１の印刷制御データ及び前記第２の印刷制御データが含まれている場合には、前記第１の印刷制御データ及び前記第２の印刷制御データを対応付けて記憶媒体に記憶する記憶手段と、
前記入力手段により入力された印刷ジョブに、前記第１の印刷制御データ及び前記第２の印刷制御データが含まれている場合には、それら第１の印刷制御データ及び第２の印刷制御データの組が、前記記憶手段に記憶されているか否かを判定する印刷制御データ判定手段とを有し、
前記印刷中止手段は、前記印刷制御データ判定手段により、前記入力手段により入力された印刷ジョブに含まれている第１の印刷制御データ及び第２の印刷制御データの組が記憶されていると判定された場合には、前記印刷ジョブに基づく印刷を取り消すことを特徴とする請求項１７〜２２の何れか１項に記載の印刷装置。
【請求項２５】
前記印刷手段により印刷が行われた印刷ジョブに、前記印刷手段により印刷が行われた印刷ジョブに、前記第１の印刷制御データが含まれており、且つ前記第２の印刷制御データが含まれていない場合には、前記第１の印刷制御データを記憶媒体に記憶する第２の記憶手段を有し、
前記印刷制御データ判定手段は、前記入力手段により入力印刷ジョブに、前記第１の印刷制御データが含まれており、且つ前記第２の印刷制御データが含まれていない場合、その第１の印刷制御データが記憶されているか否かを判定し、
前記印刷中止手段は、前記印刷制御データ判定手段により、前記入力手段により入力された印刷ジョブに含まれている第１の印刷制御データが記憶されていると判定された場合には、前記印刷ジョブに基づく印刷を取り消すことを特徴とする請求項２４に記載の印刷装置。
【請求項２６】
前記請求項１〜９の何れか１項に記載の印刷制御データ生成装置と、
前記請求項１０〜１６の何れか１項に記載の印刷管理装置と、
前記請求項１７〜２５の何れか１項に記載の印刷装置と、
前記第１の印刷制御データを付加した印刷ジョブを生成して、前記印刷管理装置に送信する手段を有する端末装置とを有することを特徴とする印刷システム。
【請求項２７】
印刷ジョブの出力を制御するための印刷制御データであって、その印刷制御データの有効期限を含む第１の印刷制御データを生成する第１の印刷制御データ生成ステップと、
前記第１の印刷制御データ生成ステップにより生成された第１の印刷制御データを出力する第１の印刷制御データ出力ステップと、
前記第１の印刷制御データが有効期限内のものであるか否かを、前記有効期限を用いて判定する判定ステップと、
前記判定ステップにより、前記第１の印刷制御データが有効期限外のものであると判定された場合に、前記第１の印刷制御データ出力ステップにより出力された第１の印刷制御データの再発行の依頼がなされると、その第１の印刷制御データを元に、第２の印刷制御データを生成する第２の印刷制御データ生成ステップと、
前記第２の印刷制御データ生成ステップにより生成された第２の印刷制御データを出力する第２の印刷制御データ出力ステップとを有することを特徴とする印刷制御データ生成方法。
【請求項２８】
印刷ジョブの出力を制限するための印刷制御データを含む第１の印刷制御データを有する印刷ジョブを入力する第１の入力ステップと、
前記第１の入力ステップにより入力された印刷ジョブの中の第１の印刷制御データに対応する印刷制御データの再発行を要求する再発行要求ステップと、
前記再発行要求ステップの要求に応じて発行される第２の印刷制御データを入力する第２の入力ステップと、
前記第２の入力ステップにより第２の印刷制御データが入力されると、前記第１の印刷制御データの代わりに前記第２の印刷制御データを使用することを指定するための属性変更命令情報を、前記第２の印刷制御データと共に、前記印刷ジョブに付加する付加ステップと、
前記付加ステップにより属性書き替え命令情報と第２の印刷制御データとが付加された印刷ジョブを出力する出力ステップとを有することを特徴とする印刷管理方法。
【請求項２９】
印刷ジョブを入力する入力ステップと、
前記印刷ジョブの出力を制限するための第１の印刷制御データと、第２の印刷制御データとが、前記印刷ジョブに含まれている場合には、その第２の印刷制御データに基づく印刷制御が可能か否かを判定する再発行判定ステップと、
前記再発行判定ステップにより、前記第２の印刷制御データに基づく印刷制御が可能であると判定された場合には、前記第２の印刷制御データに含まれている情報に従って、前記印刷ジョブに基づく印刷を行う印刷ステップと、
前記再発行判定ステップにより、前記第２の印刷制御データに基づく印刷制御が可能でないと判定された場合には、前記印刷ジョブに基づく印刷を取り消す印刷取消ステップとを有することを特徴とする印刷制御方法。
【請求項３０】
印刷ジョブの出力を制御するための印刷制御データであって、その印刷制御データの有効期限を含む第１の印刷制御データを生成する第１の印刷制御データ生成ステップと、
前記第１の印刷制御データ生成ステップにより生成された第１の印刷制御データを出力する第１の印刷制御データ出力ステップと、
前記第１の印刷制御データが有効期限内のものであるか否かを、前記有効期限を用いて判定する判定ステップと、
前記判定ステップにより、前記第１の印刷制御データが有効期限外のものであると判定された場合に、前記第１の印刷制御データ出力ステップにより出力された第１の印刷制御データの再発行の依頼がなされると、その第１の印刷制御データを元に、第２の印刷制御データを生成する第２の印刷制御データ生成ステップと、
前記第２の印刷制御データ生成ステップにより生成された第２の印刷制御データを出力する第２の印刷制御データ出力ステップとをコンピュータに実行させることを特徴とするコンピュータプログラム。
【請求項３１】
印刷ジョブの出力を制限するための印刷制御データを含む第１の印刷制御データを有する印刷ジョブを入力する第１の入力ステップと、
前記第１の入力ステップにより入力された印刷ジョブの中の第１の印刷制御データに対応する印刷制御データの再発行を要求する再発行要求ステップと、
前記再発行要求ステップの要求に応じて発行される第２の印刷制御データを入力する第２の入力ステップと、
前記第２の入力ステップにより第２の印刷制御データが入力されると、前記第１の印刷制御データの代わりに前記第２の印刷制御データを使用することを指定するための属性変更命令情報を、前記第２の印刷制御データと共に、前記印刷ジョブに付加する付加ステップと、
前記付加ステップにより属性書き替え命令情報と第２の印刷制御データとが付加された印刷ジョブを出力する出力ステップとをコンピュータに実行させることを特徴とするコンピュータプログラム。
【請求項３２】
印刷ジョブを入力する入力ステップと、
前記印刷ジョブの出力を制限するための第１の印刷制御データと、第２の印刷制御データとが、前記印刷ジョブに含まれている場合には、その第２の印刷制御データに基づく印刷制御が可能か否かを判定する再発行判定ステップと、
前記再発行判定ステップにより、前記第２の印刷制御データに基づく印刷制御が可能であると判定された場合には、前記第２の印刷制御データに含まれている情報に従って、前記印刷ジョブに基づく印刷を行う印刷ステップと、
前記再発行判定ステップにより、前記第２の印刷制御データに基づく印刷制御が可能でないと判定された場合には、前記印刷ジョブに基づく印刷を取り消す印刷取消ステップとをコンピュータに実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷制御データ生成装置、印刷管理装置、及び印刷装置に関し、特に、印刷ジョブの出力を制限するために用いて好適なものである。
【背景技術】
【０００２】
ホストコンピュータが生成した画像データを、ネットワーク等を介して印刷装置に送信し、その画像データに基づく画像を印刷装置で実際の用紙に印刷するシステムが提案されている。昨今、この種のシステムにおいては、ＴＣＯ(Total Cost of Ownership)の削減が、オフィスの経費削減、あるいは地球環境の保全の点から大いに注目されている。この種のシステムにおけるＴＣＯには、印刷装置やシステムの初期導入費用だけでなく、印刷用紙、及びトナーに代表される着色剤等の消耗品の費用等が含まれている。
【０００３】
このようなシステムが以前から有する問題点として、ネットワークにアクセスできてしまえれば、オフィスに設定された印刷装置を誰でも使用して印刷することができてしまうということが挙げられる。従って、誰にも印刷制限がかからず、しかも誰がどの位印刷したのかについての形跡も残らない。このため、印刷装置の使用に関し、使用者の精神的な歯止めが効かず、本来必要な出力を超えた印刷が行われることが度々あった。これにより、オフィスで行われる印刷にかかるコストの増大を招いていた。
【０００４】
このような問題点に対し、第１の手段として、TCP/IPにおけるＩＰアドレス等のアドレス情報を用いて印刷制限を行う印刷システムが、第２の手段として、ログを取得して印刷枚数の管理を実現する印刷システムが多数実現されている。しかしながら、第１の手段では、特定のＩＰアドレスのホストコンピュータに対して印刷制限をかけてしまう。このため、第１の手段では、大雑把な印刷制限しかかけられず、特定のユーザの出力枚数を制限するといった詳細な管理ができなかった。また、第２の手段では、印刷出力に基づくログを残すことが可能であるので、特定のユーザの出力枚数を制限することが可能であるが、管理者がいちいちログを監視して不正な印刷が行われているか否かを調査しなければならない。従って、第２の手段では、大きな人的コストがかかり、ＴＣＯの削減の趣旨から外れてしまうことになる。
【０００５】
以上のような問題を解決するために、特開２００３−１５０３３６号公報（特許文献１）において、ユーザ毎に出力を制限する印刷システムが提案されている。
特開２００３−１５０３３６号公報には、サーバとクライアントとプリンタからなる印刷システムが開示されている。サーバはプリンタから印刷実績を収集する。サーバ側では、印刷実績を元に、ユーザごとの印刷可能枚数を管理している。クライアントのユーザは、サーバに対してログインする。クライアントは、サーバから、ジョブを発行したユーザの印刷可能枚数を取得する。クライアントは、プリンタに対して、当該印刷可能枚数の制限に従った出力を行うジョブを発行する。
【０００６】
また、特開２００５−６４７７０号公報（特許文献２）では、ホストコンピュータが、外部装置の利用権を表す認証チケットを認証装置から取得し、サービスの利用時に外部装置に認証チケットを提示するシステムが提案されている。このシステムでは、ホストコンピュータは、ユーザ認証に必要な認証情報（ユーザＩＤ、パスワード）を、認証装置に渡し、ユーザ認証された旨を表すマスタチケットを取得する。ホストコンピュータは、認証情報（ユーザＩＤ、パスワード）と、マスタチケットとを保持しておく。続いてホストコンピュータは、マスタチケットに基づき外部装置を利用するための認証チケットを認証装置から取得する。ホストコンピュータは、この認証チケットを外部装置に渡してサービスを利用する。
マスタチケットには、有効期限が設定されている。ホストコンピュータは、マスタチケットの有効期限が切れたら、保持しておいた認証情報（ユーザＩＤ、パスワード）を認証装置に渡し、新しいマスタチケットを取得し直す。
【０００７】
【特許文献１】特開２００３−１５０３３６号公報
【特許文献２】特開２００５−６４７７０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
特開２００３−１５０３３６号公報に記載の技術では、ホストコンピュータは、認証サーバに対してユーザ認証を依頼し、そのユーザ認証に成功すると認証サーバから出力制限情報を取得し、その出力制限情報に基づいてユーザ毎の印刷制限を実施する。しかしながら、この特開２００３−１５０３３６号公報に記載の技術には以下の問題がある。
【０００９】
印刷装置に送信される全ての印刷ジョブが、認証サーバから取得した出力制限情報に基づき実行される場合はよいが、専用のプリンタドライバを導入することをホストコンピュータに強制できない場合がある。この場合、汎用のプリンタドライバを導入したホストコンピュータから印刷装置に投入される印刷ジョブには、前述のような認証サーバによるユーザ認証が行われないと共に、出力制限情報による印刷枚数制限がかけられていない。従って、このような汎用のプリンタドライバを導入したホストコンピュータは、印刷ジョブの出力を制限する際の抜け道となってしまうという問題点がある。
【００１０】
特開２００５−６４７７０号公報に記載の技術では、認証チケットが無効となってしまった場合でも、そのことをユーザに意識させることなくサービスの利用を継続することができる。ところで、認証チケットが付加された印刷ジョブをプリントサーバに一時的に保持してから印刷装置に投入するシステムがある。かかるシステムでは、プリントサーバにユーザ認証情報を保持させることはセキュリティの観点から好ましくない。しかしながら、特開２００５−６４７７０号公報に記載の技術では、ユーザ認証情報を使用しなければ認証チケットの更新ができない。従って、プリントサーバが認証チケットの更新を認証装置に依頼することができず、認証チケットの有効期限が切れてしまうと、その認証チケットの再発行や、他の印刷装置への代行印刷等を実現することができないという問題点がある。
【００１１】
以上のように従来の技術では、印刷ジョブの出力を適切に制御することが困難であるという問題点があった。
本発明は、このような問題点の少なくとも一つに鑑みてなされたものである。
すなわち、印刷ジョブの出力を適切に制御することができるようにすることをひとつの目的とする。
さらに、ジョブの印刷制限のための印刷制御データの再発行の際に、適切な印刷制限を実現することをさらに別の目的とする。
【課題を解決するための手段】
【００１２】
本発明の印刷制御データ生成装置は、印刷ジョブの出力を制御するための印刷制御データであって、その印刷制御データの有効期限を含む第１の印刷制御データを生成する第１の印刷制御データ生成手段と、前記第１の印刷制御データ生成手段により生成された第１の印刷制御データを出力する第１の印刷制御データ出力手段と、前記第１の印刷制御データが有効期限内のものであるか否かを、前記有効期限を用いて判定する判定手段と、前記判定手段により、前記第１の印刷制御データが有効期限外のものであると判定された場合に、前記第１の印刷制御データ出力手段により出力された第１の印刷制御データの再発行の依頼がなされると、その第１の印刷制御データを元に、第２の印刷制御データを生成する第２の印刷制御データ生成手段と、前記第２の印刷制御データ生成手段により生成された第２の印刷制御データを出力する第２の印刷制御データ出力手段とを有することを特徴とする。
本発明の印刷管理装置は、印刷ジョブの出力を制限するための印刷制御データを含む第１の印刷制御データを有する印刷ジョブを入力する第１の入力手段と、前記第１の入力手段により入力された印刷ジョブの中の第１の印刷制御データに対応する印刷制御データの再発行を要求する再発行要求手段と、前記再発行要求手段の要求に応じて発行される第２の印刷制御データを入力する第２の入力手段と、前記第２の入力手段により第２の印刷制御データが入力されると、前記第１の印刷制御データの代わりに前記第２の印刷制御データを使用することを指定するための属性変更命令情報を、前記第２の印刷制御データと共に、前記印刷ジョブに付加する付加手段と、前記付加手段により属性変更命令情報と第２の印刷制御データとが付加された印刷ジョブを出力する出力手段とを有することを特徴とする。
本発明の印刷装置は、印刷ジョブを入力する入力手段と、前記印刷ジョブの出力を制限するための第１の印刷制御データと、第２の印刷制御データとが、前記印刷ジョブに含まれている場合には、その第２の印刷制御データに基づく印刷制御が可能か否かを判定する再発行判定手段と、前記再発行判定手段により、前記第２の印刷制御データに基づく印刷制御が可能であると判定された場合には、前記第２の印刷制御データに含まれている情報に従って、前記印刷ジョブに基づく印刷を行う印刷手段と、前記再発行判定手段により、前記第２の印刷制御データに基づく印刷制御が可能でないと判定された場合には、前記印刷ジョブに基づく印刷を取り消す印刷取消手段とを有することを特徴とする。
本発明の印刷システムは、前記印刷制御データ発行装置と、前記印刷管理装置と、前記印刷装置と、前記第１の印刷制御データを付加した印刷ジョブを生成して、前記印刷管理装置に送信する手段を有する端末装置とを有することを特徴とする。
【００１３】
本発明の印刷制御データ生成方法は、印刷ジョブの出力を制御するための印刷制御データであって、その印刷制御データの有効期限を含む第１の印刷制御データを生成する第１の印刷制御データ生成ステップと、前記第１の印刷制御データ生成ステップにより生成された第１の印刷制御データを出力する第１の印刷制御データ出力ステップと、前記第１の印刷制御データが有効期限内のものであるか否かを、前記有効期限を用いて判定する判定ステップと、前記判定ステップにより、前記第１の印刷制御データが有効期限外のものであると判定された場合に、前記第１の印刷制御データ出力ステップにより出力された第１の印刷制御データの再発行の依頼がなされると、その第１の印刷制御データを元に、第２の印刷制御データを生成する第２の印刷制御データ生成ステップと、前記第２の印刷制御データ生成ステップにより生成された第２の印刷制御データを出力する第２の印刷制御データ出力ステップとを有することを特徴とする。
本発明の印刷管理方法は、印刷ジョブの出力を制限するための印刷制御データを含む第１の印刷制御データを有する印刷ジョブを入力する第１の入力ステップと、前記第１の入力ステップにより入力された印刷ジョブの中の第１の印刷制御データに対応する印刷制御データの再発行を要求する再発行要求ステップと、前記再発行要求ステップの要求に応じて発行される第２の印刷制御データを入力する第２の入力ステップと、前記第２の入力ステップにより第２の印刷制御データが入力されると、前記第１の印刷制御データの代わりに前記第２の印刷制御データを使用することを指定するための属性変更命令情報を、前記第２の印刷制御データと共に、前記印刷ジョブに付加する付加ステップと、前記付加ステップにより属性書き替え命令情報と第２の印刷制御データとが付加された印刷ジョブを出力する出力ステップとを有することを特徴とする。
本発明の印刷制御方法は、印刷ジョブを入力する入力ステップと、前記印刷ジョブの出力を制限するための第１の印刷制御データと、第２の印刷制御データとが、前記印刷ジョブに含まれている場合には、その第２の印刷制御データに基づく印刷制御が可能か否かを判定する再発行判定ステップと、前記再発行判定ステップにより、前記第２の印刷制御データに基づく印刷制御が可能であると判定された場合には、前記第２の印刷制御データに含まれている情報に従って、前記印刷ジョブに基づく印刷を行う印刷ステップと、前記再発行判定ステップにより、前記第２の印刷制御データに基づく印刷制御が可能でないと判定された場合には、前記印刷ジョブに基づく印刷を取り消す印刷取消ステップとを有することを特徴とする。
【００１４】
本発明のコンピュータプログラムは、印刷ジョブの出力を制御するための印刷制御データであって、その印刷制御データの有効期限を含む第１の印刷制御データを生成する第１の印刷制御データ生成ステップと、前記第１の印刷制御データ生成ステップにより生成された第１の印刷制御データを出力する第１の印刷制御データ出力ステップと、前記第１の印刷制御データが有効期限内のものであるか否かを、前記有効期限を用いて判定する判定ステップと、前記判定ステップにより、前記第１の印刷制御データが有効期限外のものであると判定された場合に、前記第１の印刷制御データ出力ステップにより出力された第１の印刷制御データの再発行の依頼がなされると、その第１の印刷制御データを元に、第２の印刷制御データを生成する第２の印刷制御データ生成ステップと、前記第２の印刷制御データ生成ステップにより生成された第２の印刷制御データを出力する第２の印刷制御データ出力ステップとをコンピュータに実行させることを特徴とする。
また、本発明の他の特徴とするところは、印刷ジョブの出力を制限するための印刷制御データを含む第１の印刷制御データを有する印刷ジョブを入力する第１の入力ステップと、前記第１の入力ステップにより入力された印刷ジョブの中の第１の印刷制御データに対応する印刷制御データの再発行を要求する再発行要求ステップと、前記再発行要求ステップの要求に応じて発行される第２の印刷制御データを入力する第２の入力ステップと、前記第２の入力ステップにより第２の印刷制御データが入力されると、前記第１の印刷制御データの代わりに前記第２の印刷制御データを使用することを指定するための属性変更命令情報を、前記第２の印刷制御データと共に、前記印刷ジョブに付加する付加ステップと、前記付加ステップにより属性書き替え命令情報と第２の印刷制御データとが付加された印刷ジョブを出力する出力ステップとをコンピュータに実行させることを特徴とする。
また、本発明のその他の特徴とするところは、印刷ジョブを入力する入力ステップと、
前記印刷ジョブの出力を制限するための第１の印刷制御データと、第２の印刷制御データとが、前記印刷ジョブに含まれている場合には、その第２の印刷制御データに基づく印刷制御が可能か否かを判定する再発行判定ステップと、前記再発行判定ステップにより、前記第２の印刷制御データに基づく印刷制御が可能であると判定された場合には、前記第２の印刷制御データに含まれている情報に従って、前記印刷ジョブに基づく印刷を行う印刷ステップと、前記再発行判定ステップにより、前記第２の印刷制御データに基づく印刷制御が可能でないと判定された場合には、前記印刷ジョブに基づく印刷を取り消す印刷取消ステップとをコンピュータに実行させることを特徴とする。
【発明の効果】
【００１５】
本発明によれば、印刷ジョブの出力を制御するための第１の印刷制御データを元に第２の印刷制御データを生成し、その第２の印刷制御データを出力することにより、第１の印刷制御データの再発行を行うようにした。従って、例えば、ホストコンピュータからの印刷ジョブを中継する印刷管理装置がユーザ認証情報を保持していなくても、印刷管理装置からの要求に応じて印刷制御データを更新して再発行することが可能になり、印刷ジョブの出力を柔軟且つ適切に制御可能になる。
【発明を実施するための最良の形態】
【００１６】
次に、図面を参照しながら、本発明の一実施形態について説明する。
図２４は、前提となるシステムの一例を説明する印刷システムの構成を示すブロック図である。このような印刷システムにより、ユーザ毎に出力を制限する機能を実施することができる。
【００１７】
図２４において、ホストコンピュータ１０１は、ユーザが使用する情報処理装置であり、画像データを生成して、ネットワーク１０４を介して印刷装置１０３に送信するためのものである。認証サーバ１０２は、ユーザの認証情報や出力制限情報を記憶する情報処理装置である。印刷装置１０３はネットワーク１０４を介して受信した印刷データを受け取り、電子写真技術やインクジェット技術等の既知の印刷技術を利用して実際の用紙に印刷を行う装置である。ホストコンピュータ１０１、認証サーバ１０２、及び印刷装置１０３は、イーサネット（登録商標）等の既知の技術によるネットワーク１０４により相互に接続されている。
【００１８】
図２５は、認証サーバ１０２が保持しているユーザ別の認証情報と、出力制限情報とを格納するデータベースを表形式で示す図である。
図２５において、各行２１１〜２１３はユーザのエントリを示し、各列にはユーザ別の認証情報と、出力制限情報とが記述されている。枚数最大値２０３には、ユーザが今月実施できる印刷枚数の最大値が記述される。枚数実績値２０４には、ユーザが今月実施した印刷枚数の実績値が記述される。この枚数実績値２０４は、実際に印刷が行われることにより印刷装置１０３から送信される情報に基づいて更新される値である。
【００１９】
エントリ２１１は、"User1"という名前のユーザのエントリである。この"User1"に対して設定されているパスワード２０２は"Akd5sj4f"という文字列である。更に"User1"に対して設定されている枚数最大値２０３は５００枚となっている。従って、"User1"は、今月の印刷枚数が５００枚までに制限されていることが分かる。"User1"に対して設定されている枚数実績値２０４は１２３枚となっている。従って、"User1"は、今月１２３枚の印刷を既に行っていることが分かる。同様にエントリ２１２において"User2"に対する設定が行われ、エントリ２１３において"User3"に対する設定が行われている。
【００２０】
ユーザはホストコンピュータ１０１にログオンする際に、ユーザ名とパスワードとを入力する。これらの認証情報は認証サーバ１０２に伝わる。認証サーバ１０２は、データベースに登録されているユーザ名２０１及びパスワード２０２と、ホストコンピュータ１０１から送信されたユーザ名及びパスワードとを照合してユーザ認証を行う。認証サーバ１０２は、ユーザ認証に成功すると、そのユーザに対して設定されている枚数最大値２０３と枚数実績値２０４とをホストコンピュータ１０１に通知する。例えば"User1"のユーザ認証に成功すると、枚数最大値２０３として"５００"が、枚数実績値２０４として"１２３"が、戻り値としてホストコンピュータ１０１に返される。
【００２１】
そこで、ホストコンピュータ１０１は、印刷ジョブの印刷を印刷装置１０３に行わせる前に、認証サーバ１０２から送信された枚数最大値２０３と、枚数実績値２０４とに基づく印刷許容枚数を認識する。そして、ユーザから指定された印刷ジョブの枚数が、認識した印刷許容枚数以下である場合、ホストコンピュータ１０１は、その印刷ジョブの印刷を印刷装置１０３に指示する。一方、ユーザから指定された印刷ジョブの枚数が、認識した印刷許容枚数より多い場合、ホストコンピュータ１０１は、警告画面を表示する。この警告画面により、印刷ジョブを途中まで実行するか、それとも印刷ジョブの実行を取り消すかをユーザに選択させる。
【００２２】
例えば、"User1"が所有するホストコンピュータ１０１は、枚数最大値２０３（＝５００枚）と、枚数実績値２０４（＝１２３枚）とを認証サーバ１０２から受信するので、印刷許容枚数が３７７（＝５００−１２３）枚であると認識する。すなわち、ホストコンピュータ１０１は、３７７枚までの印刷が許容であると認識し、印刷ジョブの枚数が３７７枚までなら印刷を実行するようにする。一方、印刷ジョブの枚数が３７７枚より大きいのであるならば警告画面を表示する。例えば印刷ジョブの枚数が４００枚である場合、ホストコンピュータ１０１は、図２６に示すようなダイアログを警告画面（ＧＵＩ）３０１として表示する。図２６において、印刷実行ボタン３０２は、印刷許容枚数だけ印刷ジョブを実行するボタンであり、取消ボタン３０３は印刷ジョブの取消を行うためのボタンである。ユーザが印刷実行ボタン３０２を押下すると、ホストコンピュータ１０１は、印刷ジョブの出力枚数を３７７枚に縮退して印刷装置１０３に印刷を行わせる。このとき、印刷ジョブの残りの２３枚は印刷されない。このため、ユーザが所望する印刷結果を得ることができない可能性が高い。一方、ユーザが取消ボタン３０３を押下すると、ホストコンピュータ１０１は、印刷要求そのものを取り消す。
【００２３】
以降、上述の技術の改良を考慮した実施形態を示す。図１は、印刷システムの構成の一例を示すブロック図である。尚、図１では、ホストコンピュータ４０１及び印刷装置４０３をそれぞれ１つずつ示しているが、ホストコンピュータ４０１及び印刷装置４０３は、実際には複数存在している。また、図１では、印刷制御データ生成装置として設けられた認証サーバ４０２と、印刷管理装置として設けられたプリントシステム４０５がそれぞれ１つである場合を例に挙げて示しているが、認証サーバ４０２及びプリントシステム４０５は複数あってもよい。
【００２４】
図１において、ホストコンピュータ４０１は、ユーザが使用する情報処理装置であり、印刷ジョブを生成し、生成した印刷ジョブを、ネットワーク４０４を介してプリントシステム４０５に送信するためのものである。認証サーバ４０２は、ユーザの認証情報や出力制限情報を記憶する情報処理装置である。印刷装置４０３はネットワーク４０４を介して受信した印刷ジョブを受け取り、電子写真技術やインクジェット技術等の既知の印刷技術を利用して実際の用紙に印刷を行う装置である。プリントシステム４０５は、ホストコンピュータ４０１で生成された印刷ジョブを受信して保持し、印刷装置４０３に送信して印刷を行わせるための情報処理装置である。プリントシステム４０５の機能としては、例えば、印刷装置４０３での印刷ジョブの印刷処理を監視する機能がある。具体的に説明すると、プリントシステム４０５は、以下の（ａ）〜（ｄ）等の機能を有している。
【００２５】
（ａ）  プリントシステム４０５は、印刷装置４０３でエラーが発生した場合に、印刷装置４０３とは異なる他の印刷装置（図示せず）で代行印刷を行わせる。代行印刷を行う印刷装置は、例えば、予めプリントシステム４０５に設定されている。
（ｂ）  プリントシステム４０５は、１つの印刷ジョブを複数の印刷装置に分散して印刷させる。
（ｃ）  プリントシステム４０５は、印刷ジョブを留め置いておき、夜間等、予め定められた時刻になると、留め置いておいた印刷ジョブを自動的に印刷させる。
（ｄ）  プリントシステム４０５は、印刷ジョブを留め置いておき、ユーザの印刷開始操作により、指定の印刷装置に印刷を行う。ここで、ユーザの印刷開始操作は、出力先となる印刷装置に設置された操作パネルや、ホストコンピュータ１０１上で動作する印刷開始操作用アプリケーション等を用いて行われる。そして、その印刷開始操作に基づく指示がプリントシステム４０５に対して行なわれる。
【００２６】
また、図１に示すように、ホストコンピュータ４０１、認証サーバ４０２、印刷装置４０３、及びプリントシステム４０５は、イーサネット（登録商標）等の既知の技術によるネットワーク４０４により相互に接続されている。
【００２７】
尚、図１では、プリントシステム４０５が、独立した情報処理装置である場合を例に挙げて示したが、プリントシステム４０５の機能を、ホストコンピュータ４０１、認証サーバ４０２、及び印刷装置４０３の少なくとも何れか１つの装置に設けてもよい。すなわち、プリントシステム４０５が、ホストコンピュータ４０１、認証サーバ４０２、及び印刷装置４０３の少なくとも何れか１つの装置上で動作するようにしてもよい。
【００２８】
図２は、ホストコンピュータ４０１、認証サーバ４０２、及びプリントシステム４０５のハードウェアの構成の一例を示すブロック図である。
図２において、ＣＰＵ１０１０と、ＲＯＭ１０２０と、ＲＡＭ１０３０と、キーボード（ＫＢ）１０４０のキーボードコントローラ（ＫＢＣ）１０５０とが、システムバス１１３０に接続されている。また、表示部としてのＣＲＴディスプレイ（ＣＲＴ）１０６０のＣＲＴコントローラ（ＣＲＴＣ）１０７０が、システムバス１１３０に接続されている。そして、ハードディスク（ＨＤ）１０８０及びフレキシブルディスク（ＦＤ）１０９０のディスクコントローラ（ＤＫＣ）１１００も、システムバス１１３０に接続されている。更に、ネットワーク１１１０との接続のためのネットワークインターフェースコントローラ（ＮＩＣ）１１２０も、システムバス１１３０に接続されている。
【００２９】
ＣＰＵ１０１０は、ＲＯＭ１０２０或いはＨＤ１０８０に記憶されたソフトウェア、或いはＦＤ１０９０より供給されるソフトウェアを実行することで、システムバス１１３０に接続された各構成部を総括的に制御する。
すなわち、ＣＰＵ１０１０は、所定の処理シーケンスに従った処理プログラムを、ＲＯＭ１０２０、或いはＨＤ１０８０、或いはＦＤ１０９０から読み出して実行することで、後述する動作を実現するための制御を行う。
【００３０】
ＲＡＭ１０３０は、ＣＰＵ１０１０の主メモリ或いはワークエリア等として機能する。
ＫＢＣ１０５０は、ＫＢ１０４０や図示していないポインティングデバイス等からの指示入力を制御する。
【００３１】
ＣＲＴＣ１０７０は、ＣＲＴ１０６０の表示を制御する。
ＤＫＣ１１００は、ブートプログラム、種々のアプリケーション、編集ファイル、ユーザファイル、ネットワーク管理プログラム、及び本実施形態における所定の処理プログラム等を記憶するＨＤ１０８０及びＦＤ１０９０とのアクセスを制御する。
ＮＩＣ１１２０は、ネットワーク４０４上の装置或いはシステムと双方向にデータをやりとりする。
【００３２】
図３は、印刷装置４０３の一例であるＭＦＰ（デジタル複合機）のハードウェアの構成の一例を示すブロック図である。
図３において、コントローラユニット（Controller Unit）２０００は、画像情報やデバイス情報の入出力を行う為のコントローラである。コントローラユニット２０００は、スキャナ部２０７０や、プリント部（プリンタエンジン）２０９５と接続する。また、コントローラユニット２０００は、ＬＡＮ（Local Area Network）４０４や、ＷＡＮ（Wide Area Network）２０５１に接続する。
【００３３】
ＣＰＵ２００１は、システム全体を制御するコントローラである。ＲＡＭ２００２は、ＣＰＵ２００２が動作するためのシステムワークメモリであり、画像データを一時的に記憶するための画像メモリでもある。ＲＯＭ２００３はブートＲＯＭであり、システムのブートプログラムが格納されている。ＨＤＤ２００４はハードディスクドライブであり、システムソフトウェア、画像データ、及び履歴レコード（ログ）等を格納する。
【００３４】
操作部Ｉ／Ｆ２００６は、タッチパネルを有した操作部（ＵＩ；User Interface）２０１２とのインターフェイス部であり、操作部２０１２に表示する画像データを操作部２０１２に対して出力する。また、操作部Ｉ／Ｆ２００６は、操作部２０１２から本システムのユーザが入力した情報を、ＣＰＵ２００１に伝える役割も有する。ネットワークＩ／Ｆ（Network Ｉ／Ｆ）２０１０は、ＬＡＮ２０１１に接続し、情報の入出力を行う。
モデム（Modem）２０５０は、公衆回線２０５１に接続し、情報の入出力を行う。
【００３５】
ＩＣカードスロット（IC Card Slot）２１００は、ＩＣカードメディアが挿入された後に、適切なＰＩＮ（Personal Identifier Number）コードを入力する。これにより、暗号・復号に用いる鍵の入出力を行うことが可能となる。
以上のデバイスは、システムバス２００７上に配置される。
【００３６】
イメージバスＩ／Ｆ（Image Bus Ｉ／Ｆ）２００５は、システムバス２００７と画像データを高速で転送する画像バス２００８とを接続し、データ構造を変換するバスブリッジである。画像バス２００８は、ＰＣＩバスまたはIEEE1394で構成される。画像バス２００８上には以下のデバイスが配置される。
【００３７】
ラスターイメージプロセッサ（ＲＩＰ）２０６０は、ＰＤＬコードをビットマップイメージに展開する。デバイスＩ／Ｆ２０２０は、画像入出力デバイスであるスキャナ部２０７０及びプリント部２０９５と、コントロールユニット２０００とを接続し、画像データの同期系／非同期系の変換を行う。スキャナ画像処理部２０８０は、入力画像データに対し、補正、加工、及び編集等を行う。プリンタ画像処理部２０９０は、プリント出力画像データに対して、プリンタの補正や、解像度変換等を行う。画像回転部２０３０は、画像データの回転を行う。画像圧縮部２０４０は、多値画像データに対してはＪＰＥＧ、２値画像データに対してはＪＢＩＧ、ＭＭＲ、ＭＨの圧縮伸張処理を行う。
【００３８】
暗号・復号処理部２１１０は、ＩＣカードスロット２１００で入力した鍵を用いてデータの暗号化・復号化処理を行うハードウェアアクセラレータボードである。OCR・OMR処理部２１１１は、画像データに含まれる文字情報や２次元バーコードを解読して文字コード化する処理を行う。
【００３９】
次に、図４のフローチャートを参照しながら、印刷システムの動作の概要の一例について説明する。
まず、ホストコンピュータ４０１は、印刷指示を行ったユーザに関するユーザ情報を取得した後（ステップＳ４０１）、認証サーバ４０２から、第１の印刷制御データとして制限チケット（ジョブチケット）を取得する（ステップＳ４０２、Ｓ４０３）。
【００４０】
次に、ホストコンピュータ４０１は、認証サーバ４０２から取得した制限チケットを、印刷ジョブのデータに埋め込むと共に、データ完全性情報を印刷ジョブに付加してセキュア印刷ジョブを生成する（ステップＳ４０４）。そして、ホストコンピュータ４０１は、生成したセキュア印刷ジョブをプリントシステム４０５に送信する（ステップＳ４０５）。
【００４１】
プリントシステム４０５は、セキュア印刷ジョブを受信すると（ステップＳ４０６）、そのセキュア印刷ジョブを保存して、印刷開始が指示されるまで待機する（ステップＳ４０７）。プリントシステム４０５は、所定の方法により印刷開始が指示されると、印刷を行うための処理を開始する（ステップＳ４０８）。ここで、印刷開始を指示する方法としては、例えば、ユーザからプリントシステム４０５に印刷開始を指示する方法や、指定された時刻に自動的に印刷開始を指示する方法がある。この他、印刷処理を行っている間に印刷装置でエラーが発生した場合に、その印刷装置で再度印刷を行ったり、別の印刷装置で印刷を行ったりするための指示も、印刷開始を指示する方法に含まれる。尚、印刷開始を指示する方法は、これらに限定されるものではない。
【００４２】
印刷開始が指示されると、プリントシステム４０５は、セキュア印刷ジョブから制限チケットを抽出する。そして、プリントシステム４０５は、抽出した制限チケットの有効期限が切れているか否かと、セキュア印刷ジョブの出力先となる印刷装置がユーザにより指定された印刷装置と異なるか否かを判定する（ステップＳ４０９）。この判定の結果、制限チケットが有効期限切れでなく、セキュア印刷ジョブの出力先となる印刷装置がユーザにより指定された印刷装置と同じ場合には、ステップＳ４１０〜Ｓ４１６を省略してステップＳ４１７に進む。そして、プリントシステム４０５は、セキュア印刷ジョブを印刷装置４０３に送信する（ステップＳ４１７）。一方、制限チケットの有効期限が切れている場合、又はセキュア印刷ジョブの出力先となる印刷装置がユーザにより指定された印刷装置と異なる場合には、ステップＳ４１０に進む。そして、プリントシステム４０５は、抽出した制限チケットを認証サーバ４０２に渡して、制限チケットの再発行を依頼する（ステップＳ４１０）。
【００４３】
認証サーバ４０２は、プリントシステム４０５から渡された制限チケットを検証する（ステップＳ４１１）。例えば認証サーバ４０２は、制限チケットが、自身が発行した制限チケットであるか否かと、制限チケットが、再発行有効期限が切れる前の制限チケットであるか否かを検証する。更に認証サーバ４０２は、信頼されるプリントシステム４０２からの再発行依頼であるか否かと、元の制限チケットに記載されているユーザが現在も存在するのか否かを検証する。具体的に認証サーバ４０２は、以下の（ｉ）〜（ｉｖ）の４つの条件を満たすと制限チケットの再発行が可能と判断する。再発行有効期限は再発行可能期限の一例である。
（ｉ）  制限チケットが、自身が発行した制限チケットであること。
（ii）  制限チケットが、再発行有効期限切れでないこと。
（iii）  信頼されるプリントシステム４０２からの再発行依頼であること。
（iv）  元の制限チケットに記載されているユーザが現在も存在すること。
【００４４】
以上のようにして制限チケットの再発行が可能であると判断した場合、認証サーバ４０２は、第２の印刷制御データとして再発行制限チケットを発行し、依頼元のプリントシステム４０５へ返す（ステップＳ４１２、Ｓ４１３）。一方、制限チケットの再発行が不可能であると判断した場合、認証サーバ４０２は、エラーをプリントシステム４０５に通知する（ステップＳ４１４）。そして、プリントシステム４０５は、所定の印刷エラー処理を行う。
【００４５】
認証サーバ４０２から再発行制限チケットが発行されると、プリントシステム４０５は、その再発行制限チケットをセキュア印刷ジョブに付加する（ステップＳ４１６）。そして、プリントシステム４０５は、セキュア印刷ジョブを印刷装置４０３に送信する（ステップＳ４１７）。
【００４６】
印刷装置４０３は、セキュア印刷ジョブを受信すると（ステップＳ４１８）、受信したセキュア印刷ジョブが正当であるか否かを検証する（ステップＳ４１９）。具体的に印刷装置４０３は、セキュア印刷ジョブに付加されている再発行制限チケットと元の制限チケットとの検証、及びセキュア印刷ジョブに付加されているデータ完全性情報の検証を行う。この検証の結果、制限チケット、再発行制限チケット、及びデータ完全性情報が正当であれば、印刷装置４０３は、受信したセキュア印刷ジョブが正当であると判断し、再発行制限チケット又は制限チケットの出力制限情報に従って印刷を行う（ステップＳ４２１）。一方、制限チケット、再発行制限チケット、及びデータ完全性情報のどれかが正当でなければ、印刷装置４０３は、受信したセキュア印刷ジョブが正当でないと判断し、印刷をキャンセルする（ステップＳ４２２）。
【００４７】
以下に、図４に示した個々の処理について詳細に説明する。
図５は、ホストコンピュータ４０１の機能の一例を示すブロック図である。
図５において、印刷アプリケーション１８０１は、印刷指示を行うためのアプリケーションソフトウェアであり、プリンタドライバ１８０２に対して描画命令等を送信することにより、印刷指示を行う。
【００４８】
プリンタドライバ１８０２は、印刷アプリケーション１８０１から受けた描画命令等を印刷装置４０３が解釈可能な印刷データ、例えばＰＤＬ（Page Description Language;ページ記述言語）データに変換する。そして、プリンタドライバ１８０２は、印刷データを含むセキュア印刷ジョブを印刷ジョブ送信部１８０４に出力する。
制限チケット取得部１８０３は、プリンタドライバ１８０２の内部モジュールとして動作する。具体的に制限チケット取得部１８０３は、印刷アプリケーション１８０１を操作して、印刷を指示したユーザの認証情報と、印刷ジョブの出力先である印刷装置を示す情報とを取得する。そして、制限チケット取得部１８０３は、ユーザの認証情報を認証サーバ４０２に渡し、該当するユーザの制限チケットと、その制限チケットの署名データとを取得し、取得した制限チケットと署名データとをデータ完全性情報と共に印刷ジョブに付加する。これによりセキュア印刷ジョブが生成される。プリンタドライバ１８０２は、このようにして生成されたセキュア印刷ジョブを印刷ジョブ送信部１８０４に送信する。
印刷ジョブ送信部１８０４は、プリンタドライバ１８０２より受け取ったセキュア印刷ジョブをプリントシステム４０５に送信する。
【００４９】
図６は、認証サーバ４０２が保持しているユーザ別の認証情報と、出力制限情報とを格納するデータベースを表形式で示す図である。
図６において、各行６１１〜６１３はユーザのエントリを示し、各列にはユーザ別の認証情報、出力制限情報とが記述されている。枚数最大値６０２には、ユーザ名６０１に示されているユーザが今月実施できる印刷枚数の最大値が記述される。枚数実績値６０３には、ユーザ名６０１に示されているユーザが今月実施した印刷枚数の実績値が記述される。この枚数実績値６０３は、実際に印刷が行われることにより印刷装置４０３から送信される情報に基づいて更新される値である。印刷体裁６０４には、ユーザ名６０１に示されているユーザが設定することが可能な印刷体裁が記述される。図６に示す印刷体裁６０４には、両面印刷及び片面印刷の印刷体裁について記述しているが、印刷体裁６０４には、その他にも、カラー印刷、モノクロ印刷等様々な印刷体裁について記述することが可能である。
【００５０】
エントリ６１１は、"User1"という名前のユーザのエントリである。この"User1"に対して設定されている枚数最大値６０２は５００枚となっている。従って、"User1"は、今月の印刷枚数が５００枚までに制限されていることが分かる。"User1"に対して設定されている枚数実績値６０３は１２３枚となっている。従って、"User1"は、今月１２３枚の印刷を既に行っていることが分かる。また、"User1"に対して許可されている印刷体裁６０４は、両面印刷及び片面印刷であることが分かる。
【００５１】
ユーザはホストコンピュータ４０１にログオンする際に、ユーザ名とパスワードとを入力してログインする。ユーザが印刷アプリケーション１８０１を使用して印刷指示を出すと、制限チケット取得部１８０３は、ホストコンピュータ４０１を使用して印刷指示を出したログイン中のユーザのユーザ名を取得する。そのユーザ名は、ネットワーク４０４を経由して認証サーバ４０２に伝わる。認証サーバ４０２は、ネットワーク４０４を経由して入力したユーザ名と、図６に示したようなデータベースに登録されているユーザ名６０１とを照合してユーザ認証を行う。ユーザ認証に成功すると、認証サーバ４０２は制限チケットを生成してホストコンピュータ４０１に返す。例えば"User1"のユーザ認証に成功すると、ホストコンピュータ４０１は、印刷可能枚数として３７３（＝５００−１２３）枚が設定され、且つ許可体裁６０４として両面印刷及び片面印刷が設定された制限チケットを取得する。
【００５２】
次に印刷ジョブの形式について説明する。
本実施形態の印刷ジョブは、印刷ジョブの開始及び終了の認識と、印刷ジョブの属性の設定とが容易に行われるように規格化された１つ以上のジョブパケットによって構成されている。
図７は、ジョブパケットの構造の一例を概念的に示す図である。尚、図７の縦軸はバイト（Ｂｙｔｅ）を示し、横軸は各バイトのビット（Ｂｉｔ）を示している。
図７において、ジョブパケットの０〜１バイト目にあるオペレーションコードは、パケットの機能を示す。このオペレーションコードは、長さが２バイトのＩＤである。ジョブパケットにおいては、オペレーションコードとして、例えば以下の値を取ることができる。
０ｘ０２０１；ジョブ開始オペレーション
０ｘ０２０２；ジョブ属性設定オペレーション
０ｘ０２０４；ＰＤＬデータ送信オペレーション
０ｘ０２０５；ジョブ終了オペレーション
０ｘ０３０１；制限情報オペレーション
０ｘ０３０２；データ完全性情報オペレーション
０ｘ０３０３；属性書き換え開始オペレーション
０ｘ０３０４；属性書き換え終了オペレーション
【００５３】
ジョブパケットの２〜３バイト目にあるブロック番号は、ジョブパケットを送信側が返答要求をする場合に、受信側からの返答が送信側のどの返答要求に対応するものであるか特定するために使用する番号である。例えばブロック番号が「１」、「２」、「３」というジョブパケットを立て続けに送信した後に、ブロック番号が「２」というエラーパケットが返ってきた場合、送信側は２番目に送ったジョブパケットにエラーが発生したことを特定することが可能である。
【００５４】
ジョブパケットの４〜５バイト目にあるパラメータ長は、データ部のバイト長を示す領域であり、０〜６４Ｋバイトまでを示すことが可能である。
ジョブパケットの６バイト目以降は、データ部であり、オペレーションコードに対応したデータが格納される。ジョブ開始オペレーション及びジョブ終了オペレーションの場合にはデータは存在しない。
【００５５】
ジョブ属性設定オペレーションの場合、設定したいジョブ属性ＩＤとジョブ属性値とをデータ部に格納する。ここで、ジョブ属性ＩＤとは、ジョブに関する属性又は環境に対応して付けられた識別子であり、ＩＳＯ−１０１７５（ＤＰＡ）（ＩＳＯ：国際標準化機構）で規定されるジョブの属性に相当するＩＤが予め割り振られている。以下にジョブ属性ＩＤの代表的なものを挙げる。
０ｘ０１０１；ジョブ名称
０ｘ０１０３；ジョブオーナ名
０ｘ０１６ａ；ジョブサイズ
０ｘ０１７４；印刷ページ数
この他、印刷装置４０３の機能に応じて、クライアント用印刷ジョブＩＤ、印刷部数、印刷体裁（例えばモノクロ／カラーや、両面／片面）等のジョブ属性と、それに対応するＩＤとをジョブ属性ＩＤとして割り振ることができる。
【００５６】
図８は、出力制限情報が付与されない従来の形式の印刷ジョブの構成を概念的に示した図である。尚、図８では、説明の都合上、印刷ジョブの構成を単純化して示している。
図８において、上方のジョブパケットから下方のジョブパケットに向かって順番に、ホストコンピュータ４０１から印刷装置４０３に送られるものとする。また、各ジョブパケット７０１〜７０６に関して、ヘッダ部は図７における０〜５バイト目の固定領域を示し、ボディ部は図７における６バイト目以降のデータ部を示している。
【００５７】
印刷ジョブの先頭には、ジョブ開始を宣言するジョブパケット７０１が位置している。このことはジョブパケット７０１の０〜１バイト目のオペレーションコードがジョブ開始オペレーションを示す０ｘ０２０１である事から判断できる。
ジョブパケット７０２、７０３は、印刷ジョブのジョブ名称やオーナ名称、クライアント用印刷ジョブＩＤ、及び印刷条件等を設定する属性設定である。このことはジョブパケット７０２、７０３の０〜１バイト目のオペレーションコードが属性設定オペレーションを示す０ｘ０２０２である事から判断できる。図８のように複数の属性設定を行う際には属性設定用のジョブパケットを複数回付与すればよい。
【００５８】
ジョブパケット７０４、７０５は、印刷データを送信するためのジョブパケットである。このことはジョブパケット７０４、７０５の０〜１バイト目のオペレーションコードがＰＤＬデータ送信オペレーションを示す０ｘ０２０４である事から判断できる。ジョブパケット７０２、７０３と同様に、複数のＰＤＬデータ送信を行う際にはＰＤＬデータ送信用のジョブパケットを複数回付与すればよい。
印刷ジョブの最後には、ジョブ終了を宣言するジョブパケット７０６が位置している。このことはジョブパケット７０６の０〜１バイト目のオペレーションコードがジョブ終了オペレーションを示す０ｘ０２０５である事から判断できる。
【００５９】
図９は、出力制限情報が付与された印刷ジョブの構成の一例を概念的に示した図である。尚、図９では、説明の都合上、印刷ジョブの構成を単純化して示している。
図９において、印刷ジョブの先頭には、出力制限情報を示すジョブパケット８０１が付与されている。また、属性設定用のジョブパケット８０４と、印刷データ送信用のジョブパケット８０６との間には、データ完全性情報を示すジョブパケット８０５が付与されている。更に、印刷ジョブの最後にも、データ完全性情報を示すジョブパケット８０９が付与されている。
【００６０】
出力制限情報を示すジョブパケット８０１であることは、ジョブパケット８０１の０〜１バイト目のオペレーションコードが制限情報オペレーションを示す０ｘ３０１であることによって判断できる。制限情報オペレーションが指定されたジョブパケット８０１はデータ部分に出力制限情報が記載されている。
【００６１】
データ完全性情報を示すジョブパケット８０５、８０９であることは、ジョブパケット８０５、８０９の０〜１バイト目のオペレーションコードがデータ完全性情報オペレーションを示す０ｘ３０２であることによって判断できる。データ完全性情報オペレーションが指定されたジョブパケット８０５、８０９はデータ部分にデータ完全性情報が記載されている。
【００６２】
図１０は、制限チケットの書式の一例を示す図である。図１０では、出力可能な枚数の上限値を設定した制限チケットを例に挙げて示している。
図１０において、第１行９０１の「MAX＿PRINT」という文字列は、当該印刷ジョブで出力できる枚数の上限数を示しており、「＝１００」はその上限数の値の設定を示している。すなわち、当該印刷ジョブにおける出力可能な枚数の上限値が１００枚であることを示している。
【００６３】
第２行９０２には、当該印刷ジョブに対し、両面印刷を強制的に実行するための書式が記述されている。
第３行９０３には、当該印刷ジョブの出力先となる印刷装置の情報が記述されている。図１０に示す例では「printerA」という印刷装置が当該印刷ジョブの出力先であることを示している。尚、以下の説明では、当該印刷ジョブの出力先となる印刷装置の情報を、必要に応じて出力先印刷装置情報と称する。印刷装置は、この出力先印刷装置情報が示す印刷装置が自身の印刷装置でない場合には印刷を拒否する。
【００６４】
第４行９０４には、制限チケットの有効期限が記述されている。図１０に示す例では、２００５年１１月５日１０時まで、制限チケットが有効であると設定されている。
第５行９０５には、制限チケットの再発行有効期限が記述されており、図１０に示す例では、２００５年１１月７日１０時まで有効であると設定されている。
第６行９０６には、制限チケットの発行元であるユーザを示す情報が記述されている。
尚、図１０に示した制限チケットは一例であり、制限チケットにより印刷ジョブの出力を制限する内容は図１０に示したものに限定されない。図１０に示したものの他にも、例えば、複数面を縮小して１枚の用紙に面付けするＮ in １（あるいはＮアップ）印刷を実行することを制限情報として記述することが可能である。
【００６５】
この制限チケットにおける印刷枚数や印刷体裁といった制限情報は、印刷装置４０３（後述する印刷データ解釈部５０９）の動作に影響を与える。すなわち、ＰＤＬデータによる制限チケットに反するコマンド指定は全て無効となるため、出力される印刷結果に影響を与えることが可能となる。更に本実施形態では、制限チケットが正規な認証サーバ４０２から発行されたことを検証するために、デジタル署名による検証を実施している。デジタル署名は署名情報の一例である。
【００６６】
図１１は、出力制限情報のジョブパケット８０１の構造の一例を概念的に示す図である。尚、図１１の縦軸はバイト（Ｂｙｔｅ）を示し、横軸は各バイトのビット（Ｂｉｔ）を示している。
図１１において、０〜５バイト目まではヘッダ領域である。６バイト目からはデータ領域である。このデータ領域の先頭からＮＵＬＬまでの領域１２０１に、図１０に示したような出力制限情報が記憶されている。
ＮＵＬＬの後の残りの１２８byteの領域１２０２にはデジタル署名が記憶されている。このデジタル署名は、出力制限情報が正規な認証サーバ４０２から発行されており、且つ途中経路で不正な手段で書き換えられていないことを保証するためのものである。
【００６７】
デジタル署名は例えばＲＳＡ公開鍵暗号方式を使った方式が一般的である。公開鍵方式によるデジタル署名を使った場合、発行元（認証サーバ４０２）は、署名対象（出力制限情報）から一方向関数によるダイジェストを生成し、生成したダイジェストを、自分が保有する秘密鍵で暗号化を行う。デジタル署名の検証は印刷装置１０３が公開鍵を使って実施する。これが署名情報検証手段の一例である。秘密鍵は正規な認証サーバ４０２だけ保持しており、正しい公開鍵を使ってデジタル署名の検証が成功すると、署名対象（出力制限情報）が正規なものであることが証明できる。
【００６８】
ここでデジタル署名に使用する公開鍵は認証サーバ４０２が保持する公開鍵ペアを利用するものであり、印刷に先立って予め認証サーバ４０２から印刷装置４０３に渡されるものである。公開鍵の受け渡しに関してはネットワーク４０４を使った場合には公開鍵インフラ(ＰＫＩ)を利用した第三者証明等が考えられる。この他、公開鍵を記憶したメモリカードを配布して公開鍵の受け渡しを行う物理的配布等も考えられる。尚、公開鍵の受け渡しに関しては、既知の手法を使えばよいので、詳細な説明を省略する。
【００６９】
図１２は、データ完全性情報のジョブパケット８０５、８０９の構造の一例を概念的に示す図である。尚、図１２の縦軸はバイト（Ｂｙｔｅ）を示し、横軸は各バイトのビット（Ｂｉｔ）を示している。
図１２において、０〜５バイト目まではヘッダ領域である。６バイト目からはデータ領域である。このデータ領域の先頭から１２８byteの領域１７０１にはデジタル署名が記憶されている。このデジタル署名は、途中経路で不正な手段で書き換えられていないことを保証するためのものである。
【００７０】
まず、出力制限情報のジョブパケット８０１に添付されるデジタル署名が算出される。データ完全性情報のジョブパケット８０５のデジタル署名は、直前の出力制限情報８０１の情報を入力として算出される。また、データ完全性情報のジョブパケット８０９のデジタル署名は、直前のデータ完全性情報のジョブパケット８０５の情報を入力として算出される。具体的に説明すると、例えば、データ完全性情報のジョブパケット８０５、８０９のデジタル署名は、それぞれ直前の出力制限情報のジョブパケット８０１、直前のデータ完全性情報のジョブパケット８０５のデジタル署名のデータを入力として算出される。このような構造にすることにより、途中でジョブパケットがデータ完全性情報と共に抜き取られると、次に続くデータ完全性情報のデジタル署名を正しく算出することができず、改ざんを検知することが可能となる。
【００７１】
図１３は、印刷開始の指示を受けてから、印刷装置４０３へ印刷ジョブを送信するまでのプリントシステム４０５の動作の一例を説明するフローチャートである。
プリントシステム４０５は、図４で説明したように、ホストコンピュータ４０１からセキュア印刷ジョブを受信すると、セキュア印刷ジョブをスプールして保存し、印刷開始の指示がなされるまで待機する（ステップＳ１３０１）。
【００７２】
印刷開始の指示がなされると、プリントシステム４０５は、保存しているセキュア印刷ジョブから制限チケットと、その制限チケットのデジタル署名とを取得し（ステップＳ１３０２）、制限チケットの有効期限を取得する（ステップＳ１３０３）。
次に、プリントシステム４０５は、印刷指示が通常印刷であるか否かを判定する（ステップＳ１３０４）。この判定の結果、印刷指示が通常印刷である場合、すなわちホストコンピュータ４０１が印刷ジョブを作成した際にユーザにより出力先として指示された印刷装置にそのまま印刷を行う場合には、ステップＳ１３０５に進む。一方、印刷指示が通常印刷でない場合、すなわち、代行印刷等のように、ユーザにより出力先として指示された印刷装置とは異なる印刷装置が出力先である場合や、分散印刷のように、複数の出力先が存在する場合には、ステップＳ１３０７に進む。
【００７３】
ステップＳ１３０５に進むと、プリントシステム４０５は、ステップＳ１３０３で取得した制限チケットの有効期限を調べ、制限チケットの有効期限が切れていないか否かを判定する。この判定の結果、制限チケットの有効期限が切れていない場合には、ステップＳ１３０６に進み、セキュア印刷ジョブを印刷装置４０３に送信し、印刷処理を終了する。一方、制限チケットの有効期限が切れている場合には、ステップＳ１３０７に進む。
制限チケットの有効期限が切れていた場合と、代行印刷や分散印刷等であり通常印刷でない場合、プリントシステム４０５は、認証サーバ４０２に制限チケットの再発行を依頼する（ステップＳ１３０７）。認証サーバ４０２への制限チケットの再発行依頼では、元の制限チケットとその制限チケットのデジタル署名と、プリントシステム４０５の証明書と、出力先印刷装置情報とを認証サーバ４０２に送信する。
【００７４】
次に、プリントシステム４０５は、再発行制限チケットとその再発行制限チケットのデジタル署名とが認証サーバ４０２で発行されたか否かを判定する（ステップＳ１３０８）。この判定は、例えば、制限チケットの再発行を依頼してから、所定時間が経過するまでに、再発行制限チケットが認証サーバ４０２から返されたか否かによって行うようにすればよい。この判定の結果、再発行制限チケットとその再発行制限チケットのデジタル署名とが認証サーバ４０２で発行された場合、ステップＳ１３０８に進む。そして、プリントシステム４０５は、再発行制限チケットとその再発行制限チケットのデジタル署名とを含む属性書き換え命令を作成する（ステップＳ１３０９）。属性書き換え命令は、書き換え命令情報の一例である。コマンドやスクリプトの形式であっても良いし、特定のデータ列であってもよい。
【００７５】
その後プリントシステム４０５は、属性書き換え命令と、元のセキュア印刷ジョブとを結合し、属性書き換え命令が結合されたセキュア印刷ジョブを１セッションで印刷装置に送信する（ステップＳ１３１０）。
ステップＳ１３０８において、再発行制限チケットとその再発行制限チケットのデジタル署名とが認証サーバ４０２で発行されず、再発行制限チケットの発行が認証サーバ４０２で拒否された場合には、ステップＳ１３１１に進む。そして、プリントシステム４０５は、印刷をキャンセルするための処理を行う。
尚、分散印刷等のように、複数の印刷装置で印刷を行う場合には、ステップＳ１３０７〜Ｓ１３１０を、印刷を行う印刷装置の個数回繰り返す。
【００７６】
認証サーバ４０２には、信頼できるプリントシステム４０５の証明書が予め登録されている。プリントシステム４０５から、制限チケットの再発行の依頼があると、認証サーバ４０２は、送信されたプリントシステム４０５の証明書と、予め登録されているプリントシステムの証明書とを比較する。そして、認証サーバ４０２は、比較した結果を元にして、制限チケットの再発行を依頼したプリントシステム４０５が信頼できるプリントシステムであるか否かを検証する。この証明書は、一般的な公開鍵や秘密鍵等を用いたデジタル証明書技術等を利用することにより得ることができる。
【００７７】
続いて、図１４のフローチャートを参照しながら、制限チケットを再発行する際の認証サーバ４０２の動作の一例について説明する。
まず、認証サーバ４０２は、プリントシステム４０５から送信された証明書（プリントシステム４０５の証明書）を確認する（ステップＳ１４０１）。次に、認証サーバ４０２は、プリントシステム４０５から送信された証明書が、予め登録されているか否かを判定することにより、プリントシステム４０５が、予め登録されている信頼できるプリントシステムであるか否かを判定する（ステップＳ１４０２）。この判定の結果、プリントシステム４０５が信頼できるプリントシステムでない場合、認証サーバ４０２は、制限チケットの再発行の依頼元であるプリントシステム４０５にエラー通知を返す（ステップＳ１４０６）。
【００７８】
一方、プリントシステム４０５が信頼できるプリントシステムである場合、認証サーバ４０２は、プリントシステム４０５から送信された元の制限チケットとその制限チケットのデジタル署名とを検証する（ステップＳ１４０３）。検証の内容としては、例えば、以下の方法が挙げられる。
（１）  元の制限チケットが、自身の認証サーバが発行した制限チケットであるか否かを検証すると共に、元の制限チケットのデジタル署名より、元の制限チケットが改ざんされていないかどうかを検証する。この検証の結果、元の制限チケットが、自身の認証サーバが発行した制限チケットであり、且つ改ざんされていなければ、この（１）の検証条件を満たしていることになる。
【００７９】
（２）  元の制限チケットのデジタル署名と、図６に示したデータベースとに基づいて、元の制限チケットに記載されているユーザが現在も存在するのかどうかを検証する。この検証の結果、元の制限チケットに記載されているユーザが現在も存在していれば、この（２）の検証条件を満たしていることになる。
（３）  元の制限チケットの再発行期限が切れていないかどうかを検証する。この検証の結果、元の制限チケットの再発行期限が切れていなければ、この（３）の検証条件を満たしていることになる。
【００８０】
そして、認証サーバ４０２は、これら（１）〜（３）の検証条件を全て満たすか否かを判定する（ステップＳ１４０４）。この判定の結果、これら（１）〜（３）の検証条件を１つでも満たさない場合、認証サーバ４０２は、制限チケットの再発行の依頼元であるプリントシステム４０５にエラー通知を返す（ステップＳ１４０６）。
【００８１】
一方、（１）〜（３）の検証条件を全て満たし、元の制限チケットが適正なものである場合、認証サーバ１４０２は、元の制限チケットに基づいて、新しい再発行制限チケットを作成する。再発行制限チケットには、現在からの有効期限が新しい有効期限として設定され、プリントシステム４０５から指定された印刷装置情報が出力先印刷装置情報として設定され、更に元の制限チケットのデジタル署名が付加される。認証サーバ４０２は、このようにして作成した再発行制限チケットをプリントシステム４０５に返す（ステップＳ１４０５）。
【００８２】
図１５は、再発行制限チケットの書式の一例を示す図である。
図１５において、第１行１１０１には、図１０に示した制限チケットの第１行９０１と同様の「MAX＿PRINT」という文字列が記述されている。この「MAX＿PRINT」という文字列は、当該印刷ジョブで出力できる枚数の上限数を示しており、「＝５０」はその上限数の値の設定を示している。当該印刷ジョブで出力できる枚数の上限数を示しており、「＝５０」は値の設定を示している。すなわち、当該印刷ジョブにおける出力可能な枚数の上限値が５０枚であることを示している。
【００８３】
第２行１１０２には、当該印刷ジョブに対し、両面印刷を強制的に実行するための書式が記述されている。
第３行１１０３には、出力先印刷装置情報が記述されている。図１５に示す例では「printerB」という印刷装置が当該印刷ジョブの出力先であることを示している。
第４行１１０４には、再発行制限チケットの有効期限が記述されている。図１５に示す例では、２００５年１１月６日１０時まで、再発行制限チケットが有効であると設定されている。
【００８４】
第５行１１０５には、再発行制限チケットの発行元であるユーザを示す情報が記述されている。
第６行１１０６には、元の制限チケットのデジタル署名が記述されており、この第６行１１０６における記述により、この再発行制限チケットがどの制限チケットに基づいて発行されたのかを特定することができる。
【００８５】
図１６は、再発行制限チケットを付加する属性書き換えオペレーションを含む印刷ジョブの構成の一例を概念的に示した図である。尚、図１６では、説明の都合上、印刷ジョブの構成を単純化して示している。
制限チケットが付加された印刷ジョブに、再発行制限チケットを付加する場合には、印刷ジョブの先頭に属性書き換え開始ジョブパケット２２０１を付加すると共に、属性書き換え終了ジョブパケット２２０４を付加する。そして、それら属性書き換え開始ジョブパケット２２０１と、属性書き換え終了ジョブパケット２２０４との間に、出力制限情報ジョブパケット２２０２と属性設定ジョブパケット２２０３とを付加する。出力制限情報ジョブパケット２２０２のボディ部には、再発行制限チケットと、その再発行制限チケットのデジタル署名とが設定する。
【００８６】
この他、クライアント用印刷ジョブＩＤ、印刷部数、モノクロ／カラー等のジョブ属性を書き換える場合には、例えば、出力制限情報ジョブパケット２２０２と属性書き換え終了ジョブパケット２２０４との間に、属性設定パケット２２０３を挿入すればよい。
そして、属性書き換え終了ジョブパケット２２０４の直後から、図９に示した元の印刷ジョブが続く。
このような構造にすることにより、元の印刷ジョブのジョブパケットの部分を一切変更すること無く、データの改ざんを防止するためのデータ完全性情報等のデータをそのまま使用することができる。
【００８７】
図１７は、属性書き換え開始を示す属性書き換え開始ジョブパケット２２０１の構造の一例を概念的に示す図である。尚、図１７の縦軸はバイト（Ｂｙｔｅ）を示し、横軸は各バイトのビット（Ｂｉｔ）を示している。
図１７において、ジョブパケットの０〜５バイト目まではヘッダ領域である。属性書き換え開始ジョブパケット２２０１には、ボディ部は存在しない。
【００８８】
図１８は、属性書き換え終了を示す属性書き換え終了ジョブパケット２２０４の構造の一例を概念的に示す図である。尚、図１８の縦軸はバイト（Ｂｙｔｅ）を示し、横軸は各バイトのビット（Ｂｉｔ）を示している。
図１８において、０〜５バイト目まではヘッダ領域である。６バイト目からはデータ領域である。このデータ領域の先頭から１２８byteの領域２５０１にはデジタル署名が記憶されている。このデジタル署名は、途中経路で不正な手段で書き換えられていないことを保証するためのものである。
尚、このデジタル署名は、属性書き換え開始ジョブパケット２２０１から、属性書き換え終了ジョブパケット２２０４の直前までのデータのデジタル署名である。ただし、このデジタル署名を、属性書き換え開始ジョブパケット２２０１から、元の印刷ジョブまでの全てのデータのデジタル署名としてもよい。
【００８９】
図１９は、印刷装置４０３の機能の一例を示すブロック図である。
図１９において、インターフェイス部５０１は、ネットワーク４０４と接続し、プリントシステム４０５から印刷ジョブを受信する。
制限チケット判定部５０２は、インターフェイス部５０１で受信された印刷ジョブの形式を判別して、印刷ジョブに制限チケットが付与されているかどうかを判定する。
印刷済制限チケット管理部５０３は、一度印刷を行った印刷ジョブの制限チケットのデジタル署名と、再発行制限チケットのデジタル署名とを保持する。
【００９０】
データ完全性検証部５０４は、印刷ジョブのデータ完全性情報を検証する。
印刷ジョブ取消部５０５は、制限チケットが付与されていない印刷ジョブに基づく印刷の取消を指示する。
印刷データ格納部５０７は、印刷ジョブに含まれる印刷データ、例えばＰＤＬ（Page Description Language;ページ記述言語）データを一時的に格納する。
ジョブ管理部５０８は、印刷ジョブを解析し、印刷ジョブを管理する。ジョブ管理部５０８は、例えば、カラー等の出力属性情報を管理する。また、ジョブ管理部５０８は、印刷ジョブに含まれるＰＤＬデータを印刷データ格納部５０７に格納する。更に、ジョブ管理部５０８は、印刷データ解釈部５０９とプリンタエンジン５１１とを管理し、印刷ジョブの印刷が完了すると、その印刷ジョブの制限チケットのデジタル署名と、再発行制限チケットのデジタル署名とを印刷済制限チケット管理部５０３に保存する。
【００９１】
印刷データ解釈部５０９は、ジョブ管理部５０８で管理されている印刷ジョブの出力属性情報に従い、印刷データ格納部５０７からＰＤＬデータを取得して画像生成処理を行い、イメージデータを生成する。
イメージ格納部５１０は、印刷データ解釈部５０９で生成されたイメージデータを印刷が完了するまで一時的に格納しておく。
プリンタエンジン５１１は、イメージ格納部５１０に格納されたイメージデータを、電子写真技術やインクジェット技術等の既知の印刷技術を用いて印刷用紙等のメディアに実際に印刷する。
尚、印刷データ格納部５０７とイメージ格納部５１０は、大容量のハードディスク（ＨＤ）１０８０を用いて構成される。ただし、印刷データ格納部５０７及びイメージ格納部５１０の物理構成はこれに限定されるものではなく、印刷データ格納部５０７及びイメージ格納部５１０を、例えばフラッシュメモリ等の２次記憶装置を用いて構成するようにしてもよい。
【００９２】
次に、印刷ジョブの受信処理について説明する。
図２０は、制限チケット判定部５０２の動作の一例を説明するフローチャートである。
制限チケット判定部５０２は、印刷装置４０３の起動と共に動作を開始し、以降印刷装置４０３の電源が遮断されるまで動作を継続する。
まず、制限チケット判定部５０２は、インターフェイス部５０１から受信した印刷ジョブのジョブパケットを受け取り、ジョブパケットのオペレーションコードを参照する。そして、制限チケット判定部５０２は、オペレーションコードが０ｘ０３０３であるか否か（すなわち、ジョブパケットが属性書き換え開始オペレーションを示すものであるか否か）を判定する（ステップＳ２００１）。この判定の結果、ジョブパケットが属性書き換え開始オペレーションを示すものでない場合には、後述するステップＳ２０１０に進む。
【００９３】
一方、ジョブパケットが属性書き換え開始オペレーションを示すものである場合、ステップＳ２００２に進む。そして、制限チケット判定部５０２は、属性書き換え開始オペレーションと属性書き換え終了オペレーション（属性書き換え開始ジョブパケット２２０１と属性書き換え終了ジョブパケット２２０４）に挟まれたジョブパケットを取得する（ステップＳ２００２）。具体的に説明すると、制限チケット判定部５０２は、出力制限情報が記述された出力制限情報ジョブパケット２２０２を取得する。そして、制限チケット判定部５０２は、取得した出力制限情報ジョブパケット２２０２のボディ部より、再発行制限チケットと、その再発行制限チケットのデジタル署名とを取得する（ステップＳ２００２）。更に、制限チケット判定部５０２は、属性書き換え終了ジョブパケット２２０４に続くジョブパケットであって、出力制限情報を表すジョブパケット８０１より、元の制限チケットと、その元の制限チケットのデジタル署名とを取得する（ステップＳ２００２）。
【００９４】
次に、制限チケット判定部５０２は、元の制限チケットと、その元の制限チケットのデジタル署名とを検証すると共に、再発行制限チケットと、その再発行制限チケットのデジタル署名とを検証する（ステップＳ２００３）。具体的に制限チケット判定部５０２は、元の制限チケットと再発行制限チケットとが、正しい認証サーバ１０２で発行されたものであり、且つ改ざんされていないかどうかを判定する。この判定の結果、元の制限チケットと再発行制限チケットとが、正しい認証サーバ１０２で発行されたものであり、且つ改ざんされていないという条件を満たさない場合には、後述するステップＳ２０１２に進む。
【００９５】
一方、元の制限チケットと再発行制限チケットとが、正しい認証サーバ１０２で発行されたものであり、且つ改ざんされていないという条件を満たす場合にはステップＳ２００４に進む。そして、制限チケット判定部５０２は、再発行制限チケットから元の制限チケットのデジタル署名を取得する（ステップＳ２００４、図１５の第６行１１０６）。
【００９６】
続いて制限チケット判定部５０２は、ステップＳ２００４で取得した再発行制限チケット内のデジタル署名と、ステップＳ２００２で取得した制限情報パケット内の元の制限チケットのデジタル署名とが一致するか否かを判定する（ステップＳ２００５）。この判定の結果、再発行制限チケット内のデジタル署名と、制限情報パケット内の元の制限チケットのデジタル署名とが一致しない場合には、後述するステップＳ２０１２に進む。
【００９７】
一方、再発行制限チケット内のデジタル署名と、制限情報パケット内の元の制限チケットのデジタル署名とが一致する場合には、ステップＳ２００６に進む。そして、制限チケット判定部５０２は、再発行制限チケットについて、以下の（Ａ）〜（Ｃ）のチェックを行う（ステップＳ２００６）。
【００９８】
（Ａ）  制限チケットが有効期限切れでないか。
具体的に制限チケット判定部５０２は、再発行制限チケットの第４行１１０４で設定されている再発行制限チケットの有効期限を取得し、取得した有効期限と現在時刻とを比較することにより、再発行制限チケットの有効期限が切れていないかどうかを検証する。
（Ｂ）  出力先印刷装置情報は自身の印刷装置か。
具体的に制限チケット判定部５０２は、再発行制限チケットの第３行１１０３で設定されている出力先印刷装置情報を取得し、取得した出力先印刷装置情報が自身の印刷装置を示すものであるかどうかを検証する。
（Ｃ）  印刷済みの制限チケットでないか。
具体的に制限チケット判定部５０２は、印刷済制限チケット管理部５０３に、当該印刷ジョブの再発行制限チケットと同じ組の制限チケットが保持されていないかどうかを検証する。
【００９９】
そして、制限チケット判定部５０２は、再発行制限チケットが有効期限切れでなく、出力先印刷装置情報が自身の印刷装置であり、且つ再発行制限チケットが印刷済みの制限チケットでないかどうかを判定する（ステップＳ２００７）。この判定の結果、再発行制限チケットが有効期限切れでなく、出力先印刷装置情報が自身の印刷装置であり、且つ再発行制限チケットが印刷済みの制限チケットでないという条件を満たさない場合には、後述するステップＳ２０１２に進む。
【０１００】
一方、再発行制限チケットが有効期限切れでなく、出力先印刷装置情報が自身の印刷装置であり、再発行制限チケットが印刷済みの制限チケットでないという条件を満たし、且つ再発行制限チケットが適正なものである場合には、ステップＳ２００８に進む。そして、制限チケット判定部５０２は、インターフェイス部５０１で受信された印刷ジョブに基づく印刷を許可すると判定し（ステップＳ２００８）、印刷処理を続行することをデータ完全性検証部５０４等に通知する（ステップＳ２００９）。すると、ステップＳ２００９では、再発行制限チケットの制限の内容に基づき、印刷がなされる。例えば、図１６の出力制限情報８０１を無視して、再発行出力制限情報２２０２に基づき印刷する。必要であれば、制限チケット８０１を除去するか無効化するようにしてもよい。あるいは、再発行出力制限情報２２０２を用いて出力制限情報８０１を書き換える。この書き換えられた出力制限情報８０１を用いるようにしてもよい。
【０１０１】
ここでは、前者のように再発行制限チケットをそのまま用いることとする。例えば、図１５の制限チケットが再発行制限チケットである場合を考える。ステップＳ２００９では、ジョブは、ジョブは、強制的に両面印刷設定される。このとき、ジョブは、再発行制限チケットに基づき強制的に両面印刷設定された印刷コマンドを印刷データ格納部５０７に格納する。そして、印刷データ解釈部５０９がジョブデータを処理してイメージ格納部５１０に格納する。プリンタエンジン５１１はイメージデータを印刷する。そして、印刷データ解釈部では最大印刷枚数５０枚の範囲で印刷がなされるよう制御される。ジョブのデータが最大印刷枚数５０枚を超えるデータであった場合は、ステップＳ２００７で、事前にジョブをキャンセルしてユーザに通知しても良い。
【０１０２】
ステップＳ２００１において、ジョブパケットに属性書き換え開始オペレーションが存在しないと判定された場合、制限チケット判定部５０２は、出力制限情報が記述されたジョブパケットを解析する。そして、制限チケット判定部５０２は、制限チケットとその制限チケットのデジタル署名とを取得する（ステップＳ２０１０）。
【０１０３】
続いて制限チケット判定部５０２は、制限チケットとその制限チケットのデジタル署名とを検証する（ステップＳ２０１１）。具体的に制限チケット判定部５０２は、制限チケットが正しい認証サーバ１０２で発行されたものであり、且つ改ざんされていないかどうかを判定する。この判定の結果、制限チケットが正しい認証サーバ１０２で発行されたものであり、且つ改ざんされていないという条件を満たす場合には、前述したステップＳ２００６に進む。そして、制限チケット判定部５０２は、ステップＳ２０１０で取得した制限チケットについてステップＳ２００６の確認を行う。続いて、ステップＳ２００７の処理を制限チケットに対して行う。判定結果がＹＥＳの場合は、ステップＳ２００８の処理を行う。次にステップＳ２００９の処理を行う。ステップＳ２００９では、制限チケットに基づき、印刷がなされる。制限チケット内に、ジョブを発行したユーザの制限内容が記載されている。例えば、強制両面印刷及び制限印刷枚数が５０枚であったとする。このとき、ジョブは、制限チケットに基づき強制的に両面印刷設定された印刷コマンドを印刷データ格納部５０７に格納する。そして、印刷データ解釈部５０９がジョブデータを処理してイメージ格納部５１０に格納する。プリンタエンジン５１１はイメージデータを印刷する。そして、制限チケットに基づき最大印刷枚数５０枚の範囲で印刷がなされる。最大印刷枚数５０枚を超えるジョブであった場合は、ステップＳ２００７で、ジョブをキャンセルしてユーザに通知しても良い。
【０１０４】
一方、制限チケットが正しい認証サーバ１０２で発行されたものであり、且つ改ざんされていないという条件を満たさない場合には、ステップＳ２０１２に進む。そして、制限チケット判定部５０２は、インターフェイス部５０１で受信された印刷ジョブに基づく印刷を許可しないと判定し（ステップＳ２０１２）、その印刷ジョブに基づく印刷を取り消すことを印刷ジョブ取消部５０５等に通知する（ステップＳ２０１３）。
【０１０５】
次に、図２１のフローチャートを参照しながら、ジョブ管理部５０８の動作の一例を説明する。
まず、ジョブ管理部５０８は、印刷ジョブのジョブパケットを順次読み出す処理を行う（ステップＳ２１０１）。
次に、ジョブ管理部５０８は、ステップＳ２１０１で読み出したジョブパケットのオペレーションコードが０ｘ０２０１であるか否か（すなわち、ジョブパケットがジョブ開始オペレーションを示すものか否か）を判定する。この判定の結果、ジョブパケットがジョブ開始オペレーションを示すものである場合、ジョブ管理部５０８は、印刷ジョブの情報の格納領域をジョブ管理部５０８内に作成する。尚、以下の説明では、印刷ジョブの情報の格納領域を、印刷ジョブ情報格納領域と略称する。
【０１０６】
一方、ジョブパケットがジョブ開始オペレーションを示すものでない場合、ステップS２１０４に進む。そして、ジョブ管理部５０８は、ステップＳ２１０１で読み出したジョブパケットのオペレーションコードが０ｘ０２０２であるか否か（すなわち、ジョブパケットがジョブ属性設定オペレーションを示すものか否か）を判定する（ステップＳ２１０４）。この判定の結果、ジョブパケットがジョブ属性設定オペレーションを示すものである場合、ジョブ管理部５０８は、ステップＳ２１０３で生成した該当する印刷ジョブ情報格納領域に属性情報を登録する（ステップＳ２１０５）。
【０１０７】
一方、ジョブパケットがジョブ属性設定オペレーションを示すものでない場合には、ステップＳ２１０６に進む。そして、ジョブ管理部５０８は、ステップＳ２１０１で読み出したジョブパケットのオペレーションコードが０ｘ０２０４であるか否か（すなわち、ジョブパケットがＰＤＬデータ送信オペレーションを示すものか否か）を判定する（ステップＳ２１０６）。この判定の結果、ジョブパケットがＰＤＬデータ送信オペレーションを示すものである場合、ジョブ管理部５０８は、印刷データ格納部５０７にＰＤＬデータを格納する（ステップＳ２１０７）
【０１０８】
一方、ジョブパケットがＰＤＬデータ送信オペレーションを示すものでない場合には、ステップＳ２１０８に進む。そして、ジョブ管理部５０８は、ステップＳ２１０１で読み出したジョブパケットのオペレーションコードが０ｘ０３０１であるか否か（すなわち、ジョブパケットが制限情報オペレーションを示すものか否か）を判定する（ステップＳ２１０８）。この判定の結果、ジョブパケットが制限情報オペレーションを示すものである場合、ジョブ管理部５０８は、制限チケット又は再発行制限チケットを、ステップＳ２１０３で生成した該当する印刷ジョブ情報格納領域に格納する（ステップＳ２１０９）。尚、印刷ジョブ情報格納領域に再発行制限チケットが既に格納されている場合には制限チケットを格納しない。
【０１０９】
一方、ジョブパケットが制限情報オペレーションを示すものでない場合には、ステップＳ２１１０に進む。そして、ジョブ管理部５０８は、ステップＳ２１０１で読み出したジョブパケットのオペレーションコードが０ｘ０２０５であるか否か（すなわち、ジョブパケットがジョブ終了オペレーションを示すものか否か）を判定する（ステップＳ２１１０）。この判定の結果、ジョブパケットがジョブ終了オペレーションを示すものである場合には、処理を終了する。一方、ジョブパケットがジョブ終了オペレーションを示すものでない場合には、ステップＳ２１０１に戻る。
【０１１０】
次に、図２２のフローチャートを参照しながら、出力制限情報に基づく印刷データ解釈部５０９の動作の一例を説明する。
印刷データ解釈部５０９は、いわゆるＰＤＬ言語を解釈し、実際の印刷に使用するイメージデータを生成する。ポストスクリプトやＬＩＰＳ等多種の規格がＰＤＬの規格として実現化されている。
印刷データ解釈部５０９は印刷ジョブを受信し、受信した印刷ジョブの最後のページの解釈が完了するまで処理を継続する。
【０１１１】
まず、印刷データ解釈部５０９はページ数を示す変数ｎを１に初期化する（ステップＳ２２０１）。
次に、印刷データ解釈部５０９は、ＰＤＬコマンドを印刷データ格納部５０７から取得する（ステップＳ２２０２）。
次に、印刷データ解釈部５０９は、ＰＤＬコマンドの解釈処理を行う（ステップＳ２２０３）。本実施形態では、例えばＬＩＰＳ言語における「矩形描画」や「イメージ描画」のような実際に描画を行うコマンドをＰＤＬコマンドとして想定している。
【０１１２】
次に、印刷データ解釈部５０９は、ステップＳ２２０３で処理したＰＤＬコマンドがページ終了コマンドであったか否かを判定する（ステップＳ２２０４）。この判定の結果、ステップＳ２２０３で処理したＰＤＬコマンドがページ終了コマンドでなければ、ステップＳ２２０３で処理したＰＤＬコマンドがページ終了コマンドとなるまで、ステップＳ２２０２〜Ｓ２２０４を繰り返し行う。そして、ステップＳ２２０３で処理したＰＤＬコマンドがページ終了コマンドになると、印刷データ解釈部５０９は、ページ数を示す変数ｎに「１」を加算してインクリメントする（ステップＳ２２０５）。
【０１１３】
次に、印刷データ解釈部５０９は、変数ｎが、図２１のステップＳ２１０９で設定された制限チケットに基づいて、制限ページ数を超えたか否かを判定する（ステップＳ２２０６）。この判定の結果、変数ｎが制限ページ数を超えていなければ、変数ｎが制限ページ数を超えるまで、ステップＳ２２０２〜ステップＳ２２０６を繰り返し行う。そして、変数ｎが制限ページ数を超えると、印刷データ解釈部５０９は、残りのＰＤＬコマンドを全て破棄する（ステップＳ２２０７）。図１０に示した制限チケットを例に挙げて説明すると、図１０に示した制限チケットでは最大印刷枚数が１００枚であるため、ＰＤＬデータのページ終了コマンドを１００回検知した時点で残りのＰＤＬデータは読み飛ばされ、印刷されない。
【０１１４】
次に、制限チケットが添付されていない印刷ジョブの処理の一例を説明する。図２３は、印刷ジョブ取消部５０５の動作の一例を説明するフローチャートである。
印刷ジョブ取消部５０５は、印刷装置４０３の起動と共に動作を開始し、以降印刷装置４０３の電源遮断まで動作を継続する。
【０１１５】
印刷ジョブ取消部５０５は、制限チケット判定部５０２により出力制限情報を含まないと判断された印刷ジョブのジョブパケットを取得する（ステップＳ２３０１）。
次に、印刷ジョブ取消部５０５は、取得したジョブパケットを破棄する。
次に、印刷ジョブ取消部５０５は、印刷ジョブが終了か否かを判定する（ステップＳ２３０３）。この判定の結果、印刷ジョブが終了していない場合には、印刷ジョブが終了するまで、ステップＳ２３０１〜Ｓ２３０３を繰り返し行う。一方、印刷ジョブが終了すると、処理を終了して、新たな印刷ジョブが取得されるまで待機する。
【０１１６】
以上のように本実施形態では、認証サーバ４０２は、ホストコンピュータ４０１からの依頼に基づき制限チケットを発行する。制限チケットには、その制限チケットの有効期限に加えて、再発行有効期限を記述しておく（図１０の第５行９０５）。その後、ホストコンピュータ４０１は、制限チケットを印刷ジョブに埋め込んでセキュア印刷ジョブを生成し、生成したセキュア印刷ジョブをプリントシステム４０５に送信する。プリントシステム４０５は、セキュア印刷ジョブに付加された印刷ジョブが通常印刷でない場合と、セキュア印刷ジョブに付加された制限チケットの有効期限（図１０の第４行９０４）が切れている場合に、制限チケットの再発行を認証サーバ４０２に依頼する。そして、認証サーバ４０２は、元の制限チケットの再発行有効期限が切れていない等、前記（１）〜（４）の条件を満たしているか否かを判定する。この判定の結果、前記（１）〜（４）の条件を満たしている場合、認証サーバ４０２は、元の制限チケットに基づいて、再発行制限チケットをプリントサーバ４０５に発行する。プリントサーバ４０５は、再発行制限チケットを元の制限チケットの代わりに使用することを指定するための属性書き換え命令（ジョブパケット２２０１、２２０２、２２０４）を再発行制限チケット（ジョブパケット２２０３）と共に印刷ジョブに付加する。そして、印刷装置４０３は、印刷ジョブに付加されている再発行制限チケットが元の制限チケットに基づくものである等の条件を満たしている場合に限りその印刷ジョブに基づく印刷を実行するようにした。
【０１１７】
以上のようにすることによって、プリントシステム４０５は、ユーザ認証情報を保持していなくても、制限チケットの更新を認証サーバ４０２に依頼して、更新後の制限チケットを認証サーバ４０２から受け取ることができる。従って、制限チケットの有効期限以降の印刷や、印刷ジョブの属性や出力先の変更を、改ざん防止機能やリプレイ攻撃防止機能を有効としたまま実現することが、プリントシステム４０５を利用して印刷ジョブを印刷する構成のシステムで可能となる。よって、印刷ジョブの出力を柔軟且つ適切に制限することが可能になる。尚、プリント４０５を利用して行う印刷としては、例えば、留め置き印刷、代行印刷、及び分散印刷等が挙げられる。
【０１１８】
尚、本実施形態では、印刷装置４０３がＭＦＰである場合を例に挙げて説明したが、印刷装置４０３はＭＦＰに限定されない。例えば、単なるプリンタ等であってもよい。また、ネットワーク４０４は、ＬＡＮに限定されない。例えば、インターネット等であってもよい。
【０１１９】
また、本実施形態では、プリントシステム４０５が制限チケットの再発行を依頼するようにしたが、印刷装置４０３が制限チケットの再発行を依頼するようにしてもよい。
更に、本実施形態では、属性書き替え命令（属性書き換え開始ジョブパケット２２０１、出力制限情報ジョブパケット２２０２、属性設定ジョブパケット２２０３、属性書き換え終了ジョブパケット２２０４）に対して、データ完全性情報を付加しなかった。しかしながら、属性書き替え命令に対して、データ完全性情報を付加するようにしてもよい。また、元の印刷ジョブを含む全体に対するデータ完全性情報を付加するようにしてもよい。
また、制限チケットの再々発行時には、制限チケットの再々発行時に付加する部分と、再発行時に付加した部分とを付け替えるようにするのが好ましい。
【０１２０】
また、本実施形態では、制限チケットを再発行するための条件は前述したものに限定されない。例えば、プリントシステム４０５から制限チケットの再発行の依頼があった場合、認証サーバ４０２は、印刷ジョブの出力先である印刷装置４０３に制限チケットが保持されているか否かを判断する。そして、印刷ジョブの出力先である印刷装置４０３に制限チケットが保持されていないと判断した場合に、制限チケットを再発行し、そうでない場合に制限チケットを再発行しないようにする。尚、認証サーバ４０２は、制限チケットが保持されているか否かを印刷装置４０３に問い合わせたり、制限チケットが保持されているか否かを印刷装置４０３が自発的に伝えたりすることにより、印刷装置４０３における制限チケットの有無を判断できる。
【０１２１】
（本発明の他の実施形態）
前述した実施形態の機能を実現するべく各種のデバイスを動作させるように、該各種デバイスと接続された装置あるいはシステム内のコンピュータに対し、前記実施形態の機能を実現するためのソフトウェアのプログラムコードを供給してもよい。そのシステムあるいは装置のコンピュータ（ＣＰＵあるいはＭＰＵ）に格納されたプログラムに従って前記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
【０１２２】
また、この場合、前記ソフトウェアのプログラムコード自体が前述した実施形態の機能を実現することになる。また、そのプログラムコード自体、及びそのプログラムコードをコンピュータに供給するための手段、例えば、かかるプログラムコードを格納した記録媒体は本発明を構成する。かかるプログラムコードを記憶する記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【０１２３】
また、コンピュータが供給されたプログラムコードを実行することにより、前述の実施形態の機能が実現されるだけでない。そのプログラムコードがコンピュータにおいて稼働しているオペレーティングシステムあるいは他のアプリケーションソフト等と共同して前述の実施形態の機能が実現される場合にもかかるプログラムコードは本発明の実施形態に含まれることは言うまでもない。
【０１２４】
更に、供給されたプログラムコードがコンピュータの機能拡張ボードに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードに備わるＣＰＵが実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合にも本発明に含まれることは言うまでもない。
また、供給されたプログラムコードがコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいて機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合にも本発明に含まれることは言うまでもない。
【０１２５】
尚、前述した各実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【図面の簡単な説明】
【０１２６】
【図１】本発明の実施形態を示し、印刷システムの構成の一例を示すブロック図である。
【図２】本発明の実施形態を示し、ホストコンピュータ、認証サーバ、及びプリントシステムのハードウェアの構成の一例を示すブロック図である。
【図３】本発明の実施形態を示し、印刷装置の一例であるＭＦＰ（デジタル複合機）のハードウェアの構成の一例を示すブロック図である。
【図４】本発明の実施形態を示し、印刷システムの動作の概要の一例を説明するフローチャートである。
【図５】本発明の実施形態を示し、ホストコンピュータの機能の一例を示すブロック図である。
【図６】本発明の実施形態を示し、認証サーバが保持しているユーザ別の認証情報と、出力制限情報とを格納するデータベースを表形式で示す図である。
【図７】本発明の実施形態を示し、ジョブパケットの構造の一例を概念的に示す図である。
【図８】本発明の実施形態を示し、出力制限情報が付与されない従来の形式の印刷ジョブの構成を概念的に示した図である。
【図９】本発明の実施形態を示し、出力制限情報が付与された印刷ジョブの構成の一例を概念的に示した図である。
【図１０】本発明の実施形態を示し、制限チケットの書式の一例を示す図である。
【図１１】本発明の実施形態を示し、出力制限情報のジョブパケットの構造の一例を概念的に示す図である。
【図１２】本発明の実施形態を示し、データ完全性情報のジョブパケットの構造の一例を概念的に示す図である。
【図１３】本発明の実施形態を示し、印刷開始の指示を受けてから、印刷装置へ印刷ジョブを送信するまでのプリントシステムの動作の一例を説明するフローチャートである。
【図１４】本発明の実施形態を示し、制限チケットを再発行する際の認証サーバの動作の一例を説明するフローチャートである。
【図１５】本発明の実施形態を示し、再発行制限チケットの書式の一例を示す図である。
【図１６】本発明の実施形態を示し、再発行制限チケットを付加する属性書き換えオペレーションを含む印刷ジョブの構成の一例を概念的に示した図である。
【図１７】本発明の実施形態を示し、属性書き換え開始を示す属性書き換え開始ジョブパケットの構造の一例を概念的に示す図である。
【図１８】本発明の実施形態を示し、属性書き換え終了を示す属性書き換え終了ジョブパケットの構造の一例を概念的に示す図である。
【図１９】本発明の実施形態を示し、印刷装置の機能の一例を示すブロック図である。
【図２０】本発明の実施形態を示し、制限チケット判定部の動作の一例を説明するフローチャートである。
【図２１】本発明の実施形態を示し、ジョブ管理部の動作の一例を説明するフローチャートである。
【図２２】本発明の実施形態を示し、出力制限情報に基づく印刷データ解釈部の動作の一例を説明するフローチャートである。
【図２３】本発明の実施形態を示し、印刷ジョブ取消部の動作の一例を説明するフローチャートである。
【図２４】本発明の実施形態を示し、印刷システムの構成を示すブロック図である。
【図２５】本発明の実施形態を示し、認証サーバが保持しているユーザ別の認証情報と、出力制限情報とを格納するデータベースを表形式で示す図である。
【図２６】本発明の実施形態を示し、ダイアログを警告画面（ＧＵＩ）を示す図である。
【符号の説明】
【０１２７】
４０１  ホストコンピュータ
４０２  認証サーバ
４０３  印刷装置
４０４  ネットワーク
４０５  プリントシステム
５０１  インターフェイス部
５０２  制限チケット判定部
５０３  印刷済制限チケット管理部
５０４  データ完全性検証部
５０５  印刷ジョブ取消部
５０７  印刷データ格納部
５０８  ジョブ管理部
５０９  印刷データ解釈部
５１０  イメージ格納部
５１１  プリンタエンジン
１８０１  印刷アプリケーション
１８０２  プリンタドライバ
１８０３  制限チケット取得部
１８０４  印刷ジョブ送信部
【図１】
2007323186.tif 000003
【図２】
2007323186.tif 000004
【図３】
2007323186.tif 000005
【図４】
2007323186.tif 000006
【図５】
2007323186.tif 000007
【図６】
2007323186.tif 000008
【図７】
2007323186.tif 000009
【図８】
2007323186.tif 000010
【図９】
2007323186.tif 000011
【図１０】
2007323186.tif 000012
【図１１】
2007323186.tif 000013
【図１２】
2007323186.tif 000014
【図１３】
2007323186.tif 000015
【図１４】
2007323186.tif 000016
【図１５】
2007323186.tif 000017
【図１６】
2007323186.tif 000018
【図１７】
2007323186.tif 000019
【図１８】
2007323186.tif 000020
【図１９】
2007323186.tif 000021
【図２０】
2007323186.tif 000022
【図２１】
2007323186.tif 000023
【図２２】
2007323186.tif 000024
【図２３】
2007323186.tif 000025
【図２４】
2007323186.tif 000026
【図２５】
2007323186.tif 000027
【図２６】
2007323186.tif 000028