(57)【特許請求の範囲】
【請求項１】
ネットワークを介して接続される複数のクライアントとＬＤＡＰサーバとにおける認証システムであって、
前記サーバに、複数の証明書の各々と鍵とのペアに鍵ＩＤを付与し、該鍵ＩＤによって前記証明書と前記鍵とを管理する手段と、各々の前記クライアントの識別名と該クライアントが信頼する認証局が発行した証明書に対応する前記鍵ＩＤとを関連づけるマッピング情報を記憶する手段と、前記マッピング情報を参照して、前記クライアントからのＬＤＡＰ結合要求に際して抽出される該クライアントの識別名に対応する前記鍵ＩＤを取得し、該鍵ＩＤに基づいて、前記クライアントに送信する証明書を切り替える手段と、を少なくとも有することを特徴とする認証システム。
【請求項２】
ネットワークを介して接続される複数のクライアントとＬＤＡＰサーバとにおける認証システムであって、
前記サーバに、複数の証明書の各々と鍵とのペアに鍵ＩＤを付与し、該鍵ＩＤによって前記証明書と前記鍵とを管理する手段と、各々の前記クライアントのＩＰアドレスと該クライアントが信頼する認証局が発行した証明書に対応する前記鍵ＩＤとを関連づけるマッピング情報を記憶する手段と、前記マッピング情報を参照して、前記クライアントからのＬＤＡＰ開設要求に際して抽出される該クライアントのＩＰアドレスに対応する前記鍵ＩＤを取得し、該鍵ＩＤに基づいて、前記クライアントに送信する証明書を切り替える手段と、を少なくとも有することを特徴とする認証システム。
【請求項３】
ネットワークを介して接続される複数のクライアントとＬＤＡＰサーバとにおける認証方法であって、
前記サーバにおいて、複数の証明書の各々と鍵とのペアに鍵ＩＤを付与し、該鍵ＩＤによって前記証明書と前記鍵とを管理するステップと、各々の前記クライアントの識別名と該クライアントが信頼する認証局が発行した証明書に対応する前記鍵ＩＤとを関連づけるマッピング情報を作成し、記憶するステップと、前記クライアントからのサーバ証明書の送信要求に対して、前記マッピング情報を参照して、前記クライアントからのＬＤＡＰ結合要求に際して抽出される該クライアントの識別名に対応する前記鍵ＩＤを取得し、該鍵ＩＤに基づいて、前記クライアントに送信する証明書を切り替えるステップと、を少なくとも実行することを特徴とする認証方法。
【請求項４】
ネットワークを介して接続される複数のクライアントとＬＤＡＰサーバとにおける認証方法であって、
前記サーバにおいて、複数の証明書の各々と鍵とのペアに鍵ＩＤを付与し、該鍵ＩＤによって前記証明書と前記鍵とを管理するステップと、各々の前記クライアントのＩＰアドレスと該クライアントが信頼する認証局が発行した証明書に対応する前記鍵ＩＤとを関連づけるマッピング情報を作成し、記憶するステップと、前記クライアントからのサーバ証明書の送信要求に対して、前記マッピング情報を参照して、前記クライアントからのＬＤＡＰ開設要求に際して抽出される該クライアントのＩＰアドレスに対応する前記鍵ＩＤを取得し、該鍵ＩＤに基づいて、前記クライアントに送信する証明書を切り替えるステップと、を少なくとも実行することを特徴とする認証方法。
【請求項５】
コンピュータに、
少なくとも、複数の証明書の各々と鍵とのペアに鍵ＩＤを付与して格納する処理と、クライアントの識別名又はＩＰアドレスと前記鍵ＩＤとのマッピング情報を作成し、記憶する処理と、前記クライアントからのサーバ証明書の送信要求に対して、該クライアントからのＬＤＡＰ結合要求に際して該クライアントの識別名を抽出、又は、前記クライアントからのＬＤＡＰ開設要求に際して該クライアントのＩＰアドレスを抽出する処理と、前記マッピング情報を参照して、前記識別名又は前記ＩＰアドレスに対応する前記鍵ＩＤを取得し、該鍵ＩＤに基づいて、前記クライアントに送信する証明書を選択する処理と、を実行させるための認証用プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、認証システム及び認証方法並びに認証用プログラムに関し、特に、ＬＤＡＰ（Ｌｉｇｈｔｗｅｉｇｈｔ ＤｉｒｅｃｔｏｒｙＡｃｃｅｓｓ Ｐｒｏｔｏｃｏｌ）において、ＳＳＬ（Ｓｅｃｕｒｅ Ｓｏｃｋｅｔｓ Ｌａｙｅｒ）通信を行う場合に、通信相手によって送信するサーバ証明書を切り替えることのできる認証システム及び認証方法並びに認証用プログラムに関する。
【０００２】
【従来の技術】
ＳＳＬ認証では、通信相手に自分の身元を証明するために、証明書を送信する。サーバ認証において、クライアント側では、サーバから送信された証明書によってサーバの身元を確認する際、その証明書が有効であることを確かめるために、有効期限や証明書の発行元が信頼のできる認証局（ＣＡ：Ｃｅｒｔｉｆｉｃａｔｅ Ａｕｔｈｏｒｉｔｙ）であるかの確認を行う。
【０００３】
従来、サーバ証明書としてどの証明書を使用するかということは、サーバのコンフィグレーションファイルなどに証明書ファイルと鍵ファイルのパスを指定するというように、通信相手に依らず同じ証明書が使われていた。
【０００４】
【発明が解決しようとする課題】
しかしながら、上述した従来の認証方法では、以下に示す問題がある。
【０００５】
第１の問題点は、互いに信頼関係のない異なる認証局のみを信頼する異なるクライアントに対して、同時にＳＳＬプロトコルを用いた通信を行うことができないということである。その理由は、通常サーバ側の証明書は１つに限られているためである。
【０００６】
また、第２の問題点は、証明書と鍵が安全に管理されないということである。その理由は、ファイル形式のままでは、容易に書き換えや紛失が発生するためである。
【０００７】
本発明は、上記問題点に鑑みてなされたものであって、その第１の目的は、信頼するＣＡが異なる複数のクライアントと同時にＳＳＬ通信を行うことを可能にする認証システム及び認証方法並びに認証用プログラムを提供することにある。
【０００８】
また、本発明の第２の目的は、データベースを利用して、より安全に証明書と鍵を管理することが可能な認証システム及び認証方法並びに認証用プログラムを提供することにある。
【０００９】
【課題を解決するための手段】
上記目的を達成するため、本発明の認証システムは、ネットワークを介して接続される複数のクライアントとＬＤＡＰサーバとにおける認証システムであって、前記サーバに、複数の証明書の各々と鍵とのペアに鍵ＩＤを付与し、該鍵ＩＤによって前記証明書と前記鍵とを管理する手段と、各々の前記クライアントの識別名と該クライアントが信頼する認証局が発行した証明書に対応する前記鍵ＩＤとを関連づけるマッピング情報を記憶する手段と、前記マッピング情報を参照して、前記クライアントからのＬＤＡＰ結合要求に際して抽出される該クライアントの識別名に対応する前記鍵ＩＤを取得し、該鍵ＩＤに基づいて、前記クライアントに送信する証明書を切り替える手段と、を少なくとも有するものである。
【００１０】
また、本発明の認証システムは、ネットワークを介して接続される複数のクライアントとＬＤＡＰサーバとにおける認証システムであって、前記サーバに、複数の証明書の各々と鍵とのペアに鍵ＩＤを付与し、該鍵ＩＤによって前記証明書と前記鍵とを管理する手段と、各々の前記クライアントのＩＰアドレスと該クライアントが信頼する認証局が発行した証明書に対応する前記鍵ＩＤとを関連づけるマッピング情報を記憶する手段と、前記マッピング情報を参照して、前記クライアントからのＬＤＡＰ開設要求に際して抽出される該クライアントのＩＰアドレスに対応する前記鍵ＩＤを取得し、該鍵ＩＤに基づいて、前記クライアントに送信する証明書を切り替える手段と、を少なくとも有するものである。
【００１３】
本発明の認証方法は、ネットワークを介して接続される複数のクライアントとＬＤＡＰサーバとにおける認証方法であって、前記サーバにおいて、複数の証明書の各々と鍵とのペアに鍵ＩＤを付与し、該鍵ＩＤによって前記証明書と前記鍵とを管理するステップと、各々の前記クライアントの識別名と該クライアントが信頼する認証局が発行した証明書に対応する前記鍵ＩＤとを関連づけるマッピング情報を作成し、記憶するステップと、前記クライアントからのサーバ証明書の送信要求に対して、前記マッピング情報を参照して、前記クライアントからのＬＤＡＰ結合要求に際して抽出される該クライアントの識別名に対応する前記鍵ＩＤを取得し、該鍵ＩＤに基づいて、前記クライアントに送信する証明書を切り替えるステップと、を少なくとも実行するものである。
【００１４】
また、本発明の認証方法は、ネットワークを介して接続される複数のクライアントとＬＤＡＰサーバとにおける認証方法であって、前記サーバにおいて、複数の証明書の各々と鍵とのペアに鍵ＩＤを付与し、該鍵ＩＤによって前記証明書と前記鍵とを管理するステップと、各々の前記クライアントのＩＰアドレスと該クライアントが信頼する認証局が発行した証明書に対応する前記鍵ＩＤとを関連づけるマッピング情報を作成し、記憶するステップと、前記クライアントからのサーバ証明書の送信要求に対して、前記マッピング情報を参照して、前記クライアントからのＬＤＡＰ開設要求に際して抽出される該クライアントのＩＰアドレスに対応する前記鍵ＩＤを取得し、該鍵ＩＤに基づいて、前記クライアントに送信する証明書を切り替えるステップと、を少なくとも実行するものである。
【００１５】
また、本発明のプログラムは、コンピュータに、少なくとも、複数の証明書の各々と鍵とのペアに鍵ＩＤを付与して格納する処理と、クライアントの識別名又はＩＰアドレスと前記鍵ＩＤとのマッピング情報を作成し、記憶する処理と、前記クライアントからのサーバ証明書の送信要求に対して、前記クライアントからのＬＤＡＰ結合要求に際して該クライアントの識別名を抽出、又は、前記クライアントからのＬＤＡＰ開設要求に際して該クライアントのＩＰアドレスを抽出する処理と、前記マッピング情報を参照して、前記識別名又は前記ＩＰアドレスに対応する前記鍵ＩＤを取得し、該鍵ＩＤに基づいて、前記クライアントに送信する証明書を選択する処理と、を実行させるものである。
【００１７】
このように、本発明のＬＤＡＰサーバにおける証明書切り替えシステムは、複数の証明書と鍵のペアを管理する手段と、クライアントの識別名（ＤＮ：Ｄｉｓｔｉｎｇｉｓｈｅｄ Ｎａｍｅ）と証明書のマッピング情報、又は、クライアントのＩＰアドレスと証明書のマッピング情報から利用する証明書を取得する手段とを備え、各クライアントに対応する証明書を選択し送信するよう動作することにより、信頼するＣＡが異なる複数のクライアントと同時にＳＳＬ通信を行うことが可能となる。
【００１８】
【発明の実施の形態】
本発明に係る認証システムは、その好ましい一実施の形態において、複数の証明書の各々と鍵とに鍵ＩＤを付与して管理する証明書格納手段と、クライアントの識別名又はＩＰアドレスと鍵ＩＤとのマッピング情報を記憶するマッピング情報格納部と、デフォルトの鍵ＩＤとマッピングファイルの位置情報を記憶するコンフィグレーション情報格納部と、マッピング情報を参照して、クライアントに送信する証明書を切り替える証明書取得部とを少なくとも有し、クライアントからのＬＤＡＰ結合要求又はＬＤＡＰ開設要求に際して抽出される識別名又はＩＰアドレスを用いることにより、特別な拡張オペレーションを追加することなくクライアントを識別して所望の証明書を送信することができ、また、鍵ＩＤを用いることにより証明書と鍵とを安全に管理することができる。以下に図面を参照して説明する。
【００１９】
［実施の形態１］
まず、本発明の第１の実施形態に係る認証システム及び認証方法並びに認証用プログラムについて、図１乃至図４を参照して説明する。図１は、第１の実施形態に係る認証用証明書切り替えシステムの構成を示すブロック図である。また、図２は、本認証用証明書切り替えシステムのサーバとクライアント間の通信の順序を示す流れ図であり、図３及び図４は、認証用証明書切り替えシステムの動作を示す流れ図である。
【００２０】
図１を参照すると、本発明の第１の実施形態に係る認証用証明書切り替えシステムは、プログラム制御により動作するＬＤＡＰサーバ１００と、証明書格納手段１１０と、コンフィグレーション情報格納部１２０と、マッピング情報格納部１３０と証明書格納部１４０とから構成されている。
【００２１】
また、ＬＤＡＰサーバ１００は、通信部１０１と、制御部１０２と、オペレーション処理部１０３と、ディレクトリアクセス部１０４と、オペレーションキュー管理部１０５と、証明書取得部１０６とを含み構成されている。
【００２２】
これらの手段はそれぞれ概略つぎのように動作する。通信部１０１は、クライアントとの通信を行う。制御部１０２は、クライアント数などの制限に関してチェックを行う。各オペレーション処理部１０３は、クライアントからのオペレーションに従って、結合、結合解放、検索、追加、削除、変更などの処理を行う。ディレクトリアクセス部１０４は、検索や追加、削除などのオペレーションに従って、実際にディレクトリに対する処理を行う。オペレーションキュー管理部１０５は、各クライアントからのオペレーション情報を保持する。結合操作時にクライアントから送信されるＬＤＡＰクライアントの識別名（ＤＮ）の情報もここに保持される。証明書取得部１０６は、オペレーションキュー管理部１０５からクライアントのＤＮの情報を取得し、コンフィグレーション情報格納部１２０およびマッピング情報格納部１３０を参照して、クライアントに対応する証明書を、証明書格納部１４０から取得する。
【００２３】
証明書格納手段１１０は、証明書と鍵のペアを識別するための名前である鍵ＩＤを付けて登録する。コンフィグレーション情報格納部１２０には、ＳＳＬ利用時に使用するデフォルトの証明書の情報や証明書切り替え機能の利用の有無、およびマッピングファイル位置の情報などを保持する。マッピング情報格納部１３０ は、ＤＮと証明書の鍵ＩＤとのマッピング情報を保持する。証明書格納部１４０は、証明書格納手段１１０を使って登録された証明書と鍵を、鍵ＩＤによって管理する。
【００２４】
次に、図１及び図２のフローチャートを参照して本実施の形態の全体の動作について詳細に説明する。
【００２５】
まず、最初に、証明書の登録と、マッピング情報格納部１３０およびコンフィグレーション情報格納部１２０の設定を行う。証明書の登録には、証明書格納手段１１０を利用する。サーバ証明書と鍵のペアを指定し、鍵ＩＤを付けて登録できる。マッピング情報格納部１３０の設定として、ＤＮと鍵ＩＤのペアを記述したファイルを用意する。コンフィグレーション情報格納部１２０の設定としては、デフォルトの鍵ＩＤとマッピングファイルの位置を指定する。
【００２６】
この状態での動作を説明する。まず、クライアントからＬＤＡＰ開局要求が出され（図２のステップＡ１）、サーバ側でＬＤＡＰ開局のための処理を行いクライアントに応答を返す（ステップＡ２）。次に、クライアントからＬＤＡＰ結合要求（バインドオペレーション）が出され（ステップＡ３）、サーバ側で結合のための認証処理を行う。このとき、図１のオペレーションキュー管理部１０５に、バインド時のＤＮの情報が保持される（ステップＡ４）。結合処理の後、クライアントに応答を返す（ステップＡ５）。さらに、結合の成功に引き続いて、クライアントからＳＴＡＲＴ ＴＬＳオペレーションを送ることにより、ＳＳＬの開始を要求する（ステップＡ６）。サーバ側はこの要求を受けて、証明書取得部（図１の１０６）で、送信すべき証明書を選択する（ステップＡ７）。
【００２７】
そして、取得した証明書をサーバ証明書として、クライアントに送信する（ステップＡ８）。クライアントでは、送られた証明書を使って、サーバ認証を行う（ステップＡ９）。すなわち、サーバ証明書の有効性と証明書によるサーバの身元の確認を行う。証明書の有効性については、有効期限の確認とともに、サーバ証明書の発行元のルートＣＡがクライアントの信頼するＣＡリストに含まれるか照合し、証明書が信頼できるものかということを確認する。
【００２８】
サーバ認証の成功に続いて、サーバからクライアント証明書の要求があれば、クライアント証明書を送信し（ステップＡ１０）、クライアント認証を行い応答を返す（ステップＡ１１）。認証に成功すれば、ＳＳＬプロトコルを使った通信を開始する（ステップＡ１２）。
【００２９】
サーバ証明書の選択時の処理（ステップＡ７）の流れを、図３を参照して詳細に説明する。
【００３０】
まず、コンフィグレーション情報格納部（図１の１２０）を参照し、マッピングファイルの指定があるかどうかを確認する（図３のステップＢ１）。指定がない場合は、デフォルトの鍵ＩＤを取得する処理に移る（ステップＢ４）。次に、オペレーションキュー管理部（図１の１０５）を参照して、バインド時のＤＮの情報を取得する（ステップＢ２）。この時点でバインドオペレーションが行われていなかった場合は、デフォルトの鍵ＩＤを取得する処理に移る（ステップＢ４）。
【００３１】
バインド時のＤＮとマッピングファイルの取得に成功したら、マッピングファイルを参照しＤＮに対応する証明書ＩＤを検索する（ステップＢ３）。このとき、ＤＮに対応する鍵ＩＤが見つからなければ、デフォルトの鍵ＩＤを取得する処理に移る（ステップＢ４）。デフォルトの鍵ＩＤは、コンフィグレーション情報格納部（図１の１２０）を参照して取得する（ステップＢ４）。取得できなかった場合は、証明書取得に失敗する。このようにして得られた鍵ＩＤに対して、対応する証明書と鍵を証明書格納部（図１の１４０）から検索し、証明書を取得する（ステップＢ５）。
【００３２】
このように、本実施形態の認証用証明書切り替えシステム及び切り替え方法によれば、ＳＴＡＲＴ ＴＬＳオペレーションをバインドオペレーションの後に行うことが可能である性質を利用して、バインド時の情報を利用するように構成されているため、特別な拡張オペレーションを追加することなく、クライアントを識別し、証明書を切り替えることができる。
【００３３】
次に、具体例を用いて本実施の形態の動作について説明する。まず、証明書格納ＤＢに、証明書と鍵を登録する。例では、”ｓｅｒｖｅｒ１”という鍵ＩＤを付けた証明書と、”ｓｅｒｖｅｒ２”という鍵ＩＤを付けた証明書が格納されている状態を示している。証明書”ｓｅｒｖｅｒ１”は、認証局ＣＡ１から発行されたものであり、証明書”ｓｅｒｖｅｒ２”は、認証局ＣＡ２から発行されたものである。
【００３４】
次に、マッピングファイルに、ＤＮと鍵ＩＤのペアを指定する。例では、”ｏ＝ＣｏｍｐａｎｙＢ，ｃ＝ＪＰ ｓｅｒｖｅｒ２”と指定されている様子を示している。これは、ＤＮが”ｏ＝ＣｏｍｐａｎｙＢ，ｃ＝ＪＰ”の下位であれば”ｓｅｒｖｅｒ２”の証明書を使うという意味である。コンフィグレーション情報に、デフォルトの鍵ＩＤとマッピングファイル位置を指定する。例では、デフォルトの鍵ＩＤが”ｓｅｒｖｅｒ１”であり、マッピングファイル位置が”/etc/ldapd/dn_keyid.map”であることを示している。
【００３５】
クライアントからＳＳＬ開始要求があった場合に、通常はコンフィグレーションに指定されているデフォルトの証明書”ｓｅｒｖｅｒ１” が使用される。例えばクライアント１に対しては、証明書”ｓｅｒｖｅｒ１”が送信される。クライアント１では、信頼するＣＡがＣＡ１であるため、その他に問題がなければサーバ認証に成功する。
【００３６】
ところが、ＣＡ１を信頼していないクライアント２に対しては、証明書”ｓｅｒｖｅｒ１”を使った場合に、サーバ認証に失敗する。このとき、ＳＳＬ開始要求の前に、”ｃｎ＝ｕｓｅｒ２，ｏ＝ＣｏｍｐａｎｙＢ，ｃ＝ＪＰ”というＤＮでバインドオペレーションを行っておくと、マッピングファイルを照合して、送信する証明書が”ｓｅｒｖｅｒ２”に切り替えられる。これによって、クライアント２との通信においてもサーバ認証が成功し、ＳＳＬ通信が可能になる。
【００３７】
［実施の形態２］
次に、本発明の第２の実施形態に係る認証システム及び認証方法並びに認証用プログラムについて、図５乃至図８を参照して説明する。図５は、第２の実施形態に係る認証用証明書切り替えシステムの構成を示すブロック図である。また、図６は、本認証用証明書切り替えシステムのサーバとクライアント間の通信の順序を示す流れ図であり、図７及び図８は、認証用証明書切り替えシステムの動作を示す流れ図である。なお、本実施の形態は、クライアントを識別する手段としてバインド時のＤＮではなく、ＩＰアドレスを使用していることを特徴とするものである。
【００３８】
図５を参照すると、本発明の第２の実施形態に係る認証用証明書切り替えシステムは、図１と同様に、プログラム制御により動作するＬＤＡＰサーバ２００と、証明書格納手段２１０と、コンフィグレーション情報格納部２２０と、マッピング情報格納部２３０と証明書格納部２４０とから構成されている。
【００３９】
また、ＬＤＡＰサーバ２００は、通信部２０１と、制御部２０２と、オペレーション処理部２０３と、ディレクトリアクセス部２０４と、オペレーションキュー管理部２０５と、証明書取得部２０６とを含み構成されている。
【００４０】
これらの手段はそれぞれ概略つぎのように動作する。通信部２０１、制御部２０２、各オペレーション処理部２０３、ディレクトリアクセス部２０４の動作は、図１の１０１、１０２、１０３、１０４の動作と同一である。オペレーションキュー管理部２０５は、各クライアントからのオペレーション情報を保持する。クライアントとの接続時の情報もここに保持される。証明書取得部２０６は、オペレーションキュー管理部２０５からクライアントのＩＰアドレスの情報を取得し、コンフィグレーション情報格納部２２０およびマッピング情報格納部２３０を参照して、クライアントに対応する証明書を、証明書格納部２４０から取得する。
【００４１】
また、証明書格納手段２１０とコンフィグレーション情報格納部２２０は、図１の１１０、１２０と同一である。マッピング情報格納部２３０は、ＩＰアドレスと証明書の鍵ＩＤとのマッピング情報を保持する。証明書格納部２４０は、図１の１４０と同一である。
【００４２】
次に、図５及び図６のフローチャートを参照して本実施形態の全体の動作について詳細に説明する。
【００４３】
まず、最初に、証明書の登録と、マッピング情報格納部２３０およびコンフィグレーション情報格納部２２０の設定を行う。証明書の登録とコンフィグレーション情報の設定は、図１の場合と同様である。マッピング情報格納部２３０の設定として、ＩＰアドレスと鍵ＩＤのペアを記述したファイルを用意する。
【００４４】
この状態での動作を説明する。まず、クライアントからＬＤＡＰ開局要求が出される（図６のステップＣ１）。サーバ側では、ＬＤＡＰ開局のための処理を行う。このとき、接続時の情報としてクライアントのＩＰアドレスなどの情報を保持する（ステップＣ２）。そして、クライアントに応答を返す（ステップＣ３）。接続後、クライアントからＳＴＡＲＴ ＴＬＳオペレーションを送ることにより、ＳＳＬの開始を要求する（ステップＣ４）。サーバ側は、要求を受けて、証明書取得部（図５の２０６）で、送信すべき証明書を選択する（ステップＣ５）。
【００４５】
そして、取得した証明書をサーバ証明書として、クライアントに送信する（ステップＣ６）。クライアントでは、送られた証明書を使ってサーバ認証を行う（ステップＣ７）。すなわち、サーバ証明書の有効性と証明書によるサーバの身元の確認を行う。証明書の有効性については、有効期限の確認とともに、サーバ証明書の発行元のルートＣＡがクライアントの信頼するＣＡリストに含まれるか照合し、証明書が信頼できるものかということを確認する。
【００４６】
サーバ認証の成功に続いて、サーバからクライアント証明書の要求があれば、クライアント証明書を送信し（ステップＣ８）、クライアント認証を行い応答を返す（ステップＣ９）。認証に成功すれば、ＳＳＬプロトコルを使った通信を開始する（ステップＣ１０）。
【００４７】
サーバ証明書の選択時（ステップＣ５）の処理の流れを、図７を参照して詳細に説明する。
【００４８】
まず、コンフィグレーション情報格納部（図５の２２０）を参照し、マッピングファイルの指定があるかどうかを確認する（図７のステップＤ１）。指定がない場合は、デフォルトの鍵ＩＤを取得する処理に移る（ステップＤ４）。次に、オペレーションキュー管理部（図５の２０５）を参照して、接続しているクライアントのＩＰアドレスを取得する（ステップＤ２）。
【００４９】
ＩＰアドレスとマッピングファイルの取得に成功したら、マッピングファイルを参照し、ＩＰアドレスに対応する証明書ＩＤを検索する（ステップＤ３）。このとき、ＩＰアドレスに対応する鍵ＩＤが見つからなければ、デフォルトの鍵ＩＤを取得する処理に移る（ステップＤ４）。デフォルトの鍵ＩＤは、コンフィグレーション情報格納部（図５の２２０）を参照して取得する（ステップＤ４）。取得できなかった場合は、証明書取得に失敗する。このようにして得られた鍵ＩＤに対して、対応する証明書と鍵を、証明書格納部（図５の２４０）から検索し、証明書を取得する（ステップＤ５）。
【００５０】
このように、本実施の形態に係る認証用証明書切り替えシステムによれば、クライアントの識別にＩＰアドレスを使用しているため、ＬＤＡＰ開局直後のＳＳＬ要求にも対応することができる。
【００５１】
次に、具体例を用いて本実施の形態の動作を説明する。まず、証明書格納ＤＢに、証明書と鍵を登録する。例では、”ｓｅｒｖｅｒ１”という鍵ＩＤを付けた証明書と、”ｓｅｒｖｅｒ２”という鍵ＩＤを付けた証明書が格納されている状態を示している。証明書”ｓｅｒｖｅｒ１”は、認証局ＣＡ１から発行されたものであり、証明書”ｓｅｒｖｅｒ２”は、認証局ＣＡ２から発行されたものである。マッピングファイルに、ＩＰアドレスと鍵ＩＤのペアを指定する。
【００５２】
例では、”２００．２０．２０．２０ ｓｅｒｖｅｒ２”と指定されている様子を示している。これは、ＩＰアドレスが”２００．２０．２０．２０”であれば”ｓｅｒｖｅｒ２”の証明書を使うという意味である。コンフィグレーション情報に、デフォルトの鍵ＩＤとマッピングファイル位置を指定する。また、例では、デフォルトの鍵ＩＤが”ｓｅｒｖｅｒ１”であり、マッピングファイル位置が”/etc/ldapd/dn_keyid.map”であることを示している。
【００５３】
クライアントからＳＳＬ開始要求があった場合に、通常はコンフィグレーションに指定されているデフォルトの証明書”ｓｅｒｖｅｒ１”が使用される。例えばクライアント１に対しては、証明書”ｓｅｒｖｅｒ１”が送信される。クライアント１では、信頼するＣＡがＣＡ１であるため、その他に問題がなければサーバ認証に成功する。
【００５４】
ところが、ＣＡ１を信頼していないクライアント２に対しては、証明書”ｓｅｒｖｅｒ１”を使った場合に、サーバ認証に失敗する。そこで、マッピングファイルを指定しておけば、送信する証明書が”ｓｅｒｖｅｒ２”に切り替えられ、クライアント２との通信においてもサーバ認証が成功し、ＳＳＬ通信が可能になる。
【００５５】
【発明の効果】
以上説明したように、本発明の認証用証明書切り替えシステム及び切り替え方法によれば、下記記載の効果を奏する。
【００５６】
本発明の第１の効果は、互いに信頼関係のない異なるＣＡのみを信頼する複数のクライアントに対して、同時にＳＳＬ認証および通信を行うことができるということである。その理由は、クライアント毎にサーバの証明書を切り替えることができるためである。
【００５７】
また、本発明の第２の効果は、証明書と鍵をより安全に管理できるということである。その理由は、データベースに格納し管理を行っており、ファイル形式のまま証明書と鍵を保持する必要がなくなるためである。
【図面の簡単な説明】
【図１】本発明の第１の実施形態に係る認証用証明書切り替えシステムの構成を示すブロック図である。
【図２】本発明の第１の実施形態に係る認証用証明書切り替えシステムのサーバとクライアント間の通信の順序を示す流れ図である。
【図３】本発明の第１の実施形態に係る認証用証明書切り替えシステムの動作を示す流れ図である。
【図４】本発明の第１の実施形態に係る認証用証明書切り替えシステムの動作の具体例を示す図である。
【図５】本発明の第２の実施形態に係る認証用証明書切り替えシステムの構成を示すブロック図である。
【図６】本発明の第２の実施形態に係る認証用証明書切り替えシステムのサーバとクライアント間の通信の順序を示す流れ図である。
【図７】本発明の第２の実施形態に係る認証用証明書切り替えシステムの動作を示す流れ図である。
【図８】本発明の第２の実施形態に係る認証用証明書切り替えシステムの動作の具体例を示す図である。
【符号の説明】
１００  ＬＤＡＰサーバ
１０１  通信部
１０２  制御部
１０３  各オペレーション処理部
１０４  ディレクトリアクセス部
１０５  オペレーションキュー管理部
１０６  証明書取得部
１１０  証明書格納手段
１２０  コンフィグレーション情報格納部
１３０  マッピング情報格納部
１４０  証明書格納部
２００  ＬＤＡＰサーバ
２０１  通信部
２０２  制御部
２０３  各オペレーション処理部
２０４  ディレクトリアクセス部
２０５  オペレーションキュー管理部
２０６  証明書取得部
２１０  証明書格納手段
２２０  コンフィグレーション情報格納部
２３０  マッピング情報格納部
２４０  証明書格納部
【図１】
0003724564.tif 000002
【図２】
0003724564.tif 000003
【図３】
0003724564.tif 000004
【図４】
0003724564.tif 000005
【図５】
0003724564.tif 000006
【図６】
0003724564.tif 000007
【図７】
0003724564.tif 000008
【図８】
0003724564.tif 000009