説明

情報処理装置、認証制御方法、及び認証制御プログラム

【課題】柔軟性のある認証機能を実現することのできる情報処理装置、認証制御方法、及び認証制御プログラムの提供を目的とする。
【解決手段】所定の情報に基づいてユーザの認証を実行する認証手段を有する情報処理装置であって、外部のデバイスよりユーザの認証に用いる第一の情報を取得する情報取得手段と、前記第一の情報に基づく情報を前記所定の情報として前記認証手段に入力することにより、前記認証手段に認証を実行させる認証制御手段とを有し、前記情報取得手段は、記録媒体において前記情報取得手段との関連付けが記録されているプログラムモジュールを用いて前記第一の情報を取得することにより上記課題を解決する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、認証制御方法、及び認証制御プログラムに関する。
【背景技術】
【0002】
近年、情報セキュリティに対する標準、規格等を取得することは、企業として当然である時代となってきている。企業で日常的に使用されているOA機器の使用形態につても、セキュリティの確保を望む声が多い。斯かる事情に鑑み、従来、画像形成装置(コピー、プリンタ、スキャナ、FAX等の機能を有するOA機器)においても、ユーザの認証機能が備わっている(ビルトインされている)ものが存在する。
【0003】
ユーザ認証の際に入力されるユーザ情報(代表的なものとして、ユーザ名・パスワード等)は、セキュリティの観点より、ユーザが直接手で入力するものよりも、他者に見えないような形で入力されるものが望ましい。そこで、画像形成装置におけるユーザ認証の際に、外部デバイス(代表的なものとして、ICカードが挙げられる。)を使用してユーザ情報を入力させるといったソリューションが展開されている(例えば、特許文献1〜3)。
【0004】
他方において、画像形成装置のユーザ環境においては、既に独自の認証サーバ等を使用した認証システムが構築されていることが多い。
【特許文献1】特開2006−215770号公報
【特許文献2】特開2007−122384号公報
【特許文献3】特開2006−92437号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、上記特許文献に記載された技術では、ユーザ認証の際に、ICカード及びその他の外部認証サーバ等と画像形成装置とが行う処理が固定化されている。また、使用可能な外部デバイスも固定的に制限されている。したがって、画像形成装置における認証機能(認証システム)と、ユーザ環境において既に存在する認証システムとがそれぞれ独立して存在し、システム構成が冗長になり、保守作業等を煩雑化させるという問題があった。
【0006】
本発明は、上記の点に鑑みてなされたものであって、柔軟性のある認証機能を実現することのできる情報処理装置、認証制御方法、及び認証制御プログラムの提供を目的とする。
【課題を解決するための手段】
【0007】
そこで上記課題を解決するため、本発明は、所定の情報に基づいてユーザの認証を実行する認証手段を有する情報処理装置であって、外部のデバイスよりユーザの認証に用いる第一の情報を取得する情報取得手段と、前記第一の情報に基づく情報を前記所定の情報として前記認証手段に入力することにより、前記認証手段に認証を実行させる認証制御手段とを有し、前記情報取得手段は、記録媒体において前記情報取得手段との関連付けが記録されているプログラムモジュールを用いて前記第一の情報を取得することを特徴とする。
【0008】
このような情報処理装置では、柔軟性のある認証機能を実現することができる。
【発明の効果】
【0009】
本発明によれば、柔軟性のある認証機能を実現することのできる情報処理装置、認証制御方法、及び認証制御プログラムを提供することができる。
【発明を実施するための最良の形態】
【0010】
以下、図面に基づいて本発明の実施の形態を説明する。本実施の形態では、情報処理装置の一例として画像形成装置を用いて説明する。図1は、本発明の実施の形態における画像形成装置のハードウェア構成例を示す図である。図1において、画像形成装置10は、プリンタ、コピー機、又は複合機等の一例であり、CPU101、メモリ102、記録媒体103、ネットワークI/F104、画像出力部105、画像処理部106、外部デバイスI/F107、表示部108、及び操作部109等を有する。
【0011】
画像形成装置10での機能を実現するプログラムは、HDD(Hard Disk Drive)等の不揮発性の記録媒体103に記録(インストール)される。記録媒体103は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。メモリ102は、プログラムの起動指示があった場合に、記録媒体103からプログラムを読み出して格納する。CPU101は、メモリ102に格納されたプログラムに従って画像形成装置10に係る機能を実現する。ネットワークI/F104は、ネットワークに接続するためのインタフェースとして用いられる。
【0012】
表示部108は、LCD(Liquid Crystal Display)等によって構成され、操作画面やメッセージ等を表示させる。操作部109は、ハード的なボタン(キー)によって構成され、ユーザによる操作入力を受け付ける。なお、表示部108及び操作部109は、オペレーションパネルとして一体的に構成されてもよい。
【0013】
画像処理部106は、画像データを出力(印刷)等する際に必要とされる各種の画像処理を実行する。画像出力部105は、画像データの出力(印刷)を行う。
【0014】
外部デバイスI/F107は、認証のためのユーザ情報の入力に用いられる外部デバイス30と接続するためのインタフェースであり、例えば、USBポート又はシリアルボート等によって構成される。外部デバイス30は、ユーザ情報を入力するためのデバイスであり、例えば、ユーザ情報が記録されたICカードを読み取るICカードリーダー、USBメモリ、又はキーボード等によって構成される。
【0015】
図2は、本発明の実施の形態の画像形成装置の機能構成例を説明するための図である。図2において、画像形成装置10は、本体機能部110、本体認証部120、フレームワーク130、及びアプリケーション140等を有する。これら各部は、プログラムがCPU101に実行させる処理によって実現されるソフトウェアである。
【0016】
本体認証部120は、ユーザリスト121及びビルトイン認証処理部122等を含み、画像形成装置にビルトインされたユーザの認証機能を実現する。ビルトインされたユーザ認証機能とは、画像形成装置10に予め組み込まれた認証機能をいい、画像形成装置10上で動作するアプリケーション140を操作しようとしたユーザの認証を行う機能をいう。ビルトイン認証処理部122は、ビルトインされたユーザ認証処理を制御する。例えば、ビルトイン認証処理部122は、表示部108に、認証を促す認証画面を表示させる。ユーザは、認証画面においてユーザ情報(ユーザ名及びパスワード)を入力する。ビルトイン認証処理部122は、ユーザがユーザ情報に基づいて認証された場合にのみ、アプリケーション140の使用を許可する。
【0017】
ユーザリスト121は、ユーザごとにユーザ情報及び利用権限情報が記録(登録)された情報である。すなわち、ビルトイン認証処理部122は、ユーザによって入力されたユーザ情報と、ユーザリスト121に登録されているユーザ情報とを照合することによりユーザの認証を行う。また、ビルトイン認証処理部122は、認証されたユーザについては、ユーザリスト121に登録されている利用権限情報において許可されている範囲内で、機能の利用を許可する。
【0018】
画像形成装置10には、以上のような認証機能が予め(デフォルトとして)ビルトインされている。
【0019】
フレームワーク130は、アプリケーション140の実行環境を提供する。本実施の形態における画像形成装置10は、その出荷後にサードベンダ等が開発したアプリケーションをアプリケーション140としてインストール可能とされている。フレームワーク130には、斯かるアプリケーションを動作させるための非図示のクラスライブラリ等を含む。
【0020】
図中において、フレームワーク130の機能としては、外部デバイス制御部131、外部デバイス情報取得部132、外部認証処理部133、及び本体認証制御部134等、便宜上、認証機能に関するもののみが示されている。以下、認証機能に関するフレームワークを「認証フレームワーク」という。認証フレームワークは、画像形成装置10において、認証機能の柔軟性及び拡張性を確保するための仕組みを提供する。「ビルトインされた認証機能」に対し、認証フレームワークによって実現される認証機能を、「拡張認証機能」という。
【0021】
外部デバイス制御部131は、USBインタフェースやシリアルインタフェース等を介して画像形成装置10に接続される外部デバイス30を制御し、外部デバイス30との通信を行う。外部デバイス情報取得部132は、外部デバイス制御部131を介して外部デバイス30よりにユーザ情報を取得する。外部認証処理部133は、ネットワークを介した認証サーバ等の外部の認証装置と通信を行い、例えば、認証サーバ等を用いた認証処理を制御する。なお、外部認証処理部133によって外部の認証装置を用いて行われる認証を「外部認証」という。本体認証制御部134は、画像形成装置10内において認証処理を実現する。なお、本体認証制御部134によって画像形成装置10内で行われる認証を「本体認証」という。
【0022】
図中におけるアプリケーション140は、予め画像形成装置10の標準機能として組み込まれているアプリケーション(例えば、印刷アプリケーション等)の他、フレームワーク130が提供する環境に対応させてサードベンダ等によって開発されたアプリケーションをも含む。したがって、図中では一つの矩形によって表現されているが、アプリーション140は、複数の実体が存在する。
【0023】
ところで、図2において、認証フレームワークを構成する各部は、その仕組み(枠組み)を提供するだけであり、実際の処理(ロジック)は、拡張認証機能を利用するアプリケーション140(以下、「アプリケーション140a」という。)の登録処理部145によって登録される各ソフトウェアモジュール(以下「ロジック実装モジュール」という。)を使用することによって実現される。
【0024】
図3は、認証フレームワークに対するロジック実装モジュールの登録を概念的に示す図である。図3において、アプリケーション140aは、外部デバイス制御実装モジュール141、外部デバイス情報取得実装モジュール142、外部認証処理実装モジュール143、及び本体認証制御実装モジュール144等を含む。
【0025】
外部デバイス制御実装モジュール141は、外部デバイス30のインタフェースレベルでの通信処理が実装されるジュールであり、外部デバイス制御部131に登録される。例えば、外部デバイス制御実装モジュール141は、ユーザが使用するスマートカードリーダーのドライバプログラム等が相当する。このように、外部デバイス制御実装モジュール141の実装によって、任意の外部デバイス30への対応が可能とされている。
【0026】
外部デバイス情報取得実装モジュール142は、外部デバイス30よりからの情報(ユーザ情報)の取得処理が実装されるモジュールであり、外部デバイス情報取得部132に登録される。例えば、ユーザのスマートカード内に記録されたユーザ情報を取得するために、スマートカードのフォーマットに従ったコマンドを送信して、レスポンスを受信する処理を実装したプログラムなどである。このように、外部デバイス情報取得実装モジュール142の実装によって、任意の外部デバイス30からのユーザ情報の取得が可能とされている。
【0027】
外部認証処理実装モジュール143は、外部の認証用のコンピュータ(認証サーバ等)を使用した、ユーザ情報の認証に関する処理が実装されるモジュールであり、外部認証処理部133に登録される。例えば、LDAP(Lightweight Directory Access Protocol)認証サーバにユーザのスマートカードより取得されたシリアル番号を送信して、該当ユーザのユーザ名を取得する処理が実装されたプログラム等が相当する。このように、外部認証処理実装モジュール143の実装によって、任意の認証プロトコルに対応することが可能とされている。
【0028】
本体認証制御実装モジュール144は、本体認証を実現するための処理が実装されるモジュールであり、本体認証制御部134に登録される。例えば、ビルトインされた認証機能を利用して認証を行う際の認証画面遷移や、認証情報の入力処理が実装されるモジュールであり、「スマートカードをセットしてください」というメッセージ画面を表示させたり、スマートカードの検知に応じて「認証中です」というメッセージ画面に遷移させたりし、その間に、スマートカードより取得されたユーザ情報をビルトイン認証処理部122に入力する、というような処理が実装されたプログラム等が相当する。したがって、ビルトインされたユーザ認証を行う際の認証画面を、本体認証制御実装モジュール144の実装によって自由に設定できることが可能である。また、ビルトインユーザ認証機能を利用せずに、本体認証制御実装モジュール144内に別途認証機能が実装されてもよい。例えば、ユーザリスト121と異なるユーザDBを記録媒体103に構築し、当該ユーザDBを用いて認証を行うような処理が実装されてもよい。
【0029】
なお、ビルトイン認証処理部122へのユーザ情報の入力後は、ビルトインユーザ認証部122がユーザ認証を実施して、認証が成功したときは画面ロックの解除し、認証が失敗したときは認証失敗画面を表示させる。画面ロックの解除により、ユーザは、アプリケーション140に対する操作が可能となる。
【0030】
認証フレームワークに対する各ロジック実装モジュールの登録情報は、例えば、記録媒体103に記録されて管理される。図4は、ロジック実装モジュールの登録情報の例を示す図である。図4では、ロジック実装モジュールごとに登録情報が関連付けられた例が示されている。登録情報としては、ロジック実装モジュールの実体が格納されたファイル名等、認証フレームワークがロジック実装モジュールを動的に利用する(呼び出す)ために必要な情報が含まれていればよい。認証フレームワークの各部は、処理が要求された際、斯かる登録情報を参照して、呼び出すべきロジック実装モジュールを判断する。各ロジック実装モジュールは、認証フレームワークが要求する(認証フレームワークにおいて規定された)インタフェース(ロジック実装モジュールを呼び出すためのプロトコル)に基づいて動的に呼び出し可能なように実装されていればよい。なお、アプリケーション140aごとに利用するロジック実装モジュールを変えたい場合は、図4に示されるような登録情報をアプリケーション140aと関連付けて管理すればよい。
【0031】
以上のようなロジック実装モジュールが認証フレームワークの各部分に登録されることで、ビルトインユーザ認証へのユーザ情報の入力手段に多様性を持たせることができる。 以下、本実施の形態における画像形成装置10の処理手順について説明する。まず、認証フレームワークを利用したユーザ情報の取得、外部認証、及び本体認証の処理手順について、図5、図6、図7を用いて説明する。
【0032】
図5は、認証フレームワークを用いてユーザ情報を取得する際の処理手順を説明するための図である。
【0033】
アプリケーション140aは、外部デバイス情報取得部132にユーザ情報の取得を要求する(S101)。外部デバイス情報取得部132は、外部デバイス制御部131と外部デバイス30における情報の記録フォーマットレベルでの通信を行い、外部デバイス制御部131にユーザ情報の取得を要求する(S102)。続いて、外部デバイス制御部131は、外部デバイス30のインタフェース仕様レベルでの通信を外部デバイス30と行い、外部デバイス30よりユーザ情報を取得する(S103)。その後、呼び出し順を逆にたどって、ユーザ情報がアプリケーション140aに返却される(S104、S105)。
【0034】
このように、外部デバイス制御部131及び外部デバイス情報取得部132は、アプリケーション140aから単体で利用可能である。すなわち、外部デバイス制御部131及び外部デバイス情報取得部132と他の機能部(外部認証処理部133、本体認証制御部134)との間に依存関係はなく、取得されたユーザ情報をアプリケーション140aにおいてどのように用いるかは任意である。
【0035】
続いて、図6は、認証フレームワークを用いて外部認証を行う際の処理手順を説明するための図である。
【0036】
アプリケーション140aは、ユーザ情報を伴って外部認証処理部133に認証要求を行う(S111)。続いて、外部認証処理部133は、ネットワークを介して外部の認証装置と通信を行うことにより、外部の認証装置にユーザ情報に基づく認証を実行させ、その認証結果を受信する(S112)。続いて、外部認証処理部133は、認証結果をアプリケーション140aに返却する(S113)。
【0037】
このように、外部認証処理部133は、アプリケーション140aから単体で利用可能である。
【0038】
続いて、図7は、認証フレームワークを用いて本体認証を行う際の処理手順を説明するための図である。
【0039】
アプリケーション140aは、ユーザ情報を伴って本体認証制御部134に認証要求を行う(S121)。続いて、本体認証制御部134が、ビルトイン認証処理部122にユーザ情報を入力すると、ビルトイン認証処理部122は、ユーザ情報とユーザリスト121とに基づいて認証を行う(S122)。この際の画面遷移は、本体認証制御部134からコントロールすることが可能である。認証が成功すると本体認証部120によって本体機能部110に対するロックが解除される(S123)。その結果、ユーザ(アプリケーション140a)は、ユーザリスト121に記録された利用権限に基づいて画像形成装置10の機能の利用が可能となる。
【0040】
このように、本体認証制御部134は、アプリケーション140aから単体で利用可能である。
【0041】
次に、更に具体的な場面(ソリューション)を想定した処理手順について説明する。図8は、認証フレームワークを用いた認証処理の第一の具体例における処理手順を説明するための図である。図8において、図5又は図7と同一ステップには同一ステップ番号を付している。
【0042】
図8では、外部デバイス30としてキーボード31が画像形成装置10にUSB接続されている。斯かる形態は、外部デバイス制御実装モジュール141及び外部デバイス情報取得実装モジュール142として、キーボード用のロジック実装モジュールを認証フレームワークに登録し、本体認証制御実装モジュール144としてキーボードから入力されたユーザ情報を本体認証部120に入力するロジック実装モジュールを認証フレームワークに登録することで実施可能となる。
【0043】
アプリケーション140aは、外部デバイス情報取得部132及び外部デバイス制御部131を通してキーボード31を介して入力されるユーザ名及びパスワード等のユーザ情報を取得する(S101〜S105)。
【0044】
続いて、アプリケーション140aが、取得されたユーザ情報を用いて本体認証制御部134に認証を要求すると、それに応じて本体認証部120において認証が行われる(S121〜S123)。
【0045】
図8のような形態は、キーボード等のハードウェアを具備していないようなロースペックの画像形成装置に対するソリューションとして有効である。また、外部デバイスと30して、USBメモリ等、ユーザ情報として十分な情報を取得可能なデバイスを用いてもよい。
【0046】
続いて、図9は、認証フレームワークを用いた認証処理の第二の具体例における処理手順を説明するための図である。図9において、図5、図6、又は図7と同一ステップには同一ステップ番号を付している。
【0047】
図9では、外部デバイス30としてスマートカードリーダー32が画像形成装置10にUSB接続されている。また、ネットワークを介して認証サーバ50が画像形成装置10と接続されている。斯かる形態は、外部デバイス制御実装モジュール141及び外部デバイス情報取得実装モジュール142として、スマートカード321からカードIDを取得するロジック実装モジュールを認証フレームワークに登録し、外部認証処理実装モジュール143として、認証サーバ50にカードIDを送信することにより認証を要求し、カードIDに対応するユーザ情報を認証サーバ50より取得する処理が実装されたロジック実装モジュールを認証フレームワークに登録し、本体認証制御実装モジュール144として、認証サーバ50における認証の結果取得されたユーザ情報を本体認証部120に入力するロジック実装モジュールを認証フレームワークに登録することで実施可能となる。
【0048】
図9において、アプリケーション140aは、外部デバイス情報取得部132及び外部デバイス制御部131を介してスマートカード321に格納されているカードIDを取得する(S101〜S105)。続いて、アプリケーション140aが、取得されたカードIDを認証サーバ50に送信すると、認証サーバ50においてカードIDに基づいて認証が行われ、カードIDに対応したユーザ情報(ユーザ名、パスワード等)が認証サーバ50より返信される(S111〜S113)。
【0049】
続いて、アプリケーション140aが、認証サーバ50より返信されたユーザ情報を用いて本体認証制御部134に認証を要求すると、それに応じて本体認証部120において認証が行われる(S121〜S123)。
【0050】
図9の例において、本体認証制御部134に登録する本体認証制御実装モジュール144の画面遷移中にパスワード入力画面を設けておき、パスワード入力画面が表示された際に、図8のようにキーボード等を使用してユーザにパスワードを入力させるようなシーケンスを組み込むことで、よりセキュリティの高いソリューションを実現するようにしてもよい。
【0051】
ところで、認証が成功するとユーザはアプリケーション140aにログインし、利用権限の範囲内でアプリケーション140aを利用することができるが、本実施の形態における画像形成装置10によれば、ログイン状態についても認証フレームワーク又はアプリケーション140aに適切に制御及び管理させることができる。ここで、認証フレームワークの実装はロジック実装モジュールによって任意に組み込めることができ、また、アプリケーション140aについても任意に組み込めることができるため、このこと(認証フレームワーク又はアプリケーション140aによってログイン状態の制御等が可能であること)は、ユーザの運用に対応させてログイン状態の制御方式又は管理方式を自由に(柔軟に)組み込めることを意味する。以下、認証フレームワークを用いたログイン状態の制御及び管理について説明する。なお、ログイン状態の制御としては、例えば、自動的なログアウト等が挙げられる。また、ログイン状態の管理とは、例えば、ログインの検知、ログアウトの検知、ログインしているユーザの把握等をいう。
【0052】
図10は、認証フレームワーク及びアプリケーションによるログイン状態の制御及び管理処理を説明するための第一のシーケンス図である。図10において、ステップS201〜S218は、図9における処理をより詳細に記載したものである。
【0053】
ユーザが、例えば、操作部109を介してアプリケーション140aの利用要求を入力すると(S201)、スマートカードリーダー32と外部デバイス制御部131との間で接続確認が行われ(S202)、接続が確立される(S203)。
【0054】
続いて、外部デバイス制御部131は、スマートカードリーダー32における状態を監視するための別スレッド(以下「状態監視スレッド」という。)を生成する(S204)。状態監視スレッドによる処理については、ステップS251以降において説明する。続いて、外部デバイス制御部131は、認証可能な状態であることを表示部108を介してユーザに通知する(S205)。例えば、スマートカード321の挿入を促すメッセージが表示部108に表示される。
【0055】
ユーザが、スマートカード321をスマートカードリーダー32に挿入すると(S206)、スマートカード321に格納されているカードIDが外部デバイス制御部131によって取得される(S207)。取得されたカードIDは、外部デバイス情報取得部132を介してアプリケーション140aに通知される(S208、S209)。アプリケーション140aは、カードIDを外部認証処理部133に送信することにより、外部認証処理部133に認証を要求する。外部認証処理部133は、ネットワークを介して認証サーバ50にカードIDを送信し、認証サーバ50における認証の結果に応じてユーザ情報を受信する。
【0056】
続いて、外部認証処理部133は、受信したユーザ情報をアプリケーション140aに送信する(S211)。アプリケーション140aは、ユーザ情報に基づいて本体認証制御部134に対し認証要求(ログイン要求)を行う(S212)。本体認証制御部134は、ログイン要求に応じ、ユーザのログインが発生したことをアクセスログとして記録媒体103に記録する(S213)。例えば、ログインに係るユーザ名、及び時刻等が記録される。
【0057】
続いて、本体認証制御部134は、本体認証部120にログイン要求を行う(ユーザ情報を入力する)ことにより本体認証部120に本体認証(ビルトインされた認証)を実行させ、その結果を受信する(S215)。その結果に基づいて、本体認証制御部134は、ログインの成功を検知することができる。したがって、本体認証制御部134において、ユーザのログインステータス(ログインしていることを示す情報)を管理することができる。ログインステータスは、例えば、本体認証制御部134によって記録媒体103に記録される。
【0058】
続いて、本体認証制御部134は、ログイン(認証)の結果をアプリケーション140aに通知する(S216)。当該通知によって、アプリケーション140aは、ログインが成功したことを検知することができる。
【0059】
続いて、アプリケーション140aは、表示部108にログイン結果を表示させることにより、ログイン結果をユーザに通知する(S217)。ログインに成功した場合、アプリケーション140aは、ユーザによる入力に応じて機能を提供する(S218)。
【0060】
一方、状態監視スレッドに係る外部デバイス制御部131は、起動されるとスマートカードリーダー32の接続状態を継続的に監視する(S251)。例えば、定期的にスマートカード321よりカードIDを取得する。したがって、例えば、スマートカードリーダー32よりスマートカード321が抜かれることによりスマートカード321との接続が切断されると(S252)、ユーザ情報を取得することができず、状態監視スレッドは、スマートカード321が抜かれたことを検知することができる。当該検知に応じ、状態監視スレッドは、ログインステータスの取得を本体認証制御部134に要求する(S253)。本体認証制御部134は、管理しているログインステータスを返却する(S254)。ここで、ログインステータスは、ユーザごとに複数返却される可能性がある。アプリケーション140aに対し、ネットワークを介してログインしているユーザも存在し得るからである。
【0061】
外部デバイス制御部131は、取得したログインステータスに基づいてログインしているユーザのログアウト(認証状態の解除による利用の制限)を本体認証制御部134に要求する(S255)。ここでログアウト対象とするユーザは、外部デバイス制御部131を介して(すなわち、スマートカード321によって)ログインしたユーザに限定してもよいし、現在ログインしている全ユーザを対象としてもよい。いずれにするかは、利用形態に応じて適宜定めればよい。
【0062】
ログアウト要求に応じ、本体認証制御部134は、ログアウトが発生したことをアクセスログとして記録媒体103に記録する(S256)。例えば、ログアウトに係るユーザ名、及び時刻等が記録される。
【0063】
続いて、本体認証制御部134は、本体認証部120にログアウト要求を行うことにより本体認証部120におけるログアウトを実行させ(S257)、その結果を受信する(S258)。その結果に基づいて、本体認証制御部134は、ログアウトの成功を検知することができる。したがって、本体認証制御部134において、ユーザのログインステータスの更新又は削除を実行することができる。
【0064】
続いて、本体認証制御部134は、ログアウトの結果を外部デバイス制御部131に通知する(S259)。ログアウトが成功すると、外部デバイス制御部131は、表示部108を介して、アプリケーション140aの使用ができなくなったことをユーザに通知する(S217)。
【0065】
図10の例は、外部デバイス30との接続が切断された場合に、自動的にログアウトを実行するといった利用形態の実施例である。このような自動的なログアウト機能を実装しておくことにより、ログアウトのし忘れによる不正利用等を防止することができる。また、強制的に特定のユーザをログアウトさせるといった利用形態を実現することもできる。
【0066】
なお、外部デバイス30との接続が切断された場合としては、USBメモリが抜かれた場合等も含まれる。
【0067】
また、外部認証を利用する場合、外部認証処理部133が、認証サーバ50に対して定期的に認証を要求し、認証に失敗した場合にログアウトを実行するようにしてもよい。
【0068】
また、課金管理を行っている場合、アプリケーション140aの使用に応じて課金が行われ、予め投入(又は登録)されている金額がゼロとなったときにログアウトを実行するようにしてもよい。
【0069】
また、ステップS212のログイン要求時において、アプリケーション140aがログアウト時間を本体認証制御部134に設定するようにしてもよい。この場合、本体認証制御部134は、ログインした時点からログアウト時間として設定された時間が経過したとき、又は、ユーザによる入力(操作)がログアウト時間として設定された期間行われないとき等にログアウトを実行する。
【0070】
また、ステップS212のログイン要求時において、アプリケーション140aがログインステータスのロックを本体認証制御部134に要求するようにしてもよい。この場合、本体認証制御部134は、ログインステータスのアンロックが要求されるまで、新たなユーザのログイン要求やログイン中のユーザのログアウト要求を無視する。したがって、管理者がログインし、占有して作業を行いたい場合(例えば、バックアップ作業等)、新たなユーザのログイン(リモートログインも含む)を防止することができる。また、操作部109に備えられたログアウト用のボタン(以下「ログアウトキー」という。)が誤って押下された場合に、強制的にログアウトされてしまうのを防止することができる。
【0071】
また、画像形成装置10が省エネモードを有する場合、ステップS212のログイン要求の発生に応じて、省エネ状態から自動的に復帰させるようにしてもよい。そうすることにより、操作部109における省エネ状態からの復帰ボタンを押下しなくても、アプリケーション140aへのログインが可能となる。
【0072】
また、ステップS212のログイン要求時において、アプリケーション140aがログインユーザの利用権限を本体認証制御部134に設定するようにしてもよい。この場合、本体認証制御部134は、設定された利用権限をユーザリスト121に登録されている利用権限に優先させて、利用制限を行う。そうすることにより、ユーザの利用形態に応じて柔軟性のある利用権限の管理を実現することができる。また、この場合、予めユーザリスト121に利用権限を登録しなくても、ユーザに対する利用制限を実現することができる。
【0073】
ところで、図10では、ソフト的にログアウトを実行する例について説明したが、続いて、ハード的にログアウトが要求された場合(すなわち、ログアウトキーが押下された場合)の処理手順について説明する。図11は、ハード的にログアウトが要求された際の処理手順を説明するためのシーケンス図である。
【0074】
アプリケーション140aに既にログインしている状態において、ユーザがログアウトキーを押下すると(S301)、操作部109は、本体認証部120にログアウト要求を通知する(S302)。本体認証部120は、ログアウト処理を行い、その結果の表示を表示部108に要求する(S303)。表示部108は、ログアウトされたことを示す画面を表示させる(S304)。
【0075】
一方、本体認証部120は、ログアウト処理の成功後、ユーザがログアウトされたことを本体認証制御部134に通知する(S304)。本体認証制御部134は、当該通知に応じ、ユーザのログアウトの発生をアクセスログとして記録する(S305)。続いて、本体認証制御部134は、アプリケーション140aに対してログアウトを通知する(S306)。これにより、アプリケーション140aは、ログアウトを検知することができる。したがって、利用形態において要求される処理として、アプリケーション140aにおけるログアウトの検知に応じて実行させたい処理がある場合、当該処理をこのタイミングで実行させることができる。
【0076】
上述したように、本実施の形態における画像形成装置10によれば、認証フレームワークによって、ユーザ情報の取得先や、認証を実行させるサーバ等を運用に応じて柔軟に選択することができる。したがって、既にユーザ環境において構築されている認証システムを利用して、画像形成装置10の利用制限を行うこともできる。
【0077】
また、ロジック実装モジュールやアプリケーションの実装によって、ユーザのログイン状態等の制御及び管理についてもユーザの運用に適した形態を柔軟に実現することができる。
【0078】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図面の簡単な説明】
【0079】
【図1】本発明の実施の形態における画像形成装置のハードウェア構成例を示す図である。
【図2】本発明の実施の形態の画像形成装置の機能構成例を説明するための図である。
【図3】認証フレームワークに対するロジック実装モジュールの登録を概念的に示す図である。
【図4】ロジック実装モジュールの登録情報の例を示す図である。
【図5】認証フレームワークを用いてユーザ情報を取得する際の処理手順を説明するための図である。
【図6】認証フレームワークを用いて外部認証を行う際の処理手順を説明するための図である。
【図7】認証フレームワークを用いて本体認証を行う際の処理手順を説明するための図である。
【図8】認証フレームワークを用いた認証処理の第一の具体例における処理手順を説明するための図である。
【図9】認証フレームワークを用いた認証処理の第二の具体例における処理手順を説明するための図である。
【図10】認証フレームワーク及びアプリケーションによるログイン状態の制御及び管理処理を説明するためのシーケンス図である。
【図11】ハード的にログアウトが要求された際の処理手順を説明するためのシーケンス図である。
【符号の説明】
【0080】
10 画像形成装置
30 外部デバイス
31 キーボード
32 スマートカードリーダー
50 認証サーバ
101 CPU
102 メモリ
103 記録媒体
104 ネットワークI/F
105 画像出力部
106 画像処理部
107 外部デバイスI/F
108 表示部
109 操作部
110 本体機能部
120 本体認証部
121 ユーザリスト
122 ビルトイン認証処理部
130 フレームワーク
131 外部デバイス制御部
132 外部デバイス情報取得部
133 外部認証処理部
134 及び本体認証制御部
140 アプリケーション
141 外部デバイス制御実装モジュール
142 外部デバイス情報取得実装モジュール
143 外部認証処理実装モジュール
144 本体認証制御実装モジュール
145 登録処理部
321 スマートカード

