説明

認証装置、認証システム、認証方法および認証プログラム

【課題】 個々のRPがエンドユーザの認証を要求する際に、エンドユーザがパスワードを入力しなくとも認証を遂行できる認証システムを提供する。
【解決手段】 認証結果を利用してサービスを提供するサービスサイトに対して認証を要求するユーザエージェントの認証を実施する認証装置であって、サービスサイトからユーザ識別子を含む認証要求を受信するのに応じて、認証要求に基づいてユーザエージェントがトークンを利用可能か否かを判定する判定手段と、判定の結果に応じて生成した認証子要求を、ユーザエージェントに送信する認証子要求生成手段と、予めユーザエージェントに関連付けて発行された認証子とユーザ識別子と、ユーザエージェントから受信した認証子とユーザ識別子とに基づいて、ユーザエージェントの認証を実施すると共に、認証結果をサービスサイトに返信する認証手段とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は認証装置、認証システム、認証方法および認証プログラムに関する。
【背景技術】
【0002】
現在、インターネット上のサービスを利用するにあたり、利用者を認証することが必要なWebサイトがある。このような認証は、通常、サービスを提供するWebサイトが実施する。これに対して、サービスを提供するWebサイトではなく第三者が認証を実施する認証機構(認証局(CA: Certificate Authority))が近年提供されている。このような認証機構を利用するWebサイトでは、認証機構が、Webサイトに提供された利用者の識別子を利用することができる。すなわち、Webサイトが、取得した識別子を、認証機構に送信し、認証機構がパスワード等を使用して認証を実施する。認証機構は、認証の結果をWebサイトに通知する。
【0003】
このような認証機構として、例えばOpenID(identification)を用いる認証機構がある。OpenIDとは、認証機構が個々のユーザに与えるユニークなURL(Uniform Resource Locator)形式のIDである。OpenIDを用いれば、ユーザは様々なWebサイトに対して同じIDでログインすることができる。
【0004】
このようなOpenIDを用いた認証システムが、例えば非特許文献1に開示される。これを第1の認証システムと称する。第1の認証システムは、Relying Party、User AgentおよびOpenIDプロバイダを備える。
【0005】
OpenIDを用いた認証を実施し、その認証結果に応じてユーザにサービスを提供する要素を、一般にRelyingPartyと呼ぶ。RelyingPartyは、例えばユーザにサービスを提供するWebサイトである。
【0006】
UserAgentは、エンドユーザが利用するソフトウェアもしくはハードウェアであり、典型的にはWebブラウザである。
【0007】
OpenIDプロバイダは、OpenIDの発行を行うと共に、そのOpenIDを用いてエンドユーザの認証を実施する。OpenIDプロバイダは、OpenID認証サーバとも呼ばれる。
【0008】
以下、RelyingPartyをRP、UserAgentをUA、OpenIDプロバイダをOPとそれぞれ称して説明する。
【0009】
上記構成を有する第1の認証システムは次のように動作する。まず、エンドユーザが、UAを介してRPに対し、OPから発行されたユーザ識別子を提供する。これにより、認証の実施が開始される。次に、ユーザ識別子に含まれる情報に基づいて、RPが、エンドユーザの認証に用いるOPを確定する。次に、RPがエンドユーザのUAのアドレスを、OpenID認証要求と共にOPにリダイレクトする。
【0010】
OPは、エンドユーザがOpenID認証の遂行を認可されているか、かつそれを望んでいるかを確認する。そのために、OPは典型的にはUAに認証子を要求し、それに応答して認証子を取得する。OPは、エンドユーザのUAのアドレスを、認証を承認したという表明、もしくは認証失敗を示すメッセージと共にRPにリダイレクトする。RPは、OPから受信した情報を検証し、認証結果を得る。
【0011】
上記第1の認証システムによれば、複数のRPが、単一のOPに対してエンドユーザの認証を要求する場合に、エンドユーザは単一の認証子を用いてOPに認証遂行を促すことができるという効果がある。
【0012】
認証システムの他の例として、第2の認証システムが特許文献1に記載されている。第2の認証システムは、RP、UA、OPおよび中間認証サーバを備える。当該文献では、RPをサービスサイト、UAをユーザ端末、OPをOpenID認証サーバと記載しているが、本説明では上述の非特許文献1に倣って、それぞれRP、UA、OPと記載する。
【0013】
上記構成を有する第2の認証システムは次のように動作する。まず、エンドユーザのUAは、中間認証サーバにログインする。次に、エンドユーザのUAは、RPに対してOPから発行されたユーザ識別子を提供する。これにより、認証の実施が開始される。次に、RPはユーザ識別子に含まれる情報に基づいて、エンドユーザが認証に用いるOPを確定する。次に、RPはエンドユーザのUAのアドレスを、OpenID認証要求と共にOPにリダイレクトする。次に、OPは、エンドユーザがOpenID認証の遂行を認可されているか、かつそれを望んでいるかを確認するために、UAに認証子としてユーザ名とパスワードを要求し、それに応答して認証子を取得する。
【0014】
OPは、認証子を中間認証サーバに送信する。中間認証サーバは、エンドユーザが当該中間認証サーバにログインしているか否かに基づいて、認証の可否を判定する。OPは、エンドユーザのUAのアドレスを、認証を承認したという表明、もしくは認証失敗を示すメッセージと共に、RPへとリダイレクトする。RPは、OPから受信した情報を検証し、認証結果を得る。
【0015】
上記のような第2の認証システムによれば、中間認証サーバへのログインにあたり、既存の認証システムを用いることにより、上記第1の認証システムによる効果を得つつ、既存の認証システムによるエンドユーザ認証を行うことができるという効果がある。
【0016】
認証システムの他の例として、第3の認証システムが特許文献2に記載されている。第3の認証システムは、トークンと、ワンタイムパスワードバリデーションサーバと、トークンルックアップサービスと、リソースバリデーションサーバとを備える。トークンは、識別子を有し、ワンタイムパスワードを発生させるように構成されている。ワンタイムパスワードバリデーションサーバは、トークンによって発生されたワンタイムパスワードの妥当性確認をするように構成され、またネットワークアドレスを有する。
【0017】
トークンルックアップサービスは、トークン識別子をバリデーションサーバのネットワークのロケーションと相関付けるように構成されている。リソースバリデーションサーバは、トークンのユーザによって提供された少なくとも第1の認証要素の妥当性確認をし、第1の要素の妥当性確認が成功した場合、以下のように構成される。すなわち、リソースバリデーションサーバは、ワンタイムパスワードバリデーションサーバのロケーションに対する要求をトークンルックアップサーバに送り、ワンタイムパスワードバリデーション要求をワンタイムパスワードバリデーションサーバに送る。なお、トークンは、特許文献2に記載される、ハードウェアトークンであってもよい。
【0018】
上記構成を有する第3の認証システムは次のように動作する。すなわち、まずトークンを利用するユーザの、ユーザ名およびパスワードを例とする第一の認証要素と、トークンが生成するワンタイムパスワードと、トークン識別子とが、リソースバリデーションサーバに送られる。リソースバリデーションサーバは、第一の認証要素の妥当性を確認する。第一の認証要素が妥当である場合、リソースバリデーションサーバは、トークン識別子を添えたロケーション回答要求をトークンルックアップサーバに送る。
【0019】
トークンルックアップサーバは、送信されたトークン識別子に関連付けられた、バリデーションサーバのネットワークロケーションをリソースバリデーションサーバに回答する。リソースバリデーションサーバは、回答されたバリデーションサーバのネットワークロケーションへと、ワンタイムパスワードの妥当性確認要求を送る。ワンタイムパスワードバリデーションサーバは、ワンタイムパスワードの妥当性を確認し、リソースバリデーションサーバに回答する。リソースバリデーションサーバは、自身が判定した第一の認証要素の妥当性と、回答されたワンタイムパスワードの妥当性に基づいて、トークンのユーザへのサービス提供の妥当性を判定する。
【0020】
上記のような第3の認証システムによれば、複数のリソースバリデーションサーバにおいて、トークンを共有できるという効果がある。これは、トークンがハードウェアトークンであった場合に、エンドユーザが複数のトークンを所持しなくともよいことを意味している。
【0021】
また、特許文献3、4にも、ユーザ認証に関する技術が開示される。
【先行技術文献】
【非特許文献】
【0022】
【非特許文献1】OpenID Authenticatoin 2.0 - Final, http://openid.net/, (http://openid.net/specs/openid-authentication-2_0.html), December 5, 2007.
【特許文献】
【0023】
【特許文献1】特開2009−282561号公報
【特許文献2】特表2008−541242号公報
【特許文献3】特開2008−293518号公報
【特許文献4】特開2006−209488号公報
【発明の概要】
【発明が解決しようとする課題】
【0024】
第1の問題点は、上記関連技術では、個々のRPがエンドユーザの認証を要求するたびに、エンドユーザがパスワードを入力しなければならず、トークンを用いることによりパスワード入力を代替することができない点である。
【0025】
その理由は、第1および第2の認証システムは、エンドユーザによるパスワード入力を、トークンの利用で代替する手法が示されていないためである。また、第3の認証システムでは、トークンによる認証子を第二の認証情報に用いているが、第一の認証情報およびその妥当性確認においてパスワードの入力を省略、もしくは別の手段で代替する手法が示されていないためである。
【0026】
第2の問題点は、上記関連技術では、エンドユーザの認証において、トークンを所持するエンドユーザについては、パスワードの入力をトークンの利用により代替し、所持しないエンドユーザについては、パスワードの入力を促すことにより認証を行うことができない点である。
【0027】
その理由は、第1の認証システムでは、OPがあるエンドユーザについて、認証の遂行を認可されているかを確認する際に、UAに対して、トークンの利用か、パスワードの入力かのいずれかを、選択すると共に要求する仕組みが示されていないためである。
【0028】
また、第2の認証システムでは、OPがUAに対してパスワードの入力を要求するためである。また、第2の認証システムでは、第二の認証情報の生成手段を、エンドユーザがトークンを所持するか否かに依拠すると共に選択する手法が示されていないためである。
【0029】
また、特許文献3、4にも、認証システムが、UAに対して、トークンの利用か、パスワードの入力かのいずれかを選択すると共に要求する仕組みは示されていない。
【0030】
本願発明は、上記課題を鑑みてなされたものであり、個々のRPがエンドユーザの認証を要求する際に、エンドユーザがパスワードを入力しなくとも認証を遂行できる認証装置、認証システム、認証方法および認証プログラムを提供することを目的とする。
【課題を解決するための手段】
【0031】
本発明に係る認証装置は、認証結果を利用してサービスを提供するサービスサイトに対して認証を要求するユーザエージェントの認証を実施する認証装置であって、サービスサイトからユーザ識別子を含む認証要求を受信するのに応じて、該認証要求に基づいてユーザエージェントがトークンを利用可能か否かを判定する判定手段と、判定の結果に応じて生成した認証子要求を、ユーザエージェントに送信する認証子要求生成手段と、予めユーザエージェントに関連付けて発行された認証子とユーザ識別子と、ユーザエージェントから受信した認証子とユーザ識別子とに基づいて、ユーザエージェントの認証を実施すると共に、認証結果をサービスサイトに返信する認証手段とを備える。
【0032】
本発明に係るユーザエージェントは、認証結果を利用してサービスを提供するサービスサイトに対して認証の実施を要求するユーザエージェントであって、要求に応答して認証を実施する認証装置からトークンを読み出す指示を含む認証子要求を受信した場合は、該トークンから認証子を読み出し、パスワードを取得する指示を含む認証子要求を受信した場合は、パスワードの入力を促すと共にそれに応じて入力されたパスワードを取得する認証子取得手段を備える。
【0033】
本発明に係る認証システムは、認証結果を利用してサービスを提供するサービスサイトに対して認証を要求するユーザエージェントと、該ユーザエージェントの認証を実施する認証装置とを備えた認証システムであって、認証装置は、サービスサイトからユーザ識別子を含む認証要求を受信するのに応じて、該認証要求に基づいてユーザエージェントがトークンを利用可能か否かを判定する判定手段と、判定の結果に応じて生成した認証子要求を、ユーザエージェントに送信する認証子要求生成手段と、予めユーザエージェントに関連付けて発行された認証子とユーザ識別子と、ユーザエージェントから受信した認証子とユーザ識別子とに基づいて、ユーザエージェントの認証を実施すると共に、認証結果をサービスサイトに返信する認証手段とを備え、ユーザエージェントは、認証装置から受信した認証子要求に応じた認証子を取得すると共に、取得した認証子を認証装置に返信する認証子取得手段を備える。
【0034】
本発明に係る第1の認証方法は、認証結果を利用してサービスを提供するサービスサイトに対して認証を要求するユーザエージェントの認証を実施する認証方法であって、サービスサイトからユーザ識別子を含む認証要求を受信するのに応じて、該認証要求に基づいてユーザエージェントがトークンを利用可能か否かを判定し、判定の結果に応じて生成した認証子要求を、ユーザエージェントに送信し、予めユーザエージェントに関連付けて発行された認証子とユーザ識別子と、ユーザエージェントから受信した認証子とユーザ識別子とに基づいて、ユーザエージェントの認証を実施すると共に、認証結果をサービスサイトに返信する。
【0035】
本発明に係る第2の認証方法は、認証結果を利用してサービスを提供するサービスサイトに対して認証を要求するユーザエージェントと、ユーザエージェントの認証を実施する認証装置とを備えた認証システムにおける認証方法であって、サービスサイトからユーザ識別子を含む認証要求を受信するのに応じて、該認証要求に基づいてユーザエージェントがトークンを利用可能か否かを判定し、判定の結果に応じて生成した認証子要求を、ユーザエージェントに送信し、予めユーザエージェントに関連付けて発行された認証子とユーザ識別子と、ユーザエージェントから受信した認証子とユーザ識別子とに基づいて、ユーザエージェントの認証を実施すると共に、認証結果をサービスサイトに返信し、認証装置から受信した認証子要求に応じた認証子を取得すると共に、取得した認証子を認証装置に返信する。
【0036】
本発明に係る第1の認証プログラムは、認証結果を利用してサービスを提供するサービスサイトに対して認証を要求するユーザエージェントの認証を実施するコンピュータに、サービスサイトからユーザ識別子を含む認証要求を受信するのに応じて、該認証要求に基づいてユーザエージェントがトークンを利用可能か否かを判定する処理と、判定の結果に応じて生成した認証子要求を、ユーザエージェントに送信する処理と、予めユーザエージェントに関連付けて発行された認証子とユーザ識別子と、ユーザエージェントから受信した認証子とユーザ識別子とに基づいて、ユーザエージェントの認証を実施すると共に、認証結果をサービスサイトに返信する処理とを実行させる。
【0037】
なお同目的は、上記の各構成を有する認証装置、並びに対応する方法を、コンピュータによって実現するコンピュータ・プログラム、およびそのコンピュータ・プログラムが格納されている、コンピュータ読み取り可能な記憶媒体によっても達成される。
【発明の効果】
【0038】
本発明によれば、個々のRPがエンドユーザの認証を要求する際に、エンドユーザがパスワードを入力しなくとも認証を遂行できる効果が得られる。
【図面の簡単な説明】
【0039】
【図1】本発明の第1の実施形態に係る認証システムの構成を示すブロック図である。
【図2】本発明の第1の実施形態に係る認証システムのハードウエア構成を示す図である。
【図3】本発明の第1の実施形態に係る認証システムのトークン利用者データベースの一例を示す図である。
【図4】本発明の第1の実施形態に係る認証システムの動作を示すシーケンスチャートである。
【図5】本発明の第2の実施形態に係る認証システムの構成を示すブロック図である。
【図6】本発明の第2の実施形態に係る認証システムにて伝送されるHTTPリクエストの一例を示す図である。
【図7】本発明の第2の実施形態に係る認証システムの動作を示すシーケンスチャートである。
【図8】本発明の第3の実施形態に係る認証システムの構成を示すブロック図である。
【図9】本発明の第3の実施形態に係る認証システムの動作を示すシーケンスチャートである。
【図10】本発明の第4の実施形態に係る認証システムの構成を示すブロック図である。
【図11】本発明の第4の実施形態に係る認証システムの構成の他の例を示すブロック図である。
【図12】本発明の第5の実施形態に係る認証システムの構成を示すブロック図である。
【発明を実施するための形態】
【0040】
第1実施形態
次に、本発明の実施形態について図面を参照して詳細に説明する。
【0041】
本発明の第1の実施形態に係る認証システム100について説明する。認証システム100は、OpenIDを用いた認証を実施するシステムである。
【0042】
図1は、第1の実施形態に係る認証システム100の構成を示すブロック図である。認証システム100は、RelyingParty10、UserAgent20、OpenIDプロバイダ30を備える。
【0043】
RelyingParty10は、OpenIDを用いた認証を実施し、その認証結果に応じてユーザにサービスを提供する。RelyingParty10は、例えばユーザにサービスを提供するWebサイト(サービスサイト)である。
【0044】
UserAgent20は、ソフトウェアもしくはハードウェアによってエンドユーザに提供するユーザインタフェースであり、典型的にはWebブラウザである。OpenIDプロバイダ30は、エンドユーザがRelyingParty10にログインするための識別情報であるOpenIDの発行を行うと共に、OpenIDを用いてエンドユーザの認証を実施する。OpenIDプロバイダ30は、OpenID認証サーバとも呼ばれる。
【0045】
エンドユーザ50は、UserAgent20を介してRelyingParty10からのサービスを受ける。RelyingParty10は、エンドユーザ50の認証にあたり、OpenIDプロバイダ30による認証を利用する。また、UserAgent20はトークン40にアクセス可能である。OpenIDプロバイダ30は、エンドユーザ50の認証を実施するための認証子を、トークン40から読み出す、またはエンドユーザからの入力により取得することができる。ここで、トークン40とは、サービスの利用権限を有するユーザに、認証の助けとなるよう与えられる物理デバイスであり、例えばIC(integrated circuit)カードである。UA20は、カードリーダ等を介してトークン40を読み出すことができる。
【0046】
以降、RelyingParty10をRP10、UserAgent20をUA20、OpenIDプロバイダ30をOP30とそれぞれ称する。
【0047】
図1のRP10、UA20をそれぞれ搭載する装置、およびOP30は、それぞれ図2に示す構成を有する。図2に示す構成は、CPU90、メモリ等の記憶媒体91および記憶媒体91に含まれるプログラム92を備える。各装置のCPUは、各種ソフトウエア・プログラム(コンピュータ・プログラム)を実行することにより、RP10、UA20、OP30の全体的な動作を司る。本実施形態および以下に示す他の実施形態において、CPUが、メモリ等の記憶媒体を適宜参照しながら、以下に示すRP10、UA20、OP30が備える各機能のソフトウエア・プログラムを実行する。
【0048】
より具体的には、CPUは、メモリ等の記憶媒体を適宜参照しながら、RP10が備える認証確認部11、サービス提供部12等のソフトウエア・プログラムを実行する。また、CPUは、メモリ等の記憶媒体を適宜参照しながら、UA20が備える認証子取得部21等のソフトウエア・プログラムを実行する。また、CPUは、メモリ等の記憶媒体を適宜参照しながら、認証子要求生成部31、トークン利用可否判定部32、認証部34等のソフトウエア・プログラムを実行する。
【0049】
RP10の認証確認部11は、UA20を介したエンドユーザ50からのアクセスに応答して、認証の実施を開始する。または、認証確認部11は、認証結果を受信すると、その結果に応じてサービス提供部12にサービスの提供の開始を指示する。サービス提供部12は、エンドユーザに対してサービスを提供する。
【0050】
UA20の認証子取得部21は、認証子の取得を実施する。ユーザインタフェース22は、ユーザからの入力を受け付ける入力デバイス、並びに情報を表示するディスプレイ等によって構成される。
【0051】
OP30の認証子要求生成部31は、RP10から受信するOpenID認証要求に基づいて認証子要求の生成を実施する。トークン利用可否判定部32は、認証子要求生成部31からトークン利用可否判定要求の受信に応じて、ユーザ識別子を検索キーとして、トークン利用者データベース33を参照することによりトークンの利用可否を判定する。
【0052】
図3は、トークン利用者データベース33の一例を示す図である。図3に示すように、トークン利用者データベース33は、ユーザ識別子と、トークン利用可否に関する情報とを関連付けて格納する。認証部34は、OP30が予め発行すると共に認証情報データベース35に格納したユーザ識別子と認証子とに基づいて、認証を実施する。認証の手順については、一般的な処理であるためその説明を省略する。
【0053】
RP10とUA20は、通信インタフェース13,23を介して互いに通信を行う。また、UA20、OP30は、通信インタフェース23,36を介して互いに通信を行う。UA20は、トークン40と接続可能である。
【0054】
システムの利用準備
エンドユーザ50は、RP10のサービスを利用する前に、以下の処理を実施している。すなわち、エンドユーザ50は、予めUA20を介してOP30にユーザ識別子の発行要求を行っている。ユーザ識別子は、個々のユーザに与えられるユニークなURL形式のIDであるOpenIDである。例えば、「http://myid.example.com」といったOpenIDが挙げられる。OP30は、ユーザ識別子の発行要求に応答して、ユーザ識別子を発行すると共に、そのユーザ識別子を認証するための認証子を発行する。発行されたユーザ識別子と認証子は認証情報データベース35に格納される。
【0055】
エンドユーザ50は、ユーザインタフェース22を用いて上記ユーザ識別子の発行要求と共に、トークン利用情報をUA20を介してOP30に送信する。ここで、トークン利用情報とは、UA20がトークン40を利用できるか否かを示す情報である。
【0056】
エンドユーザ50は、トークン40を利用できる場合はトークン40をUA20に接続すると共に、トークンを利用可能である旨をUA20を介してOP30に送信する。トークン40を使用できない場合、エンドユーザ50は、UA20を介してその旨をOP30に送信する。
【0057】
OP30は、発行したユーザ識別子とエンドユーザ50からUA20を介して受信したトークン利用情報とを関連付けてトークン利用者データベース33に格納する。トークン利用情報は、トークンを利用可能であることを示す情報であっても、トークンを利用不可能であることを示す情報であってもよい。トークン利用情報がトークンを利用可能であることを示す情報である場合、トークン利用可否判定部32は、該ユーザ識別子に対応するエンドユーザはトークン40が利用可能であると判定し、そうでない場合は利用不可能であると判定してもよい(ホワイトリスト方式)。トークン利用情報がトークンを利用不可能であることを示す情報である場合、トークン利用可否判定部32は、トークン40が利用不可能である旨を読み出すと、該ユーザ識別子に対応するエンドユーザはトークン40が利用不可能であると判定し、そうでない場合は利用可能であると判定してもよい(ブラックリスト方式)。
【0058】
エンドユーザ50は、ユーザインタフェース22を利用して、OP30が発行したユーザ識別子と認証子をUA20を介して取得している。エンドユーザ50は、トークン40が利用できる場合は、認証子をUA20に接続したトークン40に記憶させておく。
【0059】
システムの利用
図4は、本発明の第1の実施形態に係る認証システム100が実行する認証処理のシーケンスチャートである。係るシーケンスチャートは、図1に示す認証システム100において、RP10、UA20をそれぞれ搭載する装置、およびOP30がそれぞれ備えるCPUが実行するソフトウエア・プログラムの処理手順を表す。図1、図4を参照して、認証システム100の動作について説明する。
【0060】
エンドユーザ50は、RP10が提供するサービスを利用したい場合、ユーザインタフェース22を介してOP30から予め発行されているユーザ識別子をUA20に入力する。UA20は、OpenID認証を開始する。すなわち、UA20は、受け取ったユーザ識別子を含むOpenID認証要求をRP10に送信する(ステップST101)。
【0061】
RP10は、認証確認部11において、UA20からのOpenID認証要求を受信すると、そのOpenID認証要求に基づいて、認証を担当するOP30を決定する(ステップST102)。ユーザ識別子を含むOpenID認証要求には、ユーザの認証を行うための接続先を指定する情報が含まれる。認証確認部11は、決定したOP30に対してユーザ識別子を含めたOpenID認証要求を送信する(ステップST103、ST104)。この送信は、UA20によるリダイレクトを介して実施される。リダイレクトとは、あるURLから他のURLに情報を転送することである。
【0062】
OP30は、OpenID認証要求を受信すると、認証子要求生成部31にて認証子要求の生成を開始する(ステップST105)。認証子要求生成部31は、UA20に対する認証子要求を生成するために、トークン利用可否判定部32に対して、ユーザ識別子を含めたトークン利用可否判定要求を送信する(ステップST106)。トークン利用可否判定要求とは、エンドユーザ50がトークン40を利用可能であるか否かの判定の要求である。
【0063】
トークン利用可否判定部32は、トークン利用可否判定要求を受信すると、トークン40の利用可否を判定する(ステップST107)。すなわち、トークン利用可否判定部32はトークン利用可否判定要求に含まれるユーザ識別子をキーとして、トークン利用者データベース33を検索すると共に、該ユーザ識別子に関連付けられたトークン利用情報を読み出す。トークン利用可否判定部32は、読み出したトークン利用情報に基づいて、該ユーザ識別子に対応するエンドユーザ50がトークン40を利用可能であるか否かを判定する。
【0064】
トークン利用可否判定部32は、上記判定結果を認証子要求生成部31に返す(ステップST108)。認証子要求生成部31は、受け取った判定結果に基づいて、認証子要求を生成する(ステップST109)。具体的には、判定結果がトークン利用可能である場合、認証子要求生成部31は、トークン40を読み出す旨を含む認証子要求を生成する。一方、判定結果がトークン利用不可能である場合、認証子要求生成部31は、エンドユーザ50からのパスワード入力を受け付ける旨を含む認証子要求を生成する。認証子要求生成部31は、生成した認証子要求をUA20に送信する(ステップST110)。
【0065】
UA20は、上記認証子要求を取得すると、認証子取得部21において認証子要求に応じた認証子を取得する(ステップST111)。認証子要求が、トークン40を用いた認証子を要求している場合、認証子取得部21はトークン40から認証子を読み出す。一方、認証子要求が、パスワードの入力を用いた認証子を要求している場合、認証子取得部21はユーザインタフェース22を介してエンドユーザ50にパスワードの入力を促す。例えば、認証子取得部21は、パスワードの入力を促すメッセージと、パスワード入力欄を備えたグラフィカルユーザインタフェースを、ユーザインタフェース22を介してエンドユーザ50に提示する。認証子取得部21は、エンドユーザ50からユーザインタフェース22を介して入力されたパスワードを取得する。認証子取得部21は、トークン40から読み出した認証子、またはエンドユーザ50から取得したパスワードを、OP30に送る(ステップST112)。
【0066】
トークン40を用いた認証子または入力されたパスワードを受信したOP30は、認証部34において、受信した認証子に基づいて、OpenID認証要求に含まれるユーザ識別子の認証を実施する(ステップST113)。具体的には、認証部34は、UA20から受信した認証子とユーザ識別子の組が、認証情報データベース35に格納されている場合は認証成功、格納されていない場合は認証失敗と判定する。認証部34は、認証結果をRP10に送信する(ステップST114、ST115)。この送信は、UA20によるリダイレクトを介して行われる。
【0067】
RP10は、認証確認部11において受信した認証結果を検証する(ステップST116)。サービス提供部12は、認証結果が認証成功である場合はユーザにサービスの提供を開始し(ステップST117)、認証結果が認証失敗である場合はサービスの提供を開始しない。認証確認部11は、認証結果が認証失敗である場合はその旨をUA20に送信してもよい。
【0068】
以上のように、第1の実施形態によれば、OP30の認証子要求生成部31が、OpenID認証要求を受信すると、トークン利用可否判定部32がトークン利用者データベース33を参照することにより、エンドユーザ50のトークン40の利用可否を判断する。認証子要求生成部31は、エンドユーザ50がトークン40を利用可能である場合は、トークン40から認証子を読み出す指示を含む認証子要求を生成し、利用不可能である場合は、パスワードの入力を促す指示を含む認証子要求を生成する。UA20の認証子取得部21は、OP30からの認証子要求に応じて、トークン40から読み出した認証子、またはエンドユーザ50にパスワードの入力を促すことにより取得した認証子を、OP30に送信する。OP30は、取得した認証子に基づいてエンドユーザ50の認証を実施すると共に、認証結果をRP10に送信する。上記の構成により、認証システム100は、RP10がエンドユーザ50の認証を要求する際に、UA20がトークン40を利用可能であればエンドユーザ50はパスワードを入力しなくても認証を実施できる効果が得られる。また、認証システム100は、トークン40を利用可能なエンドユーザ50にはパスワードの入力をトークン40の利用により代替し、トークン40を利用可能でないエンドユーザ50にはパスワードの入力を促すことができるという効果が得られる。
【0069】
第2の実施形態
本発明の第2の実施形態に係る認証システム200について説明する。図5は、第2の実施形態に係る認証システム200の構成を示すブロック図である。図5に示した認証システム200において、図1に示した第1の実施形態に係る認証システム100と同一要素には同一符号を付し、その説明を省略する。
【0070】
システムの利用準備
認証システム200は、第1の実施形態に係る認証システム100と同様に、RP10、UA60およびOP70を備える。RP10は、図1の認証システム100のRP10と同様の構成要素を備える。UA60は、図1の認証システム100のUA20と同様の構成要素を備え、さらにトークン利用情報追加部24を備える。OP70は、図1に示した認証システム100のOP30と同様の構成要素を備えるが、トークン利用者データベース33は備えない。
【0071】
UA60のトークン利用情報追加部24は、UA60がRP10から送信されたOpenID認証要求をOP70にリダイレクトする際に、OpenID認証要求に対してUA60においてトークン40を利用できることを示す情報を追加する。具体的には、トークン利用情報追加部24は、例えば通信プロトコルとしてHTTPが利用される場合、HTTPリダイレクトによってOpenID認証要求が転送される際に、OP70へのHTTPリクエストのヘッダ部にトークン40が利用できることを示す情報を追加する。図6は、HTTPリクエストAの例を示す図である。HTTPリクエストAは、リクエスト部a、ヘッダ部b、ボディcを含む。図6に示すように、トークン利用情報追加部24は、HTTPリクエストのヘッダ部bにトークン40が利用できることを示す情報を追加してもよい。
【0072】
トークン利用情報追加部24は、予めUA60がトークン40を利用可能か否かを検出し、検出結果を保持しておく。例えば、トークン利用情報追加部24は、トークン40が接続され、かつ読み出し可能であることを検出した場合は、トークン利用可能である旨の情報を保持しておく。あるいは、エンドユーザ50が予めトークン40を利用可能であるか否かをトークン利用情報追加部24に登録しておいてもよい。ここでは、UA60にトークン40が接続され、かつ読み出し可能であることをトークン利用情報追加部24が保持しているとする。
【0073】
また、上記第1実施形態と同様に、エンドユーザ50は、予めUA60を介してOP70にユーザ識別子の発行要求を行い、発行されたユーザ識別子と認証子を取得している。発行されたユーザ識別子と認証子は、認証情報データベース35に格納される。
【0074】
システムの利用
図7は、認証システム200の動作を示すシーケンスチャートである。図5、図7を参照して、認証システム200の動作について説明する。
【0075】
エンドユーザ50は、RP10が提供するサービスを利用したい場合、ユーザインタフェース22を介して、OP70から予め発行されているユーザ識別子をUA60に入力する。UA60は、OpenID認証を開始する。すなわち、UA60は、受け取ったユーザ識別子を含むOpenID認証要求をRP10に送信する(ステップST201)。
【0076】
RP10は、認証確認部11においてOpenID認証要求を受信すると、そのOpenID認証要求に基づいて、認証を担当するOP70を決定する(ステップST202)。認証確認部11は、決定したOP70に対してユーザ識別子を含めたOpenID認証要求を送信する(ステップST203、ST205)。この送信は、UA60によるリダイレクトを介して実施される。
【0077】
UA60は、OpenID認証要求をOP70にリダイレクトする際に、トークン利用情報追加部24においてトークン40が利用可能である旨の情報(トークン利用可能情報)をOpenID認証要求に追記する。上述したように、トークン利用情報追加部24は、例えばOP70へのHTTPリクエストのヘッダ部にトークン40が利用できることを示す情報を追加してもよい。
【0078】
UA60は、トークン40を利用可能である旨の情報を追記されたOpenID認証要求を、OP70に送信する。OP70は、OpenID認証要求を受信すると、認証子要求生成部31において認証子要求の生成を開始する(ステップST206)。すなわち、認証子要求生成部31は、トークン利用可否判定部32に対してトークン利用可否判定要求を通知することにより、トークン40の利用可否の判定を要求する(ステップST207)。
【0079】
トークン利用可否判定部32は、受け取ったトークン利用可否判定要求にトークン利用可能である旨の情報が含まれていれば、トークン利用可と判定し、含まれていなければトークン利用不可と判定する(ステップST208)。トークン利用可否判定部32は、判定結果を認証子要求生成部31に返す(ステップST209)。
【0080】
認証子要求生成部31は、受け取った判定結果に基づいて、認証子要求を生成する(ステップST210)。具体的には、認証子要求生成部31は、判定結果がトークン利用可能である場合はトークン40を読み出す旨を含む認証子要求を生成し、判定結果がトークン利用不可能である場合はエンドユーザ50からのパスワード入力を受け付ける旨を含む認証子要求を生成する。認証子要求生成部31は、生成した認証子要求をUA60に送信(ステップST211)。
【0081】
以下、ステップST212からステップST218の動作は、上記第1の実施形態にて説明したステップST111からステップST117の動作と同様であるため、その説明を省略する。
【0082】
以上のように、第2の実施形態によれば、UA60のトークン利用情報追加部24が、UA60がトークン40の利用可能である旨をOpenID認証要求に追記するので、第1の実施形態における効果に加えて、UA60におけるトークン40の利用の有無を容易に切り換えることができるという効果が得られる。例えば、第2の実施形態によれば、一時的にトークン40を利用できない場合にトークン利用情報追加部24がOpenID認証要求にトークン40の利用可能である旨の情報の追記を実施しないという運用が可能である。
【0083】
第3の実施形態
本発明の第3の実施形態に係る認証システム300について説明する。図8は、第3の実施形態に係る認証システム300の構成を示すブロック図である。図8に示した認証システム300において、図1に示した第1の実施形態に係る認証システム100と同一要素には同一符号を付し、その説明を省略する。
【0084】
認証システム300は、第1の実施形態に係る認証システム100と同様に、RP10、UA80およびOP70を備える。RP10は、図1の認証システム100のRP10と同様の構成要素を備える。UA80は、図1の認証システム100のUA20と同様の構成要素を備え、さらにユーザ識別子生成部25を備える。OP70は、図1の認証システム100のOP30と同様の構成要素を備えるが、トークン利用者データベース33は備えない。
【0085】
システムの利用準備
第1の実施形態と同様に、UA80は、トークン40を接続すると共に、トークン40を利用できる。また、上記第1実施形態と同様に、エンドユーザ50は、予めUA80を介してOP70にユーザ識別子の発行要求を行い、発行されたユーザ識別子と認証子を取得している。発行されたユーザ識別子と認証子は、認証情報データベース35に格納される。
【0086】
認証システム300では、RP10にアクセスする際にエンドユーザ50がUA80にユーザ識別子を入力する代わりに、UA80のユーザ識別子生成部25がユーザ識別子を生成する。ユーザ識別子生成部25は、エンドユーザ50からの入力等によりOP70から発行されたユーザ識別子を予め保持している。また、ユーザ識別子生成部25は、トークン40が接続され、かつ利用可能であるか否かを検出すると共に、その情報を予め保持している。ここでは、ユーザ識別子生成部25は、ユーザ識別子として「http://myid.example.com/」を保持すると共に、トークン40が利用できる旨の情報を保持しているとする。
【0087】
トークン40を利用可能である場合、ユーザ識別子生成部25は、トークン40を利用可能であることを示すユーザ識別子を生成する。具体的には、例えばユーザ識別子「http://myid.example.com/」がトークン40を利用できることを示さないとすると、ユーザ識別子生成部25は、トークン40を利用できることをユーザ識別子に含ませるために、スキーム部分を「http」から「httpt」に変更する。すなわち、ユーザ識別子生成部25は、「httpt://myid.example.com/」というユーザ識別子を生成する。このように、どのようなユーザ識別子の場合にトークンを利用可能であることを示すかという取り決めが、UA80とOP70との間で予め成されている。
【0088】
システムの利用
図9は、認証システム300の動作を示すシーケンスチャートである。図8、9を参照して、認証システム300の動作について説明する。
【0089】
エンドユーザ50は、RP10が提供するサービスを利用したい場合、UA80のユーザインタフェース22を介してRP10にアクセスする。このとき、UA80のユーザ識別子生成部25は、予めOP70から発行されているユーザ識別子にトークン40を利用可能である旨を含めたユーザ識別子を生成する(ステップST301)。
【0090】
UA80は、生成したユーザ識別子を含むOpenID認証要求を、RP10に送信する(ステップST302)。RP10は、認証確認部11においてOpenID認証要求を受信すると、そのOpenID認証要求に基づいて、認証を担当するOP70を決定する(ステップST303)。認証確認部11は、決定したOP70に対してユーザ識別子を含めたOpenID認証要求を送信する(ステップST304、ST305)。この送信は、UA80によるリダイレクトを介して実施される。
【0091】
OP70は、OpenID認証要求を受信すると、認証子要求生成部31において認証子要求の生成を開始する(ステップST306)。すなわち、認証子要求生成部31は、トークン利用可否判定部32に対してユーザ識別子を含むトークン利用可否判定要求を通知することにより、トークン40の利用可否の判定を要求する(ステップST307)。
【0092】
トークン利用可否判定部32は、受け取ったユーザ識別子に基づいて、トークン40の利用可否を判定する(ステップST308)。トークン利用可否判定部32は、UA80との間で取り決めた方法により、ユーザ識別子がトークン利用可能であるか否かを判定する。例えば、トークン利用可否判定部32は、ユーザ識別子のURIのスキーム部分に基づいてトークン利用可否を判定する。トークン利用可否判定部32は、判定結果を認証子要求生成部31に返す(ステップST309)。
【0093】
認証子要求生成部31は、受け取った判定結果に基づいて、認証子要求を生成する(ステップST310)。具体的には、認証子要求生成部31は、判定結果がトークン利用可能である場合はトークン40を読み出す旨を含む認証子要求を生成し、判定結果がトークン利用不可能である場合はエンドユーザ50からのパスワード入力を受け付ける旨を含む認証子要求を生成する。認証子要求生成部31は、生成した認証子要求をUA80に返す(ステップST311)。
【0094】
以下、ステップST312からステップST318の動作は、上記第1の実施形態にて説明したステップST111からステップST117の動作と同様であるため、その説明を省略する。
【0095】
以上のように、第3の実施形態によれば、UA80のユーザ識別子生成部25が、UA80がトークン40の利用可能である旨を含めたユーザ識別子を生成すると共に、RP10に送信するので、第1の実施形態における効果に加えて、UA80におけるトークン40の利用の有無を容易に切り換えることができるという効果が得られる。例えば、第3の実施形態によれば、一時的にトークン40を利用できない場合にユーザ識別子生成部25がトークン40を利用可能である旨を含まない通常のユーザ識別子を生成するという運用が可能であるという効果が得られる。
【0096】
第4の実施形態
図10は、第4の実施形態に係る認証システム400の構成を例示する図である。この実施形態では、上記第1の実施形態から第3の実施形態にて説明した認証システムの具体例について説明する。
【0097】
図10は、第1の実施形態から第3の実施形態にて説明した認証システムの一例である認証システム400の具体例を示す図である。図10には、コンピュータ1、カードリーダ2およびICカード3を示す。カードリーダ2はコンピュータ1に接続される。コンピュータ1は、カードリーダ2を介してICカード3を読み出し可能である。コンピュータ1は、Webブラウザ4を搭載する。コンピュータ1は、Webサイト5およびOpenIDプロバイダ6に接続可能である。
【0098】
図1と図10の各認証システムを比較すると、図10のコンピュータ1上のWebブラウザ4は、図1のUA20に対応する。Webブラウザ4を介してコンピュータ1がアクセス可能なWebサイト5は、図1のRP10に対応する。また、OpenIDプロバイダ6はOP30に対応し、ICカード3はトークン40に対応する。ICカード3には、認証子が記憶されている。aはユーザ識別子、bはOpenID認証要求、cは認証子要求をそれぞれ示す。
【0099】
OpenIDプロバイダ6は、図1のOP30に示す各構成要素を備える。OpenIDプロバイダ6の認証子要求生成部は、トークンの利用を指示する認証子要求として、Webページ組み込みオブジェクトを含むWebページを用いる。また、OpenIDプロバイダ6は、トークンを利用しない場合の認証子要求として、パスワード入力フォームを含むWebページを用いる。Webページ組み込みオブジェクトには、例えばActiveXコントロールがある。なお、ActiveXコントロールは米国Microsoft Corporationの商標である。
【0100】
Webブラウザ4は、図1のUA20に示す各構成要素を備える。Webブラウザ4の認証子取得部は、Webページ組込みオブジェクトを含むWebページをOpenIDプロバイダ6から受信すると、Webページ組込みオブジェクトをコンピュータ1上で動作させる。これにより、Webブラウザ4は、ICカードリーダ2にアクセスすると共に、ICカード3上に記録された認証子を取得する。一方、Webブラウザ4の認証子取得部は、パスワード入力フォームを含むWebページをOpenIDプロバイダ6から受信すると、ユーザにパスワード入力を促す画面を表示すると共に、ユーザが入力したパスワードを認証子として取得する。Webブラウザ4は、取得した認証子をOpenIDプロバイダ6に送信する。このように、Webブラウザ4はWebページの内容に応じて処理を選択する認証子取得部の機能を備える。
【0101】
図11は、図1の認証システムの他の構成例を示す。図11の認証システム500は、図10の認証システム400と同様に、コンピュータ1、Webブラウザ4、Webサイト5、OpenIDプロバイダを備える。また、図11の認証システム500は、図10の認証システム400のICカードリーダ2およびICカード3の代わりに携帯端末7がコンピュータ1に接続可能である。認証システム500では、携帯端末7が図1のトークン40に対応する。携帯端末7には、認証子が記憶されている。コンピュータ1は、携帯端末7に記憶された認証子を、WiFi接続dを介して読み取ることができる。
【0102】
OpenIDプロバイダ6は、図1のOP30に示す各構成要素を備える。OpenIDプロバイダ6の認証子要求生成部は、トークンの利用を指示する認証子要求として、Webページ組み込みオブジェクトを含むWebページを用いる。また、OpenIDプロバイダ6は、トークンを利用しない場合の認証子要求として、パスワード入力フォームを含むWebページを用いる。Webページ組み込みオブジェクトには、例えばECMAScript(http://www.ecmascript.org/)がある。
【0103】
Webブラウザ4は、図1のUA20に示す各構成要素を備える。Webブラウザ4の認証子取得部は、Webページ組込みオブジェクトを含むWebページをOpenIDプロバイダ6から受信すると、Webページ組込みオブジェクトをコンピュータ1上で動作させる。これにより、Webブラウザ4は、携帯端末7にアクセスすると共に携帯端末7に記録された認証子を取得する。一方、Webブラウザ4の認証子取得部は、パスワード入力フォームを含むWebページをOpenIDプロバイダ6から受信すると、ユーザにパスワード入力を促す画面を表示すると共に、ユーザが入力したパスワードを認証子として取得する。Webブラウザ4は、取得した認証子をOpenIDプロバイダ6に送信する。
【0104】
以上のように、第4の実施形態では、Webブラウザ4がトークンとしてICカード3または携帯端末7を利用可能であり、OpenIDプロバイダ6からの認証子要求に対してWebブラウザ4は、ICカード3または携帯端末7から認証子を取得するので、エンドユーザは、Webサイト5に認証を要求する際に、パスワードを入力しなくても認証を実施できる効果が得られる。また、エンドユーザがICカード3または携帯端末7を利用可能でない場合はパスワードの入力により認証を実施できるという効果が得られる。
【0105】
第5の実施形態
図12は、第5の実施形態に係る認証装置700の構成を示すブロック図である。図12に示すように、認証装置700は、判定部701、認証子要求生成部702および認証部703を備える。
【0106】
認証装置700は、上記第1から第4の実施形態のOpenIDプロバイダ30,70に対応する。判定部701は、上記第1から第4の実施形態のトークン利用可否判定部32に対応する。認証子要求生成部702は、第1から第4の実施形態の認証子要求生成部31に対応する。認証部703は、上記第1から第4の実施形態の認証部34に対応する。
【0107】
認証装置700は、認証結果を利用してサービスを提供するサービスサイトに対して認証を要求するユーザエージェントの認証を実施する。ここで、サービスサイトは、上記第1から第4の実施形態のRP(Webサイト)に対応する。ユーザエージェントは、上記第1から第4の実施形態のUA(Webブラウザ)に対応する。
【0108】
判定部701は、サービスサイトからユーザ識別子を含む認証要求を受信するのに応じて、その認証要求に基づいてユーザエージェントがトークンを利用可能か否かを判定する。認証子要求生成部702は、判定の結果に応じて生成した認証子要求を、ユーザエージェントに送信する。認証部34は、予めユーザエージェントに関連付けて発行された認証子とユーザ識別子と、ユーザエージェントから受信した認証子とユーザ識別子とに基づいて、ユーザエージェントの認証を実施すると共に、認証結果を前記サービスサイトに返信する。
【0109】
以上のように、第5の実施形態では、認証装置700が上記構成を有することにより、個々のRPがエンドユーザの認証を要求する際に、エンドユーザがパスワードを入力しなくとも認証を遂行できるという効果が得られる。
【0110】
なお、上述した各実施形態では、CPUが実行する各機能を、一例として、ソフトウエア・プログラムとして説明した。しかしながら、図1、図5、図8、図12に示す各機能は、上記各実施形態に係る認証システムを実現する場合において、ソフトウエア・プログラムおよびハードウエアの少なくとも何れかによって実現される所定の機能単位として認識することができる。したがって、これら各機能の一部または全部を、ハードウエアとして実現してもよい。
【0111】
また、上述した各実施形態を例に説明した本発明は、上述した認証システムに対して、その説明において参照したシーケンスチャート(図4、図7、図9)の機能を実現可能なコンピュータ・プログラムを供給した後、そのコンピュータ・プログラムを、当該認証システムを構成する装置のCPUに読み出して実行することによって達成される。
【0112】
また、当該認証システムを構成する装置内に供給されたコンピュータ・プログラムは、読み書き可能なメモリまたはハードディスク装置等の記憶デバイス(記憶媒体)に格納すればよい。そして、このような場合において、本発明は、係るコンピュータ・プログラムのコード或いは記憶媒体によって構成される。
【産業上の利用可能性】
【0113】
本発明は、例えばOpenID認証サーバとハードウェアトークンを用いた認証システムに適用できる。
(付記1)
認証結果を利用してサービスを提供するサービスサイトに対して、認証を要求するユーザエージェントの認証を実施する認証装置であって、
前記サービスサイトからユーザ識別子を含む認証要求を受信するのに応じて、該認証要求に基づいて前記ユーザエージェントがトークンを利用可能か否かを判定する判定手段と、
前記判定の結果に応じて生成した認証子要求を、前記ユーザエージェントに送信する認証子要求生成手段と、
予め前記ユーザエージェントに関連付けて発行された認証子とユーザ識別子と、前記ユーザエージェントから受信した認証子とユーザ識別子とに基づいて、前記ユーザエージェントの認証を実施すると共に、認証結果を前記サービスサイトに返信する認証手段と
を備えた認証装置。
(付記2)
前記ユーザエージェントがトークンを利用可能であるか否かを示す情報を、ユーザ識別子と関連付けて記憶するトークン利用者データベースをさらに備え、
前記判定手段は、前記ユーザ識別子を検索キーとして前記トークン利用者データベースを参照することにより、前記ユーザエージェントがトークンを利用可能か否かを判定する付記1記載の認証装置。
(付記3)
前記判定手段は、前記認証要求に、トークンが利用可能であることを示すトークン利用可能情報が含まれているか否かに基づいて、前記ユーザエージェントがトークンを利用可能であるか否かを判定する付記1記載の認証装置。
(付記4)
前記判定手段は、前記認証要求に含まれるユーザ識別子の種類に基づいて、前記ユーザエージェントがトークンを利用可能か否かを判定する付記1記載の認証装置。
(付記5)
認証結果を利用してサービスを提供するサービスサイトに対して、認証の実施を要求するユーザエージェントであって、
前記要求に応答して認証を実施する認証装置からトークンを読み出す指示を含む認証子要求を受信した場合は、該トークンから認証子を読み出し、パスワードを取得する指示を含む認証子要求を受信した場合は、パスワードの入力を促すと共にそれに応じて入力されたパスワードを取得する認証子取得手段
を備えたユーザエージェント。
(付記6)
前記サービスサイトから自身を介して前記認証装置に送信される認証要求に対して、トークンが利用可能であることを示すトークン利用可能情報を追加する追加手段をさらに備えた付記5記載のユーザエージェント。
(付記7)
トークンが利用可能であることを示す情報を含むユーザ識別子を生成すると共に、生成したユーザ識別子を含む認証要求を前記サービスサイトに送信するユーザ識別子生成手段をさらに備えた付記5記載のユーザエージェント。
(付記8)
認証結果を利用してサービスを提供するサービスサイトに対して認証を要求するユーザエージェントと、該ユーザエージェントの認証を実施する認証装置とを備えた認証システムであって、
前記認証装置は、
前記サービスサイトからユーザ識別子を含む認証要求を受信するのに応じて、該認証要求に基づいて前記ユーザエージェントがトークンを利用可能か否かを判定する判定手段と、
前記判定の結果に応じて生成した認証子要求を、前記ユーザエージェントに送信する認証子要求生成手段と、
予め前記ユーザエージェントに関連付けて発行された認証子とユーザ識別子と、前記ユーザエージェントから受信した認証子とユーザ識別子とに基づいて、前記ユーザエージェントの認証を実施すると共に、認証結果を前記サービスサイトに返信する認証手段とを備え、
前記ユーザエージェントは、
前記認証装置から受信した認証子要求に応じた認証子を取得すると共に、取得した認証子を前記認証装置に返信する認証子取得手段を
備えた認証システム。
(付記9)
前記認証装置は、
前記ユーザエージェントがトークンを利用可能であるか否かを示す情報を、ユーザ識別子と関連付けて記憶するトークン利用者データベースをさらに備え、
前記判定手段は、前記ユーザ識別子を検索キーとして前記トークン利用者データベースを参照することにより、前記ユーザエージェントがトークンを利用可能か否かを判定する付記8記載の認証システム。
(付記10)
前記ユーザエージェントは、前記サービスサイトから自身を介して前記認証装置に送信される認証要求に対して、トークンが利用可能であることを示すトークン利用可能情報を追加する追加手段をさらに備え、
前記認証装置の判定手段は、前記認証要求に前記トークン利用可能情報が含まれているか否かに基づいて、前記ユーザエージェントがトークンを利用可能か否かを判定する付記8記載の認証システム。
(付記11)
前記ユーザエージェントは、トークンが利用可能であることを示す情報を含むユーザ識別子を生成すると共に、生成したユーザ識別子を含む認証要求を前記サービスサイトに送信するユーザ識別子生成手段をさらに備え、
前記認証装置の前記判定手段は、前記認証要求に含まれるユーザ識別子の種類に基づいて、前記ユーザエージェントがトークンを利用可能か否かを判定する付記8記載の認証システム。
(付記12)
前記ユーザエージェントの認証子取得手段は、前記認証装置からトークンを読み出す指示を含む認証子要求を受信した場合は、該トークンから認証子を読み出し、パスワードを取得する指示を含む認証子要求を受信した場合は、パスワードの入力を促すと共にそれに応じて入力されたパスワードを取得する付記8ないし付記11のいずれか1項記載の認証システム。
(付記13)
認証結果を利用してサービスを提供するサービスサイトに対して、認証を要求するユーザエージェントの認証を実施する認証方法であって、
前記サービスサイトからユーザ識別子を含む認証要求を受信するのに応じて、該認証要求に基づいて前記ユーザエージェントがトークンを利用可能か否かを判定し、
前記判定の結果に応じて生成した認証子要求を、前記ユーザエージェントに送信し、
予め前記ユーザエージェントに関連付けて発行された認証子とユーザ識別子と、前記ユーザエージェントから受信した認証子とユーザ識別子とに基づいて、前記ユーザエージェントの認証を実施すると共に、認証結果を前記サービスサイトに返信する
認証方法。
(付記14)
前記ユーザエージェントがトークンを利用可能であるか否かを示す情報を、ユーザ識別子と関連付けて記憶するトークン利用者データベースを、前記ユーザ識別子を検索キーとして参照することにより、前記ユーザエージェントがトークンを利用可能か否かを判定する付記13記載の認証方法。
(付記15)
前記認証要求に、トークンが利用可能であることを示すトークン利用可能情報が含まれているか否かに基づいて、前記ユーザエージェントがトークンを利用可能であるか否かを判定する付記13記載の認証方法。
(付記16)
前記認証要求に含まれるユーザ識別子の種類に基づいて、前記ユーザエージェントがトークンを利用可能か否かを判定する付記13記載の認証方法。
(付記17)
認証結果を利用してサービスを提供するサービスサイトに対して認証を要求するユーザエージェントと、前記ユーザエージェントの認証を実施する認証装置とを備えた認証システムにおける認証方法であって、
前記サービスサイトからユーザ識別子を含む認証要求を受信するのに応じて、該認証要求に基づいて前記ユーザエージェントがトークンを利用可能か否かを判定し、
前記判定の結果に応じて生成した認証子要求を、前記ユーザエージェントに送信し、
予め前記ユーザエージェントに関連付けて発行された認証子とユーザ識別子と、前記ユーザエージェントから受信した認証子とユーザ識別子とに基づいて、前記ユーザエージェントの認証を実施すると共に、認証結果を前記サービスサイトに返信し、
前記認証装置から受信した認証子要求に応じた認証子を取得すると共に、取得した認証子を前記認証装置に返信する
認証方法。
(付記18)
前記ユーザエージェントがトークンを利用可能であるか否かを示す情報を、ユーザ識別子と関連付けて記憶するトークン利用者データベースを、前記ユーザ識別子を検索キーとして参照することにより、前記ユーザエージェントがトークンを利用可能か否かを判定する付記17記載の認証方法。
(付記19)
前記認証要求に、トークンが利用可能であることを示すトークン利用可能情報が含まれているか否かに基づいて、前記ユーザエージェントがトークンを利用可能であるか否かを判定する付記17記載の認証方法。
(付記20)
前記認証要求に含まれるユーザ識別子の種類に基づいて、前記ユーザエージェントがトークンを利用可能か否かを判定する付記17記載の認証方法。
(付記21)
認証結果を利用してサービスを提供するサービスサイトに対して、認証を要求するユーザエージェントの認証を実施するコンピュータに、
前記サービスサイトからユーザ識別子を含む認証要求を受信するのに応じて、該認証要求に基づいて前記ユーザエージェントがトークンを利用可能か否かを判定する処理と、
前記判定の結果に応じて生成した認証子要求を、前記ユーザエージェントに送信する処理と、
予め前記ユーザエージェントに関連付けて発行された認証子とユーザ識別子と、前記ユーザエージェントから受信した認証子とユーザ識別子とに基づいて、前記ユーザエージェントの認証を実施すると共に、認証結果を前記サービスサイトに返信する処理と
を実行させる認証プログラム。
(付記22)
前記ユーザエージェントがトークンを利用可能であるか否かを示す情報を、ユーザ識別子と関連付けて記憶するトークン利用者データベースを、前記ユーザ識別子を検索キーとして参照することにより、前記ユーザエージェントがトークンを利用可能か否かを判定する処理をさらに備えた付記21記載の認証プログラム。
(付記23)
前記認証要求に、トークンが利用可能であることを示すトークン利用可能情報が含まれているか否かに基づいて、前記ユーザエージェントがトークンを利用可能であるか否かを判定する処理をさらに備えた付記21記載の認証プログラム。
(付記24)
前記認証要求に含まれるユーザ識別子の種類に基づいて、前記ユーザエージェントがトークンを利用可能か否かを判定する処理をさらに備えた付記21記載の認証プログラム。
【符号の説明】
【0114】
1 コンピュータ
2 ICカードリーダ
3 ICカード
4 Webブラウザ
5 Webサイト
6 OpenIDプロバイダ
7 携帯端末
10 Relying Party
11 認証確認部
12 サービス提供部
13、23、36 通信インタフェース
20、60、80 User Agent
21 認証子取得部
22 ユーザインタフェース
24 トークン利用情報追加部
25 ユーザ識別子生成部
30、70 OpenIDプロバイダ
31 認証子要求生成部
32 トークン利用可否判定部
33 トークン利用者データベース
34 認証部
35 認証情報データベース
40 トークン
50 エンドユーザ
90 CPU
91 メモリ
92 プログラム
100、200、300、400、500 認証システム
700 認証装置
701 判定部
702 認証子要求生成部
703 認証部

【特許請求の範囲】
【請求項1】
認証結果を利用してサービスを提供するサービスサイトに対して認証を要求するユーザエージェントの認証を実施する認証装置であって、
前記サービスサイトからユーザ識別子を含む認証要求を受信するのに応じて、該認証要求に基づいて前記ユーザエージェントがトークンを利用可能か否かを判定する判定手段と、
前記判定の結果に応じて生成した認証子要求を、前記ユーザエージェントに送信する認証子要求生成手段と、
予め前記ユーザエージェントに関連付けて発行された認証子とユーザ識別子と、前記ユーザエージェントから受信した認証子とユーザ識別子とに基づいて、前記ユーザエージェントの認証を実施すると共に、認証結果を前記サービスサイトに返信する認証手段と
を備えた認証装置。
【請求項2】
前記ユーザエージェントがトークンを利用可能であるか否かを示す情報を、ユーザ識別子と関連付けて記憶するトークン利用者データベースをさらに備え、
前記判定手段は、前記ユーザ識別子を検索キーとして前記トークン利用者データベースを参照することにより、前記ユーザエージェントがトークンを利用可能か否かを判定する請求項1記載の認証装置。
【請求項3】
前記判定手段は、前記認証要求に、トークンが利用可能であることを示すトークン利用可能情報が含まれているか否かに基づいて、前記ユーザエージェントがトークンを利用可能であるか否かを判定する請求項1記載の認証装置。
【請求項4】
前記判定手段は、前記認証要求に含まれるユーザ識別子の種類に基づいて、前記ユーザエージェントがトークンを利用可能か否かを判定する請求項1記載の認証装置。
【請求項5】
認証結果を利用してサービスを提供するサービスサイトに対して認証の実施を要求するユーザエージェントであって、
前記要求に応答して認証を実施する認証装置からトークンを読み出す指示を含む認証子要求を受信した場合は、該トークンから認証子を読み出し、パスワードを取得する指示を含む認証子要求を受信した場合は、パスワードの入力を促すと共にそれに応じて入力されたパスワードを取得する認証子取得手段
を備えたユーザエージェント。
【請求項6】
前記サービスサイトから自身を介して前記認証装置に送信される認証要求に対して、トークンが利用可能であることを示すトークン利用可能情報を追加する追加手段をさらに備えた請求項5記載のユーザエージェント。
【請求項7】
認証結果を利用してサービスを提供するサービスサイトに対して認証を要求するユーザエージェントと、該ユーザエージェントの認証を実施する認証装置とを備えた認証システムであって、
前記認証装置は、
前記サービスサイトからユーザ識別子を含む認証要求を受信するのに応じて、該認証要求に基づいて前記ユーザエージェントがトークンを利用可能か否かを判定する判定手段と、
前記判定の結果に応じて生成した認証子要求を、前記ユーザエージェントに送信する認証子要求生成手段と、
予め前記ユーザエージェントに関連付けて発行された認証子とユーザ識別子と、前記ユーザエージェントから受信した認証子とユーザ識別子とに基づいて、前記ユーザエージェントの認証を実施すると共に、認証結果を前記サービスサイトに返信する認証手段とを備え、
前記ユーザエージェントは、
前記認証装置から受信した認証子要求に応じた認証子を取得すると共に、取得した認証子を前記認証装置に返信する認証子取得手段を
備えた認証システム。
【請求項8】
認証結果を利用してサービスを提供するサービスサイトに対して認証を要求するユーザエージェントの認証を実施する認証方法であって、
前記サービスサイトからユーザ識別子を含む認証要求を受信するのに応じて、該認証要求に基づいて前記ユーザエージェントがトークンを利用可能か否かを判定し、
前記判定の結果に応じて生成した認証子要求を、前記ユーザエージェントに送信し、
予め前記ユーザエージェントに関連付けて発行された認証子とユーザ識別子と、前記ユーザエージェントから受信した認証子とユーザ識別子とに基づいて、前記ユーザエージェントの認証を実施すると共に、認証結果を前記サービスサイトに返信する
認証方法。
【請求項9】
認証結果を利用してサービスを提供するサービスサイトに対して認証を要求するユーザエージェントと、前記ユーザエージェントの認証を実施する認証装置とを備えた認証システムにおける認証方法であって、
前記サービスサイトからユーザ識別子を含む認証要求を受信するのに応じて、該認証要求に基づいて前記ユーザエージェントがトークンを利用可能か否かを判定し、
前記判定の結果に応じて生成した認証子要求を、前記ユーザエージェントに送信し、
予め前記ユーザエージェントに関連付けて発行された認証子とユーザ識別子と、前記ユーザエージェントから受信した認証子とユーザ識別子とに基づいて、前記ユーザエージェントの認証を実施すると共に、認証結果を前記サービスサイトに返信し、
前記認証装置から受信した認証子要求に応じた認証子を取得すると共に、取得した認証子を前記認証装置に返信する
認証方法。
【請求項10】
認証結果を利用してサービスを提供するサービスサイトに対して認証を要求するユーザエージェントの認証を実施するコンピュータに、
前記サービスサイトからユーザ識別子を含む認証要求を受信するのに応じて、該認証要求に基づいて前記ユーザエージェントがトークンを利用可能か否かを判定する処理と、
前記判定の結果に応じて生成した認証子要求を、前記ユーザエージェントに送信する処理と、
予め前記ユーザエージェントに関連付けて発行された認証子とユーザ識別子と、前記ユーザエージェントから受信した認証子とユーザ識別子とに基づいて、前記ユーザエージェントの認証を実施すると共に、認証結果を前記サービスサイトに返信する処理と
を実行させる認証プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate


【公開番号】特開2011−253478(P2011−253478A)
【公開日】平成23年12月15日(2011.12.15)
【国際特許分類】
【出願番号】特願2010−128470(P2010−128470)
【出願日】平成22年6月4日(2010.6.4)
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】