(57)【特許請求の範囲】
【請求項１】
ネットワークを介して通信可能に接続された外部装置から入力される印刷指令に従い、前記印刷指令に対応した印刷サービスを実行可能な印刷装置であって、
前記外部装置から前記印刷指令及び印刷データと共に前記印刷サービスの利用権限の範囲が記載された電子証明書を前記ネットワークを介して取得する取得手段と、
前記取得手段により取得された電子証明書が正当な電子証明書であるか否かを、電子証明書に付されたディジタル署名に基づき判断する正当性判断手段と、
前記正当性判断手段により前記取得された電子証明書が正当な電子証明書であると判断され、且つ、前記印刷指令に対応した印刷サービスが前記正当な電子証明書に記された利用権限の範囲に属していることを条件として、前記取得手段が前記正当な電子証明書と共に取得した印刷データに対して前記印刷指令に対応した印刷サービスを実行する印刷サービス実行手段と、
を備えたことを特徴とする印刷装置。
【請求項２】
前記印刷サービスの利用権限の範囲が記載された電子証明書を記憶する内蔵記憶装置と、
前記取得手段により前記印刷指令が取得された場合に、当該印刷指令に対応した印刷サービスが、前記内蔵記憶装置に記憶されている電子証明書に記された利用権限の範囲に属しているかを判断するサービス判断手段と、
を備え、
前記印刷サービス実行手段は、
前記サービス判断手段により肯定判断された場合、前記取得手段による外部装置からの電子証明書の取得の有無に関わらず前記取得された印刷指令に対応した印刷サービスを、前記取得手段が当該印刷指令と共に取得した印刷データに対して実行する一方、
前記サービス判断手段により否定判断された場合、前記取得手段によって外部装置から前記正当な電子証明書が取得されたこと、及び、前記印刷指令に対応したサービスが前記取得手段によって取得された前記正当な電子証明書に記載された利用権限の範囲に属していることを条件として、前記取得手段が当該正当な電子証明書と共に取得した印刷データに対して前記印刷指令に対応した印刷サービスを実行する
ことを特徴とする請求項１記載の印刷装置。
【請求項３】
前記ネットワークを介して利用権限に関する指定情報を取得するための指定情報取得手段と、
前記指定情報取得手段が取得した指定情報により指定される利用権限の範囲を記したディジタル署名付きの電子証明書を生成し、前記生成した電子証明書を、予め定められた出力先装置に出力する証明書出力手段と、
を備えたことを特徴とする請求項１又は請求項２記載の印刷装置。
【請求項４】
携帯型記憶装置を着脱自在に接続可能な接続ポートを備え、
前記証明書出力手段は、前記出力先装置として、前記接続ポートに接続された携帯型記憶装置に、前記生成した電子証明書を出力する構成にされ、
前記取得手段は、前記携帯型記憶装置に出力した電子証明書を取得する構成にされていることを特徴とする請求項３記載の印刷装置。
【請求項５】
ネットワークを介して外部装置と通信可能な印刷装置のコンピュータに、
前記外部装置から、印刷指令及び印刷データと共に、印刷サービスの利用権限の範囲が記載された電子証明書を前記ネットワークを介して取得する取得手段と、
前記取得手段により取得された電子証明書が正当な電子証明書であるか否かを、電子証明書に付されたディジタル署名に基づき判断する正当性判断手段と、
前記正当性判断手段により前記取得された電子証明書が正当な電子証明書であると判断され、且つ、前記印刷指令に対応した印刷サービスが前記正当な電子証明書に記された利用権限の範囲に属していることを条件として、前記取得手段が前記正当な電子証明書と共に取得した印刷データに対して前記印刷指令に対応した印刷サービスを実行する印刷サービス実行手段
としての機能を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一部サービスの利用制限を行うことが可能な印刷装置に関する。
【背景技術】
【０００２】
従来より、マルチファンクションデバイスと呼ばれる複数の機能を有した情報処理装置が知られている。この種の情報処理装置としては、印刷（プリンタ）機能、スキャナ機能及びコピー機能を備えたディジタル複合機が知られており、ディジタル複合機は、例えば、印刷指令が入力されると、印刷処理（印刷サービス）を実行して、指定された印刷データに基づく画像を用紙に形成し、読取指令が入力されると、読取処理（スキャナサービス）を実行して、指定された原稿を光学的に読み取り、読取画像を表す画像データを生成する。
【０００３】
この種の情報処理装置では、実行すると用紙が消費される印刷サービスのように、ランニングコストの高いサービスと、ランニングコストの低いサービスと、が混在するため、全てのユーザに対して全サービスの利用権限を付与すると、運用コストの面で、都合が悪い場合がある。その他、上記種類の情報処理装置では、設置場所により、全サービスを利用可能にすると都合が悪い場合がある。
【０００４】
従って、この種の情報処理装置には、一部サービスの利用を制限可能な機能が設けられることがある。例えば、上記情報処理装置には、ユーザ毎に異なる利用権限を付与して、各サービスの実行／非実行を、ユーザ毎に切替可能な機能が設けられることがある。尚、従来装置としては、利用権限を表す情報をユーザ毎に記憶し、外部から入力される認証情報に基づいて識別したユーザに対応する上記利用権限を表す情報に基づき、一部サービスの利用を制限する装置が知られている（例えば、特許文献１参照）。
【特許文献１】特開２００５−２４４４８８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来装置では、上記利用権限を表す情報の管理が甘く、利用権限を表す情報が容易に改ざんされる可能性があった。本発明は、こうした問題に鑑みなされたものであり、利用権限を表す情報の改ざんを防止し、複数のサービスを実行可能な情報処理装置において、無断使用を強固に防止できるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
かかる目的を達成するためになされた請求項１記載の発明は、ネットワークを介して通信可能に接続された外部装置から入力される印刷指令に従い、印刷指令に対応した印刷サービスを実行可能な印刷装置であって、取得手段と、正当性判断手段と、印刷サービス実行手段と、を備えるものである。
【０００７】
この印刷装置において、取得手段は、外部装置から印刷指令及び印刷データと共に印刷サービスの利用権限の範囲が記載された電子証明書を、ネットワークを介して取得する。
【０００８】
一方、正当性判断手段は、取得手段により取得された電子証明書が正当な電子証明書であるか否かを、電子証明書に付されたディジタル署名に基づき判断する。
【０００９】
そして、印刷サービス実行手段は、正当性判断手段により上記取得された電子証明書が正当な電子証明書であると判断され、且つ、印刷指令に対応した印刷サービスが上記正当な電子証明書に記された利用権限の範囲に属していることを条件として、取得手段が上記正当な電子証明書と共に取得した印刷データに対して印刷指令に対応した印刷サービスを実行する。
【００１０】
このように、本発明では、印刷装置の利用権限の範囲を、電子証明書に記し、印刷サービス実行手段においては、正当な電子証明書に記された利用権限の範囲に属するサービスを選択的に実行するため、利用権限の範囲を表す情報が改ざんされて、印刷装置が無断使用されてしまうことがない。つまり、情報が改ざんされた電子証明書については、もはや正当性判断手段にて正当な電子証明書であるとは判断されなくなるので、改ざんされた電子証明書により、サービスが誤って実行されてしまうことはない。従って、本発明によれば、利用権限の範囲を表す情報の改ざん等による無断使用を従来よりも強固に防止することができる。
【００１１】
尚、上記印刷装置は、具体的に、請求項２記載のように構成することができる。
【００１２】
請求項２記載の印刷装置は、印刷サービスの利用権限の範囲が記載された電子証明書を記憶する内蔵記憶装置を備える。
更に、当該印刷装置は、取得手段により印刷指令が取得された場合に、当該印刷指令に対応した印刷サービスが、内蔵記憶装置に記憶されている電子証明書に記された利用権限の範囲に属しているかを判断するサービス判断手段を備える。
【００１３】
そして、印刷サービス実行手段は、サービス判断手段により肯定判断された場合、取得手段による外部装置からの電子証明書の取得の有無に関わらず上記取得された印刷指令に対応した印刷サービスを、取得手段が当該印刷指令と共に取得した印刷データに対して実行する。
【００１４】
一方、サービス判断手段により否定判断された場合、印刷サービス実行手段は、取得手段によって外部装置から上記正当な電子証明書が取得されたこと、及び、印刷指令に対応したサービスが取得手段によって取得された上記正当な電子証明書に記載された利用権限の範囲に属していることを条件として、取得手段が当該正当な電子証明書と共に取得した印刷データに対して上記印刷指令に対応した印刷サービスを実行する。
【００１５】
このように構成された印刷装置によれば、利用権限の範囲を電子証明書に記しているので、装置内部において、利用権限の範囲を表す情報を、安全に保持することができる。
【００１６】
また、このように構成された印刷装置では、内蔵の記憶装置に記憶された電子証明書、及び、印刷指令と共に取得した電子証明書に基づき、その利用権限の範囲に属するサービスを実行するので、電子証明書が発行されていない不特定ユーザにも、一部サービスを利用させることができると共に、電子証明書が発行されたユーザに対しては、電子証明書に基づいてユーザに対応した一層広範囲のサービスを利用させることができる。
【００１７】
また、請求項３記載の印刷装置は、ネットワークを介して利用権限に関する指定情報を取得するための指定情報取得手段と、指定情報取得手段が取得した指定情報により指定される利用権限の範囲を記したディジタル署名付きの電子証明書を生成し、生成した電子証明書を、予め定められた出力先装置に出力する証明書出力手段と、を備える。
【００１８】
上記出力先装置としては、印刷装置が内蔵する記憶装置又は外部の記憶装置を挙げることができる。また、外部の記憶装置としては、携帯型の記憶装置（ＵＳＢメモリ等）を挙げることができる。
【００１９】
また、請求項４記載の印刷装置は、携帯型の記憶装置を着脱自在に接続可能な接続ポートを備える。この印刷装置における証明書出力手段は、接続ポートに接続された携帯型の記憶装置に、上記生成した電子証明書を出力する。一方、取得手段は、携帯型の記憶装置に出力した電子証明書を取得する。
【００２０】
携帯型の記憶装置に電子証明書を記録し、この電子証明書に基づき、サービスの実行／非実行を切り替える本手法では、各ユーザに、電子証明書を記憶させた携帯型の記憶装置を提供することで、各ユーザに対して異なる利用権限を付与することができる。即ち、この発明によれば、ユーザ毎にサービスの実行／非実行を切替可能なシステムを、簡素な構成で実現することができる。
【００２１】
また、上記印刷装置は、出力先装置を、ユーザの指示に従って切替可能な構成にされてもよい。即ち、指定情報取得手段によって取得される指定情報には、出力先装置として、当該印刷装置が内蔵する記憶装置、又は、接続ポートに接続された携帯型の記憶装置を指定する情報が含まれることを前提として、上記印刷装置は、次のように構成されてもよい。
【００２２】
即ち、証明書出力手段は、上記生成した電子証明書を、指定情報取得手段が取得した指定情報が出力先装置として示す記憶装置に出力する構成にされてもよい。
【００２３】
【００２４】
【００２５】
【００２６】
【００２７】
【００２８】
【００２９】
【００３０】
【００３１】
【００３２】
また、上述した印刷装置（請求項１〜請求項４）が備える各手段としての機能は、プログラムによりコンピュータに実現させることができる。
請求項５記載のプログラムは、ネットワークを介して外部装置と通信可能な印刷装置のコンピュータに、外部装置から、印刷指令及び印刷データと共に、印刷サービスの利用権限の範囲が記載された電子証明書をネットワークを介して取得する取得手段と、取得手段により取得された電子証明書が正当な電子証明書であるか否かを、電子証明書に付されたディジタル署名に基づき判断する正当性判断手段と、正当性判断手段により上記取得された電子証明書が正当な電子証明書であると判断され、且つ、印刷指令に対応した印刷サービスが上記正当な電子証明書に記された利用権限の範囲に属していることを条件として、取得手段が正当な電子証明書と共に取得した印刷データに対して印刷指令に対応した印刷サービスを実行する印刷サービス実行手段としての機能を実現させるためのプログラムである。
このプログラムによれば、請求項１記載の印刷装置と同様の効果を得ることができる。
【発明を実施するための最良の形態】
【００３３】
以下、本発明の実施例について、図面と共に説明する。
【実施例１】
【００３４】
図１は、本発明の印刷装置としての機能を備えたディジタル複合機３０を有する第一実施例の通信システム１の構成を表す説明図である。
図１に示すように、本実施例の通信システム１は、ネットワークＮＴに、複数のパーソナルコンピュータ（以下、「ＰＣ」とする。）１０と、ディジタル複合機３０と、が接続された構成にされている。
【００３５】
ＰＣ１０は、各種プログラムを実行するＣＰＵ１１と、作業用メモリとしてのＲＡＭ１２と、ブートプログラム等を記憶するＲＯＭ１３と、ハードディスク装置（ＨＤＤ）１４と、ネットワークＮＴに接続された通信インタフェース１５と、キーボードやポインティングデバイス等からなる操作部１７と、液晶モニタ等で構成される表示部１９と、各種ＵＳＢ（Universal Serial Bus）デバイスを着脱自在に接続可能なＵＳＢインタフェース２１とを備える。
【００３６】
このＰＣ１０は、ハードディスク装置１４に、周知のマルチタスクＯＳを備えると共に、ウェブページを表示処理可能なソフトウェアであるブラウザ等のアプリケーションソフトウェアを有し、操作部１７からの入力信号に従って、対応する処理を実行する。例えば、ブラウザの起動指令が操作部１７を通じて入力されると、ブラウザを起動し、当該ブラウザ専用のウィンドウを表示部１９に表示する。また、このウィンドウに対する操作に従って、例えば、ユーザから指定されたウェブページを、対応するウェブサーバから取得する。そして、このウェブページに基づく画面をウィンドウ内に表示する。尚、本実施例の通信システム１では、複合機３０が、ウェブサーバとしての機能を有する。
【００３７】
図１に示すように、複合機３０は、各種プログラムを実行するＣＰＵ３１と、作業用メモリとしてのＲＡＭ３２と、各種プログラムやデータを記憶するフラッシュメモリ３３と、ネットワークＮＴに接続された通信インタフェース３５と、公衆電話回線網（ＰＳＴＮ）に接続され、外部のファクシミリ装置とファクシミリ通信可能なＦＡＸモデム３７と、レーザ方式又はインクジェット方式にて用紙にカラー又はモノクロ画像を形成する印刷部３９と、原稿載置台に載置された原稿を光学的に読み取り画像データを生成する読取部４１と、ユーザが操作可能な各種キー及び表示部を備えるユーザインタフェース４３と、各種ＵＳＢデバイスを着脱自在に接続可能なＵＳＢインタフェース４５とを備える。
【００３８】
この複合機３０は、ＣＰＵ３１にて各種プログラムを実行し、印刷機能、スキャナ機能、コピー機能、ＦＡＸ送受信機能、ウェブサーバ機能等を実現する。例えば、ＣＰＵ３１は、通信インタフェース３５を通じて外部のＰＣ１０から、印刷データを受信すると、印刷サービス（印刷処理）を実行して、印刷部３９を制御し、この印刷データに基づく印刷画像を用紙に形成する（印刷機能）。尚、ＣＰＵ３１は、モノクロ印刷指令と共に印刷データを受信した場合、モノクロ印刷サービスを実行して、受信した印刷データを、モノクロ印刷し、カラー印刷指令と共に印刷データを受信した場合、カラー印刷サービスを実行して、受信した印刷データを、カラー印刷する。
【００３９】
また、ユーザインタフェース４３に対するユーザの操作により、ユーザインタフェース４３から読取指令が入力されると、ＣＰＵ３１は、スキャナサービス（スキャナ処理）を実行して、読取部４１を制御し、原稿載置台に載置された原稿についての読取画像を表す画像データを生成し、これを通信インタフェース３５を通じて、所定のＰＣ１０に送信する（スキャナ機能）。
【００４０】
また、ＣＰＵ３１は、ユーザインタフェース４３に対するユーザの操作により、ユーザインタフェース４３からコピー指令が入力されると、コピーサービス（コピー処理）を実行し、読取部４１にて、原稿載置台に載置された原稿を読み取り、この読取画像を、印刷部３９にて、用紙に印刷する（コピー機能）。尚、ＣＰＵ３１は、コピー指令として、モノクロコピー指令が入力されると、モノクロコピーサービスを実行して、印刷部３９にて、読取画像をモノクロ印刷し、コピー指令として、カラーコピー指令が入力されると、カラーコピーサービスを実行して、印刷部３９にて、読取画像をカラー印刷する。
【００４１】
その他、ＣＰＵ３１は、ユーザインタフェース４３に対するユーザの操作により、ユーザインタフェース４３からＦＡＸ送信指令が入力されると、ＦＡＸ送信サービス（ＦＡＸ送信処理）を実行し、読取部４１にて、原稿載置台に載置された原稿を読み取り、この読取画像を表すファクシミリデータを生成し、これを、指定された電話番号先のファクシミリ装置に、ＦＡＸモデム３７を通じて送信する（ＦＡＸ送信機能）。
【００４２】
その他、当該複合機３０のＣＰＵ３１は、フラッシュメモリ３３に記憶されたウェブサーバプログラムの実行によりウェブサーバとして機能し、ウェブサーバ配下の特定プログラムに対するアクセスがあると、管理ツール提供サービスを実行して、ユーザ認証した後、管理画面表示用のウェブページを、アクセス元のＰＣ１０に送信する。これによって、ウェブサーバを通じ、管理者に当該複合機管理用のツールを提供する（管理ツール提供機能）。
【００４３】
尚、本実施例の複合機３０は、クライアント証明書又は管理者パスワードにより、管理者を認証する構成にされており、フラッシュメモリ３３に、暗号化された管理者パスワードを有する。また、複合機３０のＣＰＵ３１は、クライアント証明書を発行するための証明書発行プログラムをフラッシュメモリ３３に有する。その他、本実施例の通信システム１は、管理者以外のユーザについても、クライアント証明書を用いてユーザ認証し、複合機３０が有する印刷機能、スキャナ機能、コピー機能、ＦＡＸ送信機能についての利用制限をユーザ毎に行う構成にされている。
【００４４】
図２は、複合機３０により発行されるクライアント証明書の構成を表す説明図であり、図３は、複合機３０のＣＰＵ３１が上記証明書発行プログラムに基づき実行する証明書発行処理を表すフローチャートである。尚、証明書発行処理は、本実施例において、上記管理ツール提供サービスの一つとして実行される。
【００４５】
図２に示すように、複合機３０により発行されるクライアント証明書は、証明書のバージョンを表すバージョン情報と、証明書のシリアル番号と、アルゴリズム識別子と、ディジタル署名した証明書発行者を表す署名者情報と、証明書の有効期間を表す有効期間情報と、証明書所有者を表す所有者情報と、所有者の公開鍵を表す公開鍵情報と、所有者に付与された複合機３０の利用権限の範囲を表す利用権限情報と、ディジタル署名情報とを有する。
【００４６】
周知のようにディジタル署名情報は、クライアント証明書内のその他の情報から導き出されるハッシュ値を、サーバ秘密鍵にて暗号化したものであり、本実施例では、複合機３０のフラッシュメモリ３３が、サーバ秘密鍵及びこれと対となるサーバ公開鍵を有する。即ち、このディジタル署名情報を、サーバ公開鍵にて復号化し、ディジタル署名情報が示すハッシュ値と、クライアント証明書内のその他の情報から導き出せるハッシュ値とを比較すれば、複合機３０は、クライアント証明書が改ざんされたものであるのか否かについて、正確に判断することができる。
【００４７】
また、このクライアント証明書が有する利用権限情報は、図２に示すように、所有者のユーザＩＤと、上記管理ツール提供機能の利用可否を表すパラメータ値と、モノクロ印刷機能の利用可否を表すパラメータ値と、カラー印刷機能の利用可否を表すパラメータ値と、モノクロコピー機能の利用可否を表すパラメータ値と、カラーコピー機能の利用可否を表すパラメータ値と、ＦＡＸ送信機能の利用可否を表すパラメータ値と、スキャナ機能の利用可否を表すパラメータ値と、を備える。尚、各利用可否を表すパラメータには、「利用許可」を表す値（図では「ＯＫ」）及び「利用禁止」を表す値（図では「ＮＧ」）のいずれかが設定される。
【００４８】
本実施例の複合機３０は、通信インタフェース３５を通じて外部のＰＣ１０から証明書発行プログラムへのアクセスがあると、ＣＰＵ３１にて証明書発行処理を実行し、上記クライアント証明書を発行する。
【００４９】
証明書発行処理を開始すると、ＣＰＵ３１は、Ｓ１１０にて認証処理を行い、アクセス元のＰＣ１０を操作するユーザが管理者であるか否かを判断する（Ｓ１２０）。具体的には、管理者パスワードの入力をアクセス元のＰＣ１０を操作するユーザに求めて、アクセス元のＰＣ１０から管理者パスワードを取得し、取得パスワードと、フラッシュメモリ３３が記憶する管理者パスワードとを照合する（Ｓ１１０）。そして、両パスワードが一致する場合には、アクセス元のＰＣ１０を操作するユーザが管理者であると判断し（Ｓ１２０でＹｅｓ）、両パスワードが一致しない場合には、アクセス元のＰＣ１０を操作するユーザが管理者ではないと判断する（Ｓ１２０でＮｏ）。
【００５０】
その他、ＣＰＵ３１は、上記アクセス時にクライアント証明書がＰＣ１０から送信されてきた場合、このクライアント証明書に基づいて、アクセス元のＰＣ１０を操作するユーザが管理者であるか否かを判断する（Ｓ１２０）。具体的には、受信したクライアント証明書が改ざんされたものではなく、クライアント証明書の上記管理ツール提供機能の利用可否を表すパラメータ値が「利用許可」となっている場合には、アクセス元のＰＣ１０を操作するユーザが管理者であると判断し（Ｓ１２０でＹｅｓ）、それ以外の場合には、アクセス元のＰＣ１０を操作するユーザが管理者ではないと判断する（Ｓ１２０でＮｏ）。
【００５１】
そして、アクセス元のＰＣ１０を操作するユーザが管理者ではないと判断すると、ＣＰＵ３１は、当該証明書発行処理を終了し、上記アクセス元のＰＣ１０からのアクセスを拒否する。
【００５２】
一方、アクセス元のＰＣ１０を操作するユーザが管理者であると判断すると、ＣＰＵ３１は、Ｓ１３０に移行し、図４に示すクライアント証明書発行画面表示用のウェブページである証明書発行ページを、アクセス元のＰＣ１０に、通信インタフェース３５を通じて送信する。尚、上記証明書発行ページが、ＰＣ１０にて受信され表示処理されると、表示部１９には、図４に示す構成のクライアント証明書発行画面が表示される。図４は、証明書発行ページに基づいてＰＣ１０のブラウザが表示するクライアント証明書発行画面を表す説明図である。
【００５３】
図４に示すようにクライアント証明書発行画面は、ユーザＩＤ入力用のテキストボックスと、各機能の利用可否を表すパラメータの値設定用のチェックボックスと、クライアント証明書の出力先選択用のラジオボタンと、を有する。
【００５４】
具体的に、クライアント証明書発行画面は、チェックボックスとして、管理ツール提供機能の利用可否を表すパラメータの値設定用のチェックボックスと、モノクロ印刷機能の利用可否を表すパラメータの値設定用のチェックボックスと、カラー印刷機能の利用可否を表すパラメータの値設定用のチェックボックスと、モノクロコピー機能の利用可否を表すパラメータの値設定用のチェックボックスと、カラーコピー機能の利用可否を表すパラメータの値設定用のチェックボックスと、ＦＡＸ送信機能の利用可否を表すパラメータの値設定用のチェックボックスと、スキャナ機能の利用可否を表すパラメータの値設定用のチェックボックスと、を有する。また、クライアント証明書の出力先選択用のラジオボタンとして、出力先をＵＳＢメモリ５０に設定するためのラジオボタンと、出力先を複合機３０の内蔵メモリ（フラッシュメモリ３３）に設定するためのラジオボタンとを備える。
【００５５】
また、このクライアント証明書発行画面は、各入力オブジェクト（上記テキストボックス、チェックボックス、ラジオボタン）の値（入力値）を記したデータ（ＰＯＳＴリクエスト）を送信するための「発行」ボタンを有し、この「発行」ボタンが、ユーザ（管理者）により操作部１７を通じて押下操作されると、ＰＣ１０からは、各入力オブジェクトの値が記されたデータが送信されることになる。
【００５６】
従って、複合機３０のＣＰＵ３１は、Ｓ１３０の処理を終えると、ＰＣ１０から送信されてくる上記データを受信し（Ｓ１４０）、この受信データに従って、クライアント証明書に記述する利用権限情報を生成する。具体的には、テキストボックスの値に従って、ユーザＩＤを記述し、各チェックボックスの値に従って、対応するパラメータの値を記述してなる上述の利用権限情報を生成する（Ｓ１５０）。尚、チェックボックスがチェックされている場合、対応するパラメータ値を「利用許可」に設定し、チェックボックスがチャックされていない場合、対応するパラメータ値を、「利用禁止」に設定する。
【００５７】
また、この処理を終えると、ＣＰＵ３１は、上記生成した利用権限情報を格納したクライアント証明書であって、自装置のサーバ秘密鍵にてディジタル署名した上述のクライアント証明書を作成する（Ｓ１６０）。
【００５８】
そして、Ｓ１６０での処理を終えると、ＣＰＵ３１は、ＰＣ１０からの受信データに含まれるラジオボタンの値（チェック／非チェックを表す値）に基づき、ユーザ（管理者）からクライアント証明書の出力先としてＵＳＢメモリ５０が指定されたか否かを判断する（Ｓ１７０）。即ち、クライアント証明書発行画面にて、ＵＳＢメモリ５０に対応するラジオボタンが選択されている場合には、出力先としてＵＳＢメモリ５０が指定されたと判断する（Ｓ１７０でＹｅｓ）。一方、クライアント証明書発行画面にて、内蔵メモリに対応するラジオボタンが選択された場合には、出力先として内蔵メモリが指定されたと判断する（Ｓ１７０でＮｏ）。
【００５９】
また、出力先として内蔵メモリが指定されたと判断すると（Ｓ１７０でＮｏ）、ＣＰＵ３１は、内蔵メモリとしてのフラッシュメモリ３３に、上記作成したクライアント証明書を書き込み（Ｓ１８０）、その後、Ｓ２４０に移行する。
【００６０】
一方、出力先としてＵＳＢメモリ５０が指定されたと判断すると（Ｓ１７０でＹｅｓ）、ＣＰＵ３１は、Ｓ１９０に移行し、自装置のＵＳＢインタフェース４５にＵＳＢメモリ５０が接続されているか否かを判断する。そして、ＵＳＢインタフェース４５にＵＳＢメモリ５０が接続されていないと判断すると（Ｓ１９０でＮｏ）、エラーメッセージ表示用のウェブページを、アクセス元のＰＣ１０に送信して（Ｓ２００）、当該証明書発行処理を終了する。
【００６１】
これに対し、ＵＳＢインタフェース４５にＵＳＢメモリ５０が接続されていると判断すると（Ｓ１９０でＹｅｓ）、ＣＰＵ３１は、Ｓ２１０に移行し、ＵＳＢインタフェース４５に接続されているＵＳＢメモリ５０からメモリＩＤを読み出す。尚、メモリＩＤとしては、ＵＳＢメモリ５０に記録されている当該ＵＳＢメモリのシリアル番号を用いることができる。
【００６２】
また、メモリＩＤを読み出すと、ＣＰＵ３１は、Ｓ２２０に移行し、読み出したメモリＩＤを用いて上記作成したクライアント証明書を暗号化する。また、Ｓ２２０での処理を終えると、ＣＰＵ３１は、Ｓ２３０に移行し、ＵＳＢインタフェース４５に接続されている上記ＵＳＢメモリ５０に、上記暗号化したクライアント証明書を書き込み、その後、Ｓ２４０に移行する。
【００６３】
また、Ｓ２４０に移行すると、ＣＰＵ３１は、クライアント証明書の発行に成功した旨のメッセージ表示用のウェブページを、アクセス元のＰＣ１０に送信して、当該証明書発行処理を終了する。
【００６４】
尚、この証明書発行処理によりフラッシュメモリ３３に書き込まれたクライアント証明書は、不特定ユーザの利用権限の範囲を表す証明書として機能する。その他、この証明書発行処理によりクライアント証明書が書き込まれたＵＳＢメモリ５０は、対応するユーザに手渡されて、特定ユーザの利用権限の範囲を表す証明書として機能する。
【００６５】
即ち、管理者は、特定のユーザに対し、複合機３０の利用権限を付与したい場合、図５に示すように、ＰＣ１０を通じて、クライアント証明書発行画面を操作し、ユーザに付与する利用権限の範囲を上記チェックボックスを用いて設定する。そして、「ＵＳＢメモリ」のラジオボタンをチェックした状態で、「発行」ボタンを押下操作することで、複合機３０に対し、クライアント証明書のＵＳＢメモリ５０への発行を指示する。この指示を受けると、複合機３０のＣＰＵ３１は、上述したように、ＵＳＢメモリ５０に、指定された利用権限の範囲を表す利用権限情報を付したディジタル署名付きのクライアント証明書を出力する。管理者は、このＵＳＢメモリ５０を、対応するユーザに手渡すことで、その特定ユーザに対し、複合機３０の利用権限を付与する。
【００６６】
また、このようにして特定ユーザに手渡されたＵＳＢメモリ５０は、図６に示すように、複合機３０のＵＳＢインタフェース４５、又は、ＰＣ１０のＵＳＢインタフェース２１に接続されて使用される。
【００６７】
即ち、本実施例の複合機３０は、上記証明書発行処理の実行時以外の期間に、自装置のＵＳＢインタフェース４５にＵＳＢメモリ５０が接続されると、このＵＳＢメモリ５０が記憶するクライアント証明書に基づきユーザ認証し、このクライアント証明書が正当なクライアント証明書である場合には、このクライアント証明書が示す利用権限情報に基づき、ユーザに付与された権限に対応する機能の利用制限を解除する構成にされている（詳細後述）。従って、ユーザは、図６（ａ）に示すように、ＵＳＢメモリ５０を複合機３０のＵＳＢインタフェース４５に接続することによって、自身に付与された利用権限の範囲内で、複合機３０を利用することができる。
【００６８】
その他、本実施例の複合機３０は、印刷指令及び印刷データを受信すると、印刷データに付されたクライアント証明書に基づきユーザ認証し、このクライアント証明書が正当なクライアント証明書であって、印刷指令に対応する機能の利用権限がユーザにあることを示す場合には、受信した印刷データを印刷処理する構成にされている（詳細後述）。従って、ユーザは、図６（ｂ）に示すように、ＵＳＢメモリ５０をＰＣ１０のＵＳＢインタフェース２１に接続し、ＰＣ１０を通じて、このＵＳＢメモリ５０に記憶されたクライアント証明書を印刷データに付して複合機３０に送信することによって、複合機３０に、印刷データを印刷処理させることができる。
【００６９】
次に、図６（ａ）及び図６（ｂ）に示した複合機３０の動作について詳述する。図７は、複合機３０の起動時に、ＣＰＵ３１がフラッシュメモリ３３に記憶されたメインプログラムに基づき、実行を開始する指令受付処理を表すフローチャートである。
【００７０】
指令受付処理を開始すると、ＣＰＵ３１は、まず、複合機３０にて実行可能な各サービス（管理ツール提供サービス、モノクロ印刷サービス、カラー印刷サービス、スキャナサービス、モノクロコピーサービス、カラーコピーサービス、ＦＡＸ送信サービス）の実行禁止フラグを全てオンに設定し、上記全サービスの実行を禁止する（Ｓ３１０）。
【００７１】
また、この処理を終えると、フラッシュメモリ３３にクライアント証明書が書き込まれているか否かを判断し（Ｓ３２０）、フラッシュメモリ３３にクライアント証明書が書き込まれていないと判断すると（Ｓ３２０でＮｏ）、Ｓ３６０に移行する。
【００７２】
一方、フラッシュメモリ３３にクライアント証明書が書き込まれていると判断すると（Ｓ３２０でＹｅｓ）、フラッシュメモリ３３が記憶するクライアント証明書を読み出して、このクライアント証明書の正当性をチェックする（Ｓ３３０）。具体的には、該当するクライアント証明書のディジタル署名情報を自装置のサーバ公開鍵で復号化し、このディジタル署名情報が示すハッシュ値と、クライアント証明書内のその他の情報から導き出したハッシュ値とが一致するか否かを判断する。
【００７３】
そして、ディジタル署名情報が示すハッシュ値と、その他の情報により導き出したハッシュ値とが一致する場合には、フラッシュメモリ３３が記憶するクライアント証明書が、自装置にて発行された改ざんされていない正当なクライアント証明書であると判断し（Ｓ３４０でＹｅｓ）、このクライアント証明書の利用権限情報にて「利用許可」との値が設定されているパラメータに対応するサービスの各実行禁止フラグをオフに設定する（Ｓ３５０）。例えば、モノクロ印刷機能の利用可否を表すパラメータ及びカラー印刷機能の利用可否を表すパラメータが「利用許可」との値を示す場合、ＣＰＵ３１は、これに対応するサービスであるモノクロ印刷サービス及びカラー印刷サービスの実行禁止フラグをオフに設定する。また、このようにしてＳ３５０での処理を終えると、ＣＰＵ３１は、Ｓ３６０に移行する。一方、Ｓ３４０にて、フラッシュメモリ３３が記憶するクライアント証明書が正当なクライアント証明書ではないと判断すると（Ｓ３４０でＮｏ）、ＣＰＵ３１は、Ｓ３５０の処理を実行することなく、Ｓ３６０に移行する。
【００７４】
その他、Ｓ３６０に移行すると、ＣＰＵ３１は、ＵＳＢインタフェース４５にＵＳＢメモリ５０が接続された直後であるか否かを判断する。即ち、ＣＰＵ３１は、現時点において、ＵＳＢインタフェース４５にＵＳＢメモリ５０が接続されてはいるが、前回のＳ３６０の実行時にはＵＳＢインタフェース４５にＵＳＢメモリ５０が接続されていなかった場合、ＵＳＢメモリ５０が接続された直後であると判断する（Ｓ３６０でＹｅｓ）。一方、現時点でＵＳＢインタフェース４５にＵＳＢメモリ５０が接続されていない場合又は前回のＳ３６０でＹｅｓと判断している場合には、ＵＳＢメモリ５０が接続された直後ではないと判断する（Ｓ３６０でＮｏ）。
【００７５】
そして、ＵＳＢインタフェース４５にＵＳＢメモリ５０が接続された直後ではないと判断すると（Ｓ３６０でＮｏ）、ＣＰＵ３１は、Ｓ３８０に移行する。一方、ＵＳＢインタフェース４５にＵＳＢメモリ５０が接続された直後であると判断すると（Ｓ３６０でＹｅｓ）、ＣＰＵ３１は、Ｓ３７０に移行する。
【００７６】
また、Ｓ３７０に移行すると、ＣＰＵ３１は、ＵＳＢインタフェース４５に接続されているＵＳＢメモリ５０にクライアント証明書が書き込まれているか否かを判断し、クライアント証明書が書き込まれていないと判断すると（Ｓ３７０でＮｏ）、Ｓ３８０に移行し、クライアント証明書が書き込まれていると判断すると（Ｓ３７０でＹｅｓ）、Ｓ３９０に移行する。
【００７７】
Ｓ３９０に移行すると、ＣＰＵ３１は、ＵＳＢインタフェース４５に接続されているＵＳＢメモリ５０からメモリＩＤ及びクライアント証明書を読み出し、読み出したメモリＩＤにて、ＵＳＢメモリ５０から読み出したクライアント証明書を復号化する（Ｓ４００）。また、復号化したクライアント証明書に基づいて、このクライアント証明書の正当性を、Ｓ３３０の処理と同様の手法で、チェックする（Ｓ４１０）。
【００７８】
そして、復号化したクライアント証明書が、自装置にて発行された改ざんされていない正当なクライアント証明書であると判断すると（Ｓ４２０でＹｅｓ）、ＣＰＵ３１は、このクライアント証明書の利用権限情報にて「利用許可」との値が設定されているパラメータに対応するサービスの各実行禁止フラグをオフに設定する（Ｓ４３０）。尚、Ｓ４３０においては、既にオフに設定されている実行禁止フラグの状態を維持した状態で、その他のオフに設定すべき実行禁止フラグをオフに設定する。また、このようにしてＳ４３０での処理を終えると、Ｓ３６０に移行する。
【００７９】
一方、復号化したクライアント証明書が、自装置にて発行された改ざんされていない正当なクライアント証明書ではないと判断すると（Ｓ４２０でＮｏ）、ＣＰＵ３１は、Ｓ４３０の処理を実行することなく、Ｓ３６０に移行する。
【００８０】
その他、Ｓ３６０又はＳ３７０でＮｏと判断し、Ｓ３８０に移行すると、ＣＰＵ３１は、ＵＳＢメモリ５０がＵＳＢインタフェース４５から外された直後であるか否かを判断する。即ち、ＣＰＵ３１は、前回のＳ３８０の実行時に、ＵＳＢインタフェース４５にＵＳＢメモリ５０が接続されていたにもかかわらず、現時点においては、ＵＳＢインタフェース４５にＵＳＢメモリ５０が接続されていない場合、ＵＳＢメモリ５０が外された直後であると判断する（Ｓ３８０でＹｅｓ）。一方、現時点においてＵＳＢインタフェース４５にＵＳＢメモリ５０が接続されている場合又は前回のＳ３８０でＹｅｓと判断している場合には、ＵＳＢメモリ５０が外された直後ではないと判断する（Ｓ３８０でＮｏ）。
【００８１】
そして、ＵＳＢメモリ５０がＵＳＢインタフェース４５から外された直後であると判断すると（Ｓ３８０でＹｅｓ）、ＣＰＵ３１は、Ｓ３１０に移行して、全サービスの実行禁止フラグをオンに設定する。
【００８２】
一方、ＵＳＢメモリ５０がＵＳＢインタフェース４５から外された直後ではないと判断すると（Ｓ３８０でＮｏ）、ＣＰＵ３１は、Ｓ４４０に移行し、印刷指令及び印刷データを、通信インタフェース３５を通じて外部のＰＣ１０から受信したか否かを判断する。そして、印刷指令及び印刷データを、外部のＰＣ１０から受信したと判断すると（Ｓ４４０でＹｅｓ）、Ｓ４５０にて、印刷データ受付処理を実行する。尚、図８は、ＣＰＵ３１が実行する印刷データ受付処理を表すフローチャートである。
【００８３】
印刷データ受付処理を開始すると、ＣＰＵ３１は、受信した印刷指令がカラー印刷指令であるか否かを判断し（Ｓ５１０）、受信した印刷指令がカラー印刷指令であると判断すると（Ｓ５１０でＹｅｓ）、Ｓ５２０にて、カラー印刷サービスの実行が許可されているか否かを判断する。ここでは、カラー印刷サービスの実行禁止フラグがオフに設定されている場合、カラー印刷サービスの実行が許可されていると判断し（Ｓ５２０でＹｅｓ）、カラー印刷サービスの実行禁止フラグがオンに設定されている場合、カラー印刷サービスの実行が許可されていないと判断する（Ｓ５２０でＮｏ）。
【００８４】
そして、カラー印刷サービスの実行が許可されていると判断すると（Ｓ５２０でＹｅｓ）、Ｓ５５５にて、カラー印刷サービスを実行し、受信した印刷データに基づくカラー印刷画像を、印刷部３９を通じて用紙に形成する。その後、当該印刷データ受付処理を終了する。
【００８５】
一方、カラー印刷サービスの実行が許可されていないと判断すると（Ｓ５２０でＮｏ）、ＣＰＵ３１は、Ｓ５３０にて、受信した印刷データがクライアント証明書付きの印刷データであるか否かを判断し、受信した印刷データがクライアント証明書付きの印刷データであると判断すると（Ｓ５３０でＹｅｓ）、このクライアント証明書の正当性を、Ｓ３３０と同様の手法でチェックする（Ｓ５４０）。そして、印刷データと共に受信した上記クライアント証明書が正当なクライアント証明書であると判断すると（Ｓ５４５でＹｅｓ）、Ｓ５５０に移行し、印刷データと共に受信したクライアント証明書が正当なクライアント証明書ではないと判断すると（Ｓ５４５でＮｏ）、印刷データ受付処理を終了する。尚、本実施例では、正当な証明書により許可されたサービスの実行のみを対象としている。
【００８６】
また、Ｓ５５０に移行すると、ＣＰＵ３１は、上記印刷データと共に受信したクライアント証明書におけるカラー印刷機能の利用可否を表すパラメータが「利用許可」との値を示しているか否かを判断することにより、印刷データの送信ユーザがカラー印刷サービスの利用権限を有しているか否かを判断し、カラー印刷サービスの利用権限を有していると判断すると（Ｓ５５０でＹｅｓ）、Ｓ５５５に移行して、カラー印刷サービスを実行し、受信した印刷データに基づくカラー印刷画像を、印刷部３９を通じて用紙に形成する。その後、当該印刷データ受付処理を終了する。
【００８７】
一方、印刷データの送信ユーザがカラー印刷サービスの利用権限を有していないと判断すると（Ｓ５５０でＮｏ）、ＣＰＵ３１は、カラー印刷サービスを実行することなく、当該印刷データ受付処理を終了する。
【００８８】
その他、ＣＰＵ３１は、Ｓ５１０において、受信した印刷指令がカラー印刷指令ではなくモノクロ印刷指令であると判断すると（Ｓ５１０でＮｏ）、Ｓ５６０に移行し、モノクロ印刷サービスの実行が許可されているか否かを判断する。ここでは、モノクロ印刷サービスの実行禁止フラグがオフに設定されている場合、モノクロ印刷サービスの実行が許可されていると判断し（Ｓ５６０でＹｅｓ）、モノクロ印刷サービスの実行禁止フラグがオンに設定されている場合、モノクロ印刷サービスの実行が許可されていないと判断する（Ｓ５６０でＮｏ）。
【００８９】
そして、モノクロ印刷サービスの実行が許可されていると判断すると（Ｓ５６０でＹｅｓ）、Ｓ５９５にて、モノクロ印刷サービスを実行し、受信した印刷データに基づくモノクロ印刷画像を、印刷部３９を通じて用紙に形成する。その後、当該印刷データ受付処理を終了する。
【００９０】
一方、モノクロ印刷サービスの実行が許可されていないと判断すると（Ｓ５６０でＮｏ）、ＣＰＵ３１は、Ｓ５７０にて、受信した印刷データがクライアント証明書付きの印刷データであるか否かを判断し、受信した印刷データがクライアント証明書付きの印刷データであると判断すると（Ｓ５７０でＹｅｓ）、このクライアント証明書の正当性を、Ｓ３３０と同様の手法でチェックする（Ｓ５８０）。
【００９１】
そして、印刷データと共に受信した上記クライアント証明書が正当なクライアント証明書であると判断すると（Ｓ５８５でＹｅｓ）、Ｓ５９０に移行し、印刷データと共に受信したクライアント証明書が正当なクライアント証明書ではないと判断すると（Ｓ５８５でＮｏ）、当該印刷データ受付処理を終了する。
【００９２】
また、Ｓ５９０に移行すると、ＣＰＵ３１は、上記印刷データと共に受信したクライアント証明書におけるモノクロ印刷機能の利用可否を表すパラメータが「利用許可」との値を示しているか否かを判断することにより、印刷データの送信ユーザがモノクロ印刷サービスの利用権限を有しているか否かを判断し、モノクロ印刷サービスの利用権限を有していると判断すると（Ｓ５９０でＹｅｓ）、Ｓ５９５にて、受信した印刷データに基づくモノクロ印刷画像を、印刷部３９を通じて用紙に形成する。その後、当該印刷データ受付処理を終了する。
【００９３】
一方、印刷データの送信ユーザがモノクロ印刷サービスの利用権限を有していないと判断すると（Ｓ５９０でＮｏ）、ＣＰＵ３１は、モノクロ印刷サービスを実行することなく、当該印刷データ受付処理を終了する。また、このようにして、Ｓ４５０での印刷データ受付処理を実行すると、ＣＰＵ３１は、Ｓ３６０に移行する。
【００９４】
また、ＣＰＵ３１は、印刷指令及び印刷データを、通信インタフェース３５を通じて外部のＰＣ１０から受信していないと判断すると（Ｓ４４０でＮｏ）、Ｓ４６０に移行して、当該複合機３０のユーザインタフェース４３を通じ、カラーコピーサービス、モノクロコピーサービス、スキャナサービス、及びＦＡＸ送信サービスのいずれかについての実行指令（即ち、カラーコピー指令、モノクロコピー指令、読取指令、及び、ＦＡＸ送信指令のいずれか）の入力があったか否かを判断し（Ｓ４６０）、ユーザインタフェース４３を通じて上記サービスの実行指令の入力がなかったと判断すると、Ｓ３６０に移行する。
【００９５】
一方、ユーザインタフェース４３を通じた上記サービスの実行指令の入力があったと判断すると（Ｓ４６０でＹｅｓ）、ＣＰＵ３１は、Ｓ４７０にて、入力された指令に対応するサービスの実行が許可されているか否かを判断する。具体的には、入力された指令に対応するサービスの実行禁止フラグがオフに設定されている場合、サービスの実行が許可されていると判断し（Ｓ４７０でＹｅｓ）、入力された指令に対応するサービスの実行禁止フラグがオンに設定されている場合、サービスの実行が許可されていないと判断する（Ｓ４７０でＮｏ）。
【００９６】
そして、入力された指令に対応するサービスの実行が許可されていると判断すると（Ｓ４７０でＹｅｓ）、ＣＰＵ３１は、この指令に対応したサービスを実行する（Ｓ４８０）。即ち、カラーコピー指令の入力があった場合には、カラー印刷サービスを実行し、モノクロコピー指令の入力があった場合には、モノクロ印刷サービスを実行する。その他、読取指令の入力があった場合には、スキャナサービスを実行し、ＦＡＸ送信指令の入力があった場合には、ＦＡＸ送信サービスを実行する。その後、Ｓ３６０に移行する。
【００９７】
その他、Ｓ４７０において、入力された指令に対応するサービスの実行が許可されていないと判断すると（Ｓ４７０でＮｏ）、ＣＰＵ３１は、Ｓ４９０に移行し、エラーメッセージを、ユーザインタフェース４３の表示部に表示する。その後、Ｓ３６０に移行する。
【００９８】
以上、第一実施例の通信システム１について説明したが、この通信システム１によれば、複合機３０が、通信インタフェース３５を通じ管理者からクライアント証明書発行画面の入力結果を取得すると（Ｓ１４０：指定情報取得手段に相当）、この入力結果に従って、管理者より指定された利用権限の範囲を示す利用権限情報を記したディジタル署名付きのクライアント証明書（電子証明書）を作成し（Ｓ１５０）、このクライアント証明書を、管理者により指定された出力先装置に出力する（Ｓ１８０，Ｓ２１０〜Ｓ２３０：証明書出力手段に相当）。
【００９９】
即ち、複合機３０は、ＰＣ１０から受信したクライアント証明書発行画面の入力結果に従い、出力先としてＵＳＢメモリ５０（携帯型の記憶装置に相当）が指定されている場合には、ＵＳＢインタフェース４５（接続ポートに相当）に接続されたＵＳＢメモリ５０にクライアント証明書を書き込み、出力先として内蔵メモリが指定されている場合には、内蔵のフラッシュメモリ３３にクライアント証明書を書き込む。尚、ＵＳＢメモリ５０にクライアント証明書を書き込む際には、書込先のＵＳＢメモリ５０に記録された装置（ＵＳＢメモリ）固有の識別コードであるメモリＩＤを読み出し（Ｓ２１０）、このメモリＩＤに基づいてクライアント証明書を暗号化し（Ｓ２２０）、暗号化したクライアント証明書をＵＳＢメモリ５０に書き込む（Ｓ２３０）。
【０１００】
また、複合機３０は、証明書発行処理の実行時以外の期間に、ＵＳＢインタフェース４５にＵＳＢメモリ５０が接続されると（Ｓ３６０でＹｅｓ）、このＵＳＢメモリ５０が記憶するクライアント証明書及びメモリＩＤを取得し（Ｓ３９０）、このメモリＩＤにてＵＳＢメモリ５０から取得したクライアント証明書を復号化して、復号化のクライアント証明書に基づき、ＵＳＢメモリ５０から取得したクライアント証明書が正当なクライアント証明書であるか否かを判断する（Ｓ４００〜Ｓ４２０）。
【０１０１】
そして、取得したクライアント証明書が正当なクライアント証明書であると判断すると（Ｓ４２０でＹｅｓ）、当該複合機が実行可能な複数のサービスの内、上記正当なクライアント証明書に記された利用権限情報が「利用許可」とするサービスの実行を選択的に許可するため、対応するサービスの実行禁止フラグを選択的にオフに設定する（Ｓ４３０）。尚、複合機３０は、この正当なクライアント証明書をＵＳＢメモリ５０から取得可能な期間、継続的に、対応するサービスの実行禁止フラグをオフに維持し、ＵＳＢメモリ５０が複合機３０から外され、このクライアント証明書をＵＳＢメモリ５０から取得できなくなった場合には、上記オフに設定した実行禁止フラグをオンに再設定することにより、正当なクライアント証明書をＵＳＢメモリ５０から取得可能な期間に限定して、利用権限情報が「利用許可」とするサービスの実行を許可する。
【０１０２】
そして、複合機３０は、実行禁止フラグがオンに設定されているサービスについては、ユーザインタフェース４３等を通じてユーザ側から入力される実行指令に従って、これらのサービスを実行し（Ｓ４８０，Ｓ５５５，Ｓ５９５）、実行禁止フラグがオンに設定されているサービスについては、サービスの実行指令がユーザ側から入力されても、これを実行しない。
【０１０３】
このように、本実施例では、複合機３０の利用権限の範囲を、電子証明書（クライアント証明書）に記し、正当な電子証明書に記された利用権限の範囲に属するサービスの実行を、ユーザ側からの指令に従って選択的に実行するため、利用権限の範囲を表す情報が改ざんされることにより、複合機３０が無断使用されてしまうことがない。従って、本実施例によれば、利用権限の範囲を表す情報の改ざん等による複合機３０の無断使用を従来よりも強固に防止することができる。
【０１０４】
また、本実施例によれば、電子証明書をユーザ毎に発行して、ユーザ毎に異なる利用権限を付与しているので、サービスの実行／非実行を切り替える際に、ユーザに対してパスワード等の入力を求めなくて済む。従って、本実施例によれば、ユーザに煩わしい操作を強いることなく、ユーザ毎に、サービスの実行／非実行を切り替えることができる。
【０１０５】
その他、本実施例の複合機３０は、内蔵メモリとしてのフラッシュメモリ３３にクライアント証明書が記憶されている場合、このクライアント証明書をフラッシュメモリ３３から読み出して（Ｓ３３０）、その正当性をチェックし、フラッシュメモリ３３に記憶されたクライアント証明書が正当なクライアント証明書である場合には、このクライアント証明書に記された利用権限情報が「利用許可」とするサービスの実行禁止フラグをオフに設定し（Ｓ３５０）、このクライアント証明書をフラッシュメモリ３３から取得できる期間には、継続的に、対応するサービスの実行を許可する。
【０１０６】
このように、本実施例では、不特定のユーザに対して一部のサービスの実行を選択的に許可する場合でも、利用権限の範囲を表す情報を電子証明書（クライアント証明書）に格納するので、利用権限の範囲を表す情報の改ざん等による複合機３０の無断使用を強固に防止することができる。
【０１０７】
また、本実施例では、フラッシュメモリ３３のクライアント証明書に基づき実行禁止フラグをオフに設定すると共に、ＵＳＢメモリ５０のクライアント証明書に基づき実行禁止フラグをオフに設定するので、クライアント証明書が発行されていない不特定ユーザにも、一部サービスを利用させることができると共に、クライアント証明書が発行されたユーザに対しては、そのクライアント証明書に基づいてユーザに対応した一層広範囲のサービスを利用させることができる。
【０１０８】
その他、本実施例によれば、ＰＣ１０から印刷指令及び印刷データと共にクライアント証明書が送信されてきた場合、通信インタフェース３５を通じて、印刷指令及び印刷データと共にクライアント証明書を受信し（Ｓ４４０：取得手段に相当）、受信したクライアント証明書が正当なクライアント証明書であって、印刷指令に対応するサービスが「利用許可」に設定された利用権限情報を有するクライアント証明書である場合には、印刷指令を受け入れて、対応する印刷サービスを実行し、印刷データに基づく印刷画像を、印刷部３９を通じて用紙に形成する（Ｓ５５５，Ｓ５９５）。
【０１０９】
従って、本実施例によれば、ユーザは、複合機３０にＵＳＢメモリ５０を接続しなくても、通信にてクライアント証明書を送信する程度で、印刷サービスを利用することができる。
【０１１０】
その他、本実施例によれば、ＵＳＢメモリ５０にクライアント証明書を書き込む場合に、メモリＩＤを用いてクライアント証明書を暗号化するので、クライアント証明書が他のＵＳＢメモリ５０にコピーされた場合には、復号が正常に行えるか否かによって、そのクライアント証明書が別のＵＳＢメモリ５０にコピーされたものであるのか否かを知ることができる。従って、この実施例によれば、クライアント証明書という電気的な存在を、ＵＳＢメモリ５０と一対一に対応付けることができ、クライアント証明書の不正コピーによって、複合機３０の不正利用が発生するのを防止することができる。
【０１１１】
尚、第一実施例では、ＵＳＢメモリ５０に記録されたメモリＩＤに基づいてクライアント証明書を暗号化及び復号化する例について説明したが、利用権限情報として、メモリＩＤを記したクライアント証明書を作成しても、上記暗号化の手法と同様の効果が得られる。従って、複合機３０は、メモリＩＤを記したクライアント証明書を作成する構成にされてもよい（第二実施例）。
【実施例２】
【０１１２】
図９は、第二実施例の通信システム１における複合機３０のＣＰＵ３１が実行する証明書発行処理を表すフローチャートであり、図１０は、この証明書発行処理のＳ７３０にて作成されるクライアント証明書の構成を表す説明図である。その他、図１１は、第二実施例において、複合機３０のＣＰＵ３１が実行する指令受付処理を一部抜粋して示したフローチャートである。
【０１１３】
第二実施例の通信システム１は、証明書発行処理及び指令受付処理の内容、並びにクライアント証明書の構成が第一実施例と異なる程度であり、その他の構成については、第一実施例の通信システム１と同一構成であるので、以下では、第二実施例の通信システム１において、複合機３０のＣＰＵ３１が実行する証明書発行処理及び指令受付処理の内容と、クライアント証明書の構成についてのみ説明する。
【０１１４】
第二実施例における複合機３０のＣＰＵ３１は、図９に示す証明書発行処理を開始すると、Ｓ１１０と同様の手法にて認証処理を実行し（Ｓ６１０）、アクセス元のＰＣ１０を操作するユーザが管理者であるか否かを判断する（Ｓ６２０）。そして、アクセス元のＰＣ１０を操作するユーザが管理者ではないと判断すると（Ｓ６２０でＮｏ）、当該証明書発行処理を終了し、上記アクセス元のＰＣ１０からのアクセスを拒否する。
【０１１５】
一方、アクセス元のＰＣ１０を操作するユーザが管理者であると判断すると（Ｓ６２０でＹｅｓ）、ＣＰＵ３１は、図４に示すクライアント証明書発行画面表示用のウェブページ（証明書発行ページ）を、アクセス元のＰＣ１０に、通信インタフェース３５を通じて送信する（Ｓ６３０）。また、この処理を終えると、クライアント証明書発行画面を構成する各入力オブジェクトの値（入力値）が記されたデータ（ＰＯＳＴリクエスト）が、アクセス元のＰＣ１０から送信されてくるまで待機する。
【０１１６】
そして、ＰＣ１０から上記各入力オブジェクトの値が記されたデータを受信すると（Ｓ６４０）、ＣＰＵ３１は、このデータに含まれるラジオボタンの値（チェック／非チェックを表す値）に基づき、ユーザ（管理者）からクライアント証明書の出力先としてＵＳＢメモリ５０が指定されたか否かを判断する（Ｓ６５０）。
【０１１７】
ここで、ＣＰＵ３１は、出力先としてＵＳＢメモリ５０ではなく内蔵メモリが指定されていると判断すると（Ｓ６５０でＮｏ）、上記データが示すテキストボックスの値に従って、ユーザＩＤを記述し、各チェックボックスの値に従って、対応するパラメータの値を記述してなる利用権限情報を生成し（Ｓ６６０）、この利用権限情報を格納したクライアント証明書であって、自装置のサーバ秘密鍵にてディジタル署名した図２に示す構成のクライアント証明書を作成する（Ｓ６７０）。また、この処理を終えると、内蔵メモリとしてのフラッシュメモリ３３に、Ｓ６７０で作成したクライアント証明書を書き込む（Ｓ６８０）。その後、Ｓ７５０に移行する。
【０１１８】
一方、Ｓ６５０において、ユーザ（管理者）からクライアント証明書の出力先としてＵＳＢメモリ５０が指定されたと判断すると（Ｓ６５０でＹｅｓ）、ＣＰＵ３１は、Ｓ６９０に移行し、自装置のＵＳＢインタフェース４５にＵＳＢメモリ５０が接続されているか否かを判断する。そして、ＵＳＢインタフェース４５にＵＳＢメモリ５０が接続されていないと判断すると（Ｓ６９０でＮｏ）、エラーメッセージ表示用のウェブページを、アクセス元のＰＣ１０に送信して（Ｓ７００）、当該証明書発行処理を終了する。
【０１１９】
その他、ＵＳＢインタフェース４５にＵＳＢメモリ５０が接続されていると判断すると（Ｓ６９０でＹｅｓ）、ＣＰＵ３１は、Ｓ７１０に移行し、ＵＳＢインタフェース４５に接続されているＵＳＢメモリ５０からメモリＩＤを読み出した後、Ｓ７２０に移行する。また、Ｓ７２０に移行すると、ＣＰＵ３１は、Ｓ６４０にてＰＣ１０から受信したデータが示すテキストボックスの値に従って、ユーザＩＤを記述し、各チェックボックスの値に従って、対応するパラメータの値を記述した利用権限情報であって、メモリＩＤを更に記述した利用権限情報を生成する。また、Ｓ７２０での処理を終えると、ＣＰＵ３１は、この利用権限情報を格納したクライアント証明書であって、自装置のサーバ秘密鍵にてディジタル署名した図１０に示す構成のクライアント証明書を作成する（Ｓ７３０）。
【０１２０】
即ち、ＣＰＵ３１は、利用権限情報として、所有者のユーザＩＤと、出力先のＵＳＢメモリ５０のメモリＩＤと、管理ツール提供機能の利用可否を表すパラメータ値と、モノクロ印刷機能の利用可否を表すパラメータ値と、カラー印刷機能の利用可否を表すパラメータ値と、モノクロコピー機能の利用可否を表すパラメータ値と、カラーコピー機能の利用可否を表すパラメータ値と、ＦＡＸ送信機能の利用可否を表すパラメータ値と、スキャナ機能の利用可否を表すパラメータ値とを記したクライアント証明書を作成する。尚、Ｓ７３０で作成されるクライアント証明書は、利用権限情報が図２に示すクライアント証明書と異なる他は、このクライアント証明書と同様の構成にされる。
【０１２１】
また、Ｓ７３０でクライアント証明書を作成すると、ＣＰＵ３１は、Ｓ７４０に移行し、ＵＳＢインタフェース４５に接続されている上記ＵＳＢメモリ５０に、作成したクライアント証明書を書き込む。その後、Ｓ７５０に移行する。また、Ｓ７５０に移行すると、ＣＰＵ３１は、クライアント証明書の発行に成功した旨のメッセージ表示用のウェブページを、アクセス元のＰＣ１０に送信し、当該証明書発行処理を終了する。
【０１２２】
その他、ＣＰＵ３１は、第二実施例において、指令受付処理を開始すると、図７に示す指令受付処理と概ね同様の処理を実行するが、Ｓ３９０に移行すると、図１１に示すように、ＵＳＢインタフェース４５に接続されているＵＳＢメモリ５０からメモリＩＤ及びクライアント証明書を読み出し、ＵＳＢメモリ５０から読み出したクライアント証明書の正当性を、Ｓ３３０の処理と同様の手法で、チェックする（Ｓ４１０）。
【０１２３】
そして、ＵＳＢメモリ５０から読み出したクライアント証明書が正当なクライアント証明書ではないと判断すると（Ｓ４２０でＮｏ）、Ｓ３６０に移行し、ＵＳＢメモリ５０から読み出したクライアント証明書が正当なクライアント証明書であると判断すると（Ｓ４２０でＹｅｓ）、Ｓ４２５に移行する。
【０１２４】
また、Ｓ４２５に移行すると、ＣＰＵ３１は、クライアント証明書が示すメモリＩＤが、Ｓ３９０でＵＳＢメモリ５０から読み出したメモリＩＤと一致するか否かを判断し、両メモリＩＤが一致すると判断すると（Ｓ４２５でＹｅｓ）、このクライアント証明書の利用権限情報にて「利用許可」との値が設定されているパラメータに対応するサービスの各実行禁止フラグをオフに設定する（Ｓ４３０）。その後、Ｓ３６０に移行する。一方、両メモリＩＤが一致しないと判断すると（Ｓ４２５でＮｏ）、ＣＰＵ３１は、Ｓ４３０の処理を実行することなく、Ｓ３６０に移行する。
【０１２５】
以上、第二実施例の通信システム１について説明したが、この通信システム１によれば、証明書発行処理において、ＵＳＢメモリ５０にクライアント証明書を出力する際、その出力前に、利用権限情報及び出力先のＵＳＢメモリ５０に記録されたメモリＩＤを記したディジタル署名付きのクライアント証明書を生成し、これをＵＳＢメモリ５０に出力する（Ｓ７１０〜Ｓ７４０）。
【０１２６】
また、本実施例では、ＵＳＢメモリ５０からクライアント証明書を読み出す場合、これと共にメモリＩＤを取得して、このメモリＩＤが、クライアント証明書に記されたメモリＩＤと一致するか否かを判断する（Ｓ３９０〜Ｓ４２５）。そして、クライアント証明書に記されたメモリＩＤと、このクライアント証明書の取得先のＵＳＢメモリ５０のメモリＩＤとが一致しない場合には（Ｓ４２５でＮｏ）、クライアント証明書が複合機３０から発行されたものであって改ざんされていないクライアント証明書であっても、これを正当なクライアント証明書ではないものとして取扱う。従って、本実施例によれば、第一実施例と同様、クライアント証明書の他のＵＳＢメモリ５０への不正コピーによって、複合機３０の不正利用が発生するのを防止することができる。
【０１２７】
また、本発明の印刷装置及びプログラムは、上記実施例に限定されるものではなく、種々の態様を採ることができる。例えば、上記実施例では、複合機３０に本発明の印刷装置としての機能を組み込んだ例について説明したが、本発明は、ディジタル複合機に限定されず、その他の種類の印刷装置に適用することができる。
【図面の簡単な説明】
【０１２８】
【図１】第一実施例の通信システム１の構成を表す説明図である。
【図２】複合機３０が発行するクライアント証明書の構成を表す説明図である。
【図３】ＣＰＵ３１が実行する証明書発行処理を表すフローチャートである。
【図４】証明書発行ページに基づき表示されるクライアント証明書発行画面を表す説明図である。
【図５】ユーザへの利用権限の付与方法を示した説明図である。
【図６】クライアント証明書が書き込まれたＵＳＢメモリ５０の利用方法に関する説明図である。
【図７】ＣＰＵ３１が実行する指令受付処理を表すフローチャートである。
【図８】ＣＰＵ３１が実行する印刷データ受付処理を表すフローチャートである。
【図９】ＣＰＵ３１が実行する第二実施例の証明書発行処理を表すフローチャートである。
【図１０】ＣＰＵ３１がＳ７３０で作成するクライアント証明書の構成を表す説明図である。
【図１１】ＣＰＵ３１が実行する第二実施例の指令受付処理を一部抜粋して示したフローチャートである。
【符号の説明】
【０１２９】
１…通信システム、１０…ＰＣ、１１，３１…ＣＰＵ、１２，３２…ＲＡＭ、１３…ＲＯＭ、１４…ハードディスク装置、１５，３５…通信インタフェース、１７…操作部、１９…表示部、２１，４５…ＵＳＢインタフェース、３０…ディジタル複合機、３３…フラッシュメモリ、３７…ＦＡＸモデム、３９…印刷部、４１…読取部、４３…ユーザインタフェース、５０…ＵＳＢメモリ、ＮＴ…ネットワーク
【図１】
0004124230.tif 000002
【図２】
0004124230.tif 000003
【図３】
0004124230.tif 000004
【図４】
0004124230.tif 000005
【図７】
0004124230.tif 000006
【図８】
0004124230.tif 000007
【図９】
0004124230.tif 000008
【図１０】
0004124230.tif 000009
【図１１】
0004124230.tif 000010
【図５】
0004124230.tif 000011
【図６】
0004124230.tif 000012