以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一部には原則として同一符号を付し、その繰り返しの説明は省略する。
(実施の形態1)
図1〜図4を用いて、本発明の実施の形態1の認証システムについて説明する。
[認証システム]
図1は、実施の形態1の認証システムの構成を示す。実施の形態1の認証システムは、複数のユーザ端末1、パスワード発行装置2、ID管理装置4、複数の認証サーバ3、及び認証スイッチ6がネットワーク5に接続されている。
ネットワーク5は、LANやインターネット等の通信網である。ユーザ端末1と認証スイッチ6は、例えばイーサネット(登録商標)等の所定の通信インタフェースで接続される。この接続は、有線接続でもよいし、無線接続でもよい。ネットワーク5上、ユーザ端末1、認証スイッチ6、認証サーバ3、パスワード発行装置2、及びID管理装置4の間では、TCP/IP、UDP、HTTP等のプロトコルに基づいて通信が行われる。認証スイッチ6、認証サーバ3、パスワード発行装置2、及びID管理装置4等の装置は、それぞれ、IPアドレスに関係付けられたURLを公開する。
なお、ネットワーク5は、複数のネットワークの接続により構成されてもよい。例えば、ネットワーク5は、認証スイッチ6を含むLAN、パスワード発行装置2を含むLAN、等の接続により構成されてもよい。
ユーザ端末1は、ユーザが使用するPCやスマートフォン等の各種の端末装置である。複数のユーザ端末1として、ユーザ9aのユーザ端末1a、ユーザ9bのユーザ端末1b、等がある。ユーザ端末1は、図示しないプロセッサ、メモリ、通信インタフェース装置、入力装置、表示装置、等のハードウェアを備え、OS、Webブラウザ等のソフトウェアを備える。
ユーザ端末1は、ネットワーク5へログインしてネットワーク5上のサービスを利用する。その際、ユーザ端末1は、認証スイッチ6へアクセスし、認証スイッチ6との接続を通じてネットワーク5に接続する。ユーザ端末1からネットワーク5上の認証サーバ3等へアクセスする際には、必ず認証スイッチ6を通じたアクセスとなる。ユーザ端末1がネットワーク5へログインする際、ユーザ端末1、認証スイッチ6、及び認証サーバ3の間では、認証として、ユーザ認証が行われる。
複数のユーザとして、ユーザ9a、ユーザ9b等がいる。ユーザ9aを個人A、ユーザ9bを個人Bとする。複数のユーザは、例えばネットワーク5を利用する社員や学生である。ユーザには、ユーザ認証用の認証情報が設定される。認証情報は、ユーザIDとパスワードとの組合せである。ユーザIDは、ID管理装置4で発行される。パスワードは、パスワード発行装置2で発行される。ユーザ9aの認証情報をA1、ユーザ9bの認証情報をA2、等とする。認証情報A1におけるユーザIDをIDa、パスワードをPWaとする。認証情報A2におけるユーザIDをIDb、パスワードをPWbとする。
パスワード発行装置2は、ユーザ端末1の認証情報のうちのパスワードを発行する機能を持つ装置である。パスワード発行装置2は、パスワード発行部21、及びパスワード情報22を有する。パスワード発行装置2は、図示しないプロセッサ、メモリ、通信インタフェース装置、等のハードウェア、及び、OS、サーバプログラム等のソフトウェアを備え、当該ハードウェアに基づいたソフトウェア処理により、パスワード発行部21等を実現する。
パスワード発行部21は、ユーザ端末1に関するパスワード発行要求に応じて、ID管理装置4で発行済みのユーザIDを元に、可逆暗号を用いた暗号化により、パスワードを生成し、ユーザ端末1に対して発行する。
パスワード発行装置2は、発行したパスワードをユーザ端末1へ配布する。パスワード発行装置2は、発行したパスワードを認証サーバ3へは配布しない。パスワード発行装置2からユーザ端末1へパスワードを配布する手段は、各種の手段が可能である。例えば、パスワード発行装置2は、生成したパスワードを含む情報を、ネットワーク5を介してユーザ端末1へ自動的に送信してもよい。あるいは、管理者90は、パスワード発行装置2で発行されたパスワードを、任意の手段でユーザへ通知してもよい。
管理者90は、例えばネットワーク5の管理者や、ユーザが所属する組織の管理者である。管理者90は、運用管理保守用の端末から認証サーバ3やID管理装置4にアクセスし、設定等の作業を行う。
パスワード情報22は、パスワード発行部21が生成したパスワードを、一時的に記憶する情報であり、表等で構成される。図1の例では、パスワード情報22には、ユーザ9aの認証情報A1におけるパスワード「PWa」、ユーザ9bの認証情報A2におけるパスワード「PWb」、等が記憶されている。
ID管理装置4は、認証に用いる認証情報のうちのIDを発行及び管理する機能を備える装置である。ID管理装置4は、ID管理部41、及びID情報42を有する。ID管理装置4は、図示しないプロセッサ、メモリ、通信インタフェース装置、等のハードウェア、及び、OS、サーバプログラム等のソフトウェアを備え、当該ハードウェアに基づいたソフトウェア処理により、ID管理部41等を実現する。
ID管理部41は、認証情報のうちのIDであるユーザIDを、ID情報42に管理する。ID管理部41は、例えば管理者90の設定操作に基づいてユーザIDを発行し、ID情報42に登録する。ID管理装置4で発行されたユーザIDは、ユーザ端末1へ配布される。ID管理装置4からユーザ端末1へユーザIDを配布する手段は、自動的な送信や管理者90による通知等、各種の手段が可能である。
ID情報42には、正規の複数のユーザに関する各ユーザIDが登録されている。正規のユーザは、ネットワーク5の利用等が許可されるユーザである。ID情報42は、表やDB等で構成される。図1の例では、ID情報42には、ユーザ9aの認証情報A1におけるユーザID「IDa」、ユーザ9bの認証情報A2におけるユーザID「IDb」、等が登録されている。
このユーザIDであるIDは、ユーザ個人を特定する情報を含む任意値である。なお、ユーザ個人を特定する情報を、説明上、個人特定情報と称する。例えば、「IDa」は、ユーザ9aである個人Aの個人特定情報を含み、「IDb」は、ユーザ9bである個人Bの個人特定情報を含む。個人特定情報は、例えば社員番号である。図示しない組織の名簿やDB等において、各ユーザの社員番号、名前、所属部署、連絡先、等の情報が管理されている。
ID管理装置4は、管理者90を含む外部に対するインタフェースとして設定画面を提供する。管理者90は、端末からID管理装置4へアクセスし、設定画面を表示する。管理者90は、設定画面で、ID情報42の内容を確認し、各ユーザのユーザIDを含む情報を設定可能である。ID管理部41は、設定操作に基づいて、ユーザIDをID情報42に登録する。例えば、管理者90は、予め、ユーザからの申請に基づいて、個人特定情報を含むユーザIDを、ID情報42に設定する。
認証サーバ3は、認証スイッチ6との通信に基づいてユーザ認証を行うユーザ認証サーバとしての機能を備えるサーバ装置である。認証サーバ3は、認証部31、及び認証ログ32を有する。認証サーバ3は、図示しないプロセッサ、メモリ、通信インタフェース装置、等のハードウェア、及び、OS、サーバプログラム等のソフトウェアを備え、当該ハードウェアに基づいたソフトウェア処理により、認証部31等を実現する。
認証サーバ3は、冗長構成で運用され、複数の認証サーバ3を有する。実施の形態1では、2台の認証サーバ3として、認証サーバ3a、認証サーバ3bを有する。認証サーバ3a及び認証サーバ3bは、同様の機能を有する。複数の認証サーバ3における各認証サーバ3は、認証スイッチ6を通じて、各ユーザ端末1からの認証要求のアクセスを受け付ける。複数の認証サーバ3は、認証スイッチ6を通じて、複数の認証要求を分散して、認証処理を行う。分散の方式は、ラウンドロビン等、各種の方式が可能である。
認証部31は、ユーザ端末1からのユーザ認証要求及び認証情報を受信した場合、受信した認証情報を用いて、可逆暗号を用いた復号化により、ユーザ認証処理を行い、ユーザ認証の結果である成功または失敗を表すユーザ認証応答を、ユーザ端末1へ送信する。
複数の認証サーバ3は、ユーザ認証用の認証情報を保持及び管理する必要が無いので、認証DBを保持しない。なお、認証サーバ3以外の装置も、認証DBを保持しない。また、複数の認証サーバ3は、認証DBを保持しないので、認証サーバ3間での認証情報の複製処理も行わない。認証サーバ3は、ユーザ認証処理の際に、認証情報を受信し、認証処理用の認証情報を生成し、それらの認証情報を一時的に記憶するが、その後にはそれらの認証情報を保持しない。
認証部31は、ユーザ認証処理の際の認証情報を含む一連の情報を、認証ログ32に記録する。認証ログ32は、外部からアクセス及び参照可能である。管理者90は、問題発生時等に、認証サーバ3の認証ログ32を参照することができる。
認証スイッチ6は、レイヤ2及びレイヤ3のスイッチ機能を備えると共に、認証サーバ3との通信に基づいてユーザ認証を行うユーザ認証クライアントとしての機能を備える認証機器である。認証スイッチ6は、図示しないプロセッサ、メモリ、通信インタフェース装置、等のハードウェア、及びプログラム等のソフトウェアを備え、それらに基づいてスイッチ機能やユーザ認証クライアント機能等を実現する。認証スイッチ6は、ネットワーク5のエッジに接続されるノードであり、ユーザ端末1をネットワーク5へ接続する。ネットワーク5には、複数の認証スイッチ6が接続されていてもよい。
ユーザ端末1がネットワーク5へログインする際、認証スイッチ6と認証サーバ3との間では、RADIUSプロトコルに基づいたクライアントサーバ通信により、ユーザ認証処理が行われる。認証スイッチ6及び認証サーバ3は、ユーザ認証の成功に応じて、ユーザ端末1がネットワーク5へログインすることを許可する。
認証スイッチ6は、認証サーバ3と同様に、図示しない認証ログを記録及び保持する。管理者90は、認証スイッチ6の認証ログを参照することもできる。
実施の形態1の認証システムは、ユーザIDに個人特定情報を含む形式であるため、認証情報と個人特定情報との関係付け情報を保持及び管理しない。
[シーケンス]
図2は、実施の形態1の認証システムにおける、パスワード発行及び認証を含む、処理や作業のシーケンスを示す。S1等はステップを表す。以下、ステップS1〜S11の各処理や作業について、例を用いながら順に説明する。
(S1) ID管理装置4は、予め管理者90の設定操作に基づいて、個人特定情報を含むユーザIDを発行する。ID管理部41は、ユーザIDをID情報42に登録する。本例では、ID情報42にユーザID「IDa」等が登録される。また、ID管理装置4は、発行されたユーザIDをユーザ端末1へ配布する。本例では、ユーザ9aのユーザ端末1aは、配布によりユーザID「IDa」を取得する。
(S2) パスワード発行装置2は、例えばユーザ端末1aからのパスワード発行要求を受信する。パスワード発行装置2は、パスワード発行要求に従い、パスワード発行部21により、パスワード発行処理を行う。パスワード発行部21は、ID管理装置4に管理されているユーザIDを参照する。パスワード発行部21は、そのユーザIDを元に、可逆暗号による暗号化を行い、暗号化の出力値としてパスワードを生成する。パスワード発行部21は、生成したパスワードをパスワード情報22に記憶し、ユーザ端末1に対して発行する。本例では、ユーザID「IDa」を元に、パスワード「PWa」が発行されている。S2のパスワード発行処理の詳細については後述する。
(S3) パスワード発行装置2は、S2で発行したパスワードを、ユーザ端末1へ配布する。例えば、パスワード発行装置2は、パスワード「PWa」を含む情報を、ネットワーク5及び認証スイッチ6を通じて、ユーザ端末1aへ送信する。ユーザ端末1aは、パスワード「PWa」を取得する。これにより、ユーザ端末1a及びユーザ9aは、配布済みのユーザID「IDa」と合わせて、ユーザ認証用の認証情報A1として、{IDa,PWa}を得る。
(S4) ユーザ端末1aは、ネットワーク5へログインする際、ユーザ認証のため、認証スイッチ6へアクセスする。
(S5) 認証スイッチ6は、S4のユーザ端末1aからのアクセスを受けると、ユーザ端末1aのユーザ認証のために、ユーザ認証ページをユーザ端末1aへ送信する。
(S6) ユーザ端末1aは、受信したユーザ認証ページによるユーザ認証画面を表示する。ユーザ認証画面には、ユーザ認証用の認証情報の入力をユーザに促すメッセージ等が表示される。ユーザ9aは、ユーザ認証画面で、認証情報A1{IDa,PWa}を入力する。本例では、正しい認証情報A1{IDa,PWa}が入力されたとする。正しい認証情報とは、ID管理装置4で管理されているユーザIDと、パスワード発行装置2で発行されたパスワードとの組合せである。ユーザ端末1aは、入力された認証情報A1を認証スイッチ6へ送信する。認証スイッチ6は、入力された認証情報A1及びユーザ認証要求を、認証サーバ3へ送信する。この際、認証スイッチ6は、冗長構成の複数の認証サーバ3のうち、いずれの認証サーバ3へアクセスしてもよい。本例では、認証スイッチ6は、入力された認証情報A1及びユーザ認証要求を、認証サーバ3aへ送信する。
(S7) 認証サーバ3aは、認証スイッチ6を通じてユーザ端末1aから受信した、ユーザ認証要求及び入力された認証情報に対し、認証部31により、ユーザ認証処理を行う。認証部31は、入力された認証情報のうちのパスワードを元に、可逆暗号による復号化を行い、復号化の出力値を用いて、当該認証情報に関する有効性を確認し、当該確認に基づいて、ユーザ認証の結果である成功または失敗を判定する。S7のユーザ認証処理の詳細については後述する。本例では、S6で正しい認証情報A1が入力されているため、ユーザ認証の結果が成功となる。
(S8) 認証サーバ3aは、S7の結果、ユーザ認証の成功を表すユーザ認証応答を、認証スイッチ6を通じてユーザ端末1aへ送信する。ユーザ端末1aは、受信したユーザ認証応答から、ユーザ認証の成功を認識する。これにより、ユーザ端末1aは、ネットワーク5へのログイン及びネットワーク5上のサービスの利用等が許可される。
(S9) 認証サーバ3は、S4〜S8のような一連のユーザ認証処理の際に、認証情報を含む情報を、認証ログ32に記録している。認証スイッチ6も、同様に認証ログを記録している。
(S10) ユーザ認証後にユーザ9aのユーザ端末1aがネットワーク5上のサービスを利用した際に、何らかの問題が発生しているとする。問題とは、組織のポリシーや規約に反するサービス利用等である。
(S11) 問題発生時に、管理者90は、問題に係わるユーザ個人を特定する作業を行う。管理者90は、認証サーバ3の認証ログ32を参照する。本例では、管理者90は、端末から、認証サーバ3aにアクセスし、認証ログ32に記録されている、問題に係わる認証情報を参照する。本例では、問題に係わる認証情報A1{IDa,PWa}が参照される。そのユーザID「IDa」は、個人Aの個人特定情報を含んでいる。よって、管理者90は、その個人特定情報から、問題に係わるユーザ9aを特定することができる。管理者90は、個人Aの個人特定情報である社員番号から、組織の名簿やDB等を参照することにより、名前、所属部署、連絡先、等がわかる。
[パスワード発行処理]
図3は、パスワード発行装置2におけるパスワード発行処理を示す。以下、実施の形態1における、可逆暗号を用いて特有のパスワードを生成する方式について説明する。
まず、前提として、ID管理装置4のID管理部41は、例えば管理者90の設定操作に基づいて、個人特定情報を含む任意値により、ユーザID301を発行する。本例では、ユーザID301の形式は、[社員番号]+[任意値]である。個人特定情報は、[社員番号]であり、例えば4文字である。任意値は、例えば4文字である。ユーザID301の値は、一例として“0123****”である。ユーザ9aの社員番号を“0123”とする。“*”は任意値を示す。ユーザID301の文字列の並び、文字数、文字種、等は、所定の規則に従う。本例では、文字列は、社員番号の4文字、任意値の4文字、の順である。文字種は半角英数である。
個人特定情報は、社員番号に限らず設定が可能である。個人特定情報を含むユーザIDの他の例は以下である。他のユーザIDの形式は、[名前]+[所属部署]+[任意値]である。[名前]+[所属部署]が個人特定情報である。文字列の並びは、[名前]、区切り文字、[所属部署]、区切り文字、任意値、の順である。例えば、ユーザID=“NAMAE_BUSYO_****”である。他のユーザIDの形式は、[連絡先]+[任意値]である。[連絡先]が個人特定情報である。[連絡先]は例えばメールアドレスや電話番号である。[任意値]は省略可能である。例えば、ユーザID=“namae.busyo@kaisya.com”である。
パスワード発行装置2のパスワード発行部21は、ユーザID301を元に、パスワード302を発行する処理を行う。パスワード発行部21は、発行済みのユーザID301を参照する。パスワード発行部21は、ユーザID301を入力値として、第1の規則であるハッシュ関数303により、その出力値として、ユーザIDハッシュ値304を得る。なお、ユーザIDを元に第1の規則で得られた情報を、第1の情報とする。ハッシュ関数303は、パスワード発行装置2の内部で秘密である一方向関数である。
パスワード発行部21は、第1の情報であるユーザIDハッシュ値304と、有効期限305との2つの情報を、有効性確認情報310とし、可逆暗号を用いた暗号化の入力値として用いる。
有効期限305は、パスワード302に関する有効期限である。ユーザID301とパスワード302との組合せで意味を持つ認証情報300が構成されるので、言い換えると、有効期限305は、認証情報300やユーザID301に関する有効期限である。パスワード発行部21は、パスワード302の発行の際、所定の規則で、有効期限305を設定する。規則の例として、有効期限305は、パスワードの発行時点から所定の有効期間の後の時点である。所定の有効期間は、任意に設定可能である。例えば管理者90は、端末からパスワード発行装置2にアクセスし、パスワード発行装置2が提供する設定画面で、有効期間を設定可能である。
有効期限305の形式は、例えば年月日の8文字である。有効期限305の値は、一例として、2014年9月1日を示す“20140901”である。発行されるパスワード302、及びユーザID301を含む認証情報300は、有効期限305内のみで有効である。なお、有効期限305に関する有効期間が、例えば10分、1時間、1日といった比較的短い期間に設定される場合、生成されるパスワード302は、ワンタイムパスワードとして機能する。
有効性確認情報310は、ユーザID301及びパスワード302の有効性を示す情報、言い換えると、認証の際に認証情報300の有効性を確認するための情報である。
パスワード発行部21は、暗号化部320により、有効性確認情報310を入力値として、可逆暗号を用いた暗号化を行い、その出力値として、パスワード302を生成する。暗号化部320は、暗号化の際、ユーザIDハッシュ値304、及び有効期限305の値を、所定の規則で並べて入力値とする。暗号化により、パスワード302の中に、ユーザID301及び有効期限305が秘匿された形で埋め込まれている。
パスワード発行部22は、暗号化部320で生成したパスワード302を、ユーザ認証用の認証情報300のうちのパスワード302としてユーザ端末1へ発行する。
[認証処理]
図4は、認証サーバ3における認証処理を示す。認証サーバ3の認証部31は、ユーザ端末1から受信したユーザ認証要求、及び入力された認証情報400における、ユーザID401及びパスワード402を参照する。ユーザID401の値は、図3のユーザID301の値と同じとする。パスワード402の値は、図3のパスワード302の値と同じとする。
認証部31は、ユーザID401を入力値として、第1の規則であるハッシュ関数403により、出力値として、第1の情報である認証用ユーザIDハッシュ値404を得る。このハッシュ関数403は、認証サーバ3の内部で秘密である一方向関数であって、図3のパスワード発行装置2のハッシュ関数303と共通である。
また、認証部31は、パスワード402を入力値として、復号化部420により、可逆暗号を用いた復号化を行い、出力値として、有効性確認情報410を得る。復号化部420の可逆暗号は、図3のパスワード発行装置2の暗号化部320の可逆暗号と共通である。認証部31は、有効性確認情報410として、第1の情報である復号ユーザIDハッシュ値406と、有効期限405との2つの情報を取り出す。
認証部31は、有効性確認情報410を用いて、認証情報400の有効性を確認する。まず、認証部31は、比較部407により、認証用ユーザIDハッシュ値404と、復号ユーザIDハッシュ値406とを比較することにより、ユーザID401の有効性、及び対応するパスワード402の有効性を確認し、当該確認に基づいて、ユーザ認証の結果を判定する。認証部31は、比較の結果、認証用ユーザIDハッシュ値404と復号ユーザIDハッシュ値406とが一致する場合、ユーザ認証の結果を成功とし、不一致の場合、失敗とする。
なお、ユーザID301と同じである正しいユーザID401が入力されている場合、図4の認証用ユーザIDハッシュ値404と図3のユーザIDハッシュ値304とが同じ値である。また、パスワード302と同じである正しいパスワード402が入力されている場合、図4の復号ユーザIDハッシュ値406と図3のユーザIDハッシュ値304とが同じ値である。すなわち、認証情報300と同じである正しい認証情報400が入力されている場合、認証用ユーザIDハッシュ値404と復号ユーザIDハッシュ値406とが一致する。これらの2つのユーザIDハッシュ値が一致する場合、入力されたユーザID401とパスワード402とが対応関係を持つ正しい組合せの認証情報であることを示している。
認証情報300とは異なる誤った認証情報400が入力されている場合、認証用ユーザIDハッシュ値404と復号ユーザIDハッシュ値406とが一致しない。この場合、ユーザID401とパスワード402との対応関係が確認できない。
また、認証部31は、有効期限確認部408により、認証情報400に関する有効期限405を確認する。有効期限確認部408は、現在時点と有効期限405との比較により、当該認証情報400が有効期限405内かどうかを判定する。認証部31は、判定の結果、有効期限405内である場合には、その認証情報400を用いたユーザ認証を有効とし、有効期限405外である場合には、その認証情報400を用いたユーザ認証を無効とする。
認証部31は、有効期限確認部408での確認の結果である有効または無効を、比較部407の結果に反映する。無効の場合、認証部31は、比較部407の結果が一致であっても、ユーザ認証の結果を失敗とする。認証部31は、ユーザ認証の結果を表すユーザ認証応答をユーザ端末1へ送信する。
[効果等]
実施の形態1の認証システムでは、認証情報の管理に関して、保持及び管理すべき認証情報の量を少なくするために、認証情報を構成する要素である、ID、パスワード、有効期限等の情報を、必要に応じた時点で生成する方式を適用する。その方式として、実施の形態1では、可逆暗号を用いて特有のパスワードを生成する方式を適用する。パスワード発行装置2は、ユーザIDを元に、暗号化により、有効性確認情報を埋め込んだ特有のパスワードを発行する。認証サーバ3は、認証の際、入力されたパスワードから復号化により有効性確認情報を取り出し、ユーザIDの有効性を確認する。パスワード発行装置2と認証サーバ3は、同じ可逆暗号及び規則を用いて、都度、認証情報を処理する。
これにより、実施の形態1の認証システムは、保持及び管理する認証情報の量を少なくすることができ、構成の簡素化や、認証サーバ3等のリソース消費削減を実現できる。認証システムは、認証サーバ3や認証サーバ3に接続される他の装置に、ユーザID、パスワード、及び有効期限等の認証情報を保持及び管理する必要が無い。認証システムのユーザが増えた場合にも、保持及び管理すべき認証情報が増えないので、認証サーバ3や他の装置におけるプロセッサやメモリ等のリソースの消費を削減できる。
また、冗長構成の認証サーバ3において、各認証サーバ3は、認証情報を含む認証DBを保持せず、認証サーバ3間での認証情報の複製処理も不要である。よって、認証サーバ3の数を増やしやすく、冗長構成の運用が容易である。各認証サーバ3は、複製処理の時間が生じず、それが原因で認証できないという状態も生じない。複数のユーザ端末1が同時に複数の認証要求を行っている場合にも、複数の認証サーバ3で分散して受け付けて認証処理が可能である。すなわち、実施の形態1では、冗長構成の認証サーバ3で分散して認証を行う性能を高くすることができる。
更に、特有のパスワードを発行する仕組みであるため、ユーザIDについては任意値にすることができ、設定の自由度が高い。特に、実施の形態1では、ユーザIDに、直接的に個人特定情報を含ませた形式である。これにより、問題発生時に、管理者90は、認証ログ32の認証情報から、すぐにユーザ個人を特定可能であり、特定のための作業の手間が少ない。認証システム及び管理者90等は、認証情報と個人とを関係付ける関係付け情報を保持及び管理する必要が無い。よって、関係付け情報の管理に係わる構成の簡素化、及びリソース消費削減も実現できる。
問題発生時の個人特定に関する課題及び効果について補足する。認証システムを利用する会社や学校等の組織は、社員や学生等のユーザがサービス等を利用して問題が発生した場合に、その問題に係わるユーザ個人を特定できることが望ましい。問題発生時にユーザ個人を特定可能とするためには、認証情報に関連して、個人特定情報が必要である。
従来の認証システムでは、特殊なIDやワンタイムパスワードを発行する例がある。そのような方式の場合、そのIDやワンタイムパスワードに個人特定情報を含ませることはできない。よって、従来の認証システムは、認証サーバ等に認証DBを保持すると共に、個人特定情報に関する関係付け情報等の管理が別に必要になる。その場合、ユーザが増えるほど、認証情報及び関係付け情報の量が増える。その分、構成が複雑になり、認証サーバ等のリソースを多く消費する。
また、従来の方式の場合、問題発生時に、ユーザ個人を特定できない場合や、特定できたとしても作業の手間が大きい場合がある。管理者は、問題発生時に、ユーザ個人を特定する場合、認証ログや関係付け情報を参照し、各情報同士の関係を解析して、ユーザ個人を特定する作業が必要である。認証ログの中の認証情報には個人特定情報が含まれていないので、管理者は、認証ログのみからすぐに個人を特定することは難しい。
[変形例]
実施の形態1に関する変形例として、以下が挙げられる。
(1) 図1のID管理装置4は、アカウント管理機能を備えたアカウント管理サーバ等の装置としてもよい。すなわち、その装置は、IDだけでなく、パスワード発行装置2で発行されたパスワードを含めて、アカウントとして、DBに管理する。パスワード発行装置2は、その装置と連係し、発行したパスワードを、その装置のDBに登録する。
また、図1のパスワード発行装置2は、ID管理装置4と統合して、1つの装置としてもよい。すなわち、その装置は、パスワード発行機能と、ID及びパスワードを含むアカウント管理機能と、を備える。なお、アカウント管理機能は、Active Directory、Open LDAP等の技術を用いて構成可能である。
(2) 図2のシーケンスの変形例として、以下としてもよい。S2の際、管理者90の端末からパスワード発行装置2へパスワード発行要求を送信してもよい。また、S2の際、ユーザ端末1または管理者90の端末から、パスワード発行装置2へ、パスワード発行要求と共に、発行済みのIDを送信し、パスワード発行装置2は、そのIDを元にパスワードを生成してもよい。また、S2で、パスワード発行装置2は、ユーザIDとパスワードとを関係付けてパスワード情報22に記憶してもよい。また、S3で、パスワード発行装置2は、パスワードと共にユーザIDを、ユーザ端末1へ配布してもよい。
(3) 図3のパスワード発行処理及び図4の認証処理の際、第1の規則として、ハッシュ関数に限らず、他の変換処理等が適用可能であり、有効性確認情報の1つである第1の情報として、ユーザIDハッシュ値に限らず、適用可能である。
(実施の形態2)
図5及び図6を用いて、本発明の実施の形態2の認証システムについて説明する。実施の形態2の基本的な構成は、実施の形態1の構成と同様である。以下、実施の形態2における実施の形態1とは異なる構成について説明する。
実施の形態2では、認証情報は、個人特定情報を含まない形式である。実施の形態2の認証システムは、ユーザIDと個人特定情報との関係付け情報を保持及び管理する。
[認証システム]
図5は、実施の形態2の認証システムの構成を示す。実施の形態2の認証システムでは、ID管理装置4の構成が、実施の形態1のID管理装置4の構成とは異なる。
ID管理装置4は、ID管理部41、ID情報42、個人特定情報管理部43、及び関係付け情報44を有する。ID管理部41は、例えば管理者90の設定操作に基づいて、個人特定情報を含まない任意値によるユーザIDを、ID情報42に登録する。
実施の形態2では、問題発生時にユーザ個人を特定可能とするため、ID管理装置4で関係付け情報44を管理する。個人特定情報管理部43は、例えば管理者90の設定操作に基づいて、ユーザIDと個人特定情報とを関係付ける情報を、関係付け情報44に保持及び管理する。個人特定情報は、例えば社員番号である。
複数の認証サーバ3は、実施の形態1と同様に、認証情報の管理が不要であり、認証DBを保持しない。パスワード発行装置2は、ID管理装置4で管理されているユーザIDを元に、パスワードを生成し、ユーザ端末1へ配布する。ユーザ端末1は、ID管理装置4で発行されたユーザID、及びパスワード発行装置2で発行されたパスワードを、ユーザ認証用の認証情報として用いる。
管理者90は、問題発生時、端末から、認証サーバ3の認証ログ32、及びID管理装置4の関係付け情報44を参照し、関係付け情報44の中の個人特定情報から、問題に係わるユーザ個人を特定可能である。
[関係付け情報]
図6は、実施の形態2における、関係付け情報44の構成例である表を示す。この表は、列として、「識別番号」、「ユーザID」、「個人特定情報」がある。「識別番号」は、行毎の識別番号であり、認証情報毎の関係付け情報の識別情報に相当する。「ユーザID」列は、ユーザの認証情報のうちのユーザIDの値が登録される。「個人特定情報」列は、「ユーザID」列のユーザIDと関係付けて、個人特定情報が登録される。
本例では、第1行は、個人Aであるユーザ9aの認証情報A1に関する関係付け情報であり、ユーザID「IDa」と、個人Aの個人特定情報である社員番号“0123”とが関係付けて登録されている。
[シーケンス]
図5を用いて、実施の形態2の認証システムにおける、パスワード発行及び認証を含むシーケンスを説明する。このシーケンスの概要は、図2のシーケンスと同じであり、異なる部分として、図5中に示す、ステップS1a,S1b,S11a,S11bがある。以下、ステップS1a等について順に説明する。
(S1a) S1aで、ID管理装置4は、例えば管理者90の設定操作に基づいて、ユーザIDを発行する。管理者90は、ユーザからの申請に基づいて、個人特定情報を含まない任意値によるユーザIDを設定する。ID管理部41は、そのユーザIDをID情報42に登録する。本例では、ユーザ9aの認証情報A1におけるユーザID「IDa」が登録されている。
(S1b) S1bで、ID管理装置4の個人特定情報管理部43は、例えば管理者90の設定操作に基づいて、S1aのユーザIDと、そのユーザIDを持つユーザに関する個人特定情報とを関係付ける情報を、関係付け情報44に登録する。例えば、管理者90は、S1aのユーザIDの登録に伴い、当該ユーザに関する個人特定情報を、関係付け情報44に登録する。本例では、図6の表の第1行のように、ユーザ9aの認証情報A1に関する、ユーザID「IDa」と、個人Aの個人特定情報とを関係付ける情報が登録されている。
S1b以降のパスワード発行や認証等の手順は、図2のS2〜S9と同様である。その後、S10と同様に、ユーザ9aのユーザ端末1aがネットワーク5上のサービスを利用した際に、何らかの問題が発生しているとする。
(S11a) 問題発生時、管理者90は、問題に係わるユーザ個人を特定する作業を行う。管理者90は、S11aで、認証サーバ3の認証ログ32を参照する。本例では、管理者90は、端末から、認証サーバ3aにアクセスし、認証ログ32を参照し、問題に係わる認証情報として、認証情報A1{IDa,PWa}を参照する。そのユーザID「IDa」は、個人Aの個人特定情報を含んでいない。
(S11b) S11bで、管理者90は、そのユーザID「IDa」を用いて、ID管理装置4の関係付け情報44を参照する。管理者90は、端末から、ID管理装置4にアクセスし、個人特定情報管理部43により提供される画面を表示する。この画面には、関係付け情報44の内容が表示される。管理者90は、画面で、検索等の操作により、ユーザIDに関係付けられた個人特定情報を参照する。これにより、管理者90は、その個人特定情報から、問題に係わるユーザ個人を特定できる。本例では、ユーザID「IDa」から個人Aの個人特定情報として社員番号が得られる。管理者90は、その社員番号から、名簿や別のDB等の参照により、名前、所属部署、連絡先等がわかり、問題に係わるユーザ9aを特定することができる。
[効果等]
実施の形態2の認証システムによれば、実施の形態1と同様に、認証情報の管理に関して、保持及び管理する認証情報の量を少なくすることができ、構成の簡素化や、認証サーバ3等のリソース消費削減を実現できる。
実施の形態2では、問題発生時には、認証ログ32及び関係付け情報44から、ユーザ個人を特定可能である。実施の形態2では、関係付け情報44の管理が必要であるが、ユーザIDについては、任意値で設定可能であり、設定の自由度が高い。
実施の形態2の変形例として、以下が挙げられる。認証システムは、ID管理装置4に限らず、管理者90等からアクセス可能ないずれかの場所に、関係付け情報44を保持及び管理してもよい。例えば、パスワード発行装置2に、個人特定情報管理部43及び関係付け情報44を備えてもよい。また、ID管理装置4やパスワード発行装置2とは別に、個人特定情報管理部43及び関係付け情報44を備える個人特定情報管理装置が設けられてもよい。
関係付け情報44の管理とID情報42の管理とが1つに統合されてもよい。また、ID情報42や関係付け情報44は、名前、所属部署等の詳細情報が登録されたDBとしてもよい。また、関係付け情報44の管理は、ID管理装置4等により情報処理で管理する形態に限らず、管理者90等により名簿等の用紙に管理する形態でもよい。
(実施の形態3)
図7及び図8を用いて、本発明の実施の形態3の認証システムについて説明する。実施の形態3は、実施の形態1のパスワード発行処理及び認証処理に関する第1の変形例である。
[パスワード発行処理]
図7は、パスワード発行装置2でのパスワード発行処理を示す。
まず、前提として、ID管理装置4のID管理部41は、ユーザID501を発行する。ユーザID501は、実施の形態1と同様に、個人特定情報を含む任意値とする。ユーザID501の形式は、[社員番号]+[任意値]とし、ユーザID501の値は、例えば“0123****”である。
パスワード発行装置2のパスワード発行部21は、発行済みのユーザID501を参照する。パスワード発行部21は、ユーザID501と、有効期限505との2つの情報を、有効性確認情報510とする。実施の形態3では、パスワード発行及び認証の際、第1の規則として、ハッシュ関数等の変換処理を適用せず、ユーザID501自体をそのまま有効性確認情報の1つとして用いる。
パスワード発行部21は、実施の形態1と同様に、認証情報500に関する有効期限505を設定し、有効性確認情報510の1つとする。有効期限505の値は、例えば“20140901”である。
パスワード発行部21は、有効性確認情報510であるユーザID501と有効期限505との組合せから、一旦、暗号化前パスワード506を作成し、暗号化の入力値とする。暗号化前パスワード506の作成の際、2つの情報の組合せ方は、所定の規則に従う。本例では、暗号化前パスワード506の文字列の並びは、有効期限505の8文字、ユーザID501の8文字、の順である。暗号化前パスワード506の値は、例えば“201409010123****”である。
パスワード発行部21は、暗号化前パスワード506を入力値として、暗号化部520により、可逆暗号を用いた暗号化を行う。パスワード発行部21は、暗号化部520の暗号化の鍵情報530として、所定の共通鍵を用いる。この共通鍵は、認証サーバ3と共有する秘匿された共通鍵である。
パスワード発行部21は、暗号化の出力値として、暗号化後パスワード507を得る。パスワード発行部21は、この暗号化後パスワード507を、認証情報500のうちのパスワード502として発行する。
[認証処理]
図8は、認証サーバ3での認証処理を示す。
認証サーバ3の認証部31は、ユーザ端末1から受信した、入力された認証情報600における、ユーザID601及びパスワード602を参照する。ユーザID601の値は、図7のユーザID501の値と同じとする。パスワード602の値は、図7のパスワード502の値と同じとする。
認証部31は、パスワード602を入力値として、復号化部620により、可逆暗号を用いた復号化を行う。認証部31は、復号化部620の復号化の際、鍵情報630として所定の共通鍵を用いる。この共通鍵は、パスワード発行装置2と共有する秘匿された共通鍵であり、図7の鍵情報530の共通鍵と同じ情報である。復号化部620は、この復号化により、出力値として、復号パスワード603を得る。認証部31は、復号パスワード603から、有効性確認情報610である、復号ユーザID604、及び有効期限605を取り出す。
認証部31は、有効性確認情報610を用いて、認証情報600の有効性を確認する。まず、認証部31は、比較部607により、入力されたユーザID601と、復号ユーザID604とを比較することにより、ユーザID601の有効性を確認し、ユーザ認証の結果を判定する。認証部31は、比較の結果、ユーザID601と復号ユーザID602とが一致する場合、ユーザ認証の結果を成功とし、不一致の場合、失敗とする。
なお、認証情報500と同じである正しい認証情報600が入力されている場合、ユーザID601と復号ユーザID604とが一致する。2つのユーザIDが一致する場合、入力されたユーザID601とパスワード602との対応関係が確認でき、すなわち、ユーザID601及びパスワード602の有効性が確認できる。
また、認証部31は、有効期限確認部608により、認証情報600が有効期限605内かどうかを確認する。認証部31は、有効期限605内である場合、その認証情報600を用いた認証を有効とし、有効期限605外である場合、その認証情報600を用いた認証を無効とする。
[効果等]
実施の形態3によれば、実施の形態1と同様の効果が得られる。また、実施の形態3によれば、鍵情報を用いた暗号化により、暗号化後のパスワードの長さを短くできる利点もある。
実施の形態3の変形例として、図7のユーザID501は、実施の形態2と同様に、個人特定情報を含まない任意値としてもよい。
(実施の形態4)
図9及び図10を用いて、本発明の実施の形態4の認証システムについて説明する。実施の形態4は、実施の形態1のパスワード発行処理及び認証処理に関する第2の変形例である。
[パスワード発行処理]
図9は、パスワード発行装置2でのパスワード発行処理を示す。
まず、前提として、ID管理装置4のID管理部41は、ユーザID701を発行する。ユーザID701は、実施の形態1と同様に、個人特定情報を含む任意値とする。ユーザID701の形式は、[社員番号]+[任意値]とし、ユーザID701の値は、例えば“0123****”である。
パスワード発行装置2のパスワード発行部21は、発行済みのユーザID701を参照する。パスワード発行部21は、ユーザID701を入力値として、実施の形態1と同様に、第1の規則としてハッシュ関数703により、第1の情報であるユーザIDハッシュ値704を得る。ユーザIDハッシュ値704の例を“XYZ”とする。
パスワード発行部21は、実施の形態1と同様に、認証情報700に関する有効期限705を設定する。有効期限705の例は“20140901”である。
パスワード発行部21は、ユーザIDハッシュ値704と、有効期限705との2つの情報を、有効性確認情報710として、2つの情報から、一旦、暗号化前パスワード706を作成する。2つの情報の組合せ方は、例えば、有効期限705の8文字、ユーザIDハッシュ値704の3文字、の順である。暗号化前パスワード706の値は、例えば“20140901XYZ”である。
パスワード発行部21は、暗号化前パスワード706を入力値として、暗号化部720により、可逆暗号を用いた暗号化を行う。パスワード発行部21は、暗号化部720の暗号化の鍵情報730として、認証サーバ3との共通鍵と、ユーザID701と、を含む鍵情報730を用いる。すなわち、実施の形態4では、暗号化の際の鍵情報730に、共通鍵に加え、有効期限確認情報710の1つとしてユーザID701を含ませる。
パスワード発行部21は、暗号化の出力値として、暗号化後パスワード707を得る。パスワード発行部21は、この暗号化後パスワード707を、認証情報700のうちのパスワード702として発行する。
[認証処理]
図10は、認証サーバ3での認証処理を示す。
認証サーバ3の認証部31は、ユーザ端末1から受信した、入力された認証情報800における、ユーザID801及びパスワード802を参照する。ユーザID801の値は、図9のユーザID701の値と同じとする。パスワード802の値は、図9のパスワード702の値と同じとする。
認証部31は、ユーザID801を入力値として、第1の規則であるハッシュ関数803により、出力値として、第1の情報である認証用ユーザIDハッシュ値804を得る。このハッシュ関数803は、図9のパスワード発行装置2の内部のハッシュ関数703と共通である。
また、認証部31は、パスワード802を入力値として、復号化部820により、可逆暗号を用いた復号化を行う。認証部31は、復号化部820の復号化の鍵情報830として、パスワード発行装置2との共通鍵と、入力されたユーザID801と、を含む鍵情報830を用いる。この共通鍵は、図9の共通鍵と同じ情報である。実施の形態4では、復号化の際の鍵情報830に、暗号化の際と同様に、有効性確認情報810の1つとしてユーザID801を含ませる。
認証部31は、復号化の出力値として、復号パスワード805を得る。認証部31は、復号パスワード805から、有効性確認情報810として、復号ユーザIDハッシュ値806と、有効期限807との2つの情報を取り出す。
認証部31は、有効性確認情報810を用いて、認証情報800の有効性を確認する。まず、認証部31は、比較部808により、認証用ユーザIDハッシュ値804と、復号ユーザIDハッシュ値806とを比較することにより、ユーザID801の有効性を確認し、ユーザ認証の結果を判定する。認証部31は、比較の結果、認証用ユーザIDハッシュ値804と復号ユーザIDハッシュ値806とが一致する場合、ユーザ認証の結果を成功とし、不一致の場合、失敗とする。
また、認証部31は、有効期限確認部809により、認証情報800が有効期限807内かどうかを確認する。認証部31は、確認の結果、有効期限807内である場合、その認証情報800を用いた認証を有効とし、有効期限807外である場合、その認証情報800を用いた認証を無効とする。
[効果等]
実施の形態4によれば、実施の形態1と同様の効果が得られる。また、実施の形態4によれば、鍵情報を用いた暗号化により、暗号化後のパスワードの長さを短くできる利点もある。
実施の形態4の変形例として、以下が挙げられる。図9のユーザID701は、実施の形態2と同様に、個人特定情報を含まない任意値としてもよい。
図9の暗号化及び図10の復号化の際の鍵情報は、有効性確認情報として、ユーザID自体を含ませるのではなく、ユーザIDを元に第1の規則で生成した第1の情報を含ませるようにしてもよい。また、暗号化の鍵情報に有効性確認情報としてユーザIDまたは第1の情報を含ませ、かつ、暗号化の入力値には、ユーザIDまたは第1の情報を含ませない構成としてもよい。
(実施の形態5)
図11及び図12を用いて、本発明の実施の形態5の認証システムについて説明する。実施の形態5は、実施の形態1の構成に加え、シングルサインオンに関する構成が追加されている。シングルサインオンは、複数のサービス間で認証に関して連携し、単一の認証の手続きにより複数のサービスを利用可能にする仕組みである。なお、説明上、シングルサインオンをSSOと略記する。アイデンティティプロバイダをIdPと略記する。
[認証システム]
図11は、実施の形態5の認証システムの構成を示す。実施の形態5の認証システムは、複数のユーザ端末1、パスワード発行装置2、ID管理装置4、複数の認証サーバ3、認証スイッチ6、及びIdPサーバ7がネットワーク5に接続されている。
ネットワーク5上、ユーザ端末1、認証スイッチ6、及び認証サーバ3等の間では、実施の形態1と同様に、TCP/IP、UDP、HTTP等のプロトコルを用いて、ユーザ認証に関する通信が行われる。ネットワーク5上、ユーザ端末1、認証スイッチ6、IdPサーバ7、ID管理装置4、及びパスワード発行装置2等の間では、TCP/IP、UDP、HTTP等のプロトコルを用いて、SSOに関する通信が行われる。
なお、ネットワーク5は、認証サーバ3を含むネットワーク、IdPサーバ7を含むネットワーク、等の接続により構成されてもよい。
ユーザ端末1がネットワーク5へログインする際、ユーザ認証の前に、SSO認証が行われる。その際、ユーザ端末1は、認証スイッチ6を通じて、SSO認証のために、IdPサーバ7へアクセスし、SSO認証に関する通信を行う。
ユーザ端末1のユーザには、予め、SSO認証用の認証情報であるSSO認証情報81が割り当てられている。このSSO認証情報81は、ユーザ認証用の認証情報82とは別である。例えば、ユーザ9aのSSO認証情報をX1、ユーザ9bのSSO認証情報をX2、等とする。
IdPサーバ7は、SSOにおけるIdPとしての機能を持つサーバ装置である。IdPサーバ7は、SSO認証部71、及びSSO認証DB72を有する。IdPサーバ7は、図示しないプロセッサ、メモリ、通信インタフェース装置、等のハードウェア、及び、OS、サーバプログラム等のソフトウェアを備え、当該ハードウェアに基づいたソフトウェア処理により、SSO認証部71等を実現する。IdPサーバ7は、IPアドレスに関係付けられたURLを公開する。
SSO認証部71は、ユーザ端末1からの認証スイッチ6を通じたSSOのアクセスに対し、SSO認証DB72を参照してSSO認証を行う。SSO認証部71は、ユーザ端末1から受信したSSO認証情報と、SSO認証DB72に登録されているSSO認証情報とが一致する場合、SSO認証の結果を成功とし、不一致の場合、失敗とする。SSO認証部71は、SSO認証が成功の場合、ユーザ端末1に、SSO認証の成功を表す応答を送信すると共に、当該ユーザ端末1に関するIDを含む情報を提供する。当該IDは、実施の形態5では、ID管理装置4でID情報42に管理されているIDである。SSO認証部71は、ID管理装置4から当該ユーザ端末1に関するIDを取得し、ユーザ端末1へ送信する。
SSO認証DB72は、複数のユーザのSSO認証情報が登録及び管理されるデータベースである。本例では、SSO認証DB72には、ユーザ9aのSSO認証情報X1、等が登録されている。
ID管理装置4のID管理部41は、IdPサーバ7からのアクセスに対し、ID情報42を参照し、要求されているIDを含む情報を提供する。ID情報42に登録されているIDは、実施の形態1と同様に、個人特定情報を含む形式である。
パスワード発行装置2は、SSO認証後、ユーザ端末1から、パスワード発行要求及びIDを受信する。パスワード発行装置2は、パスワード発行要求及びIDに応じて、そのIDを元にパスワードを発行し、ユーザ端末1へ提供する。
ユーザ端末1は、IdPサーバ7から提供されたIDと、パスワード発行装置2から提供されたパスワードとの組合せによるユーザ認証用の認証情報82を得る。ユーザ端末1は、認証情報82を用いて、認証スイッチ6へアクセスする。認証スイッチ6と認証サーバ3との間では、ユーザ端末1から入力された認証情報を用いてユーザ認証が行われる。ユーザ認証の成功により、ユーザ端末1がネットワーク5へログインすることが許可される。
[シーケンス]
図12は、実施の形態5の認証システムにおける、SSO認証、パスワード発行及びユーザ認証、等を含むシーケンスを示す。S51等はステップを示す。前提として、ID管理装置4のID情報42には、ユーザ9aに関するID「IDa」等が設定済みである。IdPサーバ7のSSO認証DB72には、ユーザ9aに関するSSO認証情報X1等が登録済みである。以下、ステップS51〜S61の処理や作業について、例を用いながら順に説明する。
(S51) S51で、例えばユーザ端末1aは、ネットワーク5へログインしてサービスを利用する際、SSO認証のために、認証スイッチ6を通じて、IdPサーバ7へアクセスする。IdPサーバ7は、ユーザ端末1aからのアクセスを受けると、SSO認証ページをユーザ端末1aへ送信する。ユーザ端末1aは、受信したSSO認証ページによるSSO認証画面を表示する。SSO認証画面には、SSO認証情報の入力をユーザに促すメッセージ等が表示される。ユーザ9aは、SSO認証画面で、SSO認証情報を入力する。本例では、SSO認証情報X1が入力されたとする。ユーザ端末1aは、SSO認証要求、及び入力されたSSO認証情報を、IdPサーバ7へ送信する。
(S52) IdPサーバ7のSSO認証部71は、S51のSSO認証要求、及びSSO認証情報を受信すると、S52で、SSO認証DB72を参照してSSO認証を行う。SSO認証部71は、入力されたSSO認証情報と、SSO認証DB72に登録されているSSO認証情報とが一致する場合、SSO認証の結果を成功とし、不一致の場合、失敗とする。本例では、入力されたSSO認証情報X1と、SSO認証DB72に登録されているSSO認証情報X1とが一致するので、SSO認証が成功になる。
(S53) IdPサーバ7のSSO認証部71は、S52のSSO認証が成功の場合、ID管理装置4にアクセスし、当該SSO認証が成功のユーザ端末1aのSSO認証情報X1に関係付けられたIDを取得する。ID管理装置4のID管理部41は、IdPサーバ7からのアクセスに応じて、ID情報42を参照し、要求されているIDを提供する。本例では、SSO認証部71は、SSO認証情報X1に基づいて、ID「IDa」を取得する。
(S54) SSO認証部71は、S52のSSO認証が成功の場合、成功を表すSSO認証応答、及びS53で取得したID「IDa」を含む情報を、ユーザ端末1aへ送信する。また、この際、SSO認証部71は、ユーザ端末1aに、パスワード発行装置2からパスワードを取得すること、及び取得したパスワードを含むユーザ認証用の認証情報を用いて認証スイッチ6へアクセスすること、を含む指示を送信する。
S54の際、IdPサーバ7は、ID管理装置4で管理しているIDである実IDを、ユーザ端末1へ提供している。実IDは、個人特定情報を含むIDである。
(S55) ユーザ端末1aは、S54のSSO認証応答、及びID「IDa」を受信し、IdPサーバ7からの指示に従い、S55で、パスワード発行装置2へアクセスし、パスワード発行要求及びID「IDa」を送信する。
(S56) パスワード発行装置2のパスワード発行部21は、S55のパスワード発行要求及びID「IDa」を受信すると、そのID「IDa」を元に、パスワードを発行する。この処理は、実施の形態1等のパスワード発行処理と同様である。本例では、ID「IDa」を元にパスワード「PWa」が発行されている。
(S57) パスワード発行装置2は、パスワード発行要求に対する応答として、S56で発行したパスワード「PWa」を含む情報を、ユーザ端末1aへ送信する。
(S58) ユーザ端末1aは、S57のパスワード「PWa」を受信する。これにより、ユーザ端末1aは、S54のID「IDa」と、S57のパスワード「PWa」との組合せによる、ユーザ認証用の認証情報A1を得る。S58で、ユーザ端末1aは、S54のIdPサーバ7からの指示に従い、認証情報A1を用いて、認証スイッチ6へアクセスする。ユーザ端末1a、認証スイッチ6、及び認証サーバ3の間では、図2のS4〜S8と同様に、ユーザ認証処理が行われる。
S58の具体的な手順の例は以下である。認証スイッチ6は、ユーザ端末1aからのアクセスを受けると、ユーザ認証ページをユーザ端末1aへ送信する。ユーザ端末1aは、ユーザ認証ページによるユーザ認証画面を表示する。ユーザ9aは、ユーザ認証画面で、ユーザ認証用の認証情報A1を入力する。この際、ユーザ端末1aは、ユーザ認証画面に、認証情報A1を自動的に入力する。ユーザ9aは、ユーザ認証画面で、入力済みの認証情報A1を確認し、実行ボタン押下等の操作のみを行う。ユーザ端末1aは、入力された認証情報A1を、認証スイッチ6へ送信する。認証スイッチ6は、複数の認証サーバ3のうち、例えば認証サーバ3aへアクセスする。認証スイッチ6は、ユーザ認証要求及び入力された認証情報A1を、認証サーバ3aへ送信する。
認証サーバ3aは、ユーザ端末1aから認証スイッチ6を通じてユーザ認証要求及び認証情報を受信すると、実施の形態1等と同様に、ユーザ認証処理を行う。本例では、入力された認証情報A1のパスワード「PWa」から、ユーザID「IDa」の有効性が確認できるので、ユーザ認証が成功になる。認証サーバ3aは、ユーザ認証の成功を表すユーザ認証応答を、認証スイッチ6を通じてユーザ端末1aへ送信する。ユーザ端末1aは、ユーザ認証応答からユーザ認証の成功を認識し、これにより、ネットワーク5へのログイン等が許可される。
(S59) 認証サーバ3aは、S58の一連のユーザ認証処理の際、認証情報を含む情報を、認証ログ32に記録している。なお、認証スイッチ6でも、同様に、認証ログが記録されている。
(S60) ユーザ認証後、ユーザ9aのユーザ端末1aがネットワーク5上のサービスを利用した際に、何らかの問題が発生しているとする。
(S61) 問題発生時、管理者90は、問題に係わるユーザ個人を特定する作業を行う。管理者90は、端末から、認証サーバ3aの認証ログ32を参照し、認証ログ32における問題に係わる認証情報を参照する。本例では、認証情報A1{IDa,PWa}が参照される。管理者90は、そのID「IDa」に含まれている個人Aの個人特定情報から、問題に係わるユーザ9aを特定することができる。
[効果等]
実施の形態5の認証システムによれば、実施の形態1等と同様に、保持及び管理する認証情報の量を少なくすることができ、構成の簡素化や、認証サーバ3等のリソース消費削減を実現できる。特に、実施の形態5では、SSO認証の成功に応じて、ユーザ認証用のID及びパスワードを提供する仕組みである。ユーザは、SSO認証の成功後、このID及びパスワードを用いることにより、ユーザ認証が成功になる。
[第1の変形例]
実施の形態5の第1の変形例として、以下としてもよい。図12のシーケンスで、S52のSSO認証が成功の場合、IdPサーバ7は、S53で、ID管理装置4から、当該ユーザ端末1aに関する実ID「IDa」を取得する。IdPサーバ7は、取得した実ID「IDa」から、仮IDを発行する。仮IDは、個人特定情報を含まない値である。この仮IDを例えば「IDx1」とする。IdPサーバ7は、実ID「IDa」と仮ID「IDx1」との関係付け情報を、表等に記憶して管理する。
S54で、IdPサーバ7は、SSO認証応答、仮ID「IDx1」、及び指示を、ユーザ端末1aへ送信する。S55で、ユーザ端末1aは、指示に従い、パスワード発行要求及び仮ID「IDx1」を、パスワード発行装置2へ送信する。S56で、パスワード発行装置2は、仮ID「IDx1」を元にパスワードを生成する。このパスワードを例えば「PWx1」とする。S57で、パスワード発行装置2は、パスワード「PWx1」をユーザ端末1aへ送信する。これにより、ユーザ端末1aは、仮ID「IDx1」とパスワード「PWx1」との組合せによる認証情報を得る。この認証情報を例えば「Ax1」とする。
S58で、ユーザ端末1aは、指示に従い、認証情報「Ax1」を用いて、認証スイッチ6へアクセスする。ユーザ端末1aは、ユーザ認証要求、及び認証情報「Ax1」を例えば認証サーバ3aへ送信する。認証サーバ3aは、認証情報「Ax1」におけるパスワード「PWx1」から、仮ID「IDx1」の有効性を確認することにより、ユーザ認証を行う。
問題発生時、管理者90は、端末から認証サーバ3aの認証ログ32を参照し、問題に係わる認証情報「Ax1」における仮ID「IDx1」を得る。管理者90は、その仮ID「IDx1」に基づいて、IdPサーバ7で管理している関係付け情報を参照する。IdPサーバ7は、関係付け情報に基づいて、仮ID「IDx1」に関係付けられた実ID「IDa」の情報を提供する。管理者90は、その実ID「IDa」に含まれている個人Aの個人特定情報から、問題に係わるユーザ9aを特定することができる。
[第2の変形例]
実施の形態5の第2の変形例として、以下としてもよい。図12のシーケンスで、IdPサーバ7は、S53で取得したIDに、有効期限を付与し、一時的に有効なIDとして、ユーザ端末1へ提供する。S56で、パスワード発行装置2は、IDに有効期限が付与されている場合、その有効期限を有効性確認情報の1つとして用いて、パスワードを生成する。
[第3の変形例]
実施の形態5の第3の変形例として、以下としてもよい。図12のシーケンスで、IdPサーバ7は、S52のSSO認証の成功により、S53で、ID管理装置4から当該ユーザ端末1aに関するID「IDa」を取得する。IdPサーバ7は、パスワード発行要求、及びID「IDa」を含む情報を、ユーザ端末1aではなく、パスワード発行装置2へ送信する。パスワード発行装置2は、そのパスワード発行要求に応じて、そのID「IDa」を元にパスワード「PWa」を発行し、IdPサーバ7へ送信する。IdPサーバ7は、SSO認証応答、ID「IDa」、パスワード「PWa」、及び指示を含む情報を、ユーザ端末1aへ送信する。ユーザ端末1aは、受信したID「IDa」及びパスワード「PWa」を用いて、ユーザ認証のため、認証スイッチ6へアクセスする。
[他の変形例]
実施の形態5の他の変形例として、以下が挙げられる。ID管理装置4で管理されるIDは、実施の形態2と同様に、個人特定情報を含まない任意値としてもよい。
SSO認証DB72は、IdPサーバ7内部に限らず、IdPサーバ7に接続される他の装置に保持及び管理されていてもよい。その場合、IdPサーバ7は、その装置のSSO認証DB72を参照してSSO認証を行う。また、IdPサーバ7は、SSO認証情報と関係付けて、ユーザ端末1に関するIDを含む情報を保持してもよい。
以上、本発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されず、その要旨を逸脱しない範囲で種々変更可能である。