(57)【要約】【課題】対象となる周辺機器のユーザ管理モードの情報を、周辺機器制御ソフトウェアが有しなくても、制御可能な周辺機器制御システムを提供する。【解決手段】周辺機器１の属性情報３０１を取得する（Ｓ１７０１）。この属性情報の取得は、ＰＣ（１）２などから属性取得用コマンドを周辺機器１に対して送信し、周辺機器１において、このコマンドを処理することにより行われる。得られた属性情報をＣＲＴ３３に表示する（Ｓ１７０２）。「現在のユーザ管理モード」属性３０２を取得し（Ｓ１７０３）、ＣＲＴ３３に表示する（Ｓ１７０４）。ユーザの入力を待ち（Ｓ１７０５）、ユーザからの入力にしたがって、「現在のユーザ管理モード」属性３０２を設定する（Ｓ１７０６）。この属性情報の設定は、ＰＣ（１）２などから属性設定用コマンドを周辺機器１に対して送信し、周辺機器１において、このコマンドを処理することにより行われる。【選択図】図６
2010186492.tif 000002
【特許請求の範囲】
【請求項１】
周辺機器および外部装置が通信線を介して接続され、該通信線を介して前記外部装置から制御コマンドを送信して前記周辺機器を制御する周辺機器制御システムにおいて、
前記周辺機器の属性情報を保持する属性情報保持手段と、
前記制御コマンドを送信して前記保持された属性情報を取得する取得手段と、
該取得した属性情報に対して所定の属性情報を設定する設定手段とを備え、
該設定される属性情報はユーザ管理モードの情報を含むことを特徴とする周辺機器制御システム。
【請求項２】
前記取得手段は、前記ユーザ管理モードの一覧を取得し、ユーザに前記ユーザ管理モードの選択を促すことを特徴とする請求項１記載の周辺機器制御システム。
【請求項３】
前記取得手段は、現在設定されているユーザ管理モードを取得することを特徴とする請求項１記載の周辺機器制御システム。
【請求項４】
前記取得した現在設定されているユーザ管理モードは、前記制御コマンドにパスワードを含むことが必要なモードであることを特徴とする請求項３記載の周辺機器制御システム。
【請求項５】
前記取得した現在設定されているユーザ管理モードは、前記制御コマンドにユーザＩＤを含むことが必要なモードであることを特徴とする請求項３記載の周辺機器制御システム。
【請求項６】
前記取得した現在設定されているユーザ管理モードは、前記制御コマンドにユーザＩＤとパスワードを含むことが必要なモードであることを特徴とする請求項３記載の周辺機器制御システム。
【請求項７】
ユーザ情報および機器情報を一元管理し、資源に対するアクセスを行うために必要なアクセスチケットを発行するディレクトリサーバを備え、
前記取得した現在設定されているユーザ管理モードは、前記制御コマンドに前記ディレクトリサーバから発行されたアクセスチケットを含むことが必要なモードであることを特徴とする請求項３記載の周辺機器制御システム。
【請求項８】
通信線を介して接続された外部装置から送信される制御コマンドにしたがって制御される周辺機器において、
ユーザ管理モードを含む属性情報を保持する属性情報保持手段と、
該保持された属性情報を前記外部装置に送信する送信手段と、
前記外部装置から送信された前記制御コマンドにしたがって、所定の属性情報を設定する設定手段とを備えたことを特徴とする周辺機器。
【請求項９】
通信線を介して制御コマンドを送信して周辺機器を制御する外部装置において、
前記周辺機器に保持されたユーザ管理モードを含む属性情報を取得する取得手段と、
該取得した属性情報に対し、前記制御コマンドを送信して所定の属性情報を前記周辺機器に設定する設定手段とを備えたことを特徴とする外部装置。
【請求項１０】
通信線を介して接続された外部装置から送信された制御コマンドにしたがって、周辺機器を制御する周辺機器制御方法において、
前記周辺機器のユーザ管理モードを含む属性情報を保持する工程と、
該保持された属性情報を取得する工程と、
該取得した属性情報に対し、前記制御コマンドを送信して所定の属性情報を設定する工程とを有することを特徴とする周辺機器制御方法。
【請求項１１】
通信線を介して接続された外部装置から送信された制御コマンドにしたがって、周辺機器を制御するプログラムを含む周辺機器制御ソフトウェアにおいて、
前記プログラムは、
前記周辺機器のユーザ管理モードを含む属性情報を保持しておく手順と、
該保持された属性情報を取得する手順と、
該取得した属性情報に対し、前記制御コマンドを送信して所定の属性情報を設定する手順とを含むことを特徴とする周辺機器制御ソフトウェア。
【請求項１２】
通信線を介して接続された外部装置から送信された制御コマンドにしたがって、周辺機器を制御するプログラムが記憶された記憶媒体において、
前記プログラムは、
前記周辺機器のユーザ管理モードを含む属性情報を保持しておく手順と、
該保持された属性情報を取得する手順と、
該取得した属性情報に対し、前記制御コマンドを送信して所定の属性情報を設定する。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリンタ、スキャナ、複写機、ファクシミリなどの周辺機器を制御する周辺機器制御システム、周辺機器、外部装置、周辺機器制御方法、周辺機器制御ソフトウェアおよび記憶媒体に関する。
【背景技術】
【０００２】
従来、プリンタなどの周辺機器は１つまたは複数のユーザ管理モードを有している。複数のユーザ管理モードを有する場合、プリンタのコンソールパネル、あるいはネットワークなどの通信線を介して接続されたコンピュータなどの外部装置で動作する周辺機器制御ソフトウェアにより、現在のユーザ管理モードの設定が行われていた。また、このような周辺機器制御ソフトウェアは、内部で保持するユーザ管理モードにしたがって、ユーザ認証情報を制御コマンドに含ませていた。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記従来の周辺機器制御システムでは、以下に掲げる問題があり、その改善が要望された。すなわち、上記周辺機器制御ソフトウェアは、対象とする周辺機器に対し、設定可能なユーザ管理モードに関する情報を保持しておく必要があり、ユーザは周辺機器の種類に応じて複数の周辺機器制御ソフトウェアを用意する必要があった。
【０００４】
複数の周辺機器に関する情報を保持している周辺機器制御ソフトウェアの場合、特に問題は起きにくいが、それでも、周辺機器制御ソフトウェアが保持していないユーザ管理モードを装備した周辺機器が新たに接続された場合、それを制御することはできなかった。
【０００５】
また、制御コマンドの中に含ませるユーザ認証情報は、周辺機器制御ソフトウェア内で保持するユーザ管理モードで判断されるので、特に周辺機器のユーザ管理モードが変更された場合、制御コマンド中に含まれるユーザ認証情報が適切でなくなり、正しく動作しない場合があった。
【０００６】
そこで、本発明は、対象となる周辺機器に対応しているユーザ管理モードの情報を、周辺機器制御ソフトウェアが有していなくとも、この周辺機器を制御することが可能である周辺機器制御システム、周辺機器、外部装置、周辺機器制御方法、周辺機器制御ソフトウェアおよび記憶媒体を提供することを目的とする。
【０００７】
また、本発明は、対象となる周辺機器のユーザ管理モードにしたがって、適切なユーザ認証情報を制御コマンドに含ませることによって、常に周辺機器を正しく動作させることができる周辺機器制御システム、周辺機器、外部装置、周辺機器制御方法、周辺機器制御ソフトウェアおよび記憶媒体を提供することを他の目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明の請求項１に記載の周辺機器制御システムは、周辺機器および外部装置が通信線を介して接続され、該通信線を介して前記外部装置から制御コマンドを送信して前記周辺機器を制御する周辺機器制御システムにおいて、前記周辺機器の属性情報を保持する属性情報保持手段と、前記制御コマンドを送信して前記保持された属性情報を取得する取得手段と、該取得した属性情報に対して所定の属性情報を設定する設定手段とを備え、該設定される属性情報はユーザ管理モードの情報を含むことを特徴とする。
【０００９】
また、前記取得手段は、前記ユーザ管理モードの一覧を取得し、ユーザに前記ユーザ管理モードの選択を促すことを特徴とする。
【００１０】
さらに、前記取得手段は、現在設定されているユーザ管理モードを取得することを特徴とする。
【００１１】
また、前記取得した現在設定されているユーザ管理モードは、前記制御コマンドにパスワードを含むことが必要なモードであることを特徴とする。
【００１２】
さらに、前記取得した現在設定されているユーザ管理モードは、前記制御コマンドにユーザＩＤを含むことが必要なモードであることを特徴とする。
【００１３】
また、前記取得した現在設定されているユーザ管理モードは、前記制御コマンドにユーザＩＤとパスワードを含むことが必要なモードであることを特徴とする。
【００１４】
さらに、ユーザ情報および機器情報を一元管理し、資源に対するアクセスを行うために必要なアクセスチケットを発行するディレクトリサーバを備え、前記取得した現在設定されているユーザ管理モードは、前記制御コマンドに前記ディレクトリサーバから発行されたアクセスチケットを含むことが必要なモードであることを特徴とする。
【００１５】
請求項８に記載の周辺機器は、通信線を介して接続された外部装置から送信される制御コマンドにしたがって制御される周辺機器において、ユーザ管理モードを含む属性情報を保持する属性情報保持手段と、該保持された属性情報を前記外部装置に送信する送信手段と、前記外部装置から送信された前記制御コマンドにしたがって、所定の属性情報を設定する設定手段とを備えたことを特徴とする。
【００１６】
請求項９に記載の外部装置は、通信線を介して制御コマンドを送信して周辺機器を制御する外部装置において、前記周辺機器に保持されたユーザ管理モードを含む属性情報を取得する取得手段と、該取得した属性情報に対し、前記制御コマンドを送信して所定の属性情報を前記周辺機器に設定する設定手段とを備えたことを特徴とする。
【００１７】
請求項１０に記載の周辺機器制御方法は、通信線を介して接続された外部装置から送信された制御コマンドにしたがって、周辺機器を制御する周辺機器制御方法において、前記周辺機器のユーザ管理モードを含む属性情報を保持する工程と、該保持された属性情報を取得する工程と、該取得した属性情報に対し、前記制御コマンドを送信して所定の属性情報を設定する工程とを有することを特徴とする。
【００１８】
請求項１１に記載の周辺機器制御ソフトウェアは、通信線を介して接続された外部装置から送信された制御コマンドにしたがって、周辺機器を制御するプログラムを含む周辺機器制御ソフトウェアにおいて、前記プログラムは、前記周辺機器のユーザ管理モードを含む属性情報を保持しておく手順と、該保持された属性情報を取得する手順と、該取得した属性情報に対し、前記制御コマンドを送信して所定の属性情報を設定する手順とを含むことを特徴とする。
【００１９】
請求項１２に記載の記憶媒体は、通信線を介して接続された外部装置から送信された制御コマンドにしたがって、周辺機器を制御するプログラムが記憶された記憶媒体において、前記プログラムは、前記周辺機器のユーザ管理モードを含む属性情報を保持しておく手順と、該保持された属性情報を取得する手順と、該取得した属性情報に対し、前記制御コマンドを送信して所定の属性情報を設定する手順とを含むことを特徴とする。
【発明の効果】
【００２０】
本発明によれば、ネットワークなどの通信線を介して周辺機器からユーザ管理モードを取得し、ユーザ管理モードの一覧を表示してユーザにその選択を促し、選択されたユーザ管理モードを設定することにより、対象となる周辺機器に対応しているユーザ管理モードの情報を、周辺機器制御ソフトウェアが有していなくとも、この周辺機器を制御することが可能である。
【００２１】
また、外部装置から送信される制御コマンドに、ユーザ認証情報として、パスワード、ユーザＩＤ、ユーザＩＤおよびパスワード、あるいはディレクトリサーバから発行されたアクセスチケットのいずれかを含ませる必要があることを識別できるようにすることで、対象となる周辺機器のユーザ管理モードにしたがって、適切なユーザ認証情報を制御コマンドに含ませることができ、常に周辺機器を正しく動作させることができる。
【００２２】
また、周辺機器制御ソフトウェアにより、ネットワークなどの通信線を介して外部装置からユーザ管理モードを設定することができ、適切なユーザ認証情報を制御コマンドに含ませることができる。その際、設定可能なユーザ管理モードの一覧を表示してユーザにその選択を促すことができる。さらに、周辺制御ソフトウェアにより、入力をユーザに促し、ユーザ入力に応じて、パスワード、ユーザＩＤ、ユーザＩＤおよびパスワード、あるいはディレクトリサーバからのアクセスチケットのいずれかをユーザ認証情報として制御コマンドに含ませることができる。
【図面の簡単な説明】
【００２３】
【図１】第１の実施形態における周辺機器制御システムの構成を示すブロック図である。
【図２】周辺機器（ＭＦＰ１、ＭＦＰ１）の構成を示すブロック図である。
【図３】コントローラ１１のハードウェア構成を示すブロック図である。
【図４】ネットワークシステムを構成するＰＣのハードウェア構成を示すブロック図である。
【図５】周辺機器１で保持されている属性情報を示す図である。
【図６】周辺機器１のユーザ管理モードをＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４から表示・変更する場合の処理手順を示すフローチャートである。
【図７】ステップＳ１７０５におけるユーザ入力待ちの状態でＣＲＴ３３に表示されたユーザインターフェース画面を示す図である。
【図８】周辺機器１に対応するディレクトリサーバをＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４から表示・変更する場合の動作処理手順を示すフローチャートである。
【図９】ステップＳ１８０７におけるユーザ入力待ちの状態でＣＲＴ３３に表示されたユーザインターフェース画面を示す図である。
【図１０】周辺機器１がディレクトリサーバ６に接続できない場合にログインをどの様に許可するかを、ＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４から表示・変更する場合の処理手順を示すフローチャートである。
【図１１】ステップＳ２２０７のユーザ入力待ちの状態でＣＲＴ３３に表示されたユーザインターフェース画面を示す図である。
【図１２】周辺機器１に対してＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４からプリントジョブ、スキャナジョブ、ファックス送信ジョブあるいはコピージョブを発行する処理手順を示すフローチャートである。
【図１３】図１２に続き、周辺機器１に対してＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４からプリントジョブ、スキャナジョブ、ファックス送信ジョブあるいはコピージョブを発行する処理手順を示すフローチャートである。
【図１４】ステップＳ４０３におけるジョブ発行処理手順を示すフローチャートである。
【図１５】周辺機器１が図１４の処理によって発行されたジョブを受信したときのジョブ投入コマンド受信処理手順を示すフローチャートである。
【図１６】図１５に続き、周辺機器１が図１４の処理によって発行されたジョブを受信したときのジョブ投入コマンド受信処理手順を示すフローチャートである。
【図１７】図１４の処理により周辺機器１内で保持されたジョブのデータ構造を示す図である。
【図１８】図１７で示された周辺機器１に保持されたジョブデータの処理手順を示すフローチャートである。
【図１９】図１８に続き、図１７で示された周辺機器１に保持されたジョブデータの処理手順を示すフローチャートである。
【図２０】周辺機器１のＬＣＤ２３に表示されるログイン画面の処理手順を示すフローチャートである。
【図２１】図２０に続き、周辺機器１のＬＣＤ２３に表示されるログイン画面の処理手順を示すフローチャートである。
【図２２】ユーザ情報キャッシュのデータ構造を示す図である。
【図２３】ステップＳ９２４およびＳ９２２における印刷保留ジョブの処理手順を示すフローチャートである。
【図２４】ステップＳ１１０４でＬＣＤ２３に表示されるユーザインターフェース画面を示す図である。
【図２５】周辺機器１がＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４から個々の属性情報を取得あるいは設定するためのアクセスコマンドを受信したときの処理手順を示すフローチャートである。
【図２６】図２５に続き、周辺機器１がＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４から個々の属性情報を取得あるいは設定するためのアクセスコマンドを受信したときの処理手順を示すフローチャートである。
【図２７】周辺機器１に対してＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４から機器管理、ジョブ管理などの管理コマンドを発行する処理手順を示すフローチャートである。
【図２８】図２７に続き、周辺機器１に対してＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４から機器管理、ジョブ管理などの管理コマンドを発行する処理手順を示すフローチャートである。
【図２９】管理コマンドのデータ構造を示す図である。
【図３０】図２２の処理によって生成され、周辺機器１に送信された管理コマンドを周辺機器１が処理する手順を示すフローチャートである。
【図３１】図３０に続き、図２２の処理によって生成され、周辺機器１に送信された管理コマンドを周辺機器１が処理する手順を示すフローチャートである。
【図３２】周辺機器１および周辺機器５のログを集計し、ディレクトリサーバ６のユーザ毎の印刷可能枚数および累積印刷枚数を更新するための処理手順を示すフローチャートである。
【図３３】図１７のステップＳ９２３におけるディレクトリサーバに接続不能時の印刷可能枚数の算出を行う算出処理手順を示すフローチャートである。
【図３４】図３３に続き、図１７のステップＳ９２３におけるディレクトリサーバに接続不能時の印刷可能枚数の算出を行う算出処理手順を示すフローチャートである。
【図３５】後述する管理コマンド生成処理によって生成され、周辺機器１に送信される管理コマンドのデータ構造を示す図である。
【図３６】後述するアクセスチケット設定コマンドの処理によって周辺機器１のＲＡＭ２２内に保持され、アクセスチケットキャッシュのデータ構造を示す図である。
【図３７】後述する管理コマンド生成処理によって生成され、周辺機器１に送信された管理コマンドを、周辺機器１が処理する手順を示すフローチャートである。
【図３８】図３７に続き、後述する管理コマンド生成処理によって生成され、周辺機器１に送信された管理コマンドを、周辺機器１が処理する手順を示すフローチャートである。
【図３９】図２９の処理を実行している周辺機器１に対してＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４から機器管理、ジョブ管理などの管理コマンドを発行する処理手順を示すフローチャートである。
【発明を実施するための形態】
【００２４】
本発明の周辺機器制御システム、周辺機器、外部装置、周辺機器制御方法、周辺機器制御ソフトウェアおよび記憶媒体の実施の形態を図面を参照しながら説明する。
【００２５】
［第１の実施形態］
図１は第１の実施形態における周辺機器制御システムの構成を示すブロック図である。図において、１、５はそれぞれ周辺機器ＭＦＰ１、ＭＦＰ２である。また、２、３、４はそれぞれパーソナルコンピュータＰＣ（１）、ＰＣ（２）、ＰＣ（３）である。ＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４は、ネットワーク１０、もしくはローカルインターフェース経由でＭＦＰ１（１）およびＭＦＰ２（５）に接続されている。ＰＣ（１）、ＰＣ（２）またはＰＣ（３）上では、本発明に関係する周辺機器制御ソフトウェアが動作し、ネットワーク１０経由でＭＦＰ１に対し、プリント、スキャン、コピーあるいはＦＡＸ送受信といったジョブ処理を依頼したり、ＭＦＰ１（１）およびＭＦＰ２（５）の属性情報の問い合わせを行う。
【００２６】
また、６はユーザ情報および機器情報の一元管理機能を有するディレクトリサーザであり、パーソナルコンピュータなどで構成される。このディレクトリサーバ６は、Ｋｅｒｂｅｒｏｓプロトコル（ＲＦＣ１５１０）におけるＫＤＣ（Ｋｅｙ  Ｄｉｓｔｒｉｂｕｔｉｏｎ  Ｓｅｒｖｅｒ）の機能も有しており、Ｋｅｒｂｅｒｏｓプロトコルの規定にしたがって、ＴＧＴ（チケット生成チケット）の発行および指定された資源に対するアクセスを行うために必要なアクセスチケットの発行を行う。
【００２７】
さらに、このディレクトリサーバ６には、ＭＦＰ１（１）およびＭＦＰ２（５）が既に登録されているものとする。このデータの参照および更新は、ＬＤＡＰプロトコル（ＲＦＣ１７７７）を使用することにより、ＰＣ（１）２、ＰＣ（２）３から行うことが可能である。ディレクトリサーバ６で管理されている各ユーザ情報には、ユーザ名、パスワード、ユーザの印刷可能枚数、ユーザの累積印刷枚数が含まれる。また、ディレクトリサーバ６で管理されている各機器情報には、機器名、機器の秘密暗号キーが含まれる。
【００２８】
図２は周辺機器（ＭＦＰ１、ＭＦＰ１）の構成を示すブロック図である。図において、１１は周辺機器を制御するためのコントローラである。１２はコントローラ１１が周辺機器の外部と通信するための通信インターフェースであり、例えば、イーサネット(登録商標)インターフェース、ＩＥＥＥ１２８４インターフェースあるいはその他の通信インターフェースである。
【００２９】
１３はスキャナエンジンであり、コントローラ１１によって制御されている。１４はプリンタエンジンであり、コントローラ１１によって制御されており、例えば、レーザービームプリンタ、インクジェットプリンタあるいはその他のプリンタである。
【００３０】
１５は画像の送受信などの通信制御を行うＦＡＸ機能を実現するＦＡＸボードであり、コントローラ１１によって制御されている。１６はユーザインターフェースであり、ＬＣＤディスプレイおよびキーボードから構成されており、コントローラ１１からの情報表示を行うとともに、ユーザからの指示をコントローラ１１に伝える。
【００３１】
このような構成を有する周辺機器は、プリンタエンジン１４を選択し、プリントジョブの発行を可能にする。また、プリンタエンジン１４およびスキャナエンジン１３を選択し、コピージョブの発行を可能にする。また、プリンタエンジン１４、スキャナエンジン１３、ＦＡＸボード１５を選択し、ＦＡＸ受信ジョブおよびＦＡＸ送信ジョブの発行を可能にする。
【００３２】
図３はコントローラ１１のハードウェア構成を示すブロック図である。コントローラ１１では、ＣＰＵ２１、ＲＡＭ２２、ＬＣＤ２３、キーボード２４、ＲＯＭ２５、通信インターフェース２６、スキャナエンジン２７、プリンタエンジン２８、ＦＡＸボード２９およびＤＩＳＫ３０がシステムバス２０を介して相互に接続されている。
【００３３】
コントローラ１１を制御するプログラムは、ＲＯＭ２５あるいはＤＩＳＫ３０に記憶されており、必要に応じてＲＡＭ２２に読み出され、ＣＰＵ２１によって実行される。また、ＲＯＭ２５あるいはＤＩＳＫ３０には、制御プログラム以外に周辺機器やこの周辺機器で処理されるジョブの機能および状態を示す属性情報、出力の対象となるジョブデータなどが記憶されている。さらに、ＣＰＵ２１はＬＣＤ２３で表示を行い、キーボード２４からユーザの指示を受ける。また、ＣＰＵ２１が通信インターフェース２６を通じて外部と通信を行う。
【００３４】
本実施形態では、特に断らない限り、周辺機器（図２）では、ＣＰＵ２１は、システムバス２０を介してキーボード２４からユーザの入力を受け取り、かつＲＡＭ２２、ＬＣＤ２３、ＲＯＭ２５、通信インターフェース２６、スキャナエンジン２７、プリンタエンジン２８、ＦＡＸボード２９およびＤＩＳＫ３０を制御する。
【００３５】
図４はネットワークシステムを構成するＰＣのハードウェア構成を示すブロック図である。ＰＣでは、ＣＰＵ３１、ＲＡＭ３２、ＣＲＴ３３、キーボード３４、ポインティングデバイス３５、ＲＯＭ３６、ＤＩＳＫ３７および通信インターフェース３８はシステムバス４０を介して相互に接続されている。ＰＣを制御するプログラムは、ＲＯＭ３６もしくはＤＩＳＫ３７に記憶されており、必要に応じてＲＡＭ３２に読み出され、ＣＰＵ３１によって実行される。また、ＣＰＵ３１はＣＲＴ３３を通して表示を行い、キーボード３４およびポインティングデバイス３５からユーザの指示を受ける。また、ＣＰＵ３１は通信インターフェース３６を通じて外部と通信を行う。
【００３６】
本実施形態では、特に断らない限り、ＰＣでは、ＣＰＵ３１がシステムバス４０を介してキーボード３４やポインティングデバイス３５からユーザの入力を受け取り、かつＲＡＭ３２、ＣＲＴ３３、ＲＯＭ３６、ＤＩＳＫ３７、通信インターフェース３８を制御する。また、周辺機器に対するユーザの指示およびユーザへの情報表示は、ローカルなユーザインターフェース１６を通して行ってもよいし、ＰＣ（１）、ＰＣ（２）あるいはＰＣ（３）のようなネットワーク１０に接続されたクライアントとなる機器を通して行ってもよい。
【００３７】
図５は周辺機器１で保持されている属性情報を示す図である。周辺機器２（５）は周辺機器１と同じデータ構造を有するが、保持されている値は異なっている。これらの情報は、ＲＯＭ２５、ＲＡＭ２２あるいはＤＩＳＫ３０に保持されており、後述する処理によりＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４から個々の属性情報を取得あるいは設定することができる。
【００３８】
図において、３０１は、「サポートしているユーザ管理モードのリスト」属性であり、「”ユーザ管理なし”，”パスワード”，”ユーザＩＤ”，”ユーザＩＤとパスワード”，”セキュリティドメインに参加”」の複数の値をリストとして保持している。
【００３９】
３０２は、「現在のユーザ管理モード」属性であり、「セキュリティドメインに参加」を値として保持している。３０３は、「対応可能なディレクトリサーバの種類のリスト」属性であり、値として「”標準ＬＤＡＰサーバ”，”Ａｃｔｉｖｅ  Ｄｉｒｅｃｔｏｒｙ（ＭＳ）”，”ＮＤＳ（Ｎｏｖｅｌｌ）”，”Ｏｐｅｎ  ＬＤＡＰ”」の複数の値をリストとして保持している。
【００４０】
３０４は、「現在対応しているディレクトリサーバの種類」属性であり、「”Ａｃｔｉｖｅ  Ｄｉｒｅｃｔｏｒｙ（ＭＳ）”」を値として保持している。３０５は、「現在対応しているディレクトリサーバのＩＰアドレス」属性であり、「１２３．５６．５４．２１」を値として保持している。３０６は、「機器の秘密暗号キー」属性であり、「０ｘ３４ｑ４ｂｆｆｃｄｃａ００１」を値として保持している。この値は、「現在のユーザ管理モード」属性が「セキュリティドメインに参加」の場合に有効となるものであり、ディレクトリサーバ６から発行されたアクセスチケットを解釈するために使用される。
【００４１】
３０７は、「ディレクトリサーバ接続不可時に使用許可するかどうか」属性であり、「ＴＲＵＥ」を値として保持している。３０８は、「ディレクトリサーバ接続不可時に使用する場合の制限の種類のリスト」属性であり、「”無制限”、”時間制限”、”時間制限＆固定最大枚数で制限”、”時間制限＆最大枚数で制限”、”固定最大枚数で制限”、”最大枚数で制限”、”ログイン毎に制限”」の複数の値をリストとして保持している。
【００４２】
３０９は、「現在のディレクトリサーバ接続不可時に使用する場合の制限の種類」属性であり、「時間制限」を値として保持している。３１０は、「時間制限の長さ」属性であり、「４８時間」を値として保持している。３１１は、「最大枚数の日毎の削減割合」属性であり、「３０」を値として保持している。３１２は、「最大枚数」属性であり、「１００」を値として保持している。３１３は、「ログイン毎の最大枚数」属性であり、「２０」を値として保持している。
【００４３】
図６は周辺機器１のユーザ管理モードをＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４から表示・変更する場合の処理手順を示すフローチャートである。この処理プログラムはＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４上で動作する。まず、周辺機器１の属性情報３０１を取得する（ステップＳ１７０１）。この属性情報の取得は、ＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４から属性取得用コマンドを周辺機器１に対して送信し、周辺機器１において、このコマンドを処理することにより行われる。そして、得られた属性情報をＣＲＴ３３に表示する（ステップＳ１７０２）。さらに、属性情報である「現在のユーザ管理モード」属性３０２を取得し（ステップＳ１７０３）、ＣＲＴ３３に表示する（ステップＳ１７０４）。
【００４４】
ユーザの入力を待ち（ステップＳ１７０５）、ユーザからの入力にしたがって、属性情報である「現在のユーザ管理モード」属性３０２を設定し（ステップＳ１７０６）、処理を終了する。この属性情報の設定は、ＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４から属性設定用コマンドを周辺機器１に対して送信し、周辺機器１において、このコマンドを処理することにより行われる。
【００４５】
図７はステップＳ１７０５におけるユーザ入力待ちの状態でＣＲＴ３３に表示されたユーザインターフェース画面を示す図である。図中、１０１はユーザが選択可能なユーザ管理モードの一覧（属性３０１）を表示している。現在設定されているユーザ管理モードの属性３０２は図中、１０２で反転表示されている。ユーザは、所望のユーザ管理モードを選択して反転表示させた上で、ＯＫボタン１０３を押すことにより、ステップＳ１７０６の処理を実行してユーザ管理モードの設定を行う。
【００４６】
尚、図６の処理手順の実行は、ＰＣの代わりに、ユーザ管理モードを変更する対象である周辺機器１自身のコントローラ１１で行われ、図７の表示も周辺機器に装備されているユーザインターフェース１６上で行われるようにしてもよい。また、他の周辺機器２（５）上で実行・表示されるようにしてもよい。
【００４７】
図８は周辺機器１に対応するディレクトリサーバをＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４から表示・変更する場合の動作処理手順を示すフローチャートである。この処理手順は、ＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４上で行われる。
【００４８】
まず、属性情報３０３を取得する（ステップＳ１８０１）。この属性情報の取得は、ＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４から属性取得用コマンドを周辺機器１に対して送信し、周辺機器１において、後述する処理手順にしたがってこのコマンドを処理することにより行われる。得られた属性情報をＣＲＴ３３に表示する（ステップＳ１８０２）。
【００４９】
さらに、属性情報３０４を取得し（ステップＳ１８０３）、得られた属性情報３０４をＣＲＴ３３に表示する（ステップＳ１８０４）。属性情報３０５を取得し（ステップＳ１８０５）、得られた属性情報３０５をＣＲＴ３３に表示する（ステップＳ１８０６）。
【００５０】
ユーザの入力を待ち（ステップＳ１８０７）、ユーザからの入力にしたがって、属性情報３０４、３０５を設定する（ステップＳ１８０８）。この属性情報の設定は、ＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４から属性設定用コマンドを周辺機器１に対して送信し、周辺機器１において、後述する処理手順にしたがってこのコマンドを処理することにより行われる。
【００５１】
図９はステップＳ１８０７におけるユーザ入力待ちの状態でＣＲＴ３３に表示されたユーザインターフェース画面を示す図である。図中、２０１は、ユーザが選択可能なディレクトリサーバの種類の一覧（属性３０３）を表示している。現在設定されているディレクトリサーバの種類（属性３０４）は、図中、２０２で反転表示されている。さらに、アドレス部２０３には、現在設定されているディレクトリサーバのＩＰアドレス３０５が表示されている。ユーザは、所望のディレクトリサーバの種類を選択して反転表示させ、所望のＩＰアドレスをアドレス部２０３に入力した上で、ＯＫボタン２０４を押すことにより、ステップＳ１８０８の処理を実行し、対応するディレクトリサーバの設定を行う。
【００５２】
尚、図８に示す処理の実行は、ＰＣの代わりに、対応するディレクトリサーバを変更する対象である周辺機器１自身のコントローラ１１で行われ、図９に示す表示も周辺機器に装備されているユーザインターフェース１６で行われるようにしてもよい。また、他の周辺機器２（５）上で実行・表示されるようにしてもよい。
【００５３】
図１０は周辺機器１がディレクトリサーバ６に接続できない場合にログインをどの様に許可するかを、ＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４から表示・変更する場合の処理手順を示すフローチャートである。この処理手順はＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４上で行われる。
【００５４】
まず、属性情報である「ディレクトリサーバ接続不可時に使用する場合の制限の種類のリスト」属性３０８を取得する（ステップＳ２２０１）。属性情報の取得は、ＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４から属性取得用コマンドを周辺機器１に対して送信し、周辺機器１において、後述する処理手順にしたがってこのコマンドを処理することにより行われる。得られた属性情報をＣＲＴ３３に表示する（ステップＳ２２０２）。
【００５５】
属性情報である「現在のディレクトリサーバ接続不可時に使用する場合の制限の種類」属性３０９を取得し（ステップＳ２２０３）、得られた属性情報をＣＲＴ３３に表示する（ステップＳ２２０４）。さらに、属性情報である「ディレクトリサーバ接続不可時に使用許可するかどうか」属性３０７を取得する（ステップＳ２２０５）。得られた属性情報をＣＲＴ３３に表示する（ステップＳ２２０６）。
【００５６】
そして、ユーザの入力を待ち（ステップＳ２２０７）、ユーザからの入力にしたがって属性情報３０９、３０７を設定し（ステップＳ２２０８）、処理を終了する。属性情報の設定は、ＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４から属性設定用コマンドを周辺機器１に対して送信し、周辺機器１において、後述する処理手順にしたがってこのコマンドを処理することにより行われる。
【００５７】
図１１はステップＳ２２０７のユーザ入力待ちの状態でＣＲＴ３３に表示されたユーザインターフェース画面を示す図である。図中、２１０２は、「Ｄｉｒｅｃｔｏｒｙ  Ｓｅｒｖｅｒ接続不可時に使用する場合の制限の種類のリスト」属性３０８の内容を表示しており、「現在のＤｉｒｅｃｔｏｒｙ  Ｓｅｒｖｅｒ接続不可時に使用する場合の制限の種類」属性３０９の値は、図中、２１０３で反転表示されている。さらに、「Ｄｉｒｅｃｔｏｒｙ  Ｓｅｒｖｅｒ接続不可時に使用許可するかどうか」属性３０７の値がチェックボックス２１０１に表示されている。ユーザは、所望の設定を行った上で、ＯＫボタン２１０４を押すことにより、ステップＳ２２０８の処理を実行して属性情報の設定を行う。
【００５８】
尚、図１０に示す処理の実行は、ＰＣの代わりに、設定を変更する対象である周辺機器１自身のコントローラ１１で行われ、図１１に示す表示も周辺機器に装備されているユーザインターフェース１６で行われるようにしてもよい。さらに、他の周辺機器２（５）上で実行・表示されるようにしてもよい。
【００５９】
図１２および図１３は周辺機器１に対してＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４からプリントジョブ、スキャナジョブ、ファックス送信ジョブあるいはコピージョブを発行する処理手順を示すフローチャートである。この処理はＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４上で行われる。
【００６０】
まず、周辺機器１が保持する属性情報である「現在のユーザ管理モード」属性３０２を取得する（ステップＳ４０１）。属性情報３０２の値が「ユーザ管理なし」であるか否かを判別する（ステップＳ４０２）。判別の結果、ユーザ管理なしである場合、ジョブに必要な他の情報をジョブに設定した上で周辺機器１に対してジョブを発行する（ステップＳ４０３）。この後、処理を終了する。
【００６１】
一方、ステップＳ４０２で、ユーザ管理ありである場合、属性情報３０２の値が「パスワード」であるか否かを判別する（ステップＳ４０４）。判別の結果、パスワードである場合、ＣＲＴ３３上にパスワード入力を促すユーザインターフェースを表示する（ステップＳ４０５）。そして、ステップＳ４０３において、入力されたパスワードおよびジョブに必要な他の情報をジョブに設定した上で、周辺機器１に対してジョブを発行する。
【００６２】
一方、ステップＳ４０４で判別の結果、パスワードでない場合、属性情報３０２の値が「ユーザＩＤ」であるか否かを判別する（ステップＳ４０６）。判別の結果、ユーザＩＤである場合、ＣＲＴ３３にユーザＩＤ入力を促すユーザインターフェースを表示する（ステップＳ４０７）。そして、ステップＳ４０３において、入力されたユーザＩＤおよびジョブに必要な他の情報をジョブに設定した上で、周辺機器１に対してジョブを発行する。
【００６３】
一方、ステップＳ４０６で判別の結果、ユーザＩＤでない場合、属性情報３０２の値が「ユーザＩＤとパスワード」であるか否かを判別する（ステップＳ４０８）。判別の結果、ユーザＩＤとパスワードである場合、ＣＲＴ３３にユーザＩＤとパスワード入力を促すユーザインターフェースを表示する（ステップＳ４０９）。そして、ステップＳ４０３において、入力されたユーザＩＤとパスワードおよびジョブに必要な他の情報をジョブに設定した上で、周辺機器１に対してジョブを発行する。
【００６４】
一方、ステップＳ４０８で判別の結果、ユーザＩＤとパスワードでない場合、使用しているＰＣにおいて、ユーザはディレクトリサーバ６が管理するセキュリティドメインに既にログインしているか否かを判別する（ステップＳ４１０）。この判別は、使用しているＰＣのオペレーティングシステムに対して問い合わせることによって行われる。判別の結果、ログイン済みでない場合、ＣＲＴ３３にユーザＩＤとパスワード入力を促すユーザインターフェースを表示し（ステップＳ４１１）、これらの情報をディレクトリサーバ６にＫｅｒｂｅｒｏｓプロトコルを使用して送ることにより、ＴＧＴ（チケット生成チケット）情報を取得する（ステップＳ４１３）。
【００６５】
一方、ステップＳ４１０の判別結果、ログイン済みである場合、既にログインしているので、オペレーティングシステムに対して現在のセッションで使用しているＴＧＴを要求して取得する（ステップＳ４１２）。
【００６６】
ステップＳ４１２あるいはＳ４１３において取得したＴＧＴを使用し、オペレーティングシステムによって保持されているユーザ名、あるいはステップＳ４１１で入力されたユーザ名に該当するユーザの印刷可能枚数情報をＫｅｒｂｅｒｏｓプロトコルおよびＬＤＡＰプロトコルによりディレクトリサーバ６から取得する（ステップＳ４１４）。
【００６７】
このあと、印刷可能枚数が１枚以上であるか否かを判別し（ステップＳ４１５）、判別の結果、１枚以上でなく印刷できない場合、ジョブ発行ができない旨を表すユーザインターフェース画面をＣＲＴ３３に表示し（ステップＳ４１６）、処理を終了する。
【００６８】
一方、ステップＳ４１５の判別結果、印刷可能枚数が１枚以上で印刷可能である場合、ステップＳ４１２あるいはＳ４１３において取得したＴＧＴおよびジョブ発行先の周辺機器１を特定する識別子のパラメータをディレクトリサーバ６に対してＫｅｂｅｒｏｓプロトコルによって送信し、周辺機器１に対するアクセスチケットを取得する（ステップＳ４１７）。ここで取得したアクセスチケットは、ユーザ名、ユーザＩＤ、ユーザの印刷可能枚数、アクセスチケットの有効期限に関する情報を、周辺機器１の秘密暗号キーの属性情報３０６によって暗号化したものとなっている。アクセスチケット内部のデータフォーマットおよび使用される暗号方式（アルゴリズム）は、現在対応しているディレクトリサーバの種類（属性情報３０４）によって一意に予め決められている。
【００６９】
そして、ステップＳ４１７で取得したアクセスチケットおよびジョブに必要な他の情報をジョブに設定した上で、周辺機器１に対してジョブを発行し（ステップＳ４１８）、処理を終了する。
【００７０】
図１４はステップＳ４０３におけるジョブ発行処理手順を示すフローチャートである。まず、ジョブに必要な属性について属性設定コマンドのパラメータを設定する（ステップＳ５０２）。このパラメータは設定対象の属性名とそれに対する値とから構成されている。ステップＳ５０２で作成された属性設定コマンドを周辺機器１に対して送信する（ステップＳ５０３）。必要なジョブ属性の設定が完了したか否かを判別し（ステップＳ５０４）、完了していない場合、ステップＳ５０２の処理を繰り返す。
【００７１】
一方、ステップＳ５０４で必要なジョブ属性の設定が完了した場合、ジョブデータ送信コマンドによりアプリケーションなどで作成された画像データなど、ジョブ処理の対象となるデータをこの周辺機器に送信する（ステップＳ５０５）。ジョブ投入コマンドの送信完了を示すジョブ投入完了通知コマンドを送信し（ステップ５０６）、処理を終了する。
【００７２】
図１５および図１６は周辺機器１が図１４の処理によって発行されたジョブを受信したときのジョブ投入コマンド受信処理手順を示すフローチャートである。この処理はジョブを構成するコマンドを受信する度に周辺機器１によって実行される。
【００７３】
受信したコマンドおよびそのパラメータを解析する（ステップ６０１）。この解析の結果、受信したコマンドが属性設定コマンドであるか否かを判別する（ステップ６０２）。受信したコマンドが属性設定コマンドである場合、属性が周辺機器１に解釈可能であるか否かを判別する（ステップＳ６０３）。
【００７４】
解釈可能である場合、ステップ６０１で得られた解析結果にしたがって、指定された属性名と属性値の対を、ＲＡＭ２２またはＤＩＳＫ３０にジョブデータとして保存し（ステップＳ６０４）、処理を終了する。一方、ステップＳ６０３で解釈不可能である場合、受信した属性設定コマンドで指定された属性は設定不可能であり、属性が設定できなかったことを返信し（ステップＳ６１６）、処理を終了する。
【００７５】
一方、ステップＳ６０２で、受信したコマンドが属性設定コマンドでない場合、ステップＳ６０１で得られた解析結果から受信コマンドがジョブデータ送信コマンドであるか否か判別する（ステップＳ６１１）。ジョブデータ送信コマンドである場合、コマンドに続いて受信するジョブデータをＲＡＭ２２あるいはＤＩＳＫ３０に保存し（ステップ６１２）、処理を終了する。
【００７６】
一方、ステップＳ６１１で、ジョブデータ送信コマンドでない場合、ステップ６０１で得られた解析結果から受信コマンドがジョブ投入終了通知コマンドであるか否かを判別する（ステップＳ６１３）。ジョブ投入終了通知コマンドである場合、ＲＡＭ２２あるいはＤＩＳＫ３０に保持されたジョブデータの処理を開始する（ステップＳ６１４）。一方、ジョブ投入終了通知コマンドでない場合、受信コマンドはその他のコマンドであり、その他のコマンドに依存した処理を行い（ステップ６１５）、処理を終了する。
【００７７】
図１７は図１５および図１６の処理により周辺機器１内で保持されたジョブのデータ構造を示す図である。このジョブは、ジョブの機能・属性を表す属性のリスト７０１とジョブの処理対象となるデータを表すジョブデータ７０２とから構成される。ジョブデータ７０２は、ジョブの種別によってはなくてもよい。属性のリスト７０１は、属性名７１１とこれに対応する属性値７１２との対のリストとなっている。
【００７８】
図において、７２１はジョブが印刷ジョブであることを表す。７２２はジョブの開始モードが保留であることを表す。７２３はユーザ管理モードが「セキュリティドメインに参加」であることを表しており、ジョブのユーザ情報としてアクセスチケット７２６を使用することを示している。７２４はユーザ管理モードが「ユーザＩＤ」または「ユーザＩＤとパスワード」である場合、ユーザＩＤが設定される属性である。７２５はユーザ管理モードが「パスワード」または「ユーザＩＤとパスワード」である場合、パスワードが設定される属性である。７２６はユーザ管理モードが「セキュリティドメインに参加」である場合、アクセスチケットが設定される属性である。尚、属性７２４、７２５、７２６としては、属性７２３の内容にしたがって必要なものだけをジョブデータに設定してもよい。
【００７９】
図１８および図１９は図１７で示された周辺機器１に保持されたジョブデータの処理手順を示すフローチャートである。この処理は周辺機器１上で行われる。まず、属性情報（現在のユーザ管理モード）３０２を取得する（ステップＳ８０１）。属性情報３０２の値が「ユーザ管理なし」であるか否かを判別する（ステップＳ８０２）。
【００８０】
判別の結果、ユーザ管理なしの場合、属性７２３、７２４、７２５、７２６を除く属性の処理を行い（ステップＳ８０３）、これらの属性に基づき、ジョブデータ処理を行う（ステップＳ８１０）。ジョブの処理結果をログに記録し（ステップＳ８１１）、処理を終了する。このログはＲＡＭ２２あるいはＤＩＳＫ３０に保存される。
【００８１】
一方、ステップＳ８０２の判別の結果、ユーザ管理ありの場合、属性情報３０２の値が「パスワード」であるか否かを判別する（ステップＳ８０４）。判別の結果、パスワードである場合、予めＲＡＭ２２あるいはＤＩＳＫ３０に保持されているパスワード値と属性情報７２５との比較を行い（ステップＳ８０５）、合致していた場合、ステップＳ８０３でジョブの処理を継続する。一方、合致しなかった場合、ジョブの処理を中止する。
【００８２】
一方、ステップＳ８０４の判別結果、パスワードでない場合、属性情報３０２の値が「ユーザＩＤ」であるか否かを判別する（ステップＳ８０６）。判別の結果、ユーザＩＤである場合、予めＲＡＭ２２あるいはＤＩＳＫ３０に保持されているユーザＩＤ値と属性情報７２４との比較を行い（ステップＳ８０７）、合致していた場合、ステップＳ８０３でジョブの処理を継続する。一方、合致しなかった場合、ジョブの処理を中止する。
【００８３】
ステップＳ８０６の判別結果、ユーザＩＤでない場合、属性情報３０２の値が「ユーザＩＤとパスワード」であるか否かを判別する（ステップＳ８０８）。判別の結果、「ユーザＩＤとパスワード」である場合、予めＲＡＭ２２またはＤＩＳＫ３０に保持されているユーザＩＤ値およびパスワード値と、属性情報７２４、７２５とそれぞれの比較を行い（ステップＳ８０９）、両者が合致していた場合、ステップＳ８０３でジョブの処理を継続する。合致しなかった場合、ジョブの処理を中止する。
【００８４】
一方、ステップＳ８０８の判別結果、「ユーザＩＤとパスワード」でない場合、アクセスチケットの値７２６を、属性情報３０６である秘密暗号キーを使用して解読する（ステップＳ８１２）。そして、アクセスチケットが有効であるか否かを判別する（ステップＳ８１３）。アクセスチケットの値を解読できなかった場合、あるいはアクセスチケット内で保持される印刷可能枚数が値０である場合、ステップＳ８１３でアクセスチケットは無効であると判別し、ジョブデータを破棄し（ステップＳ８１４）、処理を終了する。
【００８５】
一方、ステップＳ８１３において、アクセスチケットが有効であると判別された場合、アクセスチケット内のユーザＩＤに該当するユーザの印刷可能枚数情報をＫｅｒｂｅｒｏｓプロトコルおよびＬＤＡＰプロトコルによりディレクトリサーバ６から取得する（ステップＳ８１５）。
【００８６】
印刷可能枚数が１枚以上で印刷可能であるか否かを判別し（ステップＳ８１６）、印刷不可能である場合、ジョブデータを破棄し（ステップＳ８１７）、処理を終了する。一方、ステップＳ８１６の判別結果、印刷可能である場合、属性値７２３、７２４、７２５、７２６を除く属性の処理を行い（ステップＳ８１８）、これらの属性に基づき、ジョブデータ処理を行う（ステップＳ８１９）。尚、この処理において、ステップＳ８１５の処理から得られる印刷可能枚数を越えないように監視し、最大印刷可能枚数を越えた場合、ジョブデータの処理を異常終了させる。ジョブが正常終了した場合および異常終了した場合のいずれの場合も、ジョブの処理結果をログに記録し（ステップＳ８２０）、処理を終了する。ログには、ユーザＩＤおよびジョブで印刷した枚数が記録され、ＲＡＭ２２またはＤＩＳＫ３０に保存される。
【００８７】
尚、本実施形態では、図１５および図１６の処理において、一旦、ジョブデータを周辺機器１の中に構築した後、改めて図１８および図１９の処理において、ジョブデータの処理を行っているが、他の実施形態として、図１５および図１６と図１８および図１９の処理を合体させ、ジョブの解析と同時にジョブの処理を行うようにしてもよい。
【００８８】
また、本実施形態では、ステップＳ８１３でアクセスチケット内の印刷可能枚数を判別し、さらに、ステップＳ８１５、Ｓ８１６においてディレクトリサーバ６に保持されているユーザの印刷可能枚数を判別しているが、他の実施形態として、ステップＳ８１３におけるアクセスチケット内の印刷可能枚数の判別、あるいはステップＳ８１５、Ｓ８１６におけるディレクトリサーバ６に保持されているユーザの印刷可能枚数の判別のどちらか一方を省略してもよい。
【００８９】
また、本実施形態では、ジョブの結果の記録をログとして、ステップＳ８２０において周辺機器内１内に保持しているが、ディレクトリサーバ６に保持されている、このユーザの印刷可能枚数および累積印刷枚数をジョブで印刷した枚数によって更新してもよい。印刷可能枚数の更新は、ディレクトリサーバ６に保持されているユーザＩＤによって示されるユーザの印刷可能枚数および累積印刷枚数をＬＤＡＰプロトコルにより取得し、この印刷可能枚数からジョブで印刷した枚数を減じ、更に累積印刷枚数にジョブで印刷した枚数を加え、得られたこれらの値をＬＤＡＰプロトコルによりディレクトリサーバ６に設定することにより、行われる。
【００９０】
図２０および図２１は周辺機器１のＬＣＤ２３に表示されるログイン画面の処理手順を示すフローチャートである。この処理は周辺機器１上で行われる。まず、属性情報（現在のユーザ管理モード）３０２を取得する（ステップＳ９０１）。属性情報３０２の値が「ユーザ管理なし」であるか否かを判別する（ステップＳ９０２）。
【００９１】
判別の結果、ユーザ管理なしである場合、ログイン情報をＲＡＭ２２に保存する（ステップＳ９０３）。ログイン情報には、ログインした時点でのユーザ管理モード、ユーザＩＤ、印刷可能枚数が保持されている。印刷可能枚数はログイン期間内でコンソールから発行されたプリントジョブ、コピージョブなどの印刷を伴うジョブで使用した印刷枚数により順次更新され、印刷可能枚数が値０になった時点でジョブは終了する。
【００９２】
ステップＳ９０３において、印刷可能枚数は無限大に設定される。ログイン情報内のユーザＩＤはジョブで使用した印刷枚数と共にログに記録される。ステップＳ９０３の処理後、印刷保留ジョブの処理を行い（ステップＳ９２４）、処理を終了する。
【００９３】
一方、ステップＳ９０２の判別結果、ユーザ管理ありの場合、属性情報３０２の値が「パスワード」であるか否かを判別する（ステップＳ９０４）。判別の結果、パスワードありの場合、ＬＣＤ２３にパスワード入力を促すユーザインターフェース画面を表示し、入力されたパスワードと予めＲＡＭ２２またはＤＩＳＫ３０に保持されているパスワード値との比較を行い（ステップＳ９０５）、合致していた場合、ステップＳ９０３でログインの処理を継続する。合致しなかった場合、ログイン不可として処理を中止する。
【００９４】
一方、ステップＳ９０４の判別結果、パスワードなしの場合、属性情報３０２の値が「ユーザＩＤ」であるか否かを判別する（ステップＳ９０６）。ユーザＩＤである場合、ＬＣＤ２３にユーザＩＤ入力を促すユーザインターフェース画面を表示し、入力されたユーザＩＤを予めＲＡＭ２２またはＤＩＳＫ３０に保持されているユーザＩＤ値との比較を行い（ステップＳ９０７）、合致していた場合、ステップＳ９０３でログインの処理を継続する。合致しなかった場合、ログイン不可として処理を中止する。
【００９５】
一方、ステップＳ９０６の判別結果、ユーザＩＤでない場合、属性情報３０２の値が「ユーザＩＤとパスワード」であるか否かを判別する（ステップＳ９０８）。判別の結果、ユーザＩＤとパスワードである場合、ＬＣＤ２３にユーザＩＤとパスワード入力を促すユーザインターフェース画面を表示し、入力されたユーザＩＤとパスワードを予めＲＡＭ２２またはＤＩＳＫ３０に保持されているユーザＩＤ値とパスワード値との比較を行い（ステップＳ９０９）、合致していた場合、ステップＳ９０３でログインの処理を継続する。合致しなかった場合、ログイン不可として処理を中止する。
【００９６】
ステップＳ９０８の判別結果、ユーザＩＤとパスワードでない場合、属性情報３０５で示されるディレクトリサーバへのアクセスを試み、接続可能であるか否かを判別する（ステップＳ９１０）。
【００９７】
アクセス可能である場合、ＬＣＤ２３にユーザ名とパスワード入力を促すユーザインターフェース画面を表示し（ステップＳ９１２）、入力されたユーザ名とパスワードを使用してＫｅｒｂｅｒｏｓプロトコルによりディレクトリサーバ６からアクセスチケットを取得する（ステップＳ９１４）。
【００９８】
一方、ユーザ名とパスワードが誤っていた場合など、ディレクトリサーバ６からユーザ名またはパスワードが不正であるとのエラーが返信された場合、ステップＳ９１２において、再度、ユーザ名とパスワードの入力を促すユーザインターフェース画面を表示する。
【００９９】
そして、ディレクトリサーバから取得したアクセスチケットを秘密暗号キー３０６を使用して解読する（ステップＳ９１５）。アクセスチケットの有効性を判別する（ステップＳ９１６）。この判別は、チケットが有効期限以内であるか否か、および印刷可能枚数が１枚以上であるか否かを調べることにより行われる。ステップＳ９１６の判別結果、アクセスチケットが有効でない場合、このユーザ名では機器を現在使用することができないことを表すユーザインターフェース画面をＬＣＤ２３に表示し（ステップＳ９１７）、処理を終了する。
【０１００】
一方、ステップＳ９１６の判別の結果、アクセスチケットが有効である場合、ログイン情報の保存およびユーザ情報キャッシュの更新を行う（ステップＳ９２５）。ログイン情報のうち、印刷可能枚数については、アクセスチケットで保持されていた枚数を設定する。図２２はユーザ情報キャッシュのデータ構造を示す図である。このユーザ情報キャッシュは、ＲＡＭ２２またはＤＩＳＫ３０に保持されている。ユーザ情報キャッシュの更新は、アクセスチケット取得する際に使用したユーザ名とパスワード、アクセスチケット内のユーザＩＤと印刷可能枚数、およびログインの日時をデータとして追加することにより行われる。既に同じユーザ名がユーザ情報キャッシュ内に存在する場合、既存情報の更新を行う。そして、ステップＳ９２５の処理後、印刷保留ジョブの処理を行い（ステップＳ９２２）、処理を終了する。
【０１０１】
一方、ステップＳ９１０において、ディレクトリサーバ６にアクセス不能な場合、属性情報（ディレクトリサーバ接続不可時に使用許可するかどうか）３０７を取得し、サーバ接続不可でも利用可能であるか否かを判別する（ステップＳ９１１）。使用許可されない場合、現在ログインすることができないことを表すユーザインターフェース画面をＬＣＤ２３上に表示し（ステップＳ９２０）、処理を終了する。
【０１０２】
一方、ステップＳ９１１で使用不許可である場合、ＬＣＤ２３にユーザ名とパスワード入力を促すユーザインターフェース画面を表示し（ステップＳ９１８）、入力されたユーザ名とパスワードの組がＲＡＭ２２またはＤＩＳＫ３０に保持されているユーザ情報キャッシュ内に存在するか否かを判別する（ステップＳ９１９）。この判別の結果、ユーザ情報キャッシュ内に存在しない場合、このユーザ名では機器を現在使用することができないことを表すユーザインターフェース画面をＬＣＤ２３上に表示し（ステップＳ９２１）、処理を終了する。
【０１０３】
一方、ステップＳ９１９の判別の結果、ユーザ名とパスワードの組がユーザ情報キャッシュの中に存在する場合、後述する処理によって印刷可能枚数の算出を行い、この値およびユーザＩＤをログイン情報として保存する（ステップＳ９２３）。また、ログイン情報内のユーザ管理モードには「セキュリティドメインに参加（ディレクトリサーバに接続不能）」の値が設定される。ステップＳ９２３の処理後、印刷保留ジョブの処理を行い（ステップＳ９２２）、処理を終了する。
【０１０４】
このログイン処理で保存されたログイン情報は、ログインセッション内のジョブ発行において動作の制限および記録のために使用される。すなわち、ログイン情報内の印刷可能枚数を越えて印刷が行われた場合、ジョブを中止する。またジョブ内で印刷された印刷枚数はログイン情報の印刷可能枚数から引かれる。
【０１０５】
さらに、ログイン情報内のユーザ管理モードが「セキュリティドメインに参加（ディレクトリサーバに接続不能）」である場合、機器で保持されている属性情報「Ｄｉｒｅｃｔｏｒｙ  Ｓｅｒｖｅｒ接続不可時に使用する場合の制限の種類のリスト」３０８の内容にしたがって、最大印刷枚数３１２またはユーザ情報キャッシュの印刷可能枚数１０１３の値からジョブ内で印刷した枚数を減ずることにより、値を更新する。ログイン情報内のユーザＩＤは、ログインセッション内で発行されたジョブで印刷した枚数と共にログに記録される。そして、ユーザがログオフした時点で、ログイン情報は破棄される。
【０１０６】
尚、本実施形態では、ディレクトリサーバに接続可能な場合でも、ステップＳ９２５において、ログイン情報はログインした時点での印刷可能枚数を保持し、ログイン期間内でコンソールから発行されたジョブによってのみ印刷可能枚数が更新されるが、ディレクトリサーバに接続可能な場合、ジョブの発行直前にディレクトリサーバで保持されている、このユーザの印刷可能枚数を取得し、これにより印刷可能枚数を制限することも可能である。この場合、ステップＳ９２５で保持されるログイン情報にＴＧＴを含ませ、これによってジョブの発行直前にディレクトリサーバ６に保持されているユーザの印刷可能枚数をＫｅｒｂｅｒｏｓプロトコルおよびＬＤＡＰプロトコルにより取得する。
【０１０７】
図２０および図２１の処理で更新されるユーザ情報キャッシュのデータは、前述したようにＲＡＭ２２またはＤＩＳＫ３０に保持されている。データは１行が１レコードの集合として表されており、１レコードはユーザ名１０１０、パスワード１０１１、ユーザＩＤ１０１２、印刷可能枚数１０１３およびログイン日時１０１４から構成されている。
【０１０８】
図２３はステップＳ９２４およびＳ９２２における印刷保留ジョブの処理手順を示すフローチャートである。この処理は周辺機器１上で行われる。周辺機器１内で印刷の実行が保留されているジョブの一覧を取得する（ステップＳ１１０１）。
【０１０９】
図２０および図２１で保持されたログイン情報内のユーザＩＤと、ステップＳ１１０１で取得した各ジョブが属性として含まれるユーザＩＤとを比較し、両者が合致するジョブのリストを作成する（ステップＳ１１０２）。ここで比較するジョブのユーザＩＤは、ジョブ内にアクセスチケット７２６が存在する場合、アクセスチケットを解読することにより取得して使用され、そうでない場合、ジョブ内に含まれるユーザＩＤ７２４が使用される。
【０１１０】
ステップＳ１１０２の処理の結果、リストが空であるか否かを判別し（ステップＳ１１０３）、判別の結果、空でない場合、処理を終了する。
【０１１１】
一方、ステップＳ１１０３で空である場合、ユーザＩＤが合致したジョブの一覧をユーザインターフェース画面としてＬＣＤ２３に表示する（ステップＳ１１０４）。図２４はステップＳ１１０４でＬＣＤ２３に表示されるユーザインターフェース画面を示す図である。図中、１２０２はステップＳ１１０２で作成されたジョブのリストを表示している。１２０３はジョブを実行させるためのＯＫボタンであり、１２０４はジョブを実行させないでユーザインターフェース画面を閉じるキャンセルボタンである。
【０１１２】
そして、ＯＫボタン１２０３、キャンセルボタン１２０４のどちらが押されたかを判別し（ステップＳ１１０５）、キャンセルボタンが押された場合、ユーザインターフェース画面を閉じて終了する。一方、ＯＫボタンが押された場合、ステップＳ１１０２で生成したリスト中にあるジョブを実行し（ステップＳ１１０５）、処理を終了する。
【０１１３】
図２５および図２６は周辺機器１がＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４から個々の属性情報を取得あるいは設定するためのアクセスコマンドを受信したときの処理手順を示すフローチャートである。まず、受信したコマンドおよびそのパラメータを解析する（ステップＳ１３０１）。
【０１１４】
この解析の結果から受信コマンドが属性獲得コマンドであるか否かを判別する（ステップＳ１３０２）。属性獲得コマンドである場合、属性獲得コマンドによって指定された属性が獲得可能であるか否かを判別する（ステップＳ１３０３）。属性が獲得可能である場合、周辺機器内に保持する属性の値を取得し（ステップＳ１３０４）、取得した属性値を返信コマンドのパラメータにセットし、属性獲得コマンドに対する返信コマンドをドライバソフトウェアに送信し（ステップＳ１３０５）、処理を終了する。
【０１１５】
一方、ステップ１３０３で属性が獲得可能でない場合、属性の獲得に失敗したことをドライバソフトウェアに通知する処理を行い（ステップＳ１３１７）、処理を終了する。
【０１１６】
また一方、ステップＳ１３０２で属性獲得コマンドでない場合、ステップ１３０１での解析の結果から受信コマンドが属性値変更コマンドであるか否かを判別する（ステップＳ１３１１）。属性値変更コマンドである場合、属性値変更コマンドによって指定された属性が変更可能であるか否かを判別する（ステップＳ１３１２）。
【０１１７】
変更可能である場合、指定されたコマンドパラメータにしたがって、指定された属性を指定された属性値に変更し（ステップＳ１３１３）、属性値の変更が成功したことをドライバソフトウェアに通知する処理を行い（ステップＳ１３１４）、処理を終了する。一方、変更不可能である場合、属性値の変更に失敗したことをドライバソフトウェアに通知する処理を行い（ステップＳ１３１５）、処理を終了する。一方、ステップＳ１３１１で属性変更コマンドでない場合、受信コマンドはその他のコマンドであり、その他のコマンドに依存した処理を行い（ステップＳ１３１６）、処理を終了する。
【０１１８】
図２７および図２８は周辺機器１に対してＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４から機器管理、ジョブ管理などの管理コマンドを発行する処理手順を示すフローチャートである。この処理はＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４上で実行される。まず、周辺機器１が保持する属性情報（現在のユーザ管理モード）３０２を取得する（ステップＳ１４０１）。
【０１１９】
属性情報３０２の値が「ユーザ管理なし」であるか否かを判別する（ステップＳ１４０２）。判別の結果、ユーザ管理なしである場合、図２９で示される管理コマンドを生成し、周辺機器１に対して送信する（ステップＳ１４０３）。図２９は管理コマンドのデータ構造を示す図である。図において、１５０１はユーザ管理モードを表し、ユーザＩＤ１５０２、パスワード１５０３、アクセスチケット１５０４のうち、どの情報が有効であるかを示す。また、１５０５はコマンドの種別を表す。さらに、１５０６はコマンドに必要なパラメータ１５０７の長さを表す。
【０１２０】
周辺機器１は、受信した管理コマンドを図３０および図３１に示される処理手順によって処理し、その結果を送信する。周辺機器１から送られた返信を処理する（ステップＳ１４１７）。この処理は、ステップＳ１４０３によって送られた管理コマンドの処理によって異なり、特に管理コマンドが周辺機器内で保持されているジョブの一覧を取得するためのコマンドである「ＬｉｓｔＪｏｂｓ」であった場合、返信に含まれているジョブの一覧をＣＲＴ３３にユーザインターフェース画面として表示する。この後、本処理を終了する。
【０１２１】
一方、ステップＳ１４０２の判別結果、ユーザ管理ありの場合、属性情報３０２の値が「パスワード」であるか否かを判別する（ステップＳ１４０４）。判別の結果、パスワードある場合、ＣＲＴ３３にパスワード入力を促すユーザインターフェース画面を表示する（ステップＳ１４０５）。そして、ステップＳ１４０３において入力されたパスワードを設定した管理コマンドを生成し、周辺機器１に対して送信する。
【０１２２】
一方、ステップＳ１４０４の判別結果、パスワードなしの場合、属性情報３０２の値が「ユーザＩＤ」であるか否かを判別する（ステップＳ１４０６）。判別の結果、ユーザＩＤであった場合、ＣＲＴ３３にユーザＩＤ入力を促すユーザインターフェース画面を表示する（ステップＳ１４０７）。そして、ステップＳ１４０３において入力されたユーザＩＤを設定した管理コマンドを生成し、周辺機器１に対して送信する。
【０１２３】
一方、ステップＳ１４０６の判別の結果、ユーザＩＤでない場合、属性情報３０２の値が「ユーザＩＤとパスワード」であるか否かを判別する（ステップＳ１４０８）。判別の結果、ユーザＩＤとパスワードである場合、ＣＲＴ３３にユーザＩＤとパスワード入力を促すユーザインターフェースを表示する（ステップＳ１４０９）。そして、ステップＳ１４０３において、入力されたユーザＩＤとパスワードを設定した管理コマンドを生成し、周辺機器１に対して送信する。
【０１２４】
一方、ステップＳ１４０８の判別結果、ユーザＩＤとパスワードでない場合、使用しているＰＣにおいて、ユーザはディレクトリサーバ６が管理するセキュリティドメインに既にログインしているか否かを判別する（ステップＳ１４１０）。この判別は、使用しているＰＣのオペレーティングシステムに対して問い合わせることによって行われる。
【０１２５】
判別の結果、ログイン済みでない場合、ＣＲＴ３３にユーザＩＤとパスワード入力を促すユーザインターフェース画面を表示し（ステップＳ１４１１）、これらの情報をディレクトリサーバ６にＫｅｒｂｅｒｏｓプロトコルを使用して送ることにより、ＴＧＴ（チケット生成チケット）情報を取得する（ステップＳ１４１３）。
【０１２６】
一方、ステップＳ１４１０の判別結果、ログイン済みの場合、既にログインしているので、オペレーティングシステムに対して現在のセッションで使用しているＴＧＴを要求して取得する（ステップＳ１４１２）。
【０１２７】
ステップＳ１４１２またはＳ１４１３において取得したＴＧＴおよびジョブ発行先の周辺機器１を特定する識別子（パラメータ）をディレクトリサーバ６に対してＫｅｂｅｒｏｓプロトコルによって送信し、周辺機器１に対するアクセスチケットを取得する（ステップＳ１４１４）。ここで取得したアクセスチケットは、ユーザ名、ユーザＩＤ、ユーザの印刷可能枚数、アクセスチケットの有効期限に関する情報を、周辺機器１の秘密暗号キー３０６によって暗号化したものとなっている。アクセスチケット内部のデータフォーマットおよび使用される暗号方式（アルゴリズム）は、現在対応しているディレクトリサーバの種類３０４によって一意に予め決められている。
【０１２８】
ステップＳ１４１４で取得したアクセスチケットを設定した管理コマンドを生成し、周辺機器１に対して送信する（ステップＳ１４１５）。この後、ステップＳ１４１７と同じ返信の処理を行う（ステップＳ１４１６）。この後、処理を終了する。
【０１２９】
図３０および図３１は図２７および図２８の処理によって生成され、周辺機器１に送信された管理コマンドを周辺機器１が処理する手順を示すフローチャートである。この処理は周辺機器１上で実行される。
【０１３０】
まず、属性情報（現在のユーザ管理モード）３０２を取得する（ステップＳ１６０１）。属性情報３０２の値が「ユーザ管理なし」であるか否かを判別する（ステップＳ１６０２）。判別の結果、ユーザ管理なしの場合、値０を管理コマンド内のユーザＩＤ１５０２に設定し（ステップＳ１６０３）、ステップＳ１６１３以降のコマンドの種別にしたがった処理を行う。
【０１３１】
一方、ステップＳ１６０２の判別結果、ユーザ管理ありの場合、属性情報３０２の値が「パスワード」であるか否かを判別する（ステップＳ１６０４）。判別の結果、パスワードである場合、予めＲＡＭ２２またはＤＩＳＫ３０に保持されているパスワード値とパスワード１５０３との比較を行い、合致していた場合、値０を管理コマンド内のユーザＩＤ１５０２に設定する（ステップＳ１６０５）。この後、ステップＳ１６１３以降のコマンドの種別にしたがった処理を行う。合致しなかった場合、エラーを返信し、管理コマンドの処理を中止する。
【０１３２】
一方、ステップＳ１６０４の判別結果、パスワードでない場合、属性情報３０２の値が「ユーザＩＤ」であるか否かを判別する（ステップＳ１６０６）。判別の結果、ユーザＩＤである場合、予めＲＡＭ２２またはＤＩＳＫ３０に保持されているユーザＩＤ値とユーザＩＤ１５０２との比較を行う（ステップＳ１６０７）。合致していた場合、ステップＳ１６１３以降のコマンドの種別にしたがった処理を行う。合致しなかった場合、エラーを返信し、管理コマンドの処理を中止する。
【０１３３】
一方、ステップＳ１６０６の判別結果、ユーザＩＤでない場合、属性情報３０２の値が「ユーザＩＤとパスワード」であるか否かを判別する（ステップＳ１６０８）。判別の結果、ユーザＩＤとパスワードである場合、予めＲＡＭ２２またはＤＩＳＫ３０に保持されているユーザＩＤ値およびパスワード値と、ユーザＩＤ１５０２およびパスワード１５０３との比較をそれぞれ行い（ステップＳ１６０７）、両者が合致していた場合、ステップＳ１６１３以降のコマンドの種別にしたがった処理を行う。合致しなかった場合、エラーを返信し、管理コマンドの処理を中止する。
【０１３４】
一方、ステップＳ１６０８で、ユーザＩＤとパスワードでない場合、アクセスチケット１５０４の値を秘密暗号キー３０６を使用して解読する（ステップＳ１６１０）。解読の結果、アクセスチケットの有効性および有効期限を判別し（ステップＳ１６１１）、判別の結果、アクセスチケットが有効である場合、アクセスチケット内のユーザＩＤを管理コマンド内のユーザＩＤ１５０２に設定し、ステップＳ１６１３以降のコマンドの種別にしたがった処理を行う。一方、ステップＳ１６１１の判別結果、アクセスチケットが有効でない場合、エラーを返信し（ステップＳ１６１２）、管理コマンドの処理を終了する。
【０１３５】
ステップＳ１６１３以降の処理では、まず、コマンドの種別１５０５が「ＬｉｓｔＪｏｂｓ」（ジョブの一覧を取得する）であるか否かを判別する（ステップＳ１６１３）。判別の結果、コマンドの種別１５０５が「ＬｉｓｔＪｏｂｓ」である場合、周辺機器１内に保持されているジョブの一覧を取得する（ステップＳ１６１４）。このとき、「現在のユーザ管理モード」３０２が「セキュリティドメインに参加」の場合、各ジョブのアクセスチケット７２６を秘密暗号キー３０６によって解読し、得られたユーザＩＤをジョブのユーザＩＤ７２４にセットしておく。
【０１３６】
そして、ステップＳ１６１４に取得されたジョブのユーザＩＤ７２４と、管理コマンド内に含まれるユーザＩＤ１５０２との比較を行い、両者が合致しないジョブのジョブ名を空白に変換する（ステップＳ１６１５）。ステップＳ１６１５で得られたジョブリストを返信し（ステップＳ１６１６）、処理を終了する。
【０１３７】
一方、ステップＳ１６１３の判別結果、コマンドの種別１５０５が「ＣａｎｃｅｌＪｏｂ」（指定されたジョブをキャンセルする）であるか否かを判別する（ステップＳ１６１７）。判別の結果、コマンドの種別１５０５が「ＣａｎｃｅｌＪｏｂ」でない場合、機器管理コマンドの処理を行い（ステップＳ１６１９）、処理を終了する。このステップＳ１６１９における機器管理コマンドの処理では、コマンド種別１５０５によって場合分けすることにより、複数の機器管理コマンドの処理を行ってもよい。
【０１３８】
ステップＳ１６１７の判別結果、指定されたジョブの情報を取得する（ステップＳ１６１８）。このとき、「現在のユーザ管理モード」３０２が「セキュリティドメインに参加」である場合、ジョブのアクセスチケット７２６を秘密暗号キー３０６によって解読し、得られたユーザＩＤをジョブのユーザＩＤ７２４にセットしておく。
【０１３９】
そして、ジョブのユーザＩＤ７２４と、管理コマンド内に含まれるユーザＩＤ１５０２との比較を行い（ステップＳ１６２０）、両者が合致しない場合、管理コマンドの実行失敗を返信し（ステップＳ１６２３）、処理を終了する。一方、ステップＳ１６２０で両者が合致した場合、指定されたジョブをキャンセルし（ステップＳ１６２１）、管理コマンドの実行成功を返信し（ステップＳ１６２２）、処理を終了する。
【０１４０】
尚、ステップＳ１６２１の処理を変更することにより、ジョブのアクセス制御機能が付加されたジョブキャセル以外のジョブ管理（例えば、ジョブの一時停止、再開、割り込み、優先度の向上、優先度の低下など）を行わせることも可能である。
【０１４１】
図３２は周辺機器１および周辺機器５のログを集計し、ディレクトリサーバ６のユーザ毎の印刷可能枚数および累積印刷枚数を更新するための処理手順を示すフローチャートである。この処理はディレクトリサーバ６で実行される。まず、対象となる周辺機器からログを取得する（ステップＳ１９０１）。
【０１４２】
ログの情報からユーザＩＤ毎に印刷した枚数を合算する（ステップＳ１９０２）。ディレクトリサーバ６から各ユーザ毎の印刷可能枚数と累積印刷枚数をＬＤＡＰプロトコルにより取得し、得られた枚数を印刷可能枚数から減算し、更に累積印刷枚数に加え、得られたこれらの結果をＬＤＡＰプロトコルによってディレクトリサーバ６に設定する（ステップＳ１９０３）。これにより、ディレクトリサーバ６の各ユーザ毎の印刷可能枚数および累積印刷枚数は更新される。
【０１４３】
このように、図３２の処理を、周辺機器１および周辺機器５を対象として行うことにより、２台の周辺機器に対する印刷可能枚数および累積印刷枚数がディレクトリサーバ６によって集中管理される。
【０１４４】
尚、他の実施形態として、ジョブで使用した印刷枚数をログに保存せず、ジョブの終了毎にディレクトリサーバ６に接続することにより、ディレクトリサーバ６のデータを更新する場合、図３２の処理を実行する必要は無い。
【０１４５】
図３３および図３４は図２０および図２１のステップＳ９２３におけるディレクトリサーバに接続不能時の印刷可能枚数の算出を行う算出処理手順を示すフローチャートである。この処理は周辺機器１上で実行される。まず、現在の印刷可能枚数の制限の種類３０９を取得する（ステップＳ２００１）。
【０１４６】
制限の種類３０９が「無制限」であるか否かを判別する（ステップＳ２００２）。判別の結果、無制限である場合、印刷可能枚数を無制限に設定し（ステップＳ２００３）、処理を終了する。一方、ステップＳ２００２の判別の結果、無制限でない場合、制限の種類３０９が「時間制限」、「時間制限＆固定最大枚数で制限」または「時間制限＆最大枚数で制限」のいずれであるか否かを判別する（ステップＳ２００４）。判別の結果、いずれである場合、ユーザ情報キャッシュ内のユーザの最終ログイン日時１０１４を取得し（ステップＳ２００５）、この日時と現在の日時との時間差が時間制限の長さ３１０で指定されている値以下であるか否かを判別する（ステップＳ２００６）。
【０１４７】
指定されている値以下である場合、印刷可能枚数を値０に設定し（ステップＳ２００７）、処理を終了する。一方、ステップＳ２００４の判別の結果、「時間制限」、「時間制限＆固定最大枚数で制限」または「時間制限＆最大枚数で制限」のいずれでもない場合、あるいはステップＳ２００６の制限時間内である場合、制限の種類３０９が「固定最大枚数で制限」または「時間制限＆固定最大枚数で制限」のいずれであるか否かを判別する（ステップＳ２００８）。
【０１４８】
「固定最大枚数で制限」または「時間制限＆固定最大枚数で制限」のいずれである場合、最大枚数３１２の値を印刷可能枚数に設定し（ステップＳ２０１０）、処理を終了する。一方、ステップＳ２００８の判別結果、「固定最大枚数で制限」または「時間制限＆固定最大枚数で制限」のいずれでもない場合、制限の種類３０９が「最大枚数で制限」または「時間制限＆最大枚数で制限」のいずれであるか否かを判別する（ステップＳ２００９）。「最大枚数で制限」または「時間制限＆最大枚数で制限」のいずれである場合、次式（１）により枚数を算出し、印刷可能枚数として設定し（ステップＳ２０１１）、処理を終了する。
【０１４９】
印刷可能枚数＝ユーザ情報キャッシュ内の印刷可能枚数１０１３  −  最大枚数の日毎の削減割合×最後にログインしてからの時間（日数）  ……（１）
ここで、最後にログインしてからの時間（日数）は、ユーザ情報キャッシュのログイン日時１０１４から現在の日時を引いた時間を、値２４で割って小数点以下を切り捨てたものである。
【０１５０】
一方、ステップＳ２００９の判別結果、「最大枚数で制限」または「時間制限＆最大枚数で制限」のいずれでもない場合、ログイン毎の最大枚数３１３を印刷可能枚数に設定し（ステップＳ２０１２）、処理を終了する。
【０１５１】
尚、本実施形態では、図６、図８、図１０のフローチャートに示す処理手順によって、それぞれ「サポートしているユーザ管理モードのリスト」、「対応可能なＤｉｒｅｃｔｏｒｙ  Ｓｅｒｖｅｒの種類リスト」、「Ｄｉｒｅｃｔｏｒｙ  Ｓｅｒｖｅｒ接続不可時に使用する場合の制限の種類のリスト」を、ＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４が周辺機器１から直接取得しているが、他の実施形態として、「サポートしているユーザ管理モードのリスト」、「対応可能なＤｉｒｅｃｔｏｒｙ  Ｓｅｒｖｅｒの種類リスト」、「Ｄｉｒｅｃｔｏｒｙ  Ｓｅｒｖｅｒ接続不可時に使用する場合の制限の種類のリスト」を周辺機器１から取得し、一旦、ディレクトリサーバ６に機器情報として保持し、ＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４はディレクトリサーバ６から取得するようにしてもよい。
【０１５２】
［第２の実施形態］
前記第１の実施形態では、図２９において、管理コマンド中にアクセスチケットを含ませていたが、アクセスチケットのデータサイズは一般的に管理コマンドの他のデータサイズに比較して大きいものとなってしまうので、パフォーマンスなどに問題が生じる場合がある。この問題を解決するための周辺機器制御システムを第２の実施形態として以下に説明する。
【０１５３】
図３５は後述する管理コマンド生成処理によって生成され、周辺機器１に送信される管理コマンドのデータ構造を示す図である。図において、２３０１はユーザ管理モードを表し、ユーザＩＤ２３０２、パスワード２３０３、セッションキー２３０４のうち、どの情報が有効であるかを示すものである。
【０１５４】
セッションキー２３０４は周辺機器１によって発行され、周辺機器１内のアクセスチケットキャッシュによってアクセスチケットと１対１の対応付けがなされている。図において、２３０５はコマンドの種別を表す。２３０６はコマンドに必要なパラメータ２３０７の長さを表す。
【０１５５】
図３６は後述するアクセスチケット設定コマンドの処理によって周辺機器１のＲＡＭ２２内に保持され、アクセスチケットキャッシュのデータ構造を示す図である。アクセスチケットキャッシュは、セッションキー２４０１とアクセスチケット２４０２の対を１レコードとして、複数レコードによって構成されている。ここで保持されているアクセスチケットは、暗号キー３０６を利用した解読後のものとなっている。
【０１５６】
図３７および図３８は後述する管理コマンド生成処理によって生成され、周辺機器１に送信された管理コマンドを、周辺機器１が処理する手順を示すフローチャートである。この処理は周辺機器１上で実行される。この処理手順では、図３０および図３１のステップＳ１６０８までのステップ処理は同一であるので、そのステップ処理を省略し、ステップＳ１６０８の判別処理がＮＯ（偽）であった場合、つまり、ユーザ管理モードが「セキュリティドメインに参加」であった場合から示すこととする。
【０１５７】
まず、セッションキー２３０４が値０であるか否かを判別する（ステップＳ２５０１）。ステップＳ２５０１の判別の結果、セッションキー２３０４が値０である場合、管理コマンド種別２３０５が「アクセスチケット設定コマンド」であるか否かを判別する（ステップＳ２５０２）。「アクセスチケット設定コマンド」でない場合、エラーを返信し（ステップＳ２５０７）、処理を終了する。
【０１５８】
一方、ステップＳ２５０２の判別の結果、「アクセスチケット設定コマンド」である場合、管理コマンドパラメータ２３０７に含まれているアクセスチケットの値を秘密暗号キー３０６を使用して解読する（ステップＳ２５１９）。解読の結果、アクセスチケットの有効性および有効期限を判別する（ステップＳ２５２０）。
【０１５９】
アクセスチケットが有効でない場合、エラーを返信し（ステップＳ２５２１）、管理コマンドの処理を終了する。一方、ステップＳ２５２０において判別の結果、アクセスチケットが有効である場合、解読されたアクセスチケットの内容を、アクセスチケットに１対１に対応するセッションキーを生成し、セッションキーと共にアクセスチケットキャッシュに保存する（ステップＳ２５０３）。生成されたセッションキーを返信し（ステップＳ２５０４）、処理を終了する。
【０１６０】
一方、ステップＳ２５０１でセッションキーが値０以外である場合、セッションキーをアクセスチケットキャッシュ内で検索し（ステップＳ２５０５）、セッションキーが存在するか否かを判別する（ステップＳ２５０６）。判別の結果、エラーを返信し（ステップＳ２５０７）、処理を終了する。
【０１６１】
一方、ステップＳ２５０６の判別の結果、セッションキーが存在する場合、アクセスチケットキャッシュからセッションキーに対応するアクセスチケットを取得し、アクセスチケット内のユーザＩＤを管理コマンド内のユーザＩＤ２３０２に設定し（ステップＳ２５２２）、ステップＳ２５０８以降のコマンドの種別にしたがった処理を行う。
【０１６２】
ステップＳ２５０８以降の処理では、まず、コマンドの種別２３０５が「ＬｉｓｔＪｏｂｓ」（ジョブの一覧を取得する）であるか否かを判別する（ステップＳ２５０８）。判別の結果、コマンドの種別２３０５が「ＬｉｓｔＪｏｂｓ」である場合、周辺機器１内に保持されているジョブの一覧を取得する（ステップＳ２５０９）。このとき、「現在のユーザ管理モード」３０２が「セキュリティドメインに参加」である場合、各ジョブのアクセスチケット７２６を秘密暗号キー３０６によって解読し、得られたユーザＩＤをジョブのユーザＩＤ７２４にセットしておく。
【０１６３】
ステップＳ２５０９に取得されたジョブのユーザＩＤ７２４と、管理コマンド内に含まれるユーザＩＤ２３０２との比較を行い、両者が合致しないジョブのジョブ名を空白に変換する（ステップＳ２５１０）。得られたジョブリストを返信し（ステップＳ２５１１）、処理を終了する。
【０１６４】
一方、ステップＳ２５０８の判別の結果、コマンドの種別１５０５が「ＣａｎｃｅｌＪｏｂ」（指定されたジョブをキャンセルする）であるか否かを判別する（ステップＳ２５１２）。コマンドの種別２３０５が「ＣａｎｃｅｌＪｏｂ」でない場合、機器管理コマンドの処理を行い（ステップＳ２５１７）、処理を終了する。このステップＳ２５１７における機器管理コマンドの処理では、コマンド種別２３０５によって場合分けすることにより、複数の機器管理コマンドの処理を行ってもよい。
【０１６５】
一方、ステップＳ２５１２の判別の結果、コマンドの種別１５０５が「ＣａｎｃｅｌＪｏｂ」である場合、指定されたジョブの情報を取得する（ステップＳ２５１３）。このとき、「現在のユーザ管理モード」３０２が「セキュリティドメインに参加」である場合、ジョブのアクセスチケット７２６を秘密暗号キー３０６によって解読し、得られたユーザＩＤをジョブのユーザＩＤ７２４にセットしておく。
【０１６６】
ジョブのユーザＩＤ７２４と、管理コマンド内に含まれるユーザＩＤ２３０２との比較を行い（ステップＳ２５１４）、両者が合致しない場合、管理コマンドの実行失敗を返信し（ステップＳ２５１８）、処理を終了する。
【０１６７】
一方、ステップＳ２５１４において、両者が合致した場合、指定されたジョブをキャンセルし（ステップＳ２５１５）、管理コマンドの実行成功を返信し（ステップＳ２５１６）、処理を終了する。
【０１６８】
尚、図３７および図３８で示した管理コマンドの処理手順をジョブ処理時にも適用することによって、図１７と図１８および図１９に示すように、ジョブにアクセスチケットを含ませるのではなく、ジョブにセッションキーを含ませることも可能である。
【０１６９】
図３９は図３７および図３８の処理を実行している周辺機器１に対してＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４から機器管理、ジョブ管理などの管理コマンドを発行する処理手順を示すフローチャートである。この処理はＰＣ（１）２、ＰＣ（２）３、ＰＣ（３）４上で実行される。また、この処理手順は、図２７および図２８のステップＳ１４１２およびＳ１４１３までは同一であるので、ここではステップＳ１４１２またはＳ１４１３によってＴＧＴを取得終了後から示すこととする。
【０１７０】
すなわち、ステップＳ１４１２またはＳ１４１３において取得したＴＧＴおよびジョブ発行先の周辺機器１を特定する識別子（パラメータ）をディレクトリサーバ６に対してＫｅｂｅｒｏｓプロトコルによって送信し、周辺機器１に対するアクセスチケットを取得する（ステップＳ２６０１）。ここで取得したアクセスチケットは、ユーザ名、ユーザＩＤ、ユーザの印刷可能枚数、アクセスチケットの有効期限に関する情報を、周辺機器１の秘密暗号キー３０６によって暗号化したものとなっている。アクセスチケット内部のデータフォーマットおよび使用される暗号方式（アルゴリズム）は、現在対応しているディレクトリサーバの種類３０４によって一意に予め決められている。
【０１７１】
ステップＳ２６０１で取得したアクセスチケットをコマンドパラメータ２３０７に設定したアクセスチケット設定コマンドを生成し、周辺機器１に対して送信する（ステップＳ２６０２）。ここで送信される管理コマンドは、セッションキー２３０４が値０、コマンド種別２３０５が「アクセスチケット設定コマンド」となっている。
【０１７２】
周辺機器１からの返信がエラーか否かを判別し（ステップＳ２６０３）、エラーであった場合、処理を終了する。一方、ステップＳ２６０３の判別の結果、エラーでない場合、ステップＳ２６０２で取得したセッションキーを管理コマンドのセッションキー２３０４に設定し、管理コマンドデータの管理コマンド種別２３０５、コマンドパラメータ長２３０６、コマンドパラメータ２３０７に適切な値を設定して周辺機器１に送信する（ステップＳ２６０４）。周辺機器１からの返信を処理し（ステップＳ２６０５）、処理を終了する。
【０１７３】
尚、同一周辺機器に対して同一ユーザがジョブ管理コマンドまたは機器管理コマンドを発行する際、既に必要なアクセスチケットが周辺機器に保持されており、それに対するセッションキーを取得済みであるので、ステップＳ２６０１からＳ２６０３までのステップを省略することができる。これにより、パフォーマンス良く、周辺機器のジョブ管理および機器管理を行うことができる。
【０１７４】
尚、以上が本発明の実施の形態の説明であるが、本発明は、これら実施の形態の構成に限られるものではなく、特許請求の範囲で示した機能、または実施の形態の構成が持つ機能が達成できる構成であればどのようなものであっても適用可能である。
【０１７５】
また、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記憶した記録媒体を、システムあるいは装置にプログラムを供給することによって達成される場合にも適用できることはいうまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムを記憶した記憶媒体は本発明を構成することになる。
【０１７６】
上記実施形態では、各フローチャートに示すプログラムコードは記憶媒体に格納されている。プログラムコードを供給する記憶媒体としては、例えば、ＲＯＭ、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ、磁気テープ、不揮発性のメモリカードなどを用いることができる。
【符号の説明】
【０１７７】
２、３、４  パーソナルコンピュータ（ＰＣ）
３、５  周辺機器（ＭＦＰ）
６  ディレクトリサーバ
１１  コントローラ
２１、３１  ＣＰＵ
２５、３６  ＲＯＭ
３０１、３０２  属性情報
【図１】
2010186492.tif 000003
【図２】
2010186492.tif 000004
【図３】
2010186492.tif 000005
【図４】
2010186492.tif 000006
【図５】
2010186492.tif 000007
【図６】
2010186492.tif 000008
【図７】
2010186492.tif 000009
【図８】
2010186492.tif 000010
【図９】
2010186492.tif 000011
【図１０】
2010186492.tif 000012
【図１１】
2010186492.tif 000013
【図１２】
2010186492.tif 000014
【図１３】
2010186492.tif 000015
【図１４】
2010186492.tif 000016
【図１５】
2010186492.tif 000017
【図１６】
2010186492.tif 000018
【図１７】
2010186492.tif 000019
【図１８】
2010186492.tif 000020
【図１９】
2010186492.tif 000021
【図２０】
2010186492.tif 000022
【図２１】
2010186492.tif 000023
【図２２】
2010186492.tif 000024
【図２３】
2010186492.tif 000025
【図２４】
2010186492.tif 000026
【図２５】
2010186492.tif 000027
【図２６】
2010186492.tif 000028
【図２７】
2010186492.tif 000029
【図２８】
2010186492.tif 000030
【図２９】
2010186492.tif 000031
【図３０】
2010186492.tif 000032
【図３１】
2010186492.tif 000033
【図３２】
2010186492.tif 000034
【図３３】
2010186492.tif 000035
【図３４】
2010186492.tif 000036
【図３５】
2010186492.tif 000037
【図３６】
2010186492.tif 000038
【図３７】
2010186492.tif 000039
【図３８】
2010186492.tif 000040
【図３９】
2010186492.tif 000041