以下、図面を用いて本発明の実施の形態について説明する。なお、これにより本発明が限定されるものではない。
本実施例では、複数の組織により共同利用できるID管理システムを例にとり説明する。
図1は、本実施例におけるID管理システムの構成図の例である。
当該図において、ID管理システムはクライアント装置101_1〜106_ん(以下、特定しない場合は、装置101と総称する)、ネットワーク102、ネットワーク103、認証装置104、ゲートウェイ管理装置105、データ管理装置106_1〜106_m(以下、特定しない場合は、データ管理装置106と総称する)から構成されている。符号101はクライアント装置であり、ユーザはクライアント装置101を介してID管理システムの機能を利用する。クライアント装置101はユーザが管理する実施形態も可能であり、当該システムを管理・運営する組織や他事業主が管理しユーザにクライアント装置101の機能を提供する実施形態も可能である。クライアント装置101はn個に限定されず、実施形態によってより少ない場合もあれば、多い場合もある。符号102はネットワークであり、一般的に公開されている、あるいはユーザの間で共有利用が可能なアウターネットワークである。ネットワーク102にはクライアント装置101、認証装置104、ゲートウェイ装置105が接続されている。符号103はネットワークであり、ユーザが利用することが不可能な閉じたイントラネットワークである。ネットワーク103には認証装置104、ゲートウェイ装置105、データ管理装置106が接続されている。符号104は認証装置である。符号105はゲートウェイ装置である。符号106はデータ管理装置であり、m個に限定されず、実施形態によってより少ない場合もあれば、多い場合もある。
図2は、本実施例におけるクライアント装置101の機能構成図の例である。
当該図において、符号201は制御部であり、ユーザ登録要求部202、ユーザ更新要求部203、ユーザ失効要求部204、ユーザ認証要求部205、ID登録要求部206、ID変換要求部207、ID更新要求部208、ID失効要求部209から構成されている。符号202はユーザ登録要求部であり、入出力部213を介してユーザからユーザ登録要求を受け付け、送受信部214を介して認証装置104にユーザ登録要求メッセージを送信し、送受信部214を介して認証装置104からユーザ登録応答メッセージを受信し、入出力部213を介してユーザにユーザ登録結果を通知する処理部である。符号203はユーザ更新要求部であり、入出力部213を介してユーザからユーザ更新要求を受け付け、送受信部214を介して認証装置104にユーザ更新要求メッセージを送信し、送受信部214を介して認証装置104からユーザ更新応答メッセージを受信し、入出力部213を介してユーザにユーザ更新結果を通知する処理部である。符号204はユーザ失効要求部であり、入出力部213を介してユーザからユーザ失効要求を受け付け、送受信部214を介して認証装置104にユーザ失効要求メッセージを送信し、送受信部214を介して認証装置104からユーザ失効応答メッセージを受信し、入出力部213を介してユーザにユーザ失効結果を通知する処理部である。符号205はユーザ認証要求部であり、入出力部213を介してユーザからユーザ認証要求を受け付け、送受信部214を介して認証装置104にユーザ認証要求メッセージを送信し、送受信部214を介して認証装置104からセッションIDを受信し、セッション情報記憶領域212にセッションIDを格納する処理部である。符号206はID登録要求部であり、入出力部213を介してユーザからID登録要求を受け付け、送受信部214を介してゲートウェイ装置105にID登録要求メッセージを送信し、送受信部214を介してゲートウェイ装置105からID登録応答メッセージを受信し、入出力部213を介してユーザにID登録結果を通知する処理部である。符号207はID変換要求部であり、入出力部213を介してユーザからID変換要求を受け付け、送受信部214を介してゲートウェイ装置105にID変換要求メッセージを送信し、送受信部214を介してゲートウェイ装置105からID変換応答メッセージを受信し、入出力部213を介してユーザにID変換結果を通知する処理部である。符号208はID更新要求部であり、入出力部213を介してユーザからID更新要求を受け付け、送受信部214を介してゲートウェイ装置105にID更新要求メッセージを送信し、送受信部214を介してゲートウェイ装置105からID更新応答メッセージを受信し、入出力部213を介してユーザにID更新結果を通知する処理部である。符号209はID失効要求部であり、入出力部213を介してユーザからID失効要求を受け付け、送受信部214を介してゲートウェイ装置105にID失効要求メッセージを送信し、送受信部214を介してゲートウェイ装置105からID失効応答メッセージを受信し、入出力部213を介してユーザにID失効結果を通知する処理部である。
次に、符号210は記憶部であり、ゲートウェイ情報記憶領域211、セッション情報記憶領域212から構成されている。符号211はゲートウェイ情報記憶領域であり、ゲートウェイ装置105の接続情報(IPアドレス、ポート番号等)を記憶する領域である。上記接続情報は、前もって静的に格納しておくこと、または入出力部213を介してユーザから受け付けた情報を動的に格納すること、あるいは送受信部214を介してゲートウェイ装置105や他装置から受け付けた情報を動的に格納することが可能である。符号212はセッション情報記憶領域であり、セッションIDを記憶する領域である。上記セッションIDは、ユーザ認証要求部205の処理により動的に操作される。
次に、符号213は入出力部であり、キーボード等のインタフェースを介してユーザからの入力を制御し、モニタ等のインタフェースを介してユーザへの出力を制御する処理部である。符号214は送受信部であり、ネットワーク102を介して情報の送受信を行う処理部である。
図3は、本実施例における認証装置104の機能構成図の例である。
当該図において、符号301は制御部であり、ユーザ登録処理部302、ユーザ更新処理部303、ユーザ失効処理部304、ユーザ認証処理部305、ユーザ識別子生成部306、セッションID生成部307、データ管理部308から構成されている。符号302はユーザ登録処理部であり、送受信部313を介してクライアント装置101からユーザ登録要求メッセージを受信し、データ管理部308により認証情報(ユーザID、パスワード、ICカード情報、生体情報等)とユーザ識別子生成部306により生成したユーザ識別子の組の登録処理を行い、送受信部313を介してクライアント装置101にユーザ登録応答メッセージを送信する処理部である。符号303はユーザ更新処理部であり、送受信部313を介してクライアント装置101からユーザ更新要求メッセージを受信し、データ管理部308により認証情報の更新処理を行い、送受信部313を介してクライアント装置101にユーザ更新応答メッセージを送信する処理部である。符号304はユーザ失効処理部であり、送受信部313を介してクライアント装置101からユーザ失効要求メッセージを受信し、データ管理部308により認証情報の失効処理を行い、送受信部313を介してクライアント装置101にユーザ失効応答メッセージを送信する処理部である。符号305はユーザ認証処理部であり、送受信部313を介してクライアント装置101からユーザ認証要求メッセージを受信し、送受信部313を介してゲートウェイ装置105にデータ管理部308により取得した認証情報に対応するユーザ識別子とセッションID生成部307により生成したセッションIDの組を送信し、送受信部313を介してクライアント装置101にセッションIDを送信する処理部である。符号306はユーザ識別子生成部であり、制御部301内の他処理部から要求を受け付け、ユーザ識別子の生成処理を行い、ユーザ識別子を返す処理部である。符号307はセッションID生成部であり、制御部301内の他処理部から要求を受け付け、セッションIDの生成処理を行い、セッションIDを返す処理部である。符号308はデータ管理部であり、制御部301内の他処理部から要求を受け付け、ユーザ情報記憶領域311内のユーザ情報(認証情報とユーザ識別子の組)の作成・検索・更新・削除を実施する処理部である。
次に、符号309は記憶部であり、ゲートウェイ情報記憶領域310、ユーザ情報記憶領域311から構成されている。符号310はゲートウェイ情報記憶領域であり、ゲートウェイ装置105の接続情報を記憶する領域である。上記接続情報は、前もって静的に格納しておくこと、入出力部312を介してユーザから受け付けた情報を動的に格納すること、送受信部313を介してゲートウェイ装置105や他装置から受け付けた情報を動的に格納することが可能である。符号311はユーザ情報記憶領域であり、ユーザ情報を記憶する領域である。上記ユーザ情報はデータ管理部308により動的に操作される。
次に、符号312は入出力部であり、キーボード等のインタフェースを介してユーザからの入力を制御し、モニタ等のインタフェースを介してユーザへの出力を制御する処理部である。符号313は送受信部であり、ネットワーク102、ネットワーク102を介して情報の送受信を行う処理部である。
図4は、本実施例におけるゲートウェイ装置105の機能構成図の例である。
当該図において、符号401は制御部であり、ノード管理部402、担当ノード決定部403、セッション管理部404、要求転送部405から構成されている。符号402はノード管理部であり、送受信部410を介してデータ管理装置106のノード管理部502と相互通信し、ノード情報記憶領域407内のノード接続情報(ノードID、IPアドレス、ポート番号等)の同期をとる処理部である。ノードIDは、ノード(データ管理装置106)毎に割り振られた固有の数値であり、ノード(データ管理装置106)間で同一の値をとれないのであれば、どのような値でも良い。符号403は担当ノード決定部であり、制御部401内の他処理部から要求を受け付け、ノード情報記憶領域407内のノード接続情報に基づいて担当ノード(データ管理装置106)を決定し、担当ノード(データ管理装置106)の接続情報を返す処理部である。当該担当ノードはランダムに決定すること、要求を受け付ける毎にノードIDの順番に決定すること、送受信部410を介してデータ管理装置106から負荷情報を受信し、負荷が少ないノードに決定することが可能である。符号404はセッション管理部であり、送受信部410を介して認証装置104からセッション情報(セッションIDとユーザ識別子の組)を受信し、セッション情報記憶領域408にセッション情報を格納し、送受信部410を介してデータ管理装置106にセッション情報を送信する処理部である。符号405は要求転送部であり、送受信部410を介してクライアント装置101から要求メッセージを受信し、送受信部410を介して担当ノード決定部403により決定した担当ノード(データ管理装置106)に要求メッセージを送信し、送受信部410を介して担当ノード(データ管理装置106)から応答メッセージを受信し、送受信部410を介してクライアント装置101に応答メッセージを送信する処理部である。
次に、符号406は記憶部であり、ノード情報記憶領域407、セッション情報記憶領域408から構成されている。符号407はノード情報記憶領域であり、ノード接続情報を記憶する領域である。上記ノード接続情報は、ノード管理部402により同期をとることで、データ管理装置106と同じ値が共有される。符号408はセッション情報記憶領域であり、セッション情報を記憶する領域である。上記セッション情報は、セッション管理部404により同期をとることで、データ管理装置106と同じ値が共有される。
次に、符号409は入出力部であり、キーボード等のインタフェースを介してユーザからの入力を制御し、モニタ等のインタフェースを介してユーザへの出力を制御する処理部である。符号410は送受信部であり、ネットワーク102、ネットワーク103を介して情報の送受信を行う処理部である。
図5は、本実施例におけるデータ管理装置106の機能構成図の例である。
当該図において、符号501は制御部であり、ノード管理部502、データ保有ノード決定部503、セッション管理部504、ユーザ識別子処理部505、ID登録処理部506、ID変換処理部507、ID更新処理部508、ID失効処理部509、データ管理部510から構成されている。符号502はノード管理部であり、送受信部516を介してゲートウェイ装置105のノード管理部402と相互通信し、ノード情報記憶領域512内のノード接続情報の同期をとる処理部である。符号503はデータ保有ノード決定部であり、制御部501内の他処理部から検索キーを受け付け、検索キー、ノード情報記憶領域512内のノード接続情報に基づいてデータ保有ノード(データ管理装置106)を決定し、データ保有ノード(データ管理装置106)の接続情報を返す処理部である。符号504はセッション管理部であり、送受信部516を介してゲートウェイ装置105からセッション情報を受信し、セッション情報記憶領域513にセッション情報を格納する処理部である。符号505はユーザ識別子処理部であり、制御部501内の他処理部から要求メッセージとセッションIDを受け付け、セッション情報記憶領域513内のセッション情報に基づいてセッションIDに対応するユーザ識別子を取得し、これを検索キーとして返す処理部である。符号506はID登録処理部であり、送受信部516を介してゲートウェイ装置105からID登録要求メッセージを受信し、送受信部516を介してデータ保有ノード決定部503により決定したデータ保有ノード(データ管理装置106)にID登録処理を要求し、送受信部516を介してゲートウェイ装置105にID登録応答メッセージを送信する処理部である。符号507はID変換処理部であり、送受信部516を介してゲートウェイ装置105からID変換要求メッセージを受信し、送受信部516を介してデータ保有ノード決定部503から決定したデータ保有ノード(データ管理装置106)にID変換処理を要求し、送受信部516を介してゲートウェイ装置105にID変換応答メッセージを送信する処理部である。符号508はID更新処理部であり、送受信部516を介してゲートウェイ装置105からID更新要求メッセージを受信し、送受信部516を介してデータ保有ノード決定部503により決定したデータ保有ノード(データ管理装置106)にID更新処理を要求し、送受信部516を介してゲートウェイ装置105にID更新応答メッセージを送信する処理部である。符号509はID失効処理部であり、送受信部516を介してゲートウェイ装置105からID失効要求メッセージを受信し、送受信部516を介してデータ保有ノード決定部503により決定したデータ保有ノード(データ管理装置106)にID失効処理を要求し、送受信部516を介してゲートウェイ装置105にID失効応答メッセージを送信する処理部である。符号510はデータ管理部であり、送受信部516を介して他データ管理装置106から要求を受け付け、データ記憶領域514のIDデータの作成・参照・更新・削除を実施する処理部である。
次に、符号511は記憶部であり、ノード情報記憶領域512、セッション情報記憶領域513、データ記憶領域514から構成されている。符号512はノード情報記憶領域であり、ノード接続情報を記憶する領域である。上記ノード接続情報は、ノード管理部502により同期をとることで、ゲートウェイ装置105と同じ値が共有される。符号513はセッション情報記憶領域であり、セッション情報を記憶する領域である。上記セッション情報は、セッション管理部504により同期をとることで、ゲートウェイ装置105と同じ値が共有される。符号514はデータ記憶領域であり、IDデータを記憶する領域である。上記IDデータは、データ管理部510により動的に操作される。
次に、符号515は入出力部であり、キーボード等のインタフェースを介してユーザからの入力を制御し、モニタ等のインタフェースを介してユーザへの出力を制御する処理部である。符号516は送受信部であり、ネットワーク103を介して情報の送受信を行う処理部である。
図6は、本実施例における装置のハードウェア構成図の例である。
当該図において、符号601はコンピュータであり、CPU602、メモリ603、外部記憶装置604、送受信装置605、出力装置606、入力装置607から構成されている。符号602はCPU、符号603はメモリ、符号604は外部記憶装置であり、各装置の処理部(プログラム)は外部記憶装置604に記憶され、メモリ603にロードして、CPU602により実行される。また、記憶部内の記憶領域としてはメモリ603、または外部記憶装置604が利用される。符号605は送受信装置であり、各装置の送受信部は送受信装置605により実現される。符号606は出力装置、符号607は入力装置であり、各装置の入出力部は出力装置606、入力装置607により実現される。
図7から図9を用いて、クライアント装置101がユーザ登録処理を要求した際に、認証装置104、ゲートウェイ装置105が実行する一連の処理の例について説明する。
図7は、本実施例における認証装置104、ゲートウェイ装置105が実行するユーザ登録処理のシーケンス図の例である。最初にクライアント装置101は認証装置104にユーザ登録要求メッセージ701を送信する。ユーザ登録要求メッセージ701の例は図8に示す。図8は、本実施例における認証装置104、ゲートウェイ装置105が実行するユーザ登録処理の中で送受信されるメッセージの例である。ユーザ登録要求メッセージ701は認証情報801のパラメータから構成されている。本実施例では、認証情報801として文字列のパスワード”abc”を格納しているが、認証情報801は文字列のパスワードに限定されるものではなく、ICカードリーダ等をクライアント装置101の入出力部213としてICカード情報を取得してICカード情報を格納することも、指紋認証装置等をクライアント装置101の入出力部213として生体情報を取得して生体情報を格納することも可能である。
図7に戻って、次に認証装置104はユーザ識別子生成702を行う。本実施例では、疑似乱数生成器を用いて生成した乱数”R0”をユーザ識別子として用いているが、認証情報801をハッシュ関数により変換した値等を利用することも可能である。
次に認証装置104はユーザ情報保存703を行う。ユーザ情報記憶領域311に格納されるデータの例は図9に示す。図9は、本実施例における認証装置104内のユーザ情報記憶領域311に格納されるデータの例であり、認証情報”abc”とユーザ識別子”R0”、”def”と”R1”、”Ghi”と”R2”を格納したものである。ユーザ情報は、認証情報901とユーザ識別子902を1組として格納される。
図7に戻って、次に認証装置104はクライアント装置101にユーザ登録応答メッセージ704を送信する。ユーザ登録応答メッセージ704の例は図8に示す。ユーザ登録応答メッセージ704はユーザ登録結果802のパラメータから構成されている。ユーザ登録結果802はユーザ登録処理の成否を示している。
以上が、クライアント装置101がユーザ登録処理を要求した際に、認証装置104、ゲートウェイ装置105が実行する一連の処理の例である。
図10、図11を用いて、クライアント装置101がユーザ更新処理を要求した際に、認証装置104、ゲートウェイ装置105が実行する一連の処理の例について説明する。
図10は、本実施例における認証装置104、ゲートウェイ装置105が実行するユーザ更新処理のシーケンス図の例である。最初にクライアント装置101は認証装置104にユーザ更新要求メッセージ1001を送信する。ユーザ更新要求メッセージ1001の例は図11に示す。図11は、本実施例における認証装置104、ゲートウェイ装置105が実行するユーザ更新処理の中で送受信されるメッセージの例である。ユーザ更新要求メッセージ1001は旧認証情報1101、新認証情報1102のパラメータから構成されている。
図10に戻って、次に認証装置104はユーザ情報更新1002を行う。ユーザ情報更新1002では、ユーザ情報記憶領域311に格納されたユーザ情報の中から旧認証情報1101を検索キーとして旧認証情報1101に対応するユーザ情報を検索し、新認証情報1102に更新する。
次に認証装置104はクライアント装置101にユーザ更新応答メッセージ1003を送信する。ユーザ更新応答メッセージ1003の例は図11に示す。ユーザ更新応答メッセージ1003はユーザ更新結果1102のパラメータから構成されている。ユーザ更新結果1103はユーザ更新処理の成否を示している。
以上が、クライアント装置101がユーザ更新処理を要求した際に、認証装置104、ゲートウェイ装置105が実行する一連の処理の例である。
図12、図13を用いて、クライアント装置101がユーザ失効処理を要求した際に、認証装置104、ゲートウェイ装置105が実行する一連の処理の例について説明する。
図12は、本実施例における認証装置104、ゲートウェイ装置105が実行するユーザ失効処理のシーケンス図の例である。最初にクライアント装置101は認証装置104にユーザ失効要求メッセージ1201を送信する。ユーザ失効要求メッセージ1301の例は図13に示す。図13は、本実施例における認証装置104、ゲートウェイ装置105が実行するユーザ失効処理の中で送受信されるメッセージの例である。ユーザ失効要求メッセージ1201は認証情報1301のパラメータから構成されている。
図12に戻って、次に認証装置104はユーザ情報失効1202を行う。ユーザ情報失効1202では、ユーザ情報記憶領域311に格納されたユーザ情報の中から認証情報1301を検索キーとして認証情報1301に対応するユーザ情報を検索し、該当レコードを削除する。
次に認証装置104はクライアント装置101にユーザ失効応答メッセージ1203を送信する。ユーザ失効応答メッセージ1203の例は図13に示す。ユーザ失効応答メッセージ1203はユーザ失効結果1302のパラメータから構成されている。ユーザ失効結果1303はユーザ失効処理の成否を示している。
以上が、クライアント装置101がユーザ失効処理を要求した際に、認証装置104、ゲートウェイ装置105が実行する一連の処理の例である。
図14から図16を用いて、クライアント装置101がユーザ認証処理を要求した際に、認証装置104、ゲートウェイ装置105、データ管理装置106が実行する一連の処理の例について説明する。
図14は、本実施例における認証装置104、ゲートウェイ装置105、データ管理装置106が実行するユーザ認証処理のシーケンス図の例である。最初にクライアント装置101は認証装置104にユーザ認証要求メッセージ1401を送信する。ユーザ認証要求メッセージ1401の例は図15に示す。図15は、本実施例における認証装置104、ゲートウェイ装置105、データ管理装置106が実行するユーザ認証処理の中で送受信されるメッセージの例である。ユーザ認証要求メッセージ1401は認証情報1501のパラメータから構成されている。
図14に戻って、次に認証装置104はユーザ情報参照1402を行う。ユーザ情報参照1402では、ユーザ情報記憶領域311に格納されたユーザ情報の中から認証情報1501を検索キーとして認証情報1501に対応するユーザ識別子”R0”を取得する。
次に認証装置104はセッションID生成1403を行う。本実施例では、疑似乱数生成器を用いて生成した乱数”S0”をセッションIDとして用いている。
次に認証装置104はゲートウェイ装置105にセッション確立要求メッセージ1404を送信する。セッション確立要求メッセージ1404の例は図15に示す。セッション確立要求メッセージ1404はセッションID1502、ユーザ識別子1503、確立日時1504のパラメータから構成されている。
図14に戻って、次にゲートウェイ装置105はセッション情報保存1405を行う。セッション情報記憶領域408に格納されるデータの例は図16に示す。図16は、本実施例におけるゲートウェイ装置105内のセッション情報記憶領域408、データ管理装置106内のセッション情報記憶領域513に格納されるデータの例であり、セッションID”S0”とユーザ識別子”R0”、”S1”と”R1”、”S2”と”R2”を格納したものである。セッション情報は、セッションID1601とユーザ識別子1602を1組として格納される。
図14に戻って、次にゲートウェイ装置105はデータ管理装置106にセッション確立要求メッセージ1406を送信する。セッション確立要求メッセージ1406はセッション確立要求メッセージ1404と同様である。
次にデータ管理装置106はセッション情報保存1407を行う。セッション情報記憶領域513に格納されるデータはセッション情報記憶領域408に格納されるデータと同様である。
次にデータ管理装置106はゲートウェイ装置105にセッション確立応答メッセージ1408を送信する。セッション確立応答メッセージ1408の例は図15に示す。セッション確立応答メッセージ1408はセッション確立結果1506のパラメータから構成されている。セッション確立結果1506はセッション確立処理の成否を示している。
本実施例では、セッション確立要求メッセージ1406からセッション確立応答メッセージ1408をデータ管理装置106_1からデータ管理装置106_mまで順に処理しているが、当該シーケンスは順列処理に限定されるものではなく、並列処理することも可能である。
次にゲートウェイ装置105は認証装置104にセッション確立応答メッセージ1409を送信する。セッション確立応答メッセージ1409はセッション確立要求メッセージ1408と同様である。
次に認証装置104はユーザ認証応答メッセージ1410を送信する。ユーザ認証応答メッセージ1410の例は図15に示す。ユーザ認証応答メッセージ1410はセッションID1505のパラメータから構成されている。
以上が、クライアント装置101がユーザ認証処理を要求した際に、認証装置104、ゲートウェイ装置105、データ管理装置106が実行する一連の処理の例である。このように、認証装置104におけるユーザ認証処理時に、セッションIDのみがクライアント装置101へ送信される。これにより、クライアント装置101とゲートウェイ装置105間ではユーザ識別子が用いられないため、第3者によるなりすましや不正な方法でのデータアクセスを防止できる。
図17から図21を用いて、クライアント装置101がID登録処理を要求した際に、ゲートウェイ装置105、データ管理装置106が実行する一連の処理の例について説明する。ここでは、ドメイン”d0”のID”111”とドメイン”d1”のID”987”に関する双方向の変換関係をID管理システムに登録する例を示す。
図17は、本実施例におけるゲートウェイ装置105、データ管理装置106が実行するID登録処理のシーケンス図の例である。最初にクライアント装置101はゲートウェイ装置105にID登録要求メッセージ1701を送信する。ID登録要求メッセージ1701の例は図18に示す。図18は、本実施例におけるゲートウェイ装置105、データ管理装置106が実行するID登録処理の中で送受信されるメッセージの例である。ID登録要求メッセージ1701はID1801、ドメイン1802、セッションID1803のパラメータから構成されている。
図17に戻って、次にゲートウェイ装置105は担当ノード決定1702を行う。本実施例では、ゲートウェイ装置105内のノード情報記憶領域407に格納されたノード情報に基づきランダムに担当ノードを決定しており、ここでは担当ノードをデータ管理装置106_1とした。ゲートウェイ装置105内のノード情報記憶領域407に格納されるデータの例は図19に示す。図19は、本実施例におけるゲートウェイ装置105内のノード情報記憶領域407、データ管理装置106内のノード情報記憶領域512に格納されるデータの例であり、データ管理装置106_1、データ管理装置106_2、データ管理装置106_mのノードIDと接続情報を格納したものである。ノード情報は、ノードIDと接続情報を1組として格納され、符号1901・符号1904はデータ管理装置106_1、符号1902はデータ管理装置106_2、符号1903はデータ管理装置106_mを表すノードIDである。データ管理装置106が複数のノードIDを持つ効果は後述する。
図17に戻って、次にゲートウェイ装置105はデータ管理装置106_1にID登録要求メッセージ1703を送信する。ID登録要求メッセージ1703はID登録要求メッセージ1701と同様である。
次に、データ管理装置106_1はユーザ識別子処理1704を行う。ユーザ識別子処理1704では、セッション情報記憶領域513に格納されたセッション情報の中からセッションID1803を検索キーとしてセッションID1803に対応するユーザ識別子”R0”を検索する。
次に、データ管理装置106_1はドメイン”d0”のID”111”からドメイン”d1”のID”987”への変換関係を登録する。以降、上記変換関係において、ドメイン”d0”を変換元ドメイン、ID”111”を変換元ID、ドメイン”d1”を変換先ドメイン、ID”987”を変換先IDと呼ぶ。
データ管理装置106_1はデータ保有ノード決定1705_1を行う。データ保有ノード決定方法の例は図20に示す。図20では、例としてドメイン”d0”のID”111”からドメイン”d1”のID”987”への変換関係情報を保有するノードを決定している。まず、変換元IDと変換元ドメイン、変換先ドメイン、そしてユーザ識別子を検索キー2001とする。次に、検索キーをハッシュ関数2002にかけて、ハッシュ値2003を得る。次に、ハッシュ値2003をノード(データ管理装置106)のノードIDと比較し、ハッシュ値以上であり、かつハッシュ値に最も近いノードIDを持つノード(データ管理装置106)をデータ保有ノードとする。ハッシュ値がノードIDの最大値を越えていた場合、最小のノードIDが選択される。また、ハッシュ値に最も近いノードIDを持つノード(データ管理装置106)を1つではなく、近いものから順に選ぶことで冗長化させることもできる。図20の例では、検索キー”111@d0(to)d1@R0”からハッシュ値”1584”を得て、”1584”以上で最も近い値である”2084”をノードIDとして持つデータ管理装置106_2がデータ保有ノードとなっている。
次に、データ管理装置106_1はデータ保有ノード(データ管理装置106_2)にID登録要求メッセージ1706_1を送信する。ID登録要求メッセージ1706の例は図18に示す。ID登録要求メッセージ1706は検索キー2001をKey1804、変換先ID”987”をValue1805とした2つのパラメータから構成されている。
図17に戻って、データ保有ノード(データ管理装置106_2)はID登録1707_1を行う。データ管理装置106内のデータ記憶領域514に格納されるデータの例は図21に示す。図21は、本実施例におけるデータ管理装置106内のデータ記憶領域514に格納されるデータの例であり、データ管理装置106_2内のデータ記憶領域514には検索キー”111@d0(to)d1@R0”をKey、変換先ID”987”をValueとして格納したものである。このように、ID数やドメイン数は時間とともに変化することが多いため、事前のスキーム設計を必要としないキーバリュー型のデータ構造が適している。ID登録1707_1では、キーバリュー型のレコード2101が格納される。
図17に戻って、データの保有ノード(データ管理装置106_2)はデータ管理装置106_1にID登録応答メッセージ1708_1を送信する。ID登録応答メッセージ1708の例は図18に示す。ID登録応答メッセージ1708はID登録結果1806から構成されている。ID登録結果1806はID登録処理の成否を示している。
以上、符号1706_1から符号1708_1がデータ管理装置106により行われるドメイン”d0”のID”111”からドメイン”d1”のID”987”への変換関係を登録する処理である。
次にデータ管理装置106はドメイン”d1”のID”987”からドメイン”d0”のID”111”への変換関係を登録する。符号1706_2から符号1708_2の処理は、変換元IDと変換先ID、変換元ドメインと変換先ドメインを入れ替えて、符号1706_1から符号1708_1と同様の処理を行う。符号1707_2では、データ管理装置106_mをデータ保有ノードとしており、図21にあるようにデータ管理装置106_m内のデータ記憶領域514に検索キー”987@d1(to)d0@R0”をKey、変換先ID”111”をValueとしたキーバリュー型のレコード2102を格納している。
次に、データ管理装置106はゲートウェイ装置105にID登録応答メッセージ1709を送信する。ID登録応答メッセージ1709はID登録応答メッセージ1708と同様である。
次にゲートウェイ装置105はクライアント装置101にID登録応答メッセージ1710を送信する。ID登録応答メッセージ1710はID登録応答メッセージ1708と同様である。
以上が、クライアント装置101がID登録処理を要求した際に、ゲートウェイ装置105、データ管理装置106が実行する一連の処理の例である。本実施例では、図21にあるようにKeyに変換元IDと変換元ドメイン、変換先ドメイン、ユーザ識別子を格納し、Valueに変換先IDを格納するキーバリュー構造としているが限定されるものではない。Keyに変換元IDとユーザ識別子が格納され、Valueに変換先ドメインが格納される構造であれば良い。
また、本実施例は、ドメインの数を2つとした例にすぎず、ドメインの数は限定されるものではない。例えば、ドメイン数が3つ以上の場合、IDそれぞれの間で双方向の変換関係を登録すれば良く、ドメイン数に制限はない。
さらに、変換元IDから変換先IDへの変換関係を複数のレコードで表現しても良い。ユーザに対して複数のユーザ識別子を割り当て、各ユーザ識別子から複数の検索キーを生成し、検索キー毎に対応するValueには変換先IDを分割して、その一部ずつを格納すれば良い。変換関係を複数のレコードに分割することで、アクセス権を持たないユーザが直接、データ記憶領域514を解析する等の方法によりデータ参照することを防ぐことが可能となる。
図22、図23を用いて、クライアント装置101がID変換処理を要求した際に、ゲートウェイ装置105、データ管理装置106が実行する一連の処理の例について説明する。
ここでは、ドメイン”d0”のID”111”からドメイン”d1”のIDに変換する例を示す。
図22は、本実施例におけるゲートウェイ装置105、データ管理装置106が実行するID変換処理のシーケンス図の例である。最初にクライアント装置101はゲートウェイ装置105にID変換要求メッセージ2201を送信する。
ID変換要求メッセージ2201の例は図23に示す。図23は、本実施例におけるゲートウェイ装置105、データ管理装置106が実行するID変換処理の中で送受信されるメッセージの例である。ID変換要求メッセージ2201はID2301、ドメイン2302_1、2302_2、セッションID2303のパラメータから構成されている。
図22に戻って、次にゲートウェイ装置105は担当ノード決定2202を行う。担当ノード決定2202は図17のID登録処理における担当ノード決定1702と同様である。
図22に戻って、次にゲートウェイ装置105はデータ管理装置106_1にID変換要求メッセージ2203を送信する。ID変換要求メッセージ2203はID変換要求メッセージ2201と同様である。
次にデータ管理装置106_1はユーザ識別子処理2204を行う。ユーザ識別子処理2204は図17のID登録処理におけるユーザ識別子処理1704と同様である。
図22に戻って、次にデータ管理装置106_1はデータ保有ノード決定2205を行う。データ保有ノード決定2205は図17のID登録処理におけるデータ保有ノード決定1705_1と同様である。
図22に戻って、次にデータ管理装置106_1はデータ保有ノード(データ管理装置106_2)にID変換要求メッセージ2206を送信する。ID変換要求メッセージ2206の例は図23に示す。ID変換要求メッセージ2206は検索キー”111@d0(to)d1@R0”をKey2304として、1つのパラメータから構成されている。
図22に戻って、データ保有ノード(データ管理装置106_2)はID変換2207を行う。ID変換2207では、データ記憶領域514に格納されたデータの中から”111@d0(to)d1@R0”を検索キーとして対応する変換先ID”987”を取得する。
図22に戻って、データの保有ノード(データ管理装置106_2)はデータ管理装置106_1にID変換応答メッセージ2208を送信する。ID変換応答メッセージ2208の例は図23に示す。ID変換応答メッセージ2208はID2306から構成されており、本実施例では変換先ID”987”が格納されている。
次にデータ管理装置106_1はゲートウェイ装置105にID変換応答メッセージ2209を送信する。ID変換応答メッセージ2209はID変換応答メッセージ2208と同様である。
次にゲートウェイ装置105はクライアント装置101にID変換応答メッセージ2210を送信する。ID変換応答メッセージ2210はID変換応答メッセージ2208と同様である。
以上が、クライアント装置101がID変換処理を要求した際に、ゲートウェイ装置105、データ管理装置106が実行する一連の処理の例である。
図24から図26を用いて、クライアント装置101がID更新処理を要求した際に、ゲートウェイ装置105、データ管理装置106が実行する一連の処理の例について説明する。ここでは、ドメイン”d0”のID”111”をID”222”へ更新する例を示す。以降、ID”111”を旧ID、ID”222”を新IDと呼ぶ。
図24は、本実施例におけるゲートウェイ装置105、データ管理装置106が実行するID更新処理のシーケンス図の例である。最初にクライアント装置101はゲートウェイ装置105にID更新要求メッセージ2401を送信する。ID更新要求メッセージ2401の例は図25に示す。図25は、本実施例におけるゲートウェイ装置105、データ管理装置106が実行するID更新処理の中で送受信されるメッセージの例である。ID更新要求メッセージ2401はID2501、ドメイン2502、セッションID2503のパラメータから構成されている。
図24に戻って、次にゲートウェイ装置105は担当ノード決定2402を行う。担当ノード決定2402は図17のID登録処理における担当ノード決定1702と同様である。
図24に戻って、次にゲートウェイ装置105は決定した担当ノードであるデータ管理装置106_1にID更新要求メッセージ2403を送信する。ID更新要求メッセージ2403はID更新要求メッセージ2401と同様である。
次にデータ管理装置106_1はユーザ識別子処理2404を行う。ユーザ識別子処理2404は図17のID登録処理におけるユーザ識別子処理1704と同様である。
図24に戻って、次にデータ管理装置106はドメイン”d0”のID”111”からドメイン”d1”のID”987”への変換関係を失効させる。データ管理装置106_1はデータ保有ノード決定2405を行う。
データ保有ノード決定2405は図17のID登録処理におけるデータ保有ノード決定処理1705_1、1705_2と同様であり、検索キー”111@d0(to)d1@R0”に対応するデータ保有ノード(データ管理装置106_2)を得る。
図24に戻って、次にデータ管理装置106_1はデータ保有ノード(データ管理装置106_2)にID更新要求メッセージ2406を送信する。ID失効要求メッセージ2406の例は図25に示す。ID更新要求メッセージ2406は検索キー”111@d0(to)d1@R0”をKey2506として、1つのパラメータから構成されている。
図24に戻って、データ保有ノード(データ管理装置106_2)はID失効2407を行う。データ管理装置106内のデータ記憶領域514に格納されるデータの例は図26に示す。図26は、ID更新処理の時のデータ管理装置106内のデータ記憶領域514に格納されるデータの例であり、ID更新2407では、データ管理装置106_2内のデータ記憶領域514に格納されたデータの中から”111@d0(to)d1@R0”を検索キーとして対応するValue2601を”null”に更新する。本実施例では、Value2601を”null”にすることをID失効処理としているが、”null”ではなく、失効状態を意味する別の値でも良いし、当該レコード事態を削除しても良い。
図24に戻って、データの保有ノード(データ管理装置106_2)はデータ管理装置106_1にID更新応答メッセージ2408を送信する。ID更新応答メッセージ2408の例は図25に示す。ID更新応答メッセージ2408はID2508から構成されており、本実施例ではID”987”が格納されている。
以上、符号2405から符号2408がデータ管理装置106により行われるドメイン”d0”のID”111”からドメイン”d1”のID”987”への変換関係を更新する処理である。
図24に戻って、次にデータ管理装置106はドメイン”d1”のID”987”からドメイン”d0”のID”111”への変換関係を旧IDから新IDへと更新する。
データ管理装置106_1はデータ保有ノード決定2409を行う。データ保有ノード決定2409は図17のID登録処理におけるデータ保有ノード決定1705と同様であり、検索キー”987@d1(to)d0@R0”に対応するデータ保有ノード(データ管理装置106_m)を得る。
図24に戻って、次にデータ管理装置106_1はデータ保有ノード(データ管理装置106_m)にID更新要求メッセージ2410を送信する。ID更新要求メッセージ2410の例は図25に示す。ID更新要求メッセージ2410は”987@d1(to)d0@R0”をKey2504、新ID”222”をValue2505として、2つのパラメータから構成されている。
図24に戻って、データ保有ノード(データ管理装置106_m)はID更新2411を行う。図26のデータ管理装置106_mに示すように、ID更新2411では、データ記憶領域514に格納されたデータの中から”987@d1(to)d0@R0”を検索キーとして対応するValue2602を”222”に更新する。
図24に戻って、データの保有ノード(データ管理装置106_m)はデータ管理装置106_1にID更新応答メッセージ2412を送信する。ID更新応答メッセージ2412の例は図25に示す。ID更新応答メッセージ2412はID更新結果2507から構成されている。ID更新結果2507はID更新処理の成否を示している。
以上、符号2409から符号2412がデータ管理装置106により行われるドメイン”d1”のID”987”からドメイン”d0”のID”111”への変換関係を旧IDから新IDへと更新する処理である。
図24に戻って、次にデータ管理装置106がドメイン”d0”のID”222”からドメイン”d1”のID”987”への変換関係を登録する、符号2414から符号2416の処理は、変換元IDを旧ID”111”から新ID”222”に入れ替えて、図17の符号1706_1から符号1708_1と同様の処理を行う。符号2413では、データ管理装置106_mをデータ保有ノードとしており、図26にあるようにデータ管理装置106_m内のデータ記憶領域514に検索キー”222@d0(to)d1@R0”をKey、変換先ID”987”をValueとしたキーバリュー型のレコード2603を格納している。
次にデータ管理装置106_1はゲートウェイ装置105にID更新応答メッセージ2417を送信する。ID更新応答メッセージ2417はID更新応答メッセージ2412と同様である。
次にゲートウェイ装置105はクライアント装置101にID更新応答メッセージ2418を送信する。ID更新応答メッセージ2418はID更新応答メッセージ2412と同様である。
以上が、クライアント装置101がID更新処理を要求した際に、ゲートウェイ装置105、データ管理装置106が実行する一連の処理の例である。
図27から図29を用いて、クライアント装置101がID失効処理を要求した際に、ゲートウェイ装置105、データ管理装置106が実行する一連の処理の例について説明する。ここでは、ドメイン”d0”のID”111”を失効する例を示す。
図27は、本実施例におけるゲートウェイ装置105、データ管理装置106が実行するID失効処理のシーケンス図の例である。最初にクライアント装置101はゲートウェイ装置105にID失効要求メッセージ2701を送信する。ID失効要求メッセージ2701の例は図28に示す。図28は、本実施例におけるゲートウェイ装置105、データ管理装置106が実行するID失効処理の中で送受信されるメッセージの例である。ID失効要求メッセージ2701はID2801、ドメイン2802、セッションID2803のパラメータから構成されている。
図27に戻って、次にゲートウェイ装置105は担当ノード決定2702を行う。担当ノード決定2702は図17のID登録処理における担当ノード決定1702と同様である。
図27に戻って、次にゲートウェイ装置105はデータ管理装置106_1にID失効要求メッセージ2703を送信する。ID失効要求メッセージ2703はID失効要求メッセージ2701と同様である。
次にデータ管理装置106_1はユーザ識別子処理2704を行う。ユーザ識別子処理2704は図17のID登録処理におけるユーザ識別子処理1704と同様である。
図27に戻って、次にデータ管理装置106はドメイン”d0”のID”111”からドメイン”d1”のID”987”への変換関係を失効する。符号2705から符号2708の処理は、図24の符号2405から符号2408の処理と同様である。データ管理装置106内のデータ記憶領域514に格納されるデータの例は図29に示す。図29は、ID更新処理の時のデータ管理装置106内のデータ記憶領域514に格納されるデータの例であり、ID失効2707により、データ管理装置106_2内のデータ記憶領域514に格納された”111@d0(to)d1@R0”に対応するValue2901は”null”に更新される。
図27に戻って、次にデータ管理装置106はドメイン”d1”のID”987”からドメイン”d0”のID”111”への変換関係を失効させる。符号2709から符号2712の処理は、変換元IDと変換先ID、変換元ドメインと変換先ドメインを入れ替えて、図24の符号2405から符号2408と同様の処理を行う。図29にあるように、ID失効2711により、データ管理装置106_m内のデータ記憶領域514に格納された”987@d1(to)d0@R0”に対応するValue2902は”null”に更新される。
次にデータ管理装置106_1はゲートウェイ装置105にID失効応答メッセージ2713を送信する。ID失効応答メッセージ2713の例は図28に示す。ID失効応答メッセージ2713はID失効結果2806から構成されている。ID失効結果2806はID登録処理の成否を示している。
次にゲートウェイ装置105はクライアント装置101にID失効応答メッセージ2714を送信する。ID失効応答メッセージ2714はID失効応答メッセージ2713と同様である。
以上が、クライアント装置101がID失効処理を要求した際に、ゲートウェイ装置105、データ管理装置106が実行する一連の処理の例である。
以上本発明の一実施例について説明したが、上記実施例によれば、あらかじめ、ドメイン間におけるIDの対応関係をテーブルに登録しておく必要がないため、ドメイン数とID数が増加してもシステムを再構築する必要がない。これにより、システム再構築に要する工数や費用を低減できる。また、利用者ごとに、変換可能なIDを制御することができる。また、認証装置104におけるユーザ認証処理時に、セッションIDのみがクライアント装置101へ送信される。これにより、ユーザにはユーザ識別子が非公開となるため、第3者によるなりすましや不正な方法でのデータアクセスを防止できる。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。