(57)【要約】【課題】認証印刷における認証を高速化する。【解決手段】利用者の指示に応じて印刷ジョブを作成する手段と、作成した印刷ジョブを保留する手段と、認証デバイスより取得した情報に基づき、認証情報を作成する手段と、作成された認証情報を受け取り、当該認証情報に基づきユーザ認証を行う認証手段と、認証された際に、保留されていた印刷ジョブを取得し、印刷を実行する手段と、を備える認証印刷システムにおいて、認証手段は、印刷ジョブが保留される際、当該印刷ジョブの所有者の認証情報をデータベースから取得し、認証利用可能情報としてキャッシュに格納しておき、認証時に、認証情報がキャッシュに格納されているか否かに基づいて、ユーザ認証を行う。【選択図】図２
2008242851.tif 000002
【特許請求の範囲】
【請求項１】
利用者の指示に応じて印刷ジョブを作成するジョブ作成手段と、
前記ジョブ作成手段において作成した印刷ジョブを保留するジョブ保留手段と、
認証デバイスより取得した情報に基づき、認証情報を作成する認証情報取得手段と、
前記認証情報取得手段で作成された認証情報を受け取り、当該認証情報に基づきユーザ認証を行う認証手段と、
前記認証手段において認証された際に、認証された利用者の印刷ジョブを前記ジョブ保留手段から取得し、印刷を実行する印刷手段と、
を備える認証印刷システムにおいて、
前記認証手段は、
前記ジョブ保留手段にて印刷ジョブが保留される際、当該印刷ジョブの所有者の認証情報をデータベースから取得し、認証利用可能情報としてキャッシュに格納する処理手段と、
前記認証情報取得手段で作成された認証情報が、前記キャッシュに格納されているか否かに基づいて、前記ユーザ認証を行う処理手段と、
を備えることを特徴とする認証印刷システム。
【請求項２】
利用者の指示に応じて印刷ジョブを作成するジョブ作成手段と、
を備えるユーザ端末と、
前記ジョブ作成手段で作成された印刷ジョブを受け取り、当該印刷ジョブを保留するジョブ保留手段と、
後記認証情報取得手段で作成された認証情報を受け取り、当該認証情報に基づきユーザ認証を行う認証手段と、
を備えるプリントサーバと、
認証デバイスより取得した情報に基づき、認証情報を作成する認証情報取得手段と、
前記認証手段において認証された際に、認証された利用者の印刷ジョブを前記ジョブ保留手段から取得し、印刷を実行する印刷手段と、
を備えるプリンタと、
がネットワークを介して接続されて構成される認証印刷システムであり、
前記認証手段は、
前記ジョブ保留手段にて印刷ジョブが保留される際、当該印刷ジョブの所有者の認証情報をデータベースから取得し、認証利用可能情報としてキャッシュに格納する処理手段と、
前記認証情報取得手段で作成された認証情報が、前記キャッシュに格納されているか否かに基づいて、前記ユーザ認証を行う処理手段と、
を備えることを特徴とする認証印刷システム。
【請求項３】
前記認証利用可能情報に認証に関する静的な処理の結果を保持する、
ことを特徴とする請求項１又は２記載の認証印刷システム。
【請求項４】
前記認証利用可能情報を印刷ジョブの保持時間に合わせて削除可能に管理する、
ことを特徴とする請求項１乃至３のいずれかに記載の認証印刷システム。
【請求項５】
前記認証利用可能情報を古いものから削除可能に管理する、
ことを特徴とする請求項１乃至４のいずれかに記載の認証印刷システム。
【請求項６】
利用者の指示に応じて印刷ジョブを作成するジョブ作成ステップと、
前記ジョブ作成ステップにおいて作成した印刷ジョブをスプーラに保留するジョブ保留ステップと、
前記ジョブ保留手段にて印刷ジョブが保留される際、当該印刷ジョブの所有者の認証情報をデータベースから取得し、認証利用可能情報としてキャッシュに格納するステップと、
認証デバイスより取得した情報に基づき、認証情報を作成する認証情報取得ステップと、
前記認証情報取得ステップで作成された認証情報を受け取り、当該認証情報が、前記キャッシュに格納されているか否かに基づいて、ユーザ認証を行う認証ステップと、
前記認証ステップにおいて認証された際に、認証された利用者の印刷ジョブを前記スプーラから取得し、印刷を実行する印刷ステップと、
を備える認証印刷方法。
【請求項７】
請求項６に記載の認証印刷方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、認証により本人確認された後、目前印刷する認証印刷処理技術に関する。
【背景技術】
【０００２】
ＩＴシステム全体のセキュリティが問われている中、プリンタからの出力に関するセキュリティを考慮した印刷技術として、ユーザが印刷を指示したデータを一時保留しておき、後にユーザが本人確認を行うことを条件に印刷を実行することで、印刷を指示した本人のみが印刷出力物を手にするという認証印刷システムが存在する。
【０００３】
従来の一般的な認証印刷システムでは、ユーザがプリンタにて認証操作を行った後、認証処理を行っている。しかし、この認証処理において、生体情報の扱いや高度な暗号化など複雑な処理を必要とするため、認証印刷システムでは、必然的に印刷開始が遅れてしまい、ユーザにとって不安や不快感を与えている。
【０００４】
これに対し、特許文献１には、ユーザが認証不要と指定した部分については認証を行わないことにより、印刷までの時間を短縮する認証印刷システムが開示されている。
【特許文献１】特開２００２−１８７３１７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、上記特許文献１記載の認証印刷システムは、以下に示すように、認証の処理スピード及び安全性の両面で問題が指摘されている。すなわち、特許文献１記載の認証印刷システムでは、認証そのものの処理自体は何ら向上していないため、認証が必要なジョブを印刷する際に印刷開始までにかかる時間は改善していない。また、認証を行わないジョブを指定できるようにすると、利用者に抜け道を与えてしまうことに加え、利用者は認証印刷の処理の待ち時間を敬遠して認証印刷を使わなくなる傾向がある。
【０００６】
本発明は、かかる事情に鑑みてなされたものであり、認証印刷における認証を高速化することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明による認証印刷システムは、利用者の指示に応じて印刷ジョブを作成するジョブ作成手段と、ジョブ作成手段において作成した印刷ジョブを保留するジョブ保留手段と、認証デバイスより取得した情報に基づき、認証情報を作成する認証情報取得手段と、認証情報取得手段で作成された認証情報を受け取り、当該認証情報に基づきユーザ認証を行う認証手段と、認証手段において認証された際に、認証された利用者の印刷ジョブをジョブ保留手段から取得し、印刷を実行する印刷手段と、を備える認証印刷システムにおいて、認証手段は、ジョブ保留手段にて印刷ジョブが保留される際、当該印刷ジョブの所有者の認証情報をデータベースから取得し、認証利用可能情報としてキャッシュに格納する処理手段と、認証情報取得手段で作成された認証情報が、キャッシュに格納されているか否かに基づいて、ユーザ認証を行う処理手段と、を備える。かかる発明により、認証印刷において、認証に必要な情報をあらかじめキャッシュに準備しておくことで、認証を高速化し、認証印刷の利便性を向上できる。特に、指紋や顔画像といったデータは照合処理に時間がかかるため、検索対象を限定して母集団が小さくすることにより、照合に必要な処理時間が短くなり、高速な認証を実現できる。
【０００８】
また、本発明による他の認証印刷システムは、ユーザ端末とプリントサーバとプリンタとがネットワークを介して接続されて構成される認証印刷システムである。ユーザ端末は、利用者の指示に応じて印刷ジョブを作成するジョブ作成手段を備える。プリントサーバは、ジョブ作成手段で作成された印刷ジョブを受け取り、当該印刷ジョブを保留するジョブ保留手段と、認証情報取得手段で作成された認証情報を受け取り、当該認証情報に基づきユーザ認証を行う認証手段と、を備える。プリンタは、認証デバイスより取得した情報に基づき、認証情報を作成する認証情報取得手段と、認証手段において認証された際に、認証された利用者の印刷ジョブをジョブ保留手段から取得し、印刷を実行する印刷手段と、を備える。このとき、認証手段は、ジョブ保留手段にて印刷ジョブが保留される際、当該印刷ジョブの所有者の認証情報をデータベースから取得し、認証利用可能情報としてキャッシュに格納する処理手段と、認証情報取得手段で作成された認証情報が、キャッシュに格納されているか否かに基づいて、ユーザ認証を行う処理手段と、を備える。かかる発明により、認証印刷において、認証に必要な情報をあらかじめキャッシュに準備しておくことで、認証を高速化し、認証印刷の利便性を向上できる。
【０００９】
このとき、認証利用可能情報に認証に関する静的な処理の結果を保持することが好ましい。ＬＤＡＰデータのようなユーザ属性情報はほとんど変わらないので、このようなデータを毎回認証しているとオーバーヘッドが発生する。そこで、かかる発明によれば、ＬＤＡＰやＲＤＢＭＳのような静的な情報を認証に利用する場合に、変化しない情報を予め作成しておくことにより、高速な認証を実現できる。
【００１０】
また、認証利用可能情報を印刷ジョブの保持時間に合わせて削除可能に管理することが好ましい。さらに好適には、認証利用可能情報を古いものから削除可能に管理するとよい。かかる発明によれば、キャッシュを管理して、印刷ジョブの保持時間に合わせて認証利用可能情報を削除可能にすることで、サーバ資源の負担を軽減し、キャッシュの効率的利用を可能にしている。
【００１１】
また、本発明による認証印刷方法は、利用者の指示に応じて印刷ジョブを作成するジョブ作成ステップと、ジョブ作成ステップにおいて作成した印刷ジョブをスプーラに保留するジョブ保留ステップと、ジョブ保留手段にて印刷ジョブが保留される際、当該印刷ジョブの所有者の認証情報をデータベースから取得し、認証利用可能情報としてキャッシュに格納するステップと、認証デバイスより取得した情報に基づき、認証情報を作成する認証情報取得ステップと、認証情報取得ステップで作成された認証情報を受け取り、当該認証情報が、キャッシュに格納されているか否かに基づいて、ユーザ認証を行う認証ステップと、認証ステップにおいて認証された際に、認証された利用者の印刷ジョブをスプーラから取得し、印刷を実行する印刷ステップと、を備える。
【００１２】
本発明のプログラムは、本発明の認証処理方法の各処理ステップをコンピュータに実行させることを特徴とする。本発明のプログラムは、ＣＤ−ＲＯＭ等の光学ディスク、磁気ディスク、半導体メモリなどの各種の記録媒体を通じて、又は通信ネットワークなどを介してダウンロードすることにより、コンピュータにインストール又はロードすることができる。
【００１３】
なお、本明細書等において、手段とは、単に物理的手段を意味するものではなく、その手段が有する機能をソフトウェアによって実現する場合も含む。また、１つの手段が有する機能が２つ以上の物理的手段により実現されても、２つ以上の手段の機能が１つの物理的手段により実現されてもよい。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施の形態について図面を参照しつつ詳細に説明する。なお、同一の要素には同一の符号を付し、重複する説明を省略する。
【００１５】
図１は、本発明の一実施形態に係る認証印刷システム１００の全体構成を示すブロック図である。図１に示すように、本認証印刷システム１００は、プリントサーバ１０と、プリンタ２０と、ＬＤＡＰサーバ３０と、指紋サーバ４０と、ユーザ端末５０とを備え、これらがネットワークＮを介して相互に接続されることにより構成される。
【００１６】
プリントサーバ１０は、認証印刷を含む印刷処理を管理、制御するサーバコンピュータである。なお、認証印刷とは、ユーザ端末５０から印刷データ受け取ってもプリンタ２０で直ちに印刷することはせず、印刷ジョブを保留しておき、ユーザがプリンタ２０に指紋等の認証情報を入力し、認証成功すると、当該入力された認証情報に対応する印刷ジョブをスプーラから取得し、プリンタ２０で印刷実行する処理、及び、このような印刷処理に準ずる処理を意味する。
【００１７】
プリンタ２０は、画像形成装置として機能し、形成された画像を紙などの記録媒体に印刷する機能を備える。また、プリンタ２０には、認証情報を読み取るための認証デバイスが接続される。本実施形態では、認証情報として指紋を利用するため、指紋を読み取るための指紋リーダ２５がプリンタ２０に接続される。そして、この指紋リーダ２５で読み取った指紋データに基づいて認証印刷が行われる。
【００１８】
ＬＤＡＰサーバ３０は、ＬＤＡＰ認証サービスを提供するディレクトリサーバであり、認証印刷システム１００を利用するユーザの役職や環境等の情報を管理し、ユーザＩＤ等をキーにしてユーザの情報を検索する機能を有する。指紋サーバ４０は、認証印刷システム１００を利用するユーザの指紋データをユーザ名やユーザＩＤ等に対応付けて管理する機能を有する。
【００１９】
ユーザ端末５０は、ユーザが操作するコンピュータであり、パーソナルコンピュータ（ＰＣ）や携帯型端末を適用可能である。本実施形態では、ユーザが印刷を指示したときに、印刷ジョブを生成して、プリントサーバ１０に送信する。
【００２０】
ネットワークＮは、プリントサーバ１０と、プリンタ２０と、ＬＤＡＰサーバ３０と、指紋サーバ４０と、ユーザ端末５０との間で情報を送受信するための通信回線である。例えば、ＬＡＮ、インターネット、専用線、パケット通信網、電話回線、企業内ネットワーク、その他の通信回線、それらの組み合わせ等のいずれであってもよく、有線であるか無線であるかを問わない。
【００２１】
なお、プリントサーバ１０、ＬＤＡＰサーバ３０、指紋サーバ４０はそれぞれ、単一のコンピュータより構成されるものであっても、ネットワーク上に分散した複数のコンピュータより構成されるものであってもよい。また、単一のコンピュータが二以上のサーバの機能を備えてもよい。コンピュータのハードウェア構成としては、例えば、各部の動作や処理を制御するための制御手段としてのＣＰＵ、処理に必要なデータを格納するＲＯＭや作業領域として機能するＲＡＭ等を含むメモリ、各種の情報を格納するハードディスク等の記憶装置、入出力インタフェース、通信インタフェース及びこれらを結ぶバスを備える。そして、ＣＰＵが、メモリまたは外部記憶装置などに記憶された所定のプログラムを実行することにより、後述の各手段を備えるよう機能する。
【００２２】
図２は、本実施形態に係る認証印刷システム１００の機能構成を示すブロック図である。図２に示すように、プリントサーバ１０は、ジョブ保留手段１１と、ジョブ解析手段１２と、ジョブ保留情報通知手段１３と、ジョブ保留マクロ１４と、認証マクロ１５と、認証手段１６とを備える。プリンタ２０は、認証情報取得手段２１と、認証情報通知手段２２と、ジョブ取得手段２３と、印刷手段２４とを備える。ユーザ端末５０は、ジョブ作成手段５１を備える。
【００２３】
ジョブ保留手段１１は、ユーザ端末５０から受け取った印刷ジョブを保留するスプーラとしての機能を有する。ジョブ解析手段１２は、ジョブ保留手段１１にて印刷ジョブを保留する際に、印刷ジョブを解析してジョブ保留情報を生成する機能を有する。ジョブ保留情報通知手段１３は、ジョブ解析手段１２で生成されたジョブ保留情報を認証手段１６に通知する機能を有する。
【００２４】
ジョブ保留マクロ１４は、印刷ジョブを保留する際に実行され、印刷ジョブに付与されているユーザ情報を元に指紋検証データをキャッシュするジョブ保留処理を行うためのマクロである。認証マクロ１５は、ユーザがプリンタ２０にて認証操作を行った際に実施され、指紋リーダ２５で読み取られた指紋データの認証を行い、それにより判明したユーザ名等のユーザ情報を確認し、認証結果を返す認証処理を行うためのマクロである。ここで、マクロとは、特定の操作手順をプログラムとして記述して自動化する機能のことである。なお、本実施形態では、ジョブ保留処理及び認証処理を実施する際の一例として、マクロで実行する例を示しているが、ジョブ保留処理及び認証処理は、必ずしもマクロで実現される必要がないことは言うまでもない。
【００２５】
認証手段１６は、プリンタ２０から受け取った指紋データ等の認証情報に基づきユーザの認証を行う機能を有する。本実施形態において、認証手段１６は、印刷ジョブをジョブ保留手段１１に保留した際、ユーザの認証処理に先立ちジョブ保留マクロ１４を実行して、当該印刷ジョブの所有者の指紋データを指紋サーバ４０から取得してキャッシュに予め記憶しておく。また、必要に応じて、ＬＤＡＰサーバ３０から必要な情報を取得してキャッシュに蓄えておく。その後、ユーザが印刷を実行するためにプリンタ２０に認証情報を読み取らせたとき、認証マクロ１５を実行して、プリンタから受領した認証情報と、事前にキャッシュに準備した指紋データとに基づいて、認証処理を実行する。なお、本実施形態では、ジョブ保留マクロ１４及び認証マクロ１５には、図３に示す文法に従いマクロ文が記述される。そして、認証手段１６は、ジョブ保留マクロ１４及び認証マクロ１５に設定されているマクロ文をＬＬ（２）トップダウンパーサにより構文解析し、実行する。
【００２６】
認証情報取得手段２１は、認証デバイス（指紋リーダ２５）より取得した情報に基づき、認証情報を作成する機能を有する。認証情報通知手段２２は、認証情報取得手段２１で作成した認証情報を、プリントサーバ１０の認証手段１６に通知する機能を有する。ジョブ取得手段２３は、指紋等の認証情報の認証結果を認証情報通知手段２２を介して受け取り、認証結果に基づいて、プリントサーバ１０のジョブ保留手段１１から、該当するユーザが保留した印刷ジョブを取得する機能を有する。印刷手段２４は、ジョブ取得手段２３が取得した印刷ジョブを受け取り、紙等の記録媒体への印刷を実行する機能を有する。つまり、プリンタ２０では、認証手段１６から返された認証結果により、認証が成功したか否かを判断し、認証成功の場合は、該当ユーザの印刷ジョブをジョブ保留手段１１より取得し、印刷手段２４よりプリントアウトする。
【００２７】
また、ジョブ作成手段５１は、利用者の指示に応じて印刷ジョブのデータを作成し、当該印刷ジョブをプリントサーバ１０に送信する機能を有する。
【００２８】
次に、認証印刷システム１００にて用いられるデータや認証印刷システム１００内の各記憶手段に記憶されるデータの構成について説明するが、まずは、その前提として、本実施形態で利用するマクロ文の文法等を説明する。その後、各データの構成について説明する。
【００２９】
図３は、本実施形態で利用するマクロ文の文法を示す図である。図３において、「：＝」は、左辺の要素を右辺の内容にて定義することを示す。「［］」は、要素があるかもしれないことを示す。「｜」は、いずれかの要素が選択されることを示す。「＊」は、０回以上要素が繰り返されることを示す。また、「＄Ａ＝“Ｂ”；」と記述した場合は、変数Ａに値Ｂを代入することを示す。
【００３０】
なお、認証手段１６は、二つの数値が同一か否かを判断する関数（Equals関数）と、二つの文字列を連結する関数（AddString関数）と、ＬＤＡＰ検索を行い、該当する属性データをキャッシュする関数（Ldap_CacheAttribute関数）と、キャッシュされたＬＤＡＰデータを検索し取得する関数（Ldap_GetAttribute関数）と、指定されたユーザの指紋データをキャッシュする関数（Fingerprint_Prepare関数）と、キャッシュ指定された指紋データに合致するユーザを確認関数（Fingerprint_Authentication関数）を備え、マクロ文の記述に従って処理を実行する。
【００３１】
図４は、ジョブ保留マクロ１４の一例を示す図である。図４に例示したマクロは、印刷ジョブを保留する際に実行され、印刷ジョブに付与されているユーザ情報を元に指紋検証データをキャッシュすることを含意している。なお、同図において、変数＄ＵＳＥＲ＿ＩＤは、印刷ジョブに付与されているユーザ識別情報が含まれる。また、行１４１のingerprint_Prepare($USER_ID)マクロは変数に含まれる値を使用する、つまり、後述の例では、Fingerprint_Prepare("USER_X")として呼び出すことと同値である。
【００３２】
図５は、認証マクロ１５の一例を示す図である。図５に例示したマクロは、ユーザがプリンタ２０にて認証操作を行った際に実施され、プリンタ２０の指紋リーダ２５で読み取られた指紋データの認証を行い、その結果、判明したユーザ名を＄ＵＳＥＲ＿ＩＤ変数に含め、それとともにＬＤＡＰサーバ３０上のユーザの役職（Ｔｉｔｌｅ）属性が「Ｍａｎａｇｅｒ」であるかを確認し、その認証結果を＄ＡＵＴＨ＿ＲＥＳＵＬＴ変数に含めて返却することを含意する。なお、同図において、変数＄ＦＩＮＧＥＲ＿ＤＡＴＡには、ユーザの指紋を指紋リーダ２５で読み取った結果、認証情報取得手段２１で生成される指紋データが含まれる。
【００３３】
図６は、ユーザ端末５０のジョブ作成手段５１で作成され、プリントサーバ１０のジョブ保留手段１１に保留される印刷ジョブのデータ構造を示す概略図である。図６に示すように、印刷ジョブは、印刷ジョブのメタデータが記述されるジョブメタデータ部１１１と、印字される画像データが記述される印字データ部１１２とを含む。ジョブメタデータ部１１１には、当該印刷ジョブのユーザ情報、印刷先のプリンタ型番、用紙サイズ等の情報が含まれる。例えば、図６に示す例は、ユーザ情報が「ＵＳＥＲ＿Ｘ」、プリンタ型番が「ＸＸ−ＸＸＸ」、用紙サイズが「Ａ４」の印刷ジョブである。
【００３４】
図７は、保留される印刷ジョブをジョブ解析手段１２で解析し、ジョブ保留情報通知手段１３を通じて認証手段１６に渡されるジョブ保留情報のデータ構造を示す概略図である。図４に示すように、ジョブ保留情報は、印刷ジョブを解析して取得したユーザ情報、プリンタ型番、用紙サイズ等の属性情報１３１を含む。図４に示す例では、ジョブ保留情報として、変数＄ＵＳＥＲ＿ＩＤに「ＵＳＥＲ＿Ｘ」、変数＄ＰＲＩＮＴＥＲに「ＸＸ−ＸＸＸ」、変数＄ＰＡＰＥＲに「Ａ４」がセットされている。
【００３５】
図８は、認証手段１６において認証利用可能情報としてキャッシュされるデータの構造を示す図である。認証利用可能情報の各レコードは、フィールドとして、キャッシュ内で各レコードを識別するキャッシュキー１６１と、認証情報が格納されるキャッシュ値１６２と、レコードが作成又は使用された日時を示す作成／使用時刻１６３とを備えている。このキャッシュの詳細は後述する。
【００３６】
図９は、ＬＤＡＰサーバ３０におけるユーザのデータのエントリの一例を示す図である。本実施形態では、図９に示すように、ユーザ名（ＣＮ）３０１と役職（Ｔｉｔｌｅ）３０２を対応付けて記憶している。これにより、本実施形態におけるＬＤＡＰサーバ３０は、プリントサーバ１０からユーザ名を受信すると、当該ユーザ名に対応する役職をプリントサーバ１０に返す。なお、例えば、より厳密には特定ＯＵ（OrganizationUnit）などツリーの下に図９記載のデータを含むInetOrgPersonスキーマなどのエントリがあるものと想定してよい。
【００３７】
図１０は、指紋サーバ４０で管理される指紋認証用のデータベースの一例を示す図である。図１０に示すように、指紋認証用データベースは、ユーザ名４０１と指紋データ４０２とが対応付けて記憶されている。これにより、本実施形態における指紋サーバ４０は、プリントサーバ１０からユーザ名を受信すると、当該ユーザ名に対応する指紋データをプリントサーバ１０に返す。なお、この指紋データは、ユーザ認証を行う際の照合データとして利用される。
【００３８】
図１１は、認証情報取得手段２１で生成される認証情報の一例を示す図である。本実施形態では、指紋リーダ２５で読み取った指紋の画像情報に基づいて、認証情報取得手段２１で特徴点抽出等の処理を行った結果生成される指紋データを含む認証情報が生成され、認証手段１６に通知される。図１１に示す例は、指紋データ「ＭＭＭｍｍｍ１１２２．．．」を変数＄ＦＩＮＧＥＲ＿ＤＡＴＡの値とする認証情報である。
【００３９】
図１２は、認証手段１６からプリンタ２０に返される認証結果の一例を示す図である。同図に示す例は、変数＄ＵＳＥＲ＿ＩＤが「ＵＳＥＲ＿Ｘ」、変数＄ＡＵＴＨ＿ＲＥＳＵＬＴが「ＴＲＵＥ」という認証結果であり、「ＵＳＥＲ＿Ｘ」の認証が成功したことを示している。認証情報通知手段２２は、認証手段１６から返された認証結果により、認証が成功したことを判断でき、ユーザＸの印刷ジョブをジョブ保留手段１１より取得し、印刷手段２４よりプリントアウトする。
【００４０】
次に、上記のように構成される認証印刷システム１００の動作の概要について説明する。なお、ここでは、ユーザＸが認証印刷を実行する場合を例に説明する。
【００４１】
図１３は、認証印刷システム１００において、認証印刷ジョブを保留するまでの流れを示すフローチャートである。まず、ユーザがユーザ端末５０で印刷実行を指示すると、ジョブ作成手段５１は図６に示すような印刷ジョブを作成し、プリントサーバ１０に送信する（Ｓ６１）。プリントサーバ１０は、ユーザ端末５０から印刷ジョブを受け取ると、受け取った印刷ジョブをジョブ保留手段１１に保留するとともに、印刷ジョブをジョブ解析手段１２に送る（Ｓ６２）。ジョブ解析手段１２は、印刷ジョブを解析し、ユーザ情報などを取得し（Ｓ６３）、図７に示すようなユーザ情報を含むジョブ保留情報を、ジョブ保留情報通知手段１３を通じて認証手段１６に送る（Ｓ６４）。そして、認証手段１６は、認証の準備として、ジョブ保留情報をもとにジョブ保留マクロ１４を実行し、印刷ジョブの所有者の指紋データのキャッシュを行う（Ｓ６５）。
【００４２】
ジョブ保留マクロ１４が実行されると、図４に示す例では、行１４１の関数Fingerprint_Prepareがユーザ名「ＵＳＥＲ＿Ｘ」で呼び出され、それにより、指紋サーバ４０の指紋データベース（図１０）からユーザ名「ＵＳＥＲ＿Ｘ」の指紋データ「ＭＭＭｍｍｍ１１２２．．．」を取得し、認証利用可能情報のキャッシュに図１４のようなレコード値が追加される。
【００４３】
図１４は、認証利用可能情報のキャッシュに追加される認証利用可能情報の一例を示す図である。図１４に示すように、追加される認証利用可能情報は、例えば、キャッシュキー１６１が「Ｆｉｎｇｅｒｐｒｉｎｔ：ＵＳＥＲ＿Ｘ」であり、キャッシュ値１６２が「ＭＭＭｍｍｍ１１２２．．．」であり、作成／使用時刻１６３が「２００６／１２／１  １５：００」である。
【００４４】
また、図４の行１４３の関数Ldap_CacheAttributeがLdap_CacheAttribute("CN=USER_X", "Title")という引数で呼び出され、その結果、ＬＤＡＰサーバ３０のデータエントリ（図９）からユーザ名「ＵＳＥＲ＿Ｘ」の役職「Ｍａｎａｇｅｒ」を取得し、認証利用可能情報のキャッシュが図１５のような値に追加する。
【００４５】
図１５は、認証利用可能情報のキャッシュに追加される認証利用可能情報の一例を示す図である。図１５に示すように、ＬＤＡＰサーバ３０から、ユーザの役職を取得した結果、認証利用可能情報のキャッシュには、キャッシュキー１６１が「ＬＤＡＰ：ＣＮ＝ＵＳＥＲ＿Ｘ：Ｔｉｔｌｅ」、キャッシュ値１６２が「ＭＭＭｍｍｍ１１２２．．．」、作成／使用時刻１６３が「２００６／１２／１  １５：００」のキャッシュが追加される。なお、図１５に示す認証利用可能情報を追加する代わりに、図１４に示す認証利用可能情報のキャッシュキー１６１を上書きしてもよい。また、指紋サーバ４０又はＬＤＡＰサーバ３０が応答せずデータをキャッシュ出来ないときには、定期的にリトライする。
【００４６】
こうして、認証印刷における準備処理が終了する。次に、その後の認証印刷時の認証処理について説明する。
【００４７】
図１６は、認証印刷システム１００において、認証印刷ジョブを保留後、実際に印刷するまでの流れを示すフローチャートである。まず、ユーザがプリンタ２０へ移動し、プリンタ２０に設置されている指紋リーダ２５にて指紋の読み取りを実施すると、指紋リーダ２５で読み取った画像情報に基づいて、認証情報取得手段２１が、ユーザの指紋データ「ＭＭＭｍｍｍ１１２２．．．」を生成する（Ｓ７１）。次に、生成した指紋データをもとに、認証情報通知手段２２が、図１１に示すような認証情報を生成し、プリントサーバ１０に通知する（Ｓ７２）。
【００４８】
プリントサーバ１０はプリンタ２０から認証情報を受け取ると、認証手段１６が認証マクロ１５に従った認証を行う（Ｓ７３）。図５に示す例では、認証マクロ１５は、取得した認証情報を用いて行１５１の関数Fingerprint_Authenticatin()を実施し、認証情報として与えられた指紋データに合致する指紋データが、認証手段１６にキャッシュされているか否かを検証する（Ｓ７４）。このとき、キャッシュ中に該当する指紋データがある場合、当該指紋データに対応付けてキャッシュに記憶されているユーザＩＤを取得する。さらに、図５に示す認証マクロ１５では、ユーザＩＤを引数として関数Ldap_GetAttribute()を呼び出し、ユーザの役職属性を取得する（行１５５）。本事例では、図１５に示す追加したキャッシュにヒットする。このように、キャッシュされたデータの中に、プリンタ２０から送られた認証情報中の指紋データと合致するものがある場合には、認証成功となる。そして、認証結果として認証情報通知手段２２にはユーザＩＤ「ＵＳＥＲ＿Ｘ」、認証結果「ＴＲＵＥ」という結果が返るため、認証情報通知手段２２側では認証が成功したことを判断できる。その後、認証したユーザに該当する印刷ジョブをジョブ保留手段１１から取得し（Ｓ７５）、取得した印刷ジョブに基づいて、印刷手段２４で印刷処理を実行する（Ｓ７６）。なお、キャッシュにヒットしたとき、図１７に示すように、作成／使用時刻１６３が、ヒットした使用時刻に更新される。
【００４９】
図１７は、更新された認証利用可能情報の一例を示す図である。図１７に示すように、例えば、認証利用可能方法の作成／使用時刻１６３が「２００６／１２／１  １５：００」から「２００６／１２／１  １６：００」へというように、キャッシュにヒットした日時に変更される。
【００５０】
一方、プリンタ２０から送られてきた認証情報中の指紋データが、認証手段１６にキャッシュされていない場合は、指紋サーバ４０に情報取得に行き、指紋データの照合を行う。その結果、認証に成功すれば、認証したユーザに対応する認証印刷処理を行う（Ｓ７５，Ｓ７６）。これに対し、指紋サーバ４０での認証にも失敗したときは、認証に失敗したことを認証情報通知手段２２に返し（Ｓ７７）、認証失敗のため、印刷を中断して終了する（Ｓ７８）。
【００５１】
こうして、印刷時の認証では、ＬＤＡＰサーバ３０や指紋サーバ４０を利用することなく、検索範囲をキャッシュに限定した高速な検索結果が返却され、認証処理を早く行うことができる。
【００５２】
次に、印刷ジョブにあわせたキャッシュ処理について説明する。本実施形態では、キャッシュ量が所定のメモリ量を超えた場合やシステムに負担がかかった場合に、作成／使用時刻のもっとも古いレコードをキャッシュから削除してよいし、また、ジョブ保留手段１１にジョブを保留する期限を設け、それが過ぎたらキャッシュを削除してもよい。
【００５３】
図１８は、本実施形態における印刷ジョブにあわせたキャッシュ処理の流れを示すフローチャートである。まず、キャッシュに記憶されている各認証利用可能情報の作成／使用時刻１６３を確認する（Ｓ８１）。そして、予め定めた印刷ジョブの保持時間よりも古い認証利用可能情報が存在するか否かを確認し（Ｓ８２）、保持時間より古い認証利用可能情報が存在する場合には、その古い認証利用可能情報を削除候補にする（Ｓ８３）。その後、キャッシュの空きメモリ容量を確認し（Ｓ８４）、空きメモリ容量が所定値よりも少ない場合には、ステップＳ８３で削除候補にした認証利用可能情報をキャッシュから削除する（Ｓ８５）。一方、ステップＳ８２で、所定の保持時間よりも古い認証利用可能情報が存在しない場合や、ステップＳ８４で、キャッシュの空きメモリ容量が所定値よりも多い場合には、認証利用可能情報をキャッシュから削除しないで保持する。認証手段１６は、このようなキャッシュ処理を定期または不定期に実行することにより、キャッシュの空きメモリ容量に応じて、印刷されずに放置された印刷ジョブの認証利用可能情報を削除し、キャッシュの効率的な利用を図っている。
【００５４】
以上のとおり、本発明は、認証印刷において、認証に必要な情報をあらかじめキャッシュに準備しておくことで、認証を高速化し、認証印刷の利便性を向上させている。具体的には、スプーラ内の印刷ジョブに応じて動的にキャッシュ（認証利用可能情報）を作成し、当該キャッシュに問い合わせて認証結果を得ることにより、認証印刷における認証処理の判定を行うための検索対象数を削減し、認証の高速化を実現している。すなわち、指紋や顔画像といったデータは母集団が小さくなるほど、合致するユーザがいるか否かの判断が早くできるため、検索対象を限定することにより、特に生体情報を使った認証に好適な高速な認証を実現できる。
【００５５】
また、ＬＤＡＰデータのようなユーザ属性情報はほとんど変わらないので、このようなデータを毎回認証しているとオーバーヘッドが発生する。したがって、本発明は、特に、ＬＤＡＰやＲＤＢＭＳのような静的な情報を認証に利用する場合に、変化しない情報を予め作成しておくことにより、高速な認証を実現している。
【００５６】
さらに、キャッシュを管理して、印刷ジョブの保持時間に合わせて認証利用可能情報を削除可能にすることで、サーバ資源の負担を軽減し、キャッシュの効率的利用を可能にしている。つまり、印刷イメージデータ生成には処理時間を要するため、なるべく無駄に作らないことが望ましい。また、作成する印刷イメージデータの範囲を接続されているプリンタ用に絞ることで、処理を高速化している。また、キャッシュにＬＲＵ（Least Recently Used）を適用することにより、使用頻度の高い内容を認証利用可能情報で管理することが可能になり、サーバの負担を軽減することができる。
【００５７】
なお、本発明は、上記した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において、他の様々な形で実施することができる。このため、上記実施形態はあらゆる点で単なる例示にすぎず、限定的に解釈されるものではない。例えば、上述の各処理ステップは処理内容に矛盾を生じない範囲で任意に順番を変更して又は並列に実行することができる。
【００５８】
本実施形態では、プリンタ２０に接続される認証デバイスとして指紋リーダ２５を適用し、認証情報として指紋を用いる場合を例示したが、認証情報は、指紋に限定されず、瞳孔・静脈パターン等の生体情報のほか、パスワード入力、ＩＤカード使用等、様々な認証情報を利用可能である。また、認証デバイスは、利用する認証情報に応じて、例えば、瞳孔や静脈パターンを読み取るリーダのほか、パスワード入力用操作キー、ＩＣカードリーダ等、様々な認証デバイスを適用可能である。
【００５９】
また、本実施形態では、プリントサーバ１０とは別に、ＬＤＡＰサーバ３０及び指紋サーバ４０を備える構成を例示したが、プリントサーバ１０内でＬＤＡＰのデータエントリや指紋データベースを備え、印刷ジョブが保留されたときに、当該印刷ジョブの所有者の指紋データやＬＤＡＰデータをキャッシュに格納するようにしてもよい。
【図面の簡単な説明】
【００６０】
【図１】認証印刷システム１００の全体構成を示すブロック図である。
【図２】認証印刷システム１００の機能構成を示すブロック図である。
【図３】マクロ文の文法を示す図である。
【図４】ジョブ保留マクロ１４の一例を示す図である。
【図５】認証マクロ１５の一例を示す図である。
【図６】印刷ジョブのデータ構造を示す概略図である。
【図７】ジョブ保留情報のデータ構造を示す概略図である。
【図８】認証利用可能情報としてキャッシュされるデータの構造を示す図である。
【図９】ＬＤＡＰサーバ３０におけるユーザのデータのエントリの一例を示す図である。
【図１０】指紋サーバ４０で管理される指紋認証用のデータベースの一例を示す図である。
【図１１】認証情報取得手段２１で生成される認証情報の一例を示す図である。
【図１２】認証手段１６からプリンタ２０に返される認証結果の一例を示す図である。
【図１３】認証印刷ジョブを保留するまでの流れを示すフローチャートである。
【図１４】キャッシュに追加される認証利用可能情報の一例を示す図である。
【図１５】キャッシュに追加される認証利用可能情報の一例を示す図である。
【図１６】認証印刷ジョブを保留後、実際に印刷するまでの流れを示すフローチャートである。
【図１７】更新された認証利用可能情報の一例を示す図である。
【図１８】印刷ジョブにあわせたキャッシュ処理の流れを示すフローチャートである。
【符号の説明】
【００６１】
１０  プリントサーバ、１１  ジョブ保留手段、１２  ジョブ解析手段、１３  ジョブ保留情報通知手段、１４  ジョブ保留マクロ、１５  認証マクロ、１６  認証手段、２０  プリンタ、２１  認証情報取得手段、２２  認証情報通知手段、２３  ジョブ取得手段、２４  印刷手段、２５  指紋リーダ、３０  サーバ、４０  指紋サーバ、５０  ユーザ端末、５１  ジョブ作成手段、１００  認証印刷システム
【図１】
2008242851.tif 000003
【図２】
2008242851.tif 000004
【図３】
2008242851.tif 000005
【図４】
2008242851.tif 000006
【図５】
2008242851.tif 000007
【図６】
2008242851.tif 000008
【図７】
2008242851.tif 000009
【図８】
2008242851.tif 000010
【図９】
2008242851.tif 000011
【図１０】
2008242851.tif 000012
【図１１】
2008242851.tif 000013
【図１２】
2008242851.tif 000014
【図１３】
2008242851.tif 000015
【図１４】
2008242851.tif 000016
【図１５】
2008242851.tif 000017
【図１６】
2008242851.tif 000018
【図１７】
2008242851.tif 000019
【図１８】
2008242851.tif 000020