情報処理装置、情報処理方法、及びコンピュータプログラム
【課題】 認証に用いるパスワードの複雑性評価に従った表示を行い、ユーザに対してパスワード登録の際に参考情報を提示する。
【解決手段】 ユーザによるパスワード入力欄に対する編集処理に応じて、当該入力欄に入力されて文字列についての複雑性評価をウェブサーバに対して要求する。ウェブサーバでは、当該ユーザの氏名や生年月日、また、文字列の法則性などに従った当該パスワードの複雑性評価かを行う。そしてその結果に応じてクライアント側では、パスワードの複雑性をユーザに認識させるべく、複雑性が低い場合にはパスワード入力欄の背景色を変える等、警告表示を行う。
【解決手段】 ユーザによるパスワード入力欄に対する編集処理に応じて、当該入力欄に入力されて文字列についての複雑性評価をウェブサーバに対して要求する。ウェブサーバでは、当該ユーザの氏名や生年月日、また、文字列の法則性などに従った当該パスワードの複雑性評価かを行う。そしてその結果に応じてクライアント側では、パスワードの複雑性をユーザに認識させるべく、複雑性が低い場合にはパスワード入力欄の背景色を変える等、警告表示を行う。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ウェブアプリケーションが提供するパスワード入力画面の表示に関し、特に、ユーザが登録するパスワードの複雑性に関する情報をユーザが認識可能に表示する技術に関する。
【背景技術】
【0002】
近年、インターネット上には無数のウェブサイトが公開され、それぞれのウェブサイトは、ウェブアプリケーションを用いた多様なウェブサービスを提供している。例えば、インターネットバンキングや、オンラインショッピングなどのウェブサービスが広く行われている。それらのウェブサービスを利用する場合には、ユーザは、それぞれのウェブサイトにユーザ登録を行う必要があり、その際には、認証に用いるパスワードの登録を行うことが一般的である。
【0003】
このような、ウェブサイトが提供するウェブサービスは利便性が高いため、多くのユーザにとって不可欠なものとなりつつあるが、その利用に伴い、ユーザは成りすましによる不正利用など、様々なリスクに晒されることにもなる。
【0004】
不正利用の対策は様々あるが、認証に用いるパスワードの複雑性を高めることが有効的な手段の1つとして挙げられる。例えば、パスワードを登録する際には所定の文字数以上のパスワードを設定するようにする、アルファベット及び数字の双方を必ず1字以上使用させる、等の対策をとっていることが一般的である。これによりパスワードの複雑性を高めることはできる。
【0005】
このような、パスワードを登録する場合には、ユーザがパスワードとして用いる文字列を入力後、登録ボタンに対する押下指示を受け付けることでウェブサービスを提供するウェブサーバにパスワードが送信され、ウェブサーバは受信した文字列が、パスワードとしての登録可能要件を満たすかを判定し、登録可能要件を満たしていると判定した場合には、受信した文字列をパスワードとして登録し、満たしていないと判定した場合には、パスワードとして用いる文字列を再度ユーザに入力させることになる。
【0006】
また、パスワードの登録に際しては、周囲から入力操作を盗み見される等の、ソーシャルエンジニアリングの危険にも晒される。このようなソーシャルエンジニアリングに対処すべく、例えば特許文献1に開示されている発明がなされている。この発明は、ユーザが入力したパスワード文字をマスクするエコー文字の文字数を複数文字とすることで、ユーザが入力したパスワードの文字数が漏洩することを防ぐためのものである。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2004−21560号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
パスワードの複雑性を求めようとした場合に、従来の方法では、ユーザがパスワードと使用する文字列の入力を一旦確定しなければその複雑性の判断が行われなかった。このため、ウェブサイトが要求するパスワードの複雑性を満たさない文字列の入力が行われた場合に、入力のやり直しを行わなくてはならず、ソーシャルエンジニアリングの危険にさらに晒されることになってしまう。
【0009】
また、上述のパスワードの文字数制限や、アルファベットと数字の双方を使用するといった程度の複雑性のみを求めるのであれば、ユーザに対するパスワード制限に関する表示を容易に行うことができるが、さらなる複雑性を要求する場合には、その全ての要件をユーザに提供することは困難である。
【0010】
この場合、一旦確定された文字列がパスワードとして不適切として判断された理由を表示してユーザに通知することが想定されるが、不適切となった原因が1つ見つかった場合に、それ以外の要件については適切/不適切の判定を行わず、それらの要件を満たすか否かの情報はユーザには通知されず、結局はトライアンドエラーを繰り返す原因になってしまうことが想定される。
【0011】
そこで、本発明は、パスワードの登録に関し、パスワードとして用いる文字列の入力を確定させる前にユーザにウェブサイトが要求する複雑性を満たすか等、パスワードの複雑性に関する情報を表示することで、ユーザに報知可能な技術を提供することを目的とする。
【課題を解決するための手段】
【0012】
上記した目的を達成するために、本発明の情報処理装置は、ユーザの認証処理に用いるパスワードの入力を受け付ける情報処理装置であって、前記パスワードの入力を受け付ける第1の入力領域を含む入力画面を表示する表示手段と、前記表示手段により表示された前記入力画面に含まれる前記第1の入力領域に対するパスワードの入力を受け付ける第1の受付手段と、前記第1の受付手段で前記第1の入力領域に対するパスワード入力を受け付けることに応じて、該入力されたパスワードをサーバ装置に送信することで、前記第1の入力領域に対して入力されたパスワードの複雑性の度合いをユーザに報知するための評価情報の作成要求をサーバ装置に対して行う要求手段と、前記要求手段による評価情報の作成要求に応じてサーバ装置で作成される評価情報を取得する取得手段と、前記評価情報に応じて、ユーザに対してパスワードの複雑性の度合いを示す情報を表示する表示制御手段と、を備えることを特徴とする。
【0013】
上記した目的を達成するために、本発明の情報処理方法は、ユーザの認証処理に用いるパスワードの入力を受け付ける情報処理装置による情報処理方法であって、前記パスワードの入力を受け付ける第1の入力領域を含む入力画面を表示する表示工程と、前記表示工程により表示された前記入力画面に含まれる前記第1の入力領域に対するパスワードの入力を受け付ける第1の受付工程と、前記第1の受付工程で前記第1の入力領域に対するパスワード入力を受け付けることに応じて、該入力されたパスワードをサーバ装置に送信することで、前記第1の入力領域に対して入力されたパスワードの複雑性の度合いをユーザに報知するための評価情報の作成要求をサーバ装置に対して行う要求工程と、前記要求工程による評価情報の作成要求に応じてサーバ装置で作成される評価情報を取得する取得工程と、前記評価情報に応じて、ユーザに対してパスワードの複雑性の度合いを示す情報を表示する表示制御工程と、を備えることを特徴とする。
【0014】
上記した目的を達成するために、本発明のコンピュータプログラムは、ユーザの認証処理に用いるパスワードの入力を受け付ける情報処理装置を、前記パスワードの入力を受け付ける第1の入力領域を含む入力画面を表示する表示手段と、前記表示手段により表示された前記入力画面に含まれる前記第1の入力領域に対するパスワードの入力を受け付ける第1の受付手段と、前記第1の受付手段で前記第1の入力領域に対するパスワード入力を受け付けることに応じて、該入力されたパスワードをサーバ装置に送信することで、前記第1の入力領域に対して入力されたパスワードの複雑性の度合いをユーザに報知するための評価情報の作成要求をサーバ装置に対して行う要求手段と、前記要求手段による評価情報の作成要求に応じてサーバ装置で作成される評価情報を取得する取得手段と、前記評価情報に応じて、ユーザに対してパスワードの複雑性の度合いを示す情報を表示する表示制御手段として機能させることを特徴とする。
【発明の効果】
【0015】
本発明によれば、ユーザによるパスワード入力が完了していなくとも、ユーザが文字入力するたびに、その時点で入力されている文字列がWebアプリケーションにおいて求められているパスワードの複雑性を満たしているかを知ることが出来る。
【図面の簡単な説明】
【0016】
【図1】本発明の情報処理システムのシステム構成の一例を示す図である。
【図2】図1に示す各装置に適用可能な情報処理装置のハードウェア構成の一例を示す図である。
【図3】図1に示す各装置の機能構成の一例を示す図である。
【図4】第1の実施形態の形態におけるユーザ情報登録処理を示すフローチャートである。
【図5】図5のステップS411のパスワードデータ入力受付処理の詳細を示すフローチャートである。
【図6】第1の実施形態におけるパスワード複雑性評価・登録処理の一例を示すフローチャートである。
【図7】ユーザ情報入力画面の構成の一例を示す図である。
【図8】パスワード入力画面の構成の一例を示す図である。
【図9】パスワード入力画面のパスワード複雑性情報表示の一例を示す図である。
【図10】第2の実施形態におけるユーザ情報入力処理を示すフローチャートである。
【図11】第2の実施形態におけるユーザ情報登録処理を示すフローチャートである。
【図12】第2の実施形態におけるパスワード複雑性評価・登録処理の一例を示すフローチャートである。
【図13】第2の実施形態におけるユーザ情報入力画面の構成の一例を示す図である。
【図14】ユーザ情報テーブルのデータ構成の一例を示す図である。
【発明を実施するための形態】
【0017】
以下、図面を参照して、本発明を実施するための形態の一例について説明する。
【0018】
図1は、本発明の情報処理システムのシステム構成の一例を示す図である。図1に示すように、本発明の情報処理システムは、クライアント装置101−1乃至101−3(以下、まとめてクライアント装置101とする)、ウェブサーバ102、アプリケーションサーバ(APサーバ)103、データベースサーバ(DBサーバ)104を備えて構成されている。
【0019】
クライアント装置101は、ウェブサーバ102が提供するウェブサイトによるウェブサービスを利用するユーザが操作するコンピュータであって、インターネット106等の広域回線網を介してウェブサーバ102にアクセスし、ウェブサービスを利用する。
【0020】
ウェブサーバ102は、クライアント装置101からの要求に応じて、ウェブサービスを提供するためのサーバ装置である。APサーバ103は、ウェブサーバが提供するウェブサービスで実行されるウェブアプリケーションを実行するサーバ装置であって、ウェブサーバ102から要求されたウェブアプリケーションを実行し、その処理結果をウェブサーバ102に通知する。DBサーバ104は、ウェブサーバ102、APサーバ103が利用する各種のデータを記憶するサーバ装置である。
【0021】
105はLAN(Local Area Network)であって、ウェブサーバ102、APサーバ103及びDBサーバ104を相互に通信可能に接続するためのネットワークである。
【0022】
次に、図2を参照して、図1に示す各装置(クライアント装置101、ウェブサーバ102、APサーバ103及びDBサーバ104)のハードウェア構成の一例について説明する。図2は、図1に示す各装置に適用可能な情報処理装置のハードウェア構成の一例を示す図である。
【0023】
図中、CPU201は、システムバス204に接続される後述の各デバイスやコントローラを統括的に制御する。また、ROM203あるいは外部メモリ211には、CPU201の制御プログラムであるBIOS(Basic Input / Output System)やオペレーティングシステムプログラム(以下、OS)や、各装置に後述する各種の処理を実行させるために必要な各種プログラムやデータ等が記憶されている。RAM202は、CPU201の主メモリ、ワークエリア等として機能する。
【0024】
CPU201は、処理の実行に際して必要なプログラム等をRAM202にロードして、プログラムを実行することで後述する各種処理を実現するものである。また、入力コントローラ(入力C)205は、キーボードやポインティングデバイス等で構成される入力装置209からの入力を制御する。ビデオコントローラ(VC)206は、ディスプレイ装置210等の表示装置への表示を制御する。ディスプレイ装置210は、例えばCRTディスプレイや液晶ディスプレイ等で構成される。
【0025】
メモリコントローラ(MC)207は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク(HD)やフロッピーディスク(登録商標 FD)或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュメモリ等の外部メモリ211へのアクセスを制御する。
【0026】
通信I/Fコントローラ(通信I/FC)208は、図1に示すLAN105やインターネット106等のネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いたインターネット通信等が可能である。
【0027】
なお、CPU201は、例えばRAM202内の表示情報用領域へアウトラインフォン
トの展開(ラスタライズ)処理を実行することにより、ディスプレイ装置210上での表
示を可能としている。また、CPU201は、ディスプレイ装置210上の不図示のマウ
スカーソル等でのユーザ指示を可能とする。以上が、ハードウェア構成の説明であるが、各装置が後述する各種の処理を実行可能であれば、必ずしも図2に記載のハードウェア構成を有していなくとも構わないことは言うまでもない。
【0028】
次に、図3を参照して、図1に示す各装置(クライアント装置101、ウェブサーバ102、APサーバ103、DBサーバ104)の機能構成について説明する。図3は、図1に示す各装置が備える機能構成を示す図である。
【0029】
図3に示す通り、クライアント装置101は、入力受付部301、表示制御部302、通信部303を備えており、通信部303は、同期通信部303−1、非同期通信部303−2を含む。
【0030】
入力受付部301は、ウェブサーバに接続する際に用いられるURL情報や、後述するユーザ情報入力画面700やパスワード入力画面800を介しての各種情報の入力を受け付ける。表示制御部302は、ウェブサーバ102より受信したレスポンスデータに従った画面表示(例えば、ユーザ情報入力画面700やパスワード入力画面800の表示)をウェブブラウザに対して行う。
【0031】
通信部303は、ウェブサーバ102とHTTP等による通信を行う。尚、同期通信部303−1は、ウェブサーバ102との間で同期通信を行う。非同期通信部303−2は、JavaScriptのクラスライブラリである「XMLHttpRequest」を用いて、ウェブサーバ102に非同期通信でHTTPリクエストを送る。また、当該HTTPリクエストに応じてウェブサーバ102より送信されるレスポンスデータについては、非同期通信部303−2が提供するコールバック機能を用いて受信することになる。
【0032】
ウェブサーバ102は、実行要求部311、応答データ生成部312、通信部313を備えており、通信部313は、同期通信部313−1、非同期通信部313−2を含む。
【0033】
実行要求部311は、後述する通信部313でクライアント装置101から受信したHTTPリクエストデータに含まれるリクエストURLを解析することでサービスの実行要求であるかを判定し、サービス実行要求であると判定した場合には、APサーバ103に対してサービス実行要求を行う。例えば、リクエストURLに含まれるファイルの拡張子が「do」である場合に、サービスの実行要求であると判定する。
【0034】
応答データ生成部312は、クライアント装置101からのHTTPリクエストデータに対する応答データであるレスポンスデータを生成する。そして生成したレスポンスデータを通信部313に渡す。
【0035】
通信部313は、クライアント装置101とHTTPを用いた通信を行うための機能部であり、同期通信部313−1はクライアント装置101の同期通信部303−1と、非同期通信部313−2は、クライアント装置101の非同期通信部303−2との通信を行う。
【0036】
APサーバ103は、サービス実行部321、データ操作部322を備えており、サービス実行部321は実行要求受付部321−1、特定部321−2、処理実行部321−3を含み、データ操作部322は、データ取得部322−1、データ登録部322−2を含む。
【0037】
サービス実行部321は、ウェブサーバ102からの要求に応じてAPサーバ103が提供するサービスを実行する機能部である。APサーバ103が提供するサービスとしては、例えばパスワード複雑性評価を行うためのパスワード検証サービスや、ユーザ情報登録サービス等がある。
【0038】
実行要求受付部321−1は、ウェブサーバ102の実行要求部311からのサービスの実行要求を受け付ける機能部である。サービス特定部321−2は、実行要求受付部321−1で受け付けたサービスの実行要求に従って、実行すべきサービスを特定する。処理実行部321−3は、サービス特定部321−2で実行するサービスとして特定されたサービスを実行し、その処理結果をウェブサーバ102の実行要求部311に返す。
【0039】
データ操作部322は、DBサーバ104で管理されているユーザ情報テーブル等のデータベースを操作するための機能部であり、データ取得部322−1は、DBサーバ104が管理するデータベースより、各種のデータを取得する機能部である。データ登録部322−2は、データベースにデータを追加する、データベースからデータを削除する、既に登録されているデータを変更する機能部である。
【0040】
DBサーバ104は、記憶部331を備えており、この記憶部331で後述する処理で用いられる各種データや、作成される各種データを記憶することになる。以上が図1に示す各装置の機能構成の説明である。
【0041】
<第1の実施の形態>
次に、図4を参照して、クライアント装置101のCPU201、ウェブサーバ102のCPU201、及びAPサーバ103のCPUによって行われる、本発明の第1の実施の形態におけるユーザ情報登録処理について説明する。本図のステップS401からS411に示す処理はクライアント装置101のCPU201によって、ステップS421からS426に示す処理はウェブサーバ102のCPU201によって、ステップS441からS444に示す処理はAPサーバ103のCPU201によって行われる処理である。
【0042】
まず、クライアント装置101は、ユーザの入力装置209操作に従って、アクセスするウェブサーバ102を特定するためのURL情報の入力を受け付ける(ステップS401)。そして、ステップS401で入力されたURLで特定されるウェブサーバ102に対して、画面要求のためにリクエストデータを送信する(ステップS402)。
【0043】
ウェブサーバ102のCPU201は、クライアント装置101より送信された画面要求のためのリクエストデータを取得すると(ステップS421)、表示画面情報を含むレスポンスデータを、当該要求を行ってきたクライアント装置101に対して送信する(ステップS422)。
【0044】
クライアント装置101のCPU201は、ウェブサーバ102から送信された表示画面情報を含むレスポンスデータを受信すると(ステップS403)、受信した表示画面情報に従って、画面表示を行う(ステップS404)。ここでは、例えば図7に示すユーザ情報入力画面700が表示されることになる。
【0045】
ここで、図7を参照して、ユーザ情報入力画面700の構成について説明する。図7はユーザ情報入力画面700の構成の一例を示す図である。
【0046】
図7に示す通り、ユーザ情報入力画面700は、氏名入力欄701、氏名(ローマ字)入力欄702、性別入力欄703、生年月日入力欄704、住所入力欄705、電話番号入力欄706、職業入力欄707、メールアドレス入力欄708、メールアドレス確認入力欄709、ログインユーザ名入力欄710、次(パスワード入力)へボタン711等を備えて構成されている。
【0047】
ユーザは、本画面に設定されている各入力欄に自身に関する情報を、入力装置209を用いて夫々の入力欄に対して入力することになる。そして、入力が必須となっている全ての入力欄に対する入力を受け付けると次(パスワード入力)へボタン711が有効となる。尚、ログインユーザ名入力欄710には、ユーザが当該ウェブサービスを利用する際に用いるユーザ名の入力を受け付けることになる。
【0048】
図4の説明に戻る。クライアント装置101のCPU201は、ステップS404で表示したユーザ情報入力画面700を介してのユーザからのユーザ情報入力を受け付ける(ステップS405)。その後、ユーザ情報入力画面700の次(パスワード入力)へボタン711の押下指示により入力される登録指示の入力を受け付けると(ステップS406でYES)、ユーザ情報入力画面700に対して入力されたユーザ情報を登録するためのリクエストデータを作成し、そのリクエストデータをウェブサーバ102に対して送信する(ステップS407)。
【0049】
クライアント装置101から送信されたユーザ情報を登録のためのリクエストデータを受信すると(ステップS423)、ウェブサーバ102のCPU201は、APサーバ103に対してユーザ情報の登録のためのプログラムの実行要求を行う(ステップS424)。この時に合わせて、クライアント装置101から取得したユーザ情報をAPサーバ103に対して送信する。
【0050】
APサーバ103のCPU201は、ウェブサーバ102からのユーザ登録プログラム実行要求を受け付けると(ステップS441)、ユーザ登録プログラムを実行し(ステップS442)、DBサーバ104が備えるユーザ情報テーブル1400にユーザ情報を登録する(ステップS443)。そしてその処理結果をAPサーバ103に送信する(ステップS444)。
【0051】
ここで、図14を参照して、DBサーバ104の外部メモリ211に管理されているユーザ情報テーブル1400のデータ構成について説明する。図14は、ユーザ情報テーブル1400のデータ構成の一例を示す図である。
【0052】
図14に示す通り、ユーザ情報テーブル1400は、ユーザID1401、氏名1402、氏名(ローマ字)1403、性別1404、生年月日1405、住所1406、電話番号1407、職業1408、メールアドレス1409、ログインユーザ名1410、パスワード1411等のデータ項目を備えて構成されている。
【0053】
図7の説明に戻る。ウェブサーバ102は、APサーバ103から処理結果を受け取ると(ステップS425)、ユーザ情報登録結果を示すレスポンスデータを作成し、クライアント装置101に送信する(ステップS426)。この時、ユーザ情報登録に成功した場合には、図8に示すパスワード入力画面800を、失敗した場合には、不図示のエラー通知画面を表示するための画面情報を含むレスポンスデータを作成し、クライアント装置101に送信することになる。
【0054】
クライアント装置101のCPU201は、ウェブサーバ102からのレスポンスデータを取得すると(ステップS408)、処理をステップS409に進め、取得したレスポンスデータに従った画面表示を行う。つまりは、登録処理結果に応じて、図8に示すパスワード入力画面800若しくは、エラー通知画面の表示を行うことになる。
【0055】
そして、登録に失敗した場合(ステップS410でNO)には再度ユーザ情報入力画面700を表示させ、ステップS405からの処理を繰り返す。一方、登録に成功した場合(ステップS410でYES)には処理をステップS411に進め、パスワードデータ入力受付処理を行う。この処理の詳細については、図5を参照して説明することにする。以上が、図4のユーザ情報登録処理の説明である。
【0056】
尚、本発明では、このユーザ情報登録処理でユーザにより入力された氏名や、生年月日、電話番号などの情報を用いて、パスワードの複雑性を判断することになる。例えば、パスワードとして利用する文字列に、氏名情報や、生年月日が含まれていると、他人からパスワードの推測が容易になってしまうという問題があるので、それらに使用されている文字列を使用させないようにすることで、複雑性を担保するようにしている。
【0057】
次に、図5を参照して、図4のステップS411のパスワード入力受付処理の詳細について説明する。
【0058】
まず、クライアント装置101のCPU201は、ディスプレイ装置210に表示されているパスワード入力画面800に対するユーザ操作の監視を始める(ステップS501)。
【0059】
ここで、図8を参照して、パスワード入力画面800の画面構成について説明する。図8はパスワード入力画面800の構成の一例を示す図である。
【0060】
図8に示すように、パスワード入力画面800には、画面初期表示時には、パスワード入力欄801及び登録ボタン802を備えて構成される。
【0061】
パスワード入力欄801は、パスワードとして利用する文字列の入力を受け付ける受付欄である。本発明では、パスワード入力欄801の情報が編集されるたびに、クライアント装置101のCPU201は、この入力欄に入力された文字列情報を非同期通信部303−2によりウェブサーバ102に送信し、その後APサーバ103によって、その文字列の複雑性評価が行われることになる。そして、複雑性評価の結果をユーザに報知するための表示を本画面に行うことになる。また、このパスワード入力欄801は、パスワードの最大文字数より多くの文字数の入力は受け付けない。
【0062】
登録ボタン802は、パスワードの入力を確定させ、ウェブサーバ102に対してパスワードの登録を要求するために用いられるボタンである。尚、この登録ボタンは、パスワード入力欄801に入力された文字列が所定の文字数ではない場合、また、複雑性評価によりパスワードとして登録するための要件を満たさないと判断された場合には、グレーアウト表示され、登録指示を行うことができないように制御される。この登録ボタンが押された場合には、クライアント装置101のCPU201は、同期通信部303−1によりウェブサーバ102に入力された文字列を送信することになる。以上が図8のパスワード入力画面800の構成の説明である。
【0063】
図5の説明に戻る。ユーザの操作監視中、パスワード入力欄801に対する操作によりパスワードの編集が行われたと判断した場合に(ステップS502でYES)、処理をステップS503に進め、パスワード入力欄801に表示する文字数を変更する。尚、このパスワード入力欄には、どのような文字列が入力されたかを理解できないようにするために、入力された文字ではなく、「*」等をマスク文字として利用する。であるので、このステップS503では「*」の表示数を変更する処理が行われることになる。パスワード編集が行われていないと判断した場合には(ステップS502でNO)、処理をステップS516に進める。
【0064】
その後、パスワード入力欄801に入力された文字数が所定数以上であるかを判断し(ステップS504)、所定数以上ではないと判断した場合には(ステップS504でNO)、処理をステップS505に進め、登録ボタン802を無効し、グレーアウト表示する。
【0065】
その後、入力された文字列に対してパスワード複雑性評価処理結果を示すパスワード複雑性表示がパスワード入力画面800にされている場合には(ステップ506でYES)、その表示を消去する(ステップS507)。
【0066】
ステップS504の判定処理で、パスワード入力欄801に入力された文字数が所定数以上であると判定した場合には、処理をステップS508に進め、パスワード複雑性評価要求のリクエストデータを作成し、作成したリクエストデータをウェブサーバ102に対して非同期通信機能を用いて送信する(ステップS509)。この時、ユーザによる明示的な指示を行う必要はなく、クライアント装置101のCPU201がパスワード入力欄の入力内容に変更がされたと判定すると、自動的にこの処理を行うことになる。
【0067】
その後、ステップS509のリクエストデータに対する応答データであるレスポンスデータの受信待ち状態になる。その間、CPU201は他の処理を実行することが可能である。そして、ウェブサーバ102の非同期通信機能を用いて送信されたレスポンスデータを受信したと判断すると(ステップS510でYES)、処理をステップS511に進め、レスポンスデータに含まれるパスワード複雑性情報を取得する。そして、パスワード複雑性情報に従って、ディスプレイ装置210に表示されているパスワード入力画面にパスワード複雑性情報を示す複雑性表示を行う(ステップS512)。この時、パスワード入力画面全体の表示情報をリフレッシュするのではなく、表示変更を行う必要がある部分のみ表示の更新が行われる。
【0068】
そして、ステップS511で取得したパスワード複雑性情報に従い、現在入力中のパスワードを登録可能であるかを判定し、パスワードの登録要件を満たし登録可能であると判定した場合には(ステップS513でYES)、登録ボタンを有効にする(ステップS514)。一方、パスワードの登録要件を満たさないと判定した場合には(ステップS513でNO)、登録ボタンを無効にする(ステップS515)。そして、ステップS501に処理を移行させる。
【0069】
ステップS502の判定処理でユーザから受け付けた操作がパスワード編集操作ではないと判定した場合には(ステップS502でNO)、処理をステップS516に進め、登録ボタン802の押下指示をCPU201が、登録ボタンの押下指示を受け付けたかを判定する。CPU201が、登録ボタン802の押下指示を受け付けたと判定した場合には(ステップS516でYES)、パスワード文字列を含む当該パスワード文字列を含むパスワード登録要求のリクエストデータを作成し(ステップS517)、作成したリクエストデータをウェブサーバ102に同期通信で送信する(ステップS518)そして、その後ウェブサーバからのレスポンスデータを受信し(ステップS519)、当該レスポンスデータに応じた画面表示を行い、本処理を終了する。
【0070】
ステップS516で登録ボタンに対する押下指示を受け付けていないと判定した場合には(ステップS516でNO)、終了指示を受け付けたかを判定する(ステップS520)。ステップS520で終了指示を受け付けたと判定した場合には(ステップS520でYES)、パスワード登録処理を行うことなく本処理を終了する。一方、登録ボタンの押下指示も終了指示も受け付けていない場合にはステップS501に処理を進め、それ以降の処理を繰り返し行うことになる。以上がクライアント装置101によって行われるパスワードデータ入力受付処理の詳細である。
【0071】
次に、図6を参照して、クライアント装置101でのパスワードデータ入力受付処理に応じてウェブサーバ102及びAPサーバ103によって行われるパスワード複雑性評価・登録処理について説明する。
【0072】
まず、ウェブサーバ102のCPU201は、クライアント装置101からのリクエストデータを受信すると(ステップS601)、該受信したリクエストデータをAPサーバ103に転送する(ステップS602)。ウェブサーバ102がステップS601でクライアント装置101から受信するリクエストデータとしては、図5のステップS509で送信されたパスワード複雑性評価要求のリクエストデータ(非同期通信)、図5のステップS518で送信されたパスワード登録要求のリクエストデータ(同期通信)があげられる。
【0073】
APサーバ103のCPU201は、ウェブサーバ102からリクエストデータを転送されると(ステップS621)、転送されたリクエストデータの種類を特定する。APサーバ103は、特定されたリクエストデータの種類によって、実行するサービスを特定する(ステップS622)ことになる。
【0074】
ウェブサーバ102より転送されたリクエストデータがパスワード登録要求のリクエストデータであると判定した場合には(ステップS623で「登録」)、パスワードを登録するためのサービスを実行し(ステップS624)、DBサーバ104が記憶しているユーザ情報テーブル1400にパスワードを追加登録する(ステップS625)。そして、その処理結果をDBサーバ104より受信し(ステップS626)、ウェブサーバ102に送信する(ステップS627)。
【0075】
一方で、ステップS623でパスワードの複雑性評価要求のリクエストデータであると判定した場合には、パスワード検証サービスを実行し(ステップS628)、検証に必要なユーザ情報をDBサーバが管理しているユーザ情報テーブル1400から取得する(ステップS629)。そして、複雑性評価要求のリクエストデータに含まれる入力中の文字列情報と、ステップS629で取得したユーザ情報とを用いて、パスワード検証を行う(ステップS630)。本発明では、ユーザ情報を用いてパスワード検証を検証することが可能であるので、次に示すようなパスワード検証を行うことができる。
【0076】
・パスワードにユーザの生年月日が含まれていないか。
・パスワードにユーザの氏名の一部が含まれていないか。
・パスワードにユーザの電話番号が含まれていないか。
・パスワードがユーザのメールアドレスのアカウントと同一ではないか。
【0077】
また、ユーザ情報を用いたパスワード検証以外にも次に示すパスワード検証を合わせて行うことが可能である。
【0078】
・パスワードにアルファベット、数字が夫々含まれているか。
・パスワードに英数文字以外(例えば%、@等)が含まれているか。
【0079】
そして、ステップS630では、上記のような複数のチェック項目夫々に対して、ステップS621で受信したリクエストデータに含まれる文字列情報に対するチェックを行い、その結果に従いパスワードの複雑性の度合いを示す評価値を算出することになる。例えば、パスワードにユーザの生年月日が含まれている場合には−30、氏名の一部が含まれている場合には−20、パスワードにアルファベット、数字の双方が含まれている場合には+20等、各チェック項目に値を設定しておき、それらの合計することで評価値を算出するなどの手法をとればよい。
【0080】
その後、ステップS630での複雑性評価により算出される評価値に応じてパスワード複雑性情報を作成し(ステップS631)、作成したパスワード複雑性情報をウェブサーバ102に対して送信する(ステップS632)。
【0081】
ウェブサーバ102のCPU201は、APサーバ103よりステップS627で送信されたパスワード登録処理結果を受信する(ステップS603)と、登録処理結果を含むレスポンスデータを作成し(ステップS604)、作成したレスポンスデータをクライアント装置101に同期通信で送信する(ステップS605)。
【0082】
また、ウェブサーバ102のCPU201は、APサーバ103よりステップS632で送信されたパスワード複雑性情報を受信すると(ステップS606)、パスワード複雑性情報を含むレスポンスデータを作成し(ステップS607)、レスポンスデータをクライアント装置101に非同期通信で送信する(ステップS608)。以上が、クライアント装置101のパスワード入力処理に応じてウェブサーバ102及びAPサーバ103により行われるパスワード複雑性評価・登録処理である。
【0083】
ここで、図9を参照して、図5に示すパスワードデータ入力受付処理が行われている間に表示されるパスワード入力画面800のパスワード複雑性表示の一例について説明する。
【0084】
図9の(1)は、パスワードとして登録不可の文字列が入力された場合のパスワード複雑性表示の一例を示している。図9の(1)に示すように、パスワードとして登録できない文字列が入力された場合には、例えばパスワード入力欄の背景色を変える等、通常の表示と異ならせるとともに、どのような禁止条件に合致しているかをメッセージ表示部902−1に表示する。これによりユーザは、パスワードの危険度合いや、どの禁止条件に合致しているかを認識することが可能となる。
【0085】
一方、パスワードとして登録可能な文字列が入力された場合には、図9の(2)に示すようにパスワードとして登録可能である旨の表示をメッセージ表示部902−2に表示する。
【0086】
また、本発明では、単にパスワードとして登録可能/不可能だけでなく、パスワードとして適切かを示す評価値に基づいて、パスワード入力部の背景表示を切り替える。
【0087】
例えば、以下の条件でパスワードの登録が可能であるとする。
・パスワードに姓、名が含まれない。
・パスワードに生年月日が含まれない。
・パスワードは8文字以上16文字以下。
・パスワードには必ず英字、数字が1字以上含まれる。
【0088】
このような条件のもと、1980年5月9日生まれの山田太郎さんがパスワードを登録しようとして、「12345ABC」や「1qaz2wsx」、「yama0001」等を入力した場合に、これらは登録が可能であると判断する。
【0089】
しかし、「1234ABCD」は、数字、英字ともに最初の文字から順に4字ずつ入力したものであり、入力に法則性があるので必ずしもパスワードとして適切であるとは言えない。
【0090】
また、「1qaz2wsx」は一見法則性がないようにも見えるが、キーボード配列の左2列に設定されている文字を順に入力しているだけであるので、この文字列にも一定の法則性があるといえる。
【0091】
また、「yama0001」のような文字列を入力された場合にも、姓の全てが含まれているわけではないが、その一部(yama)が用いられているので、他人に推測される可能性は、法則性がない文字列よりも高いといえる。
【0092】
上記のように、法則性がある文字列や個人情報の一部を用いている文字列は、法則性がない文字列と比較して、他人から推測される危険性が高いといえるので、これらの文字列が入力された場合には、パスワードとして登録は可能であるがリスクが高いパスワードであることをユーザに報知するようにする。このようなことを行えるようにするために、パスワード検証サービスにおいて、このような法則性のチェックも合わせて行うことになる。
【0093】
そのために、例えばパスワード登録が不可能な文字列の場合には、登録ボタンをグレーアウトするとともに、背景色を赤くしてユーザにパスワード登録をできないことを認識させる様に表示制御する。
【0094】
法則性がある文字列が入力された場合には、あらかじめ設定されているルールに従って、その危険度合い示す評価値が算出されるので、その危険度合いをユーザに認識させるようにする。例えば、個人情報の一部が含まれている等、非常に危険性度合いが高いと思われる場合には「橙」、入力された文字列に法則性がある等、比較的危険度合いが高い場合には「黄」、その他危険度合いに応じて「緑」、「青」といったようにパスワードの入力欄の背景色を変えることにより、その危険度合いを報知すれば良い。
【0095】
本発明では、登録ボタンが押されることでパスワード文字列の確定を行う前に、パスワードの危険度合いをユーザに報知するためのパスワード複雑性情報を表示するので、ユーザはその情報に応じて危険度合いを確認しながらパスワードの設定を行うことが可能となる。
【0096】
<第2の実施の形態>
以下、図10、図11を参照して、クライアント装置101のCPU201によって行われる本発明の第2の実施の形態におけるユーザ情報入力処理(図10)、ユーザ情報登録処理(図11)について説明する。尚、この処理に応じてウェブサーバ102及びAPサーバ103によって行われる処理は、別途図12を参照して説明する。
【0097】
第1の実施の形態におけるユーザ情報登録処理では、ユーザ情報を入力するための画面(ユーザ情報入力画面700)と、パスワード情報を入力するための画面(パスワード入力画面800)とを別の画面にする例について説明したが、第2の実施の形態では、同一の画面で入力する場合について説明する。
【0098】
まず、CPU201は、ディスプレイ装置210に図13に示すユーザ情報入力画面1300を表示する(ステップS1001)。この画面を表示するために用いられるHTMLデータはウェブサーバ102に保存されており、クライアント装置101は、ウェブサーバ102に対して本画面を表示するための情報を要求することになる。
【0099】
ここで、図13を参照して、第2の実施の形態におけるユーザ情報入力画面について説明する。図13はユーザ情報入力画面の構成の一例を示す図である。
【0100】
図13に示す通り、ユーザ情報入力画面1300は、氏名入力欄1301、氏名(ローマ字)入力欄1302、性別入力欄1303、生年月日入力欄1304、住所入力欄1305、電話番号入力欄1306、職業入力欄1307、メールアドレス入力欄1308、メールアドレス確認入力欄1309、ログインユーザ名入力欄1310、パスワード入力欄1311、登録ボタン1312等を備えて構成されている。
【0101】
ユーザは、本画面に設定されている各入力欄に自身に関するユーザ属性情報を、入力装置209を用いて夫々の入力欄に入力することになる。尚、この入力項目の内、複数の項目(例えば、氏名、生年月日、メールアドレス等)についてはパスワードの複雑性評価に用いる項目として設定されている。この画面を表示するHTMLデータには、複雑性評価に用いる項目として設定されている項目に対する編集処理、パスワード入力欄に対する編集処理が行われた場合に、非同期通信でそれらの入力欄に入力された情報をウェブサーバ102に送信するようなスクリプトが定義されている。そして、入力情報が送信されると、パスワードの複雑性評価が行われることになる。
【0102】
図10の説明に戻る。ユーザ情報入力画面1300をディスプレイ装置に表示後、当該画面に設定されている各種の入力欄等に対するユーザの入力装置209を介した操作を監視することになる(ステップS1002)。
【0103】
そして、ユーザ情報(パスワードを含む)の編集指示を受け付けたかを判定し(ステップS1003)、ユーザ情報の編集指示を受けたと判定した場合(ステップS1003でYES)には、処理をステップS1004に、ユーザ情報の編集指示以外の指示を受け付けたと判定した場合(ステップS1003でNO)には処理を図11のステップS1101に進める。
【0104】
ステップS1004では、パスワード入力欄に対する編集指示が行われたかを判定する。パスワード入力欄に対する編集指示が行われたと判定した場合には(ステップS1004でYES)、処理をステップS1007に進める。一方、パスワード以外の入力欄に対する編集指示が行われたと判定した場合には(ステップS1004でNO)、処理をステップS1005に進め、編集指示を受け付けた入力欄の表示の更新を行う。
【0105】
そして、ステップS1005の処理後、編集指示はパスワード複雑性評価に用いる属性情報に対する編集処理を受け付けたと判定した場合には(ステップS1006でYES)、処理をステップS1008に、一方、編集処理を受け付けたのはセキュリティ判定に用いる属性項目ではないと判定した場合には(ステップS1006でNO)、処理をステップS1002に戻す。
【0106】
ステップS1004の判定処理でパスワード入力欄に対して編集指示を受け付けたと判定した場合には(ステップS1004でYES)、パスワード入力欄の表示を更新する(ステップS1007)。
【0107】
そして、ステップS1007の処理終了後、または、ステップS1006でYESと判定した場合には、パスワード入力欄1311に入力されている文字数が所定の文字数(パスワードの最低文字数)以上であるかを判定し(ステップS1008)、所定文字数以上であると判定した場合には(ステップS1008でYES)、パスワード入力欄1311に入力されているパスワード情報及びパスワードの複雑性評価に使用する属性として設定されているユーザ属性の情報をユーザ情報入力画面より取得し(ステップS1009)、その後、ステップS1009で取得した各種の情報を含むパスワードの複雑性評価要求のリクエストデータを作成し(ステップS1010)、非同期通信部303−2により、作成したリクエストデータをウェブサーバ102に対して送信する(ステップS1011)。ウェブサーバ102では、このリクエストデータに応じたパスワード複雑性評価処理を行うことになる。この処理については図12を参照して後述する。
【0108】
クライアント装置101はリクエストデータ送信後、ウェブサーバ102よりステップS1011で送信したリクエストデータに対する応答データであるレスポンスデータを非同期通信部303−2が受信すると(ステップS1012でYES)、処理をステップS1013に進め、レスポンスデータに含まれるパスワード複雑性情報に応じたパスワード複雑性表示を行う(ステップS1013)。
【0109】
ステップS1008で所定の文字数未満である(NO)と判定した場合には、処理をステップS1014に進め、既にパスワード複雑性表示が行われているかを判定する。パスワード複雑性表示が行われている場合には、編集に伴うパスワード情報の複雑性評価が行われなかったため処理をステップS1015に進め、前回の評価結果であるパスワード複雑性表示を消去することになる。そして、ステップS1013または、ステップS1015の処理終了後、処理をステップS1002に戻し、それ以降の処理を繰り返し行うことになる。
【0110】
図10のステップS1003で、ユーザより受け付けた操作がユーザ情報の編集処理ではないと判定した場合には(NO)、処理を図11のステップS1101に進める。
【0111】
クライアント装置101のCPU201は、ステップS1101において、ユーザより図13の登録ボタン1312に対する押下指示を受け付けたかを判定する(ステップS1101)。登録ボタンに対する押下指示を受け付けた(YES)と判定した場合には処理をステップS1102に、受け付けていない(NO)と判定した場合には、処理をステップS1110に進める。
【0112】
クライアント装置101のCPU201は、ステップS1102において、ユーザ情報入力画面1300中で入力が必須であるとされている項目の全てに入力が行われているかを判定する。この処理は、ユーザ情報入力画面1300の表示に用いられるHTMLデータ中に登録ボタン1312に対する押下指示がなされた場合に実行するスクリプトが設定されており、そのスクリプトを実行することで判定処理を行うことになる。このスクリプトにより、入力必須項目とされている属性情報それぞれがブランクでないかを判定する処理を行う。
【0113】
入力必須項目とされている属性情報を入力する入力欄に全て入力がなされている(YES)と判定した場合には、処理をステップS1103に、入力がされていない入力必須項目があると判定した場合には、処理をステップS1109に進める。
【0114】
ステップS1103では、パスワード入力欄1311に入力されているパスワード情報が登録可能であるかをウェブサーバ102から受信したパスワード複雑性情報に従って判定する。パスワードが登録可能である(YES)と判定した場合には処理をステップS1104に、登録不可である(NO)と判定した場合には処理をステップS1109に進める。
【0115】
ステップS1103でYESと判定すると、クライアント装置101のCPU201は、ユーザ情報入力画面1300の各種入力部に入力された情報を取得し(ステップS1104)、該取得した入力情報を含む、ユーザ情報登録要求のためのリクエストデータを作成し(ステップS1105)、そのリクエストデータを同期通信部303−1よりウェブサーバ102に対して送信する(ステップS1106)。このリクエストデータに応答してウェブサーバ102によって行われる処理については、図12を参照して説明する。
【0116】
そして、ステップS1106でウェブサーバ102に送信したリクエストデータに応じた処理を行った結果ウェブサーバ102より送信されたレスポンスデータを取得すると(ステップS1107)、そのレスポンスデータに応じて登録処理結果をディスプレイ装置210に表示する(ステップS1108)。
【0117】
ステップS1102、S1103でNOと判定した場合には、処理をステップS1109に進め、警告メッセージを表示する。ステップS1102でNOと判定した場合には、必須の入力項目に対する入力がされていないことを示す警告メッセージを、ステップS1103でNOと判定した場合には、パスワード入力欄1311に入力された文字列がパスワードとして登録できないことを示す警告メッセージを表示する。
【0118】
ステップS1101で登録ボタンの押下指示を受け付けていないと判定した場合には処理をステップS1110に進め、終了指示を受け付けたかを判定する。終了指示を受け付けていないと判定した場合には処理を図10のステップS1002に進める。一方、終了指示を受け付けた場合には本処理を終了することになる。
【0119】
次に、図12を参照して、クライアント装置101によって行われるユーザ情報入力処理(図10)、ユーザ情報登録処理(図11)に応じて、ウェブサーバ102、APサーバ103によって行われるパスワード複雑性評価・登録処理について説明する。
【0120】
まず、ウェブサーバ102のCPU201は、クライアント装置101からのリクエストデータを受信すると(ステップS1201)、該受信したリクエストデータをAPサーバ103に転送する(ステップS1202)。ウェブサーバ102がステップS1201でクライアント装置101から受信するリクエストデータとしては、図10のステップS1011で送信されたパスワード複雑性評価要求のリクエストデータ(非同期通信)、図11のステップS1106で送信されたパスワード登録要求のリクエストデータがあげられる。
【0121】
APサーバ103のCPU201は、ウェブサーバ102からリクエストデータを転送されると(ステップS1221)、転送されたリクエストデータの種類を特定する。APサーバ103は、特定されたリクエストデータの種類によって、実行するサービスを特定することになる(ステップS1222)。
【0122】
ウェブサーバ102より転送されたリクエストデータがパスワード登録要求のリクエストデータであると判定した場合には(ステップS1223で登録)、パスワードを登録するためのサービスを実行し(ステップS1224)、DBサーバ104が記憶しているユーザ情報テーブル1400にパスワードを追加登録する(ステップS1225)。そして、その処理結果をDBサーバより受信し(ステップS1226)、ウェブサーバ102に送信する(ステップS1227)。
【0123】
一方で、ステップS1223でパスワードの複雑性評価要求のリクエストデータであると判定した場合には、パスワード検証サービスを実行する(ステップS1228)。
【0124】
パスワード検証に必要となるパスワードとして設定しようとしている文字列やユーザ属性情報は、ステップS1221でウェブサーバ102から受信したリクエストデータに含まれているので、APサーバ103のCPU201は、リクエストデータからパスワード複雑性評価に必要となる各種のデータを取得する(ステップS1229)。そして、ステップS1229で取得したパスワードとして設定しようとしている文字列及びユーザ属性情報とを用いて、パスワードの複雑性評価を行う(ステップS1230)。第2の実施の形態においても、第1の実施の形態と同様ユーザ属性情報がパスワードに設定しようとしている文字列に含まれていないかという検証を含む、パスワードの複雑性を判定するためのパスワード複雑性評価が可能であり、その結果をユーザに通知することで、ユーザが設定しようとしているパスワードの複雑性をユーザに対して報知することが可能である。
【0125】
そして、ステップS1230では、あらかじめ設定されている複数のチェック項目夫々に対して、ステップS1221で受信したリクエストデータに含まれる文字列情報に対するチェックを行い、その結果に従いパスワードのセキュリティの度合いを示す評価値を算出することになる。
【0126】
その後、ステップS1230での複雑性評価による各チェック項目に対するチェック結果及びその結果算出される評価値等に応じてパスワード複雑性情報を作成し(ステップS1231)、作成したパスワード複雑性情報をウェブサーバ102に対して送信する(ステップS1232)。
【0127】
ウェブサーバ102のCPU201は、APサーバ103よりステップS1227で送信されたパスワード登録処理結果を受信すると(ステップS1203)、登録処理結果を含むレスポンスデータを作成し(ステップS1204)、作成したレスポンスデータをクライアント装置101に同期通信で送信する(ステップS1205)。
【0128】
また、ウェブサーバ102のCPU201は、APサーバ103よりステップS1232で送信されたパスワード複雑性情報を受信すると(ステップS1206)、パスワード複雑性情報を含むレスポンスデータを作成し(ステップS1207)、レスポンスデータをクライアント装置101に非同期通信で送信する(ステップS1208)。以上が、クライアント装置101のパスワード入力処理に応じてウェブサーバ102及びAPサーバ103により行われるパスワード複雑性評価・登録処理である。
【0129】
第2の実施の形態では、パスワード文字列の入力欄とユーザ属性の入力欄とが同一の画面で構成されているユーザ情報入力画面1300を用いた場合に入力されたパスワードの複雑性評価を行う例について説明した。このように、パスワード文字列と、当該パスワード文字列の複雑性評価を行うユーザ属性が同じ画面を用いて入力される場合に、パスワード文字列が先に入力され、その後ユーザ属性情報の入力、編集が行われる可能性もある。
【0130】
そこで、第2の実施の形態では、パスワード入力欄に対する編集が行われた場合だけでなく、パスワードの複雑性評価に用いるユーザ情報が編集された場合にも、ウェブサーバ102に対して非同期通信でパスワードの複雑性評価を行うよう構成した。これにより、ユーザはパスワードの確定前、つまりパスワードの入力の最中からその複雑性を把握することが可能となり、パスワードの入力及び確定を繰り返す必要がなくなる。
【0131】
<その他の実施形態>
また、本発明の目的は、以下のようにすることによって達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体(又は記録媒体)を、システム或いは装置に供給する。そして、そのシステム或いは装置の中央演算処理手段(CPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行する。この場合、記憶媒体から読み出されたプログラムコード自体が上述した実施形態の機能を実現することになり、そのプログラムコードを記録した記憶媒体は本発明を構成することになる。
【0132】
また、システム或いは装置の前記中央演算処理手段が読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、システム或いは装置上で稼働しているオペレーティングシステム(OS)等が実際の処理の一部又は全部を行う。その処理によって上述した実施形態の機能が実現される場合も含まれる。
【0133】
更に、記憶媒体から読み出されたプログラムコードが、前記システム或いは装置に挿入された機能拡張カードや、接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPU等が実際の処理の一部又は全部を行い、その処理によって上述した実施形態の機能が実現される場合も含まれる。
【符号の説明】
【0134】
101−1、101−2、101−3 クライアント装置
102 ウェブサーバ
103 アプリケーション(AP)サーバ
104 データベース(DB)サーバ
105 LAN
106 インターネット
201 CPU
202 RAM
203 ROM
204 システムバス
205 入力コントローラ
206 ビデオコントローラ
207 メモリコントローラ
208 通信インターフェース(I/F)コントローラ
209 入力装置
210 ディスプレイ装置
211 外部メモリ
【技術分野】
【0001】
本発明は、ウェブアプリケーションが提供するパスワード入力画面の表示に関し、特に、ユーザが登録するパスワードの複雑性に関する情報をユーザが認識可能に表示する技術に関する。
【背景技術】
【0002】
近年、インターネット上には無数のウェブサイトが公開され、それぞれのウェブサイトは、ウェブアプリケーションを用いた多様なウェブサービスを提供している。例えば、インターネットバンキングや、オンラインショッピングなどのウェブサービスが広く行われている。それらのウェブサービスを利用する場合には、ユーザは、それぞれのウェブサイトにユーザ登録を行う必要があり、その際には、認証に用いるパスワードの登録を行うことが一般的である。
【0003】
このような、ウェブサイトが提供するウェブサービスは利便性が高いため、多くのユーザにとって不可欠なものとなりつつあるが、その利用に伴い、ユーザは成りすましによる不正利用など、様々なリスクに晒されることにもなる。
【0004】
不正利用の対策は様々あるが、認証に用いるパスワードの複雑性を高めることが有効的な手段の1つとして挙げられる。例えば、パスワードを登録する際には所定の文字数以上のパスワードを設定するようにする、アルファベット及び数字の双方を必ず1字以上使用させる、等の対策をとっていることが一般的である。これによりパスワードの複雑性を高めることはできる。
【0005】
このような、パスワードを登録する場合には、ユーザがパスワードとして用いる文字列を入力後、登録ボタンに対する押下指示を受け付けることでウェブサービスを提供するウェブサーバにパスワードが送信され、ウェブサーバは受信した文字列が、パスワードとしての登録可能要件を満たすかを判定し、登録可能要件を満たしていると判定した場合には、受信した文字列をパスワードとして登録し、満たしていないと判定した場合には、パスワードとして用いる文字列を再度ユーザに入力させることになる。
【0006】
また、パスワードの登録に際しては、周囲から入力操作を盗み見される等の、ソーシャルエンジニアリングの危険にも晒される。このようなソーシャルエンジニアリングに対処すべく、例えば特許文献1に開示されている発明がなされている。この発明は、ユーザが入力したパスワード文字をマスクするエコー文字の文字数を複数文字とすることで、ユーザが入力したパスワードの文字数が漏洩することを防ぐためのものである。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2004−21560号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
パスワードの複雑性を求めようとした場合に、従来の方法では、ユーザがパスワードと使用する文字列の入力を一旦確定しなければその複雑性の判断が行われなかった。このため、ウェブサイトが要求するパスワードの複雑性を満たさない文字列の入力が行われた場合に、入力のやり直しを行わなくてはならず、ソーシャルエンジニアリングの危険にさらに晒されることになってしまう。
【0009】
また、上述のパスワードの文字数制限や、アルファベットと数字の双方を使用するといった程度の複雑性のみを求めるのであれば、ユーザに対するパスワード制限に関する表示を容易に行うことができるが、さらなる複雑性を要求する場合には、その全ての要件をユーザに提供することは困難である。
【0010】
この場合、一旦確定された文字列がパスワードとして不適切として判断された理由を表示してユーザに通知することが想定されるが、不適切となった原因が1つ見つかった場合に、それ以外の要件については適切/不適切の判定を行わず、それらの要件を満たすか否かの情報はユーザには通知されず、結局はトライアンドエラーを繰り返す原因になってしまうことが想定される。
【0011】
そこで、本発明は、パスワードの登録に関し、パスワードとして用いる文字列の入力を確定させる前にユーザにウェブサイトが要求する複雑性を満たすか等、パスワードの複雑性に関する情報を表示することで、ユーザに報知可能な技術を提供することを目的とする。
【課題を解決するための手段】
【0012】
上記した目的を達成するために、本発明の情報処理装置は、ユーザの認証処理に用いるパスワードの入力を受け付ける情報処理装置であって、前記パスワードの入力を受け付ける第1の入力領域を含む入力画面を表示する表示手段と、前記表示手段により表示された前記入力画面に含まれる前記第1の入力領域に対するパスワードの入力を受け付ける第1の受付手段と、前記第1の受付手段で前記第1の入力領域に対するパスワード入力を受け付けることに応じて、該入力されたパスワードをサーバ装置に送信することで、前記第1の入力領域に対して入力されたパスワードの複雑性の度合いをユーザに報知するための評価情報の作成要求をサーバ装置に対して行う要求手段と、前記要求手段による評価情報の作成要求に応じてサーバ装置で作成される評価情報を取得する取得手段と、前記評価情報に応じて、ユーザに対してパスワードの複雑性の度合いを示す情報を表示する表示制御手段と、を備えることを特徴とする。
【0013】
上記した目的を達成するために、本発明の情報処理方法は、ユーザの認証処理に用いるパスワードの入力を受け付ける情報処理装置による情報処理方法であって、前記パスワードの入力を受け付ける第1の入力領域を含む入力画面を表示する表示工程と、前記表示工程により表示された前記入力画面に含まれる前記第1の入力領域に対するパスワードの入力を受け付ける第1の受付工程と、前記第1の受付工程で前記第1の入力領域に対するパスワード入力を受け付けることに応じて、該入力されたパスワードをサーバ装置に送信することで、前記第1の入力領域に対して入力されたパスワードの複雑性の度合いをユーザに報知するための評価情報の作成要求をサーバ装置に対して行う要求工程と、前記要求工程による評価情報の作成要求に応じてサーバ装置で作成される評価情報を取得する取得工程と、前記評価情報に応じて、ユーザに対してパスワードの複雑性の度合いを示す情報を表示する表示制御工程と、を備えることを特徴とする。
【0014】
上記した目的を達成するために、本発明のコンピュータプログラムは、ユーザの認証処理に用いるパスワードの入力を受け付ける情報処理装置を、前記パスワードの入力を受け付ける第1の入力領域を含む入力画面を表示する表示手段と、前記表示手段により表示された前記入力画面に含まれる前記第1の入力領域に対するパスワードの入力を受け付ける第1の受付手段と、前記第1の受付手段で前記第1の入力領域に対するパスワード入力を受け付けることに応じて、該入力されたパスワードをサーバ装置に送信することで、前記第1の入力領域に対して入力されたパスワードの複雑性の度合いをユーザに報知するための評価情報の作成要求をサーバ装置に対して行う要求手段と、前記要求手段による評価情報の作成要求に応じてサーバ装置で作成される評価情報を取得する取得手段と、前記評価情報に応じて、ユーザに対してパスワードの複雑性の度合いを示す情報を表示する表示制御手段として機能させることを特徴とする。
【発明の効果】
【0015】
本発明によれば、ユーザによるパスワード入力が完了していなくとも、ユーザが文字入力するたびに、その時点で入力されている文字列がWebアプリケーションにおいて求められているパスワードの複雑性を満たしているかを知ることが出来る。
【図面の簡単な説明】
【0016】
【図1】本発明の情報処理システムのシステム構成の一例を示す図である。
【図2】図1に示す各装置に適用可能な情報処理装置のハードウェア構成の一例を示す図である。
【図3】図1に示す各装置の機能構成の一例を示す図である。
【図4】第1の実施形態の形態におけるユーザ情報登録処理を示すフローチャートである。
【図5】図5のステップS411のパスワードデータ入力受付処理の詳細を示すフローチャートである。
【図6】第1の実施形態におけるパスワード複雑性評価・登録処理の一例を示すフローチャートである。
【図7】ユーザ情報入力画面の構成の一例を示す図である。
【図8】パスワード入力画面の構成の一例を示す図である。
【図9】パスワード入力画面のパスワード複雑性情報表示の一例を示す図である。
【図10】第2の実施形態におけるユーザ情報入力処理を示すフローチャートである。
【図11】第2の実施形態におけるユーザ情報登録処理を示すフローチャートである。
【図12】第2の実施形態におけるパスワード複雑性評価・登録処理の一例を示すフローチャートである。
【図13】第2の実施形態におけるユーザ情報入力画面の構成の一例を示す図である。
【図14】ユーザ情報テーブルのデータ構成の一例を示す図である。
【発明を実施するための形態】
【0017】
以下、図面を参照して、本発明を実施するための形態の一例について説明する。
【0018】
図1は、本発明の情報処理システムのシステム構成の一例を示す図である。図1に示すように、本発明の情報処理システムは、クライアント装置101−1乃至101−3(以下、まとめてクライアント装置101とする)、ウェブサーバ102、アプリケーションサーバ(APサーバ)103、データベースサーバ(DBサーバ)104を備えて構成されている。
【0019】
クライアント装置101は、ウェブサーバ102が提供するウェブサイトによるウェブサービスを利用するユーザが操作するコンピュータであって、インターネット106等の広域回線網を介してウェブサーバ102にアクセスし、ウェブサービスを利用する。
【0020】
ウェブサーバ102は、クライアント装置101からの要求に応じて、ウェブサービスを提供するためのサーバ装置である。APサーバ103は、ウェブサーバが提供するウェブサービスで実行されるウェブアプリケーションを実行するサーバ装置であって、ウェブサーバ102から要求されたウェブアプリケーションを実行し、その処理結果をウェブサーバ102に通知する。DBサーバ104は、ウェブサーバ102、APサーバ103が利用する各種のデータを記憶するサーバ装置である。
【0021】
105はLAN(Local Area Network)であって、ウェブサーバ102、APサーバ103及びDBサーバ104を相互に通信可能に接続するためのネットワークである。
【0022】
次に、図2を参照して、図1に示す各装置(クライアント装置101、ウェブサーバ102、APサーバ103及びDBサーバ104)のハードウェア構成の一例について説明する。図2は、図1に示す各装置に適用可能な情報処理装置のハードウェア構成の一例を示す図である。
【0023】
図中、CPU201は、システムバス204に接続される後述の各デバイスやコントローラを統括的に制御する。また、ROM203あるいは外部メモリ211には、CPU201の制御プログラムであるBIOS(Basic Input / Output System)やオペレーティングシステムプログラム(以下、OS)や、各装置に後述する各種の処理を実行させるために必要な各種プログラムやデータ等が記憶されている。RAM202は、CPU201の主メモリ、ワークエリア等として機能する。
【0024】
CPU201は、処理の実行に際して必要なプログラム等をRAM202にロードして、プログラムを実行することで後述する各種処理を実現するものである。また、入力コントローラ(入力C)205は、キーボードやポインティングデバイス等で構成される入力装置209からの入力を制御する。ビデオコントローラ(VC)206は、ディスプレイ装置210等の表示装置への表示を制御する。ディスプレイ装置210は、例えばCRTディスプレイや液晶ディスプレイ等で構成される。
【0025】
メモリコントローラ(MC)207は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク(HD)やフロッピーディスク(登録商標 FD)或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュメモリ等の外部メモリ211へのアクセスを制御する。
【0026】
通信I/Fコントローラ(通信I/FC)208は、図1に示すLAN105やインターネット106等のネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いたインターネット通信等が可能である。
【0027】
なお、CPU201は、例えばRAM202内の表示情報用領域へアウトラインフォン
トの展開(ラスタライズ)処理を実行することにより、ディスプレイ装置210上での表
示を可能としている。また、CPU201は、ディスプレイ装置210上の不図示のマウ
スカーソル等でのユーザ指示を可能とする。以上が、ハードウェア構成の説明であるが、各装置が後述する各種の処理を実行可能であれば、必ずしも図2に記載のハードウェア構成を有していなくとも構わないことは言うまでもない。
【0028】
次に、図3を参照して、図1に示す各装置(クライアント装置101、ウェブサーバ102、APサーバ103、DBサーバ104)の機能構成について説明する。図3は、図1に示す各装置が備える機能構成を示す図である。
【0029】
図3に示す通り、クライアント装置101は、入力受付部301、表示制御部302、通信部303を備えており、通信部303は、同期通信部303−1、非同期通信部303−2を含む。
【0030】
入力受付部301は、ウェブサーバに接続する際に用いられるURL情報や、後述するユーザ情報入力画面700やパスワード入力画面800を介しての各種情報の入力を受け付ける。表示制御部302は、ウェブサーバ102より受信したレスポンスデータに従った画面表示(例えば、ユーザ情報入力画面700やパスワード入力画面800の表示)をウェブブラウザに対して行う。
【0031】
通信部303は、ウェブサーバ102とHTTP等による通信を行う。尚、同期通信部303−1は、ウェブサーバ102との間で同期通信を行う。非同期通信部303−2は、JavaScriptのクラスライブラリである「XMLHttpRequest」を用いて、ウェブサーバ102に非同期通信でHTTPリクエストを送る。また、当該HTTPリクエストに応じてウェブサーバ102より送信されるレスポンスデータについては、非同期通信部303−2が提供するコールバック機能を用いて受信することになる。
【0032】
ウェブサーバ102は、実行要求部311、応答データ生成部312、通信部313を備えており、通信部313は、同期通信部313−1、非同期通信部313−2を含む。
【0033】
実行要求部311は、後述する通信部313でクライアント装置101から受信したHTTPリクエストデータに含まれるリクエストURLを解析することでサービスの実行要求であるかを判定し、サービス実行要求であると判定した場合には、APサーバ103に対してサービス実行要求を行う。例えば、リクエストURLに含まれるファイルの拡張子が「do」である場合に、サービスの実行要求であると判定する。
【0034】
応答データ生成部312は、クライアント装置101からのHTTPリクエストデータに対する応答データであるレスポンスデータを生成する。そして生成したレスポンスデータを通信部313に渡す。
【0035】
通信部313は、クライアント装置101とHTTPを用いた通信を行うための機能部であり、同期通信部313−1はクライアント装置101の同期通信部303−1と、非同期通信部313−2は、クライアント装置101の非同期通信部303−2との通信を行う。
【0036】
APサーバ103は、サービス実行部321、データ操作部322を備えており、サービス実行部321は実行要求受付部321−1、特定部321−2、処理実行部321−3を含み、データ操作部322は、データ取得部322−1、データ登録部322−2を含む。
【0037】
サービス実行部321は、ウェブサーバ102からの要求に応じてAPサーバ103が提供するサービスを実行する機能部である。APサーバ103が提供するサービスとしては、例えばパスワード複雑性評価を行うためのパスワード検証サービスや、ユーザ情報登録サービス等がある。
【0038】
実行要求受付部321−1は、ウェブサーバ102の実行要求部311からのサービスの実行要求を受け付ける機能部である。サービス特定部321−2は、実行要求受付部321−1で受け付けたサービスの実行要求に従って、実行すべきサービスを特定する。処理実行部321−3は、サービス特定部321−2で実行するサービスとして特定されたサービスを実行し、その処理結果をウェブサーバ102の実行要求部311に返す。
【0039】
データ操作部322は、DBサーバ104で管理されているユーザ情報テーブル等のデータベースを操作するための機能部であり、データ取得部322−1は、DBサーバ104が管理するデータベースより、各種のデータを取得する機能部である。データ登録部322−2は、データベースにデータを追加する、データベースからデータを削除する、既に登録されているデータを変更する機能部である。
【0040】
DBサーバ104は、記憶部331を備えており、この記憶部331で後述する処理で用いられる各種データや、作成される各種データを記憶することになる。以上が図1に示す各装置の機能構成の説明である。
【0041】
<第1の実施の形態>
次に、図4を参照して、クライアント装置101のCPU201、ウェブサーバ102のCPU201、及びAPサーバ103のCPUによって行われる、本発明の第1の実施の形態におけるユーザ情報登録処理について説明する。本図のステップS401からS411に示す処理はクライアント装置101のCPU201によって、ステップS421からS426に示す処理はウェブサーバ102のCPU201によって、ステップS441からS444に示す処理はAPサーバ103のCPU201によって行われる処理である。
【0042】
まず、クライアント装置101は、ユーザの入力装置209操作に従って、アクセスするウェブサーバ102を特定するためのURL情報の入力を受け付ける(ステップS401)。そして、ステップS401で入力されたURLで特定されるウェブサーバ102に対して、画面要求のためにリクエストデータを送信する(ステップS402)。
【0043】
ウェブサーバ102のCPU201は、クライアント装置101より送信された画面要求のためのリクエストデータを取得すると(ステップS421)、表示画面情報を含むレスポンスデータを、当該要求を行ってきたクライアント装置101に対して送信する(ステップS422)。
【0044】
クライアント装置101のCPU201は、ウェブサーバ102から送信された表示画面情報を含むレスポンスデータを受信すると(ステップS403)、受信した表示画面情報に従って、画面表示を行う(ステップS404)。ここでは、例えば図7に示すユーザ情報入力画面700が表示されることになる。
【0045】
ここで、図7を参照して、ユーザ情報入力画面700の構成について説明する。図7はユーザ情報入力画面700の構成の一例を示す図である。
【0046】
図7に示す通り、ユーザ情報入力画面700は、氏名入力欄701、氏名(ローマ字)入力欄702、性別入力欄703、生年月日入力欄704、住所入力欄705、電話番号入力欄706、職業入力欄707、メールアドレス入力欄708、メールアドレス確認入力欄709、ログインユーザ名入力欄710、次(パスワード入力)へボタン711等を備えて構成されている。
【0047】
ユーザは、本画面に設定されている各入力欄に自身に関する情報を、入力装置209を用いて夫々の入力欄に対して入力することになる。そして、入力が必須となっている全ての入力欄に対する入力を受け付けると次(パスワード入力)へボタン711が有効となる。尚、ログインユーザ名入力欄710には、ユーザが当該ウェブサービスを利用する際に用いるユーザ名の入力を受け付けることになる。
【0048】
図4の説明に戻る。クライアント装置101のCPU201は、ステップS404で表示したユーザ情報入力画面700を介してのユーザからのユーザ情報入力を受け付ける(ステップS405)。その後、ユーザ情報入力画面700の次(パスワード入力)へボタン711の押下指示により入力される登録指示の入力を受け付けると(ステップS406でYES)、ユーザ情報入力画面700に対して入力されたユーザ情報を登録するためのリクエストデータを作成し、そのリクエストデータをウェブサーバ102に対して送信する(ステップS407)。
【0049】
クライアント装置101から送信されたユーザ情報を登録のためのリクエストデータを受信すると(ステップS423)、ウェブサーバ102のCPU201は、APサーバ103に対してユーザ情報の登録のためのプログラムの実行要求を行う(ステップS424)。この時に合わせて、クライアント装置101から取得したユーザ情報をAPサーバ103に対して送信する。
【0050】
APサーバ103のCPU201は、ウェブサーバ102からのユーザ登録プログラム実行要求を受け付けると(ステップS441)、ユーザ登録プログラムを実行し(ステップS442)、DBサーバ104が備えるユーザ情報テーブル1400にユーザ情報を登録する(ステップS443)。そしてその処理結果をAPサーバ103に送信する(ステップS444)。
【0051】
ここで、図14を参照して、DBサーバ104の外部メモリ211に管理されているユーザ情報テーブル1400のデータ構成について説明する。図14は、ユーザ情報テーブル1400のデータ構成の一例を示す図である。
【0052】
図14に示す通り、ユーザ情報テーブル1400は、ユーザID1401、氏名1402、氏名(ローマ字)1403、性別1404、生年月日1405、住所1406、電話番号1407、職業1408、メールアドレス1409、ログインユーザ名1410、パスワード1411等のデータ項目を備えて構成されている。
【0053】
図7の説明に戻る。ウェブサーバ102は、APサーバ103から処理結果を受け取ると(ステップS425)、ユーザ情報登録結果を示すレスポンスデータを作成し、クライアント装置101に送信する(ステップS426)。この時、ユーザ情報登録に成功した場合には、図8に示すパスワード入力画面800を、失敗した場合には、不図示のエラー通知画面を表示するための画面情報を含むレスポンスデータを作成し、クライアント装置101に送信することになる。
【0054】
クライアント装置101のCPU201は、ウェブサーバ102からのレスポンスデータを取得すると(ステップS408)、処理をステップS409に進め、取得したレスポンスデータに従った画面表示を行う。つまりは、登録処理結果に応じて、図8に示すパスワード入力画面800若しくは、エラー通知画面の表示を行うことになる。
【0055】
そして、登録に失敗した場合(ステップS410でNO)には再度ユーザ情報入力画面700を表示させ、ステップS405からの処理を繰り返す。一方、登録に成功した場合(ステップS410でYES)には処理をステップS411に進め、パスワードデータ入力受付処理を行う。この処理の詳細については、図5を参照して説明することにする。以上が、図4のユーザ情報登録処理の説明である。
【0056】
尚、本発明では、このユーザ情報登録処理でユーザにより入力された氏名や、生年月日、電話番号などの情報を用いて、パスワードの複雑性を判断することになる。例えば、パスワードとして利用する文字列に、氏名情報や、生年月日が含まれていると、他人からパスワードの推測が容易になってしまうという問題があるので、それらに使用されている文字列を使用させないようにすることで、複雑性を担保するようにしている。
【0057】
次に、図5を参照して、図4のステップS411のパスワード入力受付処理の詳細について説明する。
【0058】
まず、クライアント装置101のCPU201は、ディスプレイ装置210に表示されているパスワード入力画面800に対するユーザ操作の監視を始める(ステップS501)。
【0059】
ここで、図8を参照して、パスワード入力画面800の画面構成について説明する。図8はパスワード入力画面800の構成の一例を示す図である。
【0060】
図8に示すように、パスワード入力画面800には、画面初期表示時には、パスワード入力欄801及び登録ボタン802を備えて構成される。
【0061】
パスワード入力欄801は、パスワードとして利用する文字列の入力を受け付ける受付欄である。本発明では、パスワード入力欄801の情報が編集されるたびに、クライアント装置101のCPU201は、この入力欄に入力された文字列情報を非同期通信部303−2によりウェブサーバ102に送信し、その後APサーバ103によって、その文字列の複雑性評価が行われることになる。そして、複雑性評価の結果をユーザに報知するための表示を本画面に行うことになる。また、このパスワード入力欄801は、パスワードの最大文字数より多くの文字数の入力は受け付けない。
【0062】
登録ボタン802は、パスワードの入力を確定させ、ウェブサーバ102に対してパスワードの登録を要求するために用いられるボタンである。尚、この登録ボタンは、パスワード入力欄801に入力された文字列が所定の文字数ではない場合、また、複雑性評価によりパスワードとして登録するための要件を満たさないと判断された場合には、グレーアウト表示され、登録指示を行うことができないように制御される。この登録ボタンが押された場合には、クライアント装置101のCPU201は、同期通信部303−1によりウェブサーバ102に入力された文字列を送信することになる。以上が図8のパスワード入力画面800の構成の説明である。
【0063】
図5の説明に戻る。ユーザの操作監視中、パスワード入力欄801に対する操作によりパスワードの編集が行われたと判断した場合に(ステップS502でYES)、処理をステップS503に進め、パスワード入力欄801に表示する文字数を変更する。尚、このパスワード入力欄には、どのような文字列が入力されたかを理解できないようにするために、入力された文字ではなく、「*」等をマスク文字として利用する。であるので、このステップS503では「*」の表示数を変更する処理が行われることになる。パスワード編集が行われていないと判断した場合には(ステップS502でNO)、処理をステップS516に進める。
【0064】
その後、パスワード入力欄801に入力された文字数が所定数以上であるかを判断し(ステップS504)、所定数以上ではないと判断した場合には(ステップS504でNO)、処理をステップS505に進め、登録ボタン802を無効し、グレーアウト表示する。
【0065】
その後、入力された文字列に対してパスワード複雑性評価処理結果を示すパスワード複雑性表示がパスワード入力画面800にされている場合には(ステップ506でYES)、その表示を消去する(ステップS507)。
【0066】
ステップS504の判定処理で、パスワード入力欄801に入力された文字数が所定数以上であると判定した場合には、処理をステップS508に進め、パスワード複雑性評価要求のリクエストデータを作成し、作成したリクエストデータをウェブサーバ102に対して非同期通信機能を用いて送信する(ステップS509)。この時、ユーザによる明示的な指示を行う必要はなく、クライアント装置101のCPU201がパスワード入力欄の入力内容に変更がされたと判定すると、自動的にこの処理を行うことになる。
【0067】
その後、ステップS509のリクエストデータに対する応答データであるレスポンスデータの受信待ち状態になる。その間、CPU201は他の処理を実行することが可能である。そして、ウェブサーバ102の非同期通信機能を用いて送信されたレスポンスデータを受信したと判断すると(ステップS510でYES)、処理をステップS511に進め、レスポンスデータに含まれるパスワード複雑性情報を取得する。そして、パスワード複雑性情報に従って、ディスプレイ装置210に表示されているパスワード入力画面にパスワード複雑性情報を示す複雑性表示を行う(ステップS512)。この時、パスワード入力画面全体の表示情報をリフレッシュするのではなく、表示変更を行う必要がある部分のみ表示の更新が行われる。
【0068】
そして、ステップS511で取得したパスワード複雑性情報に従い、現在入力中のパスワードを登録可能であるかを判定し、パスワードの登録要件を満たし登録可能であると判定した場合には(ステップS513でYES)、登録ボタンを有効にする(ステップS514)。一方、パスワードの登録要件を満たさないと判定した場合には(ステップS513でNO)、登録ボタンを無効にする(ステップS515)。そして、ステップS501に処理を移行させる。
【0069】
ステップS502の判定処理でユーザから受け付けた操作がパスワード編集操作ではないと判定した場合には(ステップS502でNO)、処理をステップS516に進め、登録ボタン802の押下指示をCPU201が、登録ボタンの押下指示を受け付けたかを判定する。CPU201が、登録ボタン802の押下指示を受け付けたと判定した場合には(ステップS516でYES)、パスワード文字列を含む当該パスワード文字列を含むパスワード登録要求のリクエストデータを作成し(ステップS517)、作成したリクエストデータをウェブサーバ102に同期通信で送信する(ステップS518)そして、その後ウェブサーバからのレスポンスデータを受信し(ステップS519)、当該レスポンスデータに応じた画面表示を行い、本処理を終了する。
【0070】
ステップS516で登録ボタンに対する押下指示を受け付けていないと判定した場合には(ステップS516でNO)、終了指示を受け付けたかを判定する(ステップS520)。ステップS520で終了指示を受け付けたと判定した場合には(ステップS520でYES)、パスワード登録処理を行うことなく本処理を終了する。一方、登録ボタンの押下指示も終了指示も受け付けていない場合にはステップS501に処理を進め、それ以降の処理を繰り返し行うことになる。以上がクライアント装置101によって行われるパスワードデータ入力受付処理の詳細である。
【0071】
次に、図6を参照して、クライアント装置101でのパスワードデータ入力受付処理に応じてウェブサーバ102及びAPサーバ103によって行われるパスワード複雑性評価・登録処理について説明する。
【0072】
まず、ウェブサーバ102のCPU201は、クライアント装置101からのリクエストデータを受信すると(ステップS601)、該受信したリクエストデータをAPサーバ103に転送する(ステップS602)。ウェブサーバ102がステップS601でクライアント装置101から受信するリクエストデータとしては、図5のステップS509で送信されたパスワード複雑性評価要求のリクエストデータ(非同期通信)、図5のステップS518で送信されたパスワード登録要求のリクエストデータ(同期通信)があげられる。
【0073】
APサーバ103のCPU201は、ウェブサーバ102からリクエストデータを転送されると(ステップS621)、転送されたリクエストデータの種類を特定する。APサーバ103は、特定されたリクエストデータの種類によって、実行するサービスを特定する(ステップS622)ことになる。
【0074】
ウェブサーバ102より転送されたリクエストデータがパスワード登録要求のリクエストデータであると判定した場合には(ステップS623で「登録」)、パスワードを登録するためのサービスを実行し(ステップS624)、DBサーバ104が記憶しているユーザ情報テーブル1400にパスワードを追加登録する(ステップS625)。そして、その処理結果をDBサーバ104より受信し(ステップS626)、ウェブサーバ102に送信する(ステップS627)。
【0075】
一方で、ステップS623でパスワードの複雑性評価要求のリクエストデータであると判定した場合には、パスワード検証サービスを実行し(ステップS628)、検証に必要なユーザ情報をDBサーバが管理しているユーザ情報テーブル1400から取得する(ステップS629)。そして、複雑性評価要求のリクエストデータに含まれる入力中の文字列情報と、ステップS629で取得したユーザ情報とを用いて、パスワード検証を行う(ステップS630)。本発明では、ユーザ情報を用いてパスワード検証を検証することが可能であるので、次に示すようなパスワード検証を行うことができる。
【0076】
・パスワードにユーザの生年月日が含まれていないか。
・パスワードにユーザの氏名の一部が含まれていないか。
・パスワードにユーザの電話番号が含まれていないか。
・パスワードがユーザのメールアドレスのアカウントと同一ではないか。
【0077】
また、ユーザ情報を用いたパスワード検証以外にも次に示すパスワード検証を合わせて行うことが可能である。
【0078】
・パスワードにアルファベット、数字が夫々含まれているか。
・パスワードに英数文字以外(例えば%、@等)が含まれているか。
【0079】
そして、ステップS630では、上記のような複数のチェック項目夫々に対して、ステップS621で受信したリクエストデータに含まれる文字列情報に対するチェックを行い、その結果に従いパスワードの複雑性の度合いを示す評価値を算出することになる。例えば、パスワードにユーザの生年月日が含まれている場合には−30、氏名の一部が含まれている場合には−20、パスワードにアルファベット、数字の双方が含まれている場合には+20等、各チェック項目に値を設定しておき、それらの合計することで評価値を算出するなどの手法をとればよい。
【0080】
その後、ステップS630での複雑性評価により算出される評価値に応じてパスワード複雑性情報を作成し(ステップS631)、作成したパスワード複雑性情報をウェブサーバ102に対して送信する(ステップS632)。
【0081】
ウェブサーバ102のCPU201は、APサーバ103よりステップS627で送信されたパスワード登録処理結果を受信する(ステップS603)と、登録処理結果を含むレスポンスデータを作成し(ステップS604)、作成したレスポンスデータをクライアント装置101に同期通信で送信する(ステップS605)。
【0082】
また、ウェブサーバ102のCPU201は、APサーバ103よりステップS632で送信されたパスワード複雑性情報を受信すると(ステップS606)、パスワード複雑性情報を含むレスポンスデータを作成し(ステップS607)、レスポンスデータをクライアント装置101に非同期通信で送信する(ステップS608)。以上が、クライアント装置101のパスワード入力処理に応じてウェブサーバ102及びAPサーバ103により行われるパスワード複雑性評価・登録処理である。
【0083】
ここで、図9を参照して、図5に示すパスワードデータ入力受付処理が行われている間に表示されるパスワード入力画面800のパスワード複雑性表示の一例について説明する。
【0084】
図9の(1)は、パスワードとして登録不可の文字列が入力された場合のパスワード複雑性表示の一例を示している。図9の(1)に示すように、パスワードとして登録できない文字列が入力された場合には、例えばパスワード入力欄の背景色を変える等、通常の表示と異ならせるとともに、どのような禁止条件に合致しているかをメッセージ表示部902−1に表示する。これによりユーザは、パスワードの危険度合いや、どの禁止条件に合致しているかを認識することが可能となる。
【0085】
一方、パスワードとして登録可能な文字列が入力された場合には、図9の(2)に示すようにパスワードとして登録可能である旨の表示をメッセージ表示部902−2に表示する。
【0086】
また、本発明では、単にパスワードとして登録可能/不可能だけでなく、パスワードとして適切かを示す評価値に基づいて、パスワード入力部の背景表示を切り替える。
【0087】
例えば、以下の条件でパスワードの登録が可能であるとする。
・パスワードに姓、名が含まれない。
・パスワードに生年月日が含まれない。
・パスワードは8文字以上16文字以下。
・パスワードには必ず英字、数字が1字以上含まれる。
【0088】
このような条件のもと、1980年5月9日生まれの山田太郎さんがパスワードを登録しようとして、「12345ABC」や「1qaz2wsx」、「yama0001」等を入力した場合に、これらは登録が可能であると判断する。
【0089】
しかし、「1234ABCD」は、数字、英字ともに最初の文字から順に4字ずつ入力したものであり、入力に法則性があるので必ずしもパスワードとして適切であるとは言えない。
【0090】
また、「1qaz2wsx」は一見法則性がないようにも見えるが、キーボード配列の左2列に設定されている文字を順に入力しているだけであるので、この文字列にも一定の法則性があるといえる。
【0091】
また、「yama0001」のような文字列を入力された場合にも、姓の全てが含まれているわけではないが、その一部(yama)が用いられているので、他人に推測される可能性は、法則性がない文字列よりも高いといえる。
【0092】
上記のように、法則性がある文字列や個人情報の一部を用いている文字列は、法則性がない文字列と比較して、他人から推測される危険性が高いといえるので、これらの文字列が入力された場合には、パスワードとして登録は可能であるがリスクが高いパスワードであることをユーザに報知するようにする。このようなことを行えるようにするために、パスワード検証サービスにおいて、このような法則性のチェックも合わせて行うことになる。
【0093】
そのために、例えばパスワード登録が不可能な文字列の場合には、登録ボタンをグレーアウトするとともに、背景色を赤くしてユーザにパスワード登録をできないことを認識させる様に表示制御する。
【0094】
法則性がある文字列が入力された場合には、あらかじめ設定されているルールに従って、その危険度合い示す評価値が算出されるので、その危険度合いをユーザに認識させるようにする。例えば、個人情報の一部が含まれている等、非常に危険性度合いが高いと思われる場合には「橙」、入力された文字列に法則性がある等、比較的危険度合いが高い場合には「黄」、その他危険度合いに応じて「緑」、「青」といったようにパスワードの入力欄の背景色を変えることにより、その危険度合いを報知すれば良い。
【0095】
本発明では、登録ボタンが押されることでパスワード文字列の確定を行う前に、パスワードの危険度合いをユーザに報知するためのパスワード複雑性情報を表示するので、ユーザはその情報に応じて危険度合いを確認しながらパスワードの設定を行うことが可能となる。
【0096】
<第2の実施の形態>
以下、図10、図11を参照して、クライアント装置101のCPU201によって行われる本発明の第2の実施の形態におけるユーザ情報入力処理(図10)、ユーザ情報登録処理(図11)について説明する。尚、この処理に応じてウェブサーバ102及びAPサーバ103によって行われる処理は、別途図12を参照して説明する。
【0097】
第1の実施の形態におけるユーザ情報登録処理では、ユーザ情報を入力するための画面(ユーザ情報入力画面700)と、パスワード情報を入力するための画面(パスワード入力画面800)とを別の画面にする例について説明したが、第2の実施の形態では、同一の画面で入力する場合について説明する。
【0098】
まず、CPU201は、ディスプレイ装置210に図13に示すユーザ情報入力画面1300を表示する(ステップS1001)。この画面を表示するために用いられるHTMLデータはウェブサーバ102に保存されており、クライアント装置101は、ウェブサーバ102に対して本画面を表示するための情報を要求することになる。
【0099】
ここで、図13を参照して、第2の実施の形態におけるユーザ情報入力画面について説明する。図13はユーザ情報入力画面の構成の一例を示す図である。
【0100】
図13に示す通り、ユーザ情報入力画面1300は、氏名入力欄1301、氏名(ローマ字)入力欄1302、性別入力欄1303、生年月日入力欄1304、住所入力欄1305、電話番号入力欄1306、職業入力欄1307、メールアドレス入力欄1308、メールアドレス確認入力欄1309、ログインユーザ名入力欄1310、パスワード入力欄1311、登録ボタン1312等を備えて構成されている。
【0101】
ユーザは、本画面に設定されている各入力欄に自身に関するユーザ属性情報を、入力装置209を用いて夫々の入力欄に入力することになる。尚、この入力項目の内、複数の項目(例えば、氏名、生年月日、メールアドレス等)についてはパスワードの複雑性評価に用いる項目として設定されている。この画面を表示するHTMLデータには、複雑性評価に用いる項目として設定されている項目に対する編集処理、パスワード入力欄に対する編集処理が行われた場合に、非同期通信でそれらの入力欄に入力された情報をウェブサーバ102に送信するようなスクリプトが定義されている。そして、入力情報が送信されると、パスワードの複雑性評価が行われることになる。
【0102】
図10の説明に戻る。ユーザ情報入力画面1300をディスプレイ装置に表示後、当該画面に設定されている各種の入力欄等に対するユーザの入力装置209を介した操作を監視することになる(ステップS1002)。
【0103】
そして、ユーザ情報(パスワードを含む)の編集指示を受け付けたかを判定し(ステップS1003)、ユーザ情報の編集指示を受けたと判定した場合(ステップS1003でYES)には、処理をステップS1004に、ユーザ情報の編集指示以外の指示を受け付けたと判定した場合(ステップS1003でNO)には処理を図11のステップS1101に進める。
【0104】
ステップS1004では、パスワード入力欄に対する編集指示が行われたかを判定する。パスワード入力欄に対する編集指示が行われたと判定した場合には(ステップS1004でYES)、処理をステップS1007に進める。一方、パスワード以外の入力欄に対する編集指示が行われたと判定した場合には(ステップS1004でNO)、処理をステップS1005に進め、編集指示を受け付けた入力欄の表示の更新を行う。
【0105】
そして、ステップS1005の処理後、編集指示はパスワード複雑性評価に用いる属性情報に対する編集処理を受け付けたと判定した場合には(ステップS1006でYES)、処理をステップS1008に、一方、編集処理を受け付けたのはセキュリティ判定に用いる属性項目ではないと判定した場合には(ステップS1006でNO)、処理をステップS1002に戻す。
【0106】
ステップS1004の判定処理でパスワード入力欄に対して編集指示を受け付けたと判定した場合には(ステップS1004でYES)、パスワード入力欄の表示を更新する(ステップS1007)。
【0107】
そして、ステップS1007の処理終了後、または、ステップS1006でYESと判定した場合には、パスワード入力欄1311に入力されている文字数が所定の文字数(パスワードの最低文字数)以上であるかを判定し(ステップS1008)、所定文字数以上であると判定した場合には(ステップS1008でYES)、パスワード入力欄1311に入力されているパスワード情報及びパスワードの複雑性評価に使用する属性として設定されているユーザ属性の情報をユーザ情報入力画面より取得し(ステップS1009)、その後、ステップS1009で取得した各種の情報を含むパスワードの複雑性評価要求のリクエストデータを作成し(ステップS1010)、非同期通信部303−2により、作成したリクエストデータをウェブサーバ102に対して送信する(ステップS1011)。ウェブサーバ102では、このリクエストデータに応じたパスワード複雑性評価処理を行うことになる。この処理については図12を参照して後述する。
【0108】
クライアント装置101はリクエストデータ送信後、ウェブサーバ102よりステップS1011で送信したリクエストデータに対する応答データであるレスポンスデータを非同期通信部303−2が受信すると(ステップS1012でYES)、処理をステップS1013に進め、レスポンスデータに含まれるパスワード複雑性情報に応じたパスワード複雑性表示を行う(ステップS1013)。
【0109】
ステップS1008で所定の文字数未満である(NO)と判定した場合には、処理をステップS1014に進め、既にパスワード複雑性表示が行われているかを判定する。パスワード複雑性表示が行われている場合には、編集に伴うパスワード情報の複雑性評価が行われなかったため処理をステップS1015に進め、前回の評価結果であるパスワード複雑性表示を消去することになる。そして、ステップS1013または、ステップS1015の処理終了後、処理をステップS1002に戻し、それ以降の処理を繰り返し行うことになる。
【0110】
図10のステップS1003で、ユーザより受け付けた操作がユーザ情報の編集処理ではないと判定した場合には(NO)、処理を図11のステップS1101に進める。
【0111】
クライアント装置101のCPU201は、ステップS1101において、ユーザより図13の登録ボタン1312に対する押下指示を受け付けたかを判定する(ステップS1101)。登録ボタンに対する押下指示を受け付けた(YES)と判定した場合には処理をステップS1102に、受け付けていない(NO)と判定した場合には、処理をステップS1110に進める。
【0112】
クライアント装置101のCPU201は、ステップS1102において、ユーザ情報入力画面1300中で入力が必須であるとされている項目の全てに入力が行われているかを判定する。この処理は、ユーザ情報入力画面1300の表示に用いられるHTMLデータ中に登録ボタン1312に対する押下指示がなされた場合に実行するスクリプトが設定されており、そのスクリプトを実行することで判定処理を行うことになる。このスクリプトにより、入力必須項目とされている属性情報それぞれがブランクでないかを判定する処理を行う。
【0113】
入力必須項目とされている属性情報を入力する入力欄に全て入力がなされている(YES)と判定した場合には、処理をステップS1103に、入力がされていない入力必須項目があると判定した場合には、処理をステップS1109に進める。
【0114】
ステップS1103では、パスワード入力欄1311に入力されているパスワード情報が登録可能であるかをウェブサーバ102から受信したパスワード複雑性情報に従って判定する。パスワードが登録可能である(YES)と判定した場合には処理をステップS1104に、登録不可である(NO)と判定した場合には処理をステップS1109に進める。
【0115】
ステップS1103でYESと判定すると、クライアント装置101のCPU201は、ユーザ情報入力画面1300の各種入力部に入力された情報を取得し(ステップS1104)、該取得した入力情報を含む、ユーザ情報登録要求のためのリクエストデータを作成し(ステップS1105)、そのリクエストデータを同期通信部303−1よりウェブサーバ102に対して送信する(ステップS1106)。このリクエストデータに応答してウェブサーバ102によって行われる処理については、図12を参照して説明する。
【0116】
そして、ステップS1106でウェブサーバ102に送信したリクエストデータに応じた処理を行った結果ウェブサーバ102より送信されたレスポンスデータを取得すると(ステップS1107)、そのレスポンスデータに応じて登録処理結果をディスプレイ装置210に表示する(ステップS1108)。
【0117】
ステップS1102、S1103でNOと判定した場合には、処理をステップS1109に進め、警告メッセージを表示する。ステップS1102でNOと判定した場合には、必須の入力項目に対する入力がされていないことを示す警告メッセージを、ステップS1103でNOと判定した場合には、パスワード入力欄1311に入力された文字列がパスワードとして登録できないことを示す警告メッセージを表示する。
【0118】
ステップS1101で登録ボタンの押下指示を受け付けていないと判定した場合には処理をステップS1110に進め、終了指示を受け付けたかを判定する。終了指示を受け付けていないと判定した場合には処理を図10のステップS1002に進める。一方、終了指示を受け付けた場合には本処理を終了することになる。
【0119】
次に、図12を参照して、クライアント装置101によって行われるユーザ情報入力処理(図10)、ユーザ情報登録処理(図11)に応じて、ウェブサーバ102、APサーバ103によって行われるパスワード複雑性評価・登録処理について説明する。
【0120】
まず、ウェブサーバ102のCPU201は、クライアント装置101からのリクエストデータを受信すると(ステップS1201)、該受信したリクエストデータをAPサーバ103に転送する(ステップS1202)。ウェブサーバ102がステップS1201でクライアント装置101から受信するリクエストデータとしては、図10のステップS1011で送信されたパスワード複雑性評価要求のリクエストデータ(非同期通信)、図11のステップS1106で送信されたパスワード登録要求のリクエストデータがあげられる。
【0121】
APサーバ103のCPU201は、ウェブサーバ102からリクエストデータを転送されると(ステップS1221)、転送されたリクエストデータの種類を特定する。APサーバ103は、特定されたリクエストデータの種類によって、実行するサービスを特定することになる(ステップS1222)。
【0122】
ウェブサーバ102より転送されたリクエストデータがパスワード登録要求のリクエストデータであると判定した場合には(ステップS1223で登録)、パスワードを登録するためのサービスを実行し(ステップS1224)、DBサーバ104が記憶しているユーザ情報テーブル1400にパスワードを追加登録する(ステップS1225)。そして、その処理結果をDBサーバより受信し(ステップS1226)、ウェブサーバ102に送信する(ステップS1227)。
【0123】
一方で、ステップS1223でパスワードの複雑性評価要求のリクエストデータであると判定した場合には、パスワード検証サービスを実行する(ステップS1228)。
【0124】
パスワード検証に必要となるパスワードとして設定しようとしている文字列やユーザ属性情報は、ステップS1221でウェブサーバ102から受信したリクエストデータに含まれているので、APサーバ103のCPU201は、リクエストデータからパスワード複雑性評価に必要となる各種のデータを取得する(ステップS1229)。そして、ステップS1229で取得したパスワードとして設定しようとしている文字列及びユーザ属性情報とを用いて、パスワードの複雑性評価を行う(ステップS1230)。第2の実施の形態においても、第1の実施の形態と同様ユーザ属性情報がパスワードに設定しようとしている文字列に含まれていないかという検証を含む、パスワードの複雑性を判定するためのパスワード複雑性評価が可能であり、その結果をユーザに通知することで、ユーザが設定しようとしているパスワードの複雑性をユーザに対して報知することが可能である。
【0125】
そして、ステップS1230では、あらかじめ設定されている複数のチェック項目夫々に対して、ステップS1221で受信したリクエストデータに含まれる文字列情報に対するチェックを行い、その結果に従いパスワードのセキュリティの度合いを示す評価値を算出することになる。
【0126】
その後、ステップS1230での複雑性評価による各チェック項目に対するチェック結果及びその結果算出される評価値等に応じてパスワード複雑性情報を作成し(ステップS1231)、作成したパスワード複雑性情報をウェブサーバ102に対して送信する(ステップS1232)。
【0127】
ウェブサーバ102のCPU201は、APサーバ103よりステップS1227で送信されたパスワード登録処理結果を受信すると(ステップS1203)、登録処理結果を含むレスポンスデータを作成し(ステップS1204)、作成したレスポンスデータをクライアント装置101に同期通信で送信する(ステップS1205)。
【0128】
また、ウェブサーバ102のCPU201は、APサーバ103よりステップS1232で送信されたパスワード複雑性情報を受信すると(ステップS1206)、パスワード複雑性情報を含むレスポンスデータを作成し(ステップS1207)、レスポンスデータをクライアント装置101に非同期通信で送信する(ステップS1208)。以上が、クライアント装置101のパスワード入力処理に応じてウェブサーバ102及びAPサーバ103により行われるパスワード複雑性評価・登録処理である。
【0129】
第2の実施の形態では、パスワード文字列の入力欄とユーザ属性の入力欄とが同一の画面で構成されているユーザ情報入力画面1300を用いた場合に入力されたパスワードの複雑性評価を行う例について説明した。このように、パスワード文字列と、当該パスワード文字列の複雑性評価を行うユーザ属性が同じ画面を用いて入力される場合に、パスワード文字列が先に入力され、その後ユーザ属性情報の入力、編集が行われる可能性もある。
【0130】
そこで、第2の実施の形態では、パスワード入力欄に対する編集が行われた場合だけでなく、パスワードの複雑性評価に用いるユーザ情報が編集された場合にも、ウェブサーバ102に対して非同期通信でパスワードの複雑性評価を行うよう構成した。これにより、ユーザはパスワードの確定前、つまりパスワードの入力の最中からその複雑性を把握することが可能となり、パスワードの入力及び確定を繰り返す必要がなくなる。
【0131】
<その他の実施形態>
また、本発明の目的は、以下のようにすることによって達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体(又は記録媒体)を、システム或いは装置に供給する。そして、そのシステム或いは装置の中央演算処理手段(CPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行する。この場合、記憶媒体から読み出されたプログラムコード自体が上述した実施形態の機能を実現することになり、そのプログラムコードを記録した記憶媒体は本発明を構成することになる。
【0132】
また、システム或いは装置の前記中央演算処理手段が読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、システム或いは装置上で稼働しているオペレーティングシステム(OS)等が実際の処理の一部又は全部を行う。その処理によって上述した実施形態の機能が実現される場合も含まれる。
【0133】
更に、記憶媒体から読み出されたプログラムコードが、前記システム或いは装置に挿入された機能拡張カードや、接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPU等が実際の処理の一部又は全部を行い、その処理によって上述した実施形態の機能が実現される場合も含まれる。
【符号の説明】
【0134】
101−1、101−2、101−3 クライアント装置
102 ウェブサーバ
103 アプリケーション(AP)サーバ
104 データベース(DB)サーバ
105 LAN
106 インターネット
201 CPU
202 RAM
203 ROM
204 システムバス
205 入力コントローラ
206 ビデオコントローラ
207 メモリコントローラ
208 通信インターフェース(I/F)コントローラ
209 入力装置
210 ディスプレイ装置
211 外部メモリ
【特許請求の範囲】
【請求項1】
ユーザの認証処理に用いるパスワードの入力を受け付ける情報処理装置であって、
前記パスワードの入力を受け付ける第1の入力領域を含む入力画面を表示する表示手段と、
前記表示手段により表示された前記入力画面に含まれる前記第1の入力領域に対するパスワードの入力を受け付ける第1の受付手段と、
前記第1の受付手段で前記第1の入力領域に対するパスワード入力を受け付けることに応じて、該入力されたパスワードをサーバ装置に送信することで、前記第1の入力領域に対して入力されたパスワードの複雑性の度合いをユーザに報知するための評価情報の作成要求をサーバ装置に対して行う要求手段と、
前記要求手段による評価情報の作成要求に応じてサーバ装置で作成される評価情報を取得する取得手段と、
前記評価情報に応じて、ユーザに対してパスワードの複雑性の度合いを示す情報を表示する表示制御手段と、
を備えることを特徴とする情報処理装置。
【請求項2】
前記要求手段は、前記第1の領域に対して特定の文字数以上の入力がなされた場合に評価情報の作成要求をサーバ装置に対して行うこと
を特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記画面には、前記パスワードの複雑性の評価に用いられるユーザ情報の入力を受け付ける第2の入力領域がさらに含まれ、
前記要求手段はさらに、前記第2の入力領域に対する編集指示を受け付けることに応じて、さらに第2の入力領域に入力されたユーザ情報も合わせてサーバ装置に送信することで、前記第1の入力領域に対して入力されたパスワードの複雑性の度合いをユーザに報知するための評価情報の作成要求をサーバ装置に対して行うこと
を特徴とする請求項1または2に記載の情報処理装置。
【請求項4】
前記表示制御手段は、前記第1の入力領域の表示の背景色表示により、ユーザに対してパスワードの複雑性の度合いを示す情報を表示すること
を特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。
【請求項5】
ユーザの認証処理に用いるパスワードの入力を受け付ける情報処理装置による情報処理方法であって、
前記パスワードの入力を受け付ける第1の入力領域を含む入力画面を表示する表示工程と、
前記表示工程により表示された前記入力画面に含まれる前記第1の入力領域に対するパスワードの入力を受け付ける第1の受付工程と、
前記第1の受付工程で前記第1の入力領域に対するパスワード入力を受け付けることに応じて、該入力されたパスワードをサーバ装置に送信することで、前記第1の入力領域に対して入力されたパスワードの複雑性の度合いをユーザに報知するための評価情報の作成要求をサーバ装置に対して行う要求工程と、
前記要求工程による評価情報の作成要求に応じてサーバ装置で作成される評価情報を取得する取得工程と、
前記評価情報に応じて、ユーザに対してパスワードの複雑性の度合いを示す情報を表示する表示制御工程と、
を備えることを特徴とする情報処理方法。
【請求項6】
ユーザの認証処理に用いるパスワードの入力を受け付ける情報処理装置を、
前記パスワードの入力を受け付ける第1の入力領域を含む入力画面を表示する表示手段と、
前記表示手段により表示された前記入力画面に含まれる前記第1の入力領域に対するパスワードの入力を受け付ける第1の受付手段と、
前記第1の受付手段で前記第1の入力領域に対するパスワード入力を受け付けることに応じて、該入力されたパスワードをサーバ装置に送信することで、前記第1の入力領域に対して入力されたパスワードの複雑性の度合いをユーザに報知するための評価情報の作成要求をサーバ装置に対して行う要求手段と、
前記要求手段による評価情報の作成要求に応じてサーバ装置で作成される評価情報を取得する取得手段と、
前記評価情報に応じて、ユーザに対してパスワードの複雑性の度合いを示す情報を表示する表示制御手段
として機能させることを特徴とするコンピュータプログラム。
【請求項1】
ユーザの認証処理に用いるパスワードの入力を受け付ける情報処理装置であって、
前記パスワードの入力を受け付ける第1の入力領域を含む入力画面を表示する表示手段と、
前記表示手段により表示された前記入力画面に含まれる前記第1の入力領域に対するパスワードの入力を受け付ける第1の受付手段と、
前記第1の受付手段で前記第1の入力領域に対するパスワード入力を受け付けることに応じて、該入力されたパスワードをサーバ装置に送信することで、前記第1の入力領域に対して入力されたパスワードの複雑性の度合いをユーザに報知するための評価情報の作成要求をサーバ装置に対して行う要求手段と、
前記要求手段による評価情報の作成要求に応じてサーバ装置で作成される評価情報を取得する取得手段と、
前記評価情報に応じて、ユーザに対してパスワードの複雑性の度合いを示す情報を表示する表示制御手段と、
を備えることを特徴とする情報処理装置。
【請求項2】
前記要求手段は、前記第1の領域に対して特定の文字数以上の入力がなされた場合に評価情報の作成要求をサーバ装置に対して行うこと
を特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記画面には、前記パスワードの複雑性の評価に用いられるユーザ情報の入力を受け付ける第2の入力領域がさらに含まれ、
前記要求手段はさらに、前記第2の入力領域に対する編集指示を受け付けることに応じて、さらに第2の入力領域に入力されたユーザ情報も合わせてサーバ装置に送信することで、前記第1の入力領域に対して入力されたパスワードの複雑性の度合いをユーザに報知するための評価情報の作成要求をサーバ装置に対して行うこと
を特徴とする請求項1または2に記載の情報処理装置。
【請求項4】
前記表示制御手段は、前記第1の入力領域の表示の背景色表示により、ユーザに対してパスワードの複雑性の度合いを示す情報を表示すること
を特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。
【請求項5】
ユーザの認証処理に用いるパスワードの入力を受け付ける情報処理装置による情報処理方法であって、
前記パスワードの入力を受け付ける第1の入力領域を含む入力画面を表示する表示工程と、
前記表示工程により表示された前記入力画面に含まれる前記第1の入力領域に対するパスワードの入力を受け付ける第1の受付工程と、
前記第1の受付工程で前記第1の入力領域に対するパスワード入力を受け付けることに応じて、該入力されたパスワードをサーバ装置に送信することで、前記第1の入力領域に対して入力されたパスワードの複雑性の度合いをユーザに報知するための評価情報の作成要求をサーバ装置に対して行う要求工程と、
前記要求工程による評価情報の作成要求に応じてサーバ装置で作成される評価情報を取得する取得工程と、
前記評価情報に応じて、ユーザに対してパスワードの複雑性の度合いを示す情報を表示する表示制御工程と、
を備えることを特徴とする情報処理方法。
【請求項6】
ユーザの認証処理に用いるパスワードの入力を受け付ける情報処理装置を、
前記パスワードの入力を受け付ける第1の入力領域を含む入力画面を表示する表示手段と、
前記表示手段により表示された前記入力画面に含まれる前記第1の入力領域に対するパスワードの入力を受け付ける第1の受付手段と、
前記第1の受付手段で前記第1の入力領域に対するパスワード入力を受け付けることに応じて、該入力されたパスワードをサーバ装置に送信することで、前記第1の入力領域に対して入力されたパスワードの複雑性の度合いをユーザに報知するための評価情報の作成要求をサーバ装置に対して行う要求手段と、
前記要求手段による評価情報の作成要求に応じてサーバ装置で作成される評価情報を取得する取得手段と、
前記評価情報に応じて、ユーザに対してパスワードの複雑性の度合いを示す情報を表示する表示制御手段
として機能させることを特徴とするコンピュータプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2012−83917(P2012−83917A)
【公開日】平成24年4月26日(2012.4.26)
【国際特許分類】
【出願番号】特願2010−228940(P2010−228940)
【出願日】平成22年10月8日(2010.10.8)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.コンパクトフラッシュ
【出願人】(390002761)キヤノンマーケティングジャパン株式会社 (656)
【出願人】(312000206)キヤノンMJアイティグループホールディングス株式会社 (259)
【出願人】(592135203)キヤノンITソリューションズ株式会社 (528)
【Fターム(参考)】
【公開日】平成24年4月26日(2012.4.26)
【国際特許分類】
【出願日】平成22年10月8日(2010.10.8)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.コンパクトフラッシュ
【出願人】(390002761)キヤノンマーケティングジャパン株式会社 (656)
【出願人】(312000206)キヤノンMJアイティグループホールディングス株式会社 (259)
【出願人】(592135203)キヤノンITソリューションズ株式会社 (528)
【Fターム(参考)】
[ Back to top ]