(57)【要約】【課題】複数のジョブの形態が混在する環境においても、ジョブの形態に合わせて印刷装置の設定や構成を変更することなく、ジョブに対して最適な制限を適用してＴＣＯの削減に寄与し、ユーザの利便性及び印刷システムの拡張性を向上すること。【解決手段】印刷装置１０２は、受信した印刷ジョブに印刷制限情報が含まれるか、ユーザ認証情報が含まれるかを判断し、前記印刷ジョブに前記印刷制限情報が含まれる場合は、前記印刷ジョブに含まれる印刷制限情報に基づいて前記印刷ジョブの印刷制限を実行し、前記印刷ジョブにユーザ認証情報が含まれる場合は、前記ユーザ認証情報により認証されたユーザの印刷制限情報をユーザ情報格納部１２０６から取得し、取得した前記印刷制限情報に基づいて前記印刷ジョブの印刷制限を実行する。【選択図】図１２
2018199333.tif 000002
【特許請求の範囲】
【請求項１】
受信した印刷ジョブに基づいて印刷を行う印刷装置であって、
第１のプリンタドライバから印刷制限情報が含まれる印刷ジョブを受信し、第２のプリンタドライバからユーザ認証情報が含まれる印刷ジョブを受信する受信手段と、
ユーザ毎に印刷制限情報を管理可能な情報を記憶する記憶手段と、
印刷制限情報が含まれる印刷ジョブを受信した場合は、前記印刷ジョブに含まれる印刷制限情報に基づいて前記印刷ジョブの印刷制限を実行し、ユーザ認証情報が含まれる印刷ジョブを受信した場合は、前記ユーザ認証情報により認証されたユーザの印刷制限情報を前記記憶手段から取得し、取得した前記印刷制限情報に基づいて前記印刷ジョブの印刷制限を実行する制御手段と、
を有することを特徴とする印刷装置。
【請求項２】
ユーザ認証情報による認証要求を受信した場合、前記ユーザ認証情報により認証されたユーザの印刷制限情報を前記記憶手段から取得して、前記認証要求の送信元である前記第１のプリンタドライバに返信する返信手段を有することを特徴とする請求項１に記載の印刷装置。
【請求項３】
前記返信手段は、前記印刷制限情報に、該印刷制限情報の正当性を確認するための情報を付与するものであり、
前記制御手段は、前記印刷ジョブに含まれる制限情報の正当性が確認できなかった場合には、前記印刷ジョブに基づく印刷の実行を禁止することを特徴とする請求項２に記載の印刷装置。
【請求項４】
前記印刷制限情報の正当性を確認するための情報は、電子署名であることを特徴とする請求項３に記載の印刷装置。
【請求項５】
前記制御手段は、前記ユーザ認証情報による認証に失敗した場合、前記印刷ジョブに基づく印刷の実行を禁止することを特徴とする請求項１乃至４のいずれか１項に記載の印刷装置。
【請求項６】
前記制御手段は、前記印刷ジョブに前記印刷制限情報および前記ユーザ認証情報が含まれる場合は、前記印刷ジョブに含まれる印刷制限情報に基づいて前記印刷ジョブの印刷制限を実行することを特徴とする請求項１乃至５のいずれか１項に記載の印刷装置。
【請求項７】
前記制御手段は、前記印刷ジョブに前記印刷制限情報および前記ユーザ認証情報が含まれる場合は、前記印刷ジョブに含まれるユーザ認証情報により認証されたユーザの印刷制限情報を前記記憶手段から取得し、取得した前記印刷制限情報に基づいて前記印刷ジョブの印刷制限を実行することを特徴とする請求項１乃至５のいずれか１項に記載の印刷装置。
【請求項８】
前記印刷制限情報は、印刷機能制限として、特定の印刷機能の利用の許可もしくは禁止を示す情報を含むことを特徴とする請求項１乃至７のいずれか１項に記載の印刷装置。
【請求項９】
前記印刷制限情報は、印刷機能制限として、印刷機能の利用の許可もしくは禁止を示す情報、カラー印刷機能の利用の許可もしくは禁止を示す情報、片面印刷機能の利用の許可もしくは禁止を示す情報、シートに指定の複数ページの画像を割りつけて印刷する機能を強制することを示す情報の少なくともいずれかを含むことを特徴とする請求項８に記載の印刷装置。
【請求項１０】
ユーザ毎に印刷制限情報を管理可能な情報を記憶する記憶手段を有し、受信した印刷ジョブに印刷制限を実行して印刷を行う印刷装置と、印刷制限情報が含まれる印刷ジョブを前記印刷装置に送信する第１の情報処理装置と、ユーザ認証情報が含まれる印刷ジョブを前記印刷装置に送信する第２の情報処理装置とを含む印刷システムであって、
前記印刷装置は、
第１のプリンタドライバから印刷制限情報が含まれる印刷ジョブを受信し、第２のプリンタドライバからユーザ認証情報が含まれる印刷ジョブを受信する受信手段と、
印刷制限情報が含まれる印刷ジョブを受信した場合は、前記印刷ジョブに含まれる印刷制限情報に基づいて前記印刷ジョブの印刷制限を実行し、ユーザ認証情報が含まれる印刷ジョブを受信した場合は、前記ユーザ認証情報により認証されたユーザの印刷制限情報を前記記憶手段から取得し、取得した前記印刷制限情報に基づいて前記印刷ジョブの印刷制限を実行する制御手段と、
を有することを特徴とする印刷システム。
【請求項１１】
ユーザ毎に印刷制限情報を管理可能な情報を記憶する記憶手段を有し、受信した印刷ジョブに印刷制限を実行して印刷を行う印刷装置の制御方法であって、
第１のプリンタドライバから印刷制限情報が含まれる印刷ジョブを受信し、第２のプリンタドライバからユーザ認証情報が含まれる印刷ジョブを受信する受信ステップと、
印刷制限情報が含まれる印刷ジョブを受信した場合は、前記印刷ジョブに含まれる印刷制限情報に基づいて前記印刷ジョブの印刷制限を実行し、ユーザ認証情報が含まれる印刷ジョブを受信した場合は、前記ユーザ認証情報により認証されたユーザの印刷制限情報を前記記憶手段から取得し、取得した前記印刷制限情報に基づいて前記印刷ジョブの印刷制限を実行する制御ステップと、
を有することを特徴とする印刷装置の制御方法。
【請求項１２】
コンピュータを、請求項１乃至９のいずれか１項に記載された手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷装置、印刷システム、印刷装置の制御方法、及びプログラムに関するものである。
【背景技術】
【０００２】
近年、印刷システムにおいて、印刷装置やシステムの初期導入コストだけではなく、印刷用紙やトナーに代表される着色剤などの消耗品のコストを含めたＴＣＯ（Ｔｏｔａｌ Ｃｏｓｔ ｏｆ Ｏｗｎｅｒｓｈｉｐ）の削減がオフィスの経費削減或いは地球環境の保全の点から大いに注目されている。
【０００３】
このような印刷システムにおける従来の問題点として、ネットワークにアクセスが可能な者であれば誰でも、オフィスに設置された印刷装置を使用して印刷が可能であることが挙げられる。誰にも印刷制限がかからず形跡も残らないため、ユーザの精神的な歯止めも効かず、必要以上に印刷が行われることが度々あり、オフィスの経費増大を招いていた。
【０００４】
このような従来の問題を解決するために、ユーザ毎に出力を制限する印刷制限機能を備える印刷システムが提案されている。
特許文献１では、ホストコンピュータが印刷を実行する際に印刷装置から印刷を行うユーザに対する印刷機能制限情報を取得し、その制限情報を参照することで印刷機能の制限を実施する印刷システムが提案されている。
また、特許文献２では、ホストコンピュータから送信されるユーザ認証のための認証情報とジョブ設定情報とを受信し、前記認証情報に従って認証を実施した結果、前記ジョブ設定情報の範囲内でジョブの実行を可能とする画像処理装置が提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−１９９２５３号公報
【特許文献２】特開２０１１−１９８１６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１や特許文献２のように、印刷ジョブにおいて、ユーザ認証の方式や印刷制限情報の取得の方法が様々であり、このようにユーザ認証の方式や印刷制限情報の取得の方法が異なるなど、複数のジョブの形態が混在する環境が存在する。このような異なる複数のジョブの形態が混在する環境では、それぞれのジョブの形態に合わせて印刷装置の設定や構成を変更しなければならず、ユーザの利便性やシステムの拡張性が保てないという課題があった。
【０００７】
本発明は、上記の問題点を解決するためになされたものである。本発明の目的は、ユーザ認証の方式や印刷制限情報の取得の方法が異なるなど、複数のジョブの形態が混在する環境においても、ジョブの形態に合わせて印刷装置の設定や構成を変更することなく、ジョブに対して最適な制限を適用してＴＣＯの削減に寄与し、ユーザの利便性及び印刷システムの拡張性を向上する仕組みを提供することである。
【課題を解決するための手段】
【０００８】
本発明は、受信した印刷ジョブに基づいて印刷を行う印刷装置であって、第１のプリンタドライバから印刷制限情報が含まれる印刷ジョブを受信し、第２のプリンタドライバからユーザ認証情報が含まれる印刷ジョブを受信する受信手段と、ユーザ毎に印刷制限情報を管理可能な情報を記憶する記憶手段と、印刷制限情報が含まれる印刷ジョブを受信した場合は、前記印刷ジョブに含まれる印刷制限情報に基づいて前記印刷ジョブの印刷制限を実行し、ユーザ認証情報が含まれる印刷ジョブを受信した場合は、前記ユーザ認証情報により認証されたユーザの印刷制限情報を前記記憶手段から取得し、取得した前記印刷制限情報に基づいて前記印刷ジョブの印刷制限を実行する制御手段と、を有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、複数のジョブの形態が混在する環境においても、ジョブの形態に合わせて印刷装置の設定や構成を変更することなく、ジョブに対して最適な制限を適用してＴＣＯの削減に寄与し、ユーザの利便性及び印刷システムの拡張性を向上することができる。
【図面の簡単な説明】
【００１０】
【図１】本実施例の印刷システムの全体構成図
【図２】本実施例の印刷システムを構成する機器のハードウェアブロック図
【図３】ユーザ情報データベース及びロール情報データベースを例示する図
【図４】印刷ジョブを構成するジョブパケットの構造図
【図５】印刷ジョブの概略構成図
【図６】制限情報を含む印刷ジョブを構成するジョブパケットの構成図
【図７】制限情報を含む印刷ジョブ及びユーザ認証情報を含む印刷ジョブの概略構成図
【図８】印刷ジョブに含まれる制限情報の書式を例示する図
【図９】制限情報を含む印刷ジョブの生成処理を例示するフローチャート
【図１０】ユーザ認証情報を含む印刷ジョブを構成するジョブパケットの構成図
【図１１】ユーザ認証情報を含む印刷ジョブの生成処理を例示するフローチャート
【図１２】印刷装置の印刷処理に関するソフトウェアブロック図
【図１３】印刷装置の印刷ジョブ受信処理を例示するフローチャート
【図１４】制限情報解析処理を例示するフローチャート
【図１５】実施例１におけるユーザ認証処理を例示するフローチャート
【図１６】実施例２における印刷ジョブの概略構成を例示する模式図
【図１７】実施例２におけるユーザ認証処理を例示するフローチャート
【図１８】認証トークンを含む印刷ジョブを構成するジョブパケットの構成図
【図１９】認証トークンを含む印刷ジョブの生成処理を例示するフローチャート
【図２０】実施例３におけるユーザ認証処理を例示するフローチャート
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための形態について図面を用いて説明する。
【実施例１】
【００１２】
図１は、本実施例の一例を示す印刷システムの全体構成を例示する図である。
図１に示すように、本実施例の印刷システムは、ホストコンピュータ１０１、１０３と、印刷装置１０２と、ネットワーク１０４等を備える。
【００１３】
ホストコンピュータ１０１、１０３は、ユーザの使用により画像データを作成し、当該画像データに基づく印刷ジョブを印刷装置１０２に送信して印刷を行わせる情報処理装置である。印刷装置１０２は、ネットワーク１０４を介してホストコンピュータ１０１、１０３から印刷ジョブを受け取り、電子写真技術やインクジェット技術などの既知の印刷技術を利用して用紙媒体に印刷を行なう。本実施例の印刷装置１０２は、複合機（ＭＦＰ；Ｍｕｌｔｉｆｕｎｃｔｉｏｎ Ｐｅｒｉｐｈｅｒａｌ）等の画像形成装置である。ホストコンピュータ１０１、１０３、印刷装置１０２は、イーサネット（登録商標）などの既知の技術によるネットワーク１０４により相互に接続されている。
【００１４】
本実施例の印刷システムは、印刷制限機能を備えている。
印刷装置１０２は、ユーザの認証情報及びロール情報（権限情報）を保持しており、ホストコンピュータ１０１、１０３からの指示もしくは印刷ジョブ受信の際にユーザ認証を実施する。
【００１５】
図２は、本実施例の印刷システムを構成する機器のハードウェア構成の概略を例示するブロック図である。
まず、印刷装置１０２について説明する。
印刷装置１０２において、２１１はネットワーク通信部で、ネットワーク１０４を介して外部機器（例えばホストコンピュータ１０１）と通信を行うためのものである。２１２はＵＩ操作部で、印刷装置１０２に対する設定を受け付けたり、印刷装置１０２の状態を表示したり、ユーザからの操作を可能とする。
【００１６】
２１３はＣＰＵで、記憶装置２１５に格納されるプログラムを読み出して実行することにより、画像処理や各種制御を実行する。２１４はＲＡＭで、ＣＰＵ２１３が実行するプログラムコードや、画像データなどの情報を一時的に保存する。２１５は記憶装置で、プログラムコードや画像データ、後述のユーザ情報等を保存する。
２１７は印刷エンジンで、電子写真技術やインクジェット技術などの既知の技術を用い画像データを用紙媒体に印刷する。２１６はスキャナエンジンで、用紙媒体に印刷された画像を光学的に読み取る。
【００１７】
上記構成において、印刷装置１０２における印刷機能は次のように実現される。
印刷装置１０２は、ネットワーク通信部２１１を介して、外部機器（例えばホストコンピュータ１０１）から送られてきた印刷ジョブのデータを受信すると、ＣＰＵ２１３はＲＡＭ２１４に記憶されたプログラムコードに従って、画像データに変換する。変換された画像データは一旦記憶装置２１５に取り込まれ、必要な画像処理を加えて印刷エンジン２１７によって出力される。また、印刷装置１０２は、ユーザ認証機能を備えている。ＵＩ操作部２１２を通じてユーザに印刷装置の機能を提供する際は、まず、ＵＩ操作部２１２でユーザ名とパスワードの入力を要求し、印刷装置１０２はユーザが利用を許可されたユーザであるか否かを判定する。
【００１８】
次に、ホストコンピュータ１０１について説明する。
ホストコンピュータ１０３に関しても同様のハードウェア構成となる。
２３１はネットワーク通信部で、ネットワーク１０４を介して外部機器と通信を行うためのものである。２３２はＣＰＵで、記憶装置２３５等に格納されるプログラムを読み出して実行することにより、各種制御を実行する。２３３はＲＡＭで、ＣＰＵ２３２が実行するプログラムコードなどの情報を一時的に保存する。２３５は記憶装置で、プログラムコードやデータを保存する。
【００１９】
２３４は入力部で、ユーザによるホストコンピュータ１０１への入力を受け付ける。入力部２３４は、操作部及び表示部として機能する。ホストコンピュータ１０１には印刷装置１０２へ送信する印刷ジョブを生成するために印刷装置１０２に対応するプリンタドライバが搭載されており、プリンタドライバは記憶装置２３５にインストールされ、ＣＰＵ２３２により実行される。
【００２０】
図３は、印刷装置１０２に保持されるユーザ別のユーザ情報及びロール情報のデータベースの概略を例示する図である。
図３（Ａ）はユーザ情報データベース３００を示し、図３（Ｂ）はロール情報データベース３１０を示す。
【００２１】
図３（Ａ）に示すように、ユーザ情報データベース３００には、ユーザ名３０１、パスワード３０２、及びロール３０３がそれぞれユーザ別に格納されている。ユーザ名３０１にはユーザ識別情報としてユーザ名が格納されている。パスワード３０２には、パスワードが格納されている。ロール３０３には、ロール情報が格納されている。
【００２２】
パスワード３０２には、便宜上、暗号化前の平文（Ｐｌａｉｎ ＴｅｘｔまたはＣｌｅａｒ Ｔｅｘｔ）のパスワードが格納されている。しかし実際には、セキュリティの都合上パスワードが漏洩しないようにパスワードのハッシュ値が格納されており、入力されたパスワードのハッシュ値と比較することによって認証が行なわれるが、その詳細については省略する。また、同じくセキュリティの都合上、管理者権限を有する者のみがユーザ情報データベース３００に対して読み書き可能であることは云うまでもない。
【００２３】
ユーザ情報データベース３００において、行３０４は、「Ｕｓｅｒ１」というユーザ名のユーザのユーザ情報を示す。該ユーザのユーザ情報には、パスワードとして「Ａｋｄ５ｓｊ４ｆ」という文字列が登録されている。ロールとして「Ａｄｍｉｎｉｓｔｒａｔｏｒ ｒｏｌｅ」が格納されている。同様にして、行３０５には「Ｕｓｅｒ２」、行３０６には「Ｕｓｅｒ３」、行３０７には「Ｕｓｅｒ４」のユーザ情報がそれぞれ格納されている。
【００２４】
印刷装置１０２は、ユーザ認証要求を受けると、入力されたユーザ名及びパスワードをユーザ情報データベース３００に登録されたユーザ名及びパスワードと照合し、ユーザ認証を行う。
【００２５】
図３（Ｂ）に示すように、ロール情報データベース３１０には、ロール情報が格納されている。ロール情報は、印刷機能３１２、カラー３１３、片面３１４、Ｎｕｐ３１５を含む。
印刷機能３１２は、印刷機能の利用が許可されているか否かを示す。カラー３１３は、カラー印刷の利用が許可されているか否かを示す（カラー印刷機能の利用の許可もしくは禁止を示す情報）。カラー印刷の利用が禁止されている場合は、モノクロ印刷のみ利用可能である。片面３１４は、片面印刷の利用が許可されているか否かを示す（片面印刷機能の利用の許可もしくは禁止を示す情報）。片面印刷の利用が禁止されている場合は、両面印刷のみ利用可能である。Ｎｕｐ３１５は、１面に割り付けるページレイアウトが１ｕｐ以上か、２ｕｐ以上かを示す（シート１面に指定の複数ページの画像を割りつけて印刷する機能を強制することを示す情報）。１ｕｐ以上は、特にページレイアウトに制限はなく、２ｕｐ以上の場合は、２ページ以上を１面に割り付けなければ印刷できないことを示す。即ち、ロール情報データベース３１０には、印刷機能制限として、ロール毎に、所定の印刷機能の利用の許可もしくは禁止を示す情報が管理されている。ここでは４つの制限情報について説明したが、その他の属性に関する制限や印刷機能以外の機能に対する制限情報も合わせて管理してもよい。
【００２６】
ロール情報データベース３１０において、行３１６は、「Ａｄｍｉｎｉｓｔｒａｔｏｒ ｒｏｌｅ」という名前のロールのエントリを示す。「Ａｄｍｉｎｉｓｔｒａｔｏｒ ｒｏｌｅ」３１６は、印刷機能、カラー印刷、片面印刷に「許可」が格納され、Ｎｕｐ印刷に「１ｕｐ以上」が格納されており、全ての機能が制限なく利用可能であることを示す。また、行３１７には「Ｒｏｌｅ１」、行３１８には「Ｒｏｌｅ２」、行３１９には「Ｒｏｌｅ３」の情報が格納されている。「Ｒｏｌｅ３」３１９は、印刷機能３１２が「禁止」であり、印刷機能自体が利用できないため、「カラー」３１３、「片面」３１４、「Ｎｕｐ」３１５の値は不定「−」となっている。
【００２７】
各ユーザに対する制限情報を得るためには、ユーザ情報データベース３００とロール情報データベース３１０の両方を利用する。例えば、「Ｕｓｅｒ２」に対する制限情報を取得する場合、まず、ユーザ情報データベース３００より「Ｕｓｅｒ２」のロール３０３として「Ｒｏｌｅ１」を取得する。さらに、ロール情報データベース３１０より、「Ｒｏｌｅ１」は印刷機能、カラー、片面が「許可」であり、Ｎｕｐが「２ｕｐ以上」であることを取得する。これらが「Ｕｓｅｒ２」に対する制限情報となる。
以上のように、図３（Ａ）のユーザ情報データベース３００、及び、図３（Ｂ）のロール情報データベース３１０により、ユーザ毎に印刷制限情報を管理可能である。
【００２８】
次に、印刷システムにおける基本的な印刷ジョブの形式について説明する。
印刷ジョブは、印刷ジョブの開始と終了の認識、及び、印刷ジョブの属性の設定が容易に行われるように規格化された１つ以上のジョブパケットによって構成されている。
図４は、印刷ジョブを構成するジョブパケットの構造の一例を示す図である。
【００２９】
図４に示すジョブパケット４００の縦軸はバイト（Ｂｙｔｅ）を示し、横軸は各バイトのビット（Ｂｉｔ）を示している。
０〜１バイト目のオペレーションコード４０１には、パケットの機能を示す長さ２バイトのＩＤが格納される。オペレーションコード４０１に格納されるＩＤとして、以下の値を取ることができる。
【００３０】
０ｘ０２０１：ジョブ開始オペレーション
０ｘ０２０２：ジョブ属性設定オペレーション
０ｘ０２０４：ＰＤＬデータオペレーション
０ｘ０２０５：ジョブ終了オペレーション
０ｘ０３０１：制限情報オペレーション
０ｘ０３０２：認証情報付きジョブ開始オペレーション
【００３１】
２〜３バイト目のブロック番号４０２には、ジョブパケット４００を送信した送信側が受信側に返答要求をする場合に、受信側からの返答が送信側のどの返答要求に対するものであるかの対応を取るために使用されるブロック番号が格納される。
例えば、ブロック番号＝１、２、３という３つのジョブパケットが続けて送信した場合、ブロック番号＝２というエラーパケットが返ってきたときは、送信側は２番目に送ったジョブパケットにエラーが発生したことを特定することが可能である。
【００３２】
４〜５バイト目のパラメータ長４０３は、１２バイト目以降に格納されるデータ４１０のバイト長を示す領域であり、０〜６４Ｋバイトまでの値を格納することが可能である。
【００３３】
６〜７バイト目のフラグ領域４０４は、ジョブパケット４００の各種フラグを格納する領域である。エラーフラグ、通知フラグ、継続フラグ、返答要求フラグ等が格納されているが詳細な説明は省略する。
８〜１１バイト目は、Ｒｅｓｅｒｖｅｄ領域４０５であり、後述のユーザ情報等を送信するために利用される。
【００３４】
１２バイト目以降のデータ４１０には、上述したオペレーションコード４０１に対応するデータが格納される。なお、オペレーションコード４０１がジョブ開始オペレーションまたはジョブ終了オペレーションである場合、データ４１０にはデータが存在しない。一方、オペレーションコード４０１がジョブ属性設定オペレーションである場合、設定したいジョブ属性ＩＤとジョブ属性値がデータ４１０に格納される。ジョブ属性ＩＤとは、ジョブに関する属性或いは環境に対応して付けられた識別子で、ＩＤが予め割り振られている。
【００３５】
以下にジョブ属性ＩＤとして代表的なものを挙げる。
０ｘ０１０１：ジョブ名称
０ｘ０１０３：ジョブオーナ名
０ｘ０１６ａ：ジョブサイズ
０ｘ０１７４：印刷ページ数
０ｘ０２０１：両面印刷
０ｘ０２０２：カラー
０ｘ０２０３：Ｎｕｐ
このほかに、印刷装置１０２の機能に応じて、印刷部数、ステイプルなどのジョブ属性とそれに対応するＩＤを割り振ることができる。
【００３６】
図５は、印刷ジョブの概略構成を例示する模式図である。
図５に示すように、印刷ジョブ５００は、ジョブ開始５０１、属性設定５０２，５０３、ＰＤＬデータ５０４，５０５、及びジョブ終了５０６等の複数のジョブパケットで構成される。これらは、先頭のジョブパケットから後方のジョブパケットに向かって順番に、ホストコンピュータ１０１から印刷装置１０２に送られてくるものとする。ジョブパケットは、ヘッダ部とボディ部とで構成され、ヘッダ部は、図４における０〜１１バイト目のヘッダ領域を示し、ボディ部は１２バイト目以降のデータ領域を示している。
【００３７】
ジョブ開始５０１は、ジョブ開始を宣言するためのジョブパケットである。これは０〜１バイト目のオペレーションコード４０１にジョブ開始オペレーションを示す「０ｘ０２０１」が格納されていることから判断することができる。
【００３８】
属性設定５０２，５０３は、印刷ジョブのジョブ名称やオーナ名称、印刷条件など属性設定を行うためのジョブパケットである。これは０〜１バイト目のオペレーションコード４０１にジョブ属性設定オペレーションを示す「０ｘ０２０２」が格納されていることから判断することができる。同図に示すように、複数の属性設定を行なう際には、複数の属性設定用のジョブパケットを付与すればよい。
【００３９】
ＰＤＬデータ５０４，５０５は、ＰＤＬデータを送信するためのジョブパケットである。これは０〜１バイト目のオペレーションコード４０１にＰＤＬデータオペレーションを示す「０ｘ０２０４」が格納されていることから判断することができる。同様に、複数のＰＤＬデータの送信を行なう際には、複数のＰＤＬデータ用のジョブパケットを付与すればよい。
【００４０】
ジョブ終了５０６はジョブ終了を宣言するためのジョブパケットである。これは０〜１バイト目のオペレーションコード４０１にジョブ終了オペレーションを示す「０ｘ０２０５」が格納されていることから判断することができる。
【００４１】
以上が、基本的な印刷ジョブの形態であり、次に、本実施例に係る印刷制限機能のための印刷ジョブの形態について説明する。
本実施例に係る印刷制限機能に用いる印刷ジョブの形態は２種類ある。第１の印刷ジョブの形態は、印刷ジョブに制限情報が付与されたものである。また、第２の印刷ジョブの形態は、印刷ジョブにユーザ認証情報が付与されたものである。これらは、ホストコンピュータ１０１、１０３に搭載されるプリンタドライバによって、どちらの形態の印刷ジョブが発行されるかが決定される。本実施例では便宜的に、ホストコンピュータ１０１が第１の印刷ジョブの形態を、ホストコンピュータ１０３が第２の印刷ジョブの形態のジョブを発行するものとするが、構成はこれに限定されない。以下、それぞれの形態について説明する。
【００４２】
まず、第１の印刷ジョブの形態となる制限情報が付与された印刷ジョブについて説明する。
図６は、制限情報が付与された印刷ジョブを構成するジョブパケットの構造の一例を示す図である。
【００４３】
図６に示す制限情報のジョブパケット６００では、０〜１１バイト目まではヘッダ部であり、１２バイト目からはボディ部（データ領域）である。データ領域における先頭からＮＵＬＬ文字６０３までの領域６０１には、例えば、後述する図８に示す書式８０１で記載された制限情報が格納されている。データ領域において、ＮＵＬＬ文字６０３以降の領域６０２には、デジタル署名（１２８ｂｙｔｅ）の情報が格納されている。デジタル署名（電子署名）は、制限情報６０１が正規な認証装置（図１では、印刷装置１０２）から発行されており、制限情報が途中経路で不正な手段で書き換えられていないこと（制限情報の正当性）を保証するものである。
【００４４】
デジタル署名は、例えば、ＲＳＡ公開鍵暗号方式を使ったものが一般的である。公開鍵暗号方式によるデジタル署名では、署名対象（この場合は制限情報６０１）から一方向関数によるダイジェストを生成し、当該ダイジェストに対して発行元（この場合は印刷装置１０２）が保有する秘密鍵で暗号化を行い、デジタル署名を生成する。印刷装置１０２が、受信した制限情報に対して発行元の公開鍵を使ってデジタル署名による検証を実施する。秘密鍵は正規な認証装置だけが保持しており、正しい公開鍵を使った署名検証が成功すれば、署名対象が正規なものであることを証明できる。
【００４５】
図７（ａ）は、図６に示した制限情報が付与された印刷ジョブ（第１の印刷ジョブの形態）の概略構成を例示する模式図である。なお、図５と同一のものには同一の符号を付してある。
【００４６】
図７（ａ）に示す印刷ジョブ７００には、上述した図５の印刷ジョブ５００とは異なり、先頭に、制限情報を示すジョブパケットとして、図６で示す制限情報パケット６００が付与されている。制限情報パケット６００は、０〜１バイト目のオペレーションコード４０１に制限情報オペレーションを示すコード「０ｘ０３０１」が格納されていることから判断することができる。制限情報オペレーションが指定されたジョブパケットは、データ領域に制限情報が格納されている。
【００４７】
図８は、図６に示した制限情報６０１の書式の一例を示す図である。
図８において、書式８０１は、図５に示した印刷ジョブ７００における印刷制限情報として、印刷機能が利用許可（ＰｄｌＰｒｉｎｔがＰｅｒｍｉｔ）、カラー印刷が利用許可（ＣｏｌｏｒＰｒｉｎｔがＰｅｒｍｉｔ）、片面印刷が利用禁止（ＳｉｍｐｌｅｘがＤｅｎｙ）、Ｎｕｐ印刷が２ｕｐ以上（Ｎｕｐが２）であることを示す。つまり、図３（Ｂ）で示す「Ｒｏｌｅ２」３１８の制限情報である。
【００４８】
次に、ホストコンピュータ１０１における印刷ジョブ７００の生成及び送信の処理について図９のフローチャートを用いて説明する。
図９は、第１の印刷ジョブの形態である制限情報を含む印刷ジョブの生成処理を例示するフローチャートである。本フローチャートにおけるホストコンピュータ１０１の処理は、ホストコンピュータ１０１のＣＰＵ２３２が記憶装置２３５に格納されたプログラム（第１の印刷ジョブの形態に対応するプリンタドライバ等）を読み出して実行することにより実現される機能により実行される。また、本フローチャートにおける印刷装置１０２の処理は、印刷装置１０２のＣＰＵ２１３が記憶装置２１５に格納されたプログラムを読み出して実行することにより実現される機能により実行される。
【００４９】
ユーザがホストコンピュータ１０１にインストールされた文書作成用アプリケーションソフトウェア等により文書ファイルを作成して印刷指示を行うと、ホストコンピュータ１０１のＣＰＵ２３２は、プリンタドライバにより印刷ジョブの生成を行う（Ｓ９０１）。このプリンタドライバは、上述したように第１の印刷ジョブの形態に対応するものである。
【００５０】
次に、ホストコンピュータ１０１のＣＰＵ２３２は、ユーザに対して、ユーザ名、パスワードの入力を要求する（Ｓ９０２）。そして、ユーザ名、パスワードが入力されると、ホストコンピュータ１０１のＣＰＵ２３２は、Ｓ９０３に処理を進める。
【００５１】
Ｓ９０３では、ホストコンピュータ１０１のＣＰＵ２３２は、入力されたユーザ認証情報（ユーザ名、パスワード）を、印刷装置１０２に送信してユーザ認証を要求する。ここで、パスワードの送信は秘匿のためにパスワードのハッシュ値もしくは暗号化したパスワードとして送信するが、公知のためその詳細は省略する。
【００５２】
印刷装置１０２のＣＰＵ２１３は、ユーザ認証情報（ユーザ名、パスワード）を受信すると（Ｓ９０４）、即ちユーザ認証情報による認証要求を受信すると、Ｓ９０５に処理を進める。
Ｓ９０５では、印刷装置１０２のＣＰＵ２１３は、受信したユーザ認証情報（ユーザ名、パスワード）がユーザ情報データベース３００に格納されたユーザ名、パスワードと一致するか比較を行って、ユーザ認証を実施する。
【００５３】
そして、一致すると判断した場合は、印刷装置１０２のＣＰＵ２１３は、ユーザ認証成功として、当該ユーザのロール情報３０３を基にロール情報データベース３１０に格納された情報から、図８に示すような制限情報８０１を生成する。この制限情報には、図８に示す通り認証されたユーザに対して印刷ジョブの出力結果に制限をかけるための、カラー、片面、Ｎｕｐ等の制限が指定されている。
ユーザ認証成功の場合、印刷装置１０２のＣＰＵ２１３は、上記生成した制限情報に自身の秘密鍵から生成したデジタル署名を付与し、該デジタル署名を付与した制限情報を、ユーザ認証情報の送信元であるホストコンピュータ１０１に送信（返信）する（Ｓ９０６）。
【００５４】
一方、上記Ｓ９０５において、印刷装置１０２のＣＰＵ２１３は、受信したユーザ認証情報がユーザ情報データベース３００に格納されたユーザ名、パスワードと一致しないと判断した場合、ユーザ認証失敗として、ホストコンピュータ１０１に結果を通知する（Ｓ９０６）。この場合、図示しないが、ホストコンピュータ１０１のＣＰＵ２３２は、印刷装置１０２からユーザ認証が失敗した旨の結果を受信し、ユーザ認証が失敗した旨をディスプレイ等に表示し、処理を終了する。
【００５５】
ホストコンピュータ１０１のＣＰＵ２３２は、印刷装置１０２から送信されたデジタル署名が付与された制限情報を取得すると（Ｓ９０７）、Ｓ９０８に処理を進める。
Ｓ９０８では、ホストコンピュータ１０１のＣＰＵ２３２は、上記Ｓ９０７で取得した制限情報及び署名を、上記Ｓ９０１で生成した印刷ジョブに付与する。つまり、ホストコンピュータ１０１のＣＰＵ２３２は、取得した制限情報及び署名を、制限情報パケット６００のデータ領域６０１及び６０２に格納し、制限情報パケット６００を生成し、印刷ジョブに付与する。
そして、ホストコンピュータ１０１のＣＰＵ２３２は、上記Ｓ９０８で制限情報を付与した印刷ジョブを、印刷装置１０２に送信する（Ｓ９０９）。
【００５６】
上述した第１の印刷ジョブの形態に対応する印刷ジョブを受信した印刷装置１０２では、後述するように、プリンタドライバにより生成された印刷ジョブの属性情報と制限情報に記載された情報とが一致するか否かを判断する。そして、一致しないときは、制限情報に記載された情報を優先して、プリンタドライバにより作成された印刷ジョブの属性情報を上書きする。そして、印刷ジョブを実行して印刷を行う。
【００５７】
上述のＳ９０２において、ユーザに対して、ユーザ名、パスワードの入力を要求したが、予めホストコンピュータ１０１のプリンタドライバに登録しておくことで、印刷の都度入力する手間を省略することも可能である。また、ＩＣカード等からユーザ名等を入力する構成であってもよい。さらに、上述のＳ９０７で取得した制限情報及び署名を一定期間プリンタドライバが保持しておくことで、印刷の都度、印刷装置１０２から制限情報及び署名を取得することを省略可能である。
【００５８】
以上のように、第１の印刷ジョブの形態では、印刷ジョブに制限情報を付与することで、印刷ジョブがどのような属性情報（印刷設定等）で発行されても、印刷ジョブの出力結果に制限をかけることが可能となる。また、ホストコンピュータ１０１のプリンタドライバに制限情報を解析するプログラムをインストールすれば、プリンタドライバにおいて印刷ジョブを生成する際に制限情報を適用して、制限情報に従った属性情報の印刷ジョブを作成することも可能となる。それにより、ユーザが印刷前に制限情報を確認し、制限情報に従った最適な属性情報で印刷を行うことが可能となる。また、ユーザが設定した属性情報が制限情報に基づく印刷制限を超えている旨の警告画面を表示するなどして、ユーザが設定した属性通りには印刷されない等の警告を行うことも可能である。
【００５９】
次に、第２の印刷ジョブの形態となるユーザ認証情報が付与された印刷ジョブについて説明する。
図１０は、第２の印刷ジョブの形態であるユーザ認証情報が付与された印刷ジョブを構成するジョブパケットの構造の一例を示す図である。
【００６０】
図１０に示すジョブパケット６１０では、図４と同様に０〜１１バイト目まではヘッダ部であり、１２バイト目以降はボディ部（データ領域）であるが、ジョブ開始パケットであるため、１２バイト目以降のボディ部は存在しない。ヘッダ部の８〜９バイト目はユーザ名４０６、及び、１０〜１１バイト目はパスワード４０７を格納する領域として利用する。
【００６１】
本ジョブパケット６１０は、０〜１バイト目のオペレーションコード４０１に認証情報付きジョブ開始オペレーションを示す「０ｘ０３０２」が格納されていることから判断することができる。
【００６２】
図７（ｂ）は、図１０に示したユーザ認証情報が付与された印刷ジョブ（第２の印刷ジョブの形態）の概略構成を例示する模式図である。
図７（ｂ）に示す印刷ジョブ７０１には、上述した図５の印刷ジョブ５００のジョブ開始パケット５０１が、図１０の認証情報付きジョブ開始パケット６１０に置き換わったものである。上述したように、認証情報付きジョブ開始パケット６１０は、０〜１バイト目のオペレーションコード４０１に認証情報付きジョブ開始を示すオペレーションコード「０ｘ０３０２」が格納されていることから判断することができる。認証情報付きジョブ開始を示すオペレーションが指定されたジョブパケットは、ヘッダ部の８〜９バイト目にユーザ名４０６、及び、１０〜１１バイト目にパスワード４０７が格納されている。
【００６３】
ホストコンピュータ１０３における第２の印刷ジョブの形態での印刷ジョブの生成及び送信処理について図１１のフローチャートを用いて説明する。
図１１は、第２の印刷ジョブの形態であるユーザ認証情報を含む印刷ジョブの生成処理を例示するフローチャートである。本フローチャートにおける処理は、ホストコンピュータ１０３のＣＰＵ２３２が記憶装置２３５に格納されたプログラム（第２の印刷ジョブの形態に対応するプリンタドライバ等）を読み出して実行することにより実現される機能により実行される。
【００６４】
まず、図９に示した第１の印刷ジョブの形態の場合と同様に、ユーザがホストコンピュータ１０３にインストールされた文書作成用アプリケーションソフトウェア等により文書ファイルを作成して印刷指示を行うと、ホストコンピュータ１０３のＣＰＵ２３２は、プリンタドライバにより印刷ジョブの生成を行う（Ｓ１１０１）。このプリンタドライバは、上述したように第２の印刷ジョブの形態に対応するものである。
【００６５】
次に、ホストコンピュータ１０３のＣＰＵ２３２は、ユーザに対して、ユーザ名、パスワードの入力を要求する（Ｓ１１０２）。そして、ユーザ名、パスワードが入力されると、ホストコンピュータ１０３のＣＰＵ２３２は、Ｓ１１０３に処理を進める。
【００６６】
Ｓ１１０３では、ホストコンピュータ１０３のＣＰＵ２３２は、入力されたユーザ認証情報（ユーザ名、パスワード）を、印刷ジョブに付与する。つまり、ホストコンピュータ１０３のＣＰＵ２３２は、入力されたユーザ名、パスワードを、図１０のユーザ名４０６、パスワード４０７に格納し、認証情報付きジョブ開始パケット６１０を生成し、印刷ジョブに付与する。ここで、パスワードは秘匿のためパスワードのハッシュ値もしくは暗号化したパスワードを生成して付与するがその詳細は省略する。
【００６７】
最後に、Ｓ１１０４において、ホストコンピュータ１０３のＣＰＵ２３２は、上記Ｓ１１０３で認証情報を付与した印刷ジョブを、印刷装置１０２に送信する。
【００６８】
第２の印刷ジョブの形態に対応する印刷ジョブを受信した印刷装置１０２では、後述するように、プリンタドライバにより生成された印刷ジョブに付与されたユーザ名とパスワードからユーザ認証を実施し、印刷ジョブに対する制限情報を取得する。そして、プリンタドライバにより生成された印刷ジョブの属性情報と、上記取得した制限情報に記載された情報とが一致するか否かを判断する。そして、一致しないときは、制限情報に記載された属性情報を優先して、プリンタドライバにより作成された印刷ジョブの属性情報を上書きする。そして、印刷ジョブを実行して印刷処理を行う。
【００６９】
なお、第１の印刷ジョブの形態の場合と同様に、ユーザ名、パスワードを予めプリンタドライバに登録しておくことで、上述したＳ１１０２で印刷の都度、ユーザ名、パスワードを入力する手間を省略することも可能である。
【００７０】
以上のように、第２の印刷ジョブの形態では、ホストコンピュータ１０３が印刷ジョブにユーザ名、パスワードを付与するだけで、印刷装置１０２側で印刷ジョブの制限を実施できる。これにより、印刷ジョブ送信の前にホストコンピュータ１０３と印刷装置１０２が通信を行う必要もなく処理が簡単になる。第２の印刷ジョブの形態でも、印刷ジョブがどのような属性情報（印刷設定等）で発行されても、印刷ジョブの出力結果に制限をかけることが可能となる。
【００７１】
以上示した、第１の印刷ジョブの形態と、第２の印刷ジョブの形態は、ユーザの利用環境によってどちらかを選択して使い分けられる。即ち、ユーザは、利用環境に応じてどちらかの形態に対応するプリンタドライバをホストコンピュータにインストールすることで、第１の印刷ジョブの形態と第２の印刷ジョブの形態を使い分けることができる。なお、１種類のプリンタドライバを設定により、第１の印刷ジョブの形態に対応させたり、第２の印刷ジョブの形態に対応させたりできるようにしてもよい。
【００７２】
次に、印刷装置１０２における印刷ジョブ受信時の処理について説明する。
図１２は、印刷装置１０２の印刷処理に関するソフトウェア構成を示すブロック図である。図１２に示す印刷装置制御プログラム１２００は、印刷装置１０２を制御するプログラムである。図１２に示す印刷装置制御プログラム１２００の機能は、ＣＰＵ２１３が記憶装置２１５に格納された印刷装置制御プログラムをＲＡＭ２１４に読み出す等して実行してすることにより実現される。
【００７３】
ジョブ受信部１２０１は、ネットワーク１０４に接続し、ホストコンピュータ１０１もしくはホストコンピュータ１０３から、ネットワーク通信部２１１を用いて印刷ジョブを受信する。
パケット解析部１２０２は、ジョブ受信部１２０１で受信した印刷ジョブをパケット単位でオペレーションコード４０１を基に解析する。
【００７４】
印刷ジョブに制限情報が付与されていると解析された場合には、制限情報変換部１２０４が、該制限情報に記載された情報を変換して制限情報格納部１２０９に制限情報を格納する。
【００７５】
また、印刷ジョブに認証情報（ユーザ名、パスワード）が付与されていると解析された場合には、ユーザ認証部１２０５が、印刷ジョブに含まれるユーザ名、パスワードとユーザ情報格納部１２０６に格納される情報との比較を行い、ユーザ認証を実施する。
ユーザ情報格納部１２０６には、図３に示したような、ユーザ情報データベース３００と、ロール情報データベース３１０が格納されており、ユーザ毎に印刷制限情報を管理可能な管理元として機能する。ユーザ情報格納部１２０６の情報は、印刷装置１０２の記憶装置２１５に格納される。
【００７６】
制限情報生成部１２０７は、ユーザ認証部１２０５のユーザ認証の結果を受けて、ユーザ情報格納部１２０６のロール情報データベース３１０からユーザに対するロール情報を取得し、該ロール情報を基に制限情報を生成して、制限情報格納部１２０９に格納する。制限情報格納部１２０９には、印刷ジョブに対する制限情報が格納される。制限情報格納部１２０９のデータは、ＲＡＭ２１４に配置されるが、記憶装置２１５に格納してもよい。
【００７７】
ＰＤＬデータ格納部１２０８は、印刷ジョブに含まれるＰＤＬ（Ｐａｇｅ Ｄｅｓｃｒｉｐｔｉｏｎ Ｌａｎｇｕａｇｅ：ページ記述言語）データを一時的に記憶装置２１５に格納する。
ジョブ管理部１２１０は、印刷ジョブの印刷枚数やモノクロ／カラー指定などの属性情報を一時的に記憶装置２１５に格納する。
【００７８】
ＰＤＬデータ解釈部１２１１は、ジョブ管理部１２１０に格納された属性情報及び制限情報格納部１２０９に格納された制限情報に従って、ＰＤＬデータ格納部１２０８からＰＤＬデータを取得して画像形成処理を行い、画像データを生成する。
画像データ格納部１２１２は、ＰＤＬデータ解釈部１２１１により生成された画像データを印刷が完了するまで一時的に記憶装置２１５に格納する。
印刷部１２１３は、印刷エンジン２１７を用いて、画像データ格納部１２１２に格納された画像データを用紙媒体などに印刷する。
【００７９】
以下、図１３〜図１５のフローチャートを用いて、印刷装置１０２における印刷ジョブ受信時の処理について説明する。
図１３〜図１５は、実施例１における印刷装置の印刷ジョブ受信処理を例示するフローチャートである。図１３〜図１５に示すフローチャートの処理は、印刷装置１０２のＣＰＵ２１３が記憶装置２１５に格納される印刷装置制御プログラム１２００等を読み出して実行することにより実現される図１２に示した各機能により実行される。
【００８０】
まず、ジョブ受信部１２０１がネットワーク通信部２１１により印刷ジョブを受信すると（Ｓ１３０１）、パケット解析部１２０２が、Ｓ１３０２を実行する。
Ｓ１３０２では、パケット解析部１２０２は、上記Ｓ１３０１で受信した印刷ジョブからジョブパケットを１つ取得し、さらに当該ジョブパケットのヘッダ部を取得して当該ヘッダ部のオペレーションコード４０１の解析を行う。そして、パケット解析部１２０２は、該解析によりオペレーションコード４０１が制限情報の付与を示す制限情報オペレーションコード「０ｘ０３０１」であるか否かを判断する。
【００８１】
そして、上記Ｓ１３０２において、ヘッダ部のオペレーションコードが制限情報オペレーションコード「０ｘ０３０１」であると判断した場合（Ｓ１３０２でＹｅｓの場合）、パケット解析部１２０２は、当該ジョブパケットを制限情報変換部１２０４に送信する。
【００８２】
Ｓ１３０３では、制限情報変換部１２０４は、制限情報のジョブパケットを解析する。ここで、制限情報変換部１２０４による制限情報パケットの解析処理について、図１４を用いて説明する。図１４は、制限情報変換部１２０４による制限情報解析処理（図１３のＳ１３０３）に対応するフローチャートである。
【００８３】
図１４に示すように、まず、制限情報変換部１２０４は、印刷装置１０２の公開鍵を利用し、デジタル署名６０２の検証を実施し（Ｓ１４０１）、署名検証が成功したか否かを判断する（Ｓ１４０２）。
【００８４】
そして、署名検証が成功したと判断した場合（Ｓ１４０２でＹｅｓの場合）、制限情報変換部１２０４は、当該ジョブパケットにおける領域６０１から、例えば書式８０１（図８）で記載されたような制限情報を取得し（Ｓ１４０４）、該取得した制限情報を制限情報格納部１２０９に格納（登録）する。その際、後に印刷ジョブの属性情報を制限（縮退）するために印刷装置制御プログラム１２００が利用する形態に制限情報を変換して格納する（Ｓ１４０５）。
【００８５】
一方、署名検証が失敗したと判断した場合（Ｓ１４０２でＮｏの場合）、制限情報変換部１２０４は、印刷禁止とした制限情報を生成し（Ｓ１４０３）、該生成した制限情報を制限情報格納部１２０９に格納（登録）する（Ｓ１４０５）。
上記Ｓ１４０５の処理が終了すると、制限情報変換部１２０４は、図１４の制限情報解析処理を完了する。
【００８６】
制限情報変換部１２０４による図１４の制限情報解析処理が完了すると、パケット解析部１２０２が、図１３のＳ１３０４において、次のジョブパケットを受信し、Ｓ１３０５に処理を進める。
【００８７】
また、上記Ｓ１３０２において、ヘッダ部のオペレーションコードが制限情報オペレーションコード「０ｘ０３０１」でないと判断した場合（Ｓ１３０２でＮｏの場合）、パケット解析部１２０２は、そのままＳ１３０５に処理を進める。
【００８８】
Ｓ１３０５では、パケット解析部１２０２は、ジョブパケットのヘッダ部を取得して、当該ヘッダ部のオペレーションコード４０１の解析を行う。なお、ここで解析するジョブパケットは、上記Ｓ１３０２でＹｅｓの場合は上記Ｓ１３０４で受信したジョブパケット、一方、上記Ｓ１３０２でＮｏの場合は上記Ｓ１３０１で受信したジョブパケットとなる。そして、パケット解析部１２０２は、該解析によりオペレーションコード４０１が「０ｘ０３０２」、すなわち認証情報付きジョブ開始を示す認証情報付きジョブ開始オペレーションコードであるか否かを判断する。
【００８９】
そして、上記Ｓ１３０５において、ヘッダ部のオペレーションコードが認証情報付きジョブ開始オペレーションコード「０ｘ０３０２」であると判断した場合（Ｓ１３０５でＹｅｓの場合）、パケット解析部１２０２は、当該ジョブパケットをユーザ認証部１２０５に送信する。
【００９０】
Ｓ１３０６では、ユーザ認証部１２０５は、ユーザ認証処理を実行する。ここで、ユーザ認証部１２０５によるユーザ認証処理について、図１５を用いて説明する。図１５は、実施例１におけるユーザ認証部１２０５によるユーザ認証処理（図１３のＳ１３０６）に対応するフローチャートである。
【００９１】
図１５に示すように、まず、ユーザ認証部１２０５は、ジョブパケットに格納されたユーザ名４０６とパスワード４０７を取得する（Ｓ１５０１）。
次に、ユーザ認証部１２０５は、上記Ｓ１５０１で取得したユーザ名とパスワードがユーザ情報格納部１２０６のユーザ情報データベース３００に格納されたユーザ名、パスワードと一致するか比較を行い（Ｓ１５０２）、比較の結果を判断する（Ｓ１５０３）。
【００９２】
そして、上記Ｓ１５０２の比較の結果、一致と判断した場合（Ｓ１５０３でＹｅｓの場合）、ユーザ認証部１２０５は、ユーザ認証成功と判断する。ユーザ認証成功の場合、制限情報生成部１２０７が、ユーザ情報格納部１２０６のロール情報データベース３１０に格納された該当ユーザに対応するロール情報を基に制限情報を生成し（Ｓ１５０５）、該生成した制限情報を制限情報格納部１２０９に格納（登録）する（Ｓ１５０６）。
【００９３】
一方、上記Ｓ１５０２の比較の結果、一致しないと判断した場合（Ｓ１５０３でＮｏの場合）、ユーザ認証部１２０５は、ユーザ認証失敗と判断する。ユーザ認証失敗の場合、制限情報生成部１２０７が、印刷禁止とした制限情報を生成し（Ｓ１５０４）、該生成した制限情報を制限情報格納部１２０９に格納（登録）する（Ｓ１５０６）。
上記Ｓ１５０６の処理が終了すると、制限情報変換部１２０４は、図１５のユーザ認証処理を完了する。
【００９４】
図１５のユーザ認証処理が完了すると、図１３のＳ１３０７において、ジョブ管理部１２１０が、新規ジョブの生成として、当該印刷ジョブの領域を確保し、ジョブ識別子を割り当てる。
【００９５】
次に、パケット解析部１２０２が、次のジョブパケットを取得し（Ｓ１３０８）、Ｓ１３０９に処理を進める。なお、Ｓ１３０９以降、パケット解析部１２０２が、取得したジョブパケットがジョブ終了パケットであると判断するまで、Ｓ１３０９〜Ｓ１３１４の処理を繰り返す。以下、詳細に説明する。
【００９６】
まず、Ｓ１３０９において、パケット解析部１２０２は、オペレーションコード４０１が属性設定か否か、すなわちオペレーションコード４０１がジョブ属性設定オペレーションコード「０ｘ０２０２」であるか否かを判断する。
【００９７】
そして、パケット解析部１２０２によりオペレーションコード４０１がジョブ属性設定オペレーションコード「０ｘ０２０２」であると判断された場合（Ｓ１３０９でＹｅｓの場合）、ジョブ管理部１２１０が、当該印刷ジョブの属性領域に当該属性設定値を登録して（Ｓ１３１０）、Ｓ１３１３に処理を進める。
【００９８】
一方、オペレーションコード４０１がジョブ属性設定オペレーションコード「０ｘ０２０２」でないと判断した場合（Ｓ１３０９でＮｏの場合）、パケット解析部１２０２は、Ｓ１３１１に処理を進める。
Ｓ１３１１では、パケット解析部１２０２は、ＰＤＬデータであるか否か、すなわちＰＤＬデータオペレーションコード「０ｘ０２０４」であるか否かを判断する（Ｓ１３１１）。
【００９９】
そして、オペレーションコードがＰＤＬデータオペレーションコード「０ｘ０２０４」であると判断した場合（Ｓ１３１１でＹｅｓの場合）、パケット解析部１２０２は、ＰＤＬデータ格納部１２０８にＰＤＬデータを格納して（Ｓ１３１２）、Ｓ１３１３に処理を進める。
一方、オペレーションコードがＰＤＬデータオペレーションコード「０ｘ０２０４」でないと判断した場合（Ｓ１３１１でＮｏの場合）、パケット解析部１２０２は、そのままＳ１３１３に処理を進める。
【０１００】
Ｓ１３１３では、パケット解析部１２０２は、次のジョブパケットを受信し、Ｓ１３１４に処理を進める。
Ｓ１３１４では、パケット解析部１２０２は、上記Ｓ１３１３で受信したパケットのオペレーションコードがジョブ終了か否か、すなわちジョブ終了オペレーションコード「０ｘ０２０５」であるか否かを判断する
【０１０１】
そして、オペレーションコードがジョブ終了オペレーションコード「０ｘ０２０５」でないと判断した場合（Ｓ１３１４でＮｏの場合）、パケット解析部１２０２は、Ｓ１３０９に処理を戻す。
一方、オペレーションコードがジョブ終了オペレーションコード「０ｘ０２０５」であると判断した場合（Ｓ１３１４でＹｅｓの場合）、パケット解析部１２０２は、Ｓ１３１５に処理を進める。
【０１０２】
受信したパケットがジョブ終了を示す場合、Ｓ１３１５において、ＰＤＬデータ解釈部１２１１が、制限情報に基づきＰＤＬデータを解析する。
次に、Ｓ１３１６において、ＰＤＬデータ解釈部１２１１は、ジョブ管理部１２１０で管理されるジョブの属性情報と、制限情報格納部１２０９に格納される制限情報とを比較し、印刷ジョブに制限情報を適用可能か否かを判断する。
【０１０３】
上記Ｓ１３１６の判断では、印刷ジョブの属性情報に制限情報を上書きすることで制限情報に合致した印刷が可能な場合は、制限情報を適用可能と判断する。
例えば、印刷ジョブの属性情報が片面印刷となっているが、制限情報では両面印刷となっている場合、ＰＤＬデータ解釈部１２１１は、制限情報を適用可能と判断し、印刷ジョブの属性情報を両面印刷として上書きを行う。
【０１０４】
また、印刷ジョブの属性情報に制限情報を上書きしても制限情報に合致した印刷が不可能な場合（例えば、適用できないジョブ属性に対する制限情報が設定されている場合等）、制限情報を適用不可能と判断する。
なお、制限情報やユーザ認証情報が付与されていないジョブ（図５の５００のようなジョブ）を受信した場合は、図１４のＳ１４０５や図１５のＳ１５０６の処理を行わないため、制限情報格納部１２０９に制限情報が格納されていない。ＰＤＬデータ解釈部１２１１は、制限情報格納部１２０９に制限情報が格納されていない場合も、制限情報を適用不可能と判断する。ここでは、制限情報格納部１２０９へ制限情報が格納されていない場合は、印刷機能の使用を禁止すると判断したが、格納されていない場合に印刷機能を許可するか禁止するかの設定を印刷装置１０２に設け、ＰＤＬデータ解釈部１２１１はその設定に従って上記Ｓ１３１６の判断を行うようにしてもよい。
【０１０５】
上記Ｓ１３１６において、印刷ジョブに制限情報を適用不可能であると判断した場合（Ｓ１３１６でＮｏの場合）、ＰＤＬデータ解釈部１２１１は、制限情報を適用不可能な旨をジョブ管理部１２１０に通知する。この通知を受けたジョブ管理部１２１０は、印刷ジョブをキャンセルする（Ｓ１３１９）。
【０１０６】
一方、上記Ｓ１３１６において、印刷ジョブに制限情報を適用可能であると判断した場合（Ｓ１３１６でＹｅｓの場合）、ＰＤＬデータ解釈部１２１１は、制限情報に合致するよう印刷ジョブの属性情報を上書きすることで印刷ジョブに制限情報を適用し、Ｓ１３１７に処理を進める。
【０１０７】
Ｓ１３１７では、ＰＤＬデータ解釈部１２１１は、制限情報が適用されたジョブの属性情報に基づき、ＰＤＬデータ格納部１２０８に格納されたＰＤＬデータを解釈し、実際の印刷に使用する画像データを生成する。
最後に、Ｓ１３１８において、印刷部１２１３が、上記Ｓ１３１７で生成された画像データの印刷を、印刷エンジン２１７を用いて実行する。
【０１０８】
以上示したように、実施例１では、印刷装置１０２において、制限情報もしくはユーザ認証情報を含まれる印刷ジョブを受信した場合に、制限情報が含まれる場合は当該制限情報を制限情報格納部１２０９に格納する。また、ユーザ認証情報が含まれる場合は、ユーザ認証を実施し、その結果として得られる制限情報を制限情報格納部１２０９に格納する。そして、印刷実行の際に制限情報格納部１２０９に格納された制限情報を基に受信ジョブの印刷制限を実施する構成を有する。
【０１０９】
このような構成により、実施例１によれば、受信した印刷ジョブに、制限情報が付与されているか、ユーザ認証情報が付与されているかによって、取得する制限情報を切り替え、制限情報格納部１２０９に格納する。そのため、認証方式や制限情報の取得方法が異なる複数のジョブの形態が混在する環境においても、ジョブに対して最適な制限情報により印刷ジョブの出力に制限をかけることができる。この結果、どのようなジョブの形態であってもユーザによる無秩序な印刷出力を抑制してＴＣＯ削減に寄与することができる。
【０１１０】
また、印刷装置１０２の制限情報格納部１２０９において印刷ジョブに対する制限情報を一元管理するため、認証方式や制限情報の形式が異なるジョブに対して拡張性を保持することができる。
【０１１１】
なお、上述の説明では、ユーザ認証情報として、ユーザ名、パスワードを用いて説明したが、ユーザ認証情報はこれに限定されるものではなく、ユーザ認証可能な情報であれば他の認証情報であってもよい。例えば、生体認証情報であってもよい。
【実施例２】
【０１１２】
上記実施例１では、第１の印刷ジョブの形態と第２の印刷ジョブの形態のどちらかの形態を受信する際の印刷装置１０２の処理について説明した。ホストコンピュータ１０１に搭載されるプリンタドライバの構成によっては、更に第１の印刷ジョブの形態と第２の印刷ジョブの形態を結合した形態のジョブを発行することが可能である。
実施例２では、第１の印刷ジョブの形態と第２の印刷ジョブの形態が両方含まれる印刷ジョブを受信した場合の印刷装置１０２の処理について説明する。
【０１１３】
まず、図１６を用いて実施例２における印刷ジョブの概略構成を説明する。
図１６は、実施例２における印刷ジョブの概略構成を例示する図である。なお、図７と同一のものには同一の符号を付してある。図１６に示す印刷ジョブは、第１の印刷ジョブの形態と第２の印刷ジョブの形態が両方含まれる印刷ジョブ、即ち、制限情報とユーザ認証情報の両方が付与された印刷ジョブに対応する。
【０１１４】
図１６に示す印刷ジョブ７１０には、先頭に制限情報を示すジョブパケットとして図６に示した制限情報パケット６００が、ジョブ開始パケットとして図１０に示した認証情報付きジョブ開始パケット６１０が付与されている。ユーザの利用環境においては、図１６のような印刷ジョブの構成も考えられる。
【０１１５】
次に、図１７を用いて図１６に示した印刷ジョブを受信した際の印刷装置１０２のユーザ認証処理について説明する。
図１７は、実施例２におけるユーザ認証部１２０５によるユーザ認証処理（図１３のＳ１３０６）の詳細を例示するフローチャートである。このフローチャートの処理は、印刷装置１０２のＣＰＵ２１３が記憶装置２１５に格納される印刷装置制御プログラム１２００等を読み出して実行することにより実現される図１２に示した各機能により実行される。なお、実施例２における印刷ジョブ受信時の処理（図１３）は、Ｓ１３０６以外は実施例１と同様である。また、図１７のフローチャートは、図１５のフローチャートに対して、Ｓ１５１０の処理が追加されたものであり、図１５と同一のステップには同一のステップ番号を付してある。以下、詳細に説明する。
【０１１６】
実施例２では、ユーザ認証部１２０５は、Ｓ１５０１で取得したユーザ名とパスワードがユーザ情報格納部１２０６のユーザ情報データベース３００に格納されたユーザ名、パスワードと一致すると判断した場合（Ｓ１５０３でＹｅｓの場合）、ユーザ認証成功と判断し、Ｓ１５１０に処理を進める。
【０１１７】
Ｓ１５１０では、ユーザ認証部１２０５は、制限情報格納部１２０９に制限情報が格納されているか否かを判断する。
例えば、図１６に示した印刷ジョブ７１０（第１の印刷ジョブの形態と第２の印刷ジョブの形態を結合した形態）を受信した場合は、図１３のＳ１３０３において、制限情報パケット６００に含まれる制限情報６０１が制限情報格納部１２０９に格納されるため、ユーザ認証部１２０５は、既に制限情報が格納されている（Ｓ１５１０でＹｅｓ）と判断することになる。
また、図７（ａ）に示した印刷ジョブ７００（第２の印刷ジョブの形態）を受信した場合は、制限情報は制限情報格納部１２０９に格納されないため、ユーザ認証部１２０５は、制限情報が格納されていない（Ｓ１５１０でＮｏ）と判断することになる。即ち、制限情報パケット６００に含まれる制限情報を用いる。
【０１１８】
上記Ｓ１５１０において、制限情報格納部１２０９に制限情報が格納されていると判断した場合（Ｓ１５１０でＹｅｓの場合）、制限情報生成部１２０７は、制限情報を制限情報格納部１２０９に格納せず、そのままユーザ認証処理を終了する。
【０１１９】
一方、上記Ｓ１５１０において、制限情報格納部１２０９に制限情報が格納されていないと判断した場合（Ｓ１５１０でＮｏの場合）、制限情報生成部１２０７が、Ｓ１５０５、Ｓ１５０６の処理を実行する。即ち、実施例１で説明したように、制限情報生成部１２０７が、ロール情報を基に制限情報を生成し（Ｓ１５０５）、制限情報格納部１２０９に格納する（Ｓ１５０６）。
【０１２０】
以上示したように、既に制限情報格納部１２０９に制限情報が格納されている場合は、新たにロール情報から制限情報を生成することは行わないため、図１６に示すような印刷ジョブ（第１の印刷ジョブの形態と第２の印刷ジョブの形態を結合した形態）を受信した場合にも印刷処理を簡略化できる。
【０１２１】
なお、印刷ジョブに付与される制限情報６０１とロール情報データベース３１０に格納される制限情報に差異がある場合を考慮し、図１７のＳ１５１０において、制限情報が格納されていると判断した場合でも、ロール情報を基に制限情報を生成するか否かの設定を印刷装置１０２に設けてもよい。そして、ロール情報を基に制限情報を生成する設定がＯＮの場合、制限情報生成部１２０７は、ロール情報を基に制限情報を生成し、制限情報格納部１２０９に上書きする。一方、ロール情報を基に制限情報を生成する設定がＯＦＦの場合、制限情報生成部１２０７は、制限情報を制限情報格納部１２０９に格納せず、そのままユーザ認証処理を終了する。
【０１２２】
即ち、印刷ジョブが印刷制限情報およびユーザ認証情報を含む形態の場合、設定に応じて、印刷ジョブから前記印刷制限情報を取得する、又は、印刷ジョブに含まれるユーザ認証情報により認証されたユーザの印刷制限情報を取得する。
【０１２３】
なお、印刷ジョブに付与される制限情報６０１とロール情報データベース３１０に格納される制限情報に差異がある場合とは、例えば、図９のＳ９０７でホストコンピュータ１０１が印刷装置１０２から制限情報を取得した後に、印刷装置１０２において管理者権限を有するユーザがユーザ情報データベース３００もしくはロール情報データベース３１０の情報を更新した場合などである。
また、ユーザ認証部１２０５において、ユーザ認証に成功した際、ユーザ情報格納部１２０６からロール情報の他に不図示のユーザ属性情報（例えば、ユーザのグループ情報など）を取得する場合が考えられる。そのような場合は、Ｓ１５１０で制限情報が格納されていると判断した場合でも、ユーザ情報格納部１２０６から印刷ジョブ７１０に含まれないユーザ属性情報を取得するようにしてもよい。
【０１２４】
このように、図１３のＳ１３０６において、ユーザ認証を実施することで、印刷ジョブ７１０に含まれないユーザ属性情報を改めてユーザ情報格納部１２０６より取得できるため、第１の印刷ジョブの形態及び第２の印刷ジョブの形態を両方含めてプリンタドライバが印刷ジョブを生成することは有用である。
【実施例３】
【０１２５】
上記実施例１では、制限情報を含む印刷ジョブの形態およびユーザ認証情報を含む印刷ジョブの形態について説明したが、ユーザ認証に関連する情報として認証トークンを含む印刷ジョブの形態であってもよい。
実施例３では、第３の印刷ジョブの形態として認証トークンが付与された印刷ジョブについて説明する。
図１８は、第３の印刷ジョブの形態である認証トークンが付与された印刷ジョブを構成するジョブパケットの構造の一例を示す図である。
【０１２６】
図１８に示すジョブパケット６２０では、図４と同様０〜１１バイト目まではヘッダ部であり、１２バイト目以降はボディ部（データ領域）であるが、ジョブ開始パケットのため、１２バイト目以降のボディ部は存在しない。ヘッダ部の８〜１１バイト目が認証トークン４０８を格納する領域として利用される。
【０１２７】
本ジョブパケット６２０は、０〜１バイト目のオペレーションコード４０１に認証トークン付きジョブ開始オペレーションを示す「０ｘ０３０３」が格納されていることから判断することができる。なお、印刷ジョブの概略構成は、図示しないが、図７（ｂ）の認証情報付きジョブ開始６１０、が図１８の認証トークン付きジョブ開始６２０に置き換わったものである。
【０１２８】
次に、ホストコンピュータ１０１における第３の印刷ジョブの形態での印刷ジョブの生成及び送信処理について図１９のフローチャートを用いて説明する。
図１９は、第３の印刷ジョブの形態である認証トークンを含む印刷ジョブの生成処理を例示するフローチャートである。本フローチャートにおけるホストコンピュータ１０１の処理は、ホストコンピュータ１０１のＣＰＵ２３２が記憶装置２３５に格納されたプログラム（第３の印刷ジョブの形態に対応するプリンタドライバ等）を読み出して実行することにより実現される機能により実行される。また、本フローチャートにおける印刷装置１０２の処理は、印刷装置１０２のＣＰＵ２１３が記憶装置２１５に格納されたプログラムを読み出して実行することにより実現される機能により実行される。なお、図９と同一のステップには同一のステップ番号を付してあり、図９と異なるステップのみ説明する。
【０１２９】
印刷装置１０２のＣＰＵ２１３は、Ｓ９０４で受信したユーザ認証情報（ユーザ名、パスワード）がユーザ情報データベース３００に格納されたユーザ名、パスワードと一致すると判断した場合、ユーザ認証成功として、当該ユーザのロール情報３０３を基にロール情報データベース３１０に格納された情報から、制限情報を生成する（Ｓ９２０）。
【０１３０】
次に、Ｓ９２１において、印刷装置１０２のＣＰＵ２１３は、上記Ｓ９２０で生成した制限情報に対応する認証トークンとして、４バイトのデータを生成する。
次に、Ｓ９２２において、印刷装置１０２のＣＰＵ２１３は、上記Ｓ９２１生成した認証トークンを上記Ｓ９２０で生成した制限情報に紐付けて、制限情報格納部１２０９に格納する。
さらに、Ｓ９２３において、印刷装置１０２のＣＰＵ２１３は、上記Ｓ９２１で生成した認証トークンのみを、ユーザ認証情報の送信元であるホストコンピュータ１０１に送信（返信）する。
【０１３１】
ホストコンピュータ１０１のＣＰＵ２３２は、印刷装置１０２から送信された認証トークンを取得すると（Ｓ９２４）、Ｓ９２５に処理を進める。
Ｓ９２５では、ホストコンピュータ１０１のＣＰＵ２３２は、上記Ｓ９２４で取得した認証トークンを、Ｓ９０１で生成した印刷ジョブに付与する。つまり、ホストコンピュータ１０１のＣＰＵ２３２は、取得した認証トークンを、認証トークン付きジョブ開始パケット６２０の認証トークン領域４０８に格納し、認証トークン付きジョブ開始パケットを生成し、印刷ジョブに付与する。
そして、ホストコンピュータ１０１のＣＰＵ２３２は、上記Ｓ９２５で認証トークンを付与した印刷ジョブを、印刷装置１０２に送信する（Ｓ９２６）。
【０１３２】
このように、第３の印刷ジョブの形態として認証トークンを利用すると、印刷ジョブにユーザ名やパスワードの情報を格納しないため、印刷ジョブからユーザ名やパスワードの情報が漏えいするリスクがなく、印刷処理とは別にセキュアな方法で認証を実施できる。また、印刷ジョブには４バイトの認証トークンのみを付与するため、制限情報を付与するよりも印刷ジョブのサイズを小さくすることができ、ネットワークトラフィックを改善することができる。
【０１３３】
次に、図２０を用いて図１６に示した印刷ジョブを受信した際の印刷装置１０２のユーザ認証処理について説明する。
図２０は、実施例３におけるユーザ認証部１２０５によるユーザ認証処理（図１３のＳ１３０６）の詳細を例示するフローチャートである。即ち、図１３のＳ１３０６のユーザ認証処理を、図２０に置き換える。このフローチャートの処理は、印刷装置１０２のＣＰＵ２１３が記憶装置２１５に格納される印刷装置制御プログラム１２００等を読み出して実行することにより実現される図１２に示した各機能により実行される。
【０１３４】
図２０に示すように、まず、ユーザ認証部１２０５は、ジョブパケットに格納された認証トークン４０８を取得する（Ｓ１５１１）。
次に、ユーザ認証部１２０５は、上記Ｓ１５１１で取得した認証トークンが制限情報格納部１２０９に格納された認証トークンと一致するか比較を行い（Ｓ１５１２）、比較の結果を判断する（Ｓ１５１３）。
【０１３５】
そして、ユーザ認証部１２０５が上記Ｓ１５１２の比較の結果、一致と判断した場合（Ｓ１５１３でＹｅｓの場合）、制限情報生成部１２０７が、制限情報格納部１２０９に格納された上記認証トークに対応する制限情報を、当該印刷ジョブに対する制限情報として制限情報格納部１２０９に格納（登録）する（Ｓ１５１５）。なお、この際、図１９のＳ９２２で格納した該認証トークンと該制限情報とを紐付ける情報を削除する。
【０１３６】
一方、上記Ｓ１５１２の比較の結果、一致しないと判断した場合（Ｓ１５１３でＮｏの場合）、ユーザ認証部１２０５は、ユーザ認証失敗と判断する。ユーザ認証失敗の場合、制限情報生成部１２０７が、印刷禁止とした制限情報を生成し（Ｓ１５１４）、該生成した制限情報を制限情報格納部１２０９に格納（登録）する（Ｓ１５１６）。
上記Ｓ１５１５又はＳ１５１６の処理が終了すると、制限情報変換部１２０４は、図２０のユーザ認証処理を完了する。
以降の処理は図１３と同様である。
【０１３７】
以上示したように、実施例３によれば、印刷ジョブに認証トークンが付与された場合でも制限情報格納部１２０９に格納される制限情報は変わらないため、ＰＤＬデータ解釈部１２１１は処理を変更することなく印刷ジョブの制限をかけることが可能である。このように、制限情報格納部１２０９において印刷ジョブに対する制限情報を一元管理するため、認証方式や制限情報の異なる形態のジョブに対して簡単に拡張が可能となる。
【０１３８】
なお、上記説明では、図１３のＳ１３０６のユーザ認証処理を図２０に置き換えるものとした。しかし、図１３のＳ１３０５において、パケット解析部１２０２が、オペレーションコード４０１が認証情報付きジョブ開始オペレーションコード「０ｘ０３０２」と判断した場合、図１５又は図１７のユーザ認証処理を行い、オペレーションコード４０１が認証トークン付きジョブ開始オペレーションコード「０ｘ０３０３」と判断した場合、図２０のユーザ認証処理を行うようにしてもよい。
【０１３９】
また、印刷装置１０２が、第３の印刷ジョブの形態と第１の印刷ジョブの形態が両方含まれる印刷ジョブを受信する場合も本発明に含まれる。例えば、図９及び図１９のＳ９０３においてユーザ認証を要求する場合に、印刷制限情報を取得するのか、認証トークンを取得するのか、指定できるようにする。この指定に応じて、印刷装置１０２は、図９のＳ９０４〜Ｓ９０６の処理、又は、図１９のＳ９０４〜Ｓ９２３の処理を実行するようにする。また、ホストコンピュータ１０１でも、上記指定に応じて、図９のＳ９０７〜Ｓ９０９の処理、又は、図１９のＳ９２４〜Ｓ９２６の処理を実行するようにする。なお、ホストコンピュータ１０１にインストールされるプリンタドライバにより上記指定が決定されるようにしてもよい。
【０１４０】
なお、上記各実施例では、ユーザ認証を全て印刷装置１０２が実施していたが、印刷装置１０２とは別の不図示の認証サーバにおいてユーザ認証を実施する構成でもよい。この場合、ユーザ情報データベース３００及びロール情報データベース３１０は、認証サーバで管理される。
印刷装置１０２のＣＰＵ２１３は、ユーザ認証要求を受けた際、受信したユーザ名、パスワードの情報を認証サーバに転送し、その結果として、認証サーバから制限情報を得ることで、同様に印刷機能に対する制限をかけることが可能である。
【０１４１】
また、ロール情報データベース３１０は印刷装置１０２で管理し、認証サーバではユーザ情報データベース３００のみを管理する構成でもよい。その場合、印刷装置１０２のＣＰＵ２１３は、認証サーバから認証の結果として認証されたユーザに対するロール３０３を取得し、ロール情報データベース３１０より、該ロールに対応する制限情報を生成すればよい。
【０１４２】
以上説明したように、本発明によれば、複数の認証方式や制限情報の取得の方法が混在する環境においても、ジョブに対して最適な制限情報により印刷ジョブの出力に制限をかけることができ、ユーザによる無秩序な印刷出力を抑制してＴＣＯ削減に寄与することができる。また、印刷ジョブに対する制限情報を一元管理することができ、認証方式や制限情報の異なる形態のジョブに対して拡張性を保持することができる。
従って、複数のジョブの形態が混在する環境においても、ジョブの形態に合わせて印刷装置の設定や構成を変更することなく、ジョブに対して最適な制限を適用してＴＣＯの削減に寄与し、ユーザの利便性及び印刷システムの拡張性を向上することができる等の効果を奏する。
【０１４３】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
以上、一実施例について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、上記各実施例を組み合わせた構成も全て本発明に含まれるものである。
【０１４４】
（他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施例の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施例の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【０１４５】
１０１、１０３    ホストコンピュータ
１０２    印刷装置
３００    ユーザ情報データベース
３１０    ロール情報データベース
１２０２    パケット解析部
１２０４    制限情報変換部
１２０５    ユーザ認証部
１２０７    制限情報生成部
１２０９    制限情報格納部
【図１】
2018199333.tif 000003
【図２】
2018199333.tif 000004
【図３】
2018199333.tif 000005
【図４】
2018199333.tif 000006
【図５】
2018199333.tif 000007
【図６】
2018199333.tif 000008
【図７】
2018199333.tif 000009
【図８】
2018199333.tif 000010
【図９】
2018199333.tif 000011
【図１０】
2018199333.tif 000012
【図１１】
2018199333.tif 000013
【図１２】
2018199333.tif 000014
【図１３】
2018199333.tif 000015
【図１４】
2018199333.tif 000016
【図１５】
2018199333.tif 000017
【図１６】
2018199333.tif 000018
【図１７】
2018199333.tif 000019
【図１８】
2018199333.tif 000020
【図１９】
2018199333.tif 000021
【図２０】
2018199333.tif 000022