【特許請求の範囲】
【請求項1】
所定の情報に基づいてユーザの認証を実行する認証手段を有する情報処理装置であって、
外部のデバイスよりユーザの認証に用いる第一の情報を取得する情報取得手段と、
前記第一の情報に基づく情報を前記所定の情報として前記認証手段に入力することにより、前記認証手段に認証を実行させる認証制御手段とを有し、
前記情報取得手段は、記録媒体において前記情報取得手段との関連付けが記録されているプログラムモジュールを用いて前記第一の情報を取得することを特徴とする情報処理装置。
【請求項2】
前記認証制御手段は、記録媒体において前記認証制御手段との関連付けが記録されているプログラムモジュールを用いて前記第一の情報に基づく情報を前記所定の情報として前記認証手段に入力することを特徴とする請求項1記載の情報処理装置。
【請求項3】
ネットワークを介して接続されるコンピュータに前記第一の情報に基づく認証を実行させる外部認証手段を有し、
前記外部認証手段は、記録媒体において前記外部認証手段との関連付けが記録されているプログラムモジュールを用いて前記第一の情報に基づく認証を実行させることを特徴とする請求項1又は2記載の情報処理装置。
【請求項4】
前記外部認証手段は、前記コンピュータより認証の結果として第二の情報を受信し、
前認証制御手段は、前記第二の情報を前記所定の情報として前記認証手段に入力することにより、前記認証手段に認証を実行させることを特徴とする請求項3記載の情報処理装置。
【請求項5】
前記情報取得手段は、前記外部のデバイスとの接続を監視し、前記接続の切断の検知に応じ、認証されたユーザの認証状態を解除させることを特徴とする請求項1乃至4いずれか一項記載の情報処理装置。
【請求項6】
前記外部認証手段は、認証されたユーザに関して前記コンピュータに定期的に認証要求を送信し、認証されないときは当該ユーザの認証状態を解除させることを特徴とする請求項1乃至5いずれか一項記載の情報処理装置。
【請求項7】
前記認証制御部は、前記認証手段によって認証されたユーザについて、認証されてから所定時間経過後、又は所定時間操作が行われないときは認証状態を解除させることを特徴とする請求項1乃至6いずれか一項記載の情報処理装置。
【請求項8】
所定の情報に基づいてユーザの認証を実行する認証手段を有する情報処理装置が実行する認証制御方法であって、
外部のデバイスよりユーザの認証に用いる第一の情報を取得する情報取得手順と、
前記第一の情報に基づく情報を前記所定の情報として前記認証手順に入力することにより、前記認証手順に認証を実行させる認証制御手順とを有し、
前記情報取得手順は、記録媒体において前記情報取得手順との関連付けが記録されているプログラムモジュールを用いて前記第一の情報を取得することを特徴とする認証制御方法。
【請求項9】
前記認証制御手順は、記録媒体において前記認証制御手順との関連付けが記録されているプログラムモジュールを用いて前記第一の情報に基づく情報を前記所定の情報として前記認証手順に入力することを特徴とする請求項8記載の認証制御方法。
【請求項10】
ネットワークを介して接続されるコンピュータに前記第一の情報に基づく認証を実行させる外部認証手順を有し、
前記外部認証手順は、記録媒体において前記外部認証手順との関連付けが記録されているプログラムモジュールを用いて前記第一の情報に基づく認証を実行させることを特徴とする請求項8又は9記載の認証制御方法。
【請求項11】
前記外部認証手順は、前記コンピュータより認証の結果として第二の情報を受信し、
前認証制御手順は、前記第二の情報を前記所定の情報として前記認証手順に入力することにより、前記認証手順に認証を実行させることを特徴とする請求項10記載の認証制御方法。
【請求項12】
前記情報取得手順は、前記外部のデバイスとの接続を監視し、前記接続の切断の検知に応じ、認証されたユーザの認証状態を解除させることを特徴とする請求項8乃至11いずれか一項記載の認証制御方法。
【請求項13】
前記外部認証手順は、認証されたユーザに関して前記コンピュータに定期的に認証要求を送信し、認証されないときは当該ユーザの認証状態を解除させることを特徴とする請求項8乃至12いずれか一項記載の認証制御方法。
【請求項14】
前記認証制御部は、前記認証手順において認証されたユーザについて、認証されてから所定時間経過後、又は所定時間操作が行われないときは認証状態を解除させることを特徴とする請求項8乃至13いずれか一項記載の認証制御方法。
【請求項15】
請求項8乃至14いずれか一項記載の認証制御方法をコンピュータに実行させるための認証制御プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate


【公開番号】特開2009−69993(P2009−69993A)
【公開日】平成21年4月2日(2009.4.2)
【国際特許分類】
【出願番号】特願2007−235769(P2007−235769)
【出願日】平成19年9月11日(2007.9.11)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】