(57)【特許請求の範囲】
【請求項１】
ソフトウェアを要求する通信装置と、利用者データベースを具備する提供サーバと、統合データベースを具備するポータルサーバとを有するソフトウェア提供システムにおいて、
前記通信装置は、利用者識別情報を前記ポータルサーバへ送信し、前記ポータルサーバから送信されてきた、前記提供サーバに接続するためのサーバ識別子を用いて、前記ポータルサーバから送信されてきた認証識別子を前記提供サーバへ送信し、
前記提供サーバは、前記利用者識別情報と利用者へ提供するソフトウェアとをあらかじめ対応付けて前記利用者データベースに記憶し、前記通信装置から送信されてきた認証識別子を前記ポータルサーバへ送信して利用者の認証済みの確認を要求し、該認証済みの確認の結果が該認証済みの確認の成功を示すものである場合、前記利用者データベースにて前記利用者識別情報と対応付けられて記憶されているソフトウェアを前記通信装置へ提供し、
前記ポータルサーバは、前記利用者識別情報とサーバ識別子とを対応付けて前記統合データベースに記憶し、前記通信装置から送信されてきた利用者識別情報と、前記統合データベースが記憶している利用者識別情報とをもとに照合することで前記利用者の認証を行い、該認証に成功した場合、前記認証識別子を生成し、該認証識別子と、前記統合データベースにて前記利用者識別情報に対応付けられて記憶されているサーバ識別子とを前記通信装置へ送信し、該認証識別子を前記利用者識別情報に対応付けて記憶し、前記提供サーバから前記認証識別子が送信されてきた場合、該送信されてきた認証識別子と前記記憶している認証識別子とを照合することで前記利用者の認証済みの確認を行い、該認証済みの確認の結果を前記提供サーバへ通知することを特徴とするソフトウェア提供システム。
【請求項２】
請求項１に記載のソフトウェア提供システムにおいて、
前記提供サーバは、前記サーバ識別子と、前記利用者データベースに記憶している前記利用者識別情報とを前記ポータルサーバへ送信し、
前記ポータルサーバは、前記提供サーバから送信されてきたサーバ識別子と利用者識別情報とを対応付けて前記統合データベースに記憶することを特徴とするソフトウェア提供システム。
【請求項３】
請求項１または請求項２に記載のソフトウェア提供システムにおいて、
前記提供サーバは、パスワードを前記利用者識別情報と対応付けて前記利用者データベースに記憶し、
前記ポータルサーバは、前記パスワードを前記利用者識別情報と対応付けて前記統合データベースに記憶し、前記通信装置から送信されてきた利用者識別情報およびパスワードと、前記統合データベースが記憶している利用者識別情報およびパスワードとをそれぞれ照合することで前記利用者の認証を行うことを特徴とするソフトウェア提供システム。
【請求項４】
請求項３に記載のソフトウェア提供システムにおいて、
前記提供サーバは、前記利用者データベースに、前記利用者識別情報および前記パスワードの組の少なくとも１つの組の追加、変更または削除による更新があった場合、該利用者識別情報およびパスワードの組を更新するための更新情報を前記ポータルサーバへ送信し、
前記ポータルサーバは、前記提供サーバから送信されてきた更新情報に基づいて、前記統合データベースの前記提供サーバのサーバ識別子に対応付けられた利用者識別情報およびパスワードの組を更新することを特徴とするソフトウェア提供システム。
【請求項５】
請求項１から４のいずれか１項に記載のソフトウェア提供システムにおいて、
前記ポータルサーバは、以前に前記認証識別子を生成済みの場合、既定の時間内に生成されたものであるか判断し、既定の時間内であれば、新たな認証識別子を生成せずに既にある認証識別子を通信装置に送信し、既定の時間以上前に生成されたものであれば、新たに前記認証識別子を生成することを特徴とするソフトウェア提供システム。
【請求項６】
請求項１から５のいずれか１項に記載のソフトウェア提供システムにおいて、
前記ポータルサーバは、前記認証識別子を前記通信装置へ送信した日時から前記提供サーバから前記認証識別子が送信されてきた日時までの時間が、所定の時間内である場合、前記認証識別子の照合を行うことを特徴とするソフトウェア提供システム。
【請求項７】
請求項１から６のいずれか１項に記載のソフトウェア提供システムにおいて、
前記提供サーバは、前記利用者識別情報として、企業にあらかじめ付与された第１の識別情報と個人利用者にあらかじめ付与された第２の識別情報とを用いることを特徴とするソフトウェア提供システム。
【請求項８】
利用者識別情報と、ソフトウェアを提供する提供サーバに接続するためのサーバ識別子とを対応付けて記憶する統合データベースと、
前記ソフトウェアを要求する通信装置から送信されてきた利用者識別情報と、前記統合データベースに記憶されている利用者識別情報とをもとに照合して、利用者の認証を行う認証部と、
前記認証部が前記認証に成功した場合、認証識別子と、前記統合データベースにて前記利用者識別情報に対応付けられて記憶されているサーバ識別子とを前記通信装置へ送信する通信部とを有し、
前記統合データベースは、前記認証識別子を前記利用者識別情報に対応付けて記憶し、
前記認証部は、前記提供サーバから前記認証識別子が送信されてきた場合、該送信されてきた認証識別子と前記統合データベースに記憶されている認証識別子とを照合することで前記利用者の認証済みの確認を行い、
前記通信部は、前記認証部における前記認証識別子を用いた認証済みの確認の結果を前記提供サーバへ通知するポータルサーバ。
【請求項９】
利用者識別情報と利用者へ提供するソフトウェアとをあらかじめ対応付けて記憶する利用者データベースと、
前記ソフトウェアを要求する通信装置から送信されてきた認証識別子をポータルサーバへ送信して利用者の認証済みの確認を要求する認証要求部と、
前記ポータルサーバから通知された認証済みの確認の結果が該認証済みの確認の成功を示すものである場合、前記利用者データベースにて前記利用者識別情報と対応付けられて記憶されているソフトウェアを前記通信装置へ提供する提供部とを有する提供サーバ。
【請求項１０】
ポータルサーバの認証方法であって、
利用者識別情報と、ソフトウェアを提供する提供サーバに接続するためのサーバ識別子とを対応付けて統合データベースに記憶する処理と、
前記ソフトウェアを要求する通信装置から送信されてきた利用者識別情報と、前記統合データベースに記憶されている利用者識別情報とをもとに照合して、利用者の認証を行う処理と、
前記認証に成功した場合、認証識別子と、前記統合データベースにて前記利用者識別情報に対応付けられて記憶されているサーバ識別子とを前記通信装置へ送信する処理と、
前記統合データベースに前記認証識別子を前記利用者識別情報に対応付けて記憶する処理と、
前記提供サーバから前記認証識別子が送信されてきた場合、該送信されてきた認証識別子と前記統合データベースに記憶されている認証識別子とを照合することで前記利用者の認証済みの確認を行う処理と、
前記認証識別子を用いた認証済みの確認の結果を前記提供サーバへ通知する処理とを行う認証方法。
【請求項１１】
提供サーバの提供方法であって、
ソフトウェアを要求する通信装置から送信されてきた認証識別子をポータルサーバへ送信して利用者の認証済みの確認を要求する処理と、
前記ポータルサーバから通知された認証済みの確認の結果が該認証済みの確認の成功を示すものである場合、利用者データベースにて利用者識別情報と対応付けられて記憶されているソフトウェアを前記通信装置へ提供する処理とを行う提供方法。
【請求項１２】
ポータルサーバに、
利用者識別情報と、ソフトウェアを提供する提供サーバに接続するためのサーバ識別子とを対応付けて統合データベースに記憶する手順と、
前記ソフトウェアを要求する通信装置から送信されてきた利用者識別情報と、前記統合データベースに記憶されている利用者識別情報とをもとに照合して、利用者の認証を行う手順と、
前記認証に成功した場合、認証識別子と、前記統合データベースにて前記利用者識別情報に対応付けられて記憶されているサーバ識別子とを前記通信装置へ送信する手順と、
前記統合データベースに前記認証識別子を前記利用者識別情報に対応付けて記憶する手順と、
前記提供サーバから前記認証識別子が送信されてきた場合、該送信されてきた認証識別子と前記統合データベースに記憶されている認証識別子とを照合することで前記利用者の認証済みの確認を行う手順と、
前記認証識別子を用いた認証済みの確認の結果を前記提供サーバへ通知する手順とを実行させるためのプログラム。
【請求項１３】
提供サーバに、
ソフトウェアを要求する通信装置から送信されてきた認証識別子をポータルサーバへ送信して利用者の認証済みの確認を要求する手順と、
前記ポータルサーバから通知された認証済みの確認の結果が該認証済みの確認の成功を示すものである場合、利用者データベースにて利用者識別情報と対応付けられて記憶されているソフトウェアを前記通信装置へ提供する手順とを実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェアを提供するソフトウェア提供システム、ポータルサーバ、提供サーバ、認証方法、提供方法およびプログラムに関する。
【背景技術】
【０００２】
一般的に、企業向けのクライアントサーバ型パッケージソフトなどのソフトウェアをネットワーク経由で提供する場合、企業等の顧客ごとにパッケージソフト提供用のサーバを構築するか、もしくはマルチテナント型に改造することが行われている（例えば、特許文献１参照。）。利用者は通信端末等の通信装置を用いて、提供を受けたいパッケージソフトを提供するサーバへ接続し、サーバが利用者の認証処理を行い、認証に成功した場合、当該サーバがパッケージソフトを通信装置へ提供する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−１２８９９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した前者の技術においては、パッケージソフトごとにアクセス先が異なるため、利用者にとって不便を生じるという問題点がある。また、上述した後者の技術においては、マルチテナント化に改造するには、相応の期間や工数がかかるため、ビジネスチャンスを逃してしまうという問題点がある。
【０００５】
本発明の目的は、上述した課題を解決するソフトウェア提供システム、ポータルサーバ、提供サーバ、認証方法、提供方法およびプログラムを提供することである。
【課題を解決するための手段】
【０００６】
本発明のソフトウェア提供システムは、
ソフトウェアを要求する通信装置と、利用者データベースを具備する提供サーバと、統合データベースを具備するポータルサーバとを有するソフトウェア提供システムにおいて、
前記通信装置は、利用者識別情報を前記ポータルサーバへ送信し、前記ポータルサーバから送信されてきた、前記提供サーバに接続するためのサーバ識別子を用いて、前記ポータルサーバから送信されてきた認証識別子を前記提供サーバへ送信し、
前記提供サーバは、前記利用者識別情報と利用者へ提供するソフトウェアとをあらかじめ対応付けて前記利用者データベースに記憶し、前記通信装置から送信されてきた認証識別子を前記ポータルサーバへ送信して利用者の認証済みの確認を要求し、該認証済みの確認の結果が該認証済みの確認の成功を示すものである場合、前記利用者データベースにて前記利用者識別情報と対応付けられて記憶されているソフトウェアを前記通信装置へ提供し、
前記ポータルサーバは、前記利用者識別情報とサーバ識別子とを対応付けて前記統合データベースに記憶し、前記通信装置から送信されてきた利用者識別情報と、前記統合データベースが記憶している利用者識別情報とをもとに照合することで前記利用者の認証を行い、該認証に成功した場合、前記認証識別子を生成し、該認証識別子と、前記統合データベースにて前記利用者識別情報に対応付けられて記憶されているサーバ識別子とを前記通信装置へ送信し、該認証識別子を前記利用者識別情報に対応付けて記憶し、前記提供サーバから前記認証識別子が送信されてきた場合、該送信されてきた認証識別子と前記記憶している認証識別子とを照合することで前記利用者の認証済みの確認を行い、該認証済みの確認の結果を前記提供サーバへ通知することを特徴とする。
【０００７】
また、本発明のポータルサーバは、
利用者識別情報と、ソフトウェアを提供する提供サーバに接続するためのサーバ識別子とを対応付けて記憶する統合データベースと、
前記ソフトウェアを要求する通信装置から送信されてきた利用者識別情報と、前記統合データベースに記憶されている利用者識別情報とをもとに照合して、利用者の認証を行う認証部と、
前記認証部が前記認証に成功した場合、認証識別子と、前記統合データベースにて前記利用者識別情報に対応付けられて記憶されているサーバ識別子とを前記通信装置へ送信する通信部とを有し、
前記統合データベースは、前記認証識別子を前記利用者識別情報に対応付けて記憶し、
前記認証部は、前記提供サーバから前記認証識別子が送信されてきた場合、該送信されてきた認証識別子と前記統合データベースに記憶されている認証識別子とを照合することで前記利用者の認証済みの確認を行い、
前記通信部は、前記認証部における前記認証識別子を用いた認証済みの確認の結果を前記提供サーバへ通知する。
【０００８】
また、本発明の提供サーバは、
利用者識別情報と利用者へ提供するソフトウェアとをあらかじめ対応付けて記憶する利用者データベースと、
前記ソフトウェアを要求する通信装置から送信されてきた認証識別子をポータルサーバへ送信して利用者の認証済みの確認を要求する認証要求部と、
前記ポータルサーバから通知された認証済みの確認の結果が該認証済みの確認の成功を示すものである場合、前記利用者データベースにて前記利用者識別情報と対応付けられて記憶されているソフトウェアを前記通信装置へ提供する提供部とを有する。
【０００９】
また、本発明の認証方法は、
ポータルサーバの認証方法であって、
利用者識別情報と、ソフトウェアを提供する提供サーバに接続するためのサーバ識別子とを対応付けて統合データベースに記憶する処理と、
前記ソフトウェアを要求する通信装置から送信されてきた利用者識別情報と、前記統合データベースに記憶されている利用者識別情報とをもとに照合して、利用者の認証を行う処理と、
前記認証に成功した場合、認証識別子と、前記統合データベースにて前記利用者識別情報に対応付けられて記憶されているサーバ識別子とを前記通信装置へ送信する処理と、
前記統合データベースに前記認証識別子を前記利用者識別情報に対応付けて記憶する処理と、
前記提供サーバから前記認証識別子が送信されてきた場合、該送信されてきた認証識別子と前記統合データベースに記憶されている認証識別子とを照合することで前記利用者の認証済みの確認を行う処理と、
前記認証識別子を用いた認証済みの確認の結果を前記提供サーバへ通知する処理とを行う。
【００１０】
提供サーバの提供方法であって、
また、ソフトウェアを要求する通信装置から送信されてきた認証識別子をポータルサーバへ送信して利用者の認証済みの確認を要求する処理と、
前記ポータルサーバから通知された認証済みの確認の結果が該認証済みの確認の成功を示すものである場合、利用者データベースにて利用者識別情報と対応付けられて記憶されているソフトウェアを前記通信装置へ提供する処理とを行う。
【００１１】
また、本発明のプログラムは、
ポータルサーバに実行させるためのプログラムであって、
利用者識別情報と、ソフトウェアを提供する提供サーバに接続するためのサーバ識別子とを対応付けて統合データベースに記憶する手順と、
前記ソフトウェアを要求する通信装置から送信されてきた利用者識別情報と、前記統合データベースに記憶されている利用者識別情報とをもとに照合して、利用者の認証を行う手順と、
前記認証に成功した場合、認証識別子と、前記統合データベースにて前記利用者識別情報に対応付けられて記憶されているサーバ識別子とを前記通信装置へ送信する手順と、
前記統合データベースに前記認証識別子を前記利用者識別情報に対応付けて記憶する手順と、
前記提供サーバから前記認証識別子が送信されてきた場合、該送信されてきた認証識別子と前記統合データベースに記憶されている認証識別子とを照合することで前記利用者の認証済みの確認を行う手順と、
前記認証識別子を用いた認証済みの確認の結果を前記提供サーバへ通知する手順とを実行させる。
【００１２】
また、提供サーバに実行させるためのプログラムであって、
ソフトウェアを要求する通信装置から送信されてきた認証識別子をポータルサーバへ送信して利用者の認証済みの確認を要求する手順と、
前記ポータルサーバから通知された認証済みの確認の結果が該認証済みの確認の成功を示すものである場合、利用者データベースにて利用者識別情報と対応付けられて記憶されているソフトウェアを前記通信装置へ提供する手順とを実行させる。
【発明の効果】
【００１３】
以上説明したように、本発明においては、パッケージソフトの提供に係る手間を低減し、統一した管理を容易に行うことができる。
【図面の簡単な説明】
【００１４】
【図１】本発明のソフトウェア提供システムの実施の一形態を示す図である。
【図２】図１に示した提供サーバの内部構成の一例を示す図である。
【図３】図２に示した利用者データベースが記憶している利用者識別情報とパスワードとパッケージソフトとの対応付けの一例を示す図である。
【図４】図１に示したポータルサーバの内部構成の一例を示す図である。
【図５】図４に示した統合データベースが記憶している利用者識別情報とパスワードとサーバ識別子との対応付けの一例を示す図である。
【図６】図１に示したポータルサーバに設けられた認証ログの一例を示す図である。
【図７】図１に示したソフトウェア提供システムにおける提供方法のうち、提供サーバを構築する処理の一例を説明するためのシーケンス図である。
【図８】図１に示したソフトウェア提供システムにおける提供方法のうち、顧客情報を更新する処理の一例を説明するためのシーケンス図である。
【図９】図１に示したソフトウェア提供システムにおける提供方法のうち、パッケージソフトの提供の処理の一例を説明するためのシーケンス図である。
【発明を実施するための形態】
【００１５】
以下に、本発明の実施の形態について図面を参照して説明する。
【００１６】
図１は、本発明のソフトウェア提供システムの実施の一形態を示す図である。
【００１７】
本形態は図１に示すように、通信装置１００と、提供サーバ２００−１，２００−２と、ポータルサーバ３００とが、互いに通信ネットワーク４００を介して接続された形態となっている。また、図１に示した形態においては、提供サーバが２つである場合を例に挙げているが、その数は限定しない。
【００１８】
通信装置１００は、利用者が操作する通信装置であり、例えば、パソコンや携帯端末等である。
【００１９】
また、通信装置１００は、表示された認証画面にしたがって行われた利用者の操作に基づいて、情報の入力を受け付ける。また、通信装置１００は、利用者識別情報とパスワードとの入力を受け付けた場合、それらをポータルサーバ３００へ送信する。また、通信装置１００は、ポータルサーバ３００から提供サーバ２００−１，２００−２に接続するためのサーバ識別子（例えば、ＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）やＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレス等の接続先情報）が送信されてきた場合、当該サーバ識別子を宛先として用いて、提供サーバ２００−１，２００−２へ、ポータルサーバ３００から送信されてきた認証識別子と利用者識別情報とを送信する。
【００２０】
この利用者識別情報は、ソフトウェアの提供を利用する利用企業（テナント）にあらかじめ付与されたテナントＩＤ（第１の識別情報）や個人利用者にあらかじめ付与されたユーザＩＤ（第２の識別情報）であっても良く、利用者を識別できるものであれば良い。また、認証識別子については、後述する。また、提供されるソフトウェアは、一般的に利用者が使用する通信端末にインストールされるアプリケーションプログラムや、クラウドサーバにインストールされて通信端末へ提供される（通信端末で使用される）パッケージソフト等である。以下、提供されるソフトウェアが、パッケージソフトである場合を例に挙げて説明する。
【００２１】
提供サーバ２００−１，２００−２は、利用者からパッケージソフトの提供を要求された際に構築されるサーバである。
【００２２】
図２は、図１に示した提供サーバ２００−１の内部構成の一例を示す図である。
【００２３】
図１に示した提供サーバ２００−１には図２に示すように、利用者データベース２０１と、情報送信部２０２と、認証要求部２０３と、提供部２０４とが設けられている。なお、図２には、図１に示した提供サーバ２００−１に設けられた構成要素のうち、本実施の形態に関わる主要な構成要素の一例を示す。また、図１に示した提供サーバ２００−２の内部構成についても、図２に示すものと同様である。
【００２４】
利用者データベース２０１は、利用者識別情報とパスワードと提供するパッケージソフトとをあらかじめ対応付けて記憶する。
【００２５】
図３は、図２に示した利用者データベース２０１が記憶している利用者識別情報とパスワードとパッケージソフトとの対応付けの一例を示す図である。
【００２６】
図２に示した利用者データベース２０１には図３に示すように、利用者識別情報（テナントＩＤおよびユーザＩＤ）とパスワードとパッケージソフト（ソフトＩＤ）とが対応付けられて記憶されている。なお、ソフトＩＤは、パッケージソフトを識別するためのソフト識別情報であって、パッケージソフト自体もソフト識別情報を用いて検索できる状態で利用者データベース２０１に格納されているか、または、提供サーバ２００−１が接続可能な他の装置に格納されている。これらは、提供サーバ２００−１が構築された時に、利用者によって登録されたものである。
【００２７】
例えば、図３に示すように、テナントＩＤ「Ａ０００１」と、ユーザＩＤ「０００１０００１」と、パスワード「ＡＡＡＡ」と、ソフトＩＤ「Ｓ１００」とが対応付けられて記憶されている。これは、テナントＩＤが「Ａ０００１」である企業に所属するユーザＩＤが「０００１０００１」であるユーザのパスワードは「ＡＡＡＡ」であり、当該ユーザに提供されるパッケージソフトのソフトＩＤは「Ｓ１００」であることを示している。また、テナントＩＤ「Ａ０００１」と、ユーザＩＤ「０００２０００２」と、パスワード「ＡＩＡＩ」と、ソフトＩＤ「Ｓ２００」とが対応付けられて記憶されている。これは、テナントＩＤが「Ａ０００１」である企業に所属するユーザＩＤが「０００２０００２」であるユーザのパスワードは「ＡＩＡＩ」であり、当該ユーザに提供されるパッケージソフトのソフトＩＤは「Ｓ２００」であることを示している。
【００２８】
また、利用者データベース２０１は、上述した情報を、利用者識別情報とパスワードとを対応付けて記憶するテーブルと、利用者識別情報とパッケージソフトとを対応付けて記憶するテーブルとに分けて管理するものであっても良い。
【００２９】
情報送信部２０２は、提供サーバ２００−１に接続するためのサーバ識別子と利用者データベース２０１が記憶している利用者識別情報とパスワードとをポータルサーバ３００へ送信する。
【００３０】
認証要求部２０３は、通信装置１００から認証識別子と利用者識別情報とが送信されてきた場合、送信されてきた認証識別子を含んだ、既に通信装置１００がポータルサーバにて認証済みか否かを確認するための認証確認要求をポータルサーバ３００へ送信して、利用者の認証を要求する。
【００３１】
提供部２０４は、ポータルサーバ３００から通知された認証の結果が、その認証の成功を示すものである場合、利用者データベース２０１が、通信装置１００から送信されてきた利用者識別情報と対応付けて記憶しているパッケージソフトを通信装置１００へ提供する。また、提供部２０４は、ポータルサーバ３００から通知された認証の結果が、その認証の失敗を示すものである場合、パッケージソフトを提供せずに、認証に失敗した旨またはパッケージソフトを提供することができない旨を通信装置１００へ通知する。
【００３２】
ポータルサーバ３００は、利用者を認証し、また、提供サーバ２００−１，２００−２を管理する統合サーバである。
【００３３】
図４は、図１に示したポータルサーバ３００の内部構成の一例を示す図である。
【００３４】
図１に示したポータルサーバ３００には図４に示すように、統合データベース３０１と、認証部３０２と、通信部３０３とが設けられている。なお、図３には、図１に示したポータルサーバ３００に設けられた構成要素のうち、本実施の形態に関わる主要な構成要素の一例を示す。
【００３５】
統合データベース３０１は、提供サーバ２００−１，２００−２から送信されてきた利用者識別情報とパスワードとサーバ識別子とを対応付けて記憶する。また、統合データベース３０１は、後述する認証部３０２が生成した認証識別子を記憶しても良い。また、統合データベース３０１は、認証識別子を記憶する際、認証された日時または、当該認証識別子が生成された日時、当該認証識別子を通信装置１００へ送信した日時などを示す日時情報とともに記憶するものであっても良い。また、統合データベース３０１は、認証識別子を、利用者識別情報とパスワードと対応付けて記憶する。
【００３６】
図５は、図４に示した統合データベース３０１が記憶している利用者識別情報とパスワードとサーバ識別子との対応付けの一例を示す図である。
【００３７】
図４に示した統合データベース３０１には図５に示すように、利用者識別情報（テナントＩＤおよびユーザＩＤ）とパスワードとサーバ識別子（サーバＵＲＬ）とが対応付けられて記憶されている。
【００３８】
例えば、図５に示すように、テナントＩＤ「Ａ０００１」と、ユーザＩＤ「０００１０００１」と、パスワード「ＡＡＡＡ」と、サーバＵＲＬ「ｈｔｔｐ：／／ａａａ．ｅｘａｍｐｌｅ．＊＊／＊＊＊」とが対応付けられて記憶されている。これは、テナントＩＤが「Ａ０００１」である企業に所属するユーザＩＤが「０００１０００１」であるユーザのパスワードは「ＡＡＡＡ」であり、当該ユーザがパッケージソフトの提供を受けるために接続する接続先は「ｈｔｔｐ：／／ａａａ．ｅｘａｍｐｌｅ．＊＊／＊＊＊」であることを示している。また、テナントＩＤ「Ａ０００１」と、ユーザＩＤ「０００２０００２」と、パスワード「ＡＩＡＩ」と、サーバＵＲＬ「ｈｔｔｐ：／／ａａａ．ｅｘａｍｐｌｅ．＊＊／＊＊＊」とが対応付けられて記憶されている。これは、テナントＩＤが「Ａ０００１」である企業に所属するユーザＩＤが「０００２０００２」であるユーザのパスワードは「ＡＩＡＩ」であり、当該ユーザがパッケージソフトの提供を受けるために接続する接続先は「ｈｔｔｐ：／／ａａａ．ｅｘａｍｐｌｅ．＊＊／＊＊＊」であることを示している。ここで、図３を用いて説明した提供サーバ２００−１の利用者データベース２０１に記憶されているテナントＩＤ、ユーザＩＤおよびパスワードが、この統合データベース３０１に記憶されている。また、テナントＩＤ「Ｂ０００１」と、ユーザＩＤ「０００３０００３」と、パスワード「ＢＢＢＢ」と、サーバＵＲＬ「ｈｔｔｐ：／／ｂｂｂ．ｅｘａｍｐｌｅ．＊＊／＊＊＊」とが対応付けられて記憶されている。これは、テナントＩＤが「Ｂ０００１」である企業に所属するユーザＩＤが「０００３０００３」であるユーザのパスワードは「ＢＢＢＢ」であり、当該ユーザがパッケージソフトの提供を受けるために接続する接続先は「ｈｔｔｐ：／／ｂｂｂ．ｅｘａｍｐｌｅ．＊＊／＊＊＊」であることを示している。
【００３９】
また、統合データベース３０１は、上述した情報を、利用者識別情報とパスワードとを対応付けて記憶するテーブルと、利用者識別情報とサーバＵＲＬとを対応付けて記憶するテーブルとに分けて管理するものであっても良い。
【００４０】
認証部３０２は、通信装置１００から送信されてきた利用者識別情報およびパスワードと、統合データベース３０１に記憶されている利用者識別情報およびパスワードとをそれぞれ照合して、利用者の認証を行う。認証の方法は言うまでもないが、認証部３０２が、通信装置１００から送信されてきた利用者識別情報と一致する利用者識別情報を統合データベース３０１から検索し、検索した利用者識別情報と対応付けられているパスワードが通信装置１００から送信されてきたパスワードと一致した場合、当該利用者の認証に成功したとするものである。また、認証部３０２は、利用者の認証に成功した場合、当該認証を識別するための認証識別子を生成する。例えば、認証部３０２は、利用者識別情報と、認証した日時（または、認証識別子を生成した日時、通信装置１００へ送信した日時などでもよい）を示す日時情報の組み合わせや利用者識別情報と乱数の組み合わせをハッシュ化して生成する。認証識別子は、他と比較してユニークな情報であれば良い。また、形態としては、クッキーやＵＲＬの引数などを認証識別子としても良い。ここで、認証部３０２は、認証処理が照合した毎に、以前に当該利用者識別情報の利用者に認証識別子を生成したかチェックし、既に認証識別子がある場合、既定の時間内に生成されたものであるか判定し、既定時間内であれば、新たな認証識別子を生成せずに、既にある認証識別子を通信装置１００へ送信しても良く、既定の時間以上前に生成されたものであれば、新たに認証識別子を生成し直しても良い。
【００４１】
また、認証部３０２は、提供サーバ２００−１，２００−２から認証確認要求が送信されてきた場合、送信されてきた認証確認要求に含まれる認証識別子と、統合データベース３０１または認証ログが記憶している認証識別子とを照合する。照合の結果、統合データベース３０１または認証ログが記憶している認証識別子の中に、認証確認要求に含まれる認証識別子がある場合、認証部３０２は、認証識別子を用いた認証に成功したと判定する。また、統合データベース３０１または認証ログに、認証識別子とともに上述した日時情報が記憶されている場合、当該日時情報が示す日時から、提供サーバ２００−１，２００−２から認証識別子が送信されてきた日時までの時間が、あらかじめ設定された時間内である認証識別子に対してのみ、認証部３０２は照合を行うものであっても良い。
【００４２】
通信部３０３は、認証部３０２が、通信装置１００から送信されてきた利用者識別情報およびパスワードを用いた認証に成功した場合、認証部３０２が生成した認証識別子と、統合データベース３０１が当該利用者識別情報に対応付けて記憶しているサーバ識別子とを通信装置１００へ送信する。このとき、通信部３０３は、通信装置１００に対してサーバ識別子に接続をリダイレクトする指示であるリダイレクト指示を送信する。
【００４３】
また、通信部３０３は、認証部３０２が、認証識別子を用いた認証に成功したか、または失敗したかを示す旨（認証の結果）を、当該認証識別子を送信してきた提供サーバ２００−１，２００−２へ通知する。
【００４４】
また、図１に示したポータルサーバ３００に、認証識別子と利用者識別情報と日時情報とを記憶しておくための認証ログを別途設けても良い。
【００４５】
図６は、図１に示したポータルサーバ３００に設けられた認証ログの一例を示す図である。
【００４６】
図１に示したポータルサーバ３００に設けられた認証ログには図６に示すように、利用者識別子であるテナントＩＤおよびユーザＩＤと、認証識別子と、日時情報とが対応付けられて記憶されている。
【００４７】
例えば、図６に示すように、テナントＩＤ「Ａ０００１」と、ユーザＩＤ「０００１０００１」と、認証識別子「ｘｘｙｙｚｚ」と、日時情報「２０１２．７．２５  １４：０７」とが対応付けられて記憶されている。これは、テナントＩＤが「Ａ０００１」である企業に所属するユーザＩＤが「０００１０００１」であるユーザが認証を行うことで認証部３０２が生成した認証識別子が「ｘｘｙｙｚｚ」であり、その認証日時または生成日時もしくは認証識別子を通信装置１００へ送信した送信日時が、２０１２年７月２５日１４時７分であることを示している。また、テナントＩＤ「Ｂ０００１」と、ユーザＩＤ「０００３０００３」と、認証識別子「ｐｐｒｒｔｔ」と、日時情報「２０１２．７．２７  ９：２６」とが対応付けられて記憶されている。これは、テナントＩＤが「Ｂ０００１」である企業に所属するユーザＩＤが「０００３０００３」であるユーザが認証を行うことで認証部３０２が生成した認証識別子が「ｐｐｒｒｔｔ」であり、その認証日時または生成日時もしくは認証識別子を通信装置１００へ送信した送信日時が、２０１２年７月２７日９時２６分であることを示している。
【００４８】
以下に、図１に示したソフトウェア提供システムにおける提供方法について説明する。ここでは、通信装置１００へパッケージソフトを提供するサーバが提供サーバ２００−１である場合を例に挙げて説明する。
【００４９】
まずは、提供サーバ２００−１を構築する処理について説明する。
【００５０】
図７は、図１に示したソフトウェア提供システムにおける提供方法のうち、提供サーバ２００−１を構築する処理の一例を説明するためのシーケンス図である。
【００５１】
まず、テナントの管理者等が、通信装置１００に対して所定の操作を行うことで、テナントＩＤが通信装置１００に入力されると（ステップＳ１）、入力されたテナントＩＤを通信装置１００がサービス提供者へ送信する（ステップＳ２）。すると、提供サーバ２００−１が構築され、当該テナントＩＤを提供サーバ２００−１の利用者データベース２０１が記憶する（ステップＳ３）。
【００５２】
そして、提供サーバ２００−１の情報送信部２０２が、当該テナントＩＤと提供サーバ２００−１のサーバ識別子とを含む設定データをポータルサーバ３００へ送信する（ステップＳ４）。情報送信部２０２が送信した設定データをポータルサーバ３００の通信部３０３が受信すると、受信したテナントＩＤとサーバ識別子とを対応付けて統合データベース３０１が記憶する（ステップＳ５）。
【００５３】
また、通信装置１００に対して利用者が所定の操作を行うことで、顧客情報（テナントＩＤ、ユーザＩＤおよびパスワード）の初期データと、提供を希望するパッケージソフトを識別するソフト識別情報が入力されると、入力された情報を通信装置１００が提供サーバ２００−１へ送信する。すると、提供サーバ２００−１の利用者データベース２０１がそれらを対応付けて記憶する。このとき、利用者データベース２０１は、ソフト識別情報として、例えば、実行ファイルの格納場所およびそのファイル名を記憶する。また、利用者データベース２０１は、当該パッケージソフトでその利用者が利用可能なプログラムや権限などを記憶するものであっても良い。それらの情報が利用者データベース２０１に登録されると、情報送信部２０２は、その初期データ（例えば、利用者識別情報か、利用者識別情報およびパスワードの組）をポータルサーバ３００へ送信する。
【００５４】
情報送信部２０２が送信した初期データをポータルサーバ３００の通信部３０３が受信すると、統合データベース３０１が当該初期データに含まれる顧客情報を、送信してきた提供サーバ２００−１のサーバ識別子に対応する箇所に追加登録する。
【００５５】
次に、顧客情報を更新する処理について説明する。
【００５６】
図８は、図１に示したソフトウェア提供システムにおける提供方法のうち、顧客情報を更新する処理の一例を説明するためのシーケンス図である。
【００５７】
通信装置１００に対して管理者等が所定の操作を行うことで、顧客情報を更新（変更、追加、削除）するための更新情報が入力されると（ステップＳ１１）、入力された更新情報を通信装置１００が提供サーバ２００−１へ送信する（ステップＳ１２）。すると、提供サーバ２００−１の利用者データベース２０１が更新情報に基づいて、記憶（登録）されている情報を更新する（ステップＳ１３）。
【００５８】
そして、その更新の都度（１日毎でもよい）、情報送信部２０２が、その顧客情報の処理命令（例えば、顧客情報追加の場合  ａｄｄ（ｔ＿ｉｄ＝Ａ,ｕ＿ｉ＝００５,ｐｗ＝ａａａ）。以下、顧客情報処理命令）を更新情報としてポータルサーバ３００へ送信する（ステップＳ１４）。
【００５９】
ポータルサーバ３００の通信部３０３が、提供サーバ２００−１から送信された顧客情報処理命令を受信すると、統合データベース３０１がその処理命令に従い、その顧客情報の更新を送信してきた提供サーバ２００−１のサーバ識別子に対応する箇所に対して行う（ステップＳ１５）。
【００６０】
次に、パッケージソフトの提供の処理について説明する。
【００６１】
図９は、図１に示したソフトウェア提供システムにおける提供方法のうち、パッケージソフトの提供の処理の一例を説明するためのシーケンス図である。
【００６２】
利用者がソフトウェアを利用する要求をするために、通信装置１００に対して所定の操作を行う（例えば、Ｗｅｂブラウザで、「ＵＲＬ：ｐｏｒｔａｌ．ｅｘａｍｐｌｅ．＊＊／」を入力する）ことで、ポータルサーバ３００への接続情報であるＵＲＬが入力されると（ステップＳ２１）、通信装置１００がポータルサーバ３００へ認証画面の要求を行う（ステップＳ２２）。
【００６３】
ポータルサーバ３００の通信部３０３は、通信装置１００から認証画面を要求されると、テナントＩＤ、ユーザＩＤおよびパスワードの認証情報を入力する欄が設けられた認証画面表示データを通信装置１００へ送信する（ステップＳ２３）。通信装置１００は、ポータルサーバ３００から送信されてきた認証画面表示データを受信すると、受信した認証画面表示データに基づいて、認証画面を表示する（ステップＳ２４）。
【００６４】
その後、利用者の操作により、表示された認証画面の入力欄に、テナントＩＤ、ユーザＩＤおよびパスワードの認証情報が入力され、認証ボタン（例えば、「ＯＫ」、「入力」、「確定」等）が選択されると（ステップＳ２５）、通信装置１００は、ポータルサーバ３００へ認証情報を送信する（ステップＳ２６）。
【００６５】
通信装置１００から送信されてきた認証情報をポータルサーバ３００の通信部３０３が受信すると、認証部３０２は、受信した認証情報に含まれるテナントＩＤとユーザＩＤとパスワードとの組と、統合データベース３０１に記憶されたテナントＩＤとユーザＩＤとパスワードとの対応付けとを照合して認証処理を行う（ステップＳ２７）。照合の結果、受信した認証情報に含まれるテナントＩＤとユーザＩＤとパスワードとの組と一致する対応付けが統合データベース３０１に記憶されていない場合、通信部３０３は、認証に失敗した旨を示す情報（例えば、エラー表示情報）を通信装置１００へ送信する。一方、照合の結果、受信した認証情報に含まれるテナントＩＤとユーザＩＤとパスワードとの組と一致する対応付けが統合データベース３０１に記憶されている場合、認証部３０２は、認証識別子（例えば、認証情報をハッシュ化するなどしたクッキー）を生成する。また、認証部３０２は、生成した認証識別子を認証ログに利用者識別情報（テナントＩＤとユーザＩＤ）と認証した日時（または認証識別子を生成した日時、認証識別子を送信した日時などでも良い）を示す日時情報とに対応付けて記憶する。または、認証部３０２は、統合データベース３０１に、生成した認証識別子と認証した日時（または認証識別子を生成した日時、などでも良い）を示す日時情報とを利用者識別情報（テナントＩＤおよびユーザＩＤ）と対応付けて記憶する。また、その利用者識別情報に、古い認証識別子と日時情報の組が記憶されていた場合は、それらを最新のものに書き換えても良いし、古いものに追加して記憶していくことで、履歴管理に使用しても良い。
【００６６】
また、認証部３０２は、認証情報に含まれるテナントＩＤと対応付けられて統合データベース３０１に記憶されているサーバ識別子（サーバＵＲＬ）を統合データベース３０１から検索する。通信部３０３は、検索されたサーバ識別子（例えば、ＵＲＬ：ａａａ．ｅｘａｍｐｌｅ．＊＊／）を通信装置１００へ送信することで、当該サーバ識別子への接続をリダイレクトする指示であるリダイレクト指示を通信装置１００に対して行う。そのとき、通信部３０３は、認証識別子も通信装置１００へ送信する（ステップＳ２８）。
【００６７】
通信装置１００は、ポータルサーバ３００から送信されたリダイレクト指示と認証識別子とを受信すると、受信した認証識別子を記憶する。また、通信装置１００は、リダイレクト指示に含まれるサーバ識別子を用いて提供サーバ２００−１に接続（アクセス）し、認証識別子を提供サーバ２００−１へ送信する（ステップＳ２９）。
【００６８】
提供サーバ２００−１の認証要求部２０３が、通信装置１００から送信された認証識別子を受信すると、認証識別子を含む認証確認要求（利用者の認証済みの確認の要求）をポータルサーバ３００へ送信する（ステップＳ３０）。
【００６９】
ポータルサーバ３００の通信部３０３が、提供サーバ２００−１から送信された認証確認要求を受信すると、認証部３０２は、認証確認要求に含まれる認証識別子と、統合データベース３０１または認証ログに記憶されている認証識別子とを照合して認証確認処理を行う（ステップＳ３１）。ここで、統合データベース３０１または認証ログに記憶されている認証識別子が日時情報とともに記憶されている場合、認証部３０２は、統合データベース３０１または認証ログに記憶されている日時情報が示す日時から、認証確認要求を受信した日時までの時間が、所定の時間内であるもののみについて照合を行うものであっても良い。つまり、統合データベース３０１または認証ログに既定時間以内に記憶された認証識別子と一致するかを判定して、認証確認処理を行うものであっても良い。
【００７０】
照合の結果、認証確認要求に含まれる認証識別子と一致する認証識別子が統合データベース３０１または認証ログに記憶されていない場合、認証に失敗した旨を示すエラーを含む認証確認回答を通信部３０３が、提供サーバ２００−１へ送信（通知）する。その後、エラーを受信した提供サーバ２００−１の提供部２０４は、エラーを通信装置１００へ通知する。
【００７１】
一方、照合の結果、認証確認要求に含まれる認証識別子と一致する認証識別子が統合データベース３０１または認証ログに記憶されている場合は、通信部３０３は、統合データベース３０１または認証ログが認証識別子と対応付けて記憶している利用者識別情報（テナントＩＤおよびユーザＩＤ）を含む認証確認回答を、提供サーバ２００−１へ送信（通知）する（ステップＳ３２）。
【００７２】
提供サーバ２００−１は、ポータルサーバ３００から送信された認証確認回答を受信すると、認証確認回答に含まれる利用者識別情報のテナントＩＤとユーザＩＤとの組を、その利用者のプロセス内で使用する環境変数メモリに記憶する。また、提供部２０４は、認証確認回答に含まれる利用者識別情報のテナントＩＤとユーザＩＤとの組と対応付けられて記憶されているソフトＩＤを利用者データベース２０１から読み出す（ステップＳ３３）。そして、提供部２０４は、読み出したソフトＩＤのパッケージソフトを実行する。
【００７３】
パッケージソフトが実行されると、パッケージソフトは、環境変数メモリからテナントＩＤおよびユーザＩＤを読み出し、ソフトウェアが有する機能の中で、その利用者の権限で利用可能なプログラムやデータなどを、利用者データベース２０１を参照して特定し、通信装置１００へ送信することで、当該パッケージソフトを通信装置１００へ提供する（ステップＳ３４）。
【００７４】
このように、本発明においては、クライアントサーバ型のパッケージソフトウェア自身に極力改造を施すことなく、簡易にＳａａＳ（ＡＳＰ）型のソフトウェアとしてネットワークを経由して提供することを可能とする。ポータルサーバ３００は、提供サーバ２００−１，２００−２ごとに点在している利用者データを集約した統合データベース３０１を具備し、サービス提供者は、統合データベース３０１で顧客の一元管理が可能となる。また、統合データベース３０１へのデータ連携用に、顧客データ連携ＡＰＩを提供し、提供サーバ２００−１，２００−２から当該ＡＰＩを呼び出すことにより、データ連携・集約を行う。
【００７５】
また、利用者は、通信装置１００を用いて、提供サーバ２００−１，２００−２へアクセスするのではなく、常に固定のポータルサーバ３００へアクセスして認証を行えば、該当する提供サーバ２００−１，２００−２へ自動的に遷移することが可能となる。
【００７６】
なお、提供されるソフトウェアに関しては、企業向けの業務アプリケーションとして記載したが、特にソフトウェアの種類には限定しない。ただし、クライアントサーバ型のパッケージソフトウェア（例えば、ＥＲＰ（Ｅｎｔｅｒｐｒｉｓｅ  Ｒｅｓｏｕｒｃｅ  Ｐｌａｎｎｉｎｇ）パッケージ）に好適である。
【００７７】
また、例えば、通信装置１００がスマートフォンやタブレット型情報処理装置などで、利用者識別情報がＵＳＩＭ（Ｕｎｉｖｅｒｓａｌ  Ｓｕｂｓｃｒｉｂｅｒ  Ｉｄｅｎｔｉｔｙ  Ｍｏｄｕｌｅ）に記憶されたＵＩＤ（Ｕｓｅｒ  ＩＤ）や電話番号など（パーソナルコンピュータなどであれば、ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスなど）の通信装置が特定できるものであれば、パスワードは必ずしも必要はない。
【００７８】
上述した提供サーバ２００−１，２００−２、ポータルサーバ３００それぞれに設けられた各構成要素が行う処理は、目的に応じてそれぞれ作製された論理回路で行うようにしても良い。また、処理内容を手順として記述したコンピュータプログラム（以下、プログラムと称する）を提供サーバ２００−１，２００−２、ポータルサーバ３００それぞれにて読取可能な記録媒体に記録し、この記録媒体に記録されたプログラムを提供サーバ２００−１，２００−２、ポータルサーバ３００それぞれに読み込ませ、実行するものであっても良い。提供サーバ２００−１，２００−２、ポータルサーバ３００それぞれにて読取可能な記録媒体とは、フロッピー（登録商標）ディスク、光磁気ディスク、ＤＶＤ、ＣＤなどの移設可能な記録媒体の他、提供サーバ２００−１，２００−２、ポータルサーバ３００それぞれに内蔵されたＲＯＭ、ＲＡＭ等のメモリやＨＤＤ等を指す。この記録媒体に記録されたプログラムは、提供サーバ２００−１，２００−２、ポータルサーバ３００それぞれに設けられたＣＰＵ（不図示）にて読み込まれ、ＣＰＵの制御によって、上述したものと同様の処理が行われる。ここで、ＣＰＵは、プログラムが記録された記録媒体から読み込まれたプログラムを実行するコンピュータとして動作するものである。
【００７９】
上記の実施の形態の一部または全部は、以下の付記のようにも記載され得るが、以下には限られない。
（付記１）ソフトウェアを要求する通信装置と、利用者データベースを具備する提供サーバと、統合データベースを具備するポータルサーバとを有するソフトウェア提供システムにおいて、
前記通信装置は、利用者識別情報を前記ポータルサーバへ送信し、前記ポータルサーバから送信されてきた、前記提供サーバに接続するためのサーバ識別子を用いて、前記ポータルサーバから送信されてきた認証識別子を前記提供サーバへ送信し、
前記提供サーバは、前記利用者識別情報と利用者へ提供するソフトウェアとをあらかじめ対応付けて前記利用者データベースに記憶し、前記通信装置から送信されてきた認証識別子を前記ポータルサーバへ送信して利用者の認証済みの確認を要求し、該認証済みの確認の結果が該認証済みの確認の成功を示すものである場合、前記利用者データベースにて前記利用者識別情報と対応付けられて記憶されているソフトウェアを前記通信装置へ提供し、
前記ポータルサーバは、前記利用者識別情報とサーバ識別子とを対応付けて前記統合データベースに記憶し、前記通信装置から送信されてきた利用者識別情報と、前記統合データベースが記憶している利用者識別情報とをもとに照合することで前記利用者の認証を行い、該認証に成功した場合、前記認証識別子を生成し、該認証識別子と、前記統合データベースにて前記利用者識別情報に対応付けられて記憶されているサーバ識別子とを前記通信装置へ送信し、該認証識別子を前記利用者識別情報に対応付けて記憶し、前記提供サーバから前記認証識別子が送信されてきた場合、該送信されてきた認証識別子と前記記憶している認証識別子とを照合することで前記利用者の認証済みの確認を行い、該認証済みの確認の結果を前記提供サーバへ通知することを特徴とするソフトウェア提供システム。
（付記２）前記提供サーバは、前記サーバ識別子と、前記利用者データベースに記憶している前記利用者識別情報とを前記ポータルサーバへ送信し、
前記ポータルサーバは、前記提供サーバから送信されてきたサーバ識別子と利用者識別情報とを対応付けて前記統合データベースに記憶することを特徴とする、付記１に記載のソフトウェア提供システム。
（付記３）前記提供サーバは、パスワードを前記利用者識別情報と対応付けて前記利用者データベースに記憶し、
前記ポータルサーバは、前記パスワードを前記利用者識別情報と対応付けて前記統合データベースに記憶し、前記通信装置から送信されてきた利用者識別情報およびパスワードと、前記統合データベースが記憶している利用者識別情報およびパスワードとをそれぞれ照合することで前記利用者の認証を行うことを特徴とする、付記１または付記２に記載のソフトウェア提供システム。
（付記４）前記提供サーバは、前記利用者データベースに、前記利用者識別情報および前記パスワードの組の少なくとも１つの組の追加、変更または削除による更新があった場合、該利用者識別情報およびパスワードの組を更新するための更新情報を前記ポータルサーバへ送信し、
前記ポータルサーバは、前記提供サーバから送信されてきた更新情報に基づいて、前記統合データベースの前記提供サーバのサーバ識別子に対応付けられた利用者識別情報およびパスワードの組を更新することを特徴とする、付記３に記載のソフトウェア提供システム。
（付記５）前記ポータルサーバは、以前に前記認証識別子を生成済みの場合、既定の時間内に生成されたものであるか判断し、既定の時間内であれば、新たな認証識別子を生成せずに既にある認証識別子を通信装置に送信し、既定の時間以上前に生成されたものであれば、新たに前記認証識別子を生成することを特徴とする、付記１から４のいずれか１項に記載のソフトウェア提供システム。
（付記６）前記ポータルサーバは、前記認証識別子を前記通信装置へ送信した日時から前記提供サーバから前記認証識別子が送信されてきた日時までの時間が、所定の時間内である場合、前記認証識別子の照合を行うことを特徴とする、付記１から５のいずれか１項に記載のソフトウェア提供システム。
（付記７）前記提供サーバは、前記利用者識別情報として、企業にあらかじめ付与された第１の識別情報と個人利用者にあらかじめ付与された第２の識別情報とを用いることを特徴とする、付記１から６のいずれか１項に記載のソフトウェア提供システム。
（付記８）利用者識別情報と、ソフトウェアを提供する提供サーバに接続するためのサーバ識別子とを対応付けて記憶する統合データベースと、
前記ソフトウェアを要求する通信装置から送信されてきた利用者識別情報と、前記統合データベースに記憶されている利用者識別情報とをもとに照合して、利用者の認証を行う認証部と、
前記認証部が前記認証に成功した場合、認証識別子と、前記統合データベースにて前記利用者識別情報に対応付けられて記憶されているサーバ識別子とを前記通信装置へ送信する通信部とを有し、
前記統合データベースは、前記認証識別子を前記利用者識別情報に対応付けて記憶し、
前記認証部は、前記提供サーバから前記認証識別子が送信されてきた場合、該送信されてきた認証識別子と前記統合データベースに記憶されている認証識別子とを照合することで前記利用者の認証済みの確認を行い、
前記通信部は、前記認証部における前記認証識別子を用いた認証済みの確認の結果を前記提供サーバへ通知するポータルサーバ。
（付記９）利用者識別情報と利用者へ提供するソフトウェアとをあらかじめ対応付けて記憶する利用者データベースと、
前記ソフトウェアを要求する通信装置から送信されてきた認証識別子をポータルサーバへ送信して利用者の認証済みの確認を要求する認証要求部と、
前記ポータルサーバから通知された認証済みの確認の結果が該認証済みの確認の成功を示すものである場合、前記利用者データベースにて前記利用者識別情報と対応付けられて記憶されているソフトウェアを前記通信装置へ提供する提供部とを有する提供サーバ。
（付記１０）ポータルサーバの認証方法であって、
利用者識別情報と、ソフトウェアを提供する提供サーバに接続するためのサーバ識別子とを対応付けて統合データベースに記憶する処理と、
前記ソフトウェアを要求する通信装置から送信されてきた利用者識別情報と、前記統合データベースに記憶されている利用者識別情報とをもとに照合して、利用者の認証を行う処理と、
前記認証に成功した場合、認証識別子と、前記統合データベースにて前記利用者識別情報に対応付けられて記憶されているサーバ識別子とを前記通信装置へ送信する処理と、
前記統合データベースに前記認証識別子を前記利用者識別情報に対応付けて記憶する処理と、
前記提供サーバから前記認証識別子が送信されてきた場合、該送信されてきた認証識別子と前記統合データベースに記憶されている認証識別子とを照合することで前記利用者の認証済みの確認を行う処理と、
前記認証識別子を用いた認証済みの確認の結果を前記提供サーバへ通知する処理とを行う認証方法。
（付記１１）提供サーバの提供方法であって、
ソフトウェアを要求する通信装置から送信されてきた認証識別子をポータルサーバへ送信して利用者の認証済みの確認を要求する処理と、
前記ポータルサーバから通知された認証済みの確認の結果が該認証済みの確認の成功を示すものである場合、利用者データベースにて利用者識別情報と対応付けられて記憶されているソフトウェアを前記通信装置へ提供する処理とを行う提供方法。
（付記１２）ポータルサーバに、
利用者識別情報と、ソフトウェアを提供する提供サーバに接続するためのサーバ識別子とを対応付けて統合データベースに記憶する手順と、
前記ソフトウェアを要求する通信装置から送信されてきた利用者識別情報と、前記統合データベースに記憶されている利用者識別情報とをもとに照合して、利用者の認証を行う手順と、
前記認証に成功した場合、認証識別子と、前記統合データベースにて前記利用者識別情報に対応付けられて記憶されているサーバ識別子とを前記通信装置へ送信する手順と、
前記統合データベースに前記認証識別子を前記利用者識別情報に対応付けて記憶する手順と、
前記提供サーバから前記認証識別子が送信されてきた場合、該送信されてきた認証識別子と前記統合データベースに記憶されている認証識別子とを照合することで前記利用者の認証済みの確認を行う手順と、
前記認証識別子を用いた認証済みの確認の結果を前記提供サーバへ通知する手順とを実行させるためのプログラム。
（付記１３）提供サーバに、
ソフトウェアを要求する通信装置から送信されてきた認証識別子をポータルサーバへ送信して利用者の認証済みの確認を要求する手順と、
前記ポータルサーバから通知された認証済みの確認の結果が該認証済みの確認の成功を示すものである場合、利用者データベースにて利用者識別情報と対応付けられて記憶されているソフトウェアを前記通信装置へ提供する手順とを実行させるためのプログラム。
【符号の説明】
【００８０】
１００    通信装置
２００−１，２００−２    提供サーバ
２０１    利用者データベース
２０２    情報送信部
２０３    認証要求部
２０４    提供部
３００    ポータルサーバ
３０１    統合データベース
３０２    認証部
３０３    通信部
４００    通信ネットワーク
【図１】
0005645891.tif 000002
【図２】
0005645891.tif 000003
【図３】
0005645891.tif 000004
【図４】
0005645891.tif 000005
【図５】
0005645891.tif 000006
【図６】
0005645891.tif 000007
【図７】
0005645891.tif 000008
【図８】
0005645891.tif 000009
【図９】
0005645891.tif 000010