(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0011】
既述したように、ユーザが中間者攻撃を受けている場合に、その事実をユーザが認識することは容易ではなかった。そのため、悪意ある第三者のプロキシサーバがユーザ端末と認証サーバ間の通信に介在した場合、ユーザ認証に関連する様々な情報が、ユーザが気づかないうちに、第三者へ漏洩してしまう可能性がある。
【0012】
また現在、送信元IPアドレスに基づき送信元装置が存在する地理的な位置(例えば設置場所の住所)を通知するウェブサービスが提供されている。
【0013】
実施の形態の認証サーバは、ユーザの第1端末から認証要求を受け付けた場合に、その要求電文が含む送信元IPアドレスに対応する送信元の位置情報を取得する。そして、送信元の位置情報を、認証要求を受け付けた経路とは異なる経路を介して、ユーザの第2端末へ通知する。
【0014】
これにより、ユーザの第1端末と認証サーバとの通信に、プロキシサーバが介在する場合、そのプロキシサーバの位置情報がユーザに通知される。したがって、そのプロキシサーバが悪意ある第三者が設置したもので、ユーザが中間者攻撃を受けている場合に、ユーザがその事実を認識しやすくなるよう支援できる。また、中間者攻撃を受けている可能性が高いとユーザが判断する場合は、認証サーバによるユーザ認証を第2端末からキャンセルすることで、個人情報等の漏洩を防止できる。
【0015】
なお上記の第1端末および第2端末は、同一のユーザが使用する情報処理装置であり、実施の形態では第1端末をPCとし、第2端末をスマートフォンとする。ただし第1端末と第2端末は同じ種類の機器であってもよく、また、PC・スマートフォン・携帯電話機・タブレット端末等の任意の組み合わせであってもよい。
【0016】
図1は、実施の形態の認証システムの構成を示す。認証システム100は、1人のユーザが所有する情報処理装置としてのPC10およびスマートフォン12と、認証サーバとしてのIdp(Identity Provider)装置20と、位置情報サーバ26を備える。Idp装置20とPC10は、要求側経路30を介してデータを送受し、Idp装置20とスマートフォン12は、要求側経路30とは異なる確認側経路32を介してデータを送受する。
【0017】
要求側経路30と確認側経路32は、経路上で通信を中継する通信機器の少なくとも一部が異なるものであってよく、一部の通信機器が共通してもよい。また要求側経路30を提供する通信事業者やプロバイダ事業者と、確認側経路32を提供する通信事業者やプロバイダ事業者の少なくとも一部が異なってもよい。また要求側経路30はIP網による経路である一方、確認側経路32は電話網による経路であってもよく、その逆でもよい。また要求側経路30は、ウェブサーバとウェブクライアントの同期通信網であってもよく、確認側経路32は、メールサーバを介した非同期通信網であってもよい。
【0018】
本実施の形態では、要求側経路30上にプロキシサーバ24が存在し、プロキシサーバ24は、要求側経路30を流れる通信データを中継する。プロキシサーバ24は、ユーザが契約する通信事業者やプロバイダ事業者が設置した正規のプロキシサーバかもしれないし、悪意のある第三者が中間者攻撃を行うために設置した不正のプロキシサーバかもしれない。このように、要求側経路30は、悪意のある第三者が不正なプロキシサーバを設置することを完全に排除することが難しい経路であるが、確認側経路32は、不正なプロキシサーバが存在する可能性が要求側経路30より低い経路であることが望ましい。言い換えれば、確認側経路32は、セキュリティ上、要求側経路30より安全な経路であることが望ましい。
【0019】
位置情報サーバ26は、通信網上に設置された複数の機器について、各機器のIPアドレスと、各機器が設置された地理的な位置を示す情報(以下、単に「位置情報」と呼ぶ。)とを対応づけたデータベースを保持する。位置情報サーバ26は、位置情報を問い合わせるためのAPIを外部へ公開し、外部装置からIPアドレスを指定した位置情報の問い合わせ(上記APIの呼び出し)を受け付けると、そのIPアドレスに対応づけられた位置情報を問い合わせ元へ提供する。位置情報は、地図上での各機器の設置位置とも言え、本実施の形態では国名・都市名・緯度・経度を含むものとする。
【0020】
RP装置22は、OpenIDの規格で定められたRPとして機能し、外部装置が発行したユーザIDによるログインを受け入れて、各種のサービスをPC10へ提供するウェブサーバである。本実施の形態におけるユーザIDの提供主体はIdp装置20である。以下、IDの設定やユーザ認証に関するRPおよびIdpの処理について特に言及しない場合は、公知のOpenID規格に準ずるものとする。
【0021】
RP装置22は、PC10からウェブコンテンツを要求されると、Idp装置20へのリダイレクト指示と、ユーザ属性の提供要求を含む認証依頼をPC10へ返信する。Idp装置20は、PC10から認証要求を受け付けるとユーザ認証を行い、ユーザ認証に成功すると、ユーザ属性情報を含む認証情報をPC10へ提供する。PC10はIdp装置20から取得した認証情報をRP装置22へ提供し、RP装置22はその認証情報にもとづいてPC10へウェブコンテンツを提供する。
【0022】
図2は、
図1のIdp装置20の機能構成を示すブロック図である。Idp装置20は、通信処理部40とユーザ情報保持部42とユーザ認証部44を備える。
【0023】
本明細書のブロック図において示される各ブロックは、ハードウェア的には、コンピュータのCPUをはじめとする素子や機械装置で実現でき、ソフトウェア的にはコンピュータプログラム等によって実現されるが、ここでは、それらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックはハードウェア、ソフトウェアの組合せによっていろいろなかたちで実現できることは、当業者には理解されるところである。例えば、
図2の各ブロックは、プログラムモジュールとして記録媒体に格納され、Idp装置20のストレージへインストールされてもよい。そして、各ブロックに対応するプログラムモジュールがメインメモリに読み出されてCPUにより実行されることで、各ブロックの機能が実現されてもよい。後述する
図3でも同様である。
【0024】
通信処理部40は、PC10、スマートフォン12、位置情報サーバ26と通信する。例えば、PC10、スマートフォン12、位置情報サーバ26とHTTPによりデータを送受する。また、公知のプッシュ通知(Push Notification)の方法にしたがって、スマートフォン12へデータを通知する。
【0025】
ユーザ情報保持部42は、ユーザに関する各種情報を保持する。具体的には、ユーザが予め登録した、もしくは、ユーザに予め払い出したIDおよびパスワードを保持する。また、ユーザの個人情報を含む様々な属性情報、例えば性別や、生年月日、メールアドレス、電話番号、クレジットカード番号を保持する。
【0026】
またユーザ情報保持部42は、ユーザの第1端末からの認証要求に対応して確認情報を通知すべきユーザの第2端末の情報を保持する。第2端末の情報は、Idp装置20がユーザの第2端末へ確認情報を通知するために必要な情報であり、具体的には、ユーザの第2端末へのプッシュ通知を行うために必要な情報である。例えば、第2端末の個体識別番号や電話番号、IPアドレス、MACアドレス等であってもよい。
【0027】
ユーザ認証部44は、ユーザ認証のためのデータ処理を実行するアプリケーションである。ユーザ認証部44は、認証要求受付部46と、認証処理部48と、位置情報取得部50と、確認情報通知部52と、確認結果受付部54と、認証情報提供部56を含む。
【0028】
認証要求受付部46は、ユーザ認証の要求をPC10から受け付け、所定のユーザ認証処理を実行する。例えば認証要求受付部46は、ユーザIDおよびパスワードの入力フィールドを含むログイン画面のデータをPC10へ提供し、ユーザがログイン画面に入力したユーザIDおよびパスワードをPC10から取得する。そして、ユーザが入力したユーザID・パスワードと、ユーザ情報保持部42に予め格納されたユーザID・パスワードを照合し、これらが整合する場合にユーザ認証に成功したと判定してもよい。
【0029】
また実施の形態のユーザ認証要求は、ユーザ属性情報(例えばメールアドレスやクレジットカード番号等)の提供要求を含む。認証要求受付部46は、ユーザ認証に成功した場合、ユーザ認証要求で要求されたユーザ属性情報をPC10へ提供することを許可する。その一方、ユーザ認証に失敗した場合、もしくは、後述するようにスマートフォン12からユーザ認証のキャンセルが指示された場合、ユーザ認証要求で要求されたユーザ属性情報をPC10へ提供することを禁止する。
【0030】
位置情報取得部50は、ユーザ認証要求のIPパケットで指定された送信元IPアドレスを特定し、その送信元IPアドレスを指定した位置情報の提供要求を位置情報サーバ26へ送信する。そして、その送信元IPアドレスに対応する位置情報を位置情報サーバ26から取得する。
【0031】
確認情報通知部52は、位置情報取得部50により取得された位置情報と、ユーザ認証要求で要求されたユーザ属性情報の項目名の両方を確認情報としてスマートフォン12へ通知する。本実施の形態では、公知のプッシュ通知の方式により確認情報をスマートフォン12へ提供して表示させる。また確認情報通知部52は、確認情報のハッシュ値をIdp装置20の暗号鍵で暗号化した署名データを確認情報へ付加してスマートフォン12へ提供する。
【0032】
確認結果受付部54は、確認情報通知部52による確認情報の通知に対する応答として、ユーザ認証の続行もしくはキャンセルを指示するデータをスマートフォン12から受け付ける。
【0033】
認証情報提供部56は、ユーザ認証の続行指示がスマートフォン12から受け付けられた場合、ユーザ認証の結果を示すアサーションやトークンのデータ(以下、「ユーザ認証情報」とも呼ぶ。)を設定する。認証情報提供部56は、ユーザ認証要求で要求されたユーザ属性情報をユーザ認証情報に含めてPC10へ提供する。PC10は、Idp装置20から取得したユーザ認証情報をRP装置22へ提供することにより、所望のウェブコンテンツをRP装置22から取得する。
【0034】
認証情報提供部56は、ユーザ認証のキャンセル指示がスマートフォン12から受け付けられた場合、ユーザ認証がキャンセルされた旨の情報をPC10へ提供する。この場合、認証情報提供部56は、ユーザ認証要求で要求されたユーザ属性情報をPC10へ提供することを抑制する。
【0035】
図3は、
図1のスマートフォン12の機能構成を示すブロック図である。スマートフォン12は、表示装置(例えば液晶ディスプレイ)と入力装置(例えばタッチパネル)とを一体化したタッチスクリーン60と、操作検出部62と、表示制御部64と、通信処理部66と、GPS受信部68と、ユーザ確認部70を備える。
【0036】
操作検出部62は、タッチスクリーン60や、スマートフォン12に配置された各種のボタンに対して入力されたユーザ操作を検出する。表示制御部64は、タッチスクリーン60の表示内容を制御し、ユーザ確認部70から出力された表示用のデータ(例えばIdp装置20から提供された確認データ)をスマートフォン12に表示させる。通信処理部66は、確認側経路32を介して、Idp装置20とデータを送受する。
【0037】
GPS受信部68は、GPS衛星から発信された信号を受信し、その信号に基づいてスマートフォン12の現在位置を示す情報を出力する。具体的には、スマートフォン12の現在位置を示す経度および緯度を出力する。
【0038】
ユーザ確認部70は、ユーザ認証の続行可否をユーザに確認するためのアプリケーションである。ユーザ確認部70は、確認情報受付部72と、署名確認部74と、現在位置取得部76と、確認画面設定部78と、確認結果通知部80を含む。
【0039】
確認情報受付部72は、Idp装置20から送信された確認情報を受け付ける。署名確認部74は、確認情報に付加された署名データをIdp装置20の公開鍵で復号し、復号結果である確認情報のハッシュ値を取得する。そして、署名確認部74自身で生成した確認情報のハッシュ値と、上記署名データの復号結果であるハッシュ値とを照合することにより、確認情報に改ざんがあるか否かを確認する。
【0040】
現在位置取得部76は、GPS受信部68が出力した経度および緯度の値にもとづいてスマートフォン12の地理的な現在位置を示す情報(例えば国名・都市名)を取得する。例えば、GPS受信部68が出力した経度および緯度を指定した問い合わせを、通信処理部66を介して外部の住所特定サーバ(不図示)へ送信してもよい。この住所特定サーバは、経度および緯度の値を受け付けて、その値で特定される住所をスマートフォン12へ提供してもよい。またはスマートフォン12は、経度および緯度の組み合わせと、国名・都市名等の住所情報を対応づけた地図情報を予め保持してもよい。現在位置取得部76は、その地図情報を参照して、GPS受信部68が出力した経度および緯度の値に対応づけられた現在位置の住所を取得してもよい。
【0041】
確認画面設定部78は、Idp装置20から送信された確認情報が示す送信元位置と、ユーザ認証要求で要求されたユーザ属性情報の項目名と、現在位置取得部76が取得した現在位置住所を含む確認画面のデータを設定する。そして、確認画面のデータを表示制御部64へ渡してタッチスクリーン60に表示させる。
【0042】
また確認画面設定部78は、スマートフォン12の現在位置と、送信元位置との乖離が大きい場合に、中間者攻撃に対するユーザの注意を喚起するための所定の態様になるよう確認画面を設定する。例えば、ユーザの注意を喚起するための各種オブジェクト(注意喚起のためのメッセージや画像等)を確認画面に設定してもよい。また、送信元位置および/または現在位置の文字色、文字サイズ、背景色等を通常の態様とは異なる態様で表示させ、すなわち両者の違いを強調した態様で表示させてもよい。また、スマートフォン12の現在位置と、送信元位置との地理的な距離、例えば地図上で測定した距離が所定値以上の場合に、両者の位置の乖離が大きいと判定してもよい。また、スマートフォン12の現在位置と送信元位置のそれぞれが示す国が異なり、または、それぞれが地図上で離れた都市を示す場合に、両者の位置の乖離が大きいと判定してもよい。
【0043】
確認結果通知部80は、スマートフォン12に表示された確認画面に対して、ユーザ認証の続行を指示するユーザ操作が入力された場合、ユーザ認証の続行を示すデータをIdp装置20へ送信する。その一方、確認画面に対して、ユーザ認証のキャンセルを指示するユーザ操作が入力された場合、ユーザ認証のキャンセルを示すデータをIdp装置20へ送信する。また確認結果通知部80は、署名確認部74により確認情報の改ざんが検出された場合も、ユーザ認証のキャンセルを示すデータをIdp装置20へ送信する。
【0044】
以上の動作による認証システム100の動作を以下説明する。
図4は、認証システム100の動作を示すシーケンス図である。同図のプロキシサーバ24は、中間者攻撃に関与しない正規のプロキシサーバであることとする。PC10のウェブブラウザは、ユーザが所望するサービスの提供をRP装置22へ要求する(S10)。RP装置22は、ユーザIDやユーザ属性情報を含む認証情報の提供をPC10へ依頼する(S12)。例えば、Idp装置20のユーザ認証サービスのURLをリダイレクト先として指定するウェブページをPC10へ提供する。PC10はIdp装置20宛のユーザ認証要求を要求側経路30へ送出し(S14)、プロキシサーバ24はそのユーザ認証要求を透過的にIdp装置20へ転送する(S16)。
【0045】
Idp装置20は、ユーザ認証要求で指定された送信元IPアドレスに対応する送信元位置を位置情報サーバ26へ問い合わせ(S18)、その送信元位置を示す位置情報を位置情報サーバ26から取得する(S20)。Idp装置20は、送信元位置およびRP装置22により要求されたユーザ属性を示す確認情報を、確認側経路32を介してスマートフォン12へ提供する(S22)。スマートフォン12は、Idp装置20から提供された確認情報を確認画面に表示させることにより、ユーザ認証の続行可否をユーザに判断させる(S24)。
【0046】
図5は、スマートフォン12に表示された確認画面を示す。確認画面は、スマートフォン12自身で取得した現在位置を表示するエリア93、確認情報に含まれる送信元位置を表示するエリア95、同じく確認情報に含まれる要求対象のユーザ属性項目を表示するエリア97を含む。エリア95の送信元位置は、ユーザが契約するプロバイダ事業者のプロキシサーバ等の所在地となるため、エリア93の現在位置と必ずしも一致しない。ただし典型的には、エリア95の送信元位置とエリア93の現在位置とは近傍位置(例えば同一都道府県内や、隣接都道府県の範囲)になる。したがって、両者の位置が非常に離れている場合(例えば離れた都道府県や、国が異なる場合等)には、中間者攻撃を受けているリスクが比較的高いことをユーザに認識させやすくなる。
【0047】
またエリア97の要求属性に、ユーザが想定しない個人情報が表示される場合、例えば商品購入等に何ら関係のないRP装置22のウェブコンテンツをユーザが閲覧しようとしているにも関わらず、クレジットカード番号が要求されている場合には、中間者攻撃を受けているリスクが比較的高いことをユーザに認識させやすくなる。ユーザは、ユーザ認証を続行する場合(例えば中間者攻撃のリスクが低いと判断する場合であり、ユーザ属性の提供を許可する場合)には確認画面上の続行ボタン90にタッチし、ユーザ認証をキャンセルする場合はキャンセルボタン91にタッチする。
図4の動作例ではユーザが続行ボタン90にタッチすることとし、スマートフォン12はユーザ認証の続行指示をIdp装置20へ通知する(S26)。
【0048】
Idp装置20は、ユーザ認証の結果およびRP装置22により要求されたユーザ属性情報を含む認証情報をPC10宛に要求側経路30へ送出し(S28)、プロキシサーバ24はその認証情報を透過的にPC10へ転送する(S30)。PC10は、Idp装置20から取得した認証情報をRP装置22へ提供し(S32)、RP装置22は、その認証情報にもとづいてPC10から要求されたサービスをPC10へ提供する(S34)。
【0049】
仮にプロキシサーバ24が不正なものであり、これまでの認証システムのようにS18からS26の処理がなければ、ユーザは中間者攻撃を受けていることの検知が困難であり、S28において認証情報が不正なプロキシサーバ24により盗窃されてしまう。これを防止するための認証システム100の動作は
図6に関連して後述する。
【0050】
なお
図4には不図示であるが、Idp装置20の認証処理部48は、ユーザ認証の続行指示をスマートフォン12から受け付けたことを条件として、ユーザIDおよびパスワードの入力フィールドを含むログイン画面のデータをPC10へ提供してもよい。そして、ユーザがログイン画面に入力したユーザIDおよびパスワードをPC10から取得し、それらの情報にもとづいてユーザ認証の成否を判定してもよい。これにより、スマートフォン12の確認画面においてユーザがユーザ認証をキャンセルした場合、ユーザIDおよびパスワードを悪意のある第三者が設置したプロキシサーバ24が盗窃することを防止できる。
【0051】
図6は、認証システム100の動作を示すシーケンス図である。ただし同図のプロキシサーバ24は、中間者攻撃のために悪意のある第三者が要求側経路30に設置した不正なプロキシサーバである。この例では、DNSスプーフィングによりユーザが気づかないまま、外国に設置された不正なプロキシサーバ24にPC10がアクセスすることとする。
図6のS10からS14までの動作は
図4と同じであるため省略する。プロキシサーバ24は、ユーザ認証要求をPC10から受け付けると、RP装置22へ提供すべきユーザ属性の項目を、所望の盗窃対象の項目とするようユーザ属性を改変し(S15)、改変後のユーザ認証要求をIdp装置20へ転送する(S16)。
図6のS18からS24までの動作も
図4と同じであるため省略する。
【0052】
図7は、スマートフォン12に表示された確認画面を示す。
図7ではエリア93の現在位置と、エリア95の送信元位置の国が異なるため、注意喚起オブジェクト99が表示されている。これにより、中間者攻撃を受けているリスクが比較的高いことをユーザに認識させやすくなる。またエリア97には重要な個人情報が要求されていることが表示されるため、セキュリティ上のリスクが比較的高いことをユーザに認識させやすくなる。
図6の動作例ではユーザがキャンセルボタン91にタッチすることとし、スマートフォン12はユーザ認証のキャンセル指示をIdp装置20へ通知する(S40)。Idp装置20は、ユーザ認証処理を中断し、ユーザ認証がキャンセルされた旨をプロキシサーバ24を介してPC10へ通知する(S42)。
【0053】
図7で示すように、送信元位置情報および要求されたユーザ属性項目を、確認側経路32を介してスマートフォン12へ提供することで、不正なプロキシサーバ24によるそれらの情報の改ざんを防止しつつ、ユーザに中間者攻撃のリスクの高低を判断させやすくなる。ユーザが中間者攻撃のリスクが高いと判断し、ユーザ認証をキャンセルした場合は、要求されたユーザ属性情報を含む認証情報をPC10へ提供することを抑制することにより、ユーザ属性情報の盗窃を防止できる。
【0054】
なお、これまでの認証システムにおいても、
図6のS50以降で示すように、RP装置22が要求したユーザ属性項目をPC10に確認させることは考えられる。しかし、Idp装置20が、要求されたユーザ属性を示す確認情報をPC10宛に要求側経路30へ送出した場合(S50)、その確認情報を不正なプロキシサーバ24が改変してしまうことがあり得る(S52)。例えば、プロキシサーバ24は、ユーザ認証要求を改変して、クレジットカード番号を要求した(S15およびS16)ことを秘匿して、メールアドレスを要求したかのように確認情報を改変し、改変後の確認情報をPC10へ転送する(S54)。PC10において確認情報を処理する主体は一般的なウェブブラウザであるため、確認情報が改変されたことの検出は困難である。
【0055】
そのため、ウェブブラウザによる確認情報の表示時に(S56)、ユーザはメールアドレスの提供に過ぎないと認識して、提供を許可してしまう。その結果、その許可情報がプロキシサーバ24を介してIdp装置20へ伝達され(S58、S60)、Idp装置20は、クレジットカード番号等の重要な個人情報をPC10宛に送信してしまう。その結果、重要な個人情報がプロキシサーバ24で盗窃され、第三者に漏洩してしまう。既述したように、実施の形態の認証システム100では、要求されたユーザ属性項目を、確認側経路32を介してスマートフォン12へ提供することで、プロキシサーバ24による改ざんを防止しつつ、ユーザに中間者攻撃の存在有無を判断させやすくなる。また仮にIdp装置20からスマートフォン12へ提供される確認情報が改ざんされても、スマートフォン12の署名確認部74がその改ざんを検出し、ユーザ認証をキャンセルすることにより、ユーザ情報の漏洩を防止できる。
【0056】
以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。以下変形例を示す。
【0057】
第1の変形例を説明する。
上記実施の形態では、Idp装置20が提供を要求されたユーザ属性項目を示す情報(以下、「要求属性項目」とも呼ぶ。)をスマートフォン12に表示させた。変形例として、要求属性項目をPC10にも表示させてよく、例えば、
図5・
図7におけるエリア97の情報をPC10にも表示させてよい。そのために、
図6のS22・S24とS54・S56を並行して実行してもよい。この変形例によると、上記実施の形態と同様に、中間者攻撃の可能性が比較的低い確認側経路32を介して通知した要求属性項目をスマートフォン12に表示させることで、認証の続行可否をユーザが適切に判断しやすくなる。またこれに加えて、PC10で表示された要求属性項目とスマートフォン12で表示された要求属性項目とをユーザが容易に比較でき、これらの表示内容の違いから中間者攻撃の存在有無の判断が容易になり、ユーザ属性情報の盗窃を防止しやすくなる。
【0058】
この変形例において、PC10は、Idp装置20から要求側経路30を介して通知された要求属性項目を受け付け、要求属性項目を示す確認画面をディスプレイに表示させる確認画面表示部を備える。確認画面では、
図5・
図7におけるエリア97と同様に要求属性項目を表示し、認証処理を続行するか否か、すなわち要求属性項目の提供を許可するか否かをユーザに入力させる。またPC10は、確認画面での確認結果であり、認証処理を続行するか否か、すなわち要求属性項目の提供を許可するか否かを示す情報をIdp装置20へ通知する確認結果通知部も備える。
【0059】
図8は、認証システム100の動作を示すシーケンス図である。同図のプロキシサーバ24は、中間者攻撃のために悪意のある第三者が要求側経路30に設置した不正なプロキシサーバである。PC10のウェブブラウザは、ユーザが所望するサービスの提供をRP装置22へ要求する(S70)。RP装置22は、ユーザIDやユーザ属性情報を含む認証情報の提供をPC10へ依頼する(S72)。PC10はIdp装置20宛のユーザ認証要求を要求側経路30へ送出する(S74)。プロキシサーバ24は、ユーザ認証要求をPC10から受け付けると、RP装置22へ提供すべきユーザ属性の項目(例えばニックネーム)を、所望の盗窃対象の項目(例えばクレジットカード番号)とするよう改変し、改変後のユーザ認証要求をIdp装置20へ転送する(S76)。
【0060】
Idp装置20の確認情報通知部52は、要求属性項目(例えばクレジットカード番号)を示す確認情報をPC10宛に要求側経路30へ送出する(S78)。プロキシサーバ24は、確認情報をIdp装置20から受け付けると、要求属性項目を、ユーザが安全と考えると想定される属性項目(例えばニックネーム)へ改変して、改変後の確認情報をPC10へ送信する(S80)。PC10の確認画面表示部は、改変された確認情報を受け付けて、改変された要求属性項目を示す確認画面を表示させる。
【0061】
S78の処理と並行して、Idp装置20は、ユーザ認証要求で指定された送信元IPアドレスに対応する送信元位置を位置情報サーバ26へ問い合わせ(S82)、その送信元位置を示す位置情報を位置情報サーバ26から取得する(S84)。Idp装置20の確認情報通知部52は、送信元位置および要求属性項目(例えばクレジットカード番号)を示す確認情報をスマートフォン12宛に確認側経路32へ送出する(S86)。確認側経路32では確認情報は改変されることなくスマートフォン12へ伝送される。スマートフォン12はIdp装置20から提供された確認情報を表示させ、ユーザはクレジットカード番号の提供を要求されていることを認識してユーザ認証をキャンセルする。スマートフォン12は、ユーザ認証のキャンセル指示をIdp装置20へ通知する(S88)。
【0062】
ところで、PC10の確認画面にはニックネームの提供を要求されている旨が表示され、ユーザはスマートフォン12の確認画面の内容と、PC10の確認画面の内容とが不整合であることから、ユーザ認証の続行を禁止するよう判断できる。ここでは仮に、PC10の確認画面においてユーザ認証の続行、すなわち要求属性項目の提供をユーザが許可してしまったとする。
【0063】
PC10の確認結果通知部は、ユーザ認証の続行指示をIdp装置20へ送信し(S90)、プロキシサーバ24はその続行指示をIdp装置20へ転送する(S92)。ここで、Idp装置20の認証情報提供部56は、スマートフォン12からユーザ認証のキャンセル指示を受け付けたため、PC10からユーザ認証の続行指示を受け付けたか否かにかかわらず、ユーザ認証のキャンセル通知をPC10宛に送信する(S94)。また認証情報提供部56は、ユーザ認証処理を中断して、要求属性項目をPC10へ提供することを抑制する。なおキャンセル通知は、プロキシサーバ24からPC10へ転送され(S96)、PC10からRP装置22へ送信される(S98)。
【0064】
このように、PC10からのユーザ認証処理の続行指示にかかわらず、スマートフォン12からのユーザ認証処理のキャンセル指示を優先してユーザ認証処理を中断するため、重要なユーザ属性情報の漏洩を防止することができる。なお、Idp装置20の認証情報提供部56は、PC10からユーザ認証の続行指示を先に受け付けた場合も、スマートフォン12からのユーザ認証処理の続行指示を受け付けるまでは、要求属性項目をPC10へ提供することを抑制してもよい。言い換えれば、PC10からユーザ認証の続行指示を受け付け、かつ、スマートフォン12からもユーザ認証処理の続行指示を受け付けることを条件として、要求属性項目をPC10へ提供してもよい。これにより、
図8のS88とS90の先後にかかわらず、ユーザ属性情報の漏洩を防止できる。
【0065】
第2の変形例を説明する。
上記実施の形態では、認証装置の例としてOpenIDで規定されたIdpを示したが、本発明の認証装置の適用範囲はIdpに限られず、通信網を介してユーザ端末とユーザ情報を送受する種々の認証装置に適用できる。例えば、通販サイトにおいてユーザ認証を実行する、言い換えれば、通販サイトへのユーザのログイン可否を判定するウェブサーバやアプリケーションサーバにも適用できる。また上記実施の形態では、IDの設定やユーザ認証に関する基本構成はOpenIDの仕様に準ずるものとした。変形例として、これらの基本構成は他の仕様に準じてもよく、例えばSAML(Security Assertion Markup Language)の仕様に準ずるものであってもよい。
【0066】
第3の変形例を説明する。
上記実施の形態では、スマートフォン12はIdp装置20から提供された確認情報を画面表示することとしたが、確認情報の内容を示す音声を出力することにより、確認情報をユーザへ通知してもよい。また、スマートフォン12の現在位置と、確認情報が示す送信元位置との乖離が大きい場合に、ユーザの注意を喚起するための所定の音声をさらに出力してもよい。
【0067】
第4の変形例を説明する。
上記実施の形態では言及していないが、スマートフォン12のユーザ確認部70は、確認画面においてユーザ認証の続行が選択された場合に、そのときエリア95に表示された送信元位置を蓄積する承認情報保持部をさらに含んでもよい。ユーザ確認部70の確認画面設定部78は、Idp装置20から通知された確認情報が示す送信元位置が、承認情報保持部に格納済みの送信元位置に一致する場合は、スマートフォン12の現在位置と送信元位置との乖離の大きさにかかわらず、注意喚起オブジェクト99の表示を抑制してもよい。ユーザが一旦承認した送信元については確認画面での警告を非表示とすることで、度重なる警告表示により、却ってユーザに煩わしさを感じさせてしまうことを回避できる。
【0068】
また承認情報保持部は、送信元位置とユーザによる承認回数(続行ボタン90を押下した回数)とを対応づけて蓄積してもよく、確認画面設定部78は、Idp装置20から通知された確認情報が示す送信元位置が、承認情報保持部に格納済みの送信元位置に一致し、かつ、承認回数が所定回数(例えば3回)以上であるときに、注意喚起オブジェクト99の表示を抑制してもよい。
【0069】
請求項に記載の各構成要件が果たすべき機能は、実施の形態および変形例において示された各構成要素の単体もしくはそれらの連係によって実現されることも当業者には理解されるところである。