JP4649081B2 - PERIPHERAL DEVICE, ITS CONTROL METHOD, PROGRAM, AND STORAGE MEDIUM - Google Patents
PERIPHERAL DEVICE, ITS CONTROL METHOD, PROGRAM, AND STORAGE MEDIUM Download PDFInfo
- Publication number
- JP4649081B2 JP4649081B2 JP2001299101A JP2001299101A JP4649081B2 JP 4649081 B2 JP4649081 B2 JP 4649081B2 JP 2001299101 A JP2001299101 A JP 2001299101A JP 2001299101 A JP2001299101 A JP 2001299101A JP 4649081 B2 JP4649081 B2 JP 4649081B2
- Authority
- JP
- Japan
- Prior art keywords
- job
- user
- peripheral device
- decryption
- access ticket
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、例えば、プリンタ、スキャナ、複写機、ファクシミリなどの周辺機器の制御、対応するサーバの設定、周辺機器のユーザ情報管理、印刷枚数管理などを行う周辺機器、その制御方法、プログラムおよび記憶媒体に関する。
【0002】
【従来の技術】
従来、プリンタ、複写機、ファクシミリ(FAX)などの周辺機器では、周辺機器内で動作または実行が保留されているジョブの管理(ジョブ一覧の表示、指定ジョブのキャンセルなど)を、周辺機器のコンソールあるいはネットワークなどを介して周辺機器に接続されている計算機から行うことが可能であった。
【0003】
また、従来、ジョブや制御コマンドにディレクトリサーバから発行されたアクセスチケットを含ませることができる周辺機器では、アクセスチケットを秘密暗号キーを使用して解読する必要があるが、解読に使用される暗号化方式やアクセスチケットのフォーマットは対応するディレクトリサーバの種類によって異なるので、予め周辺機器がどのディレクトリサーバに対応するのかを設定しておく必要があった。
【0004】
さらに、従来、複写機、ファクシミリなどの周辺機器では、ユーザ情報管理を行うために、コンソール上にユーザ認証を行わせるためのダイアログを表示し、これにユーザ情報を入力させることによりユーザの認証を行っていた。ここで得られたユーザ情報は、機器内部で管理されているユーザ情報のデータベースと照合され、合致した場合にユーザの使用許可を出している。また、ユーザ操作の結果、何らかの印刷が行われた場合、ログイン時に得られたユーザ情報と共に印刷枚数をログに記録したり、ユーザ毎のカウンタに累積したりしてユーザ毎の印刷枚数の管理を行っていた。
【0005】
また、従来、プリンタ、複写機などの周辺機器では、ユーザ毎の累積印刷枚数管理および最大印刷枚数制限などの印刷枚数管理を機器単体で行ってきた。この場合、機器内に累積印刷を表すカウンタを設け、この値が予め設定された値になると、印刷を終了させたり、ジョブの受付を拒否することにより行われてきた。
【0006】
【発明が解決しようとする課題】
しかしながら、ジョブを発行した機器とジョブを管理している機器とが異なる場合、例えば計算機から印刷ジョブを複写機に対して発行し、このキャンセルを複写機上のコンソールから行おうとすると、計算機にログインするために使用された情報と、複写機にログインするために使用する情報とが異なるので、ジョブ発行者によってジョブが管理されているか否かが分からず、ジョブ管理のアクセス制御の観点から問題であった。また、本発明では、統一したアクセス制御を行うために、ユーザ情報を管理コマンドに含ませる手段を使用するが、一般的にユーザ情報のデータサイズが大きくなってしまい、これを含んだ管理コマンドもデータサイズが大きいために、ネットワークトラフィック上やパフォーマンス上で問題となることがあった。
【0007】
また、しかしながら、対応ディレクトリサーバの種類を、ネットワークなどを介して接続されている計算機上で動作する周辺機器制御ソフトウェアから設定しようとする場合、予め対象となる周辺機器がどのディレクトリサーバに対応可能であるかの情報を周辺機器制御ソフトウェアに保持しておく必要があるので、どのような周辺機器にも対応可能な汎用的な周辺機器制御ソフトウェアを用意することは困難であった。
【0008】
さらに、しかしながら、ユーザ情報管理を機器単体で行ってきたので、複数の機器を使用する環境において、各機器が管理するユーザ情報の統一が困難であり、例えば、同じユーザIDを使用しても、そのユーザIDが必ずしも同じユーザを特定しているとは限らないという問題があった。また、1つの機器にユーザ毎の最大印刷可能枚数を設定しても、別の機器には何ら影響が及ばないので、このような環境で最大印刷枚数を管理することは困難であった。
【0009】
また、印刷枚数管理を機器単体で行ってきたので、複数の機器を使用する環境において、各機器が管理するユーザ情報の統一が困難であり、例えば、同じユーザIDを使用してもそのユーザIDが必ずしも同じユーザを指定しているとは限らないという問題があった。また、1つの機器に最大印刷可能枚数を設定しても、別の機器には何ら影響が及ばないので、このような環境で最大印刷枚数を管理することは困難であった。
【0010】
そこで、本発明は、ネットワーク環境内でのジョブ管理に関し、統一したアクセス制御を可能とする周辺機器、その制御方法、プログラムおよび記憶媒体を提供することを目的とする。
【0016】
【課題を解決するための手段】
上記目的を達成するために、本発明の請求項1に記載の周辺機器は、ネットワークを介して接続されたサーバによって管理され、投入されたジョブ管理コマンドにしたがって、外部から入力されたジョブの管理を行う周辺機器において、ジョブを受信する第1受信手段と、受信した前記ジョブに含まれるアクセスチケットを解読する第1解読手段と、前記第1解読手段により解読された前記アクセスチケットが有効であり、且つ受信した前記ジョブを実行可能である場合に、受信した前記ジョブと該ジョブに含まれる前記アクセスチケットとを対応付けて保持する保持手段と、ジョブ管理コマンドを受信する第2受信手段と、受信した前記ジョブ管理コマンドに含まれるアクセスチケットを解読する第2解読手段と、前記第2解読手段により解読された前記アクセスチケットが有効であり、且つ前記第1受信手段が受信した前記ジョブが終了していない場合に、前記第1解読手段の解読結果と、前記第2解読手段の解読結果とを比較する比較手段と、前記比較手段による比較結果に基づき、前記ジョブに対する前記ジョブ管理コマンドを実行する管理手段とを備えたことを特徴とする。
【0103】
【発明の実施の形態】
本発明の周辺機器、その制御方法、プログラムおよび記憶媒体の実施の形態を図面を参照しながら説明する。
【0104】
[第1の実施形態]
図1は第1の実施形態における周辺機器制御システムの構成を示すブロック図である。図において、1、5はそれぞれ周辺機器MFP1、MFP2である。また、2、3、4はそれぞれパーソナルコンピュータPC(1)、PC(2)、PC(3)である。PC(1)2、PC(2)3、PC(3)4は、ネットワーク10、もしくはローカルインターフェース経由でMFP1(1)およびMFP2(5)に接続されている。PC(1)、PC(2)またはPC(3)上では、本発明に関係する周辺機器制御ソフトウェアが動作し、ネットワーク10経由でMFP1に対し、プリント、スキャン、コピーあるいはFAX送受信といったジョブ処理を依頼したり、MFP1(1)およびMFP2(5)の属性情報の問い合わせを行う。
【0105】
また、6はユーザ情報および機器情報の一元管理機能を有するディレクトリサーザであり、パーソナルコンピュータなどで構成される。このディレクトリサーバ6は、Kerberosプロトコル(RFC1510)におけるKDC(Key Distribution Server)の機能も有しており、Kerberosプロトコルの規定にしたがって、TGT(チケット生成チケット)の発行および指定された資源に対するアクセスを行うために必要なアクセスチケットの発行を行う。
【0106】
さらに、このディレクトリサーバ6には、MFP1(1)およびMFP2(5)が既に登録されているものとする。このデータの参照および更新は、LDAPプロトコル(RFC1777)を使用することにより、PC(1)2、PC(2)3から行うことが可能である。ディレクトリサーバ6で管理されている各ユーザ情報には、ユーザ名、パスワード、ユーザの印刷可能枚数、ユーザの累積印刷枚数が含まれる。また、ディレクトリサーバ6で管理されている各機器情報には、機器名、機器の秘密暗号キーが含まれる。
【0107】
図2は周辺機器(MFP1、MFP2)の構成を示すブロック図である。図において、11は周辺機器を制御するためのコントローラである。12はコントローラ11が周辺機器の外部と通信するための通信インターフェースであり、例えば、イーサネット(登録商標)インターフェース、IEEE1284インターフェースあるいはその他の通信インターフェースである。
【0108】
13はスキャナエンジンであり、コントローラ11によって制御されている。14はプリンタエンジンであり、コントローラ11によって制御されており、例えば、レーザビームプリンタ、インクジェットプリンタあるいはその他のプリンタである。
【0109】
15は画像の送受信などの通信制御を行うFAX機能を実現するFAXボードであり、コントローラ11によって制御されている。16はユーザインターフェースであり、LCDディスプレイおよびキーボードから構成されており、コントローラ11からの情報表示を行うとともに、ユーザからの指示をコントローラ11に伝える。
【0110】
このような構成を有する周辺機器は、プリンタエンジン14を選択し、プリントジョブの発行を可能にする。また、プリンタエンジン14およびスキャナエンジン13を選択し、コピージョブの発行を可能にする。また、プリンタエンジン14、スキャナエンジン13、FAXボード15を選択し、FAX受信ジョブおよびFAX送信ジョブの発行を可能にする。
【0111】
図3はコントローラ11のハードウェア構成を示すブロック図である。コントローラ11では、CPU21、RAM22、LCD23、キーボード24、ROM25、通信インターフェース26、スキャナエンジン27、プリンタエンジン28、FAXボード29およびDISK30がシステムバス20を介して相互に接続されている。
【0112】
コントローラ11を制御するプログラムは、ROM25あるいはDISK30に記憶されており、必要に応じてRAM22に読み出され、CPU21によって実行される。また、ROM25あるいはDISK30には、制御プログラム以外に周辺機器やこの周辺機器で処理されるジョブの機能および状態を示す属性情報、出力の対象となるジョブデータなどが記憶されている。さらに、CPU21はLCD23で表示を行い、キーボード24からユーザの指示を受ける。また、CPU21が通信インターフェース26を通じて外部と通信を行う。
【0113】
本実施形態では、特に断らない限り、周辺機器(図2)では、CPU21は、システムバス20を介してキーボード24からユーザの入力を受け取り、かつRAM22、LCD23、ROM25、通信インターフェース26、スキャナエンジン27、プリンタエンジン28、FAXボード29およびDISK30を制御する。
【0114】
図4はネットワークシステムを構成するPCのハードウェア構成を示すブロック図である。PCでは、CPU31、RAM32、CRT33、キーボード34、ポインティングデバイス35、ROM36、DISK37および通信インターフェース38はシステムバス40を介して相互に接続されている。PCを制御するプログラムは、ROM36もしくはDISK37に記憶されており、必要に応じてRAM32に読み出され、CPU31によって実行される。また、CPU31はCRT33を通して表示を行い、キーボード34およびポインティングデバイス35からユーザの指示を受ける。また、CPU31は通信インターフェース38を通じて外部と通信を行う。
【0115】
本実施形態では、特に断らない限り、PCでは、CPU31がシステムバス40を介してキーボード34やポインティングデバイス35からユーザの入力を受け取り、かつRAM32、CRT33、ROM36、DISK37、通信インターフェース38を制御する。また、周辺機器に対するユーザの指示およびユーザへの情報表示は、ローカルなユーザインターフェース16を通して行ってもよいし、PC(1)、PC(2)あるいはPC(3)のようなネットワーク10に接続されたクライアントとなる機器を通して行ってもよい。
【0116】
図5は周辺機器1で保持されている属性情報を示す図である。周辺機器2(5)は周辺機器1と同じデータ構造を有するが、保持されている値は異なっている。これらの情報は、ROM25、RAM22あるいはDISK30に保持されており、後述する処理によりPC(1)2、PC(2)3、PC(3)4から個々の属性情報を取得あるいは設定することができる。
【0117】
図において、301は、「サポートしているユーザ管理モードのリスト」属性であり、「"ユーザ管理なし","パスワード","ユーザID","ユーザIDとパスワード","セキュリティドメインに参加"」の複数の値をリストとして保持している。
【0118】
302は、「現在のユーザ管理モード」属性であり、「セキュリティドメインに参加」を値として保持している。303は、「対応可能なディレクトリサーバの種類のリスト」属性であり、値として「"標準LDAPサーバ","Active Directory(MS)","NDS(Novell)","Open LDAP"」の複数の値をリストとして保持している。
【0119】
304は、「現在対応しているディレクトリサーバの種類」属性であり、「"Active Directory(MS)"」を値として保持している。305は、「現在対応しているディレクトリサーバのIPアドレス」属性であり、「123.56.54.21」を値として保持している。306は、「機器の秘密暗号キー」属性であり、「0x34q4bffcdca001」を値として保持している。この値は、「現在のユーザ管理モード」属性が「セキュリティドメインに参加」の場合に有効となるものであり、ディレクトリサーバ6から発行されたアクセスチケットを解釈するために使用される。
【0120】
307は、「ディレクトリサーバ接続不可時に使用許可するかどうか」属性であり、「TRUE」を値として保持している。308は、「ディレクトリサーバ接続不可時に使用する場合の制限の種類のリスト」属性であり、「"無制限"、"時間制限"、"時間制限&固定最大枚数で制限"、"時間制限&最大枚数で制限"、"固定最大枚数で制限"、"最大枚数で制限"、"ログイン毎に制限"」の複数の値をリストとして保持している。
【0121】
309は、「現在のディレクトリサーバ接続不可時に使用する場合の制限の種類」属性であり、「時間制限」を値として保持している。310は、「時間制限の長さ」属性であり、「48時間」を値として保持している。311は、「最大枚数の日毎の削減割合」属性であり、「30」を値として保持している。312は、「最大枚数」属性であり、「100」を値として保持している。313は、「ログイン毎の最大枚数」属性であり、「20」を値として保持している。
【0122】
図6は周辺機器1のユーザ管理モードをPC(1)2、PC(2)3、PC(3)4から表示・変更する場合の処理手順を示すフローチャートである。この処理プログラムはPC(1)2、PC(2)3、PC(3)4上で動作する。まず、周辺機器1の属性情報301を取得する(ステップS1701)。この属性情報の取得は、PC(1)2、PC(2)3、PC(3)4から属性取得用コマンドを周辺機器1に対して送信し、周辺機器1において、このコマンドを処理することにより行われる。そして、得られた属性情報をCRT33に表示する(ステップS1702)。さらに、属性情報である「現在のユーザ管理モード」属性302を取得し(ステップS1703)、CRT33に表示する(ステップS1704)。
【0123】
ユーザの入力を待ち(ステップS1705)、ユーザからの入力にしたがって、属性情報である「現在のユーザ管理モード」属性302を設定し(ステップS1706)、処理を終了する。この属性情報の設定は、PC(1)2、PC(2)3、PC(3)4から属性設定用コマンドを周辺機器1に対して送信し、周辺機器1において、このコマンドを処理することにより行われる。
【0124】
図7はステップS1705におけるユーザ入力待ちの状態でCRT33に表示されたユーザインターフェース画面を示す図である。図中、101はユーザが選択可能なユーザ管理モードの一覧(属性301)を表示している。現在設定されているユーザ管理モードの属性302は図中、102で反転表示されている。ユーザは、所望のユーザ管理モードを選択して反転表示させた上で、OKボタン103を押すことにより、ステップS1706の処理を実行してユーザ管理モードの設定を行う。
【0125】
尚、図6の処理手順の実行は、PCの代わりに、ユーザ管理モードを変更する対象である周辺機器1自身のコントローラ11で行われ、図7の表示も周辺機器に装備されているユーザインターフェース16上で行われるようにしてもよい。また、他の周辺機器2(5)上で実行・表示されるようにしてもよい。
【0126】
図8は周辺機器1に対応するディレクトリサーバをPC(1)2、PC(2)3、PC(3)4から表示・変更する場合の動作処理手順を示すフローチャートである。この処理手順は、PC(1)2、PC(2)3、PC(3)4上で行われる。
【0127】
まず、属性情報303を取得する(ステップS1801)。この属性情報の取得は、PC(1)2、PC(2)3、PC(3)4から属性取得用コマンドを周辺機器1に対して送信し、周辺機器1において、後述する処理手順にしたがってこのコマンドを処理することにより行われる。得られた属性情報をCRT33に表示する(ステップS1802)。
【0128】
さらに、属性情報304を取得し(ステップS1803)、得られた属性情報304をCRT33に表示する(ステップS1804)。属性情報305を取得し(ステップS1805)、得られた属性情報305をCRT33に表示する(ステップS1806)。
【0129】
ユーザの入力を待ち(ステップS1807)、ユーザからの入力にしたがって、属性情報304、305を設定する(ステップS1808)。この属性情報の設定は、PC(1)2、PC(2)3、PC(3)4から属性設定用コマンドを周辺機器1に対して送信し、周辺機器1において、後述する処理手順にしたがってこのコマンドを処理することにより行われる。
【0130】
図9はステップS1807におけるユーザ入力待ちの状態でCRT33に表示されたユーザインターフェース画面を示す図である。図中、201は、ユーザが選択可能なディレクトリサーバの種類の一覧(属性303)を表示している。現在設定されているディレクトリサーバの種類(属性304)は、図中、202で反転表示されている。さらに、アドレス部203には、現在設定されているディレクトリサーバのIPアドレス305が表示されている。ユーザは、所望のディレクトリサーバの種類を選択して反転表示させ、所望のIPアドレスをアドレス部203に入力した上で、OKボタン204を押すことにより、ステップS1808の処理を実行し、対応するディレクトリサーバの設定を行う。
【0131】
尚、図8に示す処理は、PCの代わりに、対応するディレクトリサーバを変更する対象である周辺機器1自身のコントローラ11で行われ、図9に示す表示も周辺機器に装備されているユーザインターフェース16で行われるようにしてもよい。また、他の周辺機器2(5)上で実行・表示されるようにしてもよい。
【0132】
図10は周辺機器1がディレクトリサーバ6に接続できない場合にログインをどの様に許可するかを、PC(1)2、PC(2)3、PC(3)4から表示・変更する場合の処理手順を示すフローチャートである。この処理手順はPC(1)2、PC(2)3、PC(3)4上で行われる。
【0133】
まず、属性情報である「ディレクトリサーバ接続不可時に使用する場合の制限の種類のリスト」属性308を取得する(ステップS2201)。属性情報の取得は、PC(1)2、PC(2)3、PC(3)4から属性取得用コマンドを周辺機器1に対して送信し、周辺機器1において、後述する処理手順にしたがってこのコマンドを処理することにより行われる。得られた属性情報をCRT33に表示する(ステップS2202)。
【0134】
属性情報である「現在のディレクトリサーバ接続不可時に使用する場合の制限の種類」属性309を取得し(ステップS2203)、得られた属性情報をCRT33に表示する(ステップS2204)。さらに、属性情報である「ディレクトリサーバ接続不可時に使用許可するかどうか」属性307を取得する(ステップS2205)。得られた属性情報をCRT33に表示する(ステップS2206)。
【0135】
そして、ユーザの入力を待ち(ステップS2207)、ユーザからの入力にしたがって属性情報309、307を設定し(ステップS2208)、処理を終了する。属性情報の設定は、PC(1)2、PC(2)3、PC(3)4から属性設定用コマンドを周辺機器1に対して送信し、周辺機器1において、後述する処理手順にしたがってこのコマンドを処理することにより行われる。
【0136】
図11はステップS2207のユーザ入力待ちの状態でCRT33に表示されたユーザインターフェース画面を示す図である。図中、2102は、「Directory Server接続不可時に使用する場合の制限の種類のリスト」属性308の内容を表示しており、「現在のDirectory Server接続不可時に使用する場合の制限の種類」属性309の値は、図中、2103で反転表示されている。さらに、「Directory Server接続不可時に使用許可するかどうか」属性307の値がチェックボックス2101に表示されている。ユーザは、所望の設定を行った上で、OKボタン2104を押すことにより、ステップS2208の処理を実行して属性情報の設定を行う。
【0137】
尚、図10に示す処理は、PCの代わりに、設定を変更する対象である周辺機器1自身のコントローラ11で行われ、図11に示す表示も周辺機器に装備されているユーザインターフェース16で行われるようにしてもよい。さらに、他の周辺機器2(5)上で実行・表示されるようにしてもよい。
【0138】
図12および図13は周辺機器1に対してPC(1)2、PC(2)3、PC(3)4からプリントジョブ、スキャナジョブ、ファックス送信ジョブあるいはコピージョブを発行する処理手順を示すフローチャートである。この処理はPC(1)2、PC(2)3、PC(3)4上で行われる。
【0139】
まず、周辺機器1が保持する属性情報である「現在のユーザ管理モード」属性302を取得する(ステップS401)。属性情報302の値が「ユーザ管理なし」であるか否かを判別する(ステップS402)。判別の結果、「ユーザ管理なし」である場合、ジョブに必要な他の情報をジョブに設定した上で周辺機器1に対してジョブを発行する(ステップS403)。この後、処理を終了する。
【0140】
一方、ステップS402で、「ユーザ管理あり」である場合、属性情報302の値が「パスワード」であるか否かを判別する(ステップS404)。判別の結果、パスワードである場合、CRT33上にパスワード入力を促すユーザインターフェース画面を表示する(ステップS405)。そして、ステップS403において、入力されたパスワードおよびジョブに必要な他の情報をジョブに設定した上で、周辺機器1に対してジョブを発行する。
【0141】
一方、ステップS404で判別の結果、パスワードでない場合、属性情報302の値が「ユーザID」であるか否かを判別する(ステップS406)。判別の結果、ユーザIDである場合、CRT33にユーザIDの入力を促すユーザインターフェース画面を表示する(ステップS407)。そして、ステップS403において、入力されたユーザIDおよびジョブに必要な他の情報をジョブに設定した上で、周辺機器1に対してジョブを発行する。
【0142】
一方、ステップS406で判別の結果、ユーザIDでない場合、属性情報302の値が「ユーザIDとパスワード」であるか否かを判別する(ステップS408)。判別の結果、ユーザIDとパスワードである場合、CRT33にユーザIDとパスワード入力を促すユーザインターフェース画面を表示する(ステップS409)。そして、ステップS403において、入力されたユーザIDとパスワードおよびジョブに必要な他の情報をジョブに設定した上で、周辺機器1に対してジョブを発行する。
【0143】
一方、ステップS408で判別の結果、ユーザIDとパスワードでない場合、使用しているPCにおいて、ユーザはディレクトリサーバ6が管理するセキュリティドメインに既にログインしているか否かを判別する(ステップS410)。この判別は、使用しているPCのオペレーティングシステムに対して問い合わせることによって行われる。判別の結果、ログイン済みでない場合、CRT33にユーザIDとパスワードの入力を促すユーザインターフェース画面を表示し(ステップS411)、これらの情報をディレクトリサーバ6にKerberosプロトコルを使用して送ることにより、TGT(チケット生成チケット)情報を取得する(ステップS413)。
【0144】
一方、ステップS410の判別結果、ログイン済みである場合、既にログインしているので、オペレーティングシステムに対し、現在のセッションで使用しているTGTを要求して取得する(ステップS412)。
【0145】
ステップS412あるいはS413において取得したTGTを使用し、オペレーティングシステムによって保持されているユーザ名、あるいはステップS411で入力されたユーザ名に該当するユーザの印刷可能枚数情報をKerberosプロトコルおよびLDAPプロトコルによりディレクトリサーバ6から取得する(ステップS414)。
【0146】
このあと、印刷可能枚数が1枚以上であるか否かを判別し(ステップS415)、判別の結果、1枚以上なく印刷できない場合、ジョブ発行ができない旨を表すユーザインターフェース画面をCRT33に表示し(ステップS416)、処理を終了する。
【0147】
一方、ステップS415の判別結果、印刷可能枚数が1枚以上で印刷可能である場合、ステップS412あるいはS413において取得したTGTおよびジョブ発行先の周辺機器1を特定する識別子のパラメータをディレクトリサーバ6に対してKeberosプロトコルによって送信し、周辺機器1に対するアクセスチケットを取得する(ステップS417)。ここで取得したアクセスチケットは、ユーザ名、ユーザID、ユーザの印刷可能枚数、アクセスチケットの有効期限に関する情報を、周辺機器1の秘密暗号キーの属性情報306によって暗号化したものとなっている。アクセスチケット内部のデータフォーマットおよび使用される暗号方式(アルゴリズム)は、現在対応しているディレクトリサーバの種類(属性情報304)によって一意に予め決められている。
【0148】
そして、ステップS417で取得したアクセスチケットおよびジョブに必要な他の情報をジョブに設定した上で、周辺機器1に対してジョブを発行し(ステップS418)、処理を終了する。
【0149】
図14はステップS403におけるジョブ発行処理手順を示すフローチャートである。まず、ジョブに必要な属性について属性設定コマンドのパラメータを設定する(ステップS502)。このパラメータは設定対象の属性名とそれに対する値とから構成されている。ステップS502で作成された属性設定コマンドを周辺機器1に対して送信する(ステップS503)。必要なジョブ属性の設定が完了したか否かを判別し(ステップS504)、完了していない場合、ステップS502の処理を繰り返す。
【0150】
一方、ステップS504で必要なジョブ属性の設定が完了した場合、ジョブデータ送信コマンドによりアプリケーションなどで作成された画像データなど、ジョブ処理の対象となるデータをこの周辺機器に送信する(ステップS505)。ジョブ投入コマンドの送信完了を示すジョブ投入完了通知コマンドを送信し(ステップ506)、処理を終了する。
【0151】
図15および図16は周辺機器1が図14の処理によって発行されたジョブを受信したときのジョブ投入コマンド受信処理手順を示すフローチャートである。この処理はジョブを構成するコマンドを受信する度に周辺機器1によって実行される。
【0152】
受信したコマンドおよびそのパラメータを解析する(ステップ601)。この解析の結果、受信したコマンドが属性設定コマンドであるか否かを判別する(ステップ602)。受信したコマンドが属性設定コマンドである場合、属性が周辺機器1に解釈可能であるか否かを判別する(ステップS603)。
【0153】
解釈可能である場合、ステップS601で得られた解析結果にしたがって、指定された属性名と属性値の対を、RAM22またはDISK30にジョブデータとして保存し(ステップS604)、処理を終了する。一方、ステップS603で解釈不可能である場合、受信した属性設定コマンドで指定された属性は設定不可能であり、属性が設定できなかったことを返信し(ステップS616)、処理を終了する。
【0154】
一方、ステップS602で、受信したコマンドが属性設定コマンドでない場合、ステップS601で得られた解析結果から受信コマンドがジョブデータ送信コマンドであるか否かを判別する(ステップS611)。ジョブデータ送信コマンドである場合、コマンドに続いて受信するジョブデータをRAM22あるいはDISK30に保存し(ステップ612)、処理を終了する。
【0155】
一方、ステップS611で、ジョブデータ送信コマンドでない場合、ステップS601で得られた解析結果から受信コマンドがジョブ投入終了通知コマンドであるか否かを判別する(ステップS613)。ジョブ投入終了通知コマンドである場合、RAM22あるいはDISK30に保持されたジョブデータの処理を開始する(ステップS614)。一方、ジョブ投入終了通知コマンドでない場合、受信コマンドはその他のコマンドであり、その他のコマンドに依存した処理を行い(ステップ615)、処理を終了する。
【0156】
図17は図15および図16の処理により周辺機器1内で保持されたジョブのデータ構造を示す図である。このジョブは、ジョブの機能・属性を表す属性のリスト701とジョブの処理対象となるデータを表すジョブデータ702とから構成される。ジョブデータ702は、ジョブの種別によってはなくてもよい。属性のリスト701は、属性名711とこれに対応する属性値712との対のリストとなっている。
【0157】
図において、721はジョブが印刷ジョブであることを表す。722はジョブの開始モードが保留であることを表す。723はユーザ管理モードが「セキュリティドメインに参加」であることを表しており、ジョブのユーザ情報としてアクセスチケット726を使用することを示している。724はユーザ管理モードが「ユーザID」または「ユーザIDとパスワード」である場合、ユーザIDが設定される属性である。725はユーザ管理モードが「パスワード」または「ユーザIDとパスワード」である場合、パスワードが設定される属性である。726はユーザ管理モードが「セキュリティドメインに参加」である場合、アクセスチケットが設定される属性である。尚、属性724、725、726としては、属性723の内容にしたがって必要なものだけをジョブデータに設定してもよい。
【0158】
図18および図19は図17で示された周辺機器1に保持されたジョブデータの処理手順を示すフローチャートである。この処理は周辺機器1上で行われる。まず、属性情報(現在のユーザ管理モード)302を取得する(ステップS801)。属性情報302の値が「ユーザ管理なし」であるか否かを判別する(ステップS802)。
【0159】
判別の結果、「ユーザ管理なし」の場合、属性723、724、725、726を除く属性の処理を行い(ステップS803)、これらの属性に基づき、ジョブデータ処理を行う(ステップS810)。ジョブの処理結果をログに記録し(ステップS811)、処理を終了する。このログはRAM22あるいはDISK30に保存される。
【0160】
一方、ステップS802の判別の結果、ユーザ管理ありの場合、属性情報302の値が「パスワード」であるか否かを判別する(ステップS804)。判別の結果、パスワードである場合、予めRAM22あるいはDISK30に保持されているパスワード値と属性情報725との比較を行い(ステップS805)、合致していた場合、ステップS803でジョブの処理を継続する。一方、合致しなかった場合、ジョブの処理を中止する。
【0161】
一方、ステップS804の判別結果、パスワードでない場合、属性情報302の値が「ユーザID」であるか否かを判別する(ステップS806)。判別の結果、ユーザIDである場合、予めRAM22あるいはDISK30に保持されているユーザID値と属性情報724との比較を行い(ステップS807)、合致していた場合、ステップS803でジョブの処理を継続する。一方、合致しなかった場合、ジョブの処理を中止する。
【0162】
ステップS806の判別結果、ユーザIDでない場合、属性情報302の値が「ユーザIDとパスワード」であるか否かを判別する(ステップS808)。判別の結果、「ユーザIDとパスワード」である場合、予めRAM22またはDISK30に保持されているユーザID値およびパスワード値と、属性情報724、725とそれぞれの比較を行い(ステップS809)、両者が合致していた場合、ステップS803でジョブの処理を継続する。合致しなかった場合、ジョブの処理を中止する。
【0163】
一方、ステップS808の判別結果、「ユーザIDとパスワード」でない場合、アクセスチケットの値726を、属性情報306である秘密暗号キーを使用して解読する(ステップS812)。そして、アクセスチケットが有効であるか否かを判別する(ステップS813)。アクセスチケットの値を解読できなかった場合、あるいはアクセスチケット内で保持される印刷可能枚数が値0である場合、ステップS813でアクセスチケットは無効であると判別し、ジョブデータを破棄し(ステップS814)、処理を終了する。
【0164】
一方、ステップS813において、アクセスチケットが有効であると判別された場合、アクセスチケット内のユーザIDに該当するユーザの印刷可能枚数情報をKerberosプロトコルおよびLDAPプロトコルによりディレクトリサーバ6から取得する(ステップS815)。
【0165】
印刷可能枚数が1枚以上で印刷可能であるか否かを判別し(ステップS816)、印刷不可能である場合、ジョブデータを破棄し(ステップS817)、処理を終了する。一方、ステップS816の判別結果、印刷可能である場合、属性値723、724、725、726を除く属性の処理を行い(ステップS818)、これらの属性に基づき、ジョブデータの処理を行う(ステップS819)。尚、この処理において、ステップS815の処理から得られる印刷可能枚数を越えないように監視し、最大印刷可能枚数を越えた場合、ジョブデータの処理を異常終了させる。ジョブが正常終了した場合および異常終了した場合のいずれの場合も、ジョブの処理結果をログに記録し(ステップS820)、処理を終了する。ログには、ユーザIDおよびジョブで印刷した枚数が記録され、RAM22またはDISK30に保存される。
【0166】
尚、本実施形態では、図15および図16の処理において、一旦、ジョブデータを周辺機器1の中に構築した後、改めて図18および図19の処理において、ジョブデータの処理を行っているが、他の実施形態として、図15および図16と図18および図19の処理を合体させ、ジョブの解析と同時にジョブの処理を行うようにしてもよい。
【0167】
また、本実施形態では、ステップS813でアクセスチケット内の印刷可能枚数を判別し、さらに、ステップS815、S816においてディレクトリサーバ6に保持されているユーザの印刷可能枚数を判別しているが、他の実施形態として、ステップS813におけるアクセスチケット内の印刷可能枚数の判別、あるいはステップS815、S816におけるディレクトリサーバ6に保持されているユーザの印刷可能枚数の判別のどちらか一方を省略してもよい。
【0168】
また、本実施形態では、ジョブの結果の記録をログとして、ステップS820において周辺機器1内に保持しているが、ディレクトリサーバ6に保持されている、このユーザの印刷可能枚数および累積印刷枚数をジョブで印刷した枚数によって更新してもよい。印刷可能枚数の更新は、ディレクトリサーバ6に保持されているユーザIDによって示されるユーザの印刷可能枚数および累積印刷枚数をLDAPプロトコルにより取得し、この印刷可能枚数からジョブで印刷した枚数を減じ、更に累積印刷枚数にジョブで印刷した枚数を加え、得られたこれらの値をLDAPプロトコルによりディレクトリサーバ6に設定することにより、行われる。
【0169】
図20および図21は周辺機器1のLCD23に表示されるログイン画面の処理手順を示すフローチャートである。この処理は周辺機器1上で行われる。まず、属性情報(現在のユーザ管理モード)302を取得する(ステップS901)。属性情報302の値が「ユーザ管理なし」であるか否かを判別する(ステップS902)。
【0170】
判別の結果、ユーザ管理なしである場合、ログイン情報をRAM22に保存する(ステップS903)。ログイン情報には、ログインした時点でのユーザ管理モード、ユーザID、印刷可能枚数が保持されている。印刷可能枚数はログイン期間内でコンソールから発行されたプリントジョブ、コピージョブなどの印刷を伴うジョブで使用した印刷枚数により順次更新され、印刷可能枚数が値0になった時点でジョブは終了する。ステップS903において、印刷可能枚数は無限大に設定される。ログイン情報内のユーザIDはジョブで使用した印刷枚数と共にログに記録される。ステップS903の処理後、印刷保留ジョブの処理を行い(ステップS924)、処理を終了する。
【0171】
一方、ステップS902の判別結果、ユーザ管理ありの場合、属性情報302の値が「パスワード」であるか否かを判別する(ステップS904)。判別の結果、パスワードありの場合、LCD23にパスワード入力を促すユーザインターフェース画面を表示し、入力されたパスワードと予めRAM22またはDISK30に保持されているパスワード値との比較を行い(ステップS905)、合致していた場合、ステップS903でログインの処理を継続する。合致しなかった場合、ログイン不可として処理を中止する。
【0172】
一方、ステップS904の判別結果、パスワードなしの場合、属性情報302の値が「ユーザID」であるか否かを判別する(ステップS906)。ユーザIDである場合、LCD23にユーザID入力を促すユーザインターフェース画面を表示し、入力されたユーザIDを予めRAM22またはDISK30に保持されているユーザID値との比較を行い(ステップS907)、合致していた場合、ステップS903でログインの処理を継続する。合致しなかった場合、ログイン不可として処理を中止する。
【0173】
一方、ステップS906の判別結果、ユーザIDでない場合、属性情報302の値が「ユーザIDとパスワード」であるか否かを判別する(ステップS908)。判別の結果、ユーザIDとパスワードである場合、LCD23にユーザIDとパスワード入力を促すユーザインターフェース画面を表示し、入力されたユーザIDとパスワードを予めRAM22またはDISK30に保持されているユーザID値とパスワード値との比較を行い(ステップS909)、合致していた場合、ステップS903でログインの処理を継続する。合致しなかった場合、ログイン不可として処理を中止する。
【0174】
ステップS908の判別結果、ユーザIDとパスワードでない場合、属性情報305で示されるディレクトリサーバへのアクセスを試み、接続可能であるか否かを判別する(ステップS910)。
【0175】
アクセス可能である場合、LCD23にユーザ名とパスワード入力を促すユーザインターフェース画面を表示し(ステップS912)、入力されたユーザ名とパスワードを使用してKerberosプロトコルによりディレクトリサーバ6からアクセスチケットを取得する(ステップS914)。
【0176】
一方、ユーザ名とパスワードが誤っていた場合など、ディレクトリサーバ6からユーザ名またはパスワードが不正であるとのエラーが返信された場合、ステップS912において、再度、ユーザ名とパスワードの入力を促すユーザインターフェース画面を表示する。
【0177】
そして、ディレクトリサーバから取得したアクセスチケットを秘密暗号キー306を使用して解読する(ステップS915)。アクセスチケットの有効性を判別する(ステップS916)。この判別は、チケットが有効期限以内であるか否か、および印刷可能枚数が1枚以上であるか否かを調べることにより行われる。ステップS916の判別結果、アクセスチケットが有効でない場合、このユーザ名では機器を現在使用することができないことを表すユーザインターフェース画面をLCD23に表示し(ステップS917)、処理を終了する。
【0178】
一方、ステップS916の判別の結果、アクセスチケットが有効である場合、ログイン情報の保存およびユーザ情報キャッシュの更新を行う(ステップS925)。ログイン情報のうち、印刷可能枚数については、アクセスチケットで保持されていた枚数を設定する。
【0179】
図22はユーザ情報キャッシュのデータ構造を示す図である。このユーザ情報キャッシュは、RAM22またはDISK30に保持されている。ユーザ情報キャッシュの更新は、アクセスチケット取得する際に使用したユーザ名とパスワード、アクセスチケット内のユーザIDと印刷可能枚数、およびログインの日時をデータとして追加することにより行われる。既に同じユーザ名がユーザ情報キャッシュ内に存在する場合、既存情報の更新を行う。そして、ステップS925の処理後、印刷保留ジョブの処理を行い(ステップS922)、処理を終了する。
【0180】
一方、ステップS910において、ディレクトリサーバ6にアクセス不能な場合、属性情報(ディレクトリサーバ接続不可時に使用許可するかどうか)307を取得し、サーバ接続不可でも利用可能であるか否かを判別する(ステップS911)。使用許可されない場合、現在ログインすることができないことを表すユーザインターフェース画面をLCD23上に表示し(ステップS920)、処理を終了する。
【0181】
一方、ステップS911で使用不許可である場合、LCD23にユーザ名とパスワード入力を促すユーザインターフェース画面を表示し(ステップS918)、入力されたユーザ名とパスワードの組がRAM22またはDISK30に保持されているユーザ情報キャッシュ内に存在するか否かを判別する(ステップS919)。この判別の結果、ユーザ情報キャッシュ内に存在しない場合、このユーザ名では機器を現在使用することができないことを表すユーザインターフェース画面をLCD23上に表示し(ステップS921)、処理を終了する。
【0182】
一方、ステップS919の判別の結果、ユーザ名とパスワードの組がユーザ情報キャッシュの中に存在する場合、後述する処理によって印刷可能枚数の算出を行い、この値およびユーザIDをログイン情報として保存する(ステップS923)。また、ログイン情報内のユーザ管理モードには「セキュリティドメインに参加(ディレクトリサーバに接続不能)」の値が設定される。ステップS923の処理後、印刷保留ジョブの処理を行い(ステップS922)、処理を終了する。
【0183】
このログイン処理で保存されたログイン情報は、ログインセッション内のジョブ発行において動作の制限および記録のために使用される。すなわち、ログイン情報内の印刷印刷可能枚数を越えて印刷が行われた場合、ジョブを中止する。またジョブ内で印刷された印刷枚数はログイン情報の印刷可能枚数から引かれる。
【0184】
さらに、ログイン情報内のユーザ管理モードが「セキュリティドメインに参加(ディレクトリサーバに接続不能)」である場合、機器で保持されている属性情報「Directory Server接続不可時に使用する場合の制限の種類のリスト」308の内容にしたがって、最大印刷枚数312またはユーザ情報キャッシュの印刷可能枚数1013の値からジョブ内で印刷した枚数を減ずることにより、値を更新する。ログイン情報内のユーザIDは、ログインセッション内で発行されたジョブで印刷した枚数と共にログに記録される。そして、ユーザがログオフした時点で、ログイン情報は破棄される。
【0185】
尚、本実施形態では、ディレクトリサーバに接続可能な場合でも、ステップS925において、ログイン情報はログインした時点での印刷可能枚数を保持し、ログイン期間内でコンソールから発行されたジョブによってのみ印刷可能枚数が更新されるが、ディレクトリサーバに接続可能な場合、ジョブの発行直前にディレクトリサーバで保持されている、このユーザの印刷可能枚数を取得し、これにより印刷可能枚数を制限することも可能である。この場合、ステップS925で保持されるログイン情報にTGTを含ませ、これによってジョブの発行直前にディレクトリサーバ6に保持されているユーザの印刷可能枚数をKerberosプロトコルおよびLDAPプロトコルにより取得する。
【0186】
図20および図21の処理で更新されるユーザ情報キャッシュのデータは、前述したようにRAM22またはDISK30に保持されている。データは1行が1レコードの集合として表されており、1レコードはユーザ名1010、パスワード1011、ユーザID1012、印刷可能枚数1013およびログイン日時1014から構成されている。
【0187】
図23はステップS924およびS922における印刷保留ジョブの処理手順を示すフローチャートである。この処理は周辺機器1上で行われる。まず、周辺機器1内で印刷の実行が保留されているジョブの一覧を取得する(ステップS1101)。
【0188】
図20および図21で保持されたログイン情報内のユーザIDと、ステップS1101で取得した各ジョブが属性として含まれるユーザIDとを比較し、両者が合致するジョブのリストを作成する(ステップS1102)。ここで比較するジョブのユーザIDは、ジョブ内にアクセスチケット726が存在する場合、アクセスチケットを解読することにより取得して使用され、そうでない場合、ジョブ内に含まれるユーザID724が使用される。
【0189】
ステップS1102の処理の結果、リストが空であるか否かを判別し(ステップS1103)、判別の結果、空でない場合、処理を終了する。
【0190】
一方、ステップS1103で空である場合、ユーザIDが合致したジョブの一覧をユーザインターフェース画面としてLCD23に表示する(ステップS1104)。図24はステップS1104でLCD23に表示されるユーザインターフェース画面を示す図である。図中、1202はステップS1102で作成されたジョブのリストを表示している。1203はジョブを実行させるためのOKボタンであり、1204はジョブを実行させないでユーザインターフェース画面を閉じるキャンセルボタンである。
【0191】
そして、OKボタン1203、キャンセルボタン1204のどちらが押されたかを判別し(ステップS1105)、キャンセルボタンが押された場合、ユーザインターフェース画面を閉じて終了する。一方、OKボタンが押された場合、ステップS1102で生成したリスト中にあるジョブを実行し(ステップS1106)、処理を終了する。
【0192】
図25および図26は周辺機器1がPC(1)2、PC(2)3、PC(3)4から個々の属性情報を取得あるいは設定するためのアクセスコマンドを受信したときの処理手順を示すフローチャートである。まず、受信したコマンドおよびそのパラメータを解析する(ステップS1301)。
【0193】
この解析の結果から受信コマンドが属性獲得コマンドであるか否かを判別する(ステップS1302)。属性獲得コマンドである場合、属性獲得コマンドによって指定された属性が獲得可能であるか否かを判別する(ステップS1303)。属性が獲得可能である場合、周辺機器内に保持する属性の値を取得し(ステップS1304)、取得した属性値を返信コマンドのパラメータにセットし、属性獲得コマンドに対する返信コマンドをドライバソフトウェアに送信し(ステップS1305)、処理を終了する。
【0194】
一方、ステップ1303で属性が獲得可能でない場合、属性の獲得に失敗したことをドライバソフトウェアに通知する処理を行い(ステップS1317)、処理を終了する。
【0195】
また一方、ステップS1302で属性獲得コマンドでない場合、ステップ1301での解析の結果から受信コマンドが属性値変更コマンドであるか否かを判別する(ステップS1311)。属性値変更コマンドである場合、属性値変更コマンドによって指定された属性が変更可能であるか否かを判別する(ステップS1312)。
【0196】
変更可能である場合、指定されたコマンドパラメータにしたがって、指定された属性を指定された属性値に変更し(ステップS1313)、属性値の変更が成功したことをドライバソフトウェアに通知する処理を行い(ステップS1314)、処理を終了する。一方、変更不可能である場合、属性値の変更に失敗したことをドライバソフトウェアに通知する処理を行い(ステップS1315)、処理を終了する。一方、ステップS1311で属性変更コマンドでない場合、受信コマンドはその他のコマンドであり、その他のコマンドに依存した処理を行い(ステップS1316)、処理を終了する。
【0197】
図27および図28は周辺機器1に対してPC(1)2、PC(2)3、PC(3)4から機器管理、ジョブ管理などの管理コマンドを発行する処理手順を示すフローチャートである。この処理はPC(1)2、PC(2)3、PC(3)4上で実行される。まず、周辺機器1が保持する属性情報(現在のユーザ管理モード)302を取得する(ステップS1401)。
【0198】
属性情報302の値が「ユーザ管理なし」であるか否かを判別する(ステップS1402)。判別の結果、ユーザ管理なしである場合、図29で示される管理コマンドを生成し、周辺機器1に対して送信する(ステップS1403)。図29は管理コマンドのデータ構造を示す図である。図において、1501はユーザ管理モードを表し、ユーザID1502、パスワード1503、アクセスチケット1504のうち、どの情報が有効であるかを示す。また、1505はコマンドの種別を表す。さらに、1506はコマンドに必要なパラメータ1507の長さを表す。
【0199】
周辺機器1は、受信した管理コマンドを図30および図31に示される処理手順によって処理し、その結果を送信する。周辺機器1から送られた返信を処理する(ステップS1417)。この処理は、ステップS1403によって送られた管理コマンドの処理によって異なり、特に管理コマンドが周辺機器内で保持されているジョブの一覧を取得するためのコマンドである「ListJobs」であった場合、返信に含まれているジョブの一覧をCRT33にユーザインターフェース画面として表示する。この後、本処理を終了する。
【0200】
一方、ステップS1402の判別結果、ユーザ管理ありの場合、属性情報302の値が「パスワード」であるか否かを判別する(ステップS1404)。判別の結果、パスワードある場合、CRT33にパスワード入力を促すユーザインターフェース画面を表示する(ステップS1405)。そして、ステップS1403において入力されたパスワードを設定した管理コマンドを生成し、周辺機器1に対して送信する。
【0201】
一方、ステップS1404の判別結果、パスワードなしの場合、属性情報302の値が「ユーザID」であるか否かを判別する(ステップS1406)。判別の結果、ユーザIDであった場合、CRT33にユーザID入力を促すユーザインターフェース画面を表示する(ステップS1407)。そして、ステップS1403において入力されたユーザIDを設定した管理コマンドを生成し、周辺機器1に対して送信する。。
【0202】
一方、ステップS1406の判別の結果、ユーザIDでない場合、属性情報302の値が「ユーザIDとパスワード」であるか否かを判別する(ステップS1408)。判別の結果、ユーザIDとパスワードである場合、CRT33にユーザIDとパスワード入力を促すユーザインターフェース画面を表示する(ステップS1409)。そして、ステップS1403において、入力されたユーザIDとパスワードを設定した管理コマンドを生成し、周辺機器1に対して送信する。
【0203】
一方、ステップS1408の判別結果、ユーザIDとパスワードでない場合、使用しているPCにおいて、ユーザはディレクトリサーバ6が管理するセキュリティドメインに既にログインしているか否かを判別する(ステップS1410)。この判別は、使用しているPCのオペレーティングシステムに対して問い合わせることによって行われる。
【0204】
判別の結果、ログイン済みでない場合、CRT33にユーザIDとパスワード入力を促すユーザインターフェース画面を表示し(ステップS1411)、これらの情報をディレクトリサーバ6にKerberosプロトコルを使用して送ることにより、TGT(チケット生成チケット)情報を取得する(ステップS1413)。
【0205】
一方、ステップS1410の判別結果、ログイン済みの場合、既にログインしているので、オペレーティングシステムに対して現在のセッションで使用しているTGTを要求して取得する(ステップS1412)。
【0206】
ステップS1412またはS1413において取得したTGTおよびジョブ発行先の周辺機器1を特定する識別子(パラメータ)をディレクトリサーバ6に対してKeberosプロトコルによって送信し、周辺機器1に対するアクセスチケットを取得する(ステップS1414)。ここで取得したアクセスチケットは、ユーザ名、ユーザID、ユーザの印刷可能枚数、アクセスチケットの有効期限に関する情報を、周辺機器1の秘密暗号キー306によって暗号化したものとなっている。アクセスチケット内部のデータフォーマットおよび使用される暗号方式(アルゴリズム)は、現在対応しているディレクトリサーバの種類304によって一意に予め決められている。
【0207】
ステップS1414で取得したアクセスチケットを設定した管理コマンドを生成し、周辺機器1に対して送信する(ステップS1415)。この後、ステップS1417と同じ返信の処理を行う(ステップS1416)。この後、処理を終了する。
【0208】
図30および図31は図27および図28の処理によって生成され、周辺機器1に送信された管理コマンドを周辺機器1が処理する手順を示すフローチャートである。この処理は周辺機器1上で実行される。
【0209】
まず、属性情報(現在のユーザ管理モード)302を取得する(ステップS1601)。属性情報302の値が「ユーザ管理なし」であるか否かを判別する(ステップS1602)。判別の結果、ユーザ管理なしの場合、値0を管理コマンド内のユーザID1502に設定し(ステップS1603)、ステップS1613以降のコマンドの種別にしたがった処理を行う。
【0210】
一方、ステップS1602の判別結果、ユーザ管理ありの場合、属性情報302の値が「パスワード」であるか否かを判別する(ステップS1604)。判別の結果、パスワードである場合、予めRAM22またはDISK30に保持されているパスワード値とパスワード1503との比較を行い、合致していた場合、値0を管理コマンド内のユーザID1502に設定する(ステップS1605)。この後、ステップS1613以降のコマンドの種別にしたがった処理を行う。合致しなかった場合、エラーを返信し、管理コマンドの処理を中止する。
【0211】
一方、ステップS1604の判別結果、パスワードでない場合、属性情報302の値が「ユーザID」であるか否かを判別する(ステップS1606)。判別の結果、ユーザIDである場合、予めRAM22またはDISK30に保持されているユーザID値とユーザID1502との比較を行う(ステップS1607)。合致していた場合、ステップS1613以降のコマンドの種別にしたがった処理を行う。合致しなかった場合、エラーを返信し、管理コマンドの処理を中止する。
【0212】
一方、ステップS1606の判別結果、ユーザIDでない場合、属性情報302の値が「ユーザIDとパスワード」であるか否かを判別する(ステップS1608)。判別の結果、ユーザIDとパスワードである場合、予めRAM22またはDISK30に保持されているユーザID値およびパスワード値と、ユーザID1502およびパスワード1503との比較をそれぞれ行い(ステップS1607)、両者が合致していた場合、ステップS1613以降のコマンドの種別にしたがった処理を行う。合致しなかった場合、エラーを返信し、管理コマンドの処理を中止する。
【0213】
一方、ステップS1608で、ユーザIDとパスワードでない場合、アクセスチケット1504の値を秘密暗号キー306を使用して解読する(ステップS1610)。解読の結果、アクセスチケットの有効性および有効期限を判別し(ステップS1611)、判別の結果、アクセスチケットが有効である場合、アクセスチケット内のユーザIDを管理コマンド内のユーザID1502に設定し、ステップS1613以降のコマンドの種別にしたがった処理を行う。一方、ステップS1611の判別結果、アクセスチケットが有効でない場合、エラーを返信し(ステップS1612)、管理コマンドの処理を終了する。
【0214】
ステップS1613以降の処理では、まず、コマンドの種別1505が「ListJobs」(ジョブの一覧を取得する)であるか否かを判別する(ステップS1613)。判別の結果、コマンドの種別1505が「ListJobs」である場合、周辺機器1内に保持されているジョブの一覧を取得する(ステップS1614)。このとき、「現在のユーザ管理モード」302が「セキュリティドメインに参加」の場合、各ジョブのアクセスチケット726を秘密暗号キー306によって解読し、得られたユーザIDをジョブのユーザID724にセットしておく。
【0215】
そして、ステップS1614に取得されたジョブのユーザID724と、管理コマンド内に含まれるユーザID1502との比較を行い、両者が合致しないジョブのジョブ名を空白に変換する(ステップS1615)。一方、両者が合致するジョブのジョブ名は空白に変換しない。ステップS1615で得られたジョブリストを返信し(ステップS1616)、処理を終了する。
【0216】
一方、ステップS1613の判別結果、コマンドの種別1505が「CancelJob」(指定されたジョブをキャンセルする)であるか否かを判別する(ステップS1617)。判別の結果、コマンドの種別1505が「CancelJob」でない場合、機器管理コマンドの処理を行い(ステップS1619)、処理を終了する。このステップS1619における機器管理コマンドの処理では、コマンド種別1505によって場合分けすることにより、複数の機器管理コマンドの処理を行ってもよい。
【0217】
ステップS1617の判別結果、指定されたジョブの情報を取得する(ステップS1618)。このとき、「現在のユーザ管理モード」302が「セキュリティドメインに参加」である場合、ジョブのアクセスチケット726を秘密暗号キー306によって解読し、得られたユーザIDをジョブのユーザID724にセットしておく。
【0218】
そして、ジョブのユーザID724と、管理コマンド内に含まれるユーザID1502との比較を行い(ステップS1620)、両者が合致しない場合、管理コマンドの実行失敗を返信し(ステップS1623)、処理を終了する。一方、ステップS1620で両者が合致した場合、指定されたジョブをキャンセルし(ステップS1621)、管理コマンドの実行成功を返信し(ステップS1622)、処理を終了する。
【0219】
尚、ステップS1621の処理を変更することにより、ジョブのアクセス制御機能が付加されたジョブキャセル以外のジョブ管理(例えば、ジョブの一時停止、再開、割り込み、優先度の向上、優先度の低下など)を行わせることも可能である。
【0220】
図32は周辺機器1および周辺機器5のログを集計し、ディレクトリサーバ6のユーザ毎の印刷可能枚数および累積印刷枚数を更新するための処理手順を示すフローチャートである。この処理はディレクトリサーバ6で実行される。まず、対象となる周辺機器からログを取得する(ステップS1901)。
【0221】
ログの情報からユーザID毎に印刷した枚数を合算する(ステップS1902)。ディレクトリサーバ6から各ユーザ毎の印刷可能枚数と累積印刷枚数をLDAPプロトコルにより取得し、得られた枚数を印刷可能枚数から減算し、更に累積印刷枚数に加え、得られたこれらの結果をLDAPプロトコルによってディレクトリサーバ6に設定する(ステップS1903)。これにより、ディレクトリサーバ6の各ユーザ毎の印刷可能枚数および累積印刷枚数は更新される。
【0222】
このように、図32の処理を、周辺機器1および周辺機器5を対象として行うことにより、2台の周辺機器に対する印刷可能枚数および累積印刷枚数がディレクトリサーバ6によって集中管理される。
【0223】
尚、他の実施形態として、ジョブで使用した印刷枚数をログに保存せず、ジョブの終了毎にディレクトリサーバ6に接続することにより、ディレクトリサーバ6のデータを更新する場合、図32の処理を実行する必要は無い。
【0224】
図33および図34は図20および図21のステップS923におけるディレクトリサーバに接続不能時の印刷可能枚数の算出を行う算出処理手順を示すフローチャートである。この処理は周辺機器1上で実行される。まず、現在の印刷可能枚数の制限の種類309を取得する(ステップS2001)。
【0225】
制限の種類309が「無制限」であるか否かを判別する(ステップS2002)。判別の結果、無制限である場合、印刷可能枚数を無制限に設定し(ステップS2003)、処理を終了する。一方、ステップS2002の判別の結果、無制限でない場合、制限の種類309が「時間制限」、「時間制限&固定最大枚数で制限」または「時間制限&最大枚数で制限」のいずれであるか否かを判別する(ステップS2004)。判別の結果、いずれである場合、ユーザ情報キャッシュ内のユーザの最終ログイン日時1014を取得し(ステップS2005)、この日時と現在の日時との時間差が時間制限の長さ310で指定されている値以下であるか否かを判別する(ステップS2006)。
【0226】
指定されている値以下である場合、印刷可能枚数を値0に設定し(ステップS2007)、処理を終了する。一方、ステップS2004の判別の結果、「時間制限」、「時間制限&固定最大枚数で制限」または「時間制限&最大枚数で制限」のいずれでもない場合、あるいはステップS2006の制限時間内である場合、制限の種類309が「固定最大枚数で制限」または「時間制限&固定最大枚数で制限」のいずれであるか否かを判別する(ステップS2008)。
【0227】
「固定最大枚数で制限」または「時間制限&固定最大枚数で制限」のいずれである場合、最大枚数312の値を印刷可能枚数に設定し(ステップS2010)、処理を終了する。一方、ステップS2008の判別結果、「固定最大枚数で制限」または「時間制限&固定最大枚数で制限」のいずれでもない場合、制限の種類309が「最大枚数で制限」または「時間制限&最大枚数で制限」のいずれであるか否かを判別する(ステップS2009)。「最大枚数で制限」または「時間制限&最大枚数で制限」のいずれである場合、次式(1)により枚数を算出し、印刷可能枚数として設定し(ステップS2011)、処理を終了する。
【0228】
印刷可能枚数=ユーザ情報キャッシュ内の印刷可能枚数1013 − 最大枚数の日毎の削減割合×最後にログインしてからの時間(日数) ……(1)
ここで、最後にログインしてからの時間(日数)は、ユーザ情報キャッシュのログイン日時1014から現在の日時を引いた時間を、値24で割って小数点以下を切り捨てたものである。
【0229】
一方、ステップS2009の判別結果、「最大枚数で制限」または「時間制限&最大枚数で制限」のいずれでもない場合、ログイン毎の最大枚数313を印刷可能枚数に設定し(ステップS2012)、処理を終了する。
【0230】
尚、本実施形態では、図6、図8、図10のフローチャートに示す処理手順によって、それぞれ「サポートしているユーザ管理モードのリスト」、「対応可能なDirectory Serverの種類リスト」、「Directory Server接続不可時に使用する場合の制限の種類のリスト」を、PC(1)2、PC(2)3、PC(3)4が周辺機器1から直接取得しているが、他の実施形態として、「サポートしているユーザ管理モードのリスト」、「対応可能なDirectory Serverの種類リスト」、「Directory Server接続不可時に使用する場合の制限の種類のリスト」を周辺機器1から取得し、一旦、ディレクトリサーバ6に機器情報として保持し、PC(1)2、PC(2)3、PC(3)4はディレクトリサーバ6から取得するようにしてもよい。
【0231】
[第2の実施形態]
前記第1の実施形態では、図29において、管理コマンド中にアクセスチケットを含ませていたが、アクセスチケットのデータサイズは一般的に管理コマンドの他のデータサイズに比較して大きいものとなってしまうので、パフォーマンスなどに問題が生じる場合がある。この問題を解決するための周辺機器制御システムを第2の実施形態として以下に説明する。
【0232】
図35は後述する管理コマンド生成処理によって生成され、周辺機器1に送信される管理コマンドのデータ構造を示す図である。図において、2301はユーザ管理モードを表し、ユーザID2302、パスワード2303、セッションキー2304のうち、どの情報が有効であるかを示すものである。
【0233】
セッションキー2304は周辺機器1によって発行され、周辺機器1内のアクセスチケットキャッシュによってアクセスチケットと1対1の対応付けがなされている。図において、2305はコマンドの種別を表す。2306はコマンドに必要なパラメータ2307の長さを表す。
【0234】
図36は後述するアクセスチケット設定コマンドの処理によって周辺機器1のRAM22内に保持されるアクセスチケットキャッシュのデータ構造を示す図である。アクセスチケットキャッシュは、セッションキー2401とアクセスチケット2402の対を1レコードとして、複数レコードによって構成されている。ここで保持されているアクセスチケットは、秘密暗号キー306を利用した解読後のものとなっている。
【0235】
図37および図38は後述する管理コマンド生成処理によって生成され、周辺機器1に送信された管理コマンドを、周辺機器1が処理する手順を示すフローチャートである。この処理は周辺機器1上で実行される。この処理手順では、図30および図31のステップS1608までのステップ処理は同一であるので、そのステップ処理を省略し、ステップS1608の判別処理がNO(偽)であった場合、つまり、ユーザ管理モードが「セキュリティドメインに参加」であった場合から示すこととする。
【0236】
まず、セッションキー2304が値0であるか否かを判別する(ステップS2501)。ステップS2501の判別の結果、セッションキー2304が値0である場合、管理コマンド種別2305が「アクセスチケット設定コマンド」であるか否かを判別する(ステップS2502)。「アクセスチケット設定コマンド」でない場合、エラーを返信し(ステップS2507)、処理を終了する。
【0237】
一方、ステップS2502の判別の結果、「アクセスチケット設定コマンド」である場合、管理コマンドパラメータ2307に含まれているアクセスチケットの値を秘密暗号キー306を使用して解読する(ステップS2519)。解読の結果、アクセスチケットの有効性および有効期限を判別する(ステップS2520)。
【0238】
アクセスチケットが有効でない場合、エラーを返信し(ステップS2521)、管理コマンドの処理を終了する。一方、ステップS2520において判別の結果、アクセスチケットが有効である場合、解読されたアクセスチケットの内容を、アクセスチケットに1対1に対応するセッションキーを生成し、セッションキーと共にアクセスチケットキャッシュに保存する(ステップS2503)。生成されたセッションキーを返信し(ステップS2504)、処理を終了する。
【0239】
一方、ステップS2501でセッションキーが値0以外である場合、セッションキーをアクセスチケットキャッシュ内で検索し(ステップS2505)、セッションキーが存在するか否かを判別する(ステップS2506)。判別の結果、エラーを返信し(ステップS2507)、処理を終了する。
【0240】
一方、ステップS2506の判別の結果、セッションキーが存在する場合、アクセスチケットキャッシュからセッションキーに対応するアクセスチケットを取得し、アクセスチケット内のユーザIDを管理コマンド内のユーザID2302に設定し(ステップS2522)、ステップS2508以降のコマンドの種別にしたがった処理を行う。
【0241】
ステップS2508以降の処理では、まず、コマンドの種別2305が「ListJobs」(ジョブの一覧を取得する)であるか否かを判別する(ステップS2508)。判別の結果、コマンドの種別2305が「ListJobs」である場合、周辺機器1内に保持されているジョブの一覧を取得する(ステップS2509)。このとき、「現在のユーザ管理モード」302が「セキュリティドメインに参加」である場合、各ジョブのアクセスチケット726を秘密暗号キー306によって解読し、得られたユーザIDをジョブのユーザID724にセットしておく。
【0242】
ステップS2509に取得されたジョブのユーザID724と、管理コマンド内に含まれるユーザID2302との比較を行い、両者が合致しないジョブのジョブ名を空白に変換する(ステップS2510)。得られたジョブリストを返信し(ステップS2511)、処理を終了する。
【0243】
一方、ステップS2508の判別の結果、コマンドの種別1505が「CancelJob」(指定されたジョブをキャンセルする)であるか否かを判別する(ステップS2512)。コマンドの種別2305が「CancelJob」でない場合、機器管理コマンドの処理を行い(ステップS2517)、処理を終了する。このステップS2517における機器管理コマンドの処理では、コマンド種別2305によって場合分けすることにより、複数の機器管理コマンドの処理を行ってもよい。
【0244】
一方、ステップS2512の判別の結果、コマンドの種別1505が「CancelJob」である場合、指定されたジョブの情報を取得する(ステップS2513)。このとき、「現在のユーザ管理モード」302が「セキュリティドメインに参加」である場合、ジョブのアクセスチケット726を秘密暗号キー306によって解読し、得られたユーザIDをジョブのユーザID724にセットしておく。
【0245】
ジョブのユーザID724と、管理コマンド内に含まれるユーザID2302との比較を行い(ステップS2514)、両者が合致しない場合、管理コマンドの実行失敗を返信し(ステップS2518)、処理を終了する。
【0246】
一方、ステップS2514において、両者が合致した場合、指定されたジョブをキャンセルし(ステップS2515)、管理コマンドの実行成功を返信し(ステップS2516)、処理を終了する。
【0247】
尚、図37および図38で示した管理コマンドの処理手順をジョブ処理時にも適用することによって、図17と図18および図19に示すように、ジョブにアクセスチケットを含ませるのではなく、ジョブにセッションキーを含ませることも可能である。
【0248】
図39は図37および図38の処理を実行している周辺機器1に対してPC(1)2、PC(2)3、PC(3)4から機器管理、ジョブ管理などの管理コマンドを発行する処理手順を示すフローチャートである。この処理はPC(1)2、PC(2)3、PC(3)4上で実行される。また、この処理手順は、図27および図28のステップS1412およびS1413までは同一であるので、ここではステップS1412またはS1413によってTGTを取得終了後から示すこととする。
【0249】
すなわち、ステップS1412またはS1413において取得したTGTおよびジョブ発行先の周辺機器1を特定する識別子(パラメータ)をディレクトリサーバ6に対してKeberosプロトコルによって送信し、周辺機器1に対するアクセスチケットを取得する(ステップS2601)。ここで取得したアクセスチケットは、ユーザ名、ユーザID、ユーザの印刷可能枚数、アクセスチケットの有効期限に関する情報を、周辺機器1の秘密暗号キー306によって暗号化したものとなっている。アクセスチケット内部のデータフォーマットおよび使用される暗号方式(アルゴリズム)は、現在対応しているディレクトリサーバの種類304によって一意に予め決められている。
【0250】
ステップS2601で取得したアクセスチケットをコマンドパラメータ2307に設定したアクセスチケット設定コマンドを生成し、周辺機器1に対して送信する(ステップS2602)。ここで送信される管理コマンドは、セッションキー2304が値0、コマンド種別2305が「アクセスチケット設定コマンド」となっている。
【0251】
周辺機器1からの返信がエラーか否かを判別し(ステップS2603)、エラーであった場合、処理を終了する。一方、ステップS2603の判別の結果、エラーでない場合、ステップS2602で取得したセッションキーを管理コマンドのセッションキー2304に設定し、管理コマンドデータの管理コマンド種別2305、コマンドパラメータ長2306、コマンドパラメータ2307に適切な値を設定して周辺機器1に送信する(ステップS2604)。周辺機器1からの返信を処理し(ステップS2605)、処理を終了する。
【0252】
尚、同一周辺機器に対して同一ユーザがジョブ管理コマンドまたは機器管理コマンドを発行する際、既に必要なアクセスチケットが周辺機器に保持されており、それに対するセッションキーを取得済みであるので、ステップS2601からS2603までのステップを省略することができる。これにより、パフォーマンス良く、周辺機器のジョブ管理および機器管理を行うことができる。
【0253】
以上示したように、上記実施形態によれば、ネットワーク環境下で、アクセス権に関して統一したジョブ管理を行うことができる。また、ネットワーク環境下で、アクセス権に関して統一したジョブ管理を行うことができる。さらに、ジョブを発行したユーザだけがジョブをキャンセルすることができる。
【0254】
また、ジョブを発行したユーザだけがジョブの全情報を知ることができ、他のユーザはジョブの一部の情報だけを知ることができる。さらに、ネットワーク環境下で、アクセス権に関して統一したジョブ情報をパフォーマンス良く行うことができる。また、ジョブを発行したユーザだけがジョブのキャンセルをパフォーマンス良く行うことができる。さらに、ジョブを発行したユーザだけがジョブの全情報をパフォーマンス良く知ることができ、他のユーザはジョブの一部の情報だけを知ることができる。
【0255】
また、ネットワーク環境下で、アクセス権に関して統一した機器管理を行うことができる。さらに、ネットワーク環境下で、アクセス権に関して統一した機器管理をパフォーマンス良く行うことができる。また、周辺機器にジョブ管理コマンドを発行することができる。さらに、周辺機器にジョブキャンセルコマンドを発行することができる。また、周辺機器にジョブを表示することができる。さらに、周辺機器に機器管理コマンドを発行することができる。
【0256】
本実施形態によれば、ネットワークなどを介して、外部から周辺機器が対応可能なディレクトリサーバの種類のリストを取得することができる。また、ネットワークなどを介して、外部から周辺機器が現在対応しているディレクトリサーバの種類を取得・設定することができる。さらに、対応可能なディレクトリサーバの種類のリストを取得してユーザインターフェース上に表示することができる。また、現在対応しているディレクトリサーバを取得してユーザインターフェース上に表示することができると共に、設定を変更することができる。
【0257】
本実施形態によれば、統一したユーザ情報を複数の周辺機器で使用することができる。また、複数の周辺機器を使用する環境において、累積印刷枚数および最大印刷可能枚数を集中管理することができる。また、複数の周辺機器を使用する環境において、最大印刷可能枚数によるユーザ毎の印刷制限を行うことができる。
【0258】
また、ディレクトリサーバに接続できなかった場合に取る動作モードの設定を、ネットワークなどを介して外部から行うことができる。さらに、ディレクトリサーバに接続できなかった場合、周辺機器を使用することができる。また、ディレクトリサーバに接続できなかった場合、最後に正常にログインしてから一定時間内に周辺機器を使用することができる。さらに、ディレクトリサーバに接続できなかった場合、最後に正常にログインしてから一定時間内、機器で保存されている最大印刷枚数を越えない範囲で周辺機器を使用できる。また、ディレクトリサーバに接続できなかった場合、最後に正常にログインしてから一定時間内、最後に正常にログインした時点での最大印刷可能枚数まで周辺機器を使用することができる。さらに、ディレクトリサーバに接続できなかった場合、機器で保存されている最大印刷枚数を越えない範囲で周辺機器を使用することができる。
【0259】
また、ディレクトリサーバに接続できなかった場合、最後に正常にログインした時点での最大印刷可能枚数まで周辺機器を使用することができる。さらに、ディレクトリサーバに接続できなかった場合、ログイン毎の最大印刷可能枚数を越えない範囲で周辺機器を使用することができる。また、ディレクトリサーバに接続できなかった場合、正確なユーザ管理を行うためにユーザに対して周辺機器の使用を禁止することができる。さらに、正常にディレクトリサーバに接続してからの予想印刷枚数を加味した最大印刷可能枚数まで周辺機器を使用することができる。また、周辺機器にジョブを発行することができる。
【0260】
つぎに、上記実施形態における周辺機器の複写処理動作を示す。図40は周辺機器1における複写処理手順を示すフローチャートである。この処理プログラムは、コントローラ11内のROM25に格納されており、周辺機器1のキーボード24に設けられたコピースタートボタンが押されることによりCPU21によって実行される。周辺機器1は、コピースタートボタンが押されると、スキャナエンジン27に置かれた紙原稿のイメージをプリンタ28で印刷する機能を有する。コピースタートボタンが押されたというイベントは、キーボード24からCPU21に送られ、コピージョブの発行指示として解釈される。
【0261】
但し、予め図21のステップS920、S921、S917において、現在ログインしているユーザの使用不可の表示が行われている場合や、ユーザがログインしていない場合には、コピースタートボタンが押されたイベントは、CPU21に送られない設定となっており、図40のフローチャートに示す処理は実行されない。
【0262】
コピースタートボタンからのイベントをCPU21が受けると、この処理を開始し、まず、図20のステップS903、S923およびS925のいずれかのステップ処理で保存されたログイン情報を取得する(ステップS4001)。現在のユーザ管理モードがセキュリティドメインに参加であるか否かを判別する(ステップS4002)。判別の結果、セキュリティドメインに参加しない場合、スキャナエンジン27に置かれた紙原稿のイメージをプリンタエンジン28で印刷し、印刷された枚数を、ログイン情報に含まれているユーザ名またはユーザIDと共にログに記録し(ステップS4003)、この処理を終了する。
【0263】
一方、ステップS4002の判別の結果、セキュリティドメインに参加である場合、ログイン情報に保持されている印刷可能枚数を取得する(ステップS4004)。さらに、スキャナエンジン27に置かれた紙原稿のイメージをプリンタエンジン28で印刷し、印刷された枚数を、ログイン情報に含まれているユーザ名またはユーザIDと共にログに記録し(ステップS4005)、この処理を終了する。このとき、ステップS4004で取得した印刷可能枚数を越えた場合、印刷を強制終了させ、その旨をLCD23上に表示する。そして、コピージョブの結果に基づき、そのコピージョブを実行したユーザのディレクトリサーバ6上のログ情報を更新する。
【0264】
すなわち、ディレクトリサーバ6からコピージョブを実行したユーザに対応した印刷可能枚数および累積印刷枚数をLDAPプロトコルにより取得し、コピージョブで使用したコピー枚数を印刷可能枚数から減算し、更に累積印刷枚数に加え、得られたこれらの結果をLDAPプロトコルによってディレクトリサーバ6に設定する。これにより、ディレクトリサーバ6で管理されている各ユーザ毎の印刷可能枚数および累積印刷枚数は更新される。
【0265】
尚、以上が本発明の実施の形態の説明であるが、本発明は、これら実施の形態の構成に限られるものではなく、特許請求の範囲で示した機能、または実施の形態の構成が持つ機能が達成できる構成であればどのようなものであっても適用可能である。
【0266】
例えば、周辺機器1(または2)におけるログイン(ユーザ認証)では、周辺機器1のシステムバス20に接続されたICカードリーダを介して、ユーザが挿入したICカードに保持された情報、あるいはシステムバス20に接続された指紋リーダ、虹彩(アイリス)リーダ、声紋リーダなどの生体情報リーダを介して、ユーザが提示した指紋、虹彩(アイリス)、声紋などの生体情報を、ユーザ情報として使用することも可能である。
【0267】
この場合、図21のステップS912では、ユーザに対して適当なユーザ情報の提示を促し、各リーダから得られたユーザ情報は、図21のステップS914でディレクトリサーバ6に送られる。そして、ディレクトリサーバ6におけるユーザ情報の検証の結果、ユーザ認証が得られた場合、周辺機器1は、該当ユーザに対するアクセスチケットまたはセッション情報であるTGTを取得する。
また、周辺機器制御ソフトウェアが、対象となる周辺機器が対応ディレクトリサーバの種類の情報を持つ必要がなく、汎用的な周辺機器制御システムを提供できる。
さらに、ネットワークなどに接続された複数の機器を使用する環境下で、ユーザ情報の統一管理を行い、同じユーザ情報を複数の機器で使用することができる。また、ネットワークなどで接続された複数の機器を使用する環境下で、ユーザ毎の累積印刷枚数および最大印刷可能枚数の集中管理を行うことができる。さらに、ネットワークの障害があった場合、一時的に周辺機器を使用できる。
【0268】
また、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記憶した記録媒体を、システムあるいは装置にプログラムを供給することによって達成される場合にも適用できることはいうまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムを記憶した記憶媒体は本発明を構成することになる。
【0269】
上記実施形態では、各フローチャートに示すプログラムコードは記憶媒体に格納されている。プログラムコードを供給する記憶媒体としては、例えば、ROM、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、DVD、磁気テープ、不揮発性のメモリカードなどを用いることができる。
【0270】
【発明の効果】
本発明によれば、ネットワーク環境内でのジョブ管理に関し、統一したアクセス制御を行うことができる。また、ネットワーク環境内でのジョブ管理に関し、統一したアクセス制御を、パフォーマンスが悪化しないように行うことができる。
【図面の簡単な説明】
【図1】第1の実施形態における周辺機器制御システムの構成を示すブロック図である。
【図2】周辺機器(MFP1、MFP2)の構成を示すブロック図である。
【図3】コントローラ11のハードウェア構成を示すブロック図である。
【図4】ネットワークシステムを構成するPCのハードウェア構成を示すブロック図である。
【図5】周辺機器1で保持されている属性情報を示す図である。
【図6】周辺機器1のユーザ管理モードをPC(1)2、PC(2)3、PC(3)4から表示・変更する場合の処理手順を示すフローチャートである。
【図7】ステップS1705におけるユーザ入力待ちの状態でCRT33に表示されたユーザインターフェース画面を示す図である。
【図8】周辺機器1に対応するディレクトリサーバをPC(1)2、PC(2)3、PC(3)4から表示・変更する場合の動作処理手順を示すフローチャートである。
【図9】ステップS1807におけるユーザ入力待ちの状態でCRT33に表示されたユーザインターフェース画面を示す図である。
【図10】周辺機器1がディレクトリサーバ6に接続できない場合にログインをどの様に許可するかを、PC(1)2、PC(2)3、PC(3)4から表示・変更する場合の処理手順を示すフローチャートである。
【図11】ステップS2207のユーザ入力待ちの状態でCRT33に表示されたユーザインターフェース画面を示す図である。
【図12】周辺機器1に対してPC(1)2、PC(2)3、PC(3)4からプリントジョブ、スキャナジョブ、ファックス送信ジョブあるいはコピージョブを発行する処理手順を示すフローチャートである。
【図13】図12に続き、周辺機器1に対してPC(1)2、PC(2)3、PC(3)4からプリントジョブ、スキャナジョブ、ファックス送信ジョブあるいはコピージョブを発行する処理手順を示すフローチャートである。
【図14】ステップS403におけるジョブ発行処理手順を示すフローチャートである。
【図15】周辺機器1が図14の処理によって発行されたジョブを受信したときのジョブ投入コマンド受信処理手順を示すフローチャートである。
【図16】図15に続き、周辺機器1が図14の処理によって発行されたジョブを受信したときのジョブ投入コマンド受信処理手順を示すフローチャートである。
【図17】図14の処理により周辺機器1内で保持されたジョブのデータ構造を示す図である。
【図18】図17で示された周辺機器1に保持されたジョブデータの処理手順を示すフローチャートである。
【図19】図18に続き、図17で示された周辺機器1に保持されたジョブデータの処理手順を示すフローチャートである。
【図20】周辺機器1のLCD23に表示されるログイン画面の処理手順を示すフローチャートである。
【図21】図20に続き、周辺機器1のLCD23に表示されるログイン画面の処理手順を示すフローチャートである。
【図22】ユーザ情報キャッシュのデータ構造を示す図である。
【図23】ステップS924およびS922における印刷保留ジョブの処理手順を示すフローチャートである。
【図24】ステップS1104でLCD23に表示されるユーザインターフェース画面を示す図である。
【図25】周辺機器1がPC(1)2、PC(2)3、PC(3)4から個々の属性情報を取得あるいは設定するためのアクセスコマンドを受信したときの処理手順を示すフローチャートである。
【図26】図25に続き、周辺機器1がPC(1)2、PC(2)3、PC(3)4から個々の属性情報を取得あるいは設定するためのアクセスコマンドを受信したときの処理手順を示すフローチャートである。
【図27】周辺機器1に対してPC(1)2、PC(2)3、PC(3)4から機器管理、ジョブ管理などの管理コマンドを発行する処理手順を示すフローチャートである。
【図28】図27に続き、周辺機器1に対してPC(1)2、PC(2)3、PC(3)4から機器管理、ジョブ管理などの管理コマンドを発行する処理手順を示すフローチャートである。
【図29】管理コマンドのデータ構造を示す図である。
【図30】図22の処理によって生成され、周辺機器1に送信された管理コマンドを周辺機器1が処理する手順を示すフローチャートである。
【図31】図30に続き、図22の処理によって生成され、周辺機器1に送信された管理コマンドを周辺機器1が処理する手順を示すフローチャートである。
【図32】周辺機器1および周辺機器5のログを集計し、ディレクトリサーバ6のユーザ毎の印刷可能枚数および累積印刷枚数を更新するための処理手順を示すフローチャートである。
【図33】図17のステップS923におけるディレクトリサーバに接続不能時の印刷可能枚数の算出を行う算出処理手順を示すフローチャートである。
【図34】図33に続き、図17のステップS923におけるディレクトリサーバに接続不能時の印刷可能枚数の算出を行う算出処理手順を示すフローチャートである。
【図35】後述する管理コマンド生成処理によって生成され、周辺機器1に送信される管理コマンドのデータ構造を示す図である。
【図36】後述するアクセスチケット設定コマンドの処理によって周辺機器1のRAM22内に保持されるアクセスチケットキャッシュのデータ構造を示す図である。
【図37】後述する管理コマンド生成処理によって生成され、周辺機器1に送信された管理コマンドを、周辺機器1が処理する手順を示すフローチャートである。
【図38】図37に続き、後述する管理コマンド生成処理によって生成され、周辺機器1に送信された管理コマンドを、周辺機器1が処理する手順を示すフローチャートである。
【図39】図29の処理を実行している周辺機器1に対してPC(1)2、PC(2)3、PC(3)4から機器管理、ジョブ管理などの管理コマンドを発行する処理手順を示すフローチャートである。
【図40】周辺機器1における複写処理手順を示すフローチャートである。
【符号の説明】
2、3、4 パーソナルコンピュータ(PC)
3、5 周辺機器(MFP)
6 ディレクトリサーバ
11 コントローラ
21、31 CPU
25、36 ROM
301、302 属性情報
724、1502、2302 ユーザID
726、1504、2402 アクセスチケット
2304、2401 セッションキー[0001]
BACKGROUND OF THE INVENTION
The present invention relates to peripheral devices that control peripheral devices such as printers, scanners, copiers, and facsimiles, set corresponding servers, manage user information of peripheral devices, and manage the number of prints., Its control method,The present invention relates to a program and a storage medium.
[0002]
[Prior art]
Conventionally, peripheral devices such as printers, copiers, facsimiles (FAX), etc., manage jobs that are suspended or run in the peripheral devices (display a job list, cancel specified jobs, etc.) Alternatively, it can be performed from a computer connected to a peripheral device via a network or the like.
[0003]
Conventionally, peripheral devices that can include an access ticket issued from a directory server in a job or control command must decrypt the access ticket using a secret encryption key. Since the conversion method and the format of the access ticket differ depending on the type of the corresponding directory server, it is necessary to set in advance which directory server the peripheral device supports.
[0004]
Furthermore, conventionally, peripheral devices such as copiers and facsimiles display a dialog for user authentication on the console to manage user information, and authenticate users by inputting user information in this dialog. I was going. The user information obtained here is checked against a database of user information managed inside the device, and if it matches, the user's use permission is issued. In addition, when some printing is performed as a result of user operation, the number of printed sheets is recorded in a log together with user information obtained at the time of login, or accumulated in a counter for each user to manage the number of printed sheets for each user. I was going.
[0005]
Conventionally, in peripheral devices such as printers and copiers, management of the number of printed sheets for each user and management of the number of printed sheets such as the maximum number of printed sheets has been performed by the single device. In this case, a counter representing cumulative printing is provided in the device, and when this value reaches a preset value, printing is terminated or job acceptance is rejected.
[0006]
[Problems to be solved by the invention]
However, if the device that issued the job is different from the device that manages the job, for example, if you issue a print job from the computer to the copier and try to cancel this job from the console on the copier, you will be logged into the computer. The information used to log in is different from the information used to log in to the copier, so it is not clear whether the job is being managed by the job issuer. there were. In the present invention, in order to perform unified access control, a means for including user information in a management command is used. However, the data size of user information generally increases, and a management command including this also includes a management command. Due to the large data size, there was a problem in terms of network traffic and performance.
[0007]
However, if the type of supported directory server is to be set from the peripheral device control software that runs on a computer connected via a network or the like, the directory server to which the target peripheral device can correspond beforehand is supported. Since it is necessary to retain some information in the peripheral device control software, it is difficult to prepare general-purpose peripheral device control software that can handle any peripheral device.
[0008]
Furthermore, since user information management has been performed on a single device basis, it is difficult to unify user information managed by each device in an environment where a plurality of devices are used. For example, even if the same user ID is used, There was a problem that the user ID does not necessarily specify the same user. In addition, even if the maximum printable number for each user is set for one device, it does not affect any other device, so it is difficult to manage the maximum number of prints in such an environment.
[0009]
In addition, since the number of printed sheets has been managed by a single device, it is difficult to unify user information managed by each device in an environment where a plurality of devices are used. For example, even if the same user ID is used, the user ID There is a problem that does not necessarily designate the same user. In addition, even if the maximum printable number of sheets is set for one device, there is no influence on another device, so it is difficult to manage the maximum number of printed sheets in such an environment.
[0010]
Accordingly, the present invention relates to job management in a network environment and peripheral equipment that enables unified access control., Its control method,An object is to provide a program and a storage medium.
[0016]
[Means for Solving the Problems]
In order to achieve the above object, the peripheral device according to
[0103]
DETAILED DESCRIPTION OF THE INVENTION
Peripheral device of the present invention, Its control method,Embodiments of a program and a storage medium will be described with reference to the drawings.
[0104]
[First Embodiment]
FIG. 1 is a block diagram illustrating a configuration of a peripheral device control system according to the first embodiment. In the figure,
[0105]
Reference numeral 6 denotes a directory server having a central management function for user information and device information, and is constituted by a personal computer or the like. The directory server 6 also has a KDC (Key Distribution Server) function in the Kerberos protocol (RFC1510), and issues a TGT (ticket generation ticket) and accesses a specified resource according to the Kerberos specification. Issuing access tickets necessary for this purpose.
[0106]
Further, it is assumed that MFP 1 (1) and MFP 2 (5) are already registered in this directory server 6. This data reference and update can be performed from PC (1) 2 and PC (2) 3 by using the LDAP protocol (RFC1777). Each piece of user information managed by the directory server 6 includes a user name, a password, a user printable number of copies, and a user's cumulative print number. Each piece of device information managed by the directory server 6 includes a device name and a device private encryption key.
[0107]
FIG. 2 is a block diagram showing the configuration of peripheral devices (MFP1, MFP2). In the figure, reference numeral 11 denotes a controller for controlling peripheral devices.
[0108]
A
[0109]
[0110]
The peripheral device having such a configuration selects the
[0111]
FIG. 3 is a block diagram showing a hardware configuration of the controller 11. In the controller 11, a
[0112]
A program for controlling the controller 11 is stored in the
[0113]
In the present embodiment, unless otherwise specified, in the peripheral device (FIG. 2), the
[0114]
FIG. 4 is a block diagram showing a hardware configuration of a PC constituting the network system. In the PC, a
[0115]
In this embodiment, unless otherwise specified, in the PC, the
[0116]
FIG. 5 is a diagram showing the attribute information held in the
[0117]
In the figure,
[0118]
[0119]
Reference numeral 304 denotes a “currently supported directory server type” attribute, which holds ““ Active Directory (MS) ”” as a value.
[0120]
[0121]
[0122]
FIG. 6 is a flowchart showing a processing procedure when the user management mode of the
[0123]
Waiting for user input (step S1705), the "current user management mode"
[0124]
FIG. 7 is a view showing a user interface screen displayed on the
[0125]
6 is performed by the controller 11 of the
[0126]
FIG. 8 is a flowchart showing an operation processing procedure when the directory server corresponding to the
[0127]
First, attribute
[0128]
Further, the attribute information 304 is acquired (step S1803), and the obtained attribute information 304 is displayed on the CRT 33 (step S1804). The
[0129]
Waiting for user input (step S1807), the
[0130]
FIG. 9 is a diagram showing a user interface screen displayed on the
[0131]
Note that the processing shown in FIG. 8 is performed by the controller 11 of the
[0132]
FIG. 10 shows processing when displaying / changing from PC (1) 2, PC (2) 3, and PC (3) 4 how to permit login when the
[0133]
First, the attribute information “list of restriction types to be used when the directory server cannot be connected”
[0134]
The attribute information “type of restriction when used when current directory server cannot be connected”
[0135]
Then, it waits for the user's input (step S2207), sets the
[0136]
FIG. 11 is a diagram showing a user interface screen displayed on the
[0137]
Note that the processing shown in FIG. 10 is performed by the controller 11 of the
[0138]
12 and 13 are flowcharts showing a processing procedure for issuing a print job, a scanner job, a fax transmission job, or a copy job from the PC (1) 2, PC (2) 3, and PC (3) 4 to the
[0139]
First, the “current user management mode”
[0140]
On the other hand, if “user management is present” in step S402, it is determined whether or not the value of the
[0141]
On the other hand, if the result of determination in step S404 is not a password, it is determined whether or not the value of the
[0142]
On the other hand, if the result of determination in step S406 is not a user ID, it is determined whether or not the value of the
[0143]
On the other hand, if the result of determination in step S408 is not a user ID and password, it is determined whether or not the user has already logged in to the security domain managed by the directory server 6 in the PC being used (step S410). This determination is made by making an inquiry to the operating system of the PC being used. If the result of determination is that the user has not logged in, a user interface screen prompting the user ID and password to be entered is displayed on the CRT 33 (step S411), and this information is sent to the directory server 6 using the Kerberos protocol. Ticket generation ticket) information is acquired (step S413).
[0144]
On the other hand, if the result of determination in step S410 is that the user has already logged in, the user is already logged in, so the operating system is requested and acquired the TGT used in the current session (step S412).
[0145]
Using the TGT acquired in step S412 or S413, the directory name of the user name held by the operating system or the printable number information of the user corresponding to the user name input in step S411 is obtained by the Kerberos protocol and the LDAP protocol. (Step S414).
[0146]
Thereafter, it is determined whether or not the number of printable sheets is one or more (step S415). If the result of determination is that one or more sheets cannot be printed, a user interface screen indicating that the job cannot be issued is displayed on the
[0147]
On the other hand, if the result of determination in step S415 is that the number of printable sheets is one or more and printing is possible, the parameter of the identifier for identifying the TGT and the
[0148]
Then, the access ticket acquired in step S417 and other information necessary for the job are set in the job, the job is issued to the peripheral device 1 (step S418), and the process is terminated.
[0149]
FIG. 14 is a flowchart showing the job issuance processing procedure in step S403. First, parameters of an attribute setting command are set for attributes required for the job (step S502). This parameter consists of an attribute name to be set and a value corresponding thereto. The attribute setting command created in step S502 is transmitted to the peripheral device 1 (step S503). It is determined whether or not necessary job attribute settings have been completed (step S504), and if not completed, the processing in step S502 is repeated.
[0150]
On the other hand, when the necessary job attribute setting is completed in step S504, data to be subjected to job processing, such as image data created by an application or the like by a job data transmission command, is transmitted to this peripheral device (step S505). A job submission completion notification command indicating completion of transmission of the job submission command is transmitted (step 506), and the process is terminated.
[0151]
15 and 16 are flowcharts showing a job input command reception process procedure when the
[0152]
The received command and its parameters are analyzed (step 601). As a result of this analysis, it is determined whether or not the received command is an attribute setting command (step 602). If the received command is an attribute setting command, it is determined whether or not the attribute can be interpreted by the peripheral device 1 (step S603).
[0153]
If it can be interpreted, the specified attribute name / attribute value pair is stored as job data in the
[0154]
On the other hand, if it is determined in step S602 that the received command is not an attribute setting command, it is determined from the analysis result obtained in step S601 whether the received command is a job data transmission command (step S611). If it is a job data transmission command, the job data received following the command is stored in the
[0155]
On the other hand, if it is not a job data transmission command in step S611, it is determined from the analysis result obtained in step S601 whether or not the received command is a job submission end notification command (step S613). If it is a job submission end notification command, processing of the job data held in the
[0156]
FIG. 17 is a diagram illustrating a data structure of a job held in the
[0157]
In the figure, 721 indicates that the job is a print job.
[0158]
18 and 19 are flowcharts showing the processing procedure of the job data held in the
[0159]
If the result of determination is “no user management”, attributes other than the
[0160]
On the other hand, if the result of determination in step S802 is that there is user management, it is determined whether or not the value of the
[0161]
On the other hand, if the result of determination in step S804 is not a password, it is determined whether or not the value of the
[0162]
If the result of determination in step S806 is not a user ID, it is determined whether or not the value of the
[0163]
On the other hand, if the determination result in step S808 is not “user ID and password”, the
[0164]
On the other hand, if it is determined in step S813 that the access ticket is valid, the printable number information of the user corresponding to the user ID in the access ticket is acquired from the directory server 6 by the Kerberos protocol and the LDAP protocol (step S815). .
[0165]
It is determined whether the number of printable sheets is 1 or more (step S816). If printing is impossible, the job data is discarded (step S817), and the process ends. On the other hand, if the result of determination in step S816 is that printing is possible, attributes other than the attribute values 723, 724, 725, and 726 are processed (step S818), and job data is processed based on these attributes (step S819). ). In this process, monitoring is performed so as not to exceed the printable number of sheets obtained from step S815. If the maximum number of printable sheets is exceeded, the job data processing is abnormally terminated. In both cases where the job ends normally and abnormally, the processing result of the job is recorded in a log (step S820), and the processing is ended. In the log, the user ID and the number of sheets printed by the job are recorded and stored in the
[0166]
In the present embodiment, after the job data is once built in the
[0167]
In this embodiment, the number of printable sheets in the access ticket is determined in step S813, and the number of printable sheets for the user held in the directory server 6 is determined in steps S815 and S816. As an embodiment, either the determination of the number of printable sheets in the access ticket in step S813 or the determination of the number of printable sheets of the user held in the directory server 6 in steps S815 and S816 may be omitted.
[0168]
In this embodiment, the job result record is stored as a log in the
[0169]
20 and 21 are flowcharts showing the processing procedure of the login screen displayed on the
[0170]
If the result of determination is that there is no user management, the login information is stored in the RAM 22 (step S903). The login information includes a user management mode, a user ID, and a printable number at the time of login. The printable number of sheets is sequentially updated according to the number of prints used in a job involving printing such as a print job and a copy job issued from the console within the login period, and the job ends when the number of printable sheets reaches a value of zero. In step S903, the number of printable sheets is set to infinity. The user ID in the login information is recorded in a log together with the number of printed pages used in the job. After the process of step S903, the print pending job is processed (step S924), and the process is terminated.
[0171]
On the other hand, if the result of determination in step S902 is that there is user management, it is determined whether or not the value of the
[0172]
On the other hand, if the result of determination in step S904 is that there is no password, it is determined whether or not the value of the
[0173]
On the other hand, if the determination result in step S906 is not a user ID, it is determined whether or not the value of the
[0174]
If the result of determination in step S908 is not a user ID and password, an attempt is made to access the directory server indicated by the
[0175]
If access is possible, a user interface screen that prompts the user name and password to be input is displayed on the LCD 23 (step S912), and an access ticket is acquired from the directory server 6 by the Kerberos protocol using the input user name and password (step S912). Step S914).
[0176]
On the other hand, when an error that the user name or password is invalid is returned from the directory server 6 such as when the user name and password are incorrect, in step S912, the user interface prompting the user name and password to be input again. Display the screen.
[0177]
Then, the access ticket acquired from the directory server is decrypted using the secret encryption key 306 (step S915). The validity of the access ticket is determined (step S916). This determination is made by checking whether or not the ticket is within the expiration date and whether or not the number of printable sheets is one or more. If the access ticket is not valid as a result of the determination in step S916, a user interface screen indicating that the device cannot be used with this user name is displayed on the LCD 23 (step S917), and the process ends.
[0178]
On the other hand, if it is determined in step S916 that the access ticket is valid, the login information is stored and the user information cache is updated (step S925). Of the login information, the number of printable sheets is set to the number held in the access ticket.
[0179]
FIG. 22 shows the data structure of the user information cache. This user information cache is held in the
[0180]
On the other hand, if the directory server 6 is inaccessible in step S910, attribute information (whether use is permitted when the directory server cannot be connected) 307 is acquired to determine whether the server can be used even if the server cannot be connected (step S910). S911). If the use is not permitted, a user interface screen indicating that the user cannot log in now is displayed on the LCD 23 (step S920), and the process ends.
[0181]
On the other hand, if the use is not permitted in step S911, a user interface screen for prompting the user name and password input is displayed on the LCD 23 (step S918), and the input user name and password pair is stored in the
[0182]
On the other hand, if it is determined in step S919 that the combination of the user name and the password exists in the user information cache, the number of printable sheets is calculated by a process described later, and this value and the user ID are stored as login information ( Step S923). In addition, a value of “join security domain (cannot connect to directory server)” is set in the user management mode in the login information. After the process of step S923, the print pending job is processed (step S922), and the process ends.
[0183]
The login information stored in the login process is used for restricting and recording operations when issuing a job in the login session. In other words, when printing exceeds the number of printable sheets in the login information, the job is canceled. The number of prints printed in the job is subtracted from the printable number of login information.
[0184]
Furthermore, when the user management mode in the login information is “join security domain (cannot connect to directory server)”, the attribute information stored in the device “list of restriction types used when the directory server cannot be connected” ”308, the value is updated by subtracting the number of sheets printed in the job from the value of the maximum number of printed
[0185]
Note that in this embodiment, even when connection to the directory server is possible, in step S925, the login information holds the number of printable sheets at the time of login, and the number of printable sheets only by a job issued from the console within the login period. If the directory server is connectable, it is possible to acquire the number of printable sheets held by the directory server immediately before the job is issued and to limit the number of printable sheets. . In this case, TGT is included in the login information held in step S925, whereby the printable number of users held in the directory server 6 immediately before the job is issued is acquired by the Kerberos protocol and the LDAP protocol.
[0186]
The data in the user information cache updated by the processing of FIGS. 20 and 21 is held in the
[0187]
FIG. 23 is a flowchart showing the processing procedure of the print pending job in steps S924 and S922. This process is performed on the
[0188]
The user ID in the login information held in FIG. 20 and FIG. 21 is compared with the user ID in which each job acquired in step S1101 is included as an attribute, and a list of jobs that match both is created (step S1102). . The user ID of the job to be compared here is acquired and used by decrypting the access ticket when the
[0189]
As a result of the process in step S1102, it is determined whether or not the list is empty (step S1103). If the result of determination is not empty, the process ends.
[0190]
On the other hand, if it is empty in step S1103, a list of jobs that match the user ID is displayed on the
[0191]
Then, it is determined which of the
[0192]
25 and 26 show a processing procedure when the
[0193]
It is determined from the result of this analysis whether or not the received command is an attribute acquisition command (step S1302). If it is an attribute acquisition command, it is determined whether or not the attribute specified by the attribute acquisition command can be acquired (step S1303). If the attribute can be acquired, the value of the attribute held in the peripheral device is acquired (step S1304), the acquired attribute value is set in the parameter of the return command, and the return command for the attribute acquisition command is transmitted to the driver software. (Step S1305), the process ends.
[0194]
On the other hand, if the attribute cannot be acquired in
[0195]
On the other hand, if it is not an attribute acquisition command in step S1302, it is determined from the analysis result in step 1301 whether or not the received command is an attribute value change command (step S1311). If it is an attribute value change command, it is determined whether or not the attribute designated by the attribute value change command can be changed (step S1312).
[0196]
If the attribute value can be changed, the specified attribute is changed to the specified attribute value in accordance with the specified command parameter (step S1313), and processing for notifying the driver software of the successful change of the attribute value is performed ( Step S1314), the process is terminated. On the other hand, if it cannot be changed, a process for notifying the driver software that the change of the attribute value has failed is performed (step S1315), and the process ends. On the other hand, if the received command is not an attribute change command in step S1311, the received command is another command, processing dependent on the other command is performed (step S1316), and the processing is terminated.
[0197]
27 and 28 are flowcharts showing a processing procedure for issuing management commands such as device management and job management from the PC (1) 2, PC (2) 3, and PC (3) 4 to the
[0198]
It is determined whether or not the value of the
[0199]
The
[0200]
On the other hand, if the result of determination in step S1402 is that there is user management, it is determined whether or not the value of the
[0201]
On the other hand, if the result of determination in step S1404 is that there is no password, it is determined whether or not the value of the
[0202]
On the other hand, if the result of the determination in step S1406 is not a user ID, it is determined whether or not the value of the
[0203]
On the other hand, if it is determined in step S1408 that the user ID is not the password, it is determined whether the user has already logged in to the security domain managed by the directory server 6 in the PC being used (step S1410). This determination is made by making an inquiry to the operating system of the PC being used.
[0204]
If the result of determination is that the user has not logged in, a user interface screen prompting the user ID and password to be input is displayed on the CRT 33 (step S1411), and this information is sent to the directory server 6 using the Kerberos protocol. Generated ticket) information is acquired (step S1413).
[0205]
On the other hand, if the result of determination in step S1410 is that the user has logged in, the user has already logged in, and requests and acquires the TGT used in the current session from the operating system (step S1412).
[0206]
The TGT acquired in step S1412 or S1413 and the identifier (parameter) specifying the job issuing destination
[0207]
A management command in which the access ticket acquired in step S1414 is set is generated and transmitted to the peripheral device 1 (step S1415). Thereafter, the same reply process as in step S1417 is performed (step S1416). Thereafter, the process is terminated.
[0208]
FIGS. 30 and 31 are flowcharts showing a procedure for the
[0209]
First, attribute information (current user management mode) 302 is acquired (step S1601). It is determined whether or not the value of the
[0210]
On the other hand, if the result of determination in step S1602 is that there is user management, it is determined whether or not the value of the
[0211]
On the other hand, if the result of determination in step S1604 is not a password, it is determined whether or not the value of the
[0212]
On the other hand, if the result of determination in step S1606 is not a user ID, it is determined whether or not the value of the
[0213]
On the other hand, if it is not the user ID and password in step S1608, the value of the
[0214]
In the processing after step S1613, it is first determined whether or not the
[0215]
Then, the
[0216]
On the other hand, as a result of the determination in step S1613, it is determined whether or not the
[0217]
As a result of the determination in step S1617, information on the designated job is acquired (step S1618). At this time, when the “current user management mode” 302 is “join security domain”, the
[0218]
Then, the
[0219]
It should be noted that by changing the processing in step S1621, job management other than the job case to which the job access control function is added (for example, job suspension, resumption, interruption, priority improvement, priority reduction, etc.) Can also be performed.
[0220]
FIG. 32 is a flowchart showing a processing procedure for collecting the logs of the
[0221]
The number of printed pages is added for each user ID from the log information (step S1902). The number of printable sheets and the cumulative number of prints for each user are obtained from the directory server 6 by the LDAP protocol, the obtained number of sheets is subtracted from the number of printable sheets, and further added to the cumulative number of prints. Is set in the directory server 6 (step S1903). Thereby, the printable number of sheets and the cumulative number of printed sheets for each user of the directory server 6 are updated.
[0222]
Thus, by performing the processing of FIG. 32 for the
[0223]
Note that as another embodiment, when updating the data in the directory server 6 by connecting to the directory server 6 at the end of each job without saving the number of prints used in the job in the log, the processing of FIG. 32 is performed. There is no need to execute.
[0224]
FIG. 33 and FIG. 34 are flowcharts showing a calculation processing procedure for calculating the number of printable sheets when connection to the directory server is impossible in step S923 of FIG. 20 and FIG. This process is executed on the
[0225]
It is determined whether or not the
[0226]
If the value is equal to or less than the specified value, the printable sheet number is set to 0 (step S2007), and the process ends. On the other hand, as a result of the determination in step S2004, when it is not any of “time limit”, “time limit & limit by fixed maximum number of sheets” or “time limit & limit by maximum number of sheets” or within the time limit of step S2006 Then, it is determined whether the
[0227]
In the case of “restrict with fixed maximum number of sheets” or “limit with time limit & fixed maximum number of sheets”, the value of the maximum number of
[0228]
Number of printable sheets = Number of printable sheets in the user information cache 1013-Reduction ratio of the maximum number of sheets per day x time since last login (days) (1)
Here, the time (number of days) since the last login is the time obtained by subtracting the current date and time from the login date and
[0229]
On the other hand, if the result of determination in step S2009 is neither “limit by maximum number of sheets” nor “time limit & limit by maximum number of sheets”, the maximum number of
[0230]
In this embodiment, according to the processing procedures shown in the flowcharts of FIGS. 6, 8, and 10, “supported user management mode list”, “corresponding directory server type list”, and “Directory Server”, respectively. PC (1) 2, PC (2) 3, PC (3) 4 directly obtains the list of restriction types for use when connection is not possible from
[0231]
[Second Embodiment]
In the first embodiment, the access ticket is included in the management command in FIG. 29, but the data size of the access ticket is generally larger than other data sizes of the management command. As a result, there may be a problem in performance. A peripheral device control system for solving this problem will be described below as a second embodiment.
[0232]
FIG. 35 is a diagram illustrating a data structure of a management command generated by a management command generation process described later and transmitted to the
[0233]
The
[0234]
FIG. 36 is a diagram showing a data structure of an access ticket cache held in the
[0235]
FIG. 37 and FIG. 38 are flowcharts showing a procedure in which the
[0236]
First, it is determined whether or not the
[0237]
On the other hand, if the result of determination in step S2502 is “access ticket setting command”, the access ticket value included in the
[0238]
If the access ticket is not valid, an error is returned (step S2521), and the management command processing is terminated. On the other hand, if the result of determination in step S2520 is that the access ticket is valid, the content of the decrypted access ticket is generated in a one-to-one correspondence with the access ticket, and stored in the access ticket cache together with the session key. (Step S2503). The generated session key is returned (step S2504), and the process ends.
[0239]
On the other hand, if the session key is other than 0 in step S2501, the session key is searched in the access ticket cache (step S2505), and it is determined whether or not the session key exists (step S2506). As a result of the determination, an error is returned (step S2507), and the process is terminated.
[0240]
On the other hand, if it is determined in step S2506 that a session key exists, the access ticket corresponding to the session key is acquired from the access ticket cache, and the user ID in the access ticket is set to the
[0241]
In the processing after step S2508, it is first determined whether or not the
[0242]
The
[0243]
On the other hand, as a result of the determination in step S2508, it is determined whether or not the
[0244]
On the other hand, if it is determined in step S2512 that the
[0245]
The
[0246]
On the other hand, if the two match in step S2514, the designated job is canceled (step S2515), the management command execution success is returned (step S2516), and the process ends.
[0247]
It should be noted that by applying the management command processing procedure shown in FIGS. 37 and 38 to the job processing, the job is not included in the access ticket as shown in FIGS. 17, 18, and 19. It is also possible to include a session key.
[0248]
39 issues management commands such as device management and job management from the PC (1) 2, PC (2) 3, and PC (3) 4 to the
[0249]
That is, the TGT acquired in step S1412 or S1413 and the identifier (parameter) specifying the job issuing destination
[0250]
An access ticket setting command in which the access ticket acquired in step S2601 is set in the
[0251]
It is determined whether or not the reply from the
[0252]
Note that when the same user issues a job management command or device management command to the same peripheral device, the necessary access ticket is already held in the peripheral device, and the session key for that is already acquired, so step S2601 To S2603 can be omitted. Thereby, it is possible to perform job management and device management of peripheral devices with good performance.
[0253]
As described above, according to the above-described embodiment, it is possible to perform unified job management regarding access rights in a network environment. In addition, it is possible to perform unified job management regarding access rights in a network environment. Furthermore, only the user who issued the job can cancel the job.
[0254]
Also, only the user who issued the job can know all the information about the job, and other users can know only some information of the job. Furthermore, job information that is unified with respect to access rights can be performed with good performance in a network environment. Also, only the user who issued the job can cancel the job with good performance. Furthermore, only the user who issued the job can know all the job information with good performance, and other users can know only a part of the job information.
[0255]
In addition, it is possible to perform device management unified with respect to access rights in a network environment. Furthermore, in the network environment, it is possible to perform device management that is unified with respect to access rights with good performance. In addition, a job management command can be issued to the peripheral device. Furthermore, a job cancel command can be issued to the peripheral device. In addition, jobs can be displayed on peripheral devices. Furthermore, device management commands can be issued to peripheral devices.
[0256]
According to this embodiment, it is possible to acquire a list of directory server types that can be supported by peripheral devices from the outside via a network or the like. In addition, the type of directory server currently supported by the peripheral device can be acquired and set from the outside via a network or the like. Further, a list of types of directory servers that can be supported can be acquired and displayed on the user interface. In addition, a currently supported directory server can be acquired and displayed on the user interface, and settings can be changed.
[0257]
According to this embodiment, unified user information can be used by a plurality of peripheral devices. Further, in an environment where a plurality of peripheral devices are used, the cumulative number of prints and the maximum printable number can be centrally managed. Further, in an environment where a plurality of peripheral devices are used, it is possible to perform printing restriction for each user by the maximum number of printable sheets.
[0258]
In addition, the operation mode to be set when the connection to the directory server cannot be made can be made from the outside via a network or the like. Further, if the connection to the directory server is not possible, peripheral devices can be used. Also, if the directory server cannot be connected, the peripheral device can be used within a certain period of time since the last successful login. Further, if the connection to the directory server is not possible, the peripheral device can be used within a certain time after the last successful login within the range not exceeding the maximum number of prints stored in the device. In addition, if the directory server cannot be connected, the peripheral device can be used up to the maximum number of printable sheets at the time of the last successful login within a fixed time after the last successful login. Further, if the connection to the directory server is not possible, the peripheral device can be used as long as the maximum number of prints stored in the device is not exceeded.
[0259]
Further, if the connection to the directory server is not possible, the peripheral device can be used up to the maximum printable number at the time of the last successful login. Further, if the connection to the directory server is not possible, the peripheral device can be used within a range not exceeding the maximum printable number for each login. In addition, if the connection to the directory server is not possible, the use of peripheral devices can be prohibited for the user in order to perform accurate user management. Further, it is possible to use the peripheral device up to the maximum printable number of sheets taking into account the expected number of prints after connection to the directory server. In addition, jobs can be issued to peripheral devices.
[0260]
Next, the copying process operation of the peripheral device in the embodiment will be described. FIG. 40 is a flowchart showing a copy processing procedure in the
[0261]
However, in the steps S920, S921, and S917 in FIG. 21, the copy start button is pressed when the currently logged-in user cannot be used or when the user is not logged in. The event is set not to be sent to the
[0262]
When the
[0263]
On the other hand, if it is determined in step S4002 that the user is participating in the security domain, the number of printable pages stored in the login information is acquired (step S4004). Further, an image of a paper document placed on the
[0264]
That is, the number of printable sheets and the cumulative number of prints corresponding to the user who executed the copy job are acquired from the directory server 6 using the LDAP protocol, and the number of copies used in the copy job is subtracted from the number of printable sheets and added to the cumulative number of prints. These obtained results are set in the directory server 6 by the LDAP protocol. As a result, the printable number of sheets and the cumulative number of printed sheets for each user managed by the directory server 6 are updated.
[0265]
The above is the description of the embodiments of the present invention, but the present invention is not limited to the configurations of these embodiments, and has the functions shown in the claims or the configurations of the embodiments. Any configuration that can achieve the function is applicable.
[0266]
For example, in the login (user authentication) in the peripheral device 1 (or 2), information held in the IC card inserted by the user via the IC card reader connected to the
[0267]
In this case, in step S912 in FIG. 21, the user is prompted to present appropriate user information, and the user information obtained from each reader is sent to the directory server 6 in step S914 in FIG. If the user authentication is obtained as a result of the verification of the user information in the directory server 6, the
Further, the peripheral device control software does not require the target peripheral device to have information on the type of the corresponding directory server, and can provide a general-purpose peripheral device control system.
Furthermore, unified management of user information can be performed in an environment where a plurality of devices connected to a network or the like are used, and the same user information can be used by a plurality of devices. Further, in an environment where a plurality of devices connected via a network or the like are used, centralized management of the cumulative number of prints and the maximum printable number for each user can be performed. Furthermore, if there is a network failure, peripheral devices can be temporarily used.
[0268]
It goes without saying that the present invention is also applicable to a case where a recording medium storing software program codes for realizing the functions of the above-described embodiments is achieved by supplying a program to a system or apparatus. In this case, the program code itself read from the storage medium realizes the novel function of the present invention, and the storage medium storing the program constitutes the present invention.
[0269]
In the above embodiment, the program code shown in each flowchart is stored in the storage medium. As a storage medium for supplying the program code, for example, a ROM, a flexible disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a DVD, a magnetic tape, a nonvolatile memory card, and the like can be used.
[0270]
【The invention's effect】
According to the present invention, unified access control can be performed for job management in a network environment. In addition, it is possible to perform unified access control for job management in a network environment so that performance is not deteriorated.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration of a peripheral device control system according to a first embodiment.
FIG. 2 is a block diagram showing a configuration of peripheral devices (MFP1, MFP2).
3 is a block diagram showing a hardware configuration of a controller 11. FIG.
FIG. 4 is a block diagram showing a hardware configuration of a PC constituting the network system.
FIG. 5 is a diagram showing attribute information held in the
FIG. 6 is a flowchart showing a processing procedure when the user management mode of the
FIG. 7 is a diagram showing a user interface screen displayed on the
FIG. 8 is a flowchart showing an operation processing procedure when a directory server corresponding to the
FIG. 9 is a diagram showing a user interface screen displayed on the
FIG. 10 shows how to display / change how to allow login when the
FIG. 11 is a diagram showing a user interface screen displayed on the
12 is a flowchart showing a processing procedure for issuing a print job, a scanner job, a fax transmission job, or a copy job from the PC (1) 2, PC (2) 3, and PC (3) 4 to the
13 is a processing procedure for issuing a print job, a scanner job, a fax transmission job, or a copy job from the PC (1) 2, PC (2) 3, and PC (3) 4 to the
FIG. 14 is a flowchart illustrating a job issuance processing procedure in step S403.
15 is a flowchart showing a job submission command reception process procedure when the
16 is a flowchart illustrating a job input command reception processing procedure when the
17 is a diagram illustrating a data structure of a job held in the
18 is a flowchart showing a processing procedure of job data held in the
FIG. 19 is a flowchart illustrating a processing procedure for job data held in the
FIG. 20 is a flowchart showing a processing procedure for a login screen displayed on the
FIG. 21 is a flowchart illustrating a processing procedure of a login screen displayed on the
FIG. 22 is a diagram showing a data structure of a user information cache.
FIG. 23 is a flowchart illustrating a processing procedure for a print pending job in steps S924 and S922.
FIG. 24 is a diagram showing a user interface screen displayed on the LCD in step S1104.
FIG. 25 is a flowchart showing a processing procedure when the
FIG. 26 is a flowchart illustrating processing performed when the
27 is a flowchart showing a processing procedure for issuing management commands such as device management and job management from the PC (1) 2, PC (2) 3, and PC (3) 4 to the
FIG. 28 is a flowchart illustrating a processing procedure for issuing management commands such as device management and job management from the PC (1) 2, PC (2) 3, and PC (3) 4 to the
FIG. 29 is a diagram illustrating a data structure of a management command.
30 is a flowchart illustrating a procedure in which the
FIG. 31 is a flowchart illustrating a procedure in which the
FIG. 32 is a flowchart showing a processing procedure for counting the logs of the
FIG. 33 is a flowchart showing a calculation processing procedure for calculating the number of printable sheets when connection to the directory server is impossible in step S923 in FIG.
34 is a flowchart illustrating a calculation processing procedure for calculating the number of printable sheets when connection to the directory server is impossible in step S923 in FIG. 17 following FIG.
FIG. 35 is a diagram illustrating a data structure of a management command generated by a management command generation process described later and transmitted to the
FIG. 36 is a diagram showing a data structure of an access ticket cache held in the
FIG. 37 is a flowchart illustrating a procedure in which the
FIG. 38 is a flowchart illustrating a procedure in which the
39 is a process for issuing management commands such as device management and job management from the PC (1) 2, PC (2) 3, and PC (3) 4 to the
40 is a flowchart showing a copy processing procedure in the
[Explanation of symbols]
2, 3, 4 Personal computer (PC)
3, 5 Peripheral devices (MFP)
6 Directory server
11 Controller
21, 31 CPU
25, 36 ROM
301, 302 Attribute information
724, 1502, 2302 User ID
726, 1504, 2402 Access ticket
2304, 2401 Session key
Claims (8)
ジョブを受信する第1受信手段と、
受信した前記ジョブに含まれるアクセスチケットを解読する第1解読手段と、
前記第1解読手段により解読された前記アクセスチケットが有効であり、且つ受信した前記ジョブを実行可能である場合に、受信した前記ジョブと該ジョブに含まれる前記アクセスチケットとを対応付けて保持する保持手段と、
ジョブ管理コマンドを受信する第2受信手段と、
受信した前記ジョブ管理コマンドに含まれるアクセスチケットを解読する第2解読手段と、
前記第2解読手段により解読された前記アクセスチケットが有効であり、且つ前記第1受信手段が受信した前記ジョブが終了していない場合に、前記第1解読手段の解読結果と、前記第2解読手段の解読結果とを比較する比較手段と、
前記比較手段による比較結果に基づき、前記ジョブに対する前記ジョブ管理コマンドを実行する管理手段とを備えたことを特徴とする周辺機器。In a peripheral device that is managed by a server connected via a network and manages an externally input job according to the input job management command,
First receiving means for receiving a job;
First decryption means for decrypting an access ticket included in the received job;
When the access ticket decrypted by the first decryption means is valid and the received job can be executed, the received job and the access ticket included in the job are stored in association with each other Holding means;
Second receiving means for receiving a job management command;
Second decryption means for decrypting the access ticket included in the received job management command;
When the access ticket decrypted by the second decryption means is valid and the job received by the first reception means is not completed, the decryption result of the first decryption means and the second decryption A comparison means for comparing the decryption result of the means;
A peripheral device comprising: management means for executing the job management command for the job based on a comparison result by the comparison means.
前記比較手段は、前記ジョブ管理コマンドに対応するユーザ情報を、前記保持手段により保持されるジョブの各々に対応するユーザ情報と比較し、
前記管理手段は、前記ジョブ管理コマンドとユーザ情報が合致しないジョブのジョブ名を空白に変換した様態で、前記ジョブの一覧を生成することを特徴とする請求項2に記載の周辺機器。When the job management command requests a list of jobs held by the holding unit,
The comparing means compares user information corresponding to the job management command with user information corresponding to each of the jobs held by the holding means;
The peripheral device according to claim 2, wherein the management unit generates the job list in a state where a job name of a job whose user information does not match the job management command is converted to a blank.
前記比較手段は、前記ジョブ管理コマンドに対応するユーザ情報を、前記キャンセルの対象であるジョブに対応するユーザ情報と比較し、
前記管理手段は、前記ジョブ管理コマンドに対応するユーザ情報と前記キャンセルの対象であるジョブに対応するユーザ情報とが合致しない場合に、前記ジョブ管理コマンドを実行しないことを特徴とする請求項2に記載の周辺機器。When the job management command is for requesting cancellation of a job held by the holding unit,
The comparing means compares user information corresponding to the job management command with user information corresponding to the job to be canceled;
3. The management unit does not execute the job management command when user information corresponding to the job management command and user information corresponding to the job to be canceled do not match. The listed peripherals.
ジョブを受信する第1受信ステップと、
受信した前記ジョブに含まれるアクセスチケットを解読する第1解読ステップと、
前記第1解読ステップで解読された前記アクセスチケットが有効であり、且つ受信した前記ジョブを実行可能である場合に、受信した前記ジョブと該ジョブに含まれる前記アクセスチケットとを対応付けて保持する保持ステップと、
ジョブ管理コマンドを受信する第2受信ステップと、
受信した前記ジョブ管理コマンドに含まれるアクセスチケットを解読する第2解読ステップと、
前記第2解読ステップで解読された前記アクセスチケットが有効であり、且つ前記第1受信ステップで受信した前記ジョブが終了していない場合に、前記第1解読ステップでの解読結果と、前記第2解読ステップでの解読結果とを比較する比較ステップと、
前記比較ステップでの比較結果に基づき、前記ジョブに対する前記ジョブ管理コマンドを実行する管理ステップとを有することを特徴とする周辺機器の制御方法。In a peripheral device control method that is managed by a server connected via a network and manages an externally input job according to a submitted job management command.
A first receiving step for receiving a job;
A first decryption step of decrypting an access ticket included in the received job;
When the access ticket decrypted in the first decryption step is valid and the received job can be executed, the received job and the access ticket included in the job are stored in association with each other Holding step;
A second receiving step for receiving a job management command;
A second decryption step of decrypting the access ticket included in the received job management command;
When the access ticket decrypted in the second decryption step is valid and the job received in the first reception step is not completed , the decryption result in the first decryption step and the second A comparison step for comparing the decryption result in the decryption step;
And a management step of executing the job management command for the job based on the comparison result in the comparison step.
前記制御方法は、
ジョブを受信する第1受信ステップと、
受信した前記ジョブに含まれるアクセスチケットを解読する第1解読ステップと、
前記第1解読ステップで解読された前記アクセスチケットが有効であり、且つ受信した前記ジョブを実行可能である場合に、受信した前記ジョブと該ジョブに含まれる前記アクセスチケットとを対応付けて保持する保持ステップと、
ジョブ管理コマンドを受信する第2受信ステップと、
受信した前記ジョブ管理コマンドに含まれるアクセスチケットを解読する第2解読ステップと、
前記第2解読ステップで解読された前記アクセスチケットが有効であり、且つ前記第1受信ステップで受信した前記ジョブが終了していない場合に、前記第1解読ステップでの解読結果と、前記第2解読ステップでの解読結果とを比較する比較ステップと、
前記比較ステップでの比較結果に基づき、前記ジョブに対する前記ジョブ管理コマンドを実行する管理ステップとを有することを特徴とするプログラム。A program that allows a computer to execute a peripheral device control method that is managed by a server connected via a network and manages a job input from the outside in accordance with an input job management command,
The control method is:
A first receiving step for receiving a job;
A first decryption step of decrypting an access ticket included in the received job;
When the access ticket decrypted in the first decryption step is valid and the received job can be executed, the received job and the access ticket included in the job are stored in association with each other Holding step;
A second receiving step for receiving a job management command;
A second decryption step of decrypting the access ticket included in the received job management command;
When the access ticket decrypted in the second decryption step is valid and the job received in the first reception step is not completed , the decryption result in the first decryption step and the second A comparison step for comparing the decryption result in the decryption step;
And a management step of executing the job management command for the job based on a comparison result in the comparison step.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001299101A JP4649081B2 (en) | 2000-10-02 | 2001-09-28 | PERIPHERAL DEVICE, ITS CONTROL METHOD, PROGRAM, AND STORAGE MEDIUM |
US10/254,505 US20030018900A1 (en) | 2000-10-02 | 2002-09-26 | Peripheral equipment and management method thereof |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000-302029 | 2000-10-02 | ||
JP2000302029 | 2000-10-02 | ||
JP2001299101A JP4649081B2 (en) | 2000-10-02 | 2001-09-28 | PERIPHERAL DEVICE, ITS CONTROL METHOD, PROGRAM, AND STORAGE MEDIUM |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2002202945A JP2002202945A (en) | 2002-07-19 |
JP2002202945A5 JP2002202945A5 (en) | 2007-02-08 |
JP4649081B2 true JP4649081B2 (en) | 2011-03-09 |
Family
ID=26601346
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001299101A Expired - Fee Related JP4649081B2 (en) | 2000-10-02 | 2001-09-28 | PERIPHERAL DEVICE, ITS CONTROL METHOD, PROGRAM, AND STORAGE MEDIUM |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4649081B2 (en) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7167919B2 (en) | 2001-12-05 | 2007-01-23 | Canon Kabushiki Kaisha | Two-pass device access management |
US7487233B2 (en) | 2001-12-05 | 2009-02-03 | Canon Kabushiki Kaisha | Device access based on centralized authentication |
US7768662B2 (en) * | 2002-02-12 | 2010-08-03 | Xerox Corporation | System and method for controlling access |
JP4555038B2 (en) | 2004-09-17 | 2010-09-29 | 株式会社リコー | Network system, usage authority determination method, network device, program, and recording medium |
JP4632446B2 (en) | 2006-01-24 | 2011-02-16 | キヤノン株式会社 | Image processing system, management method thereof, and control apparatus |
JP2007226429A (en) * | 2006-02-22 | 2007-09-06 | Oki Data Corp | Information processor and printing device |
JP4143654B2 (en) | 2006-05-31 | 2008-09-03 | キヤノン株式会社 | Device management system, device management apparatus, device management method, program, and storage medium |
JP5011959B2 (en) | 2006-11-01 | 2012-08-29 | 富士ゼロックス株式会社 | Authentication agent device, authentication agent program, and authentication agent system |
JP5121340B2 (en) | 2007-07-30 | 2013-01-16 | キヤノン株式会社 | Printing apparatus, printing control method, and computer program |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06223040A (en) * | 1993-01-26 | 1994-08-12 | Omron Corp | Software license management system |
JPH07121326A (en) * | 1993-10-26 | 1995-05-12 | Fuji Xerox Co Ltd | Image processing system |
JPH08154170A (en) * | 1994-11-28 | 1996-06-11 | Fuji Xerox Co Ltd | Image processing system |
JPH1124916A (en) * | 1997-07-07 | 1999-01-29 | Fuji Xerox Co Ltd | Device and method for managing software licence |
JP2000010930A (en) * | 1998-06-24 | 2000-01-14 | Hitachi Ltd | Access control method for network system |
JP2000021165A (en) * | 1998-06-30 | 2000-01-21 | Fujitsu Ltd | Integrated circuit device |
JP2000163356A (en) * | 1998-11-25 | 2000-06-16 | Canon Inc | Peripheral device device and its control method, and storage medium |
JP2000201169A (en) * | 1998-03-26 | 2000-07-18 | Nippon Telegr & Teleph Corp <Ntt> | Mail access control method, communication system and storage medium stored with mail access control program |
JP2000222338A (en) * | 1998-11-25 | 2000-08-11 | Canon Inc | Peripheral device, method and system for peripheral device control, storage medium stored with peripheral device control program, sending-out device sending out peripheral device control program, and peripheral device control program product, and information processor, information processing method, storage medium stored with information processing program, sending-out device sending out information processing program, and information processing program product |
-
2001
- 2001-09-28 JP JP2001299101A patent/JP4649081B2/en not_active Expired - Fee Related
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06223040A (en) * | 1993-01-26 | 1994-08-12 | Omron Corp | Software license management system |
JPH07121326A (en) * | 1993-10-26 | 1995-05-12 | Fuji Xerox Co Ltd | Image processing system |
JPH08154170A (en) * | 1994-11-28 | 1996-06-11 | Fuji Xerox Co Ltd | Image processing system |
JPH1124916A (en) * | 1997-07-07 | 1999-01-29 | Fuji Xerox Co Ltd | Device and method for managing software licence |
JP2000201169A (en) * | 1998-03-26 | 2000-07-18 | Nippon Telegr & Teleph Corp <Ntt> | Mail access control method, communication system and storage medium stored with mail access control program |
JP2000010930A (en) * | 1998-06-24 | 2000-01-14 | Hitachi Ltd | Access control method for network system |
JP2000021165A (en) * | 1998-06-30 | 2000-01-21 | Fujitsu Ltd | Integrated circuit device |
JP2000163356A (en) * | 1998-11-25 | 2000-06-16 | Canon Inc | Peripheral device device and its control method, and storage medium |
JP2000222338A (en) * | 1998-11-25 | 2000-08-11 | Canon Inc | Peripheral device, method and system for peripheral device control, storage medium stored with peripheral device control program, sending-out device sending out peripheral device control program, and peripheral device control program product, and information processor, information processing method, storage medium stored with information processing program, sending-out device sending out information processing program, and information processing program product |
Also Published As
Publication number | Publication date |
---|---|
JP2002202945A (en) | 2002-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1193593A2 (en) | Peripheral equipment and management method thereof | |
US7382487B2 (en) | Printing system and method restricting functions of printers, usable by each user | |
JP3617500B2 (en) | Printing over the network | |
JP4530793B2 (en) | Image forming apparatus, information processing apparatus, information processing system, authentication method, authentication program, and recording medium | |
JP4267011B2 (en) | Image forming apparatus, authority control server, and image forming system | |
US7586635B2 (en) | Method and apparatus for secure printing using facial recognition of a print job sent by the user over a distributed printing network that employs a server containing registration, facial data, and user identification information | |
KR100899521B1 (en) | Information processing apparatus, printing system, job processing method, and storage medium used therewith | |
EP2026197A2 (en) | Controlling image processing system | |
JP4261818B2 (en) | Peripheral device management system, client device, server device, control method thereof, and storage medium | |
JP2010277557A (en) | Image forming apparatus, authentication system, authentication method and program | |
JP2006145785A (en) | Image forming apparatus and image forming system | |
JP4649081B2 (en) | PERIPHERAL DEVICE, ITS CONTROL METHOD, PROGRAM, AND STORAGE MEDIUM | |
JP4095279B2 (en) | Job execution apparatus, job management method, storage medium, and program | |
CN101494707B (en) | Image forming apparatus, method of controlling the same, | |
JP2004192273A (en) | Job management system | |
JP7154920B2 (en) | PRINTING DEVICE, CONTROL METHOD, AND THEREOF PROGRAM | |
JP2002041443A (en) | Peripheral equipment control system, peripheral equipment, external device, method for controlling the peripheral equipment, peripheral equipment controlling software, and storage medium | |
US20030018900A1 (en) | Peripheral equipment and management method thereof | |
US9858016B2 (en) | Providing device functionality utilizing authorization tokens | |
JP2007088945A (en) | Image associated processing system and method of managing image forming apparatus | |
JP5177249B2 (en) | Image-related processing system, image-related processing apparatus, image-related processing execution method, and computer program | |
JP2010186492A (en) | Peripheral equipment control system, peripheral equipment, external device, peripheral equipment control method, peripheral equipment control software, and storage medium | |
JP7490405B2 (en) | Image forming apparatus, printing system, control method, and program | |
JP2008294551A (en) | Document management system, document operation device and document operation program | |
JP2015001772A (en) | Printing system and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20060415 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061214 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20061214 |
|
RD05 | Notification of revocation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7425 Effective date: 20070626 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091110 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100112 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100420 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100615 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20101207 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20101213 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131217 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |