(57)【要約】【課題】操作部で印刷データを削除できないようなプリンタからでも、印刷データを削除することができる仕組みを提供する。【解決手段】ユーザがデータの印刷指示を行うと、プリンタドライバは印刷装置１０００にジョブを送信し、印刷装置１０００上でＮＩＣ７００がポートの監視を行っている場合、マスストレージ５００にジョブを格納する。ユーザがカードリーダ４００にＩＣカード４１０をかざすと、カードリーダ４００はカードＩＤ２１１を読み取り、印刷装置１０００に通知する。印刷装置１０００は、マスストレージ５００内からユーザ名に一致するジョブのひとつをディスプレイに表示する。その間にユーザがカードリーダ４００にＩＣカード４１０をかざせば、該当ジョブを削除する。一方、ユーザがカードリーダ４００にＩＣカード４１０をかざさなければ、そのまま該当ジョブを出力する。【選択図】図３３
2010015537.tif 000002
【特許請求の範囲】
【請求項１】
画像形成装置に接続され、印刷データを送信する情報処理装置と通信するネットワークインタフェース装置であって、
前記情報処理装置から送信された印刷データを受け付ける印刷データ受付手段と、
前記印刷データ受付手段によって受け付けられた印刷データを記憶する印刷データ記憶手段と、
読取対象物を読み取ることによって得られるユーザを識別するユーザ識別情報を受け付けるユーザ識別情報受付手段と、
前記印刷データ記憶手段で記憶されている印刷データを識別する印刷データ識別情報を所定時間ユーザに通知すべく当該画像形成装置に印刷データ識別情報を送信する印刷データ識別情報送信手段と、
前記印刷データ識別情報送信手段によって前記印刷データ識別情報を送信することでユーザに所定時間通知する間に前記ユーザ識別情報受付手段によって前記ユーザ識別情報を受け付けた場合、通知されている前記印刷データ識別情報に対応する印刷データを前記印刷データ記憶手段から削除する印刷データ削除手段と、
を備えることを特徴とするネットワークインタフェース装置。
【請求項２】
前記ユーザ識別情報受付手段によって受け付けた前記ユーザ識別情報を記憶するユーザ識別情報記憶手段、を更に備え、
前記印刷データ削除手段は、印刷データ識別情報送信手段によって前記印刷データ識別情報を送信することでユーザに所定時間通知する間に前記ユーザ識別情報受付手段によって受け付けた前記ユーザ識別情報と、前記ユーザ識別情報記憶手段によって記憶している前記ユーザ識別情報とが一致した場合に印刷データを削除することを特徴とする請求項１に記載のネットワークインタフェース装置。
【請求項３】
前記ネットワークインタフェース装置は、ユーザの認証を行う認証サーバと通信し、
前記ユーザ識別情報受付手段によって前記ユーザ識別情報を受け付けた場合、前記ユーザ識別情報を含む認証要求を前記認証サーバに送信する認証要求送信手段と、
前記認証要求送信手段で認証要求を前記認証サーバに送信することで、前記ユーザ識別情報が認証された場合、前記ユーザ識別情報に対応する印刷データの印刷データ識別情報を取得する印刷データ識別情報取得手段と、
を更に備え、
前記印刷データ識別情報送信手段は、前記印刷データ識別情報取得手段で取得した印刷データ識別情報を送信することを特徴とする請求項１又は２に記載のネットワークインタフェース装置。
【請求項４】
前記認証サーバと通信可能か否かを判断する通信可否判断手段と、
前記通信可否判断手段で、前記認証サーバと通信可能でないと判断した場合、前記印刷データ受付手段によって受け付けた印刷データを、前記印刷データ記憶手段に記憶するための設定を解除する解除手段と、
前記解除手段によって前記設定が解除されている場合、前記印刷データ受付手段によって受け付けた印刷データを、前記印刷データ記憶手段に記憶することなく、前記画像形成装置に送信する第１の印刷データ送信手段と、
を更に備えることを特徴とする請求項１乃至３のいずれか１項に記載のネットワークインタフェース装置。
【請求項５】
前記通信可否判断手段は、前記解除手段で印刷データ記憶手段に記憶するための設定が解除されている場合、一定間隔で前記認証サーバと通信可能かどうかを判断することを特徴とする請求項４に記載のネットワークインタフェース装置。
【請求項６】
前記通信可否判断手段で前記認証サーバと通信可能であると判断した場合、かつ前記印刷データ記憶手段に記憶するための設定が解除されている場合、前記印刷データ記憶手段に記憶するための設定を設定する設定手段、
を更に備えることを特徴とする請求項４又は５に記載のネットワークインタフェース装置。
【請求項７】
前記通信可否判断で前記認証サーバとの通信ができた際の時間情報を記憶する時間情報記憶手段、を更に備え、
前記印刷データ識別情報通知手段は、前記時間情報と前記印刷データ記憶手段に印刷データを記憶した記憶時間情報に従って、前記印刷データ識別情報を通知するか否かを判断することを特徴とする請求項４乃至６のいずれか１項に記載のネットワークインタフェース装置。
【請求項８】
印刷データ識別情報送信手段で前記印刷データ識別情報を送信することでユーザに所定時間通知している間に、前記画像形成装置の入力部を介して印刷指示が入力された場合、通知されている前記印刷データ識別情報に対応する印刷データを前記画像形成装置に送信する第２の印刷データ送信手段、
を更に備えることを特徴とする請求項１乃至７のいずれか１項に記載のネットワークインタフェース装置。
【請求項９】
読取対象物が読み取られている時間を決定する時間決定手段と、
前記時間決定手段で決定された時間が所定時間であるか否かを判定する時間判定手段と、
前記時間判定手段で所定時間であると判定された場合に、前記ユーザ識別情報に対応する印刷データを前記印刷データ記憶手段から全て削除する全印刷データ削除手段と、
を更に備えることを特徴とする請求項１乃至８のいずれか１項に記載のネットワークインタフェース装置。
【請求項１０】
印刷データ識別情報送信手段は、前記時間判定手段で所定時間でないと判定された場合に、前記印刷データ記憶手段で記憶されている印刷データを識別する印刷データ識別情報を所定時間ユーザに通知すべく当該画像形成装置に印刷データ識別情報を送信することを特徴とする請求項９に記載のネットワークインタフェース装置。
【請求項１１】
前記ユーザ識別情報受付手段で受け付けたユーザ識別情報は、前記画像形成装置が備える読取部に記憶媒体がかざされた場合に、当該記憶媒体の所定の領域を読み取ることによって得られる情報であることを特徴とする請求項１乃至１０のいずれか１項に記載のネットワークインタフェース装置。
【請求項１２】
画像形成装置に接続され、印刷データを送信する情報処理装置と通信するネットワークインタフェース装置の制御方法であって、
印刷データ受付手段が、前記情報処理装置から送信された印刷データを受け付ける印刷データ受付工程と、
書込手段が、前記印刷データ受付工程によって受け付けられた印刷データを記憶部に書き込む書込工程と、
印刷データ識別情報送信手段が、読取対象物を読み取ることによって得られるユーザを識別するユーザ識別情報を受け付けるユーザ識別情報受付工程と、
印刷データ識別情報送信手段が、前記記憶部で記憶されている印刷データを識別する印刷データ識別情報を所定時間ユーザに通知すべく当該画像形成装置に印刷データ識別情報を送信する印刷データ識別情報送信工程と、
印刷データ削除手段が、前記印刷データ識別情報送信工程によって前記印刷データ識別情報を送信することでユーザに所定時間通知する間に前記ユーザ識別情報受付工程によって前記ユーザ識別情報を受け付けた場合、通知されている前記印刷データ識別情報に対応する印刷データを前記記憶部から削除する印刷データ削除工程と、
を実行することを特徴とするネットワークインタフェース装置の制御方法。
【請求項１３】
画像形成装置に接続され、印刷データを送信する情報処理装置と通信するネットワークインタフェース装置を機能させるためのプログラムであって、
前記情報処理装置から送信された印刷データを受け付ける印刷データ受付手段と、
前記印刷データ受付手段によって受け付けられた印刷データを記憶する印刷データ記憶手段と、
読取対象物を読み取ることによって得られるユーザを識別するユーザ識別情報を受け付けるユーザ識別情報受付手段と、
前記印刷データ記憶手段で記憶されている印刷データを識別する印刷データ識別情報を所定時間ユーザに通知すべく当該画像形成装置に印刷データ識別情報を送信する印刷データ識別情報送信手段と、
前記印刷データ識別情報送信手段によって前記印刷データ識別情報を送信することでユーザに所定時間通知する間に前記ユーザ識別情報受付手段によって前記ユーザ識別情報を受け付けた場合、通知されている前記印刷データ識別情報に対応する印刷データを前記印刷データ記憶手段から削除する印刷データ削除手段として機能させることを特徴とするプログラム。
【請求項１４】
印刷データを送信する情報処理装置と通信可能な画像形成装置であって、
前記情報処理装置から送信された印刷データを受け付ける印刷データ受付手段と、
前記印刷データ受付手段によって受け付けられた印刷データを記憶する印刷データ記憶手段と、
読取対象物を読み取ることによって得られるユーザを識別するユーザ識別情報を受け付けるユーザ識別情報受付手段と、
前記印刷データ記憶手段で記憶されている印刷データを識別する印刷データ識別情報を所定時間ユーザに通知する印刷データ識別情報通知手段と、
前記印刷データ識別情報通知手段によってユーザに所定時間通知する間に前記ユーザ識別情報受付手段によって前記ユーザ識別情報を受け付けた場合、通知されている前記印刷データ識別情報に対応する印刷データを前記印刷データ記憶手段から削除する印刷データ削除手段と、
を備えることを特徴とする画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷データを生成する情報処理装置と通信可能に接続される印刷装置に設けられるネットワークインタフェース装置、制御方法、プログラム、および画像形成装置に関する。
【背景技術】
【０００２】
従来から、ユーザが印刷装置からサーバ上に一時蓄積された印刷データに対して印刷要求を行うことで、印刷装置から印刷データの出力を可能にする所謂「プルプリント（蓄積印刷）」のプリントシステムが提案されている。
「プルプリント（蓄積印刷）」のプリントシステムの例として、特許文献１が挙げられる。特許文献１には、複合機に認証機能を備え、セキュリティを考慮した印刷制御システムが開示されている。
【０００３】
特許文献１は以下の通りである。
特許文献１の図４に示されるように、まず、ユーザは、クライアントＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）１００にログインする（（１）−１）。そしてクライアントＰＣ１００からプリンタへの印刷指示を行う（（１）−２）。そして、クライアントＰＣ１００は、生成した印刷データをプリントサーバ２００に送信して（（２）−１）、プリントサーバ２００の所定の格納場所に格納させる（（２）−２）。この時点で印刷装置へは印刷データを送信しない。
次に、クライアントＰＣ１００は、プリントサーバ２００に送信した印刷データの書誌情報データを生成し、該生成した書誌情報データを印刷管理サーバ４００に送信して、印刷管理サーバ４００の所定の格納場所に格納させる（（３）−１）。印刷管理サーバ４００は、クライアントＰＣ１００から書誌情報データファイルが格納されると、該書誌情報データファイルを解析し書誌情報を書誌情報ＤＢに登録する（（３）−２）。次に、複合機３００は、カードリーダによりＩＣカード４１０を検知すると、該ＩＣカード４１０内の個人認証情報を読み取り、該読み取った個人認証情報を認証要求として印刷管理サーバ４００に送信する（（４）−１）。印刷管理サーバ４００は、複合機３００より個人認証情報を受信すると、該個人認証情報の認証処理を印刷管理サーバ４００の外部記憶装置上に記憶されるＩＣカード認証用テーブルに基づいて行い、認証結果を複合機３００に返信する（（４）−２）。
【０００４】
次に、複合機３００は、印刷管理サーバ４００から、認証に成功した旨の認証結果（クライアントＰＣ１００のログインユーザＩＤ）を受信すると、印刷管理サーバ４００に印刷データ一覧要求を送信する（（５）−１）。
なお、印刷データ一覧要求には、クライアントＰＣ１００のログインユーザＩＤが含まれているものとする。印刷管理サーバ４００は、複合機３００から印刷データ一覧要求を受信すると、該印刷データ一覧要求に含まれるログインユーザＩＤで書誌情報ＤＢを検索して、該ログインユーザＩＤに対応する印刷データ一覧を生成し、複合機３００に返信する（（５）−２）。複合機３００は、印刷管理サーバ４００から印刷データ一覧を受信すると、該印刷データ一覧を操作部３０８のＵＩ上に表示する。そして、ユーザにより、印刷データが選択され、印刷指示がなされると、複合機３００は、該選択された印刷データの印刷要求（出力指示）を印刷管理サーバ４００に送信する（６）。
【０００５】
印刷管理サーバ４００は、複合機３００から印刷データの印刷要求（出力指示）を受信すると、該出力指示がなされた印刷データの書誌情報を、クライアントＰＣ１００のログインユーザ名，印刷データのタイムスタンプをキーにして書誌情報ＤＢから検索する。該検索した書誌情報から該当する印刷データを格納しているプリントサーバ２００を特定し、該プリントサーバ２００に該当する印刷データの印刷指示を送信する（７）。プリントサーバ２００は、印刷管理サーバ４００から印刷指示を受信すると、該印刷指示に基づいて印刷データを複合機３００に送信して複合機３００で印刷させる（８）。
【０００６】
上記の方法によれば、印刷物が出力されるのは、ユーザが印刷装置からサーバ上に印刷要求を行ったときとなるので、印刷物が長時間放置されることを防ぐことができ、セキュアなプリントシステムを実現できる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００６−９９７１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記の方法では、認証用サーバでユーザ情報を一元管理するため、認証サーバがダウンしたときには業務が停滞してしまうという問題がある。
【０００９】
また、特許文献１では、印刷データ一覧を操作部に表示することができるためユーザは削除したい印刷データを指定することができる。このプリンタは所謂マルチファンクションプリンタ（ＭＦＰ：複合機）で、複数の機能を操作したりするための操作部（表示可能な操作部）が備えられており、その操作部に印刷データの一覧を表示できるからこそ、ユーザは不要な印刷データを指定して削除させることが可能である。一方、シングルファンクションプリンタ（ＳＦＰ）では、マルチファンクションプリンタのような操作部が備えられていないため、特許文献１のような蓄積印刷を実現させようとする場合、印刷データを指定することができないので、ＩＣカードをかざしたユーザの蓄積されている印刷データを全て印刷させてしまう。つまり、印刷設定などを間違って印刷実行してしまった不要な印刷データも印刷されてしまうといった問題がある。尚、一覧を表示できないマルチファンクションプリンタも存在する。
【００１０】
更に、操作部に印刷データの一覧を表示ことができないようなプリンタの場合、一度ジョブを投入すると、印刷データをユーザに選択させることができないため、削除することができないという問題があった。特に、誤って投入したジョブは、本来削除したいにも関わらず印刷するしかないという問題があった。
【００１１】
本発明の目的は、操作部で印刷データを削除できないようなプリンタからでも、印刷データを削除することができる仕組みを提供することである。また、認証サーバがダウンするなどの理由により認証できない場合にも、印刷業務を滞らせないようにすることができる仕組みを提供することである。
【課題を解決するための手段】
【００１２】
前述した目的を達成するために第１の発明は、画像形成装置に接続され、印刷データを送信する情報処理装置と通信するネットワークインタフェース装置であって、前記情報処理装置から送信された印刷データを受け付ける印刷データ受付手段と、前記印刷データ受付手段によって受け付けられた印刷データを記憶する印刷データ記憶手段と、読取対象物を読み取ることによって得られるユーザを識別するユーザ識別情報を受け付けるユーザ識別情報受付手段と、前記印刷データ記憶手段で記憶されている印刷データを識別する印刷データ識別情報を所定時間ユーザに通知すべく当該画像形成装置に印刷データ識別情報を送信する印刷データ識別情報送信手段と、前記印刷データ識別情報送信手段によって前記印刷データ識別情報を送信することでユーザに所定時間通知する間に前記ユーザ識別情報受付手段によって前記ユーザ識別情報を受け付けた場合、通知されている前記印刷データ識別情報に対応する印刷データを前記印刷データ記憶手段から削除する印刷データ削除手段と、を備えることを特徴とするネットワークインタフェース装置である。第１の発明に係るネットワークインタフェース装置によって、操作部で印刷データを削除できないようなプリンタからでも、印刷データを削除することができる。
【００１３】
また、第１の発明に係るネットワークインタフェース装置は、前記ユーザ識別情報受付手段によって受け付けた前記ユーザ識別情報を記憶するユーザ識別情報記憶手段、を更に備え、前記印刷データ削除手段は、印刷データ識別情報送信手段によって前記印刷データ識別情報を送信することでユーザに所定時間通知する間に前記ユーザ識別情報受付手段によって受け付けた前記ユーザ識別情報と、前記ユーザ識別情報記憶手段によって記憶している前記ユーザ識別情報とが一致した場合に印刷データを削除することが望ましい。これによって、不正に印刷データが削除されることを防止することができる。
【００１４】
また、第１の発明に係るネットワークインタフェース装置は、ユーザの認証を行う認証サーバと通信し、前記ユーザ識別情報受付手段によって前記ユーザ識別情報を受け付けた場合、前記ユーザ識別情報を含む認証要求を前記認証サーバに送信する認証要求送信手段と、前記認証要求送信手段で認証要求を前記認証サーバに送信することで、前記ユーザ識別情報が認証された場合、前記ユーザ識別情報に対応する印刷データの印刷データ識別情報を取得する印刷データ識別情報取得手段と、を更に備え、前記印刷データ識別情報送信手段は、前記印刷データ識別情報取得手段で取得した印刷データ識別情報を送信する。これによって、印刷業務のセキュリティを向上させることができる。
【００１５】
また、第１の発明に係るネットワークインタフェース装置は、前記認証サーバと通信可能か否かを判断する通信可否判断手段と、前記通信可否判断手段で、前記認証サーバと通信可能でないと判断した場合、前記印刷データ受付手段によって受け付けた印刷データを、前記印刷データ記憶手段に記憶するための設定を解除する解除手段と、前記解除手段によって前記設定が解除されている場合、前記印刷データ受付手段によって受け付けた印刷データを、前記印刷データ記憶手段に記憶することなく、前記画像形成装置に送信する第１の印刷データ送信手段と、を更に備える。これによって、認証サーバがダウンするなどの理由により認証できない場合にも、印刷業務を滞らせないようにすることができる。
【００１６】
また、第１の発明は、前記通信可否判断手段は、前記解除手段で印刷データ記憶手段に記憶するための設定が解除されている場合、一定間隔で前記認証サーバと通信可能かどうかを判断する。これによって、認証サーバが復帰しているかどうかを随時確認することができる。
【００１７】
また、第１の発明は、記通信可否判断手段で前記認証サーバと通信可能であると判断した場合、かつ前記印刷データ記憶手段に記憶するための設定が解除されている場合、前記印刷データ記憶手段に記憶するための設定を設定する設定手段、
を更に備える。これによって、認証サーバが復帰している場合には、自動的に設定を戻すことができる。
【００１８】
また、第１の発明は、前記通信可否判断で前記認証サーバとの通信ができた際の時間情報を記憶する時間情報記憶手段、を更に備え、前記印刷データ識別情報通知手段は、前記時間情報と前記印刷データ記憶手段に印刷データを記憶した記憶時間情報に従って、前記印刷データ識別情報を通知するか否かを判断する。これによって、認証サーバが復帰した際の印刷データの削除処理において、適切な印刷データ識別情報をユーザに通知することができる。
【００１９】
また、第１の発明は、印刷データ識別情報送信手段で前記印刷データ識別情報を送信することでユーザに所定時間通知している間に、前記画像形成装置の入力部を介して印刷指示が入力された場合、通知されている前記印刷データ識別情報に対応する印刷データを前記画像形成装置に送信する第２の印刷データ送信手段、を更に備える。これによって、印刷データを削除しない場合、ユーザは所定時間の経過を待たなくて良い。
【００２０】
また、第１の発明は、読取対象物が読み取られている時間を決定する時間決定手段と、前記時間決定手段で決定された時間が所定時間であるか否かを判定する時間判定手段と、前記時間判定手段で所定時間であると判定された場合に、前記ユーザ識別情報に対応する印刷データを前記印刷データ記憶手段から全て削除する全印刷データ削除手段と、を更に備える。これによって、記憶媒体を長くかざすことで、ユーザの全印刷データを削除する仕組みを提供することができる。
【００２１】
また、第１の発明における印刷データ識別情報送信手段は、前記時間判定手段で所定時間でないと判定された場合に、前記印刷データ記憶手段で記憶されている印刷データを識別する印刷データ識別情報を所定時間ユーザに通知すべく当該画像形成装置に印刷データ識別情報を送信する。これによって、ユーザは、目的に応じて、全印刷データを削除するか、または印刷データ毎に印刷／削除をするかを決定し、記憶媒体をかざす時間に応じて、画像形成装置上で削除方法を切り替えることが可能となる。
【００２２】
また、第１の発明における前記ユーザ識別情報受付手段で受け付けたユーザ識別情報は、前記画像形成装置が備える読取部に記憶媒体がかざされた場合に、当該記憶媒体の所定の領域を読み取ることによって得られる情報である。
【００２３】
第２の発明は、画像形成装置に接続され、印刷データを送信する情報処理装置と通信するネットワークインタフェース装置の制御方法であって、印刷データ受付手段が、前記情報処理装置から送信された印刷データを受け付ける印刷データ受付工程と、書込手段が、前記印刷データ受付工程によって受け付けられた印刷データを記憶部に書き込む書込工程と、印刷データ識別情報送信手段が、読取対象物を読み取ることによって得られるユーザを識別するユーザ識別情報を受け付けるユーザ識別情報受付工程と、印刷データ識別情報送信手段が、前記記憶部で記憶されている印刷データを識別する印刷データ識別情報を所定時間ユーザに通知すべく当該画像形成装置に印刷データ識別情報を送信する印刷データ識別情報送信工程と、印刷データ削除手段が、前記印刷データ識別情報送信工程によって前記印刷データ識別情報を送信することでユーザに所定時間通知する間に前記ユーザ識別情報受付工程によって前記ユーザ識別情報を受け付けた場合、通知されている前記印刷データ識別情報に対応する印刷データを前記記憶部から削除する印刷データ削除工程と、を実行することを特徴とするネットワークインタフェース装置の制御方法である。
【００２４】
第３の発明は、画像形成装置に接続され、印刷データを送信する情報処理装置と通信するネットワークインタフェース装置を機能させるためのプログラムであって、前記情報処理装置から送信された印刷データを受け付ける印刷データ受付手段と、前記印刷データ受付手段によって受け付けられた印刷データを記憶する印刷データ記憶手段と、読取対象物を読み取ることによって得られるユーザを識別するユーザ識別情報を受け付けるユーザ識別情報受付手段と、前記印刷データ記憶手段で記憶されている印刷データを識別する印刷データ識別情報を所定時間ユーザに通知すべく当該画像形成装置に印刷データ識別情報を送信する印刷データ識別情報送信手段と、前記印刷データ識別情報送信手段によって前記印刷データ識別情報を送信することでユーザに所定時間通知する間に前記ユーザ識別情報受付手段によって前記ユーザ識別情報を受け付けた場合、通知されている前記印刷データ識別情報に対応する印刷データを前記印刷データ記憶手段から削除する印刷データ削除手段として機能させることを特徴とするプログラムである。
【００２５】
第４の発明は、印刷データを送信する情報処理装置と通信可能な画像形成装置であって、前記情報処理装置から送信された印刷データを受け付ける印刷データ受付手段と、前記印刷データ受付手段によって受け付けられた印刷データを記憶する印刷データ記憶手段と、読取対象物を読み取ることによって得られるユーザを識別するユーザ識別情報を受け付けるユーザ識別情報受付手段と、前記印刷データ記憶手段で記憶されている印刷データを識別する印刷データ識別情報を所定時間ユーザに通知する印刷データ識別情報通知手段と、前記印刷データ識別情報通知手段によってユーザに所定時間通知する間に前記ユーザ識別情報受付手段によって前記ユーザ識別情報を受け付けた場合、通知されている前記印刷データ識別情報に対応する印刷データを前記印刷データ記憶手段から削除する印刷データ削除手段と、を備えることを特徴とする画像形成装置である。
【発明の効果】
【００２６】
本発明によれば、操作部で印刷データを削除できないようなプリンタからでも、印刷データを削除することができる。また、認証サーバがダウンするなどの理由により認証できない場合にも、印刷業務を滞らせないようにすることができる。
【図面の簡単な説明】
【００２７】
【図１】従来のセキュアプリントシステムの構成の一例を示す図
【図２】本発明に係るセキュアプリントシステム１の構成の一例を示す図
【図３】ＬＤＡＰサーバ２００、クライアントＰＣ３００のハードウエア構成を示す図
【図４】印刷装置１０００のハードウエア構成を示す図
【図５】ＮＩＣ７００のハードウエア構成を示す図
【図６】本発明に係るセキュアプリントシステム１の構成を示すブロック図
【図７】セキュアプリントシステム１の印刷ジョブ投入処理手順の一例を示すフローチャート
【図８】セキュアプリントシステム１の印刷ジョブ出力処理手順の一例を示すフローチャート
【図９】セキュアプリントシステム１の印刷ジョブ出力処理手順の一例を示すフローチャート
【図１０】セキュアプリントシステム１の印刷ジョブ出力処理手順の一例を示すフローチャート
【図１１】セキュアプリントシステム１の印刷ジョブ出力処理手順の一例を示すフローチャート
【図１２】セキュアプリントシステム１の印刷ジョブ出力処理手順の一例を示すフローチャート
【図１３】セキュアプリントシステム１の削除確認処理手順の一例を示すフローチャート
【図１４】セキュアプリントシステム１の削除処理手順の一例を示すフローチャート
【図１５】セキュアプリントシステム１の出力処理の詳細手順の一例を示すフローチャート
【図１６】セキュアプリントシステム１のＬＤＡＰサーバ監視処理手順の一例を示すフローチャート
【図１７】セキュアプリントシステム１のユーザ通知処理手順の一例を示すフローチャート
【図１８】設定情報８０２の一例を示す図
【図１９】監視ポート９０７の詳細を示す図
【図２０】印刷装置１０００に表示するメッセージの一例を示す図
【図２１】ジョブ３１０の詳細を示す図
【図２２】印刷情報管理ヘッダ３１１の詳細を示す図
【図２３】ジョブ情報８２０の詳細を示す図
【図２４】ジョブリスト８０５の詳細を示す図
【図２５】実行リスト８０４の詳細を示す図
【図２６】ファイルシステム５０１の詳細を示す図
【図２７】ＩＣカード４１０の詳細を示す図
【図２８】ユーザ情報２１０の一例を示す図
【図２９】ＬＤＡＰディレクトリ２０１の詳細を示す図
【図３０】削除設定８４０の一例を示す図
【図３１】実行カード情報８５０の一例を示す図
【図３２】復帰時間情報８６０の一例を示す図
【図３３】セキュアプリントシステム１ａの実施例を示す図
【図３４】セキュアプリントシステム１ｂの実施例を示す図
【図３５】セキュアプリントシステム１の実施形態２における、印刷ジョブ出力処理手順の一例を示すフローチャート
【図３６】セキュアプリントシステム１の実施形態２における、印刷ジョブ出力処理手順の一例を示すフローチャート
【図３７】セキュアプリントシステム１の実施形態２における、設定情報８０２の一例を示す図
【発明を実施するための形態】
【００２８】
〔実施形態１〕
本発明の目的を達成するための構成として、例えば、プリントサーバを使わない構成がある。このプリントサーバを使わない構成での印刷方法には通常印刷モードとジョブ蓄積モードを用いた方法を用いる。
通常印刷モードとは、ジョブをストレージに蓄積せずに印刷を行うモードである。また、ジョブ蓄積モードとは、ジョブをストレージに蓄積し、ユーザがＩＣカードをかざすことによって印刷を行うモードである。そして、認証サーバが正常なときはジョブ蓄積モードで運用し、認証サーバがダウンしたときは、ジョブ蓄積モードから通常印刷モードに切り替えるという運用が行われる。
より具体的には、例えば、あるユーザがジョブ蓄積モードのときにジョブを投入すると、ジョブがストレージに蓄積される。続いて、ジョブを印刷しようとＩＣカードをかざしたときに、認証サーバがダウンしていたとする。認証サーバがダウンしている場合、ＩＣカードに紐づくユーザ名が取得できない。よって、蓄積ジョブの中からユーザのジョブを特定することができない。従って、通常印刷モードに切り替えて運用する必要がある。そして、ユーザが同じジョブをもう一度投入すると、ジョブが蓄積されずにそのまま出力される。これにより、ユーザは認証サーバがダウンしていても業務に支障をきたさず印刷をおこなうことができる。更に、認証サーバが復帰した場合、通常印刷モードからジョブ蓄積モードに切り替える。これにより、通常通りジョブを蓄積させられるのでセキュリティの高い印刷が行うことが可能となる。つまり、認証サーバが復帰すると、ユーザがＩＣカードをかざしたときに、ストレージに蓄積されているジョブが再び印刷されることになる。
しかし、このような運用では、ユーザはすでに同じ内容のジョブを出力しているので、ストレージに蓄積されているジョブを印刷する必要がないにも関わらず、ＩＣカードをかざしたときに無駄なジョブ（重複したジョブ）が印刷されてしまう。このような運用では、切り替え時に発生する重複したジョブを削除することができず、無駄とわかりつつ印刷しなくてはならないという課題が存在する。
本発明によれば、上記のような課題を解決することができる。
以下、添付図面を参照しながら、本発明に係るセキュアプリントシステムの好適な実施形態について詳細に説明する。
図１は、従来のセキュアプリントシステムの構成の一例を示す図である。
【００２９】
図１に示すように、例えば、階毎に設置する１又は複数の印刷装置（画像形成装置）１０００、管理者に１台、ユーザ毎に１台ずつというように設置する１又は複数のクライアントＰＣ３００、拠点毎に設置する１又は複数のプリンタサーバ１０１、拠点毎に設置する１又は複数の認証サーバ１０２がＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）１５０を介して接続される。また、印刷装置（画像形成装置）１０００には、ＵＳＢケーブル１６０を介してカードリーダ４００が接続される。
【００３０】
クライアントＰＣ３００は、印刷装置（画像形成装置）１０００の設定を行うＰＣある。クライアントＰＣ３００は、ＬＡＮ１５０を介して、例えば、ＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）などによって、印刷装置（画像形成装置）１０００と通信することができる機能を搭載したＰＣである。
また、クライアントＰＣ３００は、ユーザから印刷ジョブを投入するためのＰＣである。ユーザがクライアントＰＣ３００上で動くアプリケーションからプリンタドライバを介して印刷ジョブを生成すると、プリンタドライバがＬＰＲ（Ｌｉｎｅ  ＰＲｉｎｔｅｒ  ｄａｅｍｏｎ  ｐｒｏｔｏｃｏｌ）等の印刷プロトコルを用いて、印刷ジョブを印刷装置（画像形成装置）１０００やプリンタサーバ１０１に送信することができる。
【００３１】
プリンタサーバ１０１は、クライアントＰＣ３００から印刷ジョブを受け取り、印刷ジョブを解析してジョブ情報を取得し、印刷ジョブを蓄積する。また、印刷装置（画像形成装置）１０００から印刷要求を受け取り、印刷要求に含まれるユーザ名をもとにして、蓄積ジョブからユーザのジョブを検索し、見つかったユーザのジョブを印刷装置（画像形成装置）１０００に対して印刷指示を行う。
【００３２】
認証サーバ１０２は、印刷装置（画像形成装置）１０００がユーザ認証を行うためのサーバである。カードＩＤ２１１に紐づくユーザ名、メールアドレス、利用権限等のデータを持っている。認証サーバ１０２は、印刷装置（画像形成装置）１０００からの問い合わせに対して、ユーザの有無と、ユーザが存在する場合はそのユーザ情報を返答する機能を有する。
【００３３】
カードリーダ４００は、ＵＳＢケーブル１６０を介して印刷装置（画像形成装置）１０００に接続される。
カードリーダ４００は、ＩＣカード４１０（例えば、ソニー（登録商標）社のフェリカ（ＦｅｌｉＣａ）（登録商標））がかざされるとカード内部の情報を読み取り、ＵＳＢケーブル１６０を介して印刷装置（画像形成装置）１０００に通知する。
【００３４】
次に、図２を参照しながら、本発明に係るセキュアプリントシステム１について説明する。
図２は、本発明に係るセキュアプリントシステム１の構成の一例を示す図である。
【００３５】
図２に示すセキュアプリントシステム１は、ＬＡＮ１５０を介してクライアントＰＣ（情報処理装置）３００、ＬＤＡＰ（Ｌｉｇｈｔｗｅｉｇｈｔ  Ｄｉｒｅｃｔｏｒｙ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ）サーバ（認証サーバ）２００、ＮＩＣ（ネットワークインタフェース装置）７００が接続される。印刷装置１０００には、ＮＩＣ（ネットワークインタフェース装置）７００が挿入される。
ＮＩＣ７００は、ＵＳＢケーブル１６０、ＵＳＢハブ６００を介してマスストレージ（記憶部）５００、カードリーダ４００を接続している。
マスストレージ５００及びＵＳＢハブ６００がＮＩＣ７００を介して印刷装置１０００に外付けされているが、印刷装置１０００に内蔵するようにしてもよい。また、ＮＩＣ７００が複数のＵＳＢポート１６０を有する場合はＵＳＢハブ６００を介する必要はなく、ＮＩＣ７００にカードリーダ４００及びマスストレージ５００が直接接続される。
【００３６】
ＬＤＡＰサーバ２００は、図１の認証サーバ１０２の役割を行うもので、ＬＤＡＰプロトコルにて通信を行う機能を有する。ＬＤＡＰサーバ２００は、内部のディレクトリにユーザ情報を一元管理することができる。ＬＤＡＰサーバ２００は、１つのサーバで構成しても良い。また、ＬＤＡＰサーバ２００は、後述するように、プライマリおよびセカンダリの２つのサーバによって構成しても良い。また、ＬＤＡＰサーバ２００は、３つ以上のサーバによって構成しても良い。いずれの場合であっても、ＬＤＡＰサーバ２００がダウンするとは、ＬＤＡＰサーバ２００を構成する全てのサーバがダウンしたことを意味するものとする。
図２では、ＬＤＡＰサーバ２００を使用しているが、認証を行うことができるサーバであればＬＤＡＰサーバに限らない。
クライアントＰＣ３００は、印刷データを生成する情報処理装置である。
【００３７】
マスストレージ５００は、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）やフラッシュメモリのような大容量のファイルシステムを持つハードウエアで、ＵＳＢケーブル１６０を介してＵＳＢハブ６００に接続している。
マスストレージ５００は、印刷装置１０００からファイル書き込み、読み込み、削除等のファイルシステムの制御を行うことが可能である。
【００３８】
次に、図３、４、５を参照しながら、クライアントＰＣ３００、ＬＤＡＰサーバ２００、印刷装置１０００、ＮＩＣ７００について説明する。
図３は、ＬＤＡＰサーバ２００、クライアントＰＣ３００のハードウエア構成を示す図、図４は、印刷装置１０００のハードウエア構成を示す図、図５は、ＮＩＣ７００のハードウエア構成を示す図である。
【００３９】
図３に示すように、ＬＤＡＰサーバ２００、クライアントＰＣ３００は、システムバス２００４を介してＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２００１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２００２、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２００３、入力コントローラ２００５、ビデオコントローラ２００６、メモリコントローラ２００７、通信Ｉ／Ｆコントローラ２００８が接続される。
【００４０】
ＣＰＵ２００１は、システムバス２００４に接続される各デバイスやコントローラを統括的に制御する。
ＲＯＭ２００３あるいは外部メモリ２０１１は、ＣＰＵ２００１の制御プログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）やＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍｓ）や、各サーバあるいは各ＰＣが実行する各種プログラム等を保持している。
ＲＡＭ２００２は、ＣＰＵ２００１の主メモリ、ワークエリア等として機能する。ＣＰＵ２００１は、処理の実行に際して必要なプログラム等をＲＯＭ２００３あるいは外部メモリ２０１１からＲＡＭ２００２にロードし、ロードしたプログラムを実行することで各種動作を実現する。
【００４１】
入力コントローラ２００５は、キーボード（ＫＢ）２００９やマウス（図示しない）等のポインティングデバイス等からの入力を制御する。
ビデオコントローラ２００６は、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）２０１０等の表示器への表示を制御する。表示器はＣＲＴに限らず、液晶ディスプレイ等の他の表示器でもよい。これらは、必要に応じて管理者が使用する。
【００４２】
メモリコントローラ２００７は、ブートプログラム，各種のアプリケーション，フォントデータ，ユーザファイル，編集ファイル，各種データ等を記憶するハードディスク（ＨＤ）や、フレキシブルディスク（ＦＤ）、あるいは、ＰＣＭＣＩＡ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ  Ｍｅｍｏｒｙ  Ｃａｒｄ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ａｓｓｏｃｉａｔｉｏｎ）カードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）メモリ等の外部メモリ２０１１へのアクセスを制御する。
通信Ｉ／Ｆコントローラ２００８は、ＬＡＮ１５０のようなネットワークを介して外部機器と接続・通信し、ネットワーク上での通信制御処理を実行する。通信Ｉ／Ｆコントローラ２００８は、例えば、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）を用いた通信等が可能である。
【００４３】
ＣＰＵ２００１は、例えばＲＡＭ２００２内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ＣＲＴ２０１０上に表示することが可能である。また、ＣＰＵ２００１は、ＣＲＴ２０１０上のマウスカーソル（図示しない）等によるユーザ指示を可能とする。
ＬＤＡＰサーバ２００、クライアントＰＣ３００のハードウエア上で動作する各種プログラムは、外部メモリ２０１１に記録されており、必要に応じてＲＡＭ２００２にロードされ、ＣＰＵ２００１により実行される。プログラムの実行時に用いられる定義ファイル及び各種情報テーブル等は、外部メモリ２０１１に格納されている。
【００４４】
次に、印刷装置１０００のハードウエア構成について説明する。
図４に示すように、印刷装置１０００は、入力部３０００、ＣＰＵ３００１、操作部３００２、印刷処理部３００３、記憶部３００４、出力カセット３００５、用紙カセット３００６等を有する。
【００４５】
入力部３０００は、本印刷装置とＮＩＣ７００を接続するものであり、ＮＩＣ７００とのデータ通信を制御する。
ＣＰＵ３００１は、印刷装置１０００全体の動作を制御する。
操作部３００２は、印刷装置１０００に直接ユーザによる操作のインタフェースを提供する。
印刷処理部３００３は、入力部３０００で受信したコマンドの解析、印刷データ（ＰＤＬ）の解析等を行う。
記憶部３００４は、印刷装置１０００を動作させるためのＲＯＭ（図示しない）、ＲＡＭ（図示しない）、二次記憶装置（図示しない）等からなる。ＲＡＭは使用制限のないデータ記憶領域で、入力部３０００の受信バッファ、あるいは、印刷処理部３００３でのデータ展開等に使用する。
出力部３００５は、入力部３０００で受信した印刷データを、印刷処理部３００３で印刷可能なイメージ情報に展開したものを紙に転写する。
用紙カセット３００６は、出力部３００５の処理に合わせて適切な用紙を供給する。
【００４６】
ＮＩＣ７００は、ネットワークインタフェースカードであり、ＬＡＮ１５０を介して他の機器から受信したデータをＮＩＣ７００が窓口となって受け取り、ＮＩＣ内部のプログラム（図示しない）や、印刷装置１０００の入力部３０００に渡す。
【００４７】
次に、ＮＩＣ７００のハードウエア構成について説明する。
図５に示すように、ＮＩＣ７００は、ＣＰＵ４００１、ＲＡＭ４００２、通信Ｉ／Ｆコントローラ４００３、ＵＳＢＩ／Ｆコントローラ４００４、内部メモリ４００５、メモリコントローラ４００６、ＲＯＭ４００７、機器Ｉ／Ｆコントローラ４００８等を有する。
【００４８】
ＣＰＵ４００１はＮＩＣ７００の制御を行うもので、内部で接続されている装置を制御する。
ＲＡＭ４００２は、ＣＰＵ４００１の主メモリ、ワークエリア等として機能する。ＣＰＵ４００１は、処理の実行に際して必要なプログラム等をＲＯＭ４００７あるいは内部メモリ４００５からＲＡＭ４００２にロードして、ロードしたプログラムを実行する。
通信Ｉ／Ｆコントローラ４００３は、ＬＡＮ１５０のようなネットワークを介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰやＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）などの通信プロトコルを用いた通信が可能である。
【００４９】
ＵＳＢＩ／Ｆコントローラ４００４は、カードリーダ４００、マスストレージ５００及びＵＳＢハブ６００などのＵＳＢ機器とＮＩＣ７００を接続、通信するもので、ＵＳＢの通信制御処理を実行する。
内部メモリ４００５は、ＮＩＣ７００を制御するＯＳが搭載されており、またＯＳ上で動作するアプリケーションプログラム、その設定情報を記憶する。
メモリコントローラ４００６は、各種のアプリケーション、各種データ等を記憶する内部メモリ４００５へのアクセスを制御する。
ＲＯＭ４００７は、読み出し専用の半導体メモリであり、電源を切っても内容が消えないことからブートプログラムが格納される。
機器Ｉ／Ｆコントローラ４００８は、ＮＩＣ７００と印刷装置１０００を接続、通信する。
【００５０】
次に、図６、図１８、図１９、図２１、図２２、図２３、図２４、図２５、図２６、図２７、図２８、図２９、図３０、図３１、図３２を参照しながら、セキュアプリントシステム１の全体の処理の流れについて説明する。
図６は、本発明に係るセキュアプリントシステム１の構成を示すブロック図である。図１８は、設定情報８０２の一例を示す図、図１９は、監視ポート９０７の詳細を示す図である。図２１は、ジョブ３１０の詳細を示す図である。図２２は、印刷情報管理ヘッダ３１１の詳細を示す図である。図２３は、ジョブ情報８２０の詳細を示す図である。図２４は、ジョブリスト８０５の詳細を示す図である。図２５は、実行リスト８０４の詳細を示す図である。図２６は、ファイルシステム５０１の詳細を示す図である。図２７は、ＩＣカード４１０の詳細を示す図である。図２８は、ユーザ情報２１０の一例を示す図である。図２９は、ＬＤＡＰディレクトリ２０１の詳細を示す図である。図３０は、削除設定８４０の一例を示す図である。図３１は、実行カード情報８５０の一例を示す図である。図３２は、復帰時間情報８６０の一例を示す図である。
【００５１】
セキュアプリントシステム１は、ＬＤＡＰサーバ２００とクライアントＰＣ３００、印刷装置１０００に接続されたＮＩＣ７００が、双方向通信可能なＬＡＮ１５０を介して接続している。ＮＩＣ７００には、ＵＳＢ通信可能なＵＳＢケーブル１６０を介して、マスストレージ５００、ＵＳＢハブ６００及びカードリーダ４００が接続している。
【００５２】
ＬＤＡＰサーバ２００は、ＬＤＡＰディレクトリ２０１、ＬＤＡＰ機能部２０２、Ｉ／Ｆドライバ部１９０等を有する。ＬＤＡＰサーバ２００、は冗長構成をとることが可能で、複数台設置してもよい。
ＬＤＡＰサーバ２００は、システム内でのユーザ情報の検索という役割を有するため、ユーザ情報の格納及び検索機能を持つサーバであればＬＤＡＰサーバに限らない。
【００５３】
ＬＤＡＰディレクトリ２０１は、図２９に示すデータを格納している。
ＬＤＡＰディレクトリ２０１は、データ群をまとめる最上位の単位Ｓｕｆｆｉｘの下に識別コードが１または複数配備されており、さらに、その識別コードの下に１または複数のユーザ情報２１０が格納される。
一般的に、識別コードはＯＵ（Ｏｒｇａｎｉｚａｔｉｏｎ  Ｕｎｉｔ）で構築される。また、Ａｃｔｉｖｅ
Ｄｉｒｅｃｔｏｒｙ（登録商標）では、Ｓｕｆｆｉｘがドメインという単位にあたる。
ユーザ情報２１０は、図２８に示すようにカードＩＤ２１１、ユーザ名２１２、パスワード２１３、サブユーザ１  ２１４、サブユーザ２  ２１５、サブユーザ３  ２１６、サブユーザ４  ２１７、利用制限２１８等を有する。
【００５４】
カードＩＤ２１１は、図２７に示すように、ユーザのＩＣカード４１０のＩＤを登録するもので、ｓｕｆｆｉｘの中で一意となる値である。
ユーザ名２１２は、カードＩＤ２１１と一致するＩＣカード４１０を保持しているユーザの名前である。
パスワード２１３は、ユーザの認証を行う際に、本人確認を行うために格納される。
サブユーザ１〜４  ２１４〜２１７は、ユーザが使っているメインのユーザ名２１２とは別の名前で、ユーザが他のユーザの代理を行う場合に使用するユーザ名である。
利用制限２１８は、印刷装置１０００を利用する上での制限情報が格納されている。
【００５５】
ＬＤＡＰ機能部２０２は、ＬＤＡＰプロトコルに従って通信の接続、認証、検索、変更、追加、削除、切断等を行う。
接続では、接続要求を発行したクライアントに対して、論理的な通信経路を確保する。
認証では、認証要求を発行したユーザ名を、ＬＤＡＰディレクトリ２０１内から検索し、パスワードの照合を行って認証結果を返答する。
検索では、検索要求を受けた値を元に、ＬＤＡＰディレクトリ２０１から該当するユーザを検索し、一致したユーザ情報２１０を返答する。
【００５６】
Ｉ／Ｆドライバ部１９０は、ＬＡＮ１５０等のネットワークを介して外部機器と接続・通信を行うもので、ＴＣＰ／ＩＰやＵＤＰなどの通信プロトコルに従って通信を制御する。
【００５７】
クライアントＰＣ３００は、アプリケーション部３０１、プリンタドライバ部３０２、送信バッファ３０３、Ｉ／Ｆドライバ部１９０等を有する。
アプリケーション部３０１は、ユーザにグラフィックユーザインタフェースを提供し、ユーザの目的に適った画像データを生成する。
プリンタドライバ部３０２は、アプリケーション部３０１が生成した画像データを印刷装置１０００で印刷可能なページ記述言語（ＰＤＬ）データに変換する。さらに、ＰＤＬデータに対して、図２２に示すようにジョブオーナ３１２、ジョブ名３１３等のジョブ情報を含んだ印刷情報管理ヘッダ３１１を付与し、図２１に示すジョブ３１０を作成する。
送信バッファ３０３は、プリンタドライバ部３０２が作成したジョブ３１０を一時的に格納し、スプールを実現する。
【００５８】
ＵＳＢハブ６００は、ＵＳＢ通信部１９５等を有する。ＵＳＢハブ６００は、ＵＳＢデータを中継し、ＵＳＢハブ６００に接続された機器のＵＳＢデータを他の各機器へ転送する。
ＵＳＢ通信部１９５は、ＵＳＢ仕様に従ってコントロール転送、インタラプト転送、バルク転送、アイソクロナス転送などのデータ通信を行う。データ転送することが必要条件であり、転送速度やＵＳＢバージョンなどは特に問わない。
【００５９】
マスストレージ５００は、ファイルシステム５０１、ファイルシステム管理部５０２、ＵＳＢ通信部１９５等を有する。
図２６に示すように、ファイルシステム５０１はジョブ３１０を内部記憶装置（図示しない）に格納する。また、ジョブ３１０の書き込み、読み込み、削除を行う。
【００６０】
カードリーダ４００は、ＵＳＢ通信部１９５、カード読取部４０１等を有する。
カード読取部４０１は、ＩＣカード４１０（記憶媒体）からカードＩＤ２１１を読み取るためのものである。ＩＣカード４１０がカードリーダ４００にかざされると、ＩＣカード４１０（記憶媒体）からカードＩＤ２１１等の情報を読み取り、ＵＳＢ通信部１９５を介して接続された他機器に情報を伝達する。
尚、本実施形態ではＩＣカードをカードリーダにかざすことによる認証を用いた構成としたが、指紋或いは手や指の静脈の情報（生体情報）を用いた認証を用いた構成であってもよい。この場合、カードリーダ４００を指や手などの読取対象物を読み取るリーダ（読取部）に置き換えることで実現可能である。
【００６１】
ＮＩＣ７００は、アプリケーション８００、ＮＩＣ  ＯＳ９００等を有する。
アプリケーション８００は、ＮＩＣ  ＯＳ９００上で動作するプログラムである。
ＮＩＣ  ＯＳ９００は、ＮＩＣ７００を制御すると同時に、ＮＩＣ７００上のアプリケーション８００の管理、印刷装置１０００への各種指示なども行う。
【００６２】
ＮＩＣ７００のアプリケーション８００は、設定情報管理部８０１、設定情報８０２、ＬＰＲ通信部８０３、実行リスト８０４、ジョブリスト８０５、ＬＤＡＰ通信部８０６、ＬＤＡＰサーバ監視部８０７、印刷情報管理プロトコル解析部８０８、リスト管理部８０９、ユーザ通知部８１０、カードリーダ管理部８１１、ファイル管理部８１２、印刷指示部８１３、ビープ指示部８１４、パネル表示指示部８１５等を有する。更に、図６には図示していないが、アプリケーション８００は、削除設定８４０、実行カード情報８５０、復帰時間情報８６０等を有する。
【００６３】
設定情報管理部８０１は、図１８に示すアプリケーション８００の実行に必要な設定情報８０２を管理するもので、設定情報８０２の書き込み、読み出しを行う。
クライアントＰＣ３００が、ブラウザを使ってアプリケーション８００にアクセスしてアプリケーション８００の設定情報を設定し、アプリケーション８００がクライアントＰＣ３００からの指示を受け取ると、設定情報管理部８０１は、設定されたデータを設定情報８０２として保持する。
設定情報８０２は、Ｓｕｆｆｉｘ８３１、識別コード８３２、プライマリサーバ８３３、プライマリポート８３４、セカンダリサーバ８３５、セカンダリポート８３６、ユーザ８３７、パスワード８３８等を有する。
【００６４】
Ｓｕｆｆｉｘ８３１、識別コード８３２は、ＬＤＡＰサーバ２００に検索要求を発行する際、検索場所を指定する条件となる。
プライマリサーバ８３３、プライマリポート８３４、セカンダリサーバ８３５、セカンダリポート８３６は、ＬＤＡＰサーバ２００に接続するための情報である。ＬＤＡＰサーバ２００は冗長構成をとることができるため、プライマリ・セカンダリのように複数台の設定することが可能となっている。
ユーザ８３７、パスワード８３８は、ＬＤＡＰサーバ２００に認証要求を発行する際に必要な情報である。
【００６５】
ＬＰＲ通信部８０３は、ＬＰＲ印刷プロトコルを解析し、通信を行うもので、クライアントＰＣ３００からジョブ３１０を受け取る際のプロトコルを解析し、通信する。
ここでは、例示的にＬＰＲと記したが、印刷プロトコルであれば特にＬＰＲに限らない。
【００６６】
実行リスト８０４は、図２５で示されるもので、図２４に示すジョブリスト８０５のサブセットである。印刷を実施するときは、実行リスト８０４に格納されたジョブ情報３１０をもとに印刷指示を行う。
ジョブリスト８０５は、図２３に示すジョブ情報８２０で構成されている。ジョブ情報８２０は、ジョブ３１０を管理するために必要な情報を抽出した情報で、ユーザ名８２１、ファイル名８２２、ジョブ名８２３、タイムスタンプ８２４等を有する。ジョブリスト８０５は、ファイルシステム５０１に格納されているジョブ３１０の情報をすべて保持している。
【００６７】
ＬＤＡＰ通信部８０６は、ＬＤＡＰサーバ２００とＬＤＡＰプロトコルに従って通信を行うもので、設定情報８０２のプライマリサーバ及びプライマリポートで指定されるＬＤＡＰサーバ２００に接続する。
ＬＤＡＰ通信部８０６は、設定情報８０２のユーザ８３７及びパスワード８３８用いて認証を行う。また、ＬＤＡＰ通信部８０６は設定情報８０２のＳｕｆｆｉｘ８３１、識別コード８３２を検索場所として、カードＩＤ２１１に紐づくユーザ情報２１０（図２８）を検索する。プライマリにもセカンダリにもアクセスできなかった場合、監視ポート９０７から印刷ポートの指定を解除する。
【００６８】
ＬＤＡＰサーバ監視部８０７は、ＬＤＡＰサーバ２００とＮＩＣ７００が通信できる状態にあるかどうかを定期的に監視する。実際の接続処理等は、ＬＤＡＰ通信部８０６を通じて行われる。監視処理中に、ＬＤＡＰサーバ２００とＮＩＣ７００が通信できると判断した場合で、かつ監視ポート９０７に印刷ポートが設定されていない場合、監視ポート９０７に印刷ポートを追加する。これにより、サーバダウン時の印刷切り替えの復帰を実現する。
【００６９】
印刷情報管理プロトコル解析部８０８は、ジョブ３１０に含まれる印刷情報管理ヘッダ３１１を解析する。印刷情報管理ヘッダ３１１は、ＰＤＬデータの先頭に付加されるバイナリデータで、様々なジョブ情報が含まれる。
印刷情報管理ヘッダ３１１に含まれるジョブオーナ３１２とジョブ名３１３を取得し、ジョブ情報８２０を作成する際、印刷情報管理プロトコル解析部８０８で解析した値を利用する。
【００７０】
リスト管理部８０９は、実行リスト８０４及びジョブリスト８０５を管理する。ジョブ３１０がファイルシステム５０１に書き込まれると、ジョブ情報８２０をファイル管理部８１２から受け取り、ジョブリスト８０４に追加して管理する。また、ジョブリスト８０５の中でＬＤＡＰ通信部８０６から渡されたユーザ名に一致したジョブ情報８２０を抽出し、実行リスト８０４を作成する。リスト管理部８０９は、印刷完了時にファイル管理部８１２から通知を受け、該当するジョブ情報８２０をジョブリスト８０５から削除する。
【００７１】
ユーザ通知部８１０は、印刷装置１０００を利用しているユーザに対して、エラーなどを通知する。ユーザ通知部８１０は、ＮＩＣ  ＯＳ９００に対してビープ指示し、印刷装置１０００からビープ音を鳴動させてユーザの聴覚に訴えたり、パネル表示指示を行って任意の文字を印刷装置１０００のパネルに表示し、ユーザの視覚に訴えたりする機能を持つ。
【００７２】
カードリーダ管理部８１１は、ＮＩＣ７００にＵＳＢ１６０を介して接続されたカードリーダ４００を制御するためのものである。ＩＣカード４１０（記憶媒体）がカードリーダ４００にかざされると、カードリーダ管理部８１１はカードＩＤ２１１を取得する。
【００７３】
ファイル管理部８１２は、ジョブ３１０をアプリケーション８００内で管理する。ファイル管理部８１２は、ジョブ３１０を暗号化してファイルシステム５０１に格納する。また、ジョブ３１０を復号化し、印刷指示部８１３にジョブ３１０を送ったり、あるいは、印刷指示部８１３へのジョブ投入が終わったタイミングで、該当するジョブ３１０をファイルシステム５０１から削除する。
【００７４】
印刷指示部８１３は、ファイル管理部８１２から送られてきた復号化されたジョブ３１０をＮＩＣ
ＯＳ９００に対して、印刷情報管理プロトコルを用いて印刷指示する。
【００７５】
ビープ指示部８１４は、ユーザ通知部８１０からのビープ指令を受け取って、ＮＩＣ  ＯＳ９００に通知する。ビープ音に関しては、印刷情報管理プロトコル、ＪＬ、ＵＤＰ等を使用したり、様々な方法でビープ鳴動を実現できるが、どの機能がサポートされているかは印刷装置１０００によって異なる。ビープ指示部８１４は、印刷装置１０００の種別による違いを吸収して適切なビープ指示を行う。
パネル表示指示部８１５は、ＭＩＢ（Ｍａｎａｇｅｍｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｂａｓe）を使って印刷装置１０００のパネル（図示しない）に任意のメッセージを表示させる。一定時間表示させることができない機種の印刷装置１０００の場合は、数秒表示後に表示のリセットを行う。
【００７６】
削除設定８４０は、図３０に示されるもので、ＬＤＡＰサーバ２００がダウンした後、復帰した際のマスストレージ５００に蓄積されている印刷データの削除処理機能に関する設定である。「ＯＮ」の場合、ＮＩＣ７００は、削除処理を実行する。「ＡＵＴＯ」の場合、ＮＩＣ７００は、実行リスト８０４をチェックし、削除対象のジョブがある場合には削除処理を実行する。「ＯＦＦ」の場合、ＮＩＣ７００は、削除処理を実行しない。実行カード情報８５０は、図３１に示されるもので、削除処理を実行するユーザが持つカードの情報である。復帰時間情報８６０は、図３２に示されるもので、ＬＤＡＰサーバ２００がダウンした後、復帰した時刻を示す情報である。尚、一定間隔でＬＤＡＰサーバ２００と通信可能かどうかを確認するような構成の場合、復帰時間情報８６０は、ＬＤＡＰサーバ２００が実際に復帰した時間でなく、ＬＤＡＰサーバ２００に接続を試みて接続が確認できた時刻とすることも可能である。つまり、復帰時間情報８６０は、接続時間情報と言い換えることが可能である。また、時間は時刻を含むものである。
【００７７】
次に、ＮＩＣ  ＯＳ９００について詳細を説明する。
ＮＩＣ  ＯＳ９００は、Ｉ／Ｆドライバ部１９０、ＵＳＢ通信部１９５、暗号/復号化部９０５、印刷情報管理プロトコル解析・通信部９０４、ＪＬ通信部９０３、ＵＤＰ通信部９０２、ＭＩＢ通信部９０１、通信制御部９０６、監視ポート９０７を有する。
【００７８】
暗号/復号化部９０５は、データの暗号化及び復号化を行うためのものである。形式は固定のものではなく、ＤＥＳ（Ｄａｔａ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ）やトリプルＤＥＳ、ＡＥＳ（Ａｄｖａｎｃｅｄ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ）等のブロック暗号化、及びＲＣ４などのストリーム暗号化などを行うことができる。
印刷情報管理プロトコル解析・通信部９０４は、印刷情報管理プロトコルに従ってデータ通信を行うためのものである。印刷情報管理プロトコルは、印刷装置１０００の制御を行うための通信プロトコルであり、印刷指示やビープ音鳴動等などが行える。
ＪＬ通信部９０３は、ＪＬ通信を行うためのものである。ＪＬはジョブ制御言語であり、印刷装置１０００の情報取得指令や、ＰＤＬデータの受信指令、印刷装置１０００へのビープ指令などを行うことができる。
【００７９】
ＵＤＰ通信部９０２は、ＵＤＰ通信を行う。このＵＤＰ通信を使って、ＤＮＳ（Ｄｏｍａｉｎ  Ｎａｍｅ  Ｓｙｓｔｅｍ）クエリや、ビープ指令などを行うことができる。
ＭＩＢ通信部９０１は、ＭＩＢ通信を行うためのものである。ＭＩＢは、通信機器を管理するためのプロトコルで、印刷装置１０００のパネル表示等を行う。
通信制御部９０６は、Ｉ／Ｆドライバ部１９０から受信したデータを、アプリケーション８００に通知したり、印刷装置１０００に渡したりする。通信制御部９０６は、監視ポート９０７に設定されているポートに対してデータが送信されてきた場合、アプリケーション８００に通知し、監視ポート９０７に設定されていないポートへのデータを受信した場合は、印刷装置１０００にデータを転送する。
監視ポート９０７は、図１９に示すように、通信制御部９０６がアプリケーション８００と印刷装置１０００のどちらにデータを転送するかを決定するための情報である。監視ポート９０７は、アプリケーション８００に通知する通信ポート番号を指定する。
【００８０】
次に、印刷装置１０００について説明する。
印刷装置１０００は、Ｉ／Ｆドライバ部１９０、受信バッファ１００１、送信バッファ１００２、ＭＩＢ通信部９０１、ＵＤＰ通信部９０２、ＪＬ通信部９０３、印刷情報管理プロトコル解析・通信部９０４、ＬＰＲ通信部８０３、パネル表示部１００８、ビープ鳴動部１００９、ＰＤＬトランスレータ部１０１１、機器ＤＢ部１０１０、描画バッファ１０１２、描画部１０１３、プリンタエンジン部１０１４を有する。
【００８１】
受信バッファ１００１は、Ｉ／Ｆドライバ部１９０で受信した全データを一時的に確保し、処理遅延の緩衝材となる。
送信バッファ１００２は、Ｉ／Ｆドライバ部１９０に送信する前の全データを一時的に確保し、処理遅延の緩衝材となる。
パネル表示部１００８は、指定されたメッセージを印刷装置１０００のパネルに表示する。
ビープ鳴動部１００９は、印刷装置１０００内蔵の鳴動装置（図示しない）を作動させ、音を鳴らす。
機器ＤＢ部１０１０は、ＪＬにより設定された印刷装置１０００の情報を格納し、ＰＤＬトランスレータ部１０１１に情報を提供する。ここでいう環境情報とは、例えば印刷枚数のことである。
【００８２】
ＰＤＬトランスレータ部１０１１は、ＰＤＬデータの翻訳処理を行い、描画に適した描画オブジェクトである中間データに変換を行う。
描画バッファ１０１２は、ＰＤＬトランスレータ部１０１１によって生成された描画オブジェクトの中間データを、実際に印刷を行うまで一時的に格納しておく。
描画部１０１３は、描画バッファ１０１２に一時格納された描画オブジェクトを実際に描画してビットマップ画像であるイメージデータを生成する。
プリンタエンジン部１０１４は、描画部１０１３が生成したビットマップ画像を受け取り、既知の印刷技術により用紙等のメディアに印刷を行う。
【００８３】
次に、図７、８、９、１０、１１、１２、１３、１４、１５、１６、１７、２０を参照しながら、本発明に係るセキュアプリントシステム１の詳細な処理について説明する。
図７は、セキュアプリントシステム１の印刷ジョブ投入処理手順の一例を示すフローチャートである。図８は、セキュアプリントシステム１の印刷ジョブ出力処理手順の一例を示すフローチャートである。図９は、セキュアプリントシステム１の印刷ジョブ出力処理手順の一例を示すフローチャートである。図１０は、セキュアプリントシステム１の印刷ジョブ出力処理手順の一例を示すフローチャートである。図１１は、セキュアプリントシステム１の印刷ジョブ出力処理手順の一例を示すフローチャートである。図１２は、セキュアプリントシステム１の印刷ジョブ出力処理手順の一例を示すフローチャートである。図１３は、セキュアプリントシステム１の削除確認処理手順の一例を示すフローチャートである。図１４は、セキュアプリントシステム１の削除処理手順の一例を示すフローチャートである。図１５は、セキュアプリントシステム１の出力処理の詳細手順の一例を示すフローチャートである。図１６は、セキュアプリントシステム１のＬＤＡＰサーバ監視処理手順の一例を示すフローチャートである。図１７は、セキュアプリントシステム１のユーザ通知処理手順の一例を示すフローチャートである。図２０は、印刷装置１０００に表示するメッセージの一例を示す図である。
【００８４】
以下では、ＮＩＣ７００が行う処理について、アプリケーション８００の機能とＮＩＣ  ＯＳ９００との機能を区別して記載する。そのため、便宜上、処理の主体は、アプリケーション８００とＮＩＣ  ＯＳ９００とする。但し、実際には、処理を行う主体は、ＮＩＣ７００である。ハードウエアであるＮＩＣ７００は、ソフトウエアであるアプリケーション８００またはＮＩＣ  ＯＳ９００と協働して、後述する処理を実行する。
【００８５】
図７では、ＮＩＣ７００は、クライアントＰＣ３００から、印刷データを受付ける。また、ＮＩＣ７００は、受け付けた印刷データをマスストレージ５００に記憶する。また、ＮＩＣ７００は、印刷データを印刷装置１０００に送信する。
【００８６】
図７に示すように、セキュアプリントシステム１へのジョブ投入の処理では、クライアントＰＣ３００のアプリケーションが、プリンタドライバを介してジョブ３１０を生成する（ステップＳ００１）。
クライアントＰＣ３００が、生成されたジョブ３１０をＮＩＣ  ＯＳ９００に対して送信すると（ステップＳ００２）、ＮＩＣ  ＯＳ９００はクライアントＰＣ３００から送信されたデータを受信し、監視ポート９０７の設定を見て分岐処理を行う（ステップＳ００３）。
クライアントＰＣ３００は、印刷方法がマスストレージ５００を使ったものか、ＬＤＡＰサーバ２００と通信できずにそのまま印刷装置１０００から出力するのか、意識する必要はない。印刷出力する際に、ＬＤＡＰサーバ２００と通信できているのか否かを意識せずに、ジョブ３１０を送信することができるため、設定変更の手間が省け、よりユーザビリティの高いセキュアプリントシステムを実現している。
【００８７】
監視ポート９０７に設定されていない監視対象外のポートへのデータの場合、ＮＩＣ  ＯＳ９００は受信したジョブ３１０を印刷装置１０００に転送し（ステップＳ００４）、印刷装置１０００は転送されたジョブ３１０を受け付け、受信バッファ１００１に格納し、スプール処理を行う（ステップＳ００５）。
印刷装置１０００は、スプールされたジョブ３１０のデータの印刷情報管理ヘッダ３１１を解析する（ステップＳ００６）。解析したデータは、図示しない内部ログデータなどに利用される。
印刷装置１０００は、ジョブ３１０内のＰＤＬデータを解析し、描画オブジェクトの中間データを作成し、さらにその中間データをもとにビットマップイメージを作成する（ステップＳ００７）。
印刷装置１０００は、作成したビットマップイメージを既知の印刷技術により用紙等のメディアに印刷を行う（ステップＳ００８）。
【００８８】
受信データが監視ポート９０７に設定されているポートへのデータの場合、受信データが監視対象になっているポートへのデータの場合、ＮＩＣ  ＯＳ９００はアプリケーション８００にジョブ３１０を転送する（ステップＳ００９）。
アプリケーション８００は、ジョブ３１０の印刷情報管理ヘッダ３１１を解析し、ジョブオーナ及びジョブ名を取得し（ステップＳ０１０）、アプリケーション８００はジョブ情報８２０を作成する（ステップＳ０１１）。
取得したジョブオーナ３１２をユーザ名８２１として、取得したジョブ名３１３をジョブ名８２３として格納する。また、アプリケーション内で一意となる文字列を生成してファイル名８２２とする。タイムスタンプ８２４は、ファイル書き込み後に記憶する。
【００８９】
アプリケーション８００は、ジョブ３１０を暗号化するため、ジョブ３１０のデータをＮＩＣ  ＯＳ９００に渡し、暗号化鍵や暗号化アルゴリズムなどを指定する（ステップＳ０１２）。
ＮＩＣ  ＯＳ９００は、渡されたジョブデータを指定されたパラメータを用いて暗号化する（ステップＳ０１３）。
アプリケーション８００は、ＮＩＣ  ＯＳ９００が暗号化したジョブをファイルシステム５０１（記憶部）に書き込む（書込）（ステップＳ０１４）。
ファイルシステム５０１にジョブ３１０を書き込むことにより、従来のようにプリンタサーバ１０１にジョブ３１０を書き込む必要がなくなる。これにより、プリンタサーバ１０１を不要なものとし、よりセキュリティの高いセキュアプリントシステムを実現している。また、プリンタサーバ１０１が不要なため、サーバを設置するコストや、セキュアプリントシステム導入におけるサーバ設置の設定などの手間が省ける。さらに、万が一、マスストレージ５００が印刷装置１０００から取り外された場合も、ジョブ３１０は暗号化して書き込まれているため、ジョブ３１０内のＰＤＬデータを読み取られる心配はなく、より高いセキュリティを実現している。
【００９０】
ＮＩＣ  ＯＳ９００が、ジョブ３１０を保存した処理をマスストレージ５００に伝達すると（ステップＳ０１５）、マスストレージ５００は暗号化されたジョブ３１０をファイルシステム５０１に書き込む（ステップＳ０１６）。
ＮＩＣ  ＯＳ９００が、暗号化されたジョブ３１０のファイルシステム５０１への書き込み処理をアプリケーション８００に伝達する（ステップＳ０１７）。アプリケーション８００に伝達すると、アプリケーション８００はファイルシステム５０１にジョブ３１０を書き込み終了した時点のタイムスタンプ（記憶時間情報）を取得し、ジョブ情報８２０のタイムスタンプ８２４に格納する（ステップＳ０１８）。
アプリケーション８００は、作成したジョブ情報８２０をジョブリスト８０５に格納する（ステップＳ０１９）。
【００９１】
次に、図８、図９、図１０、図１１、図１２、図１３、図１４、図１５を参照しながら、セキュアプリントシステム１のジョブ出力の処理について説明する。
【００９２】
図８では、ＮＩＣ７００は、ユーザ情報２１０を含む認証要求をＬＤＡＰサーバ２００に送信する。また、ＮＩＣ７００は、ＬＤＡＰサーバ２００と通信できるか否かを判断する。また、ＬＤＡＰサーバ２００と通信できない場合、ＮＩＣ７００は、印刷データをマスストレージ５００に記憶する設定を解除する。また、認証サーバと通信可能、かつ印刷データをマスストレージ５００に記憶する設定が解除されている場合、ＮＩＣ７００は、その設定を再設定する。
【００９３】
図８に示すように、カードリーダ４００は、ＩＣカード４１０（記憶媒体）を検知して、内部に記録されているカードＩＤ２１１を読み取り（ステップＳ１００）、ＮＩＣ  ＯＳ９００は読み取った情報をアプリケーション８００に伝達する（ステップＳ１０１）。尚、この読み取りは、ＩＣカード（記憶媒体）の特定の領域を読み取ることで、カードＩＤを取得するものとする。また、この特定の領域には、カードの識別情報或いは、ユーザの識別情報が記憶されていてもよい。
【００９４】
アプリケーション８００は、ＮＩＣ  ＯＳ９００から、カードＩＤを取得する（ユーザ識別情報受付）。そして、監視ポート９０７の設定を見て印刷ポート（例えばＲａｗであれば９１００番、ＬＰＲであれば５１５番など）が設定されているかどうか確認する（ステップＳ１０２）。
印刷ポートが監視対象外になっており、ＬＤＡＰサーバ２００と通信もできない場合、アプリケーション８００は図２０に示すメッセージからメッセージ１である「ＡＰヒョウジュンインサツ」を選択し、図１７に示すユーザ通知処理を行う（ステップＳ１０３）。
【００９５】
印刷ポートが監視ポート９０７に設定されている場合、あるいは、印刷ポートが監視対象外になっていても、ＬＤＡＰサーバ２００に通信を行い通信が確立できる場合は監視ポートに印刷ポートを追加する。アプリケーション８００は設定情報８０２をもとに、ＬＤＡＰサーバ２００に接続を試みる（ステップＳ１０４）。より詳細には、アプリケーション８００は、設定情報８０２を参照し、プライマリであるＬＤＡＰサーバ２００ａのプライマリポートに対して接続を行い、仮に接続できなかった場合は、セカンダリであるＬＤＡＰサーバ２００ｂのセカンダリポートに対して接続を行う。また、このときＬＤＡＰサーバ２００に通信可能である場合は、復帰時間情報８６０に、現在の時刻を設定する（時間情報記憶）。実行リスト８０４内のジョブ情報８２０のタイムスタンプと復帰時間情報８６０に設定したタイムスタンプとを比較することによって、実行リスト８０４内に、削除対象のジョブがあるかどうかを自動で判定することが可能となる。
【００９６】
ＮＩＣ  ＯＳ９００は、接続要求をもとにＬＤＡＰサーバ２００に接続を試行し（ステップＳ１０５）、アプリケーション８００は、接続試行が成功したか否か（通信可否判断）で分岐処理を行う（ステップＳ１０６）。
より詳細には、プライマリであるＬＤＡＰサーバ２００ａ、およびセカンダリであるＬＤＡＰサーバ２００ｂの両方に接続できなかった場合、接続失敗とみなす。
そして、アプリケーション８００は、監視ポート９０７に設定されている印刷ポートの設定を解除し（ステップＳ１０７）、図２０に示すメッセージからメッセージ２の「ＡＰサーバエラー」を選択し、ユーザ通知処理を行う（ステップＳ１０８）。
ＬＤＡＰサーバ２００に接続できなかった場合、監視ポート９０７の設定を解除するため、次回の印刷からはマスストレージ５００にジョブ３１０を保存せずに、印刷装置１０００から直接印刷することになる。従って、ＬＤＡＰサーバ２００と通信できない状態のときも印刷物を出力することが可能となる。
【００９７】
次に、図９に示すように、プライマリであるＬＤＡＰサーバ２００ａ、あるいはセカンダリであるＬＤＡＰサーバ２００ｂのいずれかに接続できた場合、アプリケーション８００はＬＤＡＰ認証を行う（ステップＳ１０９）。
設定情報８０２のユーザ８３７及びパスワード８３８をＬＤＡＰサーバ２００に送信し、認証要求を発行（認証要求送信）する。なお、この認証処理に関しては、ＬＤＡＰサーバ２００が認証をしなければ検索をさせないという強固なセキュリティが施されている場合の処理である。他の実施形態として、検索を行うにあたって認証が必要ない設定（非認証の設定）がなされていた場合は、認証に伴うＳ１０９からＳ１１４までの処理を省略してもよい。
【００９８】
ＮＩＣ  ＯＳ９００は、アプリケーション８００から伝達されたデータをＬＤＡＰサーバ２００に送信する（ステップＳ１１０）。
ＬＤＡＰサーバ２００は、ＬＤＡＰサーバ２００が送信したデータのユーザ名でＬＤＡＰディレクトリ２０１を検索する。ユーザが見つかった場合、送信されたデータと対応するユーザのユーザ情報２１０に含まれるパスワード２１３を照合し、認証結果を返答する（ステップＳ１１１）。
ＮＩＣ  ＯＳ９００が、ＬＤＡＰサーバ２００から受信したデータをアプリケーション８００に伝達すると（ステップＳ１１２）、アプリケーション８００はＬＤＡＰ認証結果を受け取る（ステップＳ１１３）。
【００９９】
アプリケーション８００は、前段Ｓ１１３での認証結果の可否により分岐処理を行い（ステップＳ１１４）、認証に失敗した場合、図２０に示すメッセージからメッセージ２の「ＡＰサーバエラー」を選択し、ユーザ通知処理を行う(ステップＳ１１５)。
認証に成功した場合、アプリケーション８００は設定情報８０２をもとにカードＩＤ２１１の検索をＬＤＡＰサーバ２００に対して行う（ステップＳ１１６）。
アプリケーション８００は、設定情報８０２のＳｕｆｆｉｘ８３１と識別コード８３２を用いて検索位置を指定する。
【０１００】
ＮＩＣ  ＯＳ９００は、アプリケーション８００から伝達されたデータをＬＤＡＰサーバ２００へ送信する（ステップＳ１１７）。
ＬＤＡＰサーバ２００は、アプリケーション８００から送信されたデータをもとにＬＤＡＰディレクトリ２０１を検索し、検索結果を返信する（ステップＳ１１８）。
指定されたＳｕｆｆｉｘ８３１及び識別コード８３２以下にあるデータの中から、指定されたカードＩＤ２１１を探し、見つかったユーザ情報２１０を送信する。Ｓｕｆｆｉｘ８３１や識別コード８３２は、ＬＤＡＰディレクトリ２０１中のユーザの位置を特定するために指定する情報であり、一般的にＬＤＡＰ検索の際にＳｅａｒｃｈＢａｓｅとして指定される値である。
【０１０１】
ＮＩＣ  ＯＳ９００が、ＬＤＡＰサーバ２００から受信したデータをアプリケーション８００に伝達すると（ステップＳ１１９）、アプリケーション８００はＬＤＡＰサーバ２００からの検索結果を取得する（ユーザ識別情報受付）（ステップＳ１２０）。
【０１０２】
次に、図１０に示すように、アプリケーション８００は、ＬＤＡＰサーバ２００からの検索結果を見てユーザ情報２１０が取得できたか、即ち、ユーザが存在したか否かにより分岐処理を行う（ステップＳ１２１）。
ユーザ情報２１０が取得できない場合、アプリケーション８００は図２０に示すメッセージからメッセージ３の「ＡＰユーザミトウロク」を選択し、ユーザ通知処理を行う（ステップＳ１２２）。
【０１０３】
ユーザ情報が取得できた場合、アプリケーション８００はユーザ情報２１０の利用制限をもとに、ユーザに利用権があるか否かで分岐処理を行う（ステップＳ１２３）。
利用制限には様々な設定方法が考えられるが、例えば、４桁の数字で利用権限を表現し、１桁目がプリンタの利用権限、２桁目がコピーの利用権限、３桁目がスキャンの利用権限、４桁目がファクスの利用権限とする。そして、その値が“０”は「使用不可能」、“１”は「モノクロのみ使用可能」、“２”は「カラーモノクロ双方利用可能」とする。そして、ユーザ情報２１０内の利用権限を参照し、プリンタの項目が“０”ならば「権限なし」、“１”あるいは“２”ならば「権限あり」、とみなすという方法が考えられる。
利用権限がない場合、アプリケーション８００は図２０に示すメッセージからメッセージ４の「ＡＰユーザエラー」を選択し、ユーザ通知処理を行う（ステップＳ１２４）。
【０１０４】
図１１では、ＮＩＣ７００は、ＬＤＡＰサーバ２００と通信できる場合、マスストレージ５００からユーザ情報２１０に応じた印刷データを取得する。
【０１０５】
図１１に示すように、利用権限がある場合、アプリケーション８００は取得したユーザ情報２１０内のユーザ名をキーとして、ジョブリスト８０５の中からユーザ名が一致するジョブ情報８２０を抽出する（ステップＳ１２５）。
アプリケーション８００は、抽出したジョブ情報８２０をリストにして実行リスト８０４を作成する（ステップＳ１２６）。
【０１０６】
アプリケーション８００は、取得したユーザ情報２１０の中からサブユーザを取得する（ステップＳ１２７）。
直前にサブユーザ１を取得していれば、次のサブユーザ２を取得する。サブユーザに関連するＳ１２７からＳ１３０までの一連の処理は、一人のユーザで複数ユーザの印刷物を出力させるために行う処理である。例えば、従来はＩＣカード一枚につき１ユーザまでしか登録できなかったため、秘書が上司の印刷物を出力したい場合はＩＣカードを借りる必要があった。また、一人で２台のＰＣを使っているユーザは２枚のＩＣカードを携帯する必要があった。この一連のサブユーザに関連する処理を行うことにより、上記問題を解決し、１枚のＩＣカードで複数ユーザの印刷物を出力することが可能となる。
【０１０７】
アプリケーション８００は、取得したサブユーザをチェックし（ステップＳ１２８）、サブユーザ４までのすべてのサブユーザを取得した場合、あるいは、サブユーザが取得できなかった場合、登録されていなかった場合はＳ１３１へ進む。
サブユーザが取得できた場合、アプリケーション８００はサブユーザに一致するジョブ情報８２０をジョブリスト８０５の中から抽出し（ステップＳ１２９）、
抽出したジョブ情報８２０を実行リスト８０４に加える（ステップＳ１３０）。
【０１０８】
すべてのサブユーザを取得すると、アプリケーション８００は作成した実行リスト８０４をソートする（ステップＳ１３１）。
ジョブ情報８２０をタイムスタンプ８２４でソートし、続いてユーザ名８２１でソートし、ユーザ名８２１のまとまりで時系列に並び替えられる。このソートにより、複数ユーザの印刷物を出力したいときにユーザ毎にまとまった出力物が得られ、分別の手間が省ける。また、各ユーザの印刷物はタイムアウト順に並んでいるため、印刷実行したユーザの指示通りの順番になりユーザにわかりやすい出力順になる。また、ソートの仕方についてはこの方法に限られず、ユーザ名でソートし、続いてタイムスタンプでソートしてもよい。
【０１０９】
次に、図１２に示すように、アプリケーション８００は、実行リスト８０４内のジョブ情報８２０の数をチェックし（ステップＳ１３２）、０件の場合、図２０に示すメッセージからメッセージ５の「ＡＰジョブナシ」を選択し、ユーザ通知処理を行う（ステップＳ１３３）。
【０１１０】
次に、図１３に示す削除確認処理を行い（ステップＳ１３４）、実行リスト８０４内のジョブ情報８２０をすべてクリアする（ステップＳ１３８）。
【０１１１】
次に、図１３を参照しながら、セキュアプリントシステム１の削除確認処理について説明する。
【０１１２】
まず、アプリケーション８００は削除設定８４０を参照する（ステップＳ６０１）。ここで、削除設定８４０が「ＯＦＦ」であれば、ステップＳ６０２へ進む。削除設定８４０が、「ＯＮ」もしくは「ＡＵＴＯ」であれば、ステップＳ６０７に進む。ここで削除設定８４０を確認するのは、図１４に示す削除処理は通常の印刷に比べて時間がかかるため、設定されていなければ、通常の印刷処理を行うためである。
【０１１３】
ステップＳ６０１での判定において削除設定８４０が「ＯＦＦ」の場合、アプリケーション８００は実行リスト８０４内のジョブ情報８２０の数で、ループ処理を行う(ステップＳ６０２)。すべてのジョブ情報８２０を参照すると、ループ処理を終了する。このループ処理とは、実行リストにある全てのジョブ情報８２０に関して、ステップＳ６０３からステップＳ６０６を行う処理である。ステップＳ６０２では、実行リストにある全てのジョブ情報８２０について、当該処理を終えたかを判定し、当該処理を終えた場合、削除確認処理を終了する。
アプリケーション８００は、ジョブ投入可否を判定する（ステップＳ６０３）。通常、印刷機器はＲＡＭに制限があるため、一度に投入できる印刷ジョブを制限している。ジョブ投入可否を判定するのは、投入制限を越えているにも関わらずジョブを投入してしまい、印刷が失敗してしまうことを防ぐためである。
次に、アプリケーション８００はウエイト処理を行う（ステップＳ６０４）。このウエイト処理は、ジョブが投入制限を越えて投入できない場合にループ（ステップＳ６０３からステップＳ６０４）を回り続け、ＣＰＵを占有してしまう現象を防ぐ。
アプリケーション８００は、図１５に示す出力詳細処理を行い（ステップＳ６０５）、実行リスト８０４内から、ジョブ情報８２０を削除する（ステップＳ６０６）。
【０１１４】
アプリケーション８００は、ステップＳ６０１での判定において削除設定８４０が「ＯＮ」もしくは「ＡＵＴＯ」の場合、削除設定８４０が「ＡＵＴＯ」かどうかの判定を行う（ステップＳ６０７）。ここで、削除設定８４０の確認を行うのは、図１４に示す削除処理は通常の印刷に比べて時間がかかるため、設定により、削除印刷処理を毎回しなくてもいいように切り替えられるようにするためである。
【０１１５】
アプリケーション８００は、ステップＳ６０７にて、削除設定８４０がＯＮの場合、図１４に示す削除処理を行う（ステップＳ６１０）。
ここで、削除設定８４０が「ＡＵＴＯ」となっていれば、実行リスト８０４の確認を行う（ステップＳ６０８）。詳しくは、実行リスト８０４内にあるジョブ情報８２０内のタイムスタンプ８２４（印刷データを記憶する際の時間（時刻を含む））と、復帰時間情報８６０とを比較する。これは実行リスト８０４内のすべてのジョブ情報８２０に対して比較を行う。この結果、ひとつでも復帰時間情報８６０前のジョブ情報８２０があれば、削除対象のジョブがある、とみなし、逆にひとつもなければ、削除対象のジョブがない、とみなす（ステップＳ６０９）。これにより、ＬＤＡＰサーバ２００が復帰したときに、無駄なジョブが出力されることを避けることができる。
【０１１６】
削除対象のジョブとは、認証サーバがダウンする前に投入されたものであって、その後に認証サーバがダウンして印刷ができなかったものである。そして、削除対象のジョブであっても、実際に削除するかどうかは、ユーザの判断が必要となる。これは、認証サーバがダウンした後、ユーザが同一内容のジョブを印刷した場合には削除しても良いが、それ以外は削除すべきではなく、同一内容のジョブを印刷したかどうかはユーザしか分からないためである。例えば、図２３に示すユーザ名８２１、ファイル名８２２、ジョブ名８２３の全てが同一であっても、内容が一致しているかどうかはシステムでは判断できない。そこで、本発明の実施の形態では、投入されたジョブの内容（ファイル名８２２、ジョブ名８２３等）ではなく、ジョブの投入時刻（タイムスタンプ８２４等）に基づいて判断し、ユーザの判断が必要なジョブを削除対象のジョブとしてユーザに通知する。
【０１１７】
アプリケーション８００は、ステップＳ６０９にて、削除対象のジョブがなければ、ステップＳ６０２へ進み、通常の印刷を実施する。
【０１１８】
アプリケーション８００は、ステップＳ６０９にて、削除対象のジョブがあれば、図１４に示す削除処理を行う（ステップＳ６１０）。
【０１１９】
次に、図１４を参照しながら、セキュアプリントシステム１の削除処理について説明する。なお、削除処理は３パターン存在する。一つ目は、実行リスト８０４内のジョブすべてをユーザに削除確認を行う方法であり、以下で説明する。二つ目は、実行リスト８０４内にあるジョブのうち、ステップＳ６０９にて削除対象である、と判定されたもののみ、ユーザに削除確認を行う。残りのジョブは、ステップS６０２〜ステップＳ６０６のフローにより、自動的に印刷を行う。三つ目は、実行リスト８０４内にあるジョブのうち、ステップＳ６０９にて削除対象である、と判定されたものはユーザに削除確認をとらずに自動的に削除を行ってしまう。残りのジョブは、テップS６０２〜ステップＳ６０６のフローにより、自動的に印刷を行う。なお、ここでは一つ目のパターンのフローについて説明を行う。
【０１２０】
まず、アプリケーション８００は、ステップＳ１００で読み取ったカードＩＤ２１１を、実行カード情報８５０に記憶する（ユーザ識別情報記憶）（ステップＳ７０１）。これにより、削除の際に他のユーザがカードをかざすことで、不正に削除されることを防ぐことができる。続いて、アプリケーション８００は実行リスト８０４内のジョブ情報８２０の数で、ループ処理を行う(ステップＳ７０２)。すべてのジョブ情報８２０を参照すると、ループ処理を終了する。このループ処理とは、実行リストにある全てのジョブ情報８２０に関して、ステップＳ７０３からステップＳ７１５を行う処理である。ステップＳ７０２では、実行リストにある全てのジョブ情報８２０について、当該処理を終えたかを判定し、当該処理を終えた場合には、実行カード情報８５０に設定してあるカードＩＤ２１１を削除して（ステップＳ７１７）、削除処理を終了する。
【０１２１】
アプリケーション８００は、実行リスト８０４内からジョブ情報８２０を取得（印刷データ識別情報取得）し、その中のジョブ名８２３（印刷データ識別情報）を、パネルに表示するようＮＩＣ  ＯＳ９００に指令を出す（印刷データ識別情報送信）（ステップＳ７０３）。
【０１２２】
ＮＩＣ  ＯＳ９００は、アプリケーション８００より受け取った指令を、印刷装置１０００に転送する（印刷データ識別情報送信）（ステップＳ７０４）。
【０１２３】
印刷装置１０００は、ＮＩＣ  ＯＳ９００より受け付けた指令を元に、パネルにジョブ名８２３を表示（識別情報通知）する（ステップＳ７０５）。
【０１２４】
アプリケーション８００は、印刷装置１０００に設置されているパネルのボタン（印刷指示ボタン）が押下されたかを判断する（ステップＳ７０６）。パネルのボタンが押下されたかの判断は、ボタンが押下されたことを検知したＮＩＣ  ＯＳ９００からボタンが押下された通知を受けることでボタンが押下されたと判断する。押下されていれば、Ｓ７１２へ処理が移る。尚、割り込み処理として、即座にパネルの表示部をリセットするため、このタイミングでＳ７０８〜Ｓ７１０の処理を実行するように構成することも可能である。
また、押下されなければ、アプリケーション８００は、パネルの表示部にジョブ名８２３を表示している間（ステップＳ７０３〜ステップＳ７０５の間）にカードがかざされたかどうかを判定する（Ｓ７１１）。カードがかざされていれば、かざされたカードのカードＩＤ２１１と実行カード情報８５０とを比較する（一致するか否かを判定する）（ステップＳ７１６）。ここでカードＩＤ２１１の比較を行うのは、最初にカードをかざしたユーザ以外の人物がカードをかざすことで、不正に他人の印刷物を削除してしまうことを防ぐためである。
カードＩＤ２１１が、実行カード情報８５０と同じだった（一致した）場合は、後述するジョブの削除を行う（ステップＳ７１５）。カードＩＤ２１１が、実行カード情報８５０と異なる場合は、他人と判断し削除できない旨のエラー通知を行う（Ｓ７１８）。このエラー通知は、パネルの表示部に「削除できません」というメッセージを表示して通知する構成でも良いし、音声で通知する構成でも良い。
カードがかざされていない場合、パネルの表示部に一定秒数表示（所定時間通知）したかを確認し（ステップＳ７０７）、表示していなければ、再びパネルボタンの押下確認（ステップＳ７０６）を行う。パネルのボタンの押下を確認するのは利便性を向上させるためである。これを行わないと、ユーザが不必要だとわかっているジョブに対しても必ず数秒間待ってしまう。よって、明らかに不要なジョブに対しては、パネルボタンを押すことですぐに非表示にして、即座に印刷を行う。また、パネルの表示部にジョブ名８２３を一定秒数表示するのは、ユーザに表示されたジョブ名を認識し、カードをかざす時間を与えるためである。
【０１２５】
また、アプリケーション８００は、ステップＳ７０６で、カードがかざされたと判定した場合は、当該ジョブの削除は行わないものとして、ジョブ投入可否を判定する（ステップＳ７１２）。通常、印刷機器はＲＡＭに制限があるため、一度に投入できる印刷ジョブを制限している。ジョブ投入可否を判定するのは、投入制限を越えているにも関わらずジョブを投入してしまい、印刷が失敗してしまうことを防ぐためである。
次に、ジョブの投入制限（投入可能ジョブ数）を超えている場合には（ステップＳ７１２でＮＯ）、アプリケーション８００はウエイト処理、つまり、一時的な待機処理を行う（ステップＳ７１３）。このウエイト処理により、ジョブが投入制限を越えて投入できない場合に、ステップＳ７１２を待機することなく行うということを防ぐ。これにより、ＣＰＵを占有してしまう現象を防ぐ。
ステップＳ７１２でジョブの投入が可能と判断された場合、アプリケーション８００は、図１５に示す出力詳細処理を行い（ステップＳ７１４）、実行リスト８０４内から、ジョブ情報８２０を削除する（ステップＳ７１５）。また、ファイルシステム５０１が対応するジョブを削除する。
アプリケーション８００は、ステップＳ７１５でジョブの削除後、或いはパネルにジョブ名８２３を一定秒表示した後（Ｓ７０７で一定秒数表示したと判断した場合）に、パネルの表示部をリセットするようＮＩＣ  ＯＳ９００に依頼する（ステップＳ７０８）。
【０１２６】
ＮＩＣ  ＯＳ９００は、アプリケーション８００より受け取った指令を、印刷装置１０００に転送する（ステップＳ７０９）。
【０１２７】
印刷装置１０００は、ＮＩＣ  ＯＳ９００より受け付けた指令を元に、パネル表示をリセットする（ステップＳ７１０）。尚、パネルの表示部のリセットはＳ７１５の処理を実行した後に実行するように構成したが、これに限ることなく任意のタイミングでパネルリセット処理を行うようにすることも可能である。例えば、Ｓ７０７で一定秒数表示したと判定された場合に、Ｓ７１２の処理に移る前にＳ７０７の処理を実行する。或いは、Ｓ７０６でボタンが押下されたと判定された場合に、Ｓ７１２の処理に移る前にＳ７０７の処理を実行する。
【０１２８】
アプリケーション８００は、ステップＳ７０８の処理が終了すると、ステップＳ７０２に戻り、実行リスト８０４内の次のジョブ情報８２０の処理へ移る。
【０１２９】
次に、図１５を参照しながら、セキュアプリントシステム１のジョブ出力詳細処理について説明する。
図１５では、ＮＩＣ７００は、印刷データを印刷装置１０００に送信する。
【０１３０】
図１５に示すように、アプリケーション８００は、上位から渡されたジョブ情報８２０をもとに、ファイルシステム５０１内からジョブ３１０を取得する（ステップＳ２０１）。アプリケーション８００は、ジョブ情報８２０に格納されているファイル名８２２に一致するファイルシステム５０１内のファイルの取得をマスストレージ５００に要求する。
ＮＩＣ  ＯＳ９００が、アプリケーション８００からの指令をマスストレージ５００に伝達すると（ステップＳ２０２）、マスストレージ５００はファイルシステム５０１から指定のファイルを読み込んで、アプリケーション８００に返し（ステップＳ２０３）、ＮＩＣ  ＯＳ９００がマスストレージ５００からの指令をアプリケーション８００に伝達する（ステップＳ２０４）。
【０１３１】
アプリケーション８００は、取得したジョブ３１０の復号化をＮＩＣ  ＯＳ９００に要求し、同時に復号化キーや復号化アルゴリズム等を指定する（ステップＳ２０５）。
ＮＩＣ  ＯＳ９００は、データの復号化処理を行い（ステップＳ２０６）、アプリケーション８００は復号化されたジョブ３１０の印刷指示を行う（ステップＳ２０７）。
ＮＩＣ  ＯＳ９００は、アプリケーション８００からの指令を受け取り、印刷装置１０００に印刷情報管理プロトコル通信を用いてジョブ３１０の印刷指示を送る（ステップＳ２０８）。
【０１３２】
印刷装置１０００は、ジョブ３１０を受け取って受信バッファに格納し、スプール処理を行う（ステップＳ２０９）。受信バッファへの格納が終了すると、印刷装置１０００は印刷終了を待たずに制御をＮＩＣ  ＯＳ９００へ戻す。
印刷装置１０００は、スプールされたジョブ３１０のデータの印刷情報管理ヘッダ３１１を解析する（ステップＳ２１０）。解析したデータは、図示しない内部ログデータなどに利用される。
印刷装置１０００は、ジョブ３１０内のＰＤＬデータを解析して描画オブジェクトの中間データを作成して、中間データをもとにビットマップイメージを作成し（ステップＳ２１１）、作成したビットマップイメージを既知の印刷技術により用紙等のメディアに印刷を行う（ステップＳ２１２）。
【０１３３】
ＮＩＣ  ＯＳ９００が、印刷装置１０００の指令をアプリケーション８００へ伝達すると（ステップＳ２１３）、アプリケーション８００は該当するジョブ３１０をファイルシステム５０１からの削除をマスストレージ５００に要求する（ステップＳ２１４）。
ＮＩＣ  ＯＳ９００が、アプリケーション８００の指令をマスストレージ５００へ伝達すると（ステップＳ２１５）、マスストレージ５００は指定されたジョブ３１０をファイルシステム５０１から削除する（ステップＳ２１６）。
ＮＩＣ  ＯＳ９００は、マスストレージ５００からの指令をアプリケーション８００へ伝達する（ステップＳ２１７）。
【０１３４】
次に、図１６を参照しながら、セキュアプリントシステム１のＬＤＡＰサーバ監視処理について説明する。
図１６では、ＮＩＣ７００は、一定間隔でＬＤＡＰサーバ２００と通信可能かどうかを確認する。また、ＮＩＣ７００は、ＬＤＡＰサーバ２００と通信可能、かつ印刷データをマスストレージ５００に記憶する設定が解除されている場合、その設定を再設定する。
【０１３５】
図１６に示すように、アプリケーション８００が、ＬＤＡＰサーバ監視処理をスレッドとしてＮＩＣ  ＯＳ９００に登録し、処理を開始すると（ステップＳ３０１）、ＮＩＣ  ＯＳ９００はアプリケーション８００が終了したかどうかをチェックする（ステップＳ３０２）。
【０１３６】
アプリケーション８００が終了していない場合、アプリケーション８００は設定情報８０２に設定されたプライマリであるＬＤＡＰサーバ２００ａ及びセカンダリであるＬＤＡＰサーバ２００ｂのポートへの接続をＮＩＣ  ＯＳ９００に要求し（ステップＳ３０３）、ＮＩＣ  ＯＳ９００は指定された２つのＬＤＡＰサーバ２００に接続を行う（ステップＳ３０４）。
アプリケーション８００は、プライマリであるＬＤＡＰサーバ２００ａまたはセカンダリであるＬＤＡＰサーバ２００ｂのいずれかに接続できたかどうか確認（通信可否判断）を行い（ステップＳ３０５）、接続できた場合、監視ポート９０７の設定で印刷ポートが設定されているか否かを確認する（ステップＳ３０６）。
監視ポート９０７に印刷ポートが設定されていない場合、アプリケーション８００は監視ポート９０７に印刷ポートを追加する（ステップＳ３０７）。
また、このときＬＤＡＰサーバ２００に通信可能である場合は、復帰時間情報８６０に、現在の時刻を設定する。実行リスト８０４内のジョブ情報８２０のタイムスタンプと復帰時間情報８６０に設定したタイムスタンプとを比較することによって、実行リスト８０４内に、削除対象のジョブがあるかどうかを自動で判定することが可能となる。
アプリケーション８００は、ウエイト処理を行い、ループによりＣＰＵを占有してしまう可能性を回避する（ステップＳ３０８）。
【０１３７】
次に、図１７を参照しながら、セキュアプリントシステム１のユーザ通知処理について説明する。
【０１３８】
図１７に示すように、アプリケーション８００は、上位から伝達されたメッセージ文字列を取得し（ステップＳ５０１）、ビープ音鳴動、及び指定のメッセージ表示をＮＩＣ  ＯＳ９００に要求する（ステップＳ５０２）。
ＮＩＣ  ＯＳ９００は、印刷装置１０００の種別を判定し、適切な方法を使ってビープ音鳴動を指示する（ステップＳ５０３）。例えば、機種によってＵＤＰ、印刷情報管理プロトコル、ＪＬを使用したりするため、その情報をＮＩＣ  ＯＳ９００が吸収し、印刷装置１０００の機種にあった方法でビープ音鳴動指示をする。パネル表示については、ＭＩＢを用いて表示指示を印刷装置１０００に送る。
印刷装置１０００は、指令を受け取り、ビープ音を鳴動させ（ステップＳ５０４）、パネルに指定されたメッセージを表示させる（ステップＳ５０５）。
【０１３９】
次に、図３３を参照しながら、本発明に係るセキュアプリントシステム１ａの実施例について説明する。
図３３は、セキュアプリントシステム１ａの実施例を示す図である。
【０１４０】
ユーザがクライアントＰＣ３００にログインし（ステップ１−１）、データの印刷指示を行う（ステップ１−２）。
プリンタドライバは、印刷装置１０００に対して、データからジョブを生成して送信する（ステップ２−１）。ここで、印刷装置１０００上でＮＩＣ７００がポートの監視を行っていなければ、ジョブはそのまま印刷装置１０００から出力される（ステップ２−２Ａ）。一方、ＮＩＣ７００がポートの監視を行っている場合、ジョブが印刷装置１０００に渡る前にＮＩＣ７００が先取りし、マスストレージ５００に格納する（ステップ２−２Ｂ）。
【０１４１】
印刷指示をしたユーザが、カードリーダ４００にＩＣカード４１０をかざす（ステップ３−１）。カードリーダ４００は、ＩＣカード４１０からカードＩＤ２１１を読み取って、印刷装置１０００に通知する（ステップ３−２）。
印刷装置１０００は、受け取ったカードＩＤ２１１に一致するユーザ名をＬＤＡＰサーバ２００に問い合わせる（ステップ４−１）。ＬＤＡＰサーバ２００は、ＬＤＡＰディレクトリ２０１内を検索し、検索したユーザ名を印刷装置１０００に送信する（ステップ４−２）。
印刷装置１０００は、マスストレージ５００内からユーザ名に一致するジョブを検索し（ステップ５−１）、マスストレージ５００は、該当するジョブを印刷装置１０００に渡す（ステップ５−２）。
印刷装置１０００は、受け取ったジョブのひとつをディスプレイに表示する。その間にユーザがカードリーダ４００に、ＩＣカード４１０をかざせば、該当ジョブを削除する（ステップ６−１）。ユーザがカードリーダ４００にＩＣカード４１０をかざさなければ、そのまま該当ジョブを出力する（ステップ６−２）。印刷装置１０００は、ステップ５−２で取得したジョブ数分だけ、ステップ６−１、ステップ６−２を繰り返す。
【０１４２】
次に、図３４を参照しながら、本発明に係るセキュアプリントシステム１ｂの実施例について説明する。
図３４は、セキュアプリントシステム１ｂの実施例を示す図である。
ユーザがクライアントＰＣ３００にログインし（ステップ１−１）、データの印刷指示を行う（ステップ１−２）。
プリンタドライバは、プリンタサーバ１０１に対して、データからジョブを生成して送信する（ステップ２−１）。プリンタサーバ１０１はジョブをファイルシステムに格納し（ステップ２−２）、ジョブから書誌データを抽出し、書誌情報に登録する（ステップ２−３）。
印刷指示をしたユーザが、カードリーダ４００にＩＣカード４１０をかざす（ステップ３−１）。カードリーダ４００は、ＩＣカード４１０からカードＩＤ２１１を読み取って、印刷装置１０００に通知する（ステップ３−２）。
印刷装置１０００は受け取ったカードＩＤ２１１に一致するユーザ名を、認証サーバ１０２に問い合わせる（ステップ４−１）。認証サーバ１０２は、認証テーブル内を検索し、検索したユーザ名を印刷装置１０００に送信する（ステップ４−２）。
印刷装置１０００は、ユーザ名に一致するジョブリストを取得するよう、プリンタサーバ１０１に依頼する（ステップ５−１）。プリンタサーバ１０１は、書誌データ内を検索し（ステップ５−２）、印刷装置１０００にリストを送信する（ステップ５−３）。
印刷装置１０００は、受け取ったジョブのひとつをディスプレイに表示する。その間にユーザがカードリーダ４００に、ＩＣカード４１０をかざせば、プリンタサーバ１０１に削除要求を発行する（ステップ６−２）。ユーザがカードリーダ４００にＩＣカード４１０をかざさなければ、ユーザのジョブを印刷するように、プリンタサーバ１０１に印刷指示を発行する（ステップ６−２）。プリンタサーバ１０１は、該当ユーザのジョブを書誌情報内から検索し（ステップ６−３）、書誌データをもとに実際のジョブデータをファイルシステムから取得する（ステップ６−４）。プリンタサーバ１０１は、印刷装置１０００に印刷命令を発行し（ステップ６−５）、印刷装置１０００は命令に従ってデータを出力する（ステップ６−６）。
印刷装置１０００は、ステップ５−３で取得したジョブ数分だけ、ステップ６−１、ステップ６−６を繰り返す。
【０１４３】
このように本発明の実施の形態によれば、操作部で印刷データを削除できないようなプリンタからでも、印刷データを削除する仕組みを提供することができる。また、認証サーバがダウンするなどの理由により認証できない場合にも、印刷業務を滞らせないための仕組みを提供することができる。
【０１４４】
本発明に係るセキュアプリントシステム１ａ、セキュアプリントシステム１ｂでは、操作部で印刷データを削除できないようなプリンタからでも、印刷データを削除することができる。また、本発明に係るセキュアプリントシステム１ａ、セキュアプリントシステム１ｂでは、認証サーバが何らかの理由で動作しない場合でも、印刷を行うことが可能であるため、ユーザの業務をとめることがない可用性の高いシステムとなる。
【０１４５】
本発明に係るセキュアプリントシステム１ａでは、プリンタサーバを使わないため、プリンタサーバに印刷データが蓄積されセキュリティホールになるという問題が解消され、より機密性の高いシステムとなる。また、プリンタサーバを使わないため、セキュアな印刷を行う際の環境構築コストを削減でき、より安価なシステムとなる。また、本発明に係るセキュアプリントシステム１ａでは、プリンタサーバを使わないことにより、セキュアな印刷を行う蓄積印刷の場合も、あるいは、認証サーバが停止したときの蓄積印刷をしない場合でも、クライアントは違いを意識せずにまったく同じ操作で印刷ジョブを投入できるため、ユーザの利便性がより高いシステムとなる。また、本発明に係るセキュアプリントシステム１ａでは、プリンタサーバを用いず、プリンタドライバの設定変更も不要なことから、導入設置が容易に行え、より手間のかからないシステムとなる。
【０１４６】
〔実施形態２〕
次に、本発明に係るセキュアプリントシステム１ａ（図３３）の実施形態２について説明する。
実施形態１では、ユーザがジョブを削除する場合、一旦ＩＣカードをかざし、その後パネルに表示されるジョブを見て、削除したいジョブであればＩＣカードをかざすことで１ジョブずつ削除を決定する構成について説明したが、本実施形態では、ＩＣカードが所定時間かざされた場合は、ユーザのジョブをすべて削除する構成について説明する。
以下、図３５〜３７を参照しながら、本実施形態について説明する。
尚、実施形態１の図８は、図３５に置き換え、実施形態１の図１２は、図３６に置き換え、実施形態１の図１８は、図３７に置き換えることで本実施形態を実現可能となる。
その他の図面に関しては、実施形態１と同等のものとし、説明は省略する。
【０１４７】
まず、図３７を参照しながら、本実施形態の利用するデータについて説明する。
図３７は、本実施形態における、設定情報８０２の詳細を示す図である。
設定情報８０２は、Ｓｕｆｆｉｘ８３１、識別コード８３２、プライマリサーバ８３３、プライマリポート８３４、セカンダリサーバ８３５、セカンダリポート８３６、ユーザ８３７、パスワード８３８、全削除待機時間８３９等を有する。全削除待機時間８３９はＩＣカードがかざされた時間と比較するための値を格納する。この時間は任意に設定できるものとし、例えば３秒などの時間（所定時間）を設定することができる。
尚、図３７で示す設定情報８０２は、図１８で示す設定情報８０２と同様のものであり、図１８で示す設定情報８０２に、全削除待機時間８３９を追加したものである。
【０１４８】
次に、図３５、図３６を参照しながら、本実施形態の詳細な処理について説明する。
図３５は、本実施形態における、印刷ジョブ出力処理手順の一例を示すフローチャート、図３６は、本実施形態における、印刷ジョブ出力処理手順の一例を示すフローチャートである。
以下では、ＮＩＣ７００が行う処理について、アプリケーション８００の機能とＮＩＣ  ＯＳ９００の機能とを区別して記載する。そのため、便宜上、処理の主体は、アプリケーション８００とＮＩＣ  ＯＳ９００とする。ただし、実際には、処理を行う主体は、ＮＩＣ７００である。ハードウエアであるＮＩＣ７００は、ソフトウエアであるアプリケーション８００またはＮＩＣ  ＯＳ９００と協働して、後述する処理を実行する。
【０１４９】
まず、図３５を参照しながら、本実施形態の印刷ジョブ出力の処理の詳細について説明する。
図３５では、アプリケーション８００は、ＩＣカード４１０（記憶媒体）がかざされていた時間を記憶する。また、ＮＩＣ７００は、ユーザ情報２１０を含む認証要求をＬＤＡＰサーバ２００に送信する。また、ＮＩＣ７００は、ＬＤＡＰサーバ２００と通信できるか否かを判断する。また、ＬＤＡＰサーバ２００と通信できない場合、ＮＩＣ７００は、印刷データをマスストレージ５００に記憶する設定を解除する。また、認証サーバと通信可能、かつ印刷データをマスストレージ５００に記憶する設定が解除されている場合、ＮＩＣ７００は、その設定を再設定する。
【０１５０】
図３５に示すように、カードリーダ４００は、ＩＣカード４１０（記憶媒体）を検知して、内部に記録されているカードＩＤ２１１を読み取り（ステップＳ１００）、ＮＩＣ  ＯＳ９００は読み取った情報をアプリケーション８００に伝達する（ステップＳ１０１）。尚、この読み取りは、ＩＣカード（記憶媒体）の特定の領域を読み取ることで、カードＩＤを取得するものとする。また、この特定の領域には、カードの識別情報或いは、ユーザの識別情報が記憶されていてもよい。
図３５のステップＳ１００でカード検知がなされた場合、カードリーダ４００はＮＩＣ  ＯＳ９００にＩＣカードのカードＩＤを含むカードがかざされたことを示す情報を伝達（送信）し、ＮＩＣ  ＯＳ９００はアプリケーション８００にＩＣカードのカードＩＤを含むカードがかざされたことを示す情報を通知（送信）する。
尚、カードＩＤはＬＤＡＰサーバ２００で一意にユーザ名と対応付いているため、カードＩＤをユーザを識別するためのユーザ識別情報と言い換えることも可能である。
【０１５１】
アプリケーション８００は、ＩＣカードのカードＩＤを含むカードがかざされたことを示す情報を受け付けると、現在の時刻を秒単位で取得して、「ＩＣカードかざしタイムスタンプ」として記憶する（ステップＳ１０１−１）。ここで現在の時刻を取得するのは、ＩＣカード４１０（記憶媒体）がかざされた時間を後で計算するためである。
【０１５２】
カードリーダ４００は、前段でかざされたＩＣカード４１０（記憶媒体）が離されたことを検知し、ＮＩＣ  ＯＳ９００にＩＣカード４１０のカードＩＤを含むカードが離されたことを示す情報を伝達（送信）する（ステップＳ１０１−２）。また、ＮＩＣ  ＯＳ９００は伝達（送信）されたカードＩＤを含むカードが離されたことを示す情報をアプリケーション８００に通知（送信）する（ステップＳ１０１−３）。
【０１５３】
アプリケーション８００は、カードＩＤを含むカードが離されたことを示す情報を受付け、ＩＣカード４１０（記憶媒体）がカードリーダ４００にかざされていた時間（「ＩＣカードかざし時間」）を取得してＲＡＭ４００２に記憶する（ステップＳ１０１−４）。
具体的には、カードＩＤを含むカードが離されたことを示す情報を受付けた現在の時刻を秒単位で取得して、「ＩＣカードはずしタイムスタンプ」として記憶する。そして、ステップＳ１０１−１で記憶した「ＩＣカードかざしタイムスタンプ」との差を計算してＲＡＭ４００２に記憶する（ＩＣカードがかざされていた時間を決定）。この計算結果をＩＣカード４１０がかざされていた時間とする。
尚、ここではかざした時間、はずされた時間、かざしていた時間を秒数として計算しているが、厳密にチェックしたい場合は、ミリ秒単位で計算してもよい。
また、ＩＣカードがかざされてから、ＩＣカードがはずされた間の時間の算出方法は、タイムスタンプを用いず、ＩＣカードがかざされたことを示す情報を受け付けた場合にタイマーを開始し、次にＩＣカードがはずされたことを示す情報を受け付けた時の時間を取得するように構成することも可能である。
ステップＳ１０２〜Ｓ１０８の処理については、実施形態１と同様のため説明を割愛する。
また、本実施形態においても、ＩＣカードをカードリーダにかざすことによる認証を用いた構成としたが、実施形態１と同様に指紋或いは手や指の静脈の情報（生体情報）を用いた認証を用いた構成であってもよい。この場合、カードリーダ４００を指や手などの読取対象物を読み取るリーダ（読取部）に置き換えることで実現可能である。
さらに、かざされていた時間は、ＩＣカード（読取対象物）がカードリーダ（読取部）にかざされていた時間以外に、指や手（読取対象物）がリーダ（読取部）におかれていた時間をかざされていた時間とし、この時間に応じて全印刷ジョブを削除するか、１つずつ印刷ジョブを削除するかを切り替えることも可能である。
【０１５４】
次に、図３６を参照しながら、本実施形態の図１１に続く印刷ジョブ出力の処理について説明する。
図３６では、アプリケーション８００は、実行リスト８０４のジョブ数をチェックする。また、アプリケーション８００はＩＣカード４１０（記憶媒体）がかざされた時間によって、処理を分岐する。
【０１５５】
図３６に示すように、アプリケーション８００は、実行リスト８０４内のジョブ情報８２０の数をチェックし（ステップＳ１３２）、実行リスト８０４内のジョブ情報８２０の数が０件の場合、図２０に示すメッセージからメッセージ５の「ＡＰジョブナシ」を選択し、ユーザ通知処理を行う（ステップＳ１３３）。
実行リスト８０４内のジョブ情報８２０の数が０件でない（１件以上である）場合、ステップＳ１４０へ処理を移す。
アプリケーション８００は、ＲＡＭ４００２から、ステップＳ１０１−４で記憶したＩＣカード４１０（記憶媒体）がかざされていた時間を取得し、かざされていた時間が一定時間以上か否かを判定する（ＩＣカードがかざされていた時間が所定時間であるか否かを判定する）（ステップＳ１４０）。
具体的には、ステップＳ１０１−４で計算した「ＩＣカードかざし時間」と、設定情報８０２に設定された全削除待機時間８３９とを比較する。比較の結果、「ＩＣカードかざし時間」の方が長ければ、一定時間以上かざされたと判断する（ステップＳ１４０でＹＥＳ）。また、比較の結果、全削除待機時間８３９の方が長ければ、一定時間以上かざされていないと判断する。
尚、判定基準となる全削除待機時間８３９の設定を変更できるので、通常印刷を行う場合でもＩＣカード４１０をかざす時間が長いユーザがいる環境や、全削除を早く行いたいユーザがいる環境など、ユーザの環境に応じて柔軟に対応することができる。
【０１５６】
アプリケーション８００は、実行リスト８０４を参照して、カードＩＤに対応するユーザのジョブをマスストレージ（記憶部）からすべて削除する（ステップＳ１４１）。
具体的には、実行リスト８０４からジョブ情報８２０を取り出す。次にジョブ情報８２０に保持されているファイル名８２２を取得する。次にファイル名８２２に一致するジョブ３１０を、ファイルシステム５０１内を検索して削除する。
以上の処理を、実行リスト８０４に格納されたジョブ数繰り返す。
【０１５７】
尚、ステップＳ１３４、ステップＳ１３８については実施形態１と同様のため詳細な説明を割愛するが、ステップＳ１４０で、ＲＡＭ４００２から、ステップＳ１０１−４で記憶したＩＣカード４１０（記憶媒体）がかざされていた時間を取得し、かざされていた時間が一定時間以上でないと判定された場合に（ステップＳ１４０でＮＯ）、ステップＳ１３４へ処理を移し、パネルにジョブ名８２３を表示（識別情報通知）させてＩＣカードがかざされるたびにジョブ名に対応するジョブをマスストレージ（記憶部）から削除する。
【０１５８】
以上の処理（ステップＳ１４０、ステップＳ１４１）により、ＩＣカードを通常より長くかざす、という簡単な動作で、ユーザが簡単に全ジョブ削除することが可能になる。よって、ユーザが誤って大量にジョブを投入してしまったり、印刷の必要がなくなったジョブが大量に残っていたりした場合も、実施形態１のように、ひとつずつ削除する必要がなくなり、より使いやすい仕組みとなる。
また、ＩＣカードをかざした時間が短ければ、実施形態１と同様の処理を行うことができるため、実施形態１と本実施形態（実施形態２）を切り替えることができる。よってユーザは目的に応じて、全ジョブを削除するか、ジョブ毎に印刷／削除をするかの方法を決定し、ＩＣカードをかざす動作（時間）に応じて、印刷装置上で削除方法を切り替えることが可能となる。
尚、本実施形態では図３３の構成で説明を行ったが、図３４のプリントサーバ１０１を備えるシステム（セキュアプリントシステム１ｂ）においても実現可能である。
【０１５９】
このように本発明の実施の形態によれば、カードをかざすことでジョブを削除する仕組みを提供することができる。また、カードを長くかざすことで、ユーザの全ジョブを削除する仕組みを提供することができる。
【０１６０】
以上、添付図面を参照しながら本発明に係るセキュアプリントシステムおよびネットワークインタフェース装置等の好適な実施形態について説明したが、前述した実施の形態に限定されない。当業者であれば、特許請求の範囲に記載された技術的思想の範疇内において各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【符号の説明】
【０１６１】
１０１………プリンタサーバ
１０２………認証サーバ
１５０………ＬＡＮ
１６０………ＵＳＢケーブル
２００………ＬＤＡＰサーバ
３００………クライアントＰＣ
４００………カードリーダ
５００………マスストレージ
６００………ＵＳＢハブ
７００………ＮＩＣ
１０００………印刷装置
【図１】
2010015537.tif 000003
【図２】
2010015537.tif 000004
【図３】
2010015537.tif 000005
【図４】
2010015537.tif 000006
【図５】
2010015537.tif 000007
【図６】
2010015537.tif 000008
【図７】
2010015537.tif 000009
【図８】
2010015537.tif 000010
【図９】
2010015537.tif 000011
【図１０】
2010015537.tif 000012
【図１１】
2010015537.tif 000013
【図１２】
2010015537.tif 000014
【図１３】
2010015537.tif 000015
【図１４】
2010015537.tif 000016
【図１５】
2010015537.tif 000017
【図１６】
2010015537.tif 000018
【図１７】
2010015537.tif 000019
【図１８】
2010015537.tif 000020
【図１９】
2010015537.tif 000021
【図２０】
2010015537.tif 000022
【図２１】
2010015537.tif 000023
【図２２】
2010015537.tif 000024
【図２３】
2010015537.tif 000025
【図２４】
2010015537.tif 000026
【図２５】
2010015537.tif 000027
【図２６】
2010015537.tif 000028
【図２７】
2010015537.tif 000029
【図２８】
2010015537.tif 000030
【図２９】
2010015537.tif 000031
【図３０】
2010015537.tif 000032
【図３１】
2010015537.tif 000033
【図３２】
2010015537.tif 000034
【図３３】
2010015537.tif 000035
【図３４】
2010015537.tif 000036
【図３５】
2010015537.tif 000037
【図３６】
2010015537.tif 000038
【図３７】
2010015537.tif 000039