(57)【要約】【課題】ユーザ識別情報が、第三者にオープンなネットワークを介して他の装置へ通知されることなく認証を行う認証システム、認証代理サーバ、制御プログラム及び認証方法を提供すること【解決手段】本発明にかかる認証システムは、アプリケーション（ＡＰＬ）利用端末１０と、ＡＰＬ利用端末１０とともにイントラネット５０に接続されＡＰＬ利用端末１０の認証を実行する認証代理サーバ２０と、ネットワーク６０に接続されるＡＰＬサーバ３０と、ネットワーク６０に接続され認証実行結果を保持する認証サーバ４０とを備える。認証代理サーバ２０は、ＡＰＬ利用端末１０から出力されたユーザ識別情報に基づいて認証を実行し、認証実行結果をＡＰＬ利用端末１０と、認証サーバ４０とに送信し、ＡＰＬサーバ３０は、取得した認証実行結果を用いてＡＰＬ利用端末１０に対するＡＰＬ提供可否を決定する。【選択図】図１
2012003338.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーション利用端末と、
前記アプリケーション利用端末が接続されているイントラネットに接続され、前記アプリケーション利用端末の認証を実行する認証代理サーバと、
前記イントラネットとは異なるネットワークに接続され、前記アプリケーション利用端末にアプリケーションを提供するアプリケーションサーバと、
前記イントラネットとは異なるネットワークに接続され、前記認証代理サーバにおける認証実行結果を保持する認証サーバと、を備え、
前記認証代理サーバは、
前記アプリケーション利用端末から出力された第１のユーザ識別情報に基づいて認証を実行し、当該認証における認証実行結果を前記アプリケーション利用端末と、前記認証サーバとに送信し、
前記アプリケーションサーバは、
前記アプリケーション利用端末と、前記認証サーバとが有する前記認証実行結果を用いて、前記アプリケーション利用端末に対するアプリケーション提供可否を決定する、認証システム。
【請求項２】
前記認証代理サーバは、
前記イントラネットを介して取得した前記第１のユーザ識別情報と、予め登録された登録識別情報とが一致する場合、第２のユーザ識別情報を生成し、前記イントラネットを介して前記アプリケーション利用端末へ前記第２のユーザ識別情報を出力し、前記イントラネットとは異なるネットワークを介して前記認証サーバへ前記第２のユーザ識別情報を出力する、請求項１記載の認証システム。
【請求項３】
前記アプリケーションサーバは、
前記アプリケーション利用端末及び前記認証サーバから、前記イントラネットとは異なるネットワークを介して、前記第２のユーザ識別を取得する、請求項２記載の認証システム。
【請求項４】
イントラネットを介してアプリケーション利用端末から出力された第１のユーザ識別情報に基づいて認証を実行する認証機能部と、
前記認証機能部における認証実行結果を、前記イントラネットを介して前記アプリケーション利用端末へ出力するとともに、前記イントラネットとは異なるネットワークを介して、前記認証実行結果を管理する認証サーバへ出力する、認証サーバ連携部と、を備える認証代理サーバ。
【請求項５】
前記認証機能部は、
前記イントラネットを介して取得した前記第１のユーザ識別情報と、予め登録された登録識別情報とが一致する場合、第２のユーザ識別情報を生成し、
前記認証サーバ連携部は、
前記イントラネットを介して前記アプリケーション利用端末へ前記第２のユーザ識別情報を出力し、前記イントラネットとは異なるネットワークを介して前記認証サーバへ前記第２のユーザ識別情報を出力する、請求項４記載の認証代理サーバ。
【請求項６】
イントラネットを介してアプリケーション利用端末から出力された第１のユーザ識別情報に基づいて認証を実行するステップと、
前記認証を実行するステップにおける認証実行結果を、前記イントラネットとは異なるネットワークを介して、前記認証実行結果を管理する認証サーバへ出力するステップと、
前記認証実行結果を、前記イントラネットを介して前記アプリケーション利用端末へ出力するステップと、を認証代理サーバのコンピュータに実行させる制御プログラム。
【請求項７】
前記認証を実行するステップは、
前記イントラネットを介して取得した前記第１のユーザ識別情報と、予め登録された登録識別情報とが一致する場合、第２のユーザ識別情報を生成し、
前記認証サーバへ出力するステップは、
前記イントラネットとは異なるネットワークを介して前記認証サーバへ前記第２のユーザ識別情報を出力し、
前記アプリケーション利用端末へ出力するステップは、
前記イントラネットを介して前記アプリケーション利用端末へ前記第２のユーザ識別情報を出力する、請求項６記載の制御プログラム。
【請求項８】
イントラネットを介してアプリケーション利用端末から送信される第１のユーザ識別情報を用いて、前記アプリケーション利用端末の認証を実行するステップと、
前記認証を実行ステップにおける認証実行結果を、前記イントラネットを介して前記アプリケーション利用端末へ送信するとともに、前記イントラネットとは異なるネットワークに接続されている認証サーバへ送信するステップと、
前記アプリケーション利用端末と、前記認証サーバとから、前記イントラネットとは異なるネットワークを介して送信される前記認証実行結果を用いて、前記アプリケーション利用端末に対するアプリケーション提供可否を決定するステップと、を備える認証方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は認証システム、認証代理サーバ、制御プログラム及び認証方法に関し、特にアプリケーションの提供可否を判定するために用いられる認証システム、認証システムに用いられる認証代理サーバ、認証代理サーバに用いられる制御プログラム及び認証システムにおける認証方法に関する。
【背景技術】
【０００２】
一般的に、ソフトウェアは、全てのユーザにとって必要な機能がすべてまとめられ、全てのユーザに同じ機能を提供することができるように構成されている。このようなソフトウェアは、あるユーザにとっては、あまり必要のない機能が多く搭載された冗長なものとなる。そのため、このようなユーザは、必要のない機能に対しても料金を支払っていることになる。そこで、個々のユーザが本当に必要な機能のみをオンデマンドによって利用でき、その機能に対してのみ支払いをするＳａａＳ（Software as a service）というソフトウェアの配布形態が注目されている。
【０００３】
具体的に、ＳａａＳとは、ソフトウェアが有する機能のうち、ユーザが必要とする機能のみを配布し、ユーザが必要とする機能のみを利用できるようにしたソフトウェアの配布形態である。このようにすることで、ユーザは、利用する機能に応じた分の料金のみを支払うことができる。また、ユーザがソフトウェアを利用する形態として、次の二つの形態がある。一つ目の利用形態として、ユーザは、必要な機能をダウンロードし、自身の端末にインストールすることにより、ソフトウェアを利用することができる。二つ目の利用形態として、ユーザは、サーバ上で動作するソフトウェアの機能を、ネットワークを介して、オンラインで利用することができる。
【０００４】
ＳａａＳにおいて、アプリケーションサーバは、認証を受けたユーザにのみアプリケーションを提供することができる。ＳａａＳにおける認証方式として、シングルサインオンがある。シングルサインオンとは、ユーザが一度認証を受けることにより、許可されている全ての機能を利用できるようになる認証方式である。ここで、２つのシングルサインオン方式について、図５及び図６を用いて説明する。
【０００５】
はじめに、図５を用いてエージェントモジュール方式を用いたシングルサインオンについて説明する。ＳａａＳ利用者端末１００は、インターネット１５０を介して、シングルサインオン（ＳＳＯ）基盤１２０にログインする。ＳＳＯ基盤１２０は、ＳａａＳデータセンタ１１０内に配置されている。ＳＳＯ基盤１２０は、ＳａａＳ利用者端末１００から送信されたユーザＩＤ及びパスワードを用いて、トークンを生成する。トークンは、アプリケーションを識別するＡＰＬ−ＩＤと、ＳａａＳ利用者端末１００を識別するＡＰＬユーザＩＤと対応付けられている。ＳＳＯ基盤１２０は、生成したトークンをＳａａＳ利用者端末１００へ送信する。
【０００６】
ＳａａＳ利用者端末１００は、ＳＳＯ基盤１２０から送信されたトークンを用いて、アプリケーションサーバ１４０へアクセスを行う。アプリケーションサーバ１４０は、アプリケーションデータセンタ１３０内に配置されている。ＳＳＯ利用者端末１００からのアクセスに基づいて、アプリケーションサーバ１４０は、ＳＳＯ基盤１２０へ認証要求を行う。認証要求には、Ｓａａｓ利用者端末１００から送信されたトークンが含まれている。ＳＳＯ基盤１２０は、認証要求に含まれているトークンと対応付けられているＡＰＬユーザＩＤを抽出する。ＳＳＯ基盤１２０は、抽出したＡＰＬユーザＩＤを、アプリケーションサーバ１４０へ送信する。アプリケーションサーバ１４０は、ＳａａＳ利用者端末１００と、ＳＳＯ基盤１２０とから送信されたＡＰＬユーザＩＤとが一致する場合に、ＳａａＳ利用者端末１００に対して、ログイン後の画面を表示するための画面データを送信する。これにより、Ｓａａｓ利用者端末１００は、アプリケーションサーバ１４０が提供するアプリケーションを利用することができる。
【０００７】
続いて、図６を用いてリバースプロキシ方式を用いたシングルサインオンについて説明する。なお、図５と同一の装置には同一の符号を付して説明する。ＳａａＳ利用者端末１００は、インターネット１５０を介して、シングルサインオン（ＳＳＯ）基盤１２０にログインする。ＳＳＯ基盤１２０は、ＳａａＳ利用者端末１００から送信されたユーザＩＤ及びパスワードを用いて、アプリケーションサーバ１４０へログインする。さらに、ＳＳＯ基盤１２０は、ログイン時に、ＳａａＳ利用者端末１００のＩＰアドレスもアプリケーションサーバ１４０へ送信する。この場合、ＳＳＯ基盤１２０は、インターネット１５０を介して、アプリケーションサーバ１４０へログインする。アプリケーションサーバ１４０は、ＳＳＯ基盤１２０から送信されたＳａａＳ利用者端末１００のユーザＩＤ及びパスワードを用いて、認証を実施する。ユーザＩＤ及びパスワードが、あらかじめ登録されているＳａａＳ利用者端末１００を識別するユーザＩＤ及びパスワードと一致する場合、ＳａａＳ利用者端末１００に対して、ログイン後の画面を表示するための画面データを送信する。これにより、Ｓａａｓ利用者端末１００は、アプリケーションサーバ１４０が提供するアプリケーションを利用することができる。
【０００８】
また、特許文献１には、イントラネットとインターネット上とにある複数のサービスに同時にログインできるシステムにおける、識別情報（ＩＤ）の使用形態が開示されている。具体的には、イントラネットに接続されている端末は、はじめにＩＤを入力する。イントラネット内のサーバにおいて、入力されたＩＤに対応するイントラネットのアカウントがない場合は、入力されたＩＤを用いてインターネット上のアプリケーションサーバが提供するサービスにログインする。また、入力されたＩＤに対応するイントラネットのアカウントがある場合、入力されたＩＤを変換した別のＩＤを使用してインターネット上のアプリケーションサーバにログインする。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００６−９２０３９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかし、上述したエージェントモジュール方式、リバースプロ式方式及び特許文献１に開示された技術においては、次のような問題が生じる。サービスの提供を受ける端末は、認証を受けるために、自己を識別するＩＤ及びパスワードをＳＳＯ基盤又はアプリケーションサーバ等に通知する必要がある。しかし、ＳＳＯ基盤及びアプリケーションサーバは、第三者にオープンなネットワークであるインターネットに接続されている。そのため、インターネットを介してＩＤ及びパスワードがＳＳＯ基盤又はアプリケーションサーバ等に通知された場合、第三者が、ＩＤ及びパスワードを不正に入手することができるという問題が生じる。これを防止するために、ＳＳＬ（Secure Socket Layer）や、ＶＰＮ（Virtual Private Network）といった、インターネット上のデータを暗号化して送信する技術がある。しかし、ＩＤ及びパスワードが、インターネットを介して送信されるため、ＩＤ及びパスワードが、第三者によって不正に入手されないことを完全に保証することはできない。
【００１１】
本発明はこのような問題を解決するためになされたものであり、ユーザ固有の識別子であるユーザＩＤ及びパスワードが、第三者にオープンなネットワークを介して他の装置へ通知されることなく認証を行う認証システム、認証代理サーバ、制御プログラム及び認証方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明の第１の態様にかかる認証システムは、アプリケーション利用端末と、前記アプリケーション利用端末が接続されているイントラネットに接続され、前記アプリケーション利用端末の認証を実行する認証代理サーバと、前記イントラネットとは異なるネットワークに接続され、前記アプリケーション利用端末にアプリケーションを提供するアプリケーションサーバと、前記イントラネットとは異なるネットワークに接続され、前記認証代理サーバにおける認証実行結果を保持する認証サーバと、を備え、前記認証代理サーバは、前記アプリケーション利用端末から出力された第１のユーザ識別情報に基づいて認証を実行し、当該認証における認証実行結果を前記アプリケーション利用端末と、前記認証サーバとに送信し、前記アプリケーションサーバは、前記アプリケーション利用端末と、前記認証サーバとが有する前記認証実行結果を用いて、前記アプリケーション利用端末に対するアプリケーション提供可否を決定するものである。
【００１３】
本発明の第２の態様にかかる認証代理サーバは、イントラネットを介してアプリケーション利用端末から出力された第１のユーザ識別情報に基づいて認証を実行する認証機能部と、前記認証機能部における認証実行結果を、前記イントラネットを介して前記アプリケーション利用端末へ出力するとともに、前記イントラネットとは異なるネットワークを介して、前記認証実行結果を管理する認証サーバへ出力する、認証サーバ連携部と、を備えるものである。
【００１４】
本発明の第３の態様にかかる制御プログラムは、イントラネットを介してアプリケーション利用端末から出力された第１のユーザ識別情報に基づいて認証を実行するステップと、前記認証を実行するステップにおける認証実行結果を、前記イントラネットとは異なるネットワークを介して、前記認証実行結果を管理する認証サーバへ出力するステップと、前記認証実行結果を、前記イントラネットを介して前記アプリケーション利用端末へ出力するステップと、を認証代理サーバのコンピュータに実行させるものである。
【００１５】
本発明の第４の態様にかかる認証方法は、イントラネットを介してアプリケーション利用端末から送信される第１のユーザ識別情報を用いて、前記アプリケーション利用端末の認証を実行するステップと、前記認証を実行ステップにおける認証実行結果を、前記アプリケーション利用端末と、前記イントラネットとは異なるネットワークに接続されている認証サーバと、へ送信するステップと、前記アプリケーション利用端末と、前記認証サーバとから、前記イントラネットとは異なるネットワークを介して送信される前記認証実行結果を用いて、前記アプリケーション利用端末に対するアプリケーション提供可否を決定するステップと、を備えるものである。
【発明の効果】
【００１６】
本発明により、ユーザ固有の識別子であるユーザＩＤ及びパスワードが、第三者にオープンなネットワークを介して他の装置へ通知されることなく認証を行う認証システム、認証代理サーバ、制御プログラム及び認証方法を提供することができる。
【図面の簡単な説明】
【００１７】
【図１】実施の形態１にかかる認証システムの構成図である。
【図２】実施の形態１にかかる認証システムの構成図である。
【図３】実施の形態１にかかるシングルサインオン基盤の構成図である。
【図４】実施の形態１にかかる認証システムにおいて認証を実施するためのシーケンスである。
【図５】エージェントモジュール方式を用いた認証システムの構成図である。
【図６】リバースプロキシ方式を用いた認証システムの構成図である。
【発明を実施するための形態】
【００１８】
（実施の形態１）
以下、図面を参照して本発明の実施の形態について説明する。本発明の実施の形態１にかかる認証システムは、アプリケーション利用端末１０と、認証代理サーバ２０と、アプリケーションサーバ３０と、認証サーバ４０と、を備えている。
【００１９】
アプリケーション利用端末１０は、アプリケーションサーバ３０から提供されるアプリケーションを利用する端末である。アプリケーション利用端末１０は、アプリケーションサーバ３０から提供されるアプリケーションを、ダウンロードして利用してもよく、アプリケーションサーバ３０において動作するアプリケーションを、オンラインで利用してもよい。また、アプリケーション利用端末１０は、イントラネット５０に接続されている。さらに、アプリケーション利用端末１０は、ネットワーク６０を介して、アプリケーションサーバ３０と通信を行うことができる。この場合、アプリケーション利用端末１０は、ネットワーク６０に直接接続されず、プロキシサーバ等を介してネットワーク６０に接続されてもよい。
【００２０】
認証代理サーバ２０は、アプリケーション利用端末１０が接続されているイントラネットと同一のイントラネット５０に接続されている。認証代理サーバ２０は、アプリケーション利用端末１０の認証を実行する。つまり、認証代理サーバ２０は、アプリケーション利用端末１０がアプリケーションサーバ３０において提供されるアプリケーションを利用することができる端末であるか否かを判定する。認証代理サーバ２０は、アプリケーションサーバ３０において提供されるアプリケーションの利用を許可されている端末に関する情報（以下、識別情報と称する）を、予め保持している。識別情報は、認証代理サーバ２０に直接入力されてもよく、イントラネット５０に接続されている他のサーバ装置（図示せず）から定期的に取得してもよい。
【００２１】
アプリケーションサーバ３０は、イントラネット５０とは異なる、ネットワーク６０に接続されている。アプリケーションサーバ３０は、アプリケーション利用端末１０にアプリケーションを提供する。提供されるアプリケーションは、アプリケーション利用端末１０からの利用要求に応じて、アプリケーション利用端末１０へダウンロードされてもよく、アプリケーションサーバ３０において動作し、アプリケーション利用端末１０によってオンラインで利用されてもよい。
【００２２】
認証サーバ４０は、イントラネット５０とは異なるネットワーク６０に接続されている。認証サーバ４０は、認証代理サーバ２０における認証実行結果を保持する。認証サーバ４０は、認証実行結果を、ネットワーク６０を介して取得する。
【００２３】
続いて、認証システムにおける信号の流れについて説明する。アプリケーション利用端末１０は、アプリケーション利用端末１０を識別する識別情報を、イントラネット５０を介して、認証代理サーバ２０へ出力する。例えば、識別情報は、ユーザＩＤや、パスワードである。
【００２４】
認証代理サーバ２０は、アプリケーション利用端末１０から出力された識別情報に基づいて認証を実行する。例えば、認証代理サーバ２０は、予め保持しているアプリケーション利用端末１０の識別情報と、アプリケーション利用端末１０から出力された識別情報とが一致するか否かを判定する。認証代理サーバ２０は、認証実行結果を、アプリケーション利用端末１０と、認証サーバ４０とに送信する。認証実行結果とは、例えば、認証ＯＫもしくは認証ＮＧという情報でもよく、アプリケーション利用端末１０がアプリケーションサーバ３０へ接続する際に用いられる新たな識別情報でもよい。
【００２５】
アプリケーションサーバ３０は、アプリケーション利用端末１０と、認証サーバ４０とが有する認証実行結果を用いて、アプリケーション利用端末１０に対するアプリケーション提供可否を決定する。アプリケーションサーバ３０は、ネットワーク６０を介して、アプリケーション利用端末１０からアプリケーションの利用要求がなされる。アプリケーションの利用要求には、認証実行結果が含まれる。
【００２６】
アプリケーションサーバ３０は、アプリケーション利用端末１０からのアプリケーション利用要求に応じて、認証サーバ４０に対してアプリケーション利用端末１０の認証実行結果の送信を要求する。アプリケーションサーバ３０は、ネットワーク６０を介して、認証サーバ４０に対して認証実行結果の送信を要求する。もしくは、認証サーバ４０は、アプリケーションサーバ３０から認証実行結果要求がなされる前に、認証実行結果をアプリケーションサーバ３０へ送信してもよい。
【００２７】
アプリケーションサーバ３０は、アプリケーション利用端末１０及び認証サーバ４０から取得した認証実行結果の内容が一致する場合、アプリケーション利用端末１０に対してアプリケーションの提供を行う。アプリケーションサーバ３０は、アプリケーション利用端末１０及び認証サーバ４０から取得した認証実行結果の内容が一致しない場合、アプリケーション利用端末１０に対するアプリケーションの提供を行わない。
【００２８】
以上説明したように、図１にかかる認証システムを用いることにより、アプリケーション利用端末１０において入力される識別情報が、アプリケーションサーバ３０及び認証サーバ４０へ出力されることなく、アプリケーションサーバ３０は、アプリケーションの提供可否を判定することができる。つまり、アプリケーション利用端末１０において入力される識別情報は、外部からのアクセスを遮断するイントラネット５０内においてのみ送受信される。そのため、アプリケーション利用端末１０によって入力される識別情報が、ネットワーク６０に出力されることはない。アプリケーションサーバ３０は、認証代理サーバ２０において生成される認証結果情報を用いて、アプリケーション提供可否を判定する。そのため、ネットワーク６０を使用する第三者が、アプリケーション利用端末１０の識別情報を取得することはできない。
【００２９】
続いて、図２を用いて本発明の実施の形態１にかかる認証システムの詳細な構成例について説明する。図２の認証システムは、ＳａａＳ利用者端末１１と、シングルサインオン（ＳＳＯ）代理基盤２１と、ＩＳＶ（Independent Software Vendor）データセンタ３１と、ＳａａＳデータセンタ４１と、を備えている。
【００３０】
ＳａａＳ利用者端末１１と、ＳＳＯ代理基盤２１とは、企業ネットワーク７０内に配置されている。つまり、ＳａａＳ利用者端末１１と、ＳＳＯ代理基盤２１とは、企業ネットワーク７０内のイントラネット５０に接続されている。ＳａａＳ利用者端末１１と、ＳＳＯ代理基盤２１とに対する企業ネットワーク７０の外部からのアクセスは制限されている。ＩＳＶデータセンタ３１及びＳａａＳデータセンタ４１は、イントラネット５０とは異なる第三者にオープンなネットワーク６０に接続されている。例えば、第三者にオープンなネットワーク６０は、インターネットである。
【００３１】
ＳＳＯ代理基盤２１は、認証機能部２２と、トークン生成機能部２３と、ＳＳＯ連携機能部２４とを有している。ＩＳＶデータセンタ３１は、アプリケーションサーバ３２を有している。ＳａａＳデータセンタ４１は、ＳＳＯ基盤４２を有している。なお、本図においては、ＳａａＳ利用者端末１１が一度認証を受けることにより、ＩＳＶデータセンタ３１において利用が許可されている全てのアプリケーションを利用することができるＳＳＯによる認証を行うことを基に説明する。
【００３２】
ＳａａＳ利用者端末１１は、アプリケーションを利用する際に、ＳＳＯ代理基盤２１へログインする。ＳａａＳ利用者端末１１は、ログイン時に、ＳＳＯ代理基盤２１へユーザＩＤ及びパスワードを送信する。つまり、ユーザＩＤ及びパスワードは、企業ネットワーク７０内のみで送受信され、インターネットには送信されない。ここで、ＳＳＯ代理基盤２１における処理について、図３を用いて説明する。
【００３３】
認証機能部２２は、ユーザ管理テーブル２５を有している。ユーザ管理テーブル２５は、ユーザＩＤ及びパスワードを管理している。ユーザ管理テーブル２５には、ユーザ又は端末に対応付けられているユーザＩＤ及びパスワードが登録されている。登録されているユーザＩＤ及びパスワードを入力したユーザ又は端末は、ＩＳＶデータセンタ３１におけるアプリケーションを利用することができる。
【００３４】
認証機能部２２は、ＳａａＳ利用者端末１１から取得したユーザＩＤ及びパスワードが、ユーザ管理テーブル２５に登録されているか否かを判定する。認証機能部２２は、ＳａａＳ利用者端末１１から取得したユーザＩＤ及びパスワードがユーザ管理テーブル２５に登録されていると判定し、認証を完了すると、認証機能部２２は、トークン生成機能部２３へトークン生成要求を出力する。トークン生成要求には、ユーザＩＤが含まれる。認証機能部２２は、ＳａａＳ利用者端末１１から取得したユーザＩＤ及びパスワードがユーザ管理テーブル２５に登録されていないと判定した場合、認証されなかった旨をＳａａＳ利用者端末１１へ通知してもよい。
【００３５】
トークン生成機能部２３は、アプリケーション管理テーブル２６を有している。アプリケーション管理テーブル２６は、ユーザＩＤと、ＡＰＬ−ＩＤと、ＡＰＬユーザＩＤと、を管理している。ＡＰＬ−ＩＤは、ＳａａＳ利用者端末１１に利用が許可されたアプリケーションの識別子である。ＡＰＬユーザＩＤは、ＳａａＳ利用者端末１１がアプリケーションサーバ３２へアクセスする際に用いる識別子である。アプリケーション管理テーブル２６は、ユーザＩＤと、ＡＰＬ−ＩＤと、ＡＰＬユーザＩＤとを対応付けて管理している。
【００３６】
トークン生成機能部２３は、認証機能部２２から出力されたユーザＩＤに対応付けられたＡＰＬ−ＩＤと、ＡＰＬユーザＩＤとを抽出する。トークン生成機能部２３は、抽出したＡＰＬ−ＩＤ及びＡＰＬユーザＩＤ、さらに、ＳａａＳ利用者端末１１がＳＳＯ代理基盤２１へログインした時間を対応付けたトークンを生成する。ＳＳＯ代理基盤２１へログインした時間とは、認証機能部２２が認証を完了した時間でもよく、ＳａａＳ利用者端末１１がユーザＩＤとパスワードを認証機能部２２へ出力した時間でもよい。トークン生成機能部２３は、生成したトークンを含むトークン情報送付要求をＳＳＯ連携機能部２４へ出力する。
【００３７】
ＳＳＯ連携機能部２４は、トークン管理テーブル２７を有している。トークン管理テーブル２７は、トークン生成機能部２３から出力されたトークンを管理する。具体的には、トークン管理テーブル２７は、トークンと、ログイン時刻と、ＡＰＬ−ＩＤと、ＡＰＬユーザＩＤと、を対応付けて管理する。
【００３８】
ＳＳＯ連携機能部２４は、トークン生成機能部２３からトークン情報送付要求を受け取ると、ＳＳＯ基盤４２へ、トークン情報を送信する。ＳＳＯ基盤４２へ送信されるトークン情報には、トークンと、ＡＰＬ−ＩＤと、ＡＰＬユーザＩＤと、が含まれている。ＳＳＯ連携機能部２４は、ＳＳＯ基盤４２に対するトークン情報の送信が完了すると、トークン生成機能部２３へトークン情報送信の完了通知を行う。また、トークン生成機能部２３は、トークン情報送信の完了が通知されると、認証機能部２２へトークン生成完了通知を行う。トークン生成完了通知には、ＳＳＯ連携機能部２４によって送信されたトークン情報が含まれている。認証機能部２２は、トークン生成完了通知を取得すると、ＳａａＳ利用者端末１１のブラウザへトークン情報を出力する。
【００３９】
ここで、ＳＳＯ連携機能部２４は、トークンに関連付けられているログイン時刻から所定の時間経過した場合、生成したトークンを無効としてもよい。この場合、ＳＳＯ連携機能部２４は、認証機能部２２を介してＳａａＳ利用者端末１１に対して、再度ユーザＩＤ及びパスワードの入力を要求する。また、ＳＳＯ連携機能部２４は、再度入力されたユーザＩＤ及びパスワードに基づいて生成されたトークン（例えば、token2）を、ＳＳＯ基盤４２へ送信する。ＳＳＯ基盤４２は、保持しているトークン（例えば、token1）を破棄して、新たに送信されたトークン（token2）を登録するようにしてもよい。
【００４０】
図２に戻り、ＳａａＳデータセンタ４１は、ＳＳＯ基盤４２を有している。ＳＳＯ基盤４２は、ＳＳＯ連携機能部２４からネットワーク６０を介して送信されたトークン情報を管理する。
【００４１】
ＳａａＳ利用者端末１１は、アプリケーションサーバ３２へアクセスするために、Ｗｅｂブラウザ等のブラウザを用いる。ＳａａＳ利用者端末１１のブラウザは、認証機能部２２から出力されたトークン情報を用いて、アプリケーションサーバ３２へアクセスを行う。すなわち、ＳａａＳ利用者端末１１は、インターネットを介してトークン情報を送信する。
【００４２】
ＩＳＶデータセンタ３１は、アプリケーションサーバ３２を有している。アプリケーションサーバ３２は、ＳａａＳ利用者端末１１のブラウザからアクセスされると、ＳａａＳ利用者端末１１から送信されたトークンとＡＰＬ−ＩＤとに対応するＡＰＬユーザＩＤを、ＳＳＯ基盤４２から取得する。アプリケーションサーバ３２は、ＳａａＳ利用者端末１１及びＳＳＯ基盤４２から送信されたＡＰＬユーザＩＤが一致する場合、ＳａａＳ利用者端末１１に対して、アプリケーションの利用を許可する。アプリケーションサーバ３２は、ＳａａＳ利用者端末１１及びＳＳＯ基盤４２から送信されたＡＰＬユーザＩＤが一致しない場合、ＳａａＳ利用者端末１１に対してアプリケーションの利用を許可しない。
【００４３】
続いて、図４を用いて、認証システムにおける処理シーケンスについて説明する。はじめに、ＳａａＳ利用者端末１１は、ブラウザを用いて、イントラネット５０に接続されているＳＳＯ代理基盤２１にログインする（Ｓ１１）。ＳＳＯ代理基盤２１は、ＳａａＳ利用者端末１１がログインする際に、ＳａａＳ利用者端末１１からユーザＩＤとパスワードを取得する。次に、ＳＳＯ代理基盤２１は、ＳＳＯ基盤４２に対して、トークン情報を送信する（Ｓ１２）。また、ＳＳＯ代理基盤２１は、ＳＳＯ基盤４２に対してトークン情報を送信した後、ＳａａＳ利用者端末１１へトークン情報を送信する（Ｓ１３）。
【００４４】
次に、ＳａａＳ利用者端末１１は、取得したトークン情報を用いて、アプリケーションサーバ３２へアクセスする（Ｓ１４）。次に、アプリケーションサーバ３２は、ＳＳＯ基盤４２に対してＳａａＳ利用者端末１１についての認証要求を行う（Ｓ１５）。認証要求は、ＳａａＳ利用者端末１１から送信されたトークンと、ＡＰＬ−ＩＤとを含む。次に、ＳＳＯ基盤４２は、アプリケーションサーバ３２から送信されたトークンと、ＡＰＬ−ＩＤとに対応するＡＰＬユーザＩＤを抽出し、アプリケーションサーバ３２へ送信する（Ｓ１６）。次に、アプリケーションサーバ３２は、ＳａａＳ利用者端末１１と、ＳＳＯ基盤４２とから送信されたＡＰＬユーザＩＤとが一致するか否かを判定する。ＳａａＳ利用者端末１１と、ＳＳＯ基盤４２とから送信されたＡＰＬユーザＩＤとが一致する場合、ＳａａＳ利用者端末１１のブラウザに対して、ログイン後の画面を表示させるよう、画面データを送信する（Ｓ１７）。また、ＳａａＳ利用者端末１１と、ＳＳＯ基盤４２とから送信されたＡＰＬユーザＩＤとが一致しない場合、ログインを許可しないことを示す画面データを送信してもよい。
【００４５】
以上説明したように、本発明の実施の形態１にかかる認証システムを用いることにより、第三者にオープンなネットワークを介して、アプリケーションサーバ及び認証サーバに、ユーザ固有の識別子であるユーザＩＤ及びパスワードを通知することなく、アプリケーションサーバは、アプリケーションの提供可否を判定することができる。
【００４６】
また、認証を実行するＳＳＯ代理基盤は、企業内のイントラネットに接続されている。そのため、ユーザＩＤとパスワードが、何らかの手段によりユーザと異なる企業の第三者に取得された場合においても、第三者は、イントラネットにアクセスすることはできない。そのため、第三者は、ユーザＩＤとパスワードを保持している場合においても、ＳＳＯ代理基盤において、認証を受けることができない。これにより、第三者は、ＡＰＬユーザＩＤを取得することができないため、アプリケーションサーバにおけるアプリケーションを利用できない。
【００４７】
また、第三者がネットワーク６０おいてトークン情報を取得した場合においても、トークンに有効期限を設けることにより、トークン情報を取得した第三者による、アプリケーションの利用を強制的に停止させることができる。例えば、ＳＳＯ基盤４２は、ＳａａＳ利用者端末１１がＳＳＯ代理基盤２１へログイン中のみトークンを有効とし、ログアウトするとトークンを無効化してもよい。これにより、ＳＳＯ代理基盤２１からＳＳＯ基盤４２に送られるトークン情報を悪意の第三者が入手したとしても、第三者によるアプリケーションサーバ３２に対する不正アクセスのリスクを低減することができる。
【００４８】
上述の実施の形態では、本発明をハードウェアの構成として説明したが、本発明は、これに限定されるものではない。本発明は、図３において説明したＳＳＯ代理基盤の処理を、ＣＰＵ（Central Processing Unit）にコンピュータプログラムを実行させることにより実現することも可能である。
【００４９】
上述の例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体（non-transitory computer readable medium）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（tangible storage medium）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ（Read Only Memory）、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Programmable ROM）、ＥＰＲＯＭ（Erasable PROM）、フラッシュＲＯＭ、ＲＡＭ（Random Access Memory））を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（transitory computer readable medium）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【００５０】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【符号の説明】
【００５１】
１０  アプリケーション利用端末
１１  ＳａａＳ利用者端末
２０  認証代理サーバ
２１  ＳＳＯ代理基盤
２２  認証機能部
２３  トークン生成機能部
２４  ＳＳＯ連携機能部
２５  ユーザ管理テーブル
２６  アプリケーション管理テーブル
２７  トークン管理テーブル
３０  アプリケーションサーバ
３１  ＩＳＶデータセンタ
３２  アプリケーションサーバ
４０  認証サーバ
４１  ＳａａＳデータセンタ
４２  ＳＳＯ基盤
５０  イントラネット
６０  ネットワーク
【図１】
2012003338.tif 000003
【図２】
2012003338.tif 000004
【図３】
2012003338.tif 000005
【図４】
2012003338.tif 000006
【図５】
2012003338.tif 000007
【図６】
2012003338.tif 000008