(57)【要約】【目的】クライアント認証を比較的簡単に行う。【構成】クライアント端末装置１から送信された認証メッセージにクライアント証明書が含まれているかどうかの第１の判定処理が行われる。クライアント証明書が含まれていると，クライアント端末装置に対応するユーザＩＤ，パスワードがユーザ・データベース３に格納されているかどうかの第２の判定処理が行われる。ユーザＩＤ，パスワードがユーザ・データベース３に格納されていると，クライアント認証が行われたものとされる。ユーザＩＤ，パスワードがウェブ・サーバ４に送信され，正当なユーザＩＤ，パスワードかどうかが確認される。正当なものであれば，アクセス許可レスポンスがクライアント端末装置１に送信される。その後，ユーザＩＤおよびパスワードを用いたパスワード認証が行われることで，クライアント認証とパスワード認証との２要素の認証処理が実現できる。【選択図】図１
2009098761.tif 000002
【特許請求の範囲】
【請求項１】
クライアント端末装置から送信されるクライアント認証メッセージを受信するクライアント認証メッセージ受信手段，
上記クライアント認証メッセージ受信手段において受信したクライアント認証メッセージにクライアント証明書が含まれているかどうかを判定する第１の判定手段，
上記第１の判定手段によってクライアント認証メッセージにクライアント証明書が含まれていると判定されたことに応じて，クライアント証明書に対応してユーザＩＤおよびパスワードが記憶されているユーザ・データベースに上記クライアント認証メッセージ受信手段において受信したクライアント認証メッセージに含まれているクライアント証明書に対応したユーザＩＤおよびパスワードが含まれているかどうかを判定する第２の判定手段，
上記第２の判定手段によりユーザＩＤおよびパスワードが含まれていると判定されたことに応じて，上記ユーザ・データベースから，受信したクライアント認証メッセージに含まれているクライアント証明書に対応したユーザＩＤおよびパスワードを読み取るユーザＩＤ／パスワード読み取り手段，
上記クライアント認証メッセージにつづいて上記クライアント端末装置から送信されるhttpリクエストを受信するhttpリクエスト受信手段，
上記httpリクエスト受信手段によって受信したhttpリクエストに，上記ユーザＩＤ／パスワード読み取り手段によって読み取られたユーザＩＤおよびパスワードが加えられた，そのようなhttpリクエストをウェブ・サーバに送信するhttpリクエスト送信手段，ならびに
上記httpリクエスト送信手段によって，httpリクエストがウェブ・サーバに送信されたことに応じて上記ウェブ・サーバから送信されるアクセス許可レスポンスを上記クライアント端末装置に送信するレスポンス送信手段，
を備えた認証サーバ。
【請求項２】
クライアント認証メッセージ受信手段が，クライアント端末装置から送信されるクライアント認証メッセージを受信し，
第１の判定手段が，上記クライアント認証メッセージ受信手段において受信したクライアント認証メッセージにクライアント証明書が含まれているかどうかを判定し，
第２の判定手段が，上記第１の判定手段によってクライアント認証メッセージにクライアント証明書が含まれていると判定されたことに応じて，クライアント証明書に対応してユーザＩＤおよびパスワードが記憶されているユーザ・データベースに上記クライアント認証メッセージ受信手段において受信したクライアント認証メッセージに含まれているクライアント証明書に対応したユーザＩＤおよびパスワードが含まれているかどうかを判定し，
ユーザＩＤ／パスワード読み取り手段が，上記第２の判定手段によりユーザＩＤおよびパスワードが含まれていると判定されたことに応じて，上記ユーザ・データベースから，受信したクライアント認証メッセージに含まれているクライアント証明書に対応したユーザＩＤおよびパスワードを読み取り，
httpリクエスト受信手段が，上記クライアント認証メッセージにつづいて上記クライアント端末装置から送信されるhttpリクエストを受信し，
httpリクエスト送信手段が，上記httpリクエスト受信手段によって受信したhttpリクエストに，上記ユーザＩＤ／パスワード読み取り手段によって読み取られたユーザＩＤおよびパスワードが加えられた，そのようなhttpリクエストをウェブ・サーバに送信し，
レスポンス送信手段が，上記httpリクエスト送信手段によって，httpリクエストがウェブ・サーバに送信されたことに応じて上記ウェブ・サーバから送信されるアクセス許可レスポンスを上記クライアント端末装置に送信する，
認証サーバの動作制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は，認証サーバおよびその動作制御方法に関する。
【背景技術】
【０００２】
携帯電話などのようなクライアント端末装置がウェブ・サーバにアクセスする場合に,正当なクライアント端末装置のユーザにのみ，アクセスを許可することがある。セキュリティを向上させるためには，アクセス権限のあるユーザのみが知っているパスワードとアクセス権限のあるユーザが所有しているクライアント端末装置であることを示す要素との２つの要素を用いて認証することが必要であると一般的に言われている。
【０００３】
ＩＰ（インターネット・プロトコル）アドレスは，携帯電話の場合は，携帯電話に固有のものではないし，パーソナル・コンピュータにおいても動的なＩＰアドレスの場合には，パーソナル・コンピュータに固有のものではない。また，携帯電話に付与されている端末識別番号は，比較的簡単に偽装することができる。このために，アクセス権限のあるユーザが所有しているクライアント端末装置であることを示す要素を用いた認証は比較的困難である。
【０００４】
ユーザ名とパスワードとを集中サーバにあらかじめ記憶しておき，ＳＳＬ（Secure Sockets Layer）において用いられるクライアント証明書を用いるものがあるが（特許文献１），単にユーザＩＤとパスワードとを忘れないようにするためのものである。このためにパスワードを用いた１要素の認証に過ぎない。
【特許文献１】特開2002-157226号公報
【発明の開示】
【０００５】
この発明は，比較的簡単に２要素の認証を行うことを目的とする。
【０００６】
この発明による認証サーバは，クライアント端末装置から送信されるクライアント認証メッセージを受信するクライアント認証メッセージ受信手段，上記クライアント認証メッセージ受信手段において受信したクライアント認証メッセージにクライアント証明書が含まれているかどうかを判定する第１の判定手段，上記第１の判定手段によってクライアント認証メッセージにクライアント証明書が含まれていると判定されたことに応じて，クライアント証明書に対応してユーザＩＤおよびパスワードが記憶されているユーザ・データベースに上記クライアント認証メッセージ受信手段において受信したクライアント認証メッセージに含まれているクライアント証明書に対応したユーザＩＤおよびパスワードが含まれているかどうかを判定する第２の判定手段，上記第２の判定手段によりユーザＩＤおよびパスワードが含まれていると判定されたことに応じて，上記ユーザ・データベースから，受信したクライアント認証メッセージに含まれているクライアント証明書に対応したユーザＩＤおよびパスワードを読み取るユーザＩＤ／パスワード読み取り手段，上記クライアント認証メッセージにつづいて上記クライアント端末装置から送信されるhttpリクエストを受信するhttpリクエスト受信手段，上記httpリクエスト受信手段によって受信したhttpリクエストに，上記ユーザＩＤ／パスワード読み取り手段によって読み取られたユーザＩＤおよびパスワードが加えられた，そのようなhttpリクエストをウェブ・サーバに送信するhttpリクエスト送信手段，ならびに上記httpリクエスト送信手段によって，httpリクエストがウェブ・サーバに送信されたことに応じて上記ウェブ・サーバから送信されるアクセス許可レスポンスを上記クライアント端末装置に送信するレスポンス送信手段を備えていることを特徴とする。
【０００７】
この発明は，上記認証サーバに適した動作制御方法も提供している。すなわち，この方法は，クライアント認証メッセージ受信手段が，クライアント端末装置から送信されるクライアント認証メッセージを受信し，第１の判定手段が，上記クライアント認証メッセージ受信手段において受信したクライアント認証メッセージにクライアント証明書が含まれているかどうかを判定し，第２の判定手段が，上記第１の判定手段によってクライアント認証メッセージにクライアント証明書が含まれていると判定されたことに応じて，クライアント証明書に対応してユーザＩＤおよびパスワードが記憶されているユーザ・データベースに上記クライアント認証メッセージ受信手段において受信したクライアント認証メッセージに含まれているクライアント証明書に対応したユーザＩＤおよびパスワードが含まれているかどうかを判定し，ユーザＩＤ／パスワード読み取り手段が，上記第２の判定手段によりユーザＩＤおよびパスワードが含まれていると判定されたことに応じて，上記ユーザ・データベースから，受信したクライアント認証メッセージに含まれているクライアント証明書に対応したユーザＩＤおよびパスワードを読み取り，httpリクエスト受信手段が，上記クライアント認証メッセージにつづいて上記クライアント端末装置から送信されるhttpリクエストを受信し，httpリクエスト送信手段が，上記httpリクエスト受信手段によって受信したhttpリクエストに，上記ユーザＩＤ／パスワード読み取り手段によって読み取られたユーザＩＤおよびパスワードが加えられた，そのようなhttpリクエストをウェブ・サーバに送信し，レスポンス送信手段が，上記httpリクエスト送信手段によって，httpリクエストがウェブ・サーバに送信されたことに応じて上記ウェブ・サーバから送信されるアクセス許可レスポンスを上記クライアント端末装置に送信するものである。
【０００８】
この発明によると，クライアント端末装置から送信されるクライアント認証メッセージが認証サーバにおいて受信される。認証サーバにおいてクライアント認証メッセージが受信されると，その受信したクライアント認証メッセージにクライアント証明書が含まれているかどうかが判定される。クライアント証明書が含まれていると判定されると，クライアント証明書に対応したユーザＩＤおよびパスワードがユーザ・データベースに含まれているかどうかが判定される。クライアント証明書に対応したユーザＩＤおよびパスワードがユーザ・データベースに含まれていると判定されると，クライアント認証が行われたものと判定される。ウェブ・サーバがクライアント認証に対応していなくともクライアント認証を実現できる。
【０００９】
クライアント認証メッセージにつづいて，クライアント端末装置から認証サーバにhttpリクエストが送信される。クライアント端末装置から送信されたhttpリクエストが認証サーバにおいて受信されると，その受信したhttpリクエストにユーザ・データベースから読み取られたユーザＩＤおよびパスワードが加えられる。ユーザＩＤおよびパスワードが加えられたhttpリクエストが認証サーバからウェブ・サーバに送信される。
【００１０】
ウェブ・サーバにおいて，ユーザＩＤおよびパスワードが確認されると，ウェブ・サーバから認証サーバにアクセス許可レスポンスが送信される。ウェブ・サーバから送信されたアクセス許可レスポンスが認証サーバにおいて受信されると，その受信されたアクセス許可レスポンスが認証サーバからクライアント端末装置に送信される。
【００１１】
このようにして，クライアント認証をパスワード認証に変換できる。ウェブ・サーバにアクセスしようとするクライアント端末装置が正当なユーザの所有物であるかどうかのクライアント認証を，ウェブ・サーバを構築し直すことなく実質的に行うことができ，その後に正当なユーザが知っているパスワード認証を行うことにより２つの認証を行うことができる。
【実施例】
【００１２】
図１は，この発明の実施例を示すもので，認証システムの概要を示している。
【００１３】
この実施例による認証システムには，インターネットを介して互いに通信可能なクライアント端末装置１と認証サーバ２とが含まれている。クライアント端末装置１は，たとえば，携帯電話，パーソナル・コンピュータ１である。クライアント端末装置1には，認証局によって認証されたクライアント証明書があらかじめ格納されている。
【００１４】
クライアント端末装置１が携帯電話であれば，インターネットと接続するためのブラウザが携帯電話にインストールされており，通信装置，テン・キーパッド，メモリ，表示装置，マイクロフォン，スピーカなどが設けられている。クライアント端末装置１がパーソナル・コンピュータであれば，ＣＰＵ，通信装置，メモリ，ハードディスク，表示装置，キーボードなどが設けられている。
【００１５】
認証サーバ２は，ウェブ・サーバ４と互いに通信可能である。この認証サーバ２には，ユーザ・データベース３が接続されている。認証サーバ２およびウェブ・サーバ４のいずれもＣＰＵ，通信装置，メモリ，ハードディスク，表示装置，キーボードなどが設けられている。
【００１６】
図２は，ユーザ・データベース３に格納されているデータの内容を示している。
【００１７】
ユーザ・データベース３には，クライアント端末装置１のユーザが，あらかじめ認証局において認証されたクライアント証明書が格納されている。このクライアント証明書に対応して，クライアント端末装置１のユーザに付与されているユーザＩＤおよびパスワードが格納されている。
【００１８】
図１に戻って，上述のように，クライアント端末装置１にも認証局において認証されたクライアント証明書が格納されている。クライアント端末装置１から認証サーバ２に，認証メッセージが送信される。すると，認証サーバ２において，認証メッセージに格納されているクライアント証明書が抽出される。抽出されたクライアント証明書と同じクライアント証明書がユーザ・データベース３に格納されているかどうかの判定が行われる。抽出されたクライアント証明書と同じクライアント証明書がユーザ・データベース３に格納されていると判定されると，認証サーバ２からクライアント端末装置１に確認メッセージが送信される。また，抽出されたクライアント証明書と同じクライアント証明書に対応して格納されているユーザＩＤおよびパスワードがユーザ・データベース３に格納されているかどうかが判定される。格納されていると，そのユーザＩＤおよびパスワードがユーザ・データベース３から読み取られる。
【００１９】
認証サーバ２から送信された確認メッセージがクライアント端末装置１において受信されると，暗号化されたhttpリクエストがクライアント端末装置1から認証サーバ２に送信される。暗号化されたhttpリクエストがクライアント端末装置1において受信されると，復号される。復号されたhttpリクエストに，ユーザ・データベース３から読み取られたユーザＩＤおよびパスワードが付加される。ユーザＩＤおよびパスワードが付加されたhttpリクエストが認証サーバ２からウェブ・サーバ４に送信される。ウェブ・サーバ４において，ユーザＩＤおよびパスワードが確認される。確認の結果，正当なユーザＩＤおよびパスワードと判定されると，アクセス許可通知がウェブ・サーバ４から認証サーバ２に送信される。アクセス許可通知が，認証サーバ２からクライアント端末装置１に送信されることにより，クライアント認証による第１の認証が終了する。その後は，ユーザＩＤおよびパスワードを用いたパスワード認証である第２の認証が行われる。クライアント認証とパスワード認証との２要素認証を比較的簡単にできるようになる。より詳しくは，以下の説明によって明らかとなろう。
【００２０】
図３はクライアント端末装置１の処理手順を示すフローチャート，図４および図５は認証サーバ２の処理手順を示すフローチャート，図６はウェブ・サーバ４の処理手順を示すフローチャートである。
【００２１】
上述したようにクライアント端末装置１から認証サーバ２には暗号化されたhttpリクエストが送信される。このために，クライアント端末装置１と認証サーバ２との間で，暗号化アルゴリズムなどの交換を行うためにHelloメッセージの送受信が行われる。具体的には，クライアント端末装置１から認証サーバ２に，Client Helloメッセージが送信される（図３ステップ11）。Client Helloメッセージには，使用される暗号化方式，データ圧縮方式の候補のリストが格納される。
【００２２】
クライアント端末装置１から送信されたClient Helloメッセージが認証サーバ２において受信されると，認証サーバ２からクライアント端末装置１にServer Helloメッセージが送信される（図４ステップ21）。Server Helloメッセージは，Client Helloメッセージに対する認証サーバ２の応答メッセージであり，Client Helloメッセージで示された暗号化方式とデータ圧縮方式のリストの中から使用する暗号化方式，データ圧縮方式を指定するものである。
【００２３】
つづいて，認証サーバ２からクライアント端末装置１に，Server Certificateメッセージが送信される（図４ステップ22）。このServer Certificateメッセージにより，認証サーバ３の証明書がクライアント端末装置１に送信される。
【００２４】
また，認証サーバ２からクライアント端末装置１に，Certificate Requestメッセージが送信される（図４ステップ23）。Certificate Requestメッセージは，クライアント認証を行う場合に，認証サーバ２からクライアント端末装置１にクライアント証明書を要求するメッセージであり，認証サーバ２が信頼する認証局のリストが付加されている。
【００２５】
その後，認証サーバ２からクライアント端末装置１にSever Hello Done メッセージが送信される（図４ステップ24）。Sever Hello Done メッセージは，認証サーバ２からクライアント端末装置１に送信すべきメッセージが送信されたことをクライアント端末装置１に知らせるものである。
【００２６】
すると，クライアント端末装置１から認証サーバ２にClient Certificateメッセージ（認証メッセージ）が送信される（図３ステップ12）。Client Certificateメッセージは，クライアント端末装置１の証明書を認証サーバ２に送信するものである。
【００２７】
つづいて，クライアント端末装置１から認証サーバ２にClient Key Exchangeメッセージが送信される（図３ステップ13）。Client Key Exchangeメッセージは，暗号化において使用されるプリマスタ・シークレット・データを認証サーバ２に送信するものである。たとえば，プリマスタ・シークレット・データは認証サーバ２の公開鍵で暗号化される。
【００２８】
Finishedメッセージがクライアント端末装置１から認証サーバ２に送信される（図３ステップ14）。クライアント端末装置１から送信されるFinishedメッセージは，認証サーバ２の認証が行われたことを示すものである。
【００２９】
その後，クライアント端末装置１から認証サーバ２にChange Cipher Specメッセージが送信される（図３ステップ15）。Change Cipher Specメッセージは，暗号化による送信を開始することを知らせるものである。
【００３０】
図４を参照して，クライアント端末装置から送信されたClient Certificateメッセージが認証サーバ２において受信されると，そのClient Certificateメッセージからクライアント証明書が抽出される（図４ステップ25）。Client Certificateメッセージにクライアント証明書が含まれていなければ（図４ステップ26でＮＯ），クライアント認証は認められないものとして，認証サーバ２からクライアント端末装置１にエラー・メッセージが送信される（図４ステップ27）。
【００３１】
Client Certificateメッセージにクライアント証明書が含まれていると（図４ステップ26でＹＥＳ），認証サーバ２からクライアント端末装置１にFinishedメッセージ（確認メッセージ）が送信される（図４ステップ28）。また，暗号化による送信を開始することをクライアント端末装置１に知らせるために，認証サーバ２からクライアント端末装置１にChange Cipher Specメッセージが送信される（図４ステップ29）。
【００３２】
また，クライアント端末装置１から送信されたClient Certificateメッセージにクライアント証明書が含まれていると（図４ステップ26でＹＥＳ），その抽出されたクライアント証明書に対応したユーザＩＤおよびパスワードがユーザ・データベース３に格納されているかどうかの判定が行われる（図４ステップ30）。抽出されたクライアント証明書に対応したユーザＩＤおよびパスワードがユーザ・データベース３に格納されていなければ（図４ステップ26でＮＯ），クライアント認証されないのでエラー・メッセージが認証サーバ２からクライアント端末装置１に送信される（図４ステップ27）。
【００３３】
抽出されたクライアント証明書に対応したユーザＩＤおよびパスワードがユーザ・データベース３に格納されていると（図４ステップ30でＹＥＳ），それらのユーザＩＤおよびパスワードがユーザ・データベース３から読み取られる（図４ステップ31）。
【００３４】
図３を参照して，クライアント端末装置１において，認証サーバ２との間で決定された暗号化方式でhttp（Hypertext Transfer Protocol）リクエストが暗号化される（図３ステップ16）。暗号化されたhttpリクエストがクライアント端末装置１から認証サーバ２に送信される（図３ステップ17）。
【００３５】
クライアント端末装置１から送信された暗号化されたhttpリクエストが認証サーバ２において受信されると，その暗号化されたhttpリクエストが認証サーバ２において復号される（図５ステップ32）。復号されたhttpリクエストのヘッダに，ユーザ・データベース３から読み取られたユーザＩＤおよびパスワードが付加される（図５ステップ33）。ユーザＩＤおよびパスワードはコード化されたものがhttpリクエストに付加されるのはいうまでもない。ユーザＩＤおよびパスワードが付加されたhttpリクエストが認証サーバ２からウェブ・サーバ４に送信される（図５ステップ34）。
【００３６】
ウェブ・サーバ４において，認証サーバ２から送信されたhttpリクエストが受信されると，そのhttpリクエストに付加されているユーザＩＤおよびパスワードがウェブ・サーバ３において抽出される（図６ステップ41）。抽出されたユーザＩＤおよびパスワードが確認される（図６ステップ42，BASIC認証）。
【００３７】
抽出されたユーザＩＤおよびパスワードが正当なものであれば（図６ステップ43でＹＥＳ），アクセス許可レスポンスがウェブ・サーバ４から認証サーバ２に送信される（図６ステップ44）。抽出されたユーザＩＤおよびパスワードが正当なものでなければ（図６ステップ43でＮＯ），エラー・メッセージが認証サーバ２に送信される（図６ステップ45）。
【００３８】
ウェブ・サーバ４から送信されたアクセス許可レスポンスが認証サーバ２において受信されると，そのアクセス許可レスポンスが暗号化される（図５ステップ35）。暗号化されたアクセス許可レスポンスが認証サーバ２からクライアント端末装置１に送信される（図５ステップ36）。
【００３９】
クライアント端末装置１から送信された暗号化されたアクセス許可レスポンスがクライアント端末装置１において受信されると（図３ステップ18），復号されることにより，クライアント端末装置１はウェブ・サーバ４にアクセス許可されたことを認識する。その後，クライアント端末装置１とウェブ・サーバ４との間で通信が行われるようになる。ウェブ・サーバ４から認証サーバ２にエラー・メッセージが送信される場合には，そのエラー・メッセージが認証サーバ２からクライアント端末装置１に送信されるのはいうまでもない。
【００４０】
上述の実施例においては，ウェブ・サーバ４において，BASIC認証が行われているが，BASIC認証ではなく，Digest認証，POST/GETを利用したフォーム認証などを利用してもよい。
【００４１】
このようにして，クライアント認証が行われて，クライアント端末装置１にアクセス許可レスポンスが送信される。ウェブ・サーバ４をクライアント認証のために特別に構築し直すことなくクライアント証明書を用いた認証処理ができる。その後，ユーザＩＤおよびパスワードを用いたパスワード認証処理が行われることにより，クライアント認証とパスワード認証との２要素の認証処理を比較的簡単に行うことができるようになる。
【図面の簡単な説明】
【００４２】
【図１】認証システムの概要を示している。
【図２】ユーザ・データベースに格納されているデータの一例である。
【図３】クライアント端末装置の処理手順を示すフローチャートである。
【図４】認証サーバの処理手順を示すフローチャートである。
【図５】認証サーバの処理手順を示すフローチャートである。
【図６】ウェブ・サーバの処理手順を示すフローチャートである。
【符号の説明】
【００４３】
１  クライアント端末装置
２  認証サーバ
３  ユーザ・データベース
４  ウェブ・サーバ
【図１】
2009098761.tif 000003
【図２】
2009098761.tif 000004
【図３】
2009098761.tif 000005
【図４】
2009098761.tif 000006
【図５】
2009098761.tif 000007
【図６】
2009098761.tif 000008