情報処理装置及びその制御方法
【課題】ネットワーク上で機密情報である認証情報を送受信することなく、Webサーバにより提供される認証のための操作画面を用いた情報処理装置の認証が可能な仕組みを提供する。
【解決手段】本発明の情報処理装置は、ネットワークに接続されたWebサーバから認証のための操作画面を取得し、取得した操作画面を表示することによりユーザからの認証データの入力操作を受け付け、受け付けた認証データを用いた認証処理を前記情報処理装置で行い、認証が成功した場合に前記情報処理装置が備える機能のユーザによる使用を許可する。
【解決手段】本発明の情報処理装置は、ネットワークに接続されたWebサーバから認証のための操作画面を取得し、取得した操作画面を表示することによりユーザからの認証データの入力操作を受け付け、受け付けた認証データを用いた認証処理を前記情報処理装置で行い、認証が成功した場合に前記情報処理装置が備える機能のユーザによる使用を許可する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ネットワークに接続されたWebサーバから操作画面を取得する情報処理装置及びその制御方法に関する。
【背景技術】
【0002】
従来より、情報処理装置が備える認証アプリケーションにより、認証画面の出力を行うと共に、ユーザから受け付けた認証情報によって認証処理を行って、認証が成功した場合に、情報処理装置が備える機能をユーザに提供する技術がある。
【0003】
このような認証処理としては、例えば、ユーザが操作画面に表示されたユーザ名やパスワード等の認証情報をキーボードを用いて入力し、その認証情報を用いて認証処理を行うキーボード認証がある。
【0004】
また、認証処理として、情報処理装置が備えるUSBのカード読み取りデバイスなどにユーザのICカードをかざしたり、挿入したりすることにより、ICカードに格納された認証情報を読み取って認証処理を行うカード認証がある。
【0005】
これらのキーボードによる認証とICカードによる認証は切り替えることが可能であることが知られている。
【0006】
また、従来より、Webサーバが提供するWebサイトを閲覧するため、情報処理装置内にWebブラウザ機能を備えた情報処理装置がある。
【0007】
このような情報処理装置においては、情報処理装置がネットワーク上のWebサーバと接続され、Webサーバにより提供される認証画面を情報処理装置が備えるWebブラウザに表示することでユーザに認証のための操作を行わせる方法が知られている。認証処理が成功すると情報処理装置が備える機能をユーザに提供することが可能になる。
【0008】
この場合、情報処理装置がネットワークに接続されたWebサーバに対して認証画面を要求し、WebサーバのWebアプリケーションが情報処理装置からの要求に応えて、Webブラウザに認証画面を表示させるためのコンテンツを情報処理装置に送信する。情報処理装置のWebブラウザは受信したコンテンツを解析し、操作画面を表示する。
【0009】
特許文献1では、Webブラウザに表示された認証画面(ログイン画面)に従ってユーザが認証情報(ユーザ名、パスワード)を入力すると、入力された情報をWebブラウザがWebサーバに対して通知する。そして、この通知を受けたWebサーバのWebアプリケーションはさらに情報処理装置に認証情報を通知し、情報処理装置へ認証情報の照会を行う。認証された場合、情報処理装置は再度、認証結果をWebサーバに通知し、認証処理を行う方法が知られている。
【先行技術文献】
【特許文献】
【0010】
【特許文献1】特開2007−279974号公報
【発明の概要】
【発明が解決しようとする課題】
【0011】
ここで、ユーザ名やパスワードなどの認証情報は、第三者に知られることのない機密情報として扱いたいという要望がある。
【0012】
しかしながら、従来の技術では、機密情報として扱うべき認証情報がWebサーバと情報処理装置との間を行き来することとなり、セキュリティレベルを高めたいと考えるユーザにとっては好ましくない。また、ネットワーク上に無駄なトラフィックも発生してしまう。
【課題を解決するための手段】
【0013】
上記の目的を達成するために、本発明の情報処理装置は、
ネットワークに接続されたWebサーバのWebアプリケーションから提供される操作画面を表示するWebブラウザを有する情報処理装置であって、
前記Webブラウザから前記Webサーバに送信されるべきリクエストデータが認証リクエストデータであるか否かを判定し、認証リクエストデータである場合に、前記Webサーバに前記認証リクエストデータを送信する代わりに、前記情報処理装置が備える認証サービスに前記認証リクエストデータを送信し、認証が成功した場合に前記情報処理装置が備える機能のユーザによる使用を許可することを特徴とする。
【発明の効果】
【0014】
本発明により、ネットワーク上で機密情報である認証情報を送受信することなく、Webサーバにより提供される認証のための操作画面を用いた情報処理装置の認証が可能な仕組みを提供することができる。
【0015】
さらには、情報処理装置に監視アプリを追加するだけで、既存のWebブラウザを修正することなく、所望の認証処理が可能となる。
【0016】
さらには、ICカードを用いた認証リクエストがあった場合に、カード認証デバイスを容易に使用可能な状態にすることが可能となる。
【図面の簡単な説明】
【0017】
【図1】本発明の第1乃至第3の実施形態における情報処理システムの全体図である。
【図2】本発明の第1乃至第3の実施形態におけるMFP101の構成を示すブロック図である。
【図3】本発明の第1の実施形態における情報処理システムのソフトウェア構成を示す図である。
【図4】本発明の第1の実施形態における情報処理システムの動作を説明するフロー図である。
【図5】本発明の第1乃至第3の実施形態におけるMFP101の操作表示部211に表示される操作画面の一例を示す図である。
【図6】本発明の第1乃至第3の実施形態におけるMFP101の操作表示部211に表示されるメインメニュー画面の一例を示す図である。
【図7】本発明の第2の実施形態における情報処理システムのソフトウェア構成を示す図である。
【図8】本発明の第2の実施形態における情報処理システムの動作を説明するフロー図である。
【図9】本発明の第3の実施形態における情報処理システムのソフトウェア構成を示す図である。
【図10】本発明の第3の実施形態における情報処理システムの動作を説明するフロー図である。
【図11】本発明の第3の実施形態におけるMFP101の操作表示部211に表示される操作画面の一例を示す図である。
【発明を実施するための形態】
【0018】
以下、本発明を実施するための最良の形態について図面を用いて説明する。なお、以下の実施の形態は、特許請求の範囲に係る発明を限定するものではなく、また実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【0019】
(第1の実施形態)
まず、本発明に係る第1の実施形態について説明する。図1は、第1の実施形態における情報処理装置を含むシステム全体構成を示す図である。このシステムでは、MFP101と、外部のWebサーバ104がLAN(ローカルエリアネットワーク)102やインターネット103によって構成されたネットワークによって接続されている。
【0020】
MFP101は、紙媒体をスキャンし、そのスキャンデータを元に用紙に画像を形成して印刷するコピー機能を持つ。
【0021】
さらには、Webサーバ104が提供するWebサイトを閲覧するため、Webブラウザ機能を備える。
【0022】
Webサーバ104は、クライアントであるWebブラウザの要求に応じてコンテンツを送信するといった一般的なWebサイトとしての機能を備える。
【0023】
さらに、Webサーバ104は、後述するWebアプリケーションを提供する機能も備える。これにより、MFP101は、Webサーバ104よりWebアプリケーションのサービスを利用することができる。
【0024】
図2は、MFP101の構成を示すブロック図である。このMFP101は、スキャナ213およびプリンタ214を接続するとともに、操作表示部211、操作入力部212、およびLAN104を接続することが可能なコントローラユニット200を備える。
【0025】
なお、本実施形態では、説明の便宜上、MFP101が、操作表示部211、操作入力部212、スキャナ213、プリンタ214及びUSBカード認証デバイス216を備える構成とするが、これらの構成は必要に応じて省略しても構わないし、外付けの装置であっても構わない。
【0026】
コントローラユニット200は、各種制御プログラムを実行するCPU(Central Processing Unit)201を有する。CPU201は、ROM(Read Only Memory)203に格納されているブートプログラムに基づきシステムを起動する。そして、このシステム上でHDD(ハードディスクドライブ)204に格納されている制御プログラムを読み出してRAM(Random Access Memory)202をワークエリアとして所定の処理を実行する。
【0027】
HDD204には、Webブラウザ402の機能を含む、各種制御プログラムが格納される。また、HDD204には、スキャナ213から読み込んだスキャンデータやネットワークI/F207を介して装置外から取得したデータが格納される。
【0028】
操作部出力I/F205は、操作表示部211へのデータ出力通信制御を行う。
【0029】
操作部入力I/F206は、操作入力部212からのデータ入力通信制御を行う。
【0030】
ネットワークI/F207は、LAN104に接続され、LAN104を介した情報の入出力制御を行う。ネットワークI/F207は、Webサーバ104のWebサービスを利用するために、外部サーバと通信を行う。具体的には、外部サーバ104でサービスを提供するWebサーバに対してリクエストメッセージを送信するとともに、Webサーバから送信されるレスポンスメッセージを受信する。
【0031】
スキャナI/F208は、スキャナ213から画像データを入力するとともに、スキャナ制御データの入出力を行う。
【0032】
プリンタI/F209は、プリンタ214へ出力画像データを出力するとともに、プリンタ制御データの入出力を行う。
【0033】
デバイス入出力I/F215は、USBカード認証デバイス216からの認証情報(認証データ)を受け取ったり、USBカード認証デバイス216を利用可能にしたり、利用不可能にしたりする制御を行う。
【0034】
以上、201から209まで、および215がシステムバス210上に配置される。
【0035】
操作入力部212は、タッチパネルやハードキーなどの入力装置を備えた、ユーザからの指示入力インターフェースである。
【0036】
操作表示部211は、LCD(Liquid Crystal Display)やLED(Light Emitting Diode)などの表示装置を備えた、ユーザへの表示インターフェースである。
【0037】
スキャナ213は、CCD(Charge Coupled Device)などの光学的な読み取り装置を備え、紙媒体を光学的に操作して、電子的な画像データとして読み取る機能を持つ。
【0038】
プリンタ214は、電子的な画像データを、用紙などの記録媒体上に画像として形成する機能を持つ。
【0039】
USBカード認証デバイス216は、ICカード認証の際、ユーザがかざしたICカードの内容を読み込む機能を持つ。
【0040】
図3は、システム全体のソフトウェア構成を説明する図である。図3に示す各機能部は、MFP101内のCPU201が、ROM203もしくはHDD204に格納された制御プログラムを読み出して実行することで実現される。
【0041】
Webサーバ104は認証アプリ301の機能を有する。
【0042】
認証アプリ301は、MFP101に認証用のWebサービスを提供するアプリケーションである。認証アプリ301は、認証画面生成部310および認証確認部311を有する。
【0043】
認証画面生成部310は、クライアントとなるMFP101より、認証画面要求があった場合、要求された認証用の操作画面をクライアントに送信する。具体的には、後述するが、ユーザのログインのためのログイン情報(ユーザ名やパスワード)を入力操作するログイン画面、あるいは認証に失敗した場合に表示するエラー画面などを提供可能である。
【0044】
認証確認部311は、クライアントであるMFP310から、ログイン情報と共に認証依頼があった場合に、再度MFP101に対して認証要求(認証リクエストデータ)を送信し、その結果を取得する。認証要求を送信する際は、前述のように取得したログイン情報を送信することになる。認証確認部311は、具体的には後述するMFP101の認証サービス303に対して認証要求およびログイン情報を送信し、その結果を取得する。
【0045】
前述の認証要求において認証結果がNGだった場合には、認証画面生成部310においてエラー画面を生成し、クライアントにエラー画面を送信する。認証確認部311は、本実施形態では、MFP101がプロキシアプリ305を持たない場合に機能する。すなわち、認証確認部311は、従来型の内部構成を持つMFPがWebサービスである認証アプリ301を使うことを想定して、Webサーバが備える機能である。これにより、従来型のWebブラウザおよび認証サービスを持つMFPがアクセスした場合も認証アプリ301のサービスを受けることが可能となる。
【0046】
MFP101は、Webブラウザ302、認証サービス303、プロキシアプリ305、及びウィンドウマネージャ304の機能を有する。プロキシアプリ305は監視アプリと呼ばれることもあるが、ここではプロキシアプリと表現する。
【0047】
Webブラウザ302は、プロキシアプリ305を経由し、Webサーバ301からWebコンテンツを取得して、操作表示部211に表示する。さらに、操作入力部212を介して入力されたユーザ指示を元にプロキシアプリ305を介してWebサーバ301にリクエストを送信する。
【0048】
Webブラウザ302は、コンテンツ取得部320、画面描画部321から構成される。
【0049】
コンテンツ取得部320は、プロキシアプリ305を介して、Webサーバ301に対してコンテンツ取得のリクエストを送信する。さらに、Webサーバ301から送信されたレスポンスを、プロキシアプリ305を介してコンテンツとして受信する。さらに、受信したコンテンツより操作表示部211に表示するための画面を生成する。
【0050】
画面描画部321は、コンテンツ取得部320が生成した画面を操作表示部211に表示する。実際には、ウィンドウマネージャ304の画面描画制御部340に描画指示を送り、操作表示部211に対して画面の描画を行う。
【0051】
プロキシアプリ305は、Webブラウザ302とWebサーバ104との間に存在し、プロキシとしての機能を有するとともに、Webブラウザ302から送信されたコンテンツを監視する機能を持つ。プロキシアプリは、データ監視部350及び認証要求部351から構成される。
【0052】
データ監視部350は、Webブラウザ302がWebサーバとの間で送受信するデータの内容を監視する。具体的には、データ監視部350は、コンテンツ取得部320が送信したデータに、あらかじめ定義されたログイン情報が含まれているか否かを判定する。そして、データ監視部350は、後述する認証要求部351に対してログイン情報と共に認証要求を依頼する。また、データ監視部350は、認証要求部351より画面要求依頼を受けた場合には、認証アプリ301に画面要求を行う。
【0053】
認証要求部351は、認証サービス303に対してログイン情報と共に認証要求を依頼し、その結果を取得する。前述の認証要求において認証結果がNGだった場合には、認証アプリ301の認証画面生成部310にエラー画面を要求する。
【0054】
ウィンドウマネージャ304は、操作表示部211に表示するWebブラウザ302やその他のアプリケーションの画面を切り替えたり、各アプリケーションに画面を切り替えたりするためのボタンの表示制御を行う。ウィンドウマネージャ302は、画面描画制御部340から構成される。
【0055】
画面描画制御部340は、画面描画部321やアクセス制御部331の指示を受けて、操作表示部211に表示する画面を切り替える。具体的には、画面描画制御部340は、画面描画部321から画面描画要求があった場合には、前述のログイン画面あるいはエラー画面を表示する。さらに、画面描画制御部340は、アクセス制御部331から画面描画要求があった場合には、ログイン画面からメインメニュー表示に切り替える。これにより、MFP101自体が備える機能のユーザによる使用が許可されることとなる。
【0056】
図4は、本システムにおける、認証処理(ログイン処理)を行う一連の処理を説明するフロー図である。図4のフロー図に示す各動作は、MFP101のCPU201が制御プログラムを実行することにより実現される。
【0057】
ステップS401では、Webブラウザ302は、Webサーバ104の認証アプリ301に対して認証用画面(ログイン画面)を要求する。ここで、本実施形態では、プロキシアプリ305が存在するので、実際はWebブラウザ302の認証用画面の要求はプロキシアプリ305を介して行われる。したがって、ステップS401では、実際にはWebブラウザ302の認証用画面の要求はプロキシアプリ305への指示となる。Webブラウザ302と認証アプリ301との間の通信は、プロキシアプリ305を介して行われるので、ここでは、明示的にプロキシアプリ305への指示として説明する。
【0058】
ステップS402で、プロキシアプリ305は、Webブラウザ302の要求をそのまま認証アプリ301へ通知する。すなわち、プロキシアプリ305は認証アプリ301に対して認証用画面要求を行う。ステップS403で、認証アプリ301は、要求された認証用画面を生成し、プロキシアプリ305へ送信する。次に、ステップS404で、プロキシアプリ305は、取得した認証用画面をWebブラウザ302に送信する。
【0059】
ステップS405で、Webブラウザ302は、取得した認証用画面を操作表示部211に表示する。次に、ステップS406で、ユーザはMFP101にログインすべく、Webブラウザ302で表示した認証用画面にログイン情報を入力する。
【0060】
次に、ステップS407で、Webブラウザ302は認証要求をすべく、入力されたログイン情報をプロキシアプリ305へ送信する。
【0061】
プロキシアプリ305は、通常、Webブラウザ302から認証アプリ301に送信される要求について常に監視している。ステップS407で送信された要求にはログイン情報が含まれているので、ステップS408に進み、プロキシアプリ305は認証サービス303の認証機能実行部330に認証要求を行う。その際、ステップS407で送信されたログイン情報も一緒に送信する。
【0062】
次に、ステップS409で、認証サービス303の認証機能実行部330は認証処理を行う。次に、ステップS410へ進み、ステップS409の認証処理において認証結果がOKであるかNGであるかを判定する。ここで、認証結果がOKである場合には、ステップS411に進み、認証サービス303のアクセス制御部331がウィンドウマネージャ304に画面切り替え要求を行う。ステップS412では、ウィンドウマネージャ304の画面描画制御部340が操作表示部211に表示する画面をメインメニュー画面に切り替える制御を行う。すなわち、ログインが成功したこととなり、ステップS413で、Webブラウザ302は、ローカルのメニュー画面を操作表示部211に表示する。
【0063】
一方、ステップS410で認証結果がNGであると判定された場合には、ステップS414で、認証サービス303はプロキシアプリ305へエラー画面を要求する。ステップS415で、プロキシアプリ305は、認証サービス303からのエラー画面要求をそのまま認証アプリ301に対して行う。
【0064】
ステップS416で、認証アプリ301がステップS415で要求されたエラー画面を生成し、要求画面としてプロキシアプリ305へ送信する。
【0065】
ステップS417で、プロキシアプリ305は受け取った要求画面(エラー画面)をそのままWebブラウザ302へ送信する。
【0066】
ステップS418で、Webブラウザ302は受け取ったエラー画面を操作表示部211に表示する。
【0067】
このようにMFP101への認証処理(ログイン処理)が可能となる。
【0068】
図5は図4で説明した操作表示部211に表示される認証処理(ログイン処理)に必要な画面の例を示した図である。
【0069】
図5(a)は、図4のステップS405で表示される認証用画面(ログイン画面)の例を示した図である。500はログインに必要な入力領域であり、ボタンを配置した画面を示している。501はログインに必要な情報としてのユーザ名を入力する領域である。また、502はログインに必要な情報としてのパスワードを入力する領域である。
【0070】
503はログインボタンである。このボタンを押下することで、図4のステップS407以降で説明した認証処理(ログイン処理)が行われる。
【0071】
図5(b)は、図4のステップS418で表示されるエラー画面を示した図である。504はエラーメッセージを表示する領域であり、図中のOKボタンを押下することによりエラー画面を非表示にし、図5(a)の500のログインに必要な入力領域、ボタンを配置した画面を再び表示させることが可能である。
【0072】
図6は図4のステップS411で認証結果がOKである場合に、操作表示部211に表示されるメインメニューの例を示している。図6のメインメニューではMFP101での操作に必要な各種メニューのアイコンやボタンが並んでいる様子を示している。この画面によりユーザはMFP101の各種機能やサービスを利用することが可能となる。
【0073】
(第2の実施形態)
次に、本発明の第2の実施形態について説明する。なお、システム構成などは第1の実施形態と同等のため、ここでは、第1の実施形態と差異のある部分のみについて説明する。第2の実施形態は、認証処理(ログイン処理)を行う点で第1の実施形態と共通するが、プロキシアプリ305の処理をWebブラウザ302で行う点で第1の実施形態と異なる。
【0074】
図7は、第2の実施形態におけるシステム全体のソフトウェア構成を説明する図である。ここでは、第1の実施形態の図3と比べると、プロキシアプリ305がなくなり、Webブラウザ302がその処理を行う点が異なる。
【0075】
図7に示す各機能部は、MFP101内のCPU201が、ROM203もしくはHDD204に格納された制御プログラムを読み出して実行することで実現される。
【0076】
Webブラウザ302は、Webサーバ301と通信を行い、Webサーバ301からWebコンテンツを取得して、操作表示部211に表示する。さらに、Webブラウザ302は、操作入力部212を介して入力されたユーザ指示を元にWebサーバ104にリクエストを送信する。
【0077】
Webブラウザ302は、コンテンツ取得部320、画面描画部321、入力情報解析部322、認証要求部323から構成される。
【0078】
コンテンツ取得部320および画面描画部321は、第1の実施形態で説明したものと同じであるため、説明を割愛する。ただし、ここではコンテンツ取得部320は認証アプリ301と直接、通信する。
【0079】
入力情報解析部322は、操作表示部211に表示された認証用画面(ログイン画面)より、ユーザが指定した内容にログイン情報が含まれているか否かを判定する。そして、後述するWebブラウザ302の認証要求部323を通して認証サービス303に認証要求を依頼する。
【0080】
認証要求部323は、認証サービス303に対してログイン情報と共に認証要求を依頼し、その結果を取得する。前述の認証要求において認証結果がNGである場合には、認証画面生成部310にエラー画面を要求する。
【0081】
ウィンドウマネージャ304は、操作表示部211に表示するWebブラウザ302やその他のアプリケーションの画面を切り替えたり、各アプリケーションに画面を切り替えたりするためのボタンの表示制御を行う。ウィンドウマネージャ302は、画面描画制御部340から構成される。
【0082】
画面描画制御部340は、画面描画部321やアクセス制御部331の指示を受けて、操作表示部211に表示する画面を切り替える。具体的には、画面描画部321から画面描画要求があった場合には、前述のログイン画面あるいはエラー画面を表示する。さらに、アクセス制御部331から画面描画要求があった場合には、ログイン画面からメインメニュー表示に切り替える。
【0083】
図8は、第2の実施形態の本システムにおける、認証処理(ログイン処理)の一連のフロー図である。図8のフロー図に示す各動作は、MFP101のCPU201が制御プログラムを実行することにより実現される。
【0084】
ステップS801で、Webブラウザ302はWebサーバ104の認証アプリ301に対して認証用画面(ログイン画面)を要求する。
【0085】
次に、ステップS802で、認証アプリ301はWebブラウザ302に生成した認証用画面を送信する。
【0086】
ステップS803で、Webブラウザ302は取得した認証用画面を操作表示部211に表示する。
【0087】
次に、ステップS804で、ユーザはMFP101にログインすべく、Webブラウザ302で表示した認証用画面にログイン情報を入力する。
【0088】
ステップS804で入力された情報にはログイン情報が含まれているので、ステップS805に進み、Webブラウザ302の認証要求部323が認証サービス303の認証機能実行部330に認証要求を行う。その際、入力されたログイン情報も一緒に送信する。
【0089】
次に、ステップS806で、認証サービス303の認証機能実行部330は認証処理を行う。次に、ステップS807へ進み、ステップS807の認証処理において認証結果がOKであるかNGであるかを判定する。ここで認証結果がOKである場合にはステップS808に進み、認証サービス303のアクセス制御部331がウィンドウマネージャ304に画面切り替え要求を行う。ステップS809では、ウィンドウマネージャ304の画面描画制御部340が操作表示部211に表示する画面をメインメニュー画面に切り替える制御を行う。これにより、ログインが成功したこととなり、ステップS810で、Webブラウザ302は、ローカルのメニュー画面を操作表示部211に表示する。
【0090】
一方、ステップS807で認証結果がNGであると判定された場合には、ステップS811で、認証サービス303はWebブラウザ302へエラー画面を要求する。ステップ812で、Webブラウザ302は、認証サービス303からのエラー画面要求をそのまま認証アプリ301に対して行う。
【0091】
ステップS813で、認証アプリ301がステップS812で要求されたエラー画面を生成し、要求画面としてWebブラウザ302へ送信する。
【0092】
ステップS814で、Webブラウザ302は受け取ったエラー画面を操作表示部211に表示する。
【0093】
ここで、図8で説明した操作表示部211に表示される認証処理(ログイン処理)に必要な画面の例は、第1の実施形態で説明した、図5及び図6と同様であるため、ここでは説明を省略する。
【0094】
このようにMFP101への認証処理(ログイン処理)が可能となる。
【0095】
(第3の実施形態)
次に、本発明の第3の実施形態について説明する。なお、システム構成などは第1の実施形態と同等のため、ここでは、第1の実施形態と差異のある部分のみについて説明する。第3の実施形態は、認証処理(ログイン処理)を行う点で第1の実施形態と共通するが、ICカード認証が指示された場合には、認証処理(ログイン処理)をICカード認証により行う点で第1の実施形態と異なる。
【0096】
図9は本発明の第3の実施形態におけるシステム全体のソフトウェア構成を説明する図である。図9に示す各機能部は、MFP101内のCPU201が、ROM203もしくはHDD204に格納された制御プログラムを読み出して実行することで実現される。
【0097】
ここでは、第1の実施形態で説明した図3との差分について説明する。
【0098】
図3との差分は、プロキシアプリ305においてカード認証処理部352が追加されている。また、MFP101において、デバイス入出力サービス901が追加されている。その他は図3と同様である。
【0099】
図9のデバイス入出力サービス901は、デバイス入出力制御部910で構成される。デバイス入出力制御部910は、前述の図2で説明したデバイス入出力I/F215と通信し、USBカード認証デバイス216を使用可能にする。また、デバイス入出力制御部910は、USBカード認証デバイス216の認証情報を取得する。ここでの認証情報とは、ユーザがUSBカード認証デバイス216にかざしたICカードに格納された、ユーザ名やパスワードといったログインを行うための情報を意味する。
【0100】
カード認証処理部352は、デバイス入出力サービス901のデバイス入出力制御部910と通信し、USBカード認証デバイス216を使用可能にすべく要求を出す。また、カード認証処理部352は、USBカード認証デバイス216からのログイン情報を取得するなどの処理を行う。
【0101】
また、第3の実施形態において、プロキシアプリ305のデータ監視部350は、Webブラウザ302が送受信するデータの内容を監視するだけでなく、カード認証処理部352が取得したログイン情報も監視する。
【0102】
図10は、第3の実施形態における、認証処理(ログイン処理)の一連のフロー図である。図9のフロー図に示す各動作は、MFP101のCPU201が制御プログラムを実行することにより実現される。
【0103】
ステップS1001では、Webブラウザ302は、Webサーバ104の認証アプリ301に対して認証用画面(図11(a)に示すログイン画面)を要求する。ここで、第3の実施形態でもプロキシアプリ305が存在するので、実際はWebブラウザ302の認証用画面の要求はプロキシアプリ305を介して行われる。したがって、ステップS1001ではWebブラウザ302の認証用画面の要求はプロキシアプリ305への指示となる。Webブラウザ302および認証アプリ301に対して通信する際にプロキシアプリ305を介して行われることになるので、ここでは、明示的にプロキシアプリ305への指示として説明する。
【0104】
ステップS1002で、プロキシアプリ305は、Webブラウザ302の要求を認証アプリ301へそのまま通知する。すなわち、プロキシアプリ305は認証アプリ301に対して認証用画面要求を行う。
【0105】
ステップS1003で、認証アプリ301は、前述のステップS1002で要求された認証用画面を生成し、プロキシアプリ305へ送信する。次に、ステップS1004で、プロキシアプリ305は、取得した認証用画面をWebブラウザ302に送信する。
【0106】
ステップS1005で、Webブラウザ302は取得した認証用画面(図11(a)参照)を操作表示部211に表示する。次に、ステップS1006で、ユーザはMFP101にログインすべく、Webブラウザ302で表示した認証用画面にログイン情報を入力するか、又はICカード認証を行うかを選択する。そして、Webブラウザ302は、ユーザにより入力された情報をプロキシアプリ305に送信する。
【0107】
ステップS1008で、プロキシアプリ305は、受信した情報に基づいて、Webブラウザ302によりICカード認証が要求されたか否かを判定する。ステップS1008でICカードの認証が要求されたと判定された場合には、ステップS1009でデバイス入出力サービス901に対して、ICカードの認証を可能にすべく、USBカード認証デバイス216を使用可能にする要求を出す。次に、ステップS1010で、デバイス入出力サービス901は、USBカード認証デバイス216を使用可能にし、ICカード認証に切り替える処理を行う。
【0108】
ステップS1011で、デバイス入出力サービス901は、プロキシアプリ305に対して、ユーザにカードをかざすことを指示するための画面要求を行う。ステップS1012で、プロキシアプリ305は、デバイス入出力サービス901の要求を認証アプリ301へそのまま通知する。
【0109】
ステップS1013で、認証アプリ301は、前述のステップS1012で要求されたカード入力指示画面を生成し、プロキシアプリ305へ送信する。次に、ステップS1014で、プロキシアプリ305は、取得したカード入力指示画面をWebブラウザ302に送信する。
【0110】
ステップS1015で、Webブラウザ302は、取得したカード入力指示画面(図11(b)参照)を操作表示部211に表示する。次に、ステップS1016で、カード入力指示画面の指示に従ってUSBカード認証デバイス216にICカードをかざすことにより、ログイン情報を入力する。そして、ステップS1017で、デバイス入出力サービス901は、ユーザにより入力されたログイン情報をプロキシアプリ305に送信する。ステップS1018で、プロキシアプリ305は、認証サービス303に認証要求を行う。ステップS1019で、認証サービス303の認証機能実行部330は、受信した情報に基づいて認証処理を行う。
【0111】
次に、ステップS1020へ進み、ステップS1019の認証処理の認証結果がOKであるかNGであるかを判定する。認証結果がOKである場合にはステップS1021に進み、認証サービス303のアクセス制御部331がウィンドウマネージャ304に画面切り替え要求を行う。ステップS1022では、ウィンドウマネージャ304の画面描画制御部340が操作表示部211に表示する画面をメインメニュー画面に切り替える制御を行う。これにより、ログインが成功したこととなり、ステップS1023で、Webブラウザ302は、ローカルのメニュー画面を操作表示部211に表示する。
【0112】
一方、ステップS1020で認証結果がNGであると判定された場合には、ステップS1024で、認証サービス303はプロキシアプリ305へエラー画面を要求する。ステップ1025で、プロキシアプリ305は、認証サービス303からのエラー画面要求をそのまま認証アプリ301に対して行う。
【0113】
ステップS1026で、認証アプリ301がステップS1025で要求されたエラー画面を生成し、要求画面としてプロキシアプリ305へ送信する。
【0114】
ステップS1027で、プロキシアプリ305は受け取った要求画面(エラー画面)をそのままWebブラウザ302へ送信する。
【0115】
ステップS1028で、Webブラウザ302は受け取ったエラー画面を操作表示部211に表示する。
【0116】
このようにMFP101への認証処理(ログイン処理)において、USBカード認証デバイス216を使用したICカード認証が可能となる。
【0117】
なお、前述のステップS1008でICカードの認証が要求されたと判定されなかった場合、つまり、第1の実施形態と同様にステップS1007でログイン情報がWebブラウザ302からプロキシアプリ305に送信された場合には、図4のS408からの処理と同様の処理を行う。
【0118】
図11は図9で説明した操作表示部211に表示される認証処理(ログイン処理)に必要な画面の例を示した図である。
【0119】
図11(a)は第3の実施形態において、最初に表示されるキーボード認証用画面(ログイン画面)の例を示した図である。図中1100はログインに必要なユーザ名およびパスワード等を入力する入力領域、ボタンを配置した画面を示している。1102はログインボタンであり、ユーザは前述のユーザ名およびパスワード領域に入力した値でログインを行うときは、このログインボタン1102を押下する。このログインボタン1102を押下することで、第1の実施形態で説明した認証処理(ログイン処理)と同様の処理が行われる。
【0120】
1101はICカード認証画面に切り替えるためのボタンである。第3の実施形態において、このICカード認証の切換えボタン1101が押下されると、ICカード認証処理を行うべく、前述のステップS1007からの処理が行われる。一方、ログインボタンが押下されると、第1の実施形態と同様の処理となり、図4のS407からの処理が行われる。
【0121】
図11(b)は図10のステップS1015で表示されるICカード入力指示画面を示した図である。1110はメッセージおよびボタンを表示する領域であり、ICカードをUSBカード認証デバイス216にかざすことを指示する旨のメッセージを表示している。図中1111はキーボード認証のための切り替えボタンである。このキーボード認証ボタンを押下すると、Webブラウザ302は認証アプリ301に対してキーボード認証用の画面を要求し、前述の図11(a)の画面を表示する。
【0122】
(他の実施形態)
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【技術分野】
【0001】
本発明は、ネットワークに接続されたWebサーバから操作画面を取得する情報処理装置及びその制御方法に関する。
【背景技術】
【0002】
従来より、情報処理装置が備える認証アプリケーションにより、認証画面の出力を行うと共に、ユーザから受け付けた認証情報によって認証処理を行って、認証が成功した場合に、情報処理装置が備える機能をユーザに提供する技術がある。
【0003】
このような認証処理としては、例えば、ユーザが操作画面に表示されたユーザ名やパスワード等の認証情報をキーボードを用いて入力し、その認証情報を用いて認証処理を行うキーボード認証がある。
【0004】
また、認証処理として、情報処理装置が備えるUSBのカード読み取りデバイスなどにユーザのICカードをかざしたり、挿入したりすることにより、ICカードに格納された認証情報を読み取って認証処理を行うカード認証がある。
【0005】
これらのキーボードによる認証とICカードによる認証は切り替えることが可能であることが知られている。
【0006】
また、従来より、Webサーバが提供するWebサイトを閲覧するため、情報処理装置内にWebブラウザ機能を備えた情報処理装置がある。
【0007】
このような情報処理装置においては、情報処理装置がネットワーク上のWebサーバと接続され、Webサーバにより提供される認証画面を情報処理装置が備えるWebブラウザに表示することでユーザに認証のための操作を行わせる方法が知られている。認証処理が成功すると情報処理装置が備える機能をユーザに提供することが可能になる。
【0008】
この場合、情報処理装置がネットワークに接続されたWebサーバに対して認証画面を要求し、WebサーバのWebアプリケーションが情報処理装置からの要求に応えて、Webブラウザに認証画面を表示させるためのコンテンツを情報処理装置に送信する。情報処理装置のWebブラウザは受信したコンテンツを解析し、操作画面を表示する。
【0009】
特許文献1では、Webブラウザに表示された認証画面(ログイン画面)に従ってユーザが認証情報(ユーザ名、パスワード)を入力すると、入力された情報をWebブラウザがWebサーバに対して通知する。そして、この通知を受けたWebサーバのWebアプリケーションはさらに情報処理装置に認証情報を通知し、情報処理装置へ認証情報の照会を行う。認証された場合、情報処理装置は再度、認証結果をWebサーバに通知し、認証処理を行う方法が知られている。
【先行技術文献】
【特許文献】
【0010】
【特許文献1】特開2007−279974号公報
【発明の概要】
【発明が解決しようとする課題】
【0011】
ここで、ユーザ名やパスワードなどの認証情報は、第三者に知られることのない機密情報として扱いたいという要望がある。
【0012】
しかしながら、従来の技術では、機密情報として扱うべき認証情報がWebサーバと情報処理装置との間を行き来することとなり、セキュリティレベルを高めたいと考えるユーザにとっては好ましくない。また、ネットワーク上に無駄なトラフィックも発生してしまう。
【課題を解決するための手段】
【0013】
上記の目的を達成するために、本発明の情報処理装置は、
ネットワークに接続されたWebサーバのWebアプリケーションから提供される操作画面を表示するWebブラウザを有する情報処理装置であって、
前記Webブラウザから前記Webサーバに送信されるべきリクエストデータが認証リクエストデータであるか否かを判定し、認証リクエストデータである場合に、前記Webサーバに前記認証リクエストデータを送信する代わりに、前記情報処理装置が備える認証サービスに前記認証リクエストデータを送信し、認証が成功した場合に前記情報処理装置が備える機能のユーザによる使用を許可することを特徴とする。
【発明の効果】
【0014】
本発明により、ネットワーク上で機密情報である認証情報を送受信することなく、Webサーバにより提供される認証のための操作画面を用いた情報処理装置の認証が可能な仕組みを提供することができる。
【0015】
さらには、情報処理装置に監視アプリを追加するだけで、既存のWebブラウザを修正することなく、所望の認証処理が可能となる。
【0016】
さらには、ICカードを用いた認証リクエストがあった場合に、カード認証デバイスを容易に使用可能な状態にすることが可能となる。
【図面の簡単な説明】
【0017】
【図1】本発明の第1乃至第3の実施形態における情報処理システムの全体図である。
【図2】本発明の第1乃至第3の実施形態におけるMFP101の構成を示すブロック図である。
【図3】本発明の第1の実施形態における情報処理システムのソフトウェア構成を示す図である。
【図4】本発明の第1の実施形態における情報処理システムの動作を説明するフロー図である。
【図5】本発明の第1乃至第3の実施形態におけるMFP101の操作表示部211に表示される操作画面の一例を示す図である。
【図6】本発明の第1乃至第3の実施形態におけるMFP101の操作表示部211に表示されるメインメニュー画面の一例を示す図である。
【図7】本発明の第2の実施形態における情報処理システムのソフトウェア構成を示す図である。
【図8】本発明の第2の実施形態における情報処理システムの動作を説明するフロー図である。
【図9】本発明の第3の実施形態における情報処理システムのソフトウェア構成を示す図である。
【図10】本発明の第3の実施形態における情報処理システムの動作を説明するフロー図である。
【図11】本発明の第3の実施形態におけるMFP101の操作表示部211に表示される操作画面の一例を示す図である。
【発明を実施するための形態】
【0018】
以下、本発明を実施するための最良の形態について図面を用いて説明する。なお、以下の実施の形態は、特許請求の範囲に係る発明を限定するものではなく、また実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【0019】
(第1の実施形態)
まず、本発明に係る第1の実施形態について説明する。図1は、第1の実施形態における情報処理装置を含むシステム全体構成を示す図である。このシステムでは、MFP101と、外部のWebサーバ104がLAN(ローカルエリアネットワーク)102やインターネット103によって構成されたネットワークによって接続されている。
【0020】
MFP101は、紙媒体をスキャンし、そのスキャンデータを元に用紙に画像を形成して印刷するコピー機能を持つ。
【0021】
さらには、Webサーバ104が提供するWebサイトを閲覧するため、Webブラウザ機能を備える。
【0022】
Webサーバ104は、クライアントであるWebブラウザの要求に応じてコンテンツを送信するといった一般的なWebサイトとしての機能を備える。
【0023】
さらに、Webサーバ104は、後述するWebアプリケーションを提供する機能も備える。これにより、MFP101は、Webサーバ104よりWebアプリケーションのサービスを利用することができる。
【0024】
図2は、MFP101の構成を示すブロック図である。このMFP101は、スキャナ213およびプリンタ214を接続するとともに、操作表示部211、操作入力部212、およびLAN104を接続することが可能なコントローラユニット200を備える。
【0025】
なお、本実施形態では、説明の便宜上、MFP101が、操作表示部211、操作入力部212、スキャナ213、プリンタ214及びUSBカード認証デバイス216を備える構成とするが、これらの構成は必要に応じて省略しても構わないし、外付けの装置であっても構わない。
【0026】
コントローラユニット200は、各種制御プログラムを実行するCPU(Central Processing Unit)201を有する。CPU201は、ROM(Read Only Memory)203に格納されているブートプログラムに基づきシステムを起動する。そして、このシステム上でHDD(ハードディスクドライブ)204に格納されている制御プログラムを読み出してRAM(Random Access Memory)202をワークエリアとして所定の処理を実行する。
【0027】
HDD204には、Webブラウザ402の機能を含む、各種制御プログラムが格納される。また、HDD204には、スキャナ213から読み込んだスキャンデータやネットワークI/F207を介して装置外から取得したデータが格納される。
【0028】
操作部出力I/F205は、操作表示部211へのデータ出力通信制御を行う。
【0029】
操作部入力I/F206は、操作入力部212からのデータ入力通信制御を行う。
【0030】
ネットワークI/F207は、LAN104に接続され、LAN104を介した情報の入出力制御を行う。ネットワークI/F207は、Webサーバ104のWebサービスを利用するために、外部サーバと通信を行う。具体的には、外部サーバ104でサービスを提供するWebサーバに対してリクエストメッセージを送信するとともに、Webサーバから送信されるレスポンスメッセージを受信する。
【0031】
スキャナI/F208は、スキャナ213から画像データを入力するとともに、スキャナ制御データの入出力を行う。
【0032】
プリンタI/F209は、プリンタ214へ出力画像データを出力するとともに、プリンタ制御データの入出力を行う。
【0033】
デバイス入出力I/F215は、USBカード認証デバイス216からの認証情報(認証データ)を受け取ったり、USBカード認証デバイス216を利用可能にしたり、利用不可能にしたりする制御を行う。
【0034】
以上、201から209まで、および215がシステムバス210上に配置される。
【0035】
操作入力部212は、タッチパネルやハードキーなどの入力装置を備えた、ユーザからの指示入力インターフェースである。
【0036】
操作表示部211は、LCD(Liquid Crystal Display)やLED(Light Emitting Diode)などの表示装置を備えた、ユーザへの表示インターフェースである。
【0037】
スキャナ213は、CCD(Charge Coupled Device)などの光学的な読み取り装置を備え、紙媒体を光学的に操作して、電子的な画像データとして読み取る機能を持つ。
【0038】
プリンタ214は、電子的な画像データを、用紙などの記録媒体上に画像として形成する機能を持つ。
【0039】
USBカード認証デバイス216は、ICカード認証の際、ユーザがかざしたICカードの内容を読み込む機能を持つ。
【0040】
図3は、システム全体のソフトウェア構成を説明する図である。図3に示す各機能部は、MFP101内のCPU201が、ROM203もしくはHDD204に格納された制御プログラムを読み出して実行することで実現される。
【0041】
Webサーバ104は認証アプリ301の機能を有する。
【0042】
認証アプリ301は、MFP101に認証用のWebサービスを提供するアプリケーションである。認証アプリ301は、認証画面生成部310および認証確認部311を有する。
【0043】
認証画面生成部310は、クライアントとなるMFP101より、認証画面要求があった場合、要求された認証用の操作画面をクライアントに送信する。具体的には、後述するが、ユーザのログインのためのログイン情報(ユーザ名やパスワード)を入力操作するログイン画面、あるいは認証に失敗した場合に表示するエラー画面などを提供可能である。
【0044】
認証確認部311は、クライアントであるMFP310から、ログイン情報と共に認証依頼があった場合に、再度MFP101に対して認証要求(認証リクエストデータ)を送信し、その結果を取得する。認証要求を送信する際は、前述のように取得したログイン情報を送信することになる。認証確認部311は、具体的には後述するMFP101の認証サービス303に対して認証要求およびログイン情報を送信し、その結果を取得する。
【0045】
前述の認証要求において認証結果がNGだった場合には、認証画面生成部310においてエラー画面を生成し、クライアントにエラー画面を送信する。認証確認部311は、本実施形態では、MFP101がプロキシアプリ305を持たない場合に機能する。すなわち、認証確認部311は、従来型の内部構成を持つMFPがWebサービスである認証アプリ301を使うことを想定して、Webサーバが備える機能である。これにより、従来型のWebブラウザおよび認証サービスを持つMFPがアクセスした場合も認証アプリ301のサービスを受けることが可能となる。
【0046】
MFP101は、Webブラウザ302、認証サービス303、プロキシアプリ305、及びウィンドウマネージャ304の機能を有する。プロキシアプリ305は監視アプリと呼ばれることもあるが、ここではプロキシアプリと表現する。
【0047】
Webブラウザ302は、プロキシアプリ305を経由し、Webサーバ301からWebコンテンツを取得して、操作表示部211に表示する。さらに、操作入力部212を介して入力されたユーザ指示を元にプロキシアプリ305を介してWebサーバ301にリクエストを送信する。
【0048】
Webブラウザ302は、コンテンツ取得部320、画面描画部321から構成される。
【0049】
コンテンツ取得部320は、プロキシアプリ305を介して、Webサーバ301に対してコンテンツ取得のリクエストを送信する。さらに、Webサーバ301から送信されたレスポンスを、プロキシアプリ305を介してコンテンツとして受信する。さらに、受信したコンテンツより操作表示部211に表示するための画面を生成する。
【0050】
画面描画部321は、コンテンツ取得部320が生成した画面を操作表示部211に表示する。実際には、ウィンドウマネージャ304の画面描画制御部340に描画指示を送り、操作表示部211に対して画面の描画を行う。
【0051】
プロキシアプリ305は、Webブラウザ302とWebサーバ104との間に存在し、プロキシとしての機能を有するとともに、Webブラウザ302から送信されたコンテンツを監視する機能を持つ。プロキシアプリは、データ監視部350及び認証要求部351から構成される。
【0052】
データ監視部350は、Webブラウザ302がWebサーバとの間で送受信するデータの内容を監視する。具体的には、データ監視部350は、コンテンツ取得部320が送信したデータに、あらかじめ定義されたログイン情報が含まれているか否かを判定する。そして、データ監視部350は、後述する認証要求部351に対してログイン情報と共に認証要求を依頼する。また、データ監視部350は、認証要求部351より画面要求依頼を受けた場合には、認証アプリ301に画面要求を行う。
【0053】
認証要求部351は、認証サービス303に対してログイン情報と共に認証要求を依頼し、その結果を取得する。前述の認証要求において認証結果がNGだった場合には、認証アプリ301の認証画面生成部310にエラー画面を要求する。
【0054】
ウィンドウマネージャ304は、操作表示部211に表示するWebブラウザ302やその他のアプリケーションの画面を切り替えたり、各アプリケーションに画面を切り替えたりするためのボタンの表示制御を行う。ウィンドウマネージャ302は、画面描画制御部340から構成される。
【0055】
画面描画制御部340は、画面描画部321やアクセス制御部331の指示を受けて、操作表示部211に表示する画面を切り替える。具体的には、画面描画制御部340は、画面描画部321から画面描画要求があった場合には、前述のログイン画面あるいはエラー画面を表示する。さらに、画面描画制御部340は、アクセス制御部331から画面描画要求があった場合には、ログイン画面からメインメニュー表示に切り替える。これにより、MFP101自体が備える機能のユーザによる使用が許可されることとなる。
【0056】
図4は、本システムにおける、認証処理(ログイン処理)を行う一連の処理を説明するフロー図である。図4のフロー図に示す各動作は、MFP101のCPU201が制御プログラムを実行することにより実現される。
【0057】
ステップS401では、Webブラウザ302は、Webサーバ104の認証アプリ301に対して認証用画面(ログイン画面)を要求する。ここで、本実施形態では、プロキシアプリ305が存在するので、実際はWebブラウザ302の認証用画面の要求はプロキシアプリ305を介して行われる。したがって、ステップS401では、実際にはWebブラウザ302の認証用画面の要求はプロキシアプリ305への指示となる。Webブラウザ302と認証アプリ301との間の通信は、プロキシアプリ305を介して行われるので、ここでは、明示的にプロキシアプリ305への指示として説明する。
【0058】
ステップS402で、プロキシアプリ305は、Webブラウザ302の要求をそのまま認証アプリ301へ通知する。すなわち、プロキシアプリ305は認証アプリ301に対して認証用画面要求を行う。ステップS403で、認証アプリ301は、要求された認証用画面を生成し、プロキシアプリ305へ送信する。次に、ステップS404で、プロキシアプリ305は、取得した認証用画面をWebブラウザ302に送信する。
【0059】
ステップS405で、Webブラウザ302は、取得した認証用画面を操作表示部211に表示する。次に、ステップS406で、ユーザはMFP101にログインすべく、Webブラウザ302で表示した認証用画面にログイン情報を入力する。
【0060】
次に、ステップS407で、Webブラウザ302は認証要求をすべく、入力されたログイン情報をプロキシアプリ305へ送信する。
【0061】
プロキシアプリ305は、通常、Webブラウザ302から認証アプリ301に送信される要求について常に監視している。ステップS407で送信された要求にはログイン情報が含まれているので、ステップS408に進み、プロキシアプリ305は認証サービス303の認証機能実行部330に認証要求を行う。その際、ステップS407で送信されたログイン情報も一緒に送信する。
【0062】
次に、ステップS409で、認証サービス303の認証機能実行部330は認証処理を行う。次に、ステップS410へ進み、ステップS409の認証処理において認証結果がOKであるかNGであるかを判定する。ここで、認証結果がOKである場合には、ステップS411に進み、認証サービス303のアクセス制御部331がウィンドウマネージャ304に画面切り替え要求を行う。ステップS412では、ウィンドウマネージャ304の画面描画制御部340が操作表示部211に表示する画面をメインメニュー画面に切り替える制御を行う。すなわち、ログインが成功したこととなり、ステップS413で、Webブラウザ302は、ローカルのメニュー画面を操作表示部211に表示する。
【0063】
一方、ステップS410で認証結果がNGであると判定された場合には、ステップS414で、認証サービス303はプロキシアプリ305へエラー画面を要求する。ステップS415で、プロキシアプリ305は、認証サービス303からのエラー画面要求をそのまま認証アプリ301に対して行う。
【0064】
ステップS416で、認証アプリ301がステップS415で要求されたエラー画面を生成し、要求画面としてプロキシアプリ305へ送信する。
【0065】
ステップS417で、プロキシアプリ305は受け取った要求画面(エラー画面)をそのままWebブラウザ302へ送信する。
【0066】
ステップS418で、Webブラウザ302は受け取ったエラー画面を操作表示部211に表示する。
【0067】
このようにMFP101への認証処理(ログイン処理)が可能となる。
【0068】
図5は図4で説明した操作表示部211に表示される認証処理(ログイン処理)に必要な画面の例を示した図である。
【0069】
図5(a)は、図4のステップS405で表示される認証用画面(ログイン画面)の例を示した図である。500はログインに必要な入力領域であり、ボタンを配置した画面を示している。501はログインに必要な情報としてのユーザ名を入力する領域である。また、502はログインに必要な情報としてのパスワードを入力する領域である。
【0070】
503はログインボタンである。このボタンを押下することで、図4のステップS407以降で説明した認証処理(ログイン処理)が行われる。
【0071】
図5(b)は、図4のステップS418で表示されるエラー画面を示した図である。504はエラーメッセージを表示する領域であり、図中のOKボタンを押下することによりエラー画面を非表示にし、図5(a)の500のログインに必要な入力領域、ボタンを配置した画面を再び表示させることが可能である。
【0072】
図6は図4のステップS411で認証結果がOKである場合に、操作表示部211に表示されるメインメニューの例を示している。図6のメインメニューではMFP101での操作に必要な各種メニューのアイコンやボタンが並んでいる様子を示している。この画面によりユーザはMFP101の各種機能やサービスを利用することが可能となる。
【0073】
(第2の実施形態)
次に、本発明の第2の実施形態について説明する。なお、システム構成などは第1の実施形態と同等のため、ここでは、第1の実施形態と差異のある部分のみについて説明する。第2の実施形態は、認証処理(ログイン処理)を行う点で第1の実施形態と共通するが、プロキシアプリ305の処理をWebブラウザ302で行う点で第1の実施形態と異なる。
【0074】
図7は、第2の実施形態におけるシステム全体のソフトウェア構成を説明する図である。ここでは、第1の実施形態の図3と比べると、プロキシアプリ305がなくなり、Webブラウザ302がその処理を行う点が異なる。
【0075】
図7に示す各機能部は、MFP101内のCPU201が、ROM203もしくはHDD204に格納された制御プログラムを読み出して実行することで実現される。
【0076】
Webブラウザ302は、Webサーバ301と通信を行い、Webサーバ301からWebコンテンツを取得して、操作表示部211に表示する。さらに、Webブラウザ302は、操作入力部212を介して入力されたユーザ指示を元にWebサーバ104にリクエストを送信する。
【0077】
Webブラウザ302は、コンテンツ取得部320、画面描画部321、入力情報解析部322、認証要求部323から構成される。
【0078】
コンテンツ取得部320および画面描画部321は、第1の実施形態で説明したものと同じであるため、説明を割愛する。ただし、ここではコンテンツ取得部320は認証アプリ301と直接、通信する。
【0079】
入力情報解析部322は、操作表示部211に表示された認証用画面(ログイン画面)より、ユーザが指定した内容にログイン情報が含まれているか否かを判定する。そして、後述するWebブラウザ302の認証要求部323を通して認証サービス303に認証要求を依頼する。
【0080】
認証要求部323は、認証サービス303に対してログイン情報と共に認証要求を依頼し、その結果を取得する。前述の認証要求において認証結果がNGである場合には、認証画面生成部310にエラー画面を要求する。
【0081】
ウィンドウマネージャ304は、操作表示部211に表示するWebブラウザ302やその他のアプリケーションの画面を切り替えたり、各アプリケーションに画面を切り替えたりするためのボタンの表示制御を行う。ウィンドウマネージャ302は、画面描画制御部340から構成される。
【0082】
画面描画制御部340は、画面描画部321やアクセス制御部331の指示を受けて、操作表示部211に表示する画面を切り替える。具体的には、画面描画部321から画面描画要求があった場合には、前述のログイン画面あるいはエラー画面を表示する。さらに、アクセス制御部331から画面描画要求があった場合には、ログイン画面からメインメニュー表示に切り替える。
【0083】
図8は、第2の実施形態の本システムにおける、認証処理(ログイン処理)の一連のフロー図である。図8のフロー図に示す各動作は、MFP101のCPU201が制御プログラムを実行することにより実現される。
【0084】
ステップS801で、Webブラウザ302はWebサーバ104の認証アプリ301に対して認証用画面(ログイン画面)を要求する。
【0085】
次に、ステップS802で、認証アプリ301はWebブラウザ302に生成した認証用画面を送信する。
【0086】
ステップS803で、Webブラウザ302は取得した認証用画面を操作表示部211に表示する。
【0087】
次に、ステップS804で、ユーザはMFP101にログインすべく、Webブラウザ302で表示した認証用画面にログイン情報を入力する。
【0088】
ステップS804で入力された情報にはログイン情報が含まれているので、ステップS805に進み、Webブラウザ302の認証要求部323が認証サービス303の認証機能実行部330に認証要求を行う。その際、入力されたログイン情報も一緒に送信する。
【0089】
次に、ステップS806で、認証サービス303の認証機能実行部330は認証処理を行う。次に、ステップS807へ進み、ステップS807の認証処理において認証結果がOKであるかNGであるかを判定する。ここで認証結果がOKである場合にはステップS808に進み、認証サービス303のアクセス制御部331がウィンドウマネージャ304に画面切り替え要求を行う。ステップS809では、ウィンドウマネージャ304の画面描画制御部340が操作表示部211に表示する画面をメインメニュー画面に切り替える制御を行う。これにより、ログインが成功したこととなり、ステップS810で、Webブラウザ302は、ローカルのメニュー画面を操作表示部211に表示する。
【0090】
一方、ステップS807で認証結果がNGであると判定された場合には、ステップS811で、認証サービス303はWebブラウザ302へエラー画面を要求する。ステップ812で、Webブラウザ302は、認証サービス303からのエラー画面要求をそのまま認証アプリ301に対して行う。
【0091】
ステップS813で、認証アプリ301がステップS812で要求されたエラー画面を生成し、要求画面としてWebブラウザ302へ送信する。
【0092】
ステップS814で、Webブラウザ302は受け取ったエラー画面を操作表示部211に表示する。
【0093】
ここで、図8で説明した操作表示部211に表示される認証処理(ログイン処理)に必要な画面の例は、第1の実施形態で説明した、図5及び図6と同様であるため、ここでは説明を省略する。
【0094】
このようにMFP101への認証処理(ログイン処理)が可能となる。
【0095】
(第3の実施形態)
次に、本発明の第3の実施形態について説明する。なお、システム構成などは第1の実施形態と同等のため、ここでは、第1の実施形態と差異のある部分のみについて説明する。第3の実施形態は、認証処理(ログイン処理)を行う点で第1の実施形態と共通するが、ICカード認証が指示された場合には、認証処理(ログイン処理)をICカード認証により行う点で第1の実施形態と異なる。
【0096】
図9は本発明の第3の実施形態におけるシステム全体のソフトウェア構成を説明する図である。図9に示す各機能部は、MFP101内のCPU201が、ROM203もしくはHDD204に格納された制御プログラムを読み出して実行することで実現される。
【0097】
ここでは、第1の実施形態で説明した図3との差分について説明する。
【0098】
図3との差分は、プロキシアプリ305においてカード認証処理部352が追加されている。また、MFP101において、デバイス入出力サービス901が追加されている。その他は図3と同様である。
【0099】
図9のデバイス入出力サービス901は、デバイス入出力制御部910で構成される。デバイス入出力制御部910は、前述の図2で説明したデバイス入出力I/F215と通信し、USBカード認証デバイス216を使用可能にする。また、デバイス入出力制御部910は、USBカード認証デバイス216の認証情報を取得する。ここでの認証情報とは、ユーザがUSBカード認証デバイス216にかざしたICカードに格納された、ユーザ名やパスワードといったログインを行うための情報を意味する。
【0100】
カード認証処理部352は、デバイス入出力サービス901のデバイス入出力制御部910と通信し、USBカード認証デバイス216を使用可能にすべく要求を出す。また、カード認証処理部352は、USBカード認証デバイス216からのログイン情報を取得するなどの処理を行う。
【0101】
また、第3の実施形態において、プロキシアプリ305のデータ監視部350は、Webブラウザ302が送受信するデータの内容を監視するだけでなく、カード認証処理部352が取得したログイン情報も監視する。
【0102】
図10は、第3の実施形態における、認証処理(ログイン処理)の一連のフロー図である。図9のフロー図に示す各動作は、MFP101のCPU201が制御プログラムを実行することにより実現される。
【0103】
ステップS1001では、Webブラウザ302は、Webサーバ104の認証アプリ301に対して認証用画面(図11(a)に示すログイン画面)を要求する。ここで、第3の実施形態でもプロキシアプリ305が存在するので、実際はWebブラウザ302の認証用画面の要求はプロキシアプリ305を介して行われる。したがって、ステップS1001ではWebブラウザ302の認証用画面の要求はプロキシアプリ305への指示となる。Webブラウザ302および認証アプリ301に対して通信する際にプロキシアプリ305を介して行われることになるので、ここでは、明示的にプロキシアプリ305への指示として説明する。
【0104】
ステップS1002で、プロキシアプリ305は、Webブラウザ302の要求を認証アプリ301へそのまま通知する。すなわち、プロキシアプリ305は認証アプリ301に対して認証用画面要求を行う。
【0105】
ステップS1003で、認証アプリ301は、前述のステップS1002で要求された認証用画面を生成し、プロキシアプリ305へ送信する。次に、ステップS1004で、プロキシアプリ305は、取得した認証用画面をWebブラウザ302に送信する。
【0106】
ステップS1005で、Webブラウザ302は取得した認証用画面(図11(a)参照)を操作表示部211に表示する。次に、ステップS1006で、ユーザはMFP101にログインすべく、Webブラウザ302で表示した認証用画面にログイン情報を入力するか、又はICカード認証を行うかを選択する。そして、Webブラウザ302は、ユーザにより入力された情報をプロキシアプリ305に送信する。
【0107】
ステップS1008で、プロキシアプリ305は、受信した情報に基づいて、Webブラウザ302によりICカード認証が要求されたか否かを判定する。ステップS1008でICカードの認証が要求されたと判定された場合には、ステップS1009でデバイス入出力サービス901に対して、ICカードの認証を可能にすべく、USBカード認証デバイス216を使用可能にする要求を出す。次に、ステップS1010で、デバイス入出力サービス901は、USBカード認証デバイス216を使用可能にし、ICカード認証に切り替える処理を行う。
【0108】
ステップS1011で、デバイス入出力サービス901は、プロキシアプリ305に対して、ユーザにカードをかざすことを指示するための画面要求を行う。ステップS1012で、プロキシアプリ305は、デバイス入出力サービス901の要求を認証アプリ301へそのまま通知する。
【0109】
ステップS1013で、認証アプリ301は、前述のステップS1012で要求されたカード入力指示画面を生成し、プロキシアプリ305へ送信する。次に、ステップS1014で、プロキシアプリ305は、取得したカード入力指示画面をWebブラウザ302に送信する。
【0110】
ステップS1015で、Webブラウザ302は、取得したカード入力指示画面(図11(b)参照)を操作表示部211に表示する。次に、ステップS1016で、カード入力指示画面の指示に従ってUSBカード認証デバイス216にICカードをかざすことにより、ログイン情報を入力する。そして、ステップS1017で、デバイス入出力サービス901は、ユーザにより入力されたログイン情報をプロキシアプリ305に送信する。ステップS1018で、プロキシアプリ305は、認証サービス303に認証要求を行う。ステップS1019で、認証サービス303の認証機能実行部330は、受信した情報に基づいて認証処理を行う。
【0111】
次に、ステップS1020へ進み、ステップS1019の認証処理の認証結果がOKであるかNGであるかを判定する。認証結果がOKである場合にはステップS1021に進み、認証サービス303のアクセス制御部331がウィンドウマネージャ304に画面切り替え要求を行う。ステップS1022では、ウィンドウマネージャ304の画面描画制御部340が操作表示部211に表示する画面をメインメニュー画面に切り替える制御を行う。これにより、ログインが成功したこととなり、ステップS1023で、Webブラウザ302は、ローカルのメニュー画面を操作表示部211に表示する。
【0112】
一方、ステップS1020で認証結果がNGであると判定された場合には、ステップS1024で、認証サービス303はプロキシアプリ305へエラー画面を要求する。ステップ1025で、プロキシアプリ305は、認証サービス303からのエラー画面要求をそのまま認証アプリ301に対して行う。
【0113】
ステップS1026で、認証アプリ301がステップS1025で要求されたエラー画面を生成し、要求画面としてプロキシアプリ305へ送信する。
【0114】
ステップS1027で、プロキシアプリ305は受け取った要求画面(エラー画面)をそのままWebブラウザ302へ送信する。
【0115】
ステップS1028で、Webブラウザ302は受け取ったエラー画面を操作表示部211に表示する。
【0116】
このようにMFP101への認証処理(ログイン処理)において、USBカード認証デバイス216を使用したICカード認証が可能となる。
【0117】
なお、前述のステップS1008でICカードの認証が要求されたと判定されなかった場合、つまり、第1の実施形態と同様にステップS1007でログイン情報がWebブラウザ302からプロキシアプリ305に送信された場合には、図4のS408からの処理と同様の処理を行う。
【0118】
図11は図9で説明した操作表示部211に表示される認証処理(ログイン処理)に必要な画面の例を示した図である。
【0119】
図11(a)は第3の実施形態において、最初に表示されるキーボード認証用画面(ログイン画面)の例を示した図である。図中1100はログインに必要なユーザ名およびパスワード等を入力する入力領域、ボタンを配置した画面を示している。1102はログインボタンであり、ユーザは前述のユーザ名およびパスワード領域に入力した値でログインを行うときは、このログインボタン1102を押下する。このログインボタン1102を押下することで、第1の実施形態で説明した認証処理(ログイン処理)と同様の処理が行われる。
【0120】
1101はICカード認証画面に切り替えるためのボタンである。第3の実施形態において、このICカード認証の切換えボタン1101が押下されると、ICカード認証処理を行うべく、前述のステップS1007からの処理が行われる。一方、ログインボタンが押下されると、第1の実施形態と同様の処理となり、図4のS407からの処理が行われる。
【0121】
図11(b)は図10のステップS1015で表示されるICカード入力指示画面を示した図である。1110はメッセージおよびボタンを表示する領域であり、ICカードをUSBカード認証デバイス216にかざすことを指示する旨のメッセージを表示している。図中1111はキーボード認証のための切り替えボタンである。このキーボード認証ボタンを押下すると、Webブラウザ302は認証アプリ301に対してキーボード認証用の画面を要求し、前述の図11(a)の画面を表示する。
【0122】
(他の実施形態)
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【特許請求の範囲】
【請求項1】
ネットワークに接続されたWebサーバのWebアプリケーションから提供される操作画面を表示するWebブラウザを有する情報処理装置であって、
前記Webブラウザから前記Webサーバに送信されるべきリクエストデータが認証リクエストデータであるか否かを判定し、認証リクエストデータである場合に、前記Webサーバに前記認証リクエストデータを送信する代わりに、前記情報処理装置が備える認証サービスに前記認証リクエストデータを送信し、認証が成功した場合に前記情報処理装置が備える機能のユーザによる使用を許可することを特徴とする情報処理装置。
【請求項2】
ネットワークに接続されたWebサーバのWebアプリケーションから提供される操作画面を表示するWebブラウザを有する情報処理装置であって、
前記Webブラウザと前記Webサーバとの間で送受信されるリクエストデータを監視する監視アプリを有し、
前記監視アプリが、
前記Webブラウザから前記Webサーバに送信されるべきリクエストデータが認証リクエストデータであるか否かを判定し、認証リクエストデータである場合に、前記Webサーバに前記認証リクエストデータを送信する代わりに、前記情報処理装置が備える認証サービスに前記認証リクエストデータを送信し、認証が成功した場合に前記情報処理装置が備える機能のユーザによる使用を許可することを特徴とする情報処理装置。
【請求項3】
ネットワークに接続されたWebサーバのWebアプリケーションから提供される操作画面を表示するWebブラウザを有する情報処理装置であって、
前記Webブラウザから前記Webサーバに送信されるべきリクエストデータが、認証データが予め格納されたICカードを用いた認証リクエストデータであるか否かを判定し、前記リクエストデータが前記ICカードを用いた認証リクエストデータである場合に、前記情報処理装置が備えるデバイス入出力サービスに前記ICカードから認証データを読み取るためのデバイスを使用可能にするためのリクエストデータを送信し、かつ、前記Webサーバに前記認証リクエストデータを送信する代わりに、前記情報処理装置が備える認証サービスに前記認証リクエストデータを送信し、認証が成功した場合に前記情報処理装置が備える機能のユーザによる使用を許可することを特徴とする情報処理装置。
【請求項4】
情報処理装置であって、
ネットワークに接続されたWebサーバから認証のための操作画面を取得し、取得した操作画面を表示することによりユーザからの認証データの入力操作を受け付け、受け付けた認証データを用いた認証処理を前記情報処理装置で行い、認証が成功した場合に前記情報処理装置が備える機能のユーザによる使用を許可することを特徴とする情報処理装置。
【請求項5】
情報処理装置の制御方法であって、
ネットワークに接続されたWebサーバから認証のための操作画面を取得し、取得した操作画面を表示することによりユーザからの認証データの入力操作を受け付け、受け付けた認証データを用いた認証処理を前記情報処理装置で行い、認証が成功した場合に前記情報処理装置が備える機能のユーザによる使用を許可することを特徴とする制御方法。
【請求項1】
ネットワークに接続されたWebサーバのWebアプリケーションから提供される操作画面を表示するWebブラウザを有する情報処理装置であって、
前記Webブラウザから前記Webサーバに送信されるべきリクエストデータが認証リクエストデータであるか否かを判定し、認証リクエストデータである場合に、前記Webサーバに前記認証リクエストデータを送信する代わりに、前記情報処理装置が備える認証サービスに前記認証リクエストデータを送信し、認証が成功した場合に前記情報処理装置が備える機能のユーザによる使用を許可することを特徴とする情報処理装置。
【請求項2】
ネットワークに接続されたWebサーバのWebアプリケーションから提供される操作画面を表示するWebブラウザを有する情報処理装置であって、
前記Webブラウザと前記Webサーバとの間で送受信されるリクエストデータを監視する監視アプリを有し、
前記監視アプリが、
前記Webブラウザから前記Webサーバに送信されるべきリクエストデータが認証リクエストデータであるか否かを判定し、認証リクエストデータである場合に、前記Webサーバに前記認証リクエストデータを送信する代わりに、前記情報処理装置が備える認証サービスに前記認証リクエストデータを送信し、認証が成功した場合に前記情報処理装置が備える機能のユーザによる使用を許可することを特徴とする情報処理装置。
【請求項3】
ネットワークに接続されたWebサーバのWebアプリケーションから提供される操作画面を表示するWebブラウザを有する情報処理装置であって、
前記Webブラウザから前記Webサーバに送信されるべきリクエストデータが、認証データが予め格納されたICカードを用いた認証リクエストデータであるか否かを判定し、前記リクエストデータが前記ICカードを用いた認証リクエストデータである場合に、前記情報処理装置が備えるデバイス入出力サービスに前記ICカードから認証データを読み取るためのデバイスを使用可能にするためのリクエストデータを送信し、かつ、前記Webサーバに前記認証リクエストデータを送信する代わりに、前記情報処理装置が備える認証サービスに前記認証リクエストデータを送信し、認証が成功した場合に前記情報処理装置が備える機能のユーザによる使用を許可することを特徴とする情報処理装置。
【請求項4】
情報処理装置であって、
ネットワークに接続されたWebサーバから認証のための操作画面を取得し、取得した操作画面を表示することによりユーザからの認証データの入力操作を受け付け、受け付けた認証データを用いた認証処理を前記情報処理装置で行い、認証が成功した場合に前記情報処理装置が備える機能のユーザによる使用を許可することを特徴とする情報処理装置。
【請求項5】
情報処理装置の制御方法であって、
ネットワークに接続されたWebサーバから認証のための操作画面を取得し、取得した操作画面を表示することによりユーザからの認証データの入力操作を受け付け、受け付けた認証データを用いた認証処理を前記情報処理装置で行い、認証が成功した場合に前記情報処理装置が備える機能のユーザによる使用を許可することを特徴とする制御方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2012−164219(P2012−164219A)
【公開日】平成24年8月30日(2012.8.30)
【国際特許分類】
【出願番号】特願2011−25342(P2011−25342)
【出願日】平成23年2月8日(2011.2.8)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成24年8月30日(2012.8.30)
【国際特許分類】
【出願日】平成23年2月8日(2011.2.8)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]