(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1では、認証方法を知られてしまったような場合においては、ネットワーク上の情報を盗聴され解読されるリスクは依然として残ることとなる。また、認証方法がわかるとその認証強度も把握されてしまう。
【0006】
本発明は上記事情に鑑みてなされたものであり、本発明の目的は、多様な認証方法を用いることで、セキュリティレベルを向上し、精度の高い認証を行う認証システムおよび認証方法を提供することにある。
【課題を解決するための手段】
【0007】
上記目的を達成するため、請求項1記載の本発明は、サービスを提供する複数のサービス提供装置にアクセスする端末と、前記端末を使用するユーザを認証する認証装置とを備える認証システムであって、前記認証装置は、複数の認証ロジックを含む認証情報生成ルールを、前記端末に配信する配信手段と、前記端末から認証情報を受信し、当該認証情報を認証する認証手段と、を備え、前記端末は、前記認証情報生成ルールに従って前記複数の認証ロジックの中からいずれかの認証ロジックを選択し、入力されたユーザ情報から前記選択した認証ロジックを用いて認証情報を生成する認証情報生成手段と、生成した認証情報を前記認証
装置に送信する送信手段と、を備えることを要旨とする。
【0008】
請求項2記載の本発明は、認証システムであって、前記端末の認証情報生成手段は、前記ユーザ情報および時刻を用いて前記複数の認証ロジックの中から使用する認証ロジックを選択し、前記認証
装置の認証手段は、前記端末から認証情報とともにユーザ情報を受信し、当該ユーザ情報および時刻を用いて選択された認証ロジックから生成された認証情報と、前記端末から受信した認証情報とを照合して認証することを要旨とする。
【0009】
請求項3記載の本発明は、認証システムであって、前記認証装置の配信手段は、所定のタイミングで前記認証情報生成ルールを配信し、認証情報の生成方法を変更することを要旨とする。
【0010】
請求項4記載の本発明は、認証システムであって、前記端末は、複数の種類のユーザ情報の中のいずれかのユーザ情報を受け付けるユーザ情報受付手段をさらに備え、前記認証装置の認証手段は、認証情報の認証に失敗した場合、異なる種類のユーザ情報から生成される認証情報を前記端末に要求することを要旨とする。
【0011】
請求項5記載の本発明は、認証システムであって、前記認証装置は、現用機と予備機とを備え、前記予備機が用いる認証ロジックは、前記現用機が用いる認証ロジックと異なることを要旨とする。
【0012】
請求項6記載の本発明は、端末にサービスを提供する複数のサービス提供装置と、前記端末を使用するユーザを認証する認証装置とを備える認証システムであって、前記認証装置は、複数の認証ロジックを含む認証情報生成ルールを、前記サービス提供装置に配信する配信手段と、前記サービス提供装置から認証情報を受信し、当該認証情報を認証する認証手段と、を備え、前記サービス提供装置は、前記認証情報生成ルールに従って前記複数の認証ロジックの中からいずれかの認証ロジックを選択し、前記端末で入力されたユーザ情報から前記選択した認証ロジックを用いて認証情報を生成する認証情報生成手段と、生成した認証情報を前記認証
装置に送信する送信手段と、を備えることを要旨とする。
【0013】
請求項7記載の本発明は、サービスを提供する複数のサービス提供装置にアクセスする端末と、前記端末を使用するユーザを認証する認証装置とを備える認証システムが行う認証方法であって、前記認証装置は、複数の認証ロジックを含む認証情報生成ルールを、前記端末に配信する配信ステップと、前記端末から認証情報を受信し、当該認証情報を認証する認証ステップと、を行い、前記端末は、前記認証情報生成ルールに従って前記複数の認証ロジックの中からいずれかの認証ロジックを選択し、入力されたユーザ情報から前記選択した認証ロジックを用いて認証情報を生成する認証情報生成ステップと、生成した認証情報を前記認証
装置に送信する送信ステップと、を行うことを要旨とする。
【0014】
請求項8記載の本発明は、端末にサービスを提供する複数のサービス提供装置と、前記端末を使用するユーザを認証する認証装置とを備える認証システムが行う認証方法であって、前記認証装置は、複数の認証ロジックを含む認証情報生成ルールを、前記サービス提供装置に配信する配信ステップと、前記サービス提供装置から認証情報を受信し、当該認証情報を認証する認証ステップと、を行い、前記サービス提供装置は、前記認証情報生成ルールに従って前記複数の認証ロジックの中からいずれかの認証ロジックを選択し、前記端末で入力されたユーザ情報から前記選択した認証ロジックを用いて認証情報を生成する認証情報生成ステップと、生成した認証情報を前記認証
装置に送信する送信ステップと、を行うことを要旨とする。
【発明の効果】
【0015】
本発明によれば、多様な認証方法を用いることで、セキュリティレベルを向上し、精度の高い認証を行う認証システムおよび認証方法を提供することができる。
【発明を実施するための形態】
【0017】
以下、本発明の実施形態について説明する。
【0018】
<第1の実施形態>
図1は、本発明の第1の実施形態に係る認証システムの全体構成を示す図である。
【0019】
本実施形態は、ユーザ端末が認証ロジックを保持し、認証情報を生成するものである。図示する認証システムは、ユーザが使用するユーザ端末1と、複数のサービス提供サーバ2と、負荷分散装置3と、認証サーバ4(現用機)と、認証サーバ5(予備機)とを備える。認証サーバ4(現用機)と、認証サーバ5(予備機)とは独立しており、認証サーバ5(予備機)は、認証サーバ4(現用機)で障害が発生した場合に利用される。また、認証サーバ4(現用機)および認証サーバ5(予備機)は、それぞれ複数のサーバから構成されるものであってもよい。
【0020】
ユーザ端末1は、ユーザが入力したユーザ情報を受け付け、いずれかの認証ロジックを用いてユーザ情報から認証情報を生成して認証サーバ4に送信し、認証サーバ4での認証情報に認証に成功した場合、少なくとも1つのサービス提供サーバ2にログインする。なお、本実施形態の認証システムでは、シングルサインオンが可能なシステムであって、認証サーバ4での認証に成功した後は、個々に各サービス提供サーバ2での認証を行うことなくログインできるものとする。
【0021】
サービス提供サーバ2は、ユーザ端末1にネットワークを介して所定のサービスを提供する。負荷分散装置3は、通常運用時には、現用機である認証サーバ4にユーザ端末1またはサービス提供サーバ1から送信されるデータを振り分け、現用機の認証サーバ4の障害時には、予備機である認証サーバ5にユーザ端末1またはサービス提供サーバ2からのデータを振り分け、障害時における可用性を担保する。また、負荷分散装置3は、並列に運用されている複数の現用機の認証サーバ4(または予備機の認証サーバ5)間での負荷が適切になるようにデータを分散して割り当てる。認証サーバ4、5は、ユーザ端末1から送信される認証情報を認証する。
【0022】
図2は、ユーザ端末1の構成を示すブロック図である。図示するユーザ端末1は、認証情報生成ルール管理部11と、入力受付部12と、認証情報生成部13と、送信部14と、記憶部15とを備える。
【0023】
認証情報生成ルール管理部11は、所定のタイミングで認証サーバ4から配信される認証情報生成ルールを受信し、記憶部15に記憶する。認証情報生成ルールには、複数の認証ロジック(一方向性関数などの所定のアルゴリズム)などの認証情報を生成するためのルールが設定されている。
【0024】
入力受付部12は、複数の異なる種類のユーザ情報の中からユーザが入力したいずれかのユーザ情報を受け付ける。ユーザ情報としては、例えば、ユーザID(社員番号)、ICカード情報、指紋などの生体情報、メールアドレスなど、様々な個人情報を用いることが考えられる。
【0025】
認証情報生成部13は、記憶部15に記憶された認証情報生成ルールに従って、複数の認証ロジックの中からいずれかの認証ロジックを選択し、入力されたユーザ情報から選択した認証ロジックを用いて認証情報を生成する。
【0026】
送信部14は、認証情報生成部13が生成した認証情報を、ネットワークを介して認証サーバ4に送信する。
【0027】
図3は、認証サーバ4
(認証装置)の構成を示すブロック図である。図示する認証サーバ4は、配信部41と、認証部42と、ユーザ情報記憶部43と、認証情報記憶部44と、認証ロジック記憶部45とを備える。
【0028】
配信部41は、各ユーザ端末1に、複数の認証ロジックを含む認証情報生成ルールを配信する。配信部41は、所定のタイミングで各ユーザ端末1に認証情報生成ルールを配信し、所定のタイミングで認証情報の生成方法を変更する。認証情報生成ルールには、複数の認証ロジック(例えば、一方向性関数など)、認証ロジックの選択に用いる情報、認証情報の生成に用いる情報など、認証情報を生成するためのルールが設定されている。なお、各ユーザ端末1に配信する認証情報生成ルールは、ユーザ端末1毎に異なる認証情報生成ルールを配信するものとする。
【0029】
認証部42は、ユーザ端末1から認証情報を受信して、当該認証情報を認証し、認証結果をユーザ端末1に送信する。
【0030】
ユーザ情報記憶部43には、各ユーザ端末1を使用するユーザがあらかじめ認証サーバ4に登録したユーザ情報が記憶される。認証情報記憶部44には、ユーザ毎に、当該ユーザが使用する認証ロジックおよび認証情報が記憶される。認証ロジック記憶部45には、当該認証サーバ4がサポートする複数の認証ロジックが記憶される。
【0031】
なお、予備機の認証サーバ5は、現用機の認証サーバ4と同様の構成である。ただし、認証サーバ4の認証ロジック記憶部45に記憶される複数の認証ロジックと、認証サーバ5の認証ロジック記憶部に記憶される複数の認証ロジックとは異なる(独立した)ものであって、仮に認証サーバ4の認証ロジックが漏洩した場合であっても、これにより認証サーバ5の認証ロジックが推測されることはない。
【0032】
上記説明したユーザ端末1、サービス提供サーバ2および認証サーバ4、5は、例えば、CPUと、メモリと、HDD等の外部記憶装置と、入力装置と、出力装置とを備えた汎用的なコンピュータシステムを用いることができる。このコンピュータシステムにおいて、CPUがメモリ上にロードされた所定のプログラムを実行することにより、各部の各機能が実現される。例えば、ユーザ端末1、サービス提供サーバ2および認証サーバ4、5の各機能は、ユーザ端末1用のプログラムの場合はユーザ端末1のCPUが、サービス提供サーバ2用のプログラムの場合はサービス提供サーバ2のCPUが、そして、認証サーバ4、5用のプログラムの場合は認証サーバ4、5のCPUがそれぞれ実行することにより実現される。また、ユーザ端末1用のプログラム、サービス提供サーバ2および認証サーバ4、5用のプログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD−ROMなどのコンピュータ読取り可能な記録媒体に記憶することも、ネットワークを介して配信することもできる。
【0033】
次に、本実施形態の処理について説明する。
【0034】
図4は、本実施形態の認証処理を示すシーケンス図である。
【0035】
認証サーバ4の配信部41は、あらかじめ各ユーザ端末1に認証情報生成ルールを配信する(S11)。ユーザ端末1の認証情報生成ルール管理部11は、配信された認証情報生成ルールを記憶部15に記憶する。認証情報生成ルールには、複数の認証ロジックなどの認証情報を生成するためのルールが設定されている。
【0036】
ユーザ端末1の入力受付部12は、いずれかのサービス提供サーバ2にアクセスするための認証要求をユーザから受け付け、ユーザ情報の入力を促す入力画面をディスプレイに表示する(S12)。そして、入力受付部12は、ユーザが入力したいずれかの種類のユーザ情報を受け付ける(S13)。
【0037】
なお、認証情報生成ルールは、S11であらかじめ配信される場合だけでなく、S12の認証要求を受け付けたタイミングで、認証情報生成ルール管理部11が認証サーバ4にアクセスし、認証サーバ4から認証情報生成ルールを取得することとしてもよい。
【0038】
認証情報生成部13は、記憶部15に記憶された認証情報生成ルールに従って、使用する認証ロジックを選択する(S14)。本実施形態では、認証情報生成ルールに設定された、認証ロジックの選択に用いる情報を特定し、当該情報をハッシュ関数に入力してハッシュ値(固定長の擬似乱数)を算出する。なお、本実施形態では、ハッシュ関数を用いることとするが、ハッシュ関数以外のアルゴリズム(あるデータが与えられた場合に、そのデータを代表する数値を得るもの)を用いて、認証ロジックの選択に用いる情報から、当該情報に対応する値を算出することとしてもよい。
【0039】
例えば、認証情報生成ルールには、S13で入力されたユーザ情報(例えば、ユーザIDの全体、またはユーザIDの下n桁)を原文としてハッシュ関数に入力してハッシュ値を算出し、当該ハッシュ値と現在の時刻とを用いて認証ロジックを選択することが設定されているものとする。この場合、認証情報生成部13は、ユーザ情報をハッシュ関数に入力してハッシュ値を算出し、また、図示しない時計部から現在時刻を取得する。そして、認証情報生成部13、認証情報生成ルールに含まれる認証ロジック対応表を用いて認証ロジックを選択する。
【0040】
図5は、認証ロジック対応表の一例を示すものである。図示する認証ロジック対応表は、ハッシュ値および時間帯毎に対応する認証ロジックが設定されている。例えば、ハッシュ値が“aa”で、現在の時刻が1時30分の場合、認証情報生成部13は、認証ロジック1−2を選択する。このように、本実施形態では、ユーザ情報および時刻を用いて前記複数の認証ロジックの中から使用する認証ロジックを選択することとする。
【0041】
そして、認証情報生成部13は、S14で選択した認証ロジックを用いて、S13で入力されたユーザ情報から認証情報を生成する(S15)。すなわち、ユーザ情報を、選択した認証ロジック(一方向性関数など)に入力して認証情報を生成する。
【0042】
そして、送信部14は、生成した認証情報と、認証情報の生成に用いたユーザ情報とを、認証サーバ4に送信する(S16)。
【0043】
認証サーバ4の認証部42は、負荷分散装置3を介して、ユーザ端末1から認証情報およびユーザ情報を受信し、ユーザ情報を用いて認証ロジックを選択する(S17)。例えば、ユーザ端末1から送信されたユーザ情報から、ユーザ情報記憶部43を参照して当該ユーザ情報のユーザ識別情報を特定する。
【0044】
図6は、ユーザ情報記憶部43の一例を示すものである。図示するユーザ情報記憶部43には、ユーザ毎に、本認証システム内で当該ユーザを一意に識別するためのユーザ識別情報と、当該ユーザの複数の種類のユーザ情報(ユーザID、ICカード情報、指紋情報など)とが対応付けて記憶されている。認証部42は、受信したユーザ情報に対応するユーザ識別情報を、ユーザ情報記憶部43を参照して特定する。
【0045】
そして、認証部42は、特定したユーザ識別情報に対応する認証情報が設定された認証情報テーブルを、認証情報記憶部44から読み出す。
【0046】
図7は、認証情報記憶部44の認証情報テーブルの一例を示すものである。図示する認証情報テーブルは、ユーザ識別情報(ユーザ)毎に保持され、時間帯と、当該時間帯に用いられる少なくとも1つの認証ロジックと、当該認証ロジックを用いて各ユーザ情報から生成されるユーザ情報毎の認証情報とが設定されている。認証情報テーブルと、ユーザ端末1に配信される認証ロジック対応表(
図5参照)とは同期しているものとする。
【0047】
なお、認証サーバ側で保持する認証情報テーブルでは、ユーザ端末1と認証サーバ4間の伝送に要する時間(伝送遅延時間)を考慮して、ユーザ端末1に配信する認証ロジック対応表に設定された前後n時間(例えば前後1時間)に使用する認証ロジックをオーバーラップさせている。例えば、
図7に示すテーブルでは1時〜2時の時間帯で使用する認証ロジックとして、ユーザ端末1の認証ロジック対応表の1時〜2時の時間帯の認証ロジック1−2と、その前の0時〜1時の時間帯の認証ロジック1−1と、その後の2時〜3時の時間帯の認証ロジック1−3とが設定されている。
【0048】
認証部42は、ユーザ識別情報に対応する認証情報テーブルを参照し、図示しない時計部から取得した現在の時刻に対応する認証ロジックを選択する。このように、本実施形態では、ユーザ端末1から受信したユーザ情報と時刻とを用いて、認証ロジックを選択する。
【0049】
そして、認証部42は、認証情報テーブルを参照し、選択した認証ロジックの各認証情報の中からS16で受信した種別のユーザ情報に対応する認証情報を特定し、特定した認証情報とS16で受信した認証情報とを照合し、一致するか否かにより認証する(S18)。例えば、
図7に示す認証情報テーブルを用いた場合、現在の時刻が1時35分で、S16で受信したユーザ情報がユーザIDの場合、認証情報生成部13は、認証ロジック1−1、1−2、1−3のそれぞれのユーザIDの認証情報を特定し、これらの認証情報とS16でユーザ端末1から受信した認証情報とをそれぞれ照合し、認証情報テーブルから特定したいずれかの認証情報と、S16でユーザ端末1から受信した認証情報とが一致する場合、認証に成功したと判別し、いずれも一致しない場合は認証に失敗したと判別する。
【0050】
なお、本実施形態の認証処理では、時間の間(例えば2時)にデータが受信された場合、1時〜2時の時間帯の認証ロジック、および、2時〜3時の時間帯の認証ロジックの両方を適用することができる。
【0051】
また、本実施形態の認証処理では、ユーザ端末1に対して、例えば
図7に示すようにある時間帯(例えば、1時〜2時の時間帯)内で複数の認証ロジックを適用することができ、これにより、一部の認証ロジックの論理不具合が発生しても、業務運用上の支障がでないようにし、可用性を高く保つことができる。
【0052】
なお、
図7に示す認証情報テーブルでは、あらかじめ生成した認証情報が設定されているが、認証情報テーブルは時間帯と認証ロジックとを対応付けて記憶したテーブルであって、認証部42は、S18において、S17で選択した認証ロジックを認証ロジック記憶部45から読み出して、S16でユーザ端末1から受信したユーザ情報から、S15と同様に認証情報を生成し、照合することとしてもよい。
【0053】
そして、認証部42は、認証結果をユーザ端末1に送信する(S19)。認証に成功した場合(すなわち、いずれかの認証情報と一致した場合)、認証部42は、ユーザ端末1が複数のサービス提供サーバ2へログイン(シングルサインオン)が可能になるように例えば証明書などを、認証に成功した旨の認証結果とともに送信する。
【0054】
また、認証に失敗した場合(すなわち、認証情報が一致しない場合)、認証部42は、認証に失敗した旨の認証結果とともに、S13で入力したユーザ情報とは異なる種類のユーザ情報を入力し、当該ユーザ情報から生成される認証情報を再度、認証サーバ4に送信するようユーザに要求するメッセージを、ユーザ端末1送信することとしてもよい。このように、本実施形態では、複数の種類のユーザ情報の入力が受け付け可能であって、また、ユーザ情報を用いて算出されるハッシュ値に基づいて複数の認証ロジックの中のいずれかの認証ロジックが選択されるため、一部の認証ロジックに論理上の不具合が発生したとしても、別の認証ロジックを選択することで、高い可用性を担保することができる。
【0055】
ユーザ端末1の送信部14は、認証に成功した旨の認証結果を受信すると、少なくとも1つのサービス提供サーバ2にログイン要求を送信する(S20、S21)。このログイン要求には、例えば、認証サーバから送信されたログインを許可する旨の証明書などが含まれ、サービス提供サーバ2は、当該証明書などを用いてログインを許可し、所定のサービスをユーザ端末1に提供する。
【0056】
なお、上記説明した
図5のS14の認証ロジックの選択において、ハッシュ関数に入力する情報としてS13で入力されたユーザ情報を用いることとした。しかしながらユーザ情報に限定されるものではなく、例えば、ユーザ情報に当該ユーザ端末1に付与されたIPアドレスを付加した情報をハッシュ関数に入力することとしてもよい。ネットワークにアクセスする度に動的に付与されるIPアドレスを用いてハッシュ値を算出することで、より認証強度を高めることができる。また、この場合、S15では、ユーザ情報にIPアドレスを付加した情報から、選択した認証ロジックを用いて認証情報を生成し、S16では、認証情報およびユーザ情報とともに、IPアドレスも認証サーバ4に送信することとしてもよい。
【0057】
以上説明した第1の実施形態では、認証サーバ4が認証情報生成ルールを各ユーザ端末1に配信し、各ユーザ端末1は、認証情報生成ルールに従って複数の認証ロジックの中からいずれかの認証ロジックを選択し、選択した認証ロジックを用いてユーザが入力したユーザ情報から認証情報を生成し、認証サーバ4に送信する。このように、本実施形態では、多様な認証方法を用いることで、セキュリティレベルを向上し、精度の高い認証を行うことができる。
【0058】
また、本実施系形態では、複数の認証ロジック中からいずれかの認証ロジックを選択することで、使用される認証ロジックを変動させ、ネットワーク上を流れる認証情報を見ても、認証ロジックが推測させることを防止することができる。また、複数の認証ロジックでの認証を可能とすることで、可用性を向上することができる。また、認証ロジックを動的に変動させることにより、解読方法の特定を困難にし、認証情報の盗聴による悪用を防止することができる。
【0059】
また、本実施形態では、ユーザが入力したユーザ情報および時刻を用いて複数の認証ロジックの中から使用する認証ロジックを選択し、選択した認証ロジックを用いて認証情報を生成する。これにより、ユーザが入力するユーザ情報が同じものであっても、時刻に応じて選択される認証ロジックが異なるため、認証情報の生成方法を変えることができる。
【0060】
また、本実施形態では、ユーザは、複数の異なる種類のユーザ情報の中から任意のユーザ情報を入力し、当該ユーザ情報を用いて複数の認証ロジックの中から使用する認証ロジックを選択し、選択した認証ロジックを用いて認証情報を生成する。これにより、ユーザが、異なる種類のユーザ情報を入力することで選択される認証ロジックが異なるため、認証情報の生成方法を変えることができる。
【0061】
また、本実施形態では、認証サーバ4は、所定のタイミングで各ユーザ端末1に認証情報生成ルールを配信することで、所定のタイミングで認証情報の生成方法を変更することができる。また、ユーザ端末1毎に異なる認証情報生成ルールを配信することで、ユーザ端末1毎に認証情報の生成方法を変えることができる。
【0062】
また、本実施形態の認証サーバ4は、現用機と予備機とを備え、予備機が用いる認証ロジックは、現用機が用いる認証ロジックと異なる。これにより、可用性を向上することができる。
【0063】
<第2の実施形態>
本発明の第2の実施形態は、ユーザ端末1ではなくサービス提供サーバ2が認証ロジックを保持し、認証情報を生成するものである。本実施形態の認証システムは、第1の実施形態の認証システム(
図1参照)と同様に、ユーザ端末1と、複数のサービス提供サーバ2と、負荷分散装置3と、認証サーバ4(現用機)と、認証サーバ5(予備機)とを備える。
【0064】
図8は、本実施形態のサービス提供サーバ2の構成を示すブロック図である。図示するサービス提供サーバ2は、認証情報生成ルール管理部21と、ログイン要求受付部22と、認証情報生成部23と、送信部24と、サービス提供部25と、記憶部26とを備える。
【0065】
認証情報生成ルール管理部21は、所定のタイミングで認証サーバ4から配信される認証情報生成ルールを受信し、記憶部26に記憶する。認証情報生成ルールには、第1の実施形態と同様であって、複数の認証ロジックなどの認証情報を生成するためのルールが設定されている。
【0066】
ログイン要求受付部22は、複数の異なる種類のユーザ情報の中からユーザが入力したいずれかのユーザ情報をユーザ端末1から受け付ける。ユーザ情報としては、例えば、ユーザID(社員番号)、ICカード情報、指紋などの生体情報、メールアドレスなど、様々な個人情報を用いることが考えられる。
【0067】
認証情報生成部23は、記憶部26に記憶された認証情報生成ルールに従って、複数の認証ロジックの中からいずれかの認証ロジックを選択し、ユーザ端末1から送信されたユーザ情報から選択した認証ロジックを用いて認証情報を生成する。
【0068】
送信部24は、認証情報生成部23が生成した認証情報を、ネットワークを介して認証サーバ4に送信する。
【0069】
なお、本実施形態では、サービス提供サーバ2が、認証サーバ4から配信される認証情報生成ルールを保持し、認証情報を生成するため、本実施形態のユーザ端末1は、
図2に示す第1の実施形態のユーザ端末1の機能のうち、複数の異なる種類のユーザ情報の中からユーザが入力したいずれかのユーザ情報を受け付ける入力受付部12を有する。また、本実施形態の認証サーバ4は、第1の実施形態の認証サーバ4と同様であるが、配信部41は、認証情報生成ルールを各サービス提供サーバ2に配信する。
【0070】
次に、本実施形態の処理について説明する。
【0071】
図9は、本実施形態の認証処理を示すシーケンス図である。
【0072】
認証サーバ4の配信部41は、あらかじめ各サービス提供サーバ2に認証情報生成ルールを配信する(S31)。サービス提供サーバ2の認証情報生成ルール管理部21は、配信された認証情報生成ルールを記憶部26に記憶する。なお、配信部41は、サービス提供サーバ2毎に異なる認証情報生成ルールを、所定のタイミングで配信するものとする。
【0073】
サービス提供サーバ2のログイン要求受付部22は、ログイン要求をユーザから受け付け(S32)、ユーザ情報の入力を促す入力画面をディスプレイに表示する(S33)。ユーザ端末1の入力受付部は、ユーザが入力したいずれかの種類のユーザ情報を受け付け、サービス提供サーバ2に送信する(S34)。
【0074】
なお、認証情報生成ルールは、S31であらかじめ配信される場合だけでなく、S32の認証要求を受け付けたタイミングで、認証情報生成ルール管理部21が認証サーバ4にアクセスし、認証サーバ4から認証情報生成ルールを取得することとしてもよい。
【0075】
認証情報生成部23は、記憶部26に記憶された認証情報生成ルールを読み出し、使用する認証ロジックを選択する(S35)。具体的には、認証情報生成ルールに含まれる、認証ロジックの選択に用いる情報を特定し、当該情報をハッシュ関数に入力してハッシュ値を算出する。認証ロジックの選択については、第1の実施形態の
図4のS14と同様である。
【0076】
そして、認証情報生成部23は、S35で選択した認証ロジックを用いて、S34でユーザ端末1から受信したユーザ情報から認証情報を生成する(S36)。すなわち、ユーザ情報を、選択した認証ロジック(一方向性関数など)に入力して認証情報を生成する。
【0077】
そして、送信部24は、生成した認証情報と、認証情報の生成に用いたユーザ情報とを、認証サーバ4に送信する(S37)。
【0078】
認証サーバ4の認証部42は、負荷分散装置3を介して、サービス提供サーバ2から認証情報およびユーザ情報を受信し、ユーザ情報を用いて認証ロジックを選択し(S38)、認証情報の照合および認証を行う(S39)。認証ロジックの選択(S38)および認証(S39)については、第1の実施形態の
図4のS17およびS18と同様であるため、ここでは説明を省略する。
【0079】
そして、認証部42は、認証結果をサービス提供サーバ2に送信する(S40)。認証に成功した場合(すなわち、認証情報が一致した場合)、認証部42は、ユーザ端末1が複数のサービス提供サーバ2へログイン(シングルサインオン)が可能になるように、例えば証明書などを認証に成功した旨の認証結果とともにサービス提供サーバ2に送信する。
【0080】
サービス提供サーバ2のサービス提供部25は、認証に成功した旨の認証結果を受信すると、ユーザ端末1のログインを許可し、ログイン完了通知をユーザ端末1に送信する(S41)。これにより、サービス提供サーバ2のサービス提供部25は、所定のサービスをユーザ端末1に提供する。また、サービス提供部25は、ログイン完了通知とともに、認証サーバ4から受信した証明書をユーザ端末1に送信することで、ユーザ端末1は、他のサービス提供サーバ2へのログイン要求時に当該証明書を送信することで、認証処理を行うことなくログインすることができる。
【0081】
一方、認証に失敗した場合(すなわち、認証情報が一致しない場合)、認証サーバ4の認証部42は、認証に失敗した旨の認証結果とともに、S34で入力したユーザ情報とは異なる種類のユーザ情報を入力し、当該ユーザ情報から生成される認証情報を再度、認証サーバ4に送信するよう要求するメッセージを、サービス提供サーバ2に送信することとしてもよい。これにより、サービス提供サーバ2の送信部24は、当該メッセージをユーザ端末1に送信し、ユーザに他の種類のユーザ情報の入力を促す。
【0082】
以上説明した第2の実施形態では、認証サーバ4が認証情報生成ルールを各サービス提供サーバ2に配信し、各サービス提供サーバ2は、認証情報生成ルールに従って複数の認証ロジックの中からいずれかの認証ロジックを選択し、選択した認証ロジックを用いてユーザが入力したユーザ情報から認証情報を生成し、認証サーバ4に送信する。このように、本実施形態では、多様な認証方法を用いることで、セキュリティレベルを向上し、精度の高い認証を行うことができる。また、第2の実施形態においても、第1の実施形態と同様の効果を得ることができる。
【0083】
なお、本発明は上記実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。