(57)【特許請求の範囲】
【請求項１】
サーバが提供するサービスを利用するユーザ端末と前記サーバとの間に生成されるセッションを管理するセッション管理装置において、
前記ユーザ端末から送信される認証情報を検証してこの認証情報が前記ユーザ端末から要求されたサービスが必要とする認証レベルに応じたものであるかを判定する機能と、前記認証レベル毎に対応した素数を設定し、前記認証レベルのうちのある認証レベル対応した素数の倍数であり、且つ前記認証レベルより認証強度の高い他の認証レベルに対応する素数の倍数ではない整数をセッションＩＤとして生成する機能と、このセッションＩＤを前記ユーザ端末に送信する機能とを備えたセッション生成手段と、
前記ユーザ端末からサービス要求と共に送信される前記セッションＩＤから前記認証レベルを取得し、この認証レベルが前記サービス要求の対象となったサービスが要求する認証レベル以上である場合に前記サービス要求を認証するセッション認証手段とを備えたことを特徴とするセッション管理装置。
【請求項２】
前記セッション生成手段は、セッションＩＤを付与されていないユーザ端末からのサービス要求を受信し、前記サービス要求の対象であるサービスが要求する認証レベルを判定し、この判定した認証レベルに対応して予め定められている方法で前記ユーザ端末に認証要求を送信する認証要求送信機能を備えたことを特徴とした請求項１に記載のセッション管理装置。
【請求項３】
前記セッション認証手段は、前記セッションＩＤから取得した前記認証レベルが前記サービスの必要とする認証レベル未満である場合に、前記ユーザ端末に前記認証レベルを満たすための追加の認証要求を送信することを特徴とした請求項１に記載のセッション管理装置。
【請求項４】
前記ユーザ端末から前記セッションの認証レベルを低下させる要求を受信したときに前記セッションＩＤを廃棄するセッション管理手段を備え、前記セッション生成手段は、前記要求に応じて低下させた認証レベルに対応したセッションＩＤを生成することを特徴とした請求項１に記載のセッション管理装置。
【請求項５】
サーバが提供するサービスを利用するユーザ端末と前記サーバとの間に生成されるセッションを管理するセッション管理方法において、
前記ユーザ端末から送信される認証情報を受信したときに作動した前記サーバが、前記認証情報を検証して、この認証情報が前記ユーザ端末から要求されたサービスが必要とする認証レベルに応じたものであるかを判定し、前記認証レベル毎に対応した素数を設定し、前記認証レベルのうちのある認証レベル対応した素数の倍数であり、且つ前記認証レベルより認証強度の高い他の認証レベルに対応する素数の倍数ではない整数をセッションＩＤとして生成し、このセッションＩＤを前記ユーザ端末に送信するセッション生成工程と、
前記ユーザ端末から送信されるサービス要求と前記セッションＩＤを受信したときに作動した前記サーバが、前記セッションＩＤから前記認証レベルを取得し、この認証レベルが前記サービス要求の対象となったサービスが要求する認証レベル以上である場合に前記サービス要求を認証するセッション認証工程とを備えたことを特徴としたセッション管理方法。
【請求項６】
サーバが提供するサービスを利用するユーザ端末と前記サーバとの間に生成されるセッションを管理するセッション管理プログラムにおいて、
コンピュータに、
前記ユーザ端末から送信される認証情報を受信したときに、前記認証情報を検証して、前記ユーザ端末から要求されたサービスが必要とする認証レベルに応じたものであるかを判定し、前記認証レベル毎に対応した素数を設定し、前記認証レベルのうちのある認証レベル対応した素数の倍数であり、且つ前記認証レベルより認証強度の高い他の認証レベルに対応する素数の倍数ではない整数をセッションＩＤとして生成し、このセッションＩＤを前記ユーザ端末に送信するセッション生成機能と、
前記ユーザ端末から送信されるサービス要求と前記セッションＩＤを受信したときに、前記セッションＩＤから前記認証レベルを取得し、この認証レベルが前記サービス要求の対象となったサービスが要求する認証レベル以上である場合に前記サービス要求を認証するセッション認証機能とを実行させることを特徴としたセッション管理プログラム。
【請求項７】
前記セッションＩＤを付与されていないユーザ端末からのサービス要求を受信したときに、コンピュータに、前記サービス要求の対象であるサービスが要求する認証レベルを判定し、この判定した認証レベルに対応して予め定められている方法で前記ユーザ端末に認証要求を送信する認証要求送信機能を実行させることを特徴とした請求項６に記載のセッション管理プログラム。
【請求項８】
前記セッション認証機能は、前記セッションＩＤから取得した前記認証レベルが前記サービスが必要とする認証レベル未満である場合に、前記ユーザ端末に前記認証レベルを満たすための追加の認証要求を送信するものであることを特徴とした請求項６に記載のセッション管理プログラム。
【請求項９】
前記セッションＩＤの送信を受けた前記ユーザ端末から前記セッションの認証レベルを低下させる要求を受信したときに、コンピュータに、前記セッションＩＤを廃棄し、前記要求に応じて低下させた認証レベルに対応したセッションＩＤを生成し、このセッションＩＤを前記ユーザ端末に送信するセッション再生成機能を実行させることを特徴とした請求項６に記載のセッション管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、セッションＩＤを用いたセッション管理技術に関し、特に認証レベルの領域分解能を持つセッションＩＤを用いたセッション管理技術に関する。
【背景技術】
【０００２】
インターネットWeb認証において、認証領域へのログインが成功した際にはその後のセッション情報を管理するためにセッションIDが用いられている。
たとえば、特許文献１には、ＨＴＴＰ(HyperText Transfer Protocol)メッセージヘッダを利用してセッションＩＤを管理する技術が開示されている。この従来技術では、次のようにしてセッションＩＤを管理している。
まず、クライアントがＨＴＴＰリクエストメッセージのヘッダにセッション開始要求を付加してアプリケーションサーバに送信する。アプリケーションサーバは、セッションＩＤを生成して記憶領域に記録し、ＨＴＴＰレスポンスメッセージのヘッダにセッションＩＤを含むＣｏｏｋｉｅ生成要求メッセージを付加してクライアントへ送信する。レスポンスを受信したクライアントは、Ｃｏｏｋｉｅを生成して記憶領域に記憶する。
【０００３】
【特許文献１】特開２００５−１０９１３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来の手法では、認証領域は一つしか設定できず、その結果、セッションIDも認証領域に入れたことを示すだけの情報しか持ち得なかった。
そのため、認証領域内における低い認証強度しか要求されない軽微な行為も高い認証強度が要求される重要な行為も同様の認証強度が必要とされていた。通常、認証強度はその中でも最も重要な行為に合わせて設計される場合が多く、この場合には、軽微な行為を行なう際の認証ユーザインターフェースが必要以上に煩わしいという問題があった。
また、複数の認証領域にそれぞれセッションIDを発行すると管理が複雑になり、セッションＩＤとは別の領域情報をもつようにするとシステムの設計が難しくなるという問題があった。
【０００５】
そこで、本発明は、異なる認証レベルを要求する複数の認証領域がある場合でも、セッションＩＤによりセッションの認証管理を行うことができるセッション管理装置等を提供することをその目的とする。
【課題を解決するための手段】
【０００６】
本発明のセッション管理装置では、セッション生成手段がユーザ端末から送信される認証情報を検証してこの認証情報が予め設定された複数の異なる認証レベルのいずれを満足するかを判定し、この判定した認証レベル毎に対応した素数を設定し、前記認証レベルのうちのある認証レベル対応した素数の倍数であり、且つ前記認証レベルより認証強度の高い他の認証レベルに対応する素数の倍数ではない整数をセッションＩＤとして生成しユーザ端末に送信する。
セッション認証手段が、ユーザ端末から受信したセッションＩＤから認証レベルを取得し、この認証レベルとサービスが要求する認証レベルを比較し、セッションＩＤから取得した認証レベルがサービス要求の対象となったサービスの要求する認証レベル以上である場合にサービス要求を認証しサービスの利用を許可する（請求項１、請求項３ないし請求項５）。
【０００７】
上記セッション管理装置によれば、セッション生成手段がユーザ端末に付与するセッションＩＤは認証レベルを識別することが可能な形式となっている。
そのため、セッション認証手段は、要求する認証レベルの異なるサービスが複数存在する場合においても、サービス要求と共に送信されたセッションＩＤに基づいてセッション管理を行うことができる。
また、これにより、セッション認証手段は、セッションＩＤを認証レベルに対応付けて定められた素数で割り算することにより、認証レベルを取得することができる。
更に、認証レベルをそのままの形でセッションＩＤに組み込んでいないので、セッションＩＤを取得した第三者がセッションの認証レベルを判別しにくくなり、ＩＤの改ざんを困難にすることができる。
【０００８】
また、本発明のセッション管理装置では、セッション生成手段がユーザ端末から送信された認証情報を検証してこの認証情報が複数存在する異なる認証レベルのうちどの認証レベルを満足するかを判定し、この認証レベルそれぞれに対応して、２進数で表したときに各々異なるビット列を含んだ整数であるセッションＩＤを生成する生成しユーザ端末に送信する。
セッション認証手段は、ユーザ端末から受信したセッションＩＤから認証レベルを取得し、この認証レベルとサービスが要求する認証レベルを比較し、セッションＩＤから取得した認証レベルがサービスが要求する認証レベル以上である場合にサービス要求を認証しサービスの利用を許可する構成としてもよい。（請求項２）。
【０００９】
上記セッション管理装置において、セッション生成手段が、セッションＩＤを付与されていないユーザ端末からのサービス要求を受信したときに作動し、サービス要求の対象であるサービスが要求する認証レベルを判定し、この判定した認証レベルに対応して予め定められている方法で前記ユーザ端末に認証要求を送信する認証要求送信機能を備えるようにしても良い（請求項３）。
このようにすれば、セッション生成手段は、セッションを生成する際に、要求されたサービスが必要とする認証レベルに応じて適切な方法でユーザ端末に認証要求を行うことができる。そのため、低い認証レベルで十分なサービスが要求された場合には、認証要求をユーザにとって簡便な方法とすることができ、ユーザの負担を軽減することができる。
【００１０】
上記セッション管理装置において、セッション認証手段は、前記セッションＩＤから取得した認証レベルがサービスの必要とする認証レベル未満である場合に、ユーザ端末に認証レベルを満たすための追加の認証を要求するようにしても良い（請求項４）。
このようにすれば、既に認証されているサービスと同等かそれ以下の認証レベルを必要とするサービスを利用する場合には、新たな認証を受ける必要がないため、ユーザの負担を軽減することができる。
【００１１】
上記セッション管理装置において、ユーザ端末からセッションの認証レベルを低下させる要求を受信したときにセッションＩＤを廃棄するセッション管理手段を備え、セッションＩＤ生成手段は、前記要求に応じて低下させた認証レベルに対応したセッションＩＤを生成するようにしても良い（請求項５）。
このようにすれば、高い認証レベルのセッションＩＤが不要になった際に速やかに廃棄し、第三者によるセッションＩＤの悪用の可能性を低下させることができる。
【００１２】
本発明のセッション管理方法は、ユーザ端末から送信される認証情報を受信したときに作動したサーバが、前記認証情報を検証して、この認証情報が予め設定された複数の異なる認証レベルのいずれを満足するかを判定し、前記認証レベル毎に対応した素数を設定し、前記認証レベルのうちのある認証レベル対応した素数の倍数であり、且つ前記認証レベルより認証強度の高い他の認証レベルに対応する素数の倍数ではない整数をセッションＩＤとして生成し、このセッションＩＤを前記ユーザ端末に送信する。そして、ユーザ端末から送信されるサービス要求と前記セッションＩＤを受信したときに作動した前記サーバが、前記セッションＩＤから前記認証レベルを取得し、この認証レベルが前記サービス要求の対象となったサービスが要求する認証レベル以上である場合に前記サービス要求を認証する（請求項６）。
【００１３】
上記セッション管理方法によれば、認証情報を受信したときにユーザ端末に付与するセッションＩＤは認証レベルを識別することが可能な形式となっている。
そのため、要求する認証レベルの異なるサービスが複数存在する場合においても、サービス要求と共に送信されたセッションＩＤに基づいてセッション管理を行うことができる。
また、これにより、セッション認証手段は、セッションＩＤを認証レベルに対応付けて定められた素数で割り算することにより、認証レベルを取得することができる。
更に、認証レベルをそのままの形でセッションＩＤに組み込んでいないので、セッションＩＤを取得した第三者がセッションの認証レベルを判別しにくくなり、ＩＤの改ざんを困難にすることができる。
【００１４】
また、本発明のセッション管理方法は、ユーザ端末から送信される認証情報を受信したときに作動したサーバが、前記認証情報を検証して、この認証情報が予め設定された複数の異なる認証レベルのいずれを満足するかを判定し、２進数で表したときに各々異なるビット列を含んだ整数であるセッションＩＤを前記認証レベルそれぞれに対応して生成し、このセッションＩＤを前記ユーザ端末に送信する。次いで、サーバが、ユーザ端末から送信されるサービス要求と前記セッションＩＤを受信したときに、前記セッションＩＤから前記認証レベルを取得し、この認証レベルが前記サービス要求の対象となったサービスが要求する認証レベル以上である場合に前記サービス要求を認証する設定であってもよい（請求項７）。
【００１５】
本発明のセッション管理プログラムは、ユーザ端末から送信される認証情報を受信したときに、認証情報を検証して、この認証情報が予め設定された複数の異なる認証レベルのいずれを満足するかを判定し、前記認証レベル毎に対応した素数を設定し、前記認証レベルのうちのある認証レベル対応した素数の倍数であり、且つ前記認証レベルより認証強度の高い他の認証レベルに対応する素数の倍数ではない整数をセッションＩＤとして生成する機能と、このセッションＩＤを前記ユーザ端末に送信するセッション生成機能と、ユーザ端末から送信されるサービス要求と前記セッションＩＤを受信したときに、前記セッションＩＤから前記認証レベルを取得し、この認証レベルが前記サービス要求の対象となったサービスが要求する認証レベル以上である場合に前記サービス要求を認証するセッション認証機能を、コンピュータに実行させる（請求項８、請求項１０ないし請求項１２）。
【００１６】
上記セッション管理プログラムによれば、認証情報を受信したときにユーザ端末に付与するセッションＩＤは認証レベルを識別することが可能な形式となっている。
そのため、要求する認証レベルの異なるサービスが複数存在する場合においても、コンピュータに、サービス要求と共に送信されたセッションＩＤに基づいたセッション管理を行わせることができる。
また、これにより、セッション認証手段は、セッションＩＤを認証レベルに対応付けて定められた素数で割り算することにより、認証レベルを取得することができる。
更に、認証レベルをそのままの形でセッションＩＤに組み込んでいないので、セッションＩＤを取得した第三者がセッションの認証レベルを判別しにくくなり、ＩＤの改ざんを困難にすることができる。
【００１７】
また、セッション管理プログラムは、ユーザ端末から送信される認証情報を受信したときに、前記認証情報を検証して、この認証情報が予め設定された複数の異なる認証レベルのいずれを満足するかを判定し、２進数で表したときに各々異なるビット列を含んだ整数であるセッションＩＤを前記認証レベルそれぞれに対応して生成し、このセッションＩＤを前記ユーザ端末に送信するセッション生成機能と、ユーザ端末から送信されるサービス要求と前記セッションＩＤを受信したときに、前記セッションＩＤから前記認証レベルを取得し、この認証レベルが前記サービス要求の対象となったサービスが要求する認証レベル以上である場合に前記サービス要求を認証するセッション認証機能とをコンピュータに実行させる設定であってもよい（請求項９）。
【００１８】
上記セッション管理プログラムにおいて、セッションＩＤを付与されていないユーザ端末からのサービス要求を受信したときに、コンピュータに、サービス要求の対象であるサービスが要求する認証レベルを判定し、この判定した認証レベルに対応して予め定められている方法でユーザ端末に認証要求を送信する認証要求送信機能を実行させるようにしても良い（請求項１０）。
このようにすれば、コンピュータは、セッションを生成する際に、要求されたサービスが必要とする認証レベルに応じて適切な方法でユーザ端末に認証要求を行うことができる。そのため、低い認証レベルで十分なサービスが要求された場合には、認証要求を簡便な方法とすることができ、ユーザの負担を軽減することができる。
上記セッション管理プログラムにおいて、セッション認証機能を、セッションＩＤから取得した認証レベルがサービスが必要とする認証レベル未満である場合に、ユーザ端末に認証レベルを満たすための追加の認証を要求するものとしても良い（請求項１１）。
このようにすれば、既に認証されているサービスと同等かそれ以下の認証レベルを必要とするサービスを利用する場合には、新たな認証を受ける必要がないため、ユーザの負担を軽減することができる。
【００１９】
上記セッション管理プログラムにおいて、セッションＩＤの送信を受けたユーザ端末からセッションの認証レベルを低下させる要求を受信したときに、コンピュータに、セッションＩＤを廃棄し、要求に応じて低下させた認証レベルに対応したセッションＩＤを生成し、このセッションＩＤをユーザ端末に送信するセッション再生成機能を実行させるようにしても良い（請求項１１）。
このようにすれば、高い認証レベルのセッションＩＤが不要になった際に速やかに廃棄し、第三者によるセッションＩＤの悪用の可能性を低下させることができる。
【発明の効果】
【００２０】
本発明によれば、セッション生成手段がユーザ端末に付与するセッションＩＤは認証レベルを識別することが可能な形式となっている。
そのため、セッション認証手段は、要求する認証レベルの異なるサービスが複数存在する場合においても、サービス要求と共に送信されたセッションＩＤに基づいてセッション管理を行うことができる。
【発明を実施するための最良の形態】
【００２１】
以下、図を参照しながら本発明の１実施形態である認証システム１の構成と動作について説明する。
（認証システム１の構成）
図1は、認証システム1の構成を示す機能ブロック図である。
認証システム１は、ユーザ端末2と認証センタ端末（セッション管理装置）１０により構成されている。
ユーザ端末２は、たとえば通信機能を備えたパーソナルコンピュータであり、たとえばインターネット３を介して認証センタ端末１０に接続し、認証センタ端末１０が提供する各種サービスを利用する。
【００２２】
認証センタ端末１０は、たとえば通信機能を備えたサーバコンピュータであり、ユーザ端末１０等のクライアントの要求に応じて各種のサービスを提供する。
認証センタ端末１０は、サービス部１１とセッション生成部（セッション生成手段）１２とセッション認証部（セッション認証手段）１３とセッション管理部（セッション管理手段）１４と記憶部１５を備えている。
サービス部１１は、複数のサービスを提供するが、サービス毎に必要な認証レベルが予め定められている。サービスと必要な認証レベルの対応は、記憶部１５に認証レベルテーブル１６として記憶されている。図２に認証レベルテーブルの一例を示す。認証レベルテーブル１６の各行がサービス部１１の提供するサービスとそのサービスが必要とする認証レベルの対応を示している。たとえば、認証レベルテーブル１６の１行目は、サービス１が認証レベルＡを必要とすることを示している。この例では、単なる参照要求であればレベルＣ、課金を伴う設定変更要求であればレベルＢ、極めて高セキュリティを要求するものであればレベルＡとなっている。
【００２３】
セッション生成部１２は、セッションＩＤを取得していないユーザ端末１０からサービス要求があったときに、要求されたサービスが必要とする認証レベルを判断し、その認証レベルに応じて予め定められている方法でユーザ端末２に認証要求を送信する。
セッション生成部１２は、ユーザ端末２から送信された認証情報を検証して認証レベルを判定する。そして、この判定した認証レベルを識別することが可能なセッションＩＤを生成しユーザ端末２に送信する。
【００２４】
セッションＩＤから認証レベルを識別できるようにするためには、例えば次のようにセッションＩＤを生成する。必要認証強度が高いものから順に、レベルA、レベルB、レベルCの三つの認証レベルを設定したとする。それぞれの認証レベルに対応して５、３、２の三つの素数を用意する。レベルAのセッションIDは、5の倍数（たとえば６０）に設定する。レベルBのセッションIDは、3の倍数であり5の倍数でない整数（たとえば５７）に設定する。レベルCのセッションIDは、2の倍数であり3の倍数でも5の倍数でもない整数（たとえば５６）に設定する。
このようにすれば、セッションＩＤが５で割り切れる場合はレベルＡ、５で割り切れないが３で割り切れる場合はレベルＢ、５でも３でも割り切れないが２で割り切れる場合はレベルＣと判定することができる。
なお、ここでは、説明を理解しやすくするためにセッションＩＤを１０進数で２桁の整数としたが、実際には、セッション毎にユニークなＩＤを発行できるように、また、第三者から推測されにくくするために十分大きな桁数の整数とする。
【００２５】
セッションＩＤの別の生成方法として、次のようにすることもできる。上記の例と同様に、Ａ、Ｂ、Ｃの三つの認証レベルが設定されているとする。レベルＡのセッションＩＤは２進数で表したときの下位３ビットが「１００」である整数、レベルＢのセッションＩＤは２進数で表したときの下位３ビットが「０１０」である整数、レベルＣのセッションＩＤは２進数で表したときの下位３ビットが「００１」である整数とする。
【００２６】
セッション認証部１３は、ユーザ端末２から受信したサービス要求に含まれるセッションＩＤを検証して、認証レベルを判定する。認証レベルが要求されたサービスが必要とするもの以上の場合には、サービスの利用を許可し、認証レベルが要求されたサービスが必要とするものよりも低い場合には、ユーザ端末に対して追加の認証要求を送信する。
【００２７】
セッション管理部１４は、生成されたセッションを管理し、ユーザからログアウトの通知があっととき、または、認証レベルダウンの宣言があったときに、セッションＩＤを廃棄し、第三者によるセッションＩＤの不正利用を防止する。
【００２８】
記憶部１５は、例えばハードディスク装置により構成され、認証センタ端末１０の動作に必要なプログラムとデータを格納している。
【００２９】
（認証システム１の動作）
次に、認証システム１の動作について説明する。
図３は、認証システム１全体の動作を示すシーケンス図である。
ユーザ端末２は、認証センタ端末１０が提供するサービスを利用するためにサービス要求を送信する（ステップＳ１０１）。このサービス要求には、利用しようとするサービスを特定する情報が含まれている。
サービス要求を受信した認証センタ端末１０は、要求されたサービスが必要とする認証レベルを判定し（Ｓ１０２）、認証レベルに応じた認証要求をユーザ端末２に送信する（Ｓ１０３）。
ユーザ端末２は、認証センタ端末１０からの要求に応答して認証情報を送信する（ステップＳ１０４）。認証情報には、例えばパスワード等が含まれている。
認証情報を受信した認証センタ端末１０は、ユーザ端末１０が要求したサービスが必要とする認証レベルを取得し、受信した認証情報が取得した認証レベルに応じたものであるか否かを判断する（ステップＳ１０５）。
認証情報が正当でかつ認証レベルが適切である場合に、認証センタ端末１０は、セッションＩＤを発行し（Ｓ１０６）、このセッションＩＤをユーザ端末２に送信する（Ｓ１０７）。
ユーザ端末２は、受信したセッションＩＤを含むサービス利用要求を認証センタ端末１０に送信する（Ｓ１０８）。これは、例えばＨＴＴＰのＰＯＳＴメソッドを利用して行う。
認証センタ端末１０は、受信したセッションＩＤを検証し（Ｓ１０９）、検証結果をユーザ端末２に通知する（Ｓ１０８）。
【００３０】
図４は、認証センタ端末１０がセッションＩＤを発行する動作を示すフローチャートである。
まず、サービス部１１が、ユーザ端末から例えばインターネットを介して送信されたサービス要求を受信する（ステップＳ１１１）。
次に、セッション生成部１２は、サービス要求をサービス部１１から取得し、ユーザ端末からサービス要求の対象となっているサービスの認証レベルを判定する（Ｓ１１２）。この判定は、記憶部１５に格納されている認証レベルテーブル１６を参照して行う。たとえば、要求されたサービスが「サービス１」の場合は、必要な認証レベルは「Ａ」であると判定する。
セッション生成部１２は、判断した認証レベルに応じた認証要求をユーザ端末２に送信する（Ｓ１１３）。例えば、レベルＣ認証要求には手軽なユーザインターフェースを、レベルＢ認証要求には中程度の認証インターフェースを、レベルＡ認証要求には厳密な認証インターフェースを、である。
【００３１】
セッション生成部１２は、Ｓ１１３の認証要求に応答してユーザ端末２から送信された認証情報を受信する（Ｓ１１４）。
セッション生成部１２は、認証情報がＳ１１２において判定した認証レベルを満足するか否かを判定する（Ｓ１１５）。例えば、Ｓ１１２においてレベルＡの認証が必要と判定し、Ｓ１１３において「ユーザＩＤ」と「パスワード」と「指紋データ」の送信を求めた場合、認証情報にこれら３個の情報が含まれていれば認証レベルは正当と判断し、そうでなければ認証レベルが不足と判断する。認証情報のレベルが正当でないと判断した場合、セッション生成部１２は、認証に失敗した旨の情報をユーザ端末２に送信する（Ｓ１１５の判定がノー、Ｓ１１９）。
【００３２】
認証レベルが正当と判断した場合、セッション生成部１２は、認証情報が正当か否かを判定する（Ｓ１１５の判定がイエス、Ｓ１１６）。この判定は、例えば受信した認証情報に含まれるパスワードがユーザＩＤに対応するユーザのものと一致するか否かにより行う。認証情報が正当でないと判断した場合、セッション生成部１２は、認証に失敗した旨の情報をユーザ端末２に送信する（Ｓ１１６の判定がノー、Ｓ１１９）。
認証レベルと認証情報がいずれも正当と判断した場合、セッション生成部１２は、認証レベルに応じたセッションＩＤを生成する（Ｓ１１６の判定がイエス、Ｓ１１７）。セッションＩＤは、たとえば必要な認証レベルがＡの場合は５の倍数、必要な認証レベルがＢの場合は３の倍数であって５の倍数ではない整数、必要な認証レベルがＣの場合は、２の倍数であって５の倍数でも３の倍数でもない整数とする。
セッション生成部１１８は、認証に成功した旨の情報と、Ｓ１１６において生成したセッションＩＤをユーザ端末２に送信する（Ｓ１１８）。
【００３３】
図５は、ユーザ端末２からセッションＩＤを受信した認証センタ端末１０の動作を示すフローチャートである。
セッション認証部１３は、サービス要求と共にユーザ端末２から送信されたセッションＩＤを受信する（Ｓ１２１）。
セッション認証部１３は、セッションＩＤを解析し、そのセッションの認証レベルを判定する。
【００３４】
図６は、図４のＳ１１７の説明で例示した方法でセッションＩＤを生成した場合の判定方法を示すフローチャートである。
セッション認証部１３は、セッションＩＤが５の倍数か否かを判定し（Ｓ１３１）、この判定がイエスである場合は認証レベルをＡと判定する（Ｓ１３５）。
セッション認証部１３は、セッションＩＤが５の倍数でない場合（Ｓ１３１の判定がノー）は、３の倍数か否かを判定し、この判定がイエスである場合は認証レベルをＢと判定する（Ｓ１３６）。
セッション認証部１３は、セッションＩＤが５の倍数でなく、かつ、３の倍数でもない場合は（Ｓ１３１とＳ１３２の判定が共にノー）、２の倍数か否かを判定し、この判定がイエスである場合は認証レベルをＣと判定する（Ｓ１３７）。
セッション認証部１３は、セッションＩＤが５の倍数でも３の倍数でも２の倍数でもない場合は（Ｓ１３１とＳ１３２とＳ１３３の判定がすべてノー）、認証を拒否する（Ｓ１３４）。
【００３５】
次に、図５に戻り、セッション認証部１３は、Ｓ１２２で判定した認証レベルが要求されたサービスに対して十分か否かを判定する（Ｓ１２３）。たとえば、図２のサービス３が要求された場合、セッションＩＤから判定した認証レベルがＢまたはＡの場合は十分であると判定し、Ｃの場合は十分でないと判定する。
セッション認証部１３は、認証レベルが十分な場合はユーザ端末２に対してサービスの利用を許可する（Ｓ１２５）。この場合は、ユーザ端末２は、同じセッションＩＤを用いて認証を継続することができる（Ｓ１２１に戻る）。
、認証レベルが十分でない場合はユーザ端末２に対して追加の認証を要求する（Ｓ１２４）。この場合は、図４のＳ１１３ないしＳ１１９の処理が行われる。
【００３６】
図７は、セッションＩＤの認証レベルの変動を示す状態遷移図である。
図７では、４つの円の中にセッションＩＤの認証レベルを示している。レベル０は、認証を全く受けていない状態である。レベルＡ、レベルＢ、レベルＣは認証を受けた状態であり、セッションＩＤの認証レベルがこれらのいずれかにある場合に、そのセッションは認証領域にある。認証レベルの高さは、レベルＡが最も高く、レベルＢが中間、レベルＣが最も低くなっている。
図の矢印は、認証レベルの変動を、矢印に付された文字はその矢印で示される変動を引き起こすイベントを示している。例えば、矢印Ｙ１は、セッションの認証レベルがレベル０のときにレベルＣの認証が成功すると認証レベルがレベルＣに変動することを示している。認証レベルの変動は１度に１段階とは限らず、１度に２段階以上変動することもできる。
【００３７】
認証レベルが増加する方向の変動は、増加後のレベルに対応する認証に成功することにより起こる。例えば、認証レベルがレベル０の状態にあるときにレベルＢの認証に成功すると認証レベルはレベルＢに増加する（矢印Ｙ２）。
認証レベルが認証領域内で低下する方向の変動は、ユーザ端末によりレベルダウンが宣言されたときに起こる。例えば、認証レベルがレベルＡの状態にあるときにレベルＣへのレベルダウンが宣言されると認証レベルはレベルＣに低下する（矢印Ｙ４）。
このような認証レベルの低下が起こった場合は、図１のセッション管理部１４は、セッションＩＤを廃棄し、セッション生成部１２は、低下後の認証レベルに対応したセッションＩＤを生成してユーザ端末２に送信する。
認証レベルがレベル０に低下する方向の変動は、ユーザ端末によりログアウトが宣言されたときに起こる。例えば、認証レベルがレベルＡの状態にあるときにログアウトが宣言されると認証レベルはレベル０に低下する（矢印Ｙ４）。
ログアウトが宣言された場合、図１のセッション管理部１４は、そのセッションＩＤを廃棄して、セッションＩＤの不正利用を防止する。
【００３８】
本発明は、上記の図３ないし図７に示した動作をコンピュータに実行させるプログラムとして実施することもできる。
【００３９】
以上のように、認証システム１によれば、セッション認証部１３は、サービス部１１が提供するサービスが必要とする認証レベルに応じた認証手段を選択することができる。
そのため、認証にレベルという概念を導入し、ユーザビリティ向上を図ることができる。
また、セッションＩＤ生成部１２は、セッションの認証レベル領域分解能を持つセッションＩＤを生成することができる。
そのため、セッションＩＤのほかに認証レベルを示すための付属情報を持つことなく、高速に認証レベルの判定をすることができる。
【図面の簡単な説明】
【００４０】
【図１】本発明の実施形態である認証システム１の構成を示す図である。
【図２】認証レベルテーブルの例を示す図である。
【図３】認証システム１の動作を示すシーケンス図である。
【図４】認証センタ端末１０のセッションＩＤ生成動作を示すフローチャートである。
【図５】認証センタ端末１０の認証処理動作を示すフローチャートである。
【図６】認証センタ端末１０の認証レベル判定動作を示すフローチャートである。
【図７】認証レベルの変動を示す状態遷移図である。
【符号の説明】
【００４１】
１  認証システム
２  ユーザ端末
１０  認証センタ端末（セッション管理装置）
１１  サービス部
１２  セッション生成部（セッション生成手段）
１３  セッション認証部（セッション認証手段）
１４  セッション管理部（セッション管理手段）
【図１】
0004572151.tif 000002
【図２】
0004572151.tif 000003
【図３】
0004572151.tif 000004
【図４】
0004572151.tif 000005
【図５】
0004572151.tif 000006
【図６】
0004572151.tif 000007
【図７】
0004572151.tif 000008