(57)【特許請求の範囲】
【請求項１】
ユーザが複数のウェブサイトの１つで認証を受けるだけで前記ユーザの他のウェブサイトへのアクセスを許容するシングルサインオンシステムであって、
データ記憶手段と、第１サーバと、第２サーバとが互いにイントラネットを介して接続され、前記ユーザが使用するユーザコンピュータが前記第１サーバ及び前記第２サーバとインターネットを介して接続され、
前記データ記憶手段は、ユーザごとに付与される個人顧客コードと第１認証用データ又は第２認証用データとを関連づけして記憶する手段であり、
前記第１サーバは、
前記ユーザコンピュータから前記インターネットを介して前記第１ウェブサイトへのアクセス要求を受信したときには、今回の前記ユーザコンピュータとのセッション中に既に前記第１サーバによる前記第１認証用データを用いた前記ユーザコンピュータの認証確認が済んでいるか否かを判定し、
前記ユーザコンピュータの認証確認が済んでいたならば、前記アクセス要求に応じたウェブページを前記ユーザコンピュータに前記インターネットを介して送信する一方、
前記ユーザコンピュータの認証確認が済んでいないならば、前記ユーザコンピュータに前記インターネットを介して前記第１ウェブサイトに関連するクッキーであって個人顧客コード、有効期限及び前記第２サーバによって付されたセッションＩＤ（前記第２サーバによってセッションごとに付され、前記第２サーバと前記ユーザコンピュータとの接続が切断されると前記第２サーバによって無効化されるＩＤ）を含むクッキーを要求し、その要求に応じた応答を前記ユーザコンピュータから前記インターネットを介して受信したあと、その応答に前記クッキーが含まれているか否かを判定し、
前記応答に前記クッキーが含まれていなかったならば、前記第１認証用データの入力を要求する画面を前記ユーザコンピュータに前記インターネットを介して送信し、前記ユーザコンピュータから前記インターネットを介して前記第１認証用データが入力された画面を受信し、該受信した第１認証用データが前記データ記憶手段に記憶されているか否かを判定し、記憶されていなかったならばエラーメッセージを前記ユーザコンピュータに前記インターネットを介して送信し、記憶されていたならば前記第１認証用データに対応する個人顧客コードを前記記憶手段から読み出し、読み出した個人顧客コードに新たな有効期限と新たなセッションＩＤ（前記第１サーバによってセッションごとに付され、前記第１サーバと前記ユーザコンピュータとの接続が切断されると前記第１サーバによって無効化されるＩＤ）を付けて暗号化し、暗号化した個人顧客コード、有効期限及びセッションＩＤを含むクッキーを作成し、該作成したクッキーを前記アクセス要求に応じたウェブページと共に前記ユーザコンピュータに前記インターネットを介して送信し、
前記応答にクッキーが含まれていたならば、該クッキーに含まれる暗号化データを復号化して個人顧客コード、有効期限及び前記第２サーバによって付されたセッションＩＤとし、復号化した個人顧客コードが有効か否かをその有効期限内で且つ前記第２サーバによって付されたセッションＩＤが無効化されていないという条件を満たすか否かによって判定し、前記個人顧客コードが有効だったときには前記アクセス要求に応じたウェブページをユーザコンピュータへ送信し、個人顧客コードが有効でなかったときには第１認証用データの入力を要求する画面を前記ユーザコンピュータに前記インターネットを介して送信し、前記ユーザコンピュータから第１認証用データが入力された画面を受信したならば、その第１認証用データが前記データ記憶手段に記憶されているか否かを判定し、記憶されていなかったならばエラーメッセージを前記インターネットを介して前記ユーザコンピュータへ送信し、記憶されていたならば前記第１認証用データに対応する個人顧客コードを前記データ記憶手段から読み出し、読み出した個人顧客コードに新たな有効期限と新たなセッションＩＤを付けて暗号化し、暗号化した個人顧客コード、有効期限及びセッションＩＤを含むクッキーを作成し、該作成したクッキーと前記アクセス要求に応じてウェブページとを前記ユーザコンピュータへ前記インターネットを介して送信するものであり、
前記第２サーバは、
前記ユーザコンピュータから前記インターネットを介して前記第２ウェブサイトへのアクセス要求を受信したときには、今回の前記ユーザコンピュータとのセッション中に既に前記第２サーバによる前記第２認証用データを用いた前記ユーザコンピュータの認証確認が済んでいるか否かを判定し、
前記ユーザコンピュータの認証確認が済んでいたならば、前記アクセス要求に応じたウェブページを前記ユーザコンピュータに前記インターネットを介して送信する一方、
前記ユーザコンピュータの認証確認が済んでいないならば、前記ユーザコンピュータに前記インターネットを介して前記第２ウェブサイトに関連するクッキーであって個人顧客コード、有効期限及び前記第１サーバによって付されたセッションＩＤ（前記第２サーバによってセッションごとに付され、前記第２サーバと前記ユーザコンピュータとの接続が切断されると前記第２サーバによって無効化されるＩＤ）を含むクッキーを要求し、その要求に応じた応答を前記ユーザコンピュータから前記インターネットを介して受信したあと、その応答に前記クッキーが含まれているか否かを判定し、
前記応答に前記クッキーが含まれていなかったならば、前記第２認証用データの入力を要求する画面を前記ユーザコンピュータに前記インターネットを介して送信し、前記ユーザコンピュータから前記インターネットを介して前記第２認証用データが入力された画面を受信し、該受信した第２認証用データが前記データ記憶手段に記憶されているか否かを判定し、記憶されていなかったならばエラーメッセージを前記ユーザコンピュータに前記インターネットを介して送信し、記憶されていたならば前記第２認証用データに対応する個人顧客コードを前記記憶手段から読み出し、読み出した個人顧客コードに新たな有効期限と新たなセッションＩＤ（前記第２サーバによってセッションごとに付され、前記第２サーバと前記ユーザコンピュータとの接続が切断されると前記第２サーバによって無効化されるＩＤ）を付けて暗号化し、暗号化した個人顧客コード、有効期限及びセッションＩＤを含むクッキーを作成し、該作成したクッキーを前記アクセス要求に応じたウェブページと共に前記ユーザコンピュータに前記インターネットを介して送信し、
前記応答にクッキーが含まれていたならば、該クッキーに含まれる暗号化データを復号化して個人顧客コード、有効期限及び前記第１サーバによって付されたセッションＩＤとし、復号化した個人顧客コードが有効か否かをその有効期限内で且つ前記第１サーバによって付されたセッションＩＤが無効化されていないという条件を満たすか否かによって判定し、前記個人顧客コードが有効だったときには前記アクセス要求に応じたウェブページをユーザコンピュータへ送信し、個人顧客コードが有効でなかったときには第２認証用データの入力を要求する画面を前記ユーザコンピュータに前記インターネットを介して送信し、前記ユーザコンピュータから第２認証用データが入力された画面を受信したならば、その第２認証用データが前記データ記憶手段に記憶されているか否かを判定し、記憶されていなかったならばエラーメッセージを前記インターネットを介して前記ユーザコンピュータへ送信し、記憶されていたならば前記第２認証用データに対応する個人顧客コードを前記データ記憶手段から読み出し、読み出した個人顧客コードに新たな有効期限と新たなセッションＩＤを付けて暗号化し、暗号化した個人顧客コード、有効期限及びセッションＩＤを含むクッキーを作成し、該作成したクッキーと前記アクセス要求に応じてウェブページとを前記ユーザコンピュータへ前記インターネットを介して送信する、
シングルサインオンシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、シングルサインオンシステム、そのプログラム及びその方法に関する。
【０００２】
【従来の技術】
従来、１つのウェブサイトにユーザがアクセスしたあと別のウェブサイトにアクセスする場合、各ウェブサイトにアクセスするごとに認証用データとしてユーザＩＤとパスワードなどの認証に必要な情報を送信し認証確認してもらうというログイン作業がユーザに要求された。しかしながら、各ウェブサイトにアクセスするごとにログイン作業を行うことはユーザにとって煩雑であることから、１つのウェブサイトで認証を受けるだけで他のウェブサイトへのアクセスが可能となるシングルサインオンシステムが開発されている。
【０００３】
例えば、シングルサインオンシステムとしては、次のようなシステムが考えられる。即ち、複数のウェブサイトが１人のユーザに対して共通の認証用データで認証確認する場合、そのユーザが１つのウェブサイトを運営するサーバに認証用データを送信し、そのサーバが認証確認できたときにそのユーザのコンピュータに採番されたＩＤを含んだクッキーを送信し、ユーザのコンピュータがそのクッキーを所定のフォルダに保存する。このクッキーに含まれるＩＤと認証用データとがデータベースとしてサーバ側に記憶される。その後、同じユーザが別のウェブサイトにアクセス要求するとき先のクッキーも併せてウェブサイト側へ送信する。そして、ウェブサイトを運営するサーバが前出のデータベースからそのクッキーに含まれるＩＤに対応する認証用データを割り出して認証確認を行う。この結果、ユーザは１回のログイン作業で複数のウェブサイトにアクセスすることができる。
【０００４】
【発明が解決しようとする課題】
しかしながら、上述したシングルサインオンシステムでは、クッキーに含まれるＩＤごとに一つの認証用データが対応しているため、複数のウェブサイトが１人のユーザに対して共通の認証用データで認証確認する場合にはシングルサインオンを実現できるが、複数のウェブサイトが１人のユーザに対して異なる認証用データで認証確認する場合にはシングルサインオンシステムを採用することはできなかった。
【０００５】
本発明はこのような課題に鑑みなされたものであり、各ウェブサイトが１人のユーザに対して異なる認証用データで認証確認する場合であってもシングルサインオンを実現できるシングルサインオンシステム及びその方法を提供することを目的の一つとする。また、そのようなシングルサインオンを実現させるためのプログラムを提供することを目的の一つとする。
【０００６】
【課題を解決するための手段およびその作用・効果】
上述の目的を達成するため、本発明の第１は、ユーザが複数のウェブサイトの１つで認証を受けるだけで前記ユーザの他のウェブサイトへのアクセスを許容するシングルサインオンシステムであって、
第１ウェブサイトを運営し第１認証用データによる認証確認後に前記第１ウェブサイトへのアクセスを許容する第１サーバと、
第２ウェブサイトを運営し第２認証用データによる認証確認後に前記第２ウェブサイトへのアクセスを許容する第２サーバと、
ユーザごとに付与される個人顧客コードと前記第１認証用データ又は前記第２認証用データとを関連づけして記憶するデータ記憶手段と
を備え、
前記第１サーバ及び前記第２サーバは、
前記ユーザのコンピュータから自己のウェブサイトへのアクセス要求があったときに該ユーザのコンピュータに前記個人顧客コードが保存されていなかったときには、前記ユーザのコンピュータに自己の認証用データを要求し、その後前記ユーザのコンピュータから受信した認証用データによる認証確認後、前記ユーザのコンピュータの前記ウェブサイトへのアクセスを許容すると共に前記認証用データに関連付けされた前記個人顧客コードを前記データ記憶手段から読み出して前記ユーザのコンピュータが保存可能な形式で前記ユーザのコンピュータへ送信し、
前記ユーザのコンピュータから自己のウェブサイトへのアクセス要求があったときに該ユーザのコンピュータに前記個人顧客コードが保存されていたときには、自己の認証用データを要求することなく前記ユーザのコンピュータの前記ウェブサイトへのアクセスを許容する
ものである。
【０００７】
このシングルサインオンシステムでは、第１サーバ及び第２サーバは、ユーザのコンピュータから自己のウェブサイトへのアクセス要求があったときに個人顧客コードがそのユーザのコンピュータに保存されていたときには、既に第１及び第２サーバのいずれかで認証確認されたことを意味することから、自己の認証用データを要求することなくそのユーザのコンピュータの自己のウェブサイトへのアクセスを許容する。つまり、そのユーザのコンピュータに保存されていた個人顧客コードに対応する認証用データによってアクセスを許容するか否かを判定するのではなく、その個人顧客コードがユーザのコンピュータに保存されているか否かによってアクセスを許容するか否かを判定するため、第１認証用データと第２認証用データとが異なっていてもシングルサインオンが可能となる。したがって、各ウェブサイトが１人のユーザに対して異なる認証用データで認証確認する場合であってもシングルサインオンを実現することができる。なお、第１及び第２ウェブサイトは異なるウェブサイトであるが、第１及び第２サーバは異なるサーバであってもよいし同一のサーバであってもよい（以下同じ）。また、個人顧客コードと第１認証用データとを関連づけして記憶するデータ記憶手段と、個人顧客コードと第２認証用データとを関連づけして記憶するデータ記憶手段とは、同じデータ記憶手段であってもよいし異なるデータ記憶手段であってもよい（以下同じ）。
【０００８】
本発明の第１のシングルサインオンシステムにおいて、前記個人顧客コードは、このシングルサインオンシステム以外の第三者にとって無意味なコードとしてもよい。こうすれば、個人顧客コードが漏洩したとしてもユーザに関する情報は保護される。
【０００９】
本発明の第１のシングルサインオンシステムにおいて、前記個人顧客コードは、前記ユーザのコンピュータのディスクではなくメモリに保存可能な形式で前記ユーザのコンピュータへ送信されてもよい。こうすれば、個人顧客コードはハードディスク等のディスクではなくＲＡＭ等のメモリに保存されるため、いわゆる「なりすまし」（その個人顧客コードを持つユーザ以外の者がそのユーザになりすます行為）の防止に効果的である。
【００１０】
本発明の第１のシングルサインオンシステムにおいて、前記個人顧客コードは、セッション中のみ有効としてもよい。こうすれば、個人顧客コードはユーザのコンピュータと第１サーバ又は第２サーバとの接続が維持されている間のみ有効なため、いわゆる「なりすまし」の防止に効果的である。
【００１１】
本発明の第１のシングルサインオンシステムにおいて、前記個人顧客コードは、前記ユーザのコンピュータが保存可能で且つ有効期限付きの形式で前記ユーザのコンピュータへ送信されてもよい。こうすれば、第１サーバ及び第２サーバはユーザのコンピュータに有効期限内の個人顧客コードが保存されていたときにはそのままアクセスを許容し、有効期限切れの個人顧客コードが保存されていたときにはアクセスを直ちに許容しないようにできるため、いわゆる「なりすまし」の防止に効果的である。また、前記個人顧客コードは、前記ユーザのコンピュータが保存可能で且つ有効期限設定可能な形式で前記ユーザのコンピュータへ送信されてもよい。こうすれば、有効期限を設定するかしないかは任意となり、有効期限を設定したときには上述した作用効果を奏することになる。
【００１２】
本発明の第１のシングルサインオンシステムにおいて、前記第１サーバ及び前記第２サーバは、前記ユーザのコンピュータが保存可能な形式としてクッキーを利用してもよい。こうすれば、このシステムを比較的容易に実現できる。
【００１３】
本発明の第１のシングルサインオンシステムにおいて、前記第１サーバ及び前記第２サーバは、前記個人顧客コードを前記ユーザのコンピュータへ送信する際には前記個人顧客コードを暗号化して前記ユーザのコンピュータへ送信し、前記ユーザのコンピュータから前記個人顧客コードを取得する際には前記暗号化された個人顧客コードを取得したあと復号化してもよい。こうすれば、個人顧客コードは暗号化された状態で送受信されるため、万一漏洩したとしても秘匿性が高い。
【００１４】
本発明の第２は、１又は複数のコンピュータを、本発明の第１のシングルサインオンシステムにおける前記第１サーバ及び前記第２サーバとして機能させるためのシングルサインオン用プログラムである。このプログラムを１又は複数のコンピュータに実行させれば、本発明の第１と同様、各ウェブサイトが１人のユーザに対して異なる認証用データで認証確認する場合であってもシングルサインオンを実現することができる。このシングルサインオン用プログラムは、コンピュータが読み取り可能な記録媒体（例えばハードディスク、ＲＯＭ、ＦＤ、ＣＤ、ＤＶＤなど）に記録されていてもよいし、伝送媒体（インターネットやＬＡＮなどの通信網）を介して配信されてもよいし、その他どのような形で授受されてもよい。
【００１５】
本発明の第３は、ユーザが複数のウェブサイトの１つで認証を受けるだけで前記ユーザの他のウェブサイトへのアクセスを許容するシングルサインオン方法であって、
第１ウェブサイトを運営し第１認証用データによる認証確認後に前記第１ウェブサイトへのアクセスを許容する第１サーバと、
第２ウェブサイトを運営し第２認証用データによる認証確認後に前記第２ウェブサイトへのアクセスを許容する第２サーバと、
ユーザごとに付与される個人顧客コードと前記第１認証用データ又は前記第２認証用データとを関連づけして記憶するデータ記憶手段と
を備えたシステムを用い、
前記第１サーバ及び前記第２サーバは、
前記ユーザのコンピュータから自己のウェブサイトへのアクセス要求があったときに該ユーザのコンピュータに前記個人顧客コードが保存されていなかったときには、前記ユーザのコンピュータに自己の認証用データを要求し、その後前記ユーザのコンピュータから受信した認証用データによる認証確認後、前記ユーザのコンピュータの前記ウェブサイトへのアクセスを許容すると共に前記認証用データに関連付けされた前記個人顧客コードを前記データ記憶手段から読み出して前記ユーザのコンピュータが保存可能な形式で前記ユーザのコンピュータへ送信し、
前記ユーザのコンピュータから自己のウェブサイトへのアクセス要求があったときに該ユーザのコンピュータに前記個人顧客コードが保存されていたときには、自己の認証用データを要求することなく前記ユーザのコンピュータの前記ウェブサイトへのアクセスを許容する
ものである。
【００１６】
このシングルサインオン方法によれば、本発明の第１と同様、各ウェブサイトが１人のユーザに対して異なる認証用データで認証確認する場合であってもシングルサインオンを実現することができる。
【００１７】
このシングルサインオン方法において、前記個人顧客コードは、このシングルサインオンシステム以外の第三者にとって無意味なコードとしてもよく、こうすれば、個人顧客コードが漏洩したとしてもユーザに関する情報は保護される。また、前記個人顧客コードは、前記ユーザのコンピュータのディスクではなくメモリに保存可能な形式で前記ユーザのコンピュータへ送信されてもよく、こうすれば、個人顧客コードはハードディスク等のディスクではなくＲＡＭ等のメモリに保存されるため、いわゆる「なりすまし」の防止に効果的である。更に、前記個人顧客コードは、セッション中のみ有効としてもよく、こうすれば、個人顧客コードはユーザのコンピュータと第１サーバ又は第２サーバとの接続が維持されている間のみ有効なため、いわゆる「なりすまし」の防止に効果的である。更にまた、前記個人顧客コードは、前記ユーザのコンピュータが保存可能で且つ有効期限付きの形式で前記ユーザのコンピュータへ送信されてもよく、こうすれば、第１サーバ及び第２サーバはユーザのコンピュータに有効期限内の個人顧客コードが保存されていたときにはそのままアクセスを許容し、有効期限切れの個人顧客コードが保存されていたときにはアクセスを直ちに許容しないようにできるため、いわゆる「なりすまし」の防止に効果的である。そしてまた、前記第１サーバ及び前記第２サーバは、前記ユーザのコンピュータが保存可能な形式としてクッキーを利用してもよく、こうすれば、このシステムを比較的容易に実現できる。そして更に、前記第１サーバ及び前記第２サーバは、前記個人顧客コードを前記ユーザのコンピュータへ送信する際には前記個人顧客コードを暗号化して前記ユーザのコンピュータへ送信し、前記ユーザのコンピュータから前記個人顧客コードを取得する際には前記暗号化された個人顧客コードを取得したあと復号化してもよく、こうすれば、個人顧客コードは暗号化された状態で送受信されるため、万一漏洩したとしても秘匿性が高い。
【００１８】
【発明の実施の形態】
次に、本発明の実施の形態を図面に基づいて説明する。図１は、本実施形態のシングルサインオンシステム１０の概略構成を示す説明図である。
【００１９】
シングルサインオンシステム１０は、第１ウェブサーバ１２と、第２ウェブサーバ１４と、認証用ＤＢ（ＤＢはデータベースの略、以下同じ）を記憶する記憶装置１６とから構成されている。第１ウェブサーバ１２と第２ウェブサーバ１４と記憶装置１６とはイントラネット１７を介して通信可能な状態で接続され、第１ウェブサーバ１２と第２ウェブサーバ１４とはインターネット１８を介してユーザコンピュータ４０と通信可能な状態で接続されている。なお、ユーザコンピュータ４０はインターネットに接続可能なコンピュータであり多数存在するが、本実施形態では便宜上、特定の一つのユーザコンピュータ４０をとり上げて説明する。
【００２０】
第１ウェブサーバ１２は、第１ウェブサイトを運営し、ユーザコンピュータ４０から受信した第１認証用データによる認証確認後にユーザコンピュータ４０の第１ウェブサイトへのアクセスを許容するサーバである。ここでは、図２に示すように、第１ウェブサイトへログインする際の第１認証用データであるユーザＩＤ及びパスワードをそれぞれ「○○○」及び「□□□」とする。
【００２１】
第２ウェブサーバ１４は、第２ウェブサイトを運営し、ユーザコンピュータ４０から受信した第２認証用データによる認証確認後にユーザコンピュータ４０の第２ウェブサイトへのアクセスを許容するサーバである。ここでは、図２に示すように、第２ウェブサイトへログインする際の第２認証用データであるユーザＩＤ及びパスワードをそれぞれ「△△△」及び「▽▽▽」とする。
【００２２】
記憶装置１６は、認証用ＤＢが記憶されている。この認証用ＤＢは、図２に示すように、ユーザコンピュータ４０を利用するユーザごとに付与される個人顧客コードと、第１ウェブサイトへログインする際に必要となる第１認証用データと、第２ウェブサイトへログインする際に必要となる第２認証用データとを関連づけしたものである。この認証用ＤＢには、個人顧客コードに対応付ける形式で、そのユーザの氏名、住所、電話番号、電子メールアドレスなどの個人情報も記憶されている。また、個人顧客コードは、ユーザがユーザコンピュータ４０を介して第１ウェブサイト又は第２ウェブサイトでユーザＩＤとパスワードを設定する際に第１ウェブサーバ１２又は第２ウェブサーバ１４により自動発番されるコードであり、この認証用ＤＢを参照しない限り第三者にとって無意味なコードである。
【００２３】
ユーザコンピュータ４０は、周知の汎用パソコンであり、インストールされたウェブブラウザによりインターネットを介して第１ウェブサーバ１２及び第２ウェブサーバ１４と要求送信・応答受信を行い、第１ウェブサイト又は第２ウェブサイトのウェブページを閲覧する。
【００２４】
次に、シングルサインオンシステム１０の動作について、図３に基づいて説明する。図３は、第１ウェブサーバ１２及び第２ウェブサーバ１４で実行される要求応答処理のフローチャートである。要求応答プログラムは、第１ウェブサーバ１２及び第２ウェブサーバ１４のＨＤＤにインストールされているか又は図示しないアプリケーションサーバに格納されていて各サーバ１２，１４に必要に応じて提供される。なお、以下には第１ウェブサーバ１２の動作として説明するが、第２ウェブサーバ１４の動作についても同様である。
【００２５】
第１ウェブサーバ１２は、所定タイミングごとに要求応答プログラムを読み出して要求応答処理を実行する。この要求応答処理が開始されると、第１ウェブサーバ１２は、まず、ユーザコンピュータ４０からインターネット１８を介してアクセス要求を受信したか否かを判定する（ステップＳ１００）。そして、アクセス要求を受信していないときには、そのままこの要求応答処理を終了し、アクセス要求を受信したときには、このセッション中に既に認証用データによるユーザコンピュータ４０の認証確認が済んでいるか否かを判定する（ステップＳ１１０）。そして、認証確認済みのときには、ステップＳ１００で受信したアクセス要求に応じたウェブページをユーザコンピュータ４０に送信し（ステップＳ２３０）、認証確認が済んでいないときには、ユーザコンピュータ４０にこの第１ウェブサイトに関連するクッキーを要求し（ステップＳ１２０）、その要求に応じた応答をユーザコンピュータ４０から受信したあとその応答にクッキーが含まれているか否かを判定する（ステップＳ１３０）。
【００２６】
そして、クッキーが含まれていなかったときには、第１認証用データをユーザコンピュータ４０に要求する（ステップＳ１４０）。即ち、ユーザＩＤの入力欄とパスワードの入力欄が設けられたログイン画面をユーザコンピュータ４０に送信する。その後、第１認証用データをユーザコンピュータ４０から受信する（ステップＳ１５０）。即ち、各入力欄にユーザＩＤ及びパスワードが入力されたログイン画面をユーザコンピュータ４０から受信する。続いて、受信した第１認証用データが記憶装置１６に記憶されている認証用ＤＢに登録されているか否かを判定し（ステップＳ１６０）、登録されていないときにはエラーメッセージ（例えば「入力されたユーザＩＤとパスワードが正しくありません。」など）をユーザコンピュータ４０へ送信し（ステップＳ１７０）、この要求応答処理を終了する。一方、受信した第１認証用データが認証用ＤＢに登録されていたときには、その第１認証用データに対応する個人顧客コードを認証用ＤＢから読み出し（ステップＳ１８０）、読み出した個人顧客コードを有効期限とセッションＩＤを付けて暗号化する（ステップＳ１９０）。ここで、セッションＩＤは、セッションごとに付与される連番である。次いで、暗号化した個人顧客コード、有効期限及びセッションＩＤを含むクッキーを作成し（ステップＳ１９５）、ステップＳ１００で受信したアクセス要求に応じたウェブページと共にこのクッキーをユーザコンピュータ４０へ送信し（ステップＳ２００）、この要求応答処理を終了する。すると、ユーザコンピュータ４０はこのクッキーを受信して所定の保存場所に保存する。なお、セッションＩＤはユーザコンピュータ４０との接続が切断されるごとに第１ウェブサーバ１２において無効化されるＩＤである。
【００２７】
さて、ステップＳ１３０において、ユーザコンピュータ４０から受信したデータにクッキーが含まれていたときにはこのクッキーに含まれる暗号化データを復号化して個人顧客コード、有効期限及びセッションＩＤとし（ステップＳ２１０）、復号化した個人顧客コードが有効か否かを判定する（ステップＳ２２０）。この判定は、復号化したデータに含まれる有効期限やセッションＩＤに基づいて行う。具体的には、有効期限内で且つセッションＩＤが無効化されていないときには個人顧客コードが有効、それ以外の時には個人顧客コードが無効と判定する。そして、個人顧客コードが有効でなかったときには、前述したステップＳ１４０以下の処理を行い、一方、個人顧客コードが有効だったときには、第１認証用データをユーザコンピュータ４０に要求することなく、ステップＳ１００で受信したアクセス要求に応じたウェブページをユーザコンピュータ４０へ送信し（ステップＳ２３０）、この要求応答処理を終了する。
【００２８】
次に、ユーザコンピュータ４０が最初に第１ウェブサイトにアクセスし、第１ウェブサーバ１２とのセッション中に第２ウェブサイトにアクセスする場合について図３及び図４に基づいて説明する。図４は、要求応答の信号のやり取りを示す説明図である。ユーザコンピュータ４０が最初に第１ウェブサイトにアクセスすると、第１ウェブサーバ１２は、図３の要求応答処理においてステップＳ１００でアクセス要求ありと判定し、ステップＳ１１０で認証確認未完と判定し、ステップＳ１３０でユーザコンピュータ４０からクッキーを取得不可と判定し、ステップＳ１４０〜Ｓ１６０で第１認証用データの要求送信・応答受信と受信した第１認証用データに基づく認証確認とを行い、ステップＳ１８０〜Ｓ２００で第１認証用データに関連づけされた個人顧客コードに有効期限とセッションＩＤを付けて暗号化しクッキーを作成し、そのクッキーをウェブページと共にユーザコンピュータ４０へ送信する。その後、セッション中にユーザコンピュータ４０が第１ウェブサイトへ各種のウェブページのアクセス要求をするたびに、第１ウェブサーバ１２はステップＳ１００でアクセス要求ありと判定し、ステップＳ１１０で認証確認済みと判定し、ステップＳ２３０でウェブページをユーザコンピュータ４０へ送信する。
【００２９】
その後、ユーザコンピュータ４０が第１ウェブサーバ１２とのセッション中に第２ウェブサイトにアクセスすると、第２ウェブサーバ１４は、図３の要求応答処理においてステップＳ１００でアクセス要求ありと判定し、ステップＳ１１０で認証確認未完（第２ウェブサーバ１４ではステップＳ１６０の認証確認が行われていないから）と判定し、ステップＳ１３０でユーザコンピュータ４０からクッキー（第１ウェブサーバ１２がユーザコンピュータ４０に送ったクッキー）を取得し、ステップＳ２２０でクッキーに含まれていた個人顧客コードは有効と判定し、ステップＳ２３０でウェブページをユーザコンピュータ４０へ送信する。つまり、第２ウェブサーバ１４では認証確認を行うことなくユーザコンピュータ４０のアクセスが許容され、シングルサインオンが実現される。
【００３０】
以上詳述した本実施形態によれば、第１ウェブサーバ１２及び第２ウェブサーバ１４は有効な個人顧客コードがユーザコンピュータ４０に保存されているか否かによってアクセスを許容するか否かを判定するため、第１認証用データと第２認証用データとが異なっていてもシングルサインオンが可能となる。したがって、各ウェブサイトが１人のユーザに対して異なる認証用データで認証確認する場合であってもシングルサインオンを実現することができる。
【００３１】
また、個人顧客コードは、暗号化された状態で送受信されるため万一漏洩したとしても秘匿性が高いし、シングルサインオンシステム１０やそのユーザ以外の第三者にとっては無意味なコードであるため万一暗号が解読されたとしてもユーザに関する情報（個人情報等）まで漏れることはない。
【００３２】
更に、個人顧客コードは、▲１▼セッション中のみ有効であること、▲２▼個人顧客コードは有効期限付きの形式でユーザコンピュータ４０へ送信され、有効期限切れの個人顧客コードが保存されていたときには第１ウェブサーバ１２及び第２ウェブサーバ１４がアクセスを直ちに許容しないことから、いわゆる「なりすまし」の防止に効果的である。
【００３３】
なお、本発明は上述した実施形態に何ら限定されるものではなく、本発明の技術的範囲に属する限り種々の態様で実施できることはいうまでもない。
【００３４】
例えば、上述した実施形態において、個人顧客コードは、ユーザコンピュータ４０のディスクではなくＲＡＭに保存可能な形式でユーザコンピュータ４０へ送信されてもよい。こうすれば、いわゆる「なりすまし」の防止により効果的となる。
【００３５】
また、上述した実施形態の図４において、ユーザコンピュータ４０は第２認証用データが未設定であっても第２ウェブサイトへシングルサインオンによりアクセスすることができる。このような場合、第２ウェブサーバ１４がユーザコンピュータ４０の第２認証用データつまりユーザＩＤとパスワードを自動設定してユーザコンピュータ４０に送ってもよい。なお、第１又は第２ウェブサイトの認証方法はユーザＩＤ、パスワードの入力に限る必要はない。
【００３６】
更に、上述した実施形態において、個人顧客コードをクッキーとして送受信する代わりに、個人顧客コードにセッション中のみ有効な臨時ＩＤを付与し、その臨時ＩＤをクッキーとして送受信してもよい。個人顧客コードはユーザごとに付与されるコードであり継続して使用されるコードであるため、第三者にとって無意味なコードであるとはいえ可能な限り秘匿しておきたい。これに対して臨時ＩＤはセッション中のみ有効なＩＤのため、万一漏洩したとしてもその臨時ＩＤを使用して「なりすまし」等の不正を行うことはほとんど不可能である。
【００３７】
更にまた、上述した実施形態において、第１及び第２ウェブサイトは互いに異なるウェブサイトであり、第１及び第２ウェブサーバ１２，１４は互いに異なるウェブサーバとしたが、１つのウェブサーバが第１及び第２ウェブサイトを運営していてもよい。
【００３８】
そしてまた、上述した実施形態において、クッキーに有効期限を付けるか否かはユーザ側で決定するようにしてもよいし、セッションＩＤは必須ではなく必要に応じて付けるようにしてもよい。また、記憶装置１６を１つではなく複数設けてもよい。
【図面の簡単な説明】
【図１】本実施形態のシングルサインオンシステムの概略構成を示す説明図である。
【図２】認証用ＤＢの説明図である。
【図３】第１ウェブサーバ及び第２ウェブサーバによって実行される要求応答処理のフローチャートである。
【図４】要求応答の信号のやり取りを示す説明図である。
【符号の説明】
１０…シングルサインオンシステム、１２…第１ウェブサーバ、１４…第２ウェブサーバ、１６…記憶装置、１７…イントラネット、１８…インターネット、４０…ユーザコンピュータ。
【図１】
0004390429.tif 000002
【図２】
0004390429.tif 000003
【図３】
0004390429.tif 000004
【図４】
0004390429.tif 000005