(57)【要約】最新のユーザ情報を保管しているリポジトリを効率よく把握することのできるリポジトリ管理装置、リポジトリ管理方法及びリポジトリ管理システムを提供する。リポジトリ管理装置は、サービスサーバから、ユーザ情報を要求する電文を受け付ける要求受付部と、ユーザ情報を保管する複数のリポジトリのうち最後に更新されたユーザ情報を保管するリポジトリを特定可能な情報であるユーザ情報所在情報を参照して、最後に更新されたユーザ情報を保管するリポジトリを決定するユーザ最新情報ディスカバリ部と、決定されたリポジトリから電文に対応するユーザ情報を取得するリポジトリアクセス部と、リポジトリアクセス部により取得した情報をサービスサーバに送信する応答送信部と、を備える。
2015129239.tif 000002
【特許請求の範囲】
【請求項１】
サービスサーバから、ユーザ情報を要求する電文を受け付ける要求受付手段と、
ユーザ情報を保管する複数のリポジトリのうち最後に更新されたユーザ情報を保管するリポジトリを特定可能な情報であるユーザ情報所在情報を参照して、最後に更新されたユーザ情報を保管するリポジトリを決定するユーザ最新情報ディスカバリ手段と、
前記決定されたリポジトリから前記電文に対応するユーザ情報を取得するリポジトリアクセス手段と、
前記リポジトリアクセス部により取得した情報を前記サービスサーバに送信する応答送信手段と、を備えるリポジトリ管理装置。
【請求項２】
前記サービスサーバが対応するプロトコルと前記リポジトリ管理装置において規定されるユーザ情報とが対応づけられている変換テーブルを参照して、前記要求受付手段が受け付けた電文に対応するユーザ情報を前記リポジトリ管理装置において規定されるユーザ情報に変換するユーザ情報マッピング手段と、
前記リポジトリ管理装置において規定されるユーザ情報と前記リポジトリが対応するプロトコルとが対応づけられている対応テーブルを参照して、最後に更新されたユーザ情報を保管するリポジトリに対しユーザ情報を要求する電文を作成する情報取得手段と、をさらに備え、
前記リポジトリアクセス手段は、前記情報取得手段が作成した電文を前記最後に更新されたユーザ情報を保管するリポジトリに送信し前記変換されたユーザ情報に対応するユーザ情報を前記リポジトリから取得する請求項１に記載のリポジトリ管理装置。
【請求項３】
前記リポジトリアクセス手段は、複数のリポジトリから前記電文に対応するユーザ情報を取得し、
前記リポジトリアクセス手段により取得したユーザ情報が更新されているか否かを判定し、
更新されている場合に前記ユーザ情報所在情報を更新する最新情報反映手段をさらに備える請求項１又は２に記載のリポジトリ管理装置。
【請求項４】
前記リポジトリアクセス手段は、複数のリポジトリからユーザ情報を取得し、
前記複数のリポジトリのうち最新でないユーザ情報を保管するリポジトリに対してユーザ情報の更新を要求する電文を作成し、前記ユーザ情報所在情報の更新を行う情報更新・登録手段をさらに備える請求項１乃至３のいずれか一項に記載のリポジトリ管理装置。
【請求項５】
前記リポジトリアクセス手段は、ユーザ情報を保管するリポジトリからユーザ情報を取得し、
前記リポジトリに対してユーザ情報の削除を要求する電文を作成し、前記ユーザ情報所在情報の更新を行う削除手段をさらに備える請求項１乃至３のいずれか一項に記載のリポジトリ管理装置。
【請求項６】
前記リポジトリアクセス手段は、前記リポジトリに定期的にアクセスしてユーザ情報を取得する請求項３乃至５に記載のリポジトリ管理装置。
【請求項７】
前記リポジトリアクセス手段は、前記リポジトリにおいてユーザ情報が更新された場合に前記リポジトリからユーザ情報を取得する請求項３乃至５に記載のリポジトリ管理装置。
【請求項８】
サービスサーバとリポジトリとの通信を仲介するリポジトリ管理装置のリポジトリ管理方法において、前記サービスサーバから、ユーザ情報を要求する電文を受け付け、
ユーザ情報を保管する複数のリポジトリのうち最後に更新されたユーザ情報を保管するリポジトリを特定可能な情報であるユーザ情報所在情報を参照して、最後に更新されたユーザ情報を保管するリポジトリを決定し、
前記決定されたリポジトリから前記電文に対応するユーザ情報を取得し、
取得したユーザ情報を前記サービスサーバに送信するリポジトリ管理方法。
【請求項９】
前記サービスサーバのプロトコルと前記リポジトリ管理装置において規定されるユーザ情報とが対応づけられている変換テーブルを参照して、前記サービスサーバから受け付けた電文中のユーザ情報を前記リポジトリ管理装置において規定されるユーザ情報に変換し、
前記リポジトリ管理装置において規定されるユーザ情報と前記リポジトリのプロトコルとが対応づけられている対応テーブルを参照して、最後に更新されたユーザ情報を保管するリポジトリに対しユーザ情報を要求する電文を作成し、
作成した電文を前記最後に更新されたユーザ情報を保管するリポジトリに送信し、変換されたユーザ情報に対応するユーザ情報を前記リポジトリから取得する請求項８に記載のリポジトリ管理方法。
【請求項１０】
ユーザ情報を要求する電文を送信するサービスサーバと、
ユーザ情報を保管するリポジトリと、
前記サービスサーバから、ユーザ情報を要求する電文を受け付ける要求受付手段と、
ユーザ情報を保管する複数のリポジトリのうち最後に更新されたユーザ情報を保管するリポジトリを特定可能な情報であるユーザ情報所在情報を参照して、最後に更新されたユーザ情報を保管するリポジトリを決定するユーザ最新情報ディスカバリ手段と、
前記決定されたリポジトリから前記電文に対応するユーザ情報を取得するリポジトリアクセス手段と、
前記リポジトリアクセス手段により取得した情報を前記サービスサーバに送信する応答送信手段と、を含むリポジトリ管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リポジトリ管理装置、リポジトリ管理方法及びリポジトリ管理システムに関する。
【背景技術】
【０００２】
本発明に関連するリポジトリ管理装置は、複数のリポジトリに接続され、各リポジトリで別々に管理されている情報、例えばユーザ情報を統合的に管理するのに用いられている。【０００３】
例えば特許文献１には、コンソール計算機からアクセス要求を受けたサーバ計算機が、オブジェクトとオブジェクトのロケーションを管理しているディレクトリデータベースを参照し、アクセス要求されたオブジェクトを保持しているデータベースが備えられた計算機を選定し、選定した計算機を介してデータベースよりオブジェクトにアクセスするデータベース統合システムが開示されている。
また特許文献２には、ユーザ情報リポジトリを備える認証装置を選定する条件テーブルをセンタサーバが有し、センタサーバがバックエンドＷｅｂシステム等の利用を要求するリクエストを受信し、リクエストに基づき条件テーブルを検索して認証処理を実行する認証装置を選定し、選定した認証装置に認証処理を依頼する認証先選定システムが開示されている。
また特許文献３には、ユーザ情報リポジトリを備える複数のサーバと、ユーザ情報管理データベースを備えるユーザ情報管理サーバとで構成され、ユーザ情報管理データベース内から抽出したユーザ情報の中に未更新状態のユーザ情報があれば、新ユーザ情報を作成してサーバに送信しユーザ情報を更新させるユーザ情報同期システムが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−５７１０号公報
【特許文献２】特開２０１０−２０５１６６号公報
【特許文献３】特開２００４−３４２０３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし特許文献１のデータベース統合システムは、オブジェクトとオブジェクトのロケーションを管理しているディレクトリデータベースに、どのデータベースに最新のオブジェクトが保持されているか把握することができる機能を有していなかった。また特許文献２の認証先選定システムは、認証装置に備えられたユーザ情報リポジトリに、どのユーザ情報リポジトリに最新のユーザ情報が保持されているか把握することができる機能を有していなかった。【０００６】
また特許文献３のユーザ情報同期システムは、ユーザ情報管理データベースに各サーバ中のユーザ情報データの更新状態のデータを参照してユーザ情報が更新するものであるが、ユーザ情報が更新されたサーバのうちどのサーバに最新のユーザ情報が登録されているか把握することができる機能までは有していなかった。【０００７】
本発明は、上述した課題を解決し、情報を保管する複数のリポジトリのうち最新の情報を保管しているリポジトリを効率よく把握するリポジトリ管理装置、リポジトリ管理方法及びリポジトリ管理システムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の１つの例示的な側面によれば、サービスサーバから、ユーザ情報を要求する電文を受け付ける要求受付手段と、ユーザ情報を保管する複数のリポジトリのうち最後に更新されたユーザ情報を保管するリポジトリを特定可能な情報であるユーザ情報所在情報を参照して、最後に更新されたユーザ情報を保管するリポジトリを決定するユーザ最新情報ディスカバリ手段と、決定されたリポジトリから電文に対応するユーザ情報を取得するリポジトリアクセス手段と、リポジトリアクセス部により取得した情報をサービスサーバに送信する応答送信手段と、を備えるリポジトリ管理装置が提供される。【０００９】
本発明の他の例示的な側面によれば、サービスサーバとリポジトリとの通信を仲介するリポジトリ管理装置のリポジトリ管理方法において、サービスサーバから、ユーザ情報を要求する電文を受け付け、ユーザ情報を保管する複数のリポジトリのうち最後に更新されたユーザ情報を保管するリポジトリを特定可能な情報であるユーザ情報所在情報を参照して、最後に更新されたユーザ情報を保管するリポジトリを決定し、決定されたリポジトリから電文に対応するユーザ情報を取得し、リポジトリアクセスステップにおいて取得した情報をサービスサーバに送信するリポジトリ管理方法が提供される。【００１０】
本発明のさらに他の例示的な側面によれば、ユーザ情報を要求する電文を送信するサービスサーバと、ユーザ情報を保管するリポジトリと、サービスサーバから、ユーザ情報を要求する電文を受け付ける要求受付手段と、ユーザ情報を保管する複数のリポジトリのうち最後に更新されたユーザ情報を保管するリポジトリを特定可能な情報であるユーザ情報所在情報を参照して、最後に更新されたユーザ情報を保管するリポジトリを決定するユーザ最新情報ディスカバリ手段と、決定されたリポジトリから電文に対応するユーザ情報を取得するリポジトリアクセス手段と、リポジトリアクセス部により取得した情報をサービスサーバに送信する応答送信手段と、を含むリポジトリ管理システムが提供される。
【発明の効果】
【００１１】
本発明によれば、最新のユーザ情報を保管しているリポジトリを効率よく把握することのできるリポジトリ管理装置、リポジトリ管理方法及びリポジトリ管理システムを提供することができる。
【図面の簡単な説明】
【００１２】
【図１】第１の実施形態にかかるリポジトリ管理装置１００を含むリポジトリ管理システム１０００の構成を示すブロック図である。
【図２】第１の実施形態にかかるリポジトリ管理システム１０００の動作を示す図である。
【図３】第２の実施形態にかかるリポジトリ管理装置２００を含むリポジトリ管理システム２０００の構成を示すブロック図である。
【図４】ユーザ情報所在情報１の一例を示す図である。
【図５】変換テーブル２の一例を示す図である。
【図６】対応テーブル３の一例を示す図である。
【図７】第２の実施形態にかかるリポジトリ管理システム２０００の利用形態の一例を示す図である。
【図８】第２の実施形態にかかるリポジトリ管理システム２０００の動作を説明するフローチャート図である。
【図９】第３の実施形態にかかるリポジトリ管理装置３００を含むリポジトリ管理システム３０００の構成を示すブロック図である。
【図１０Ａ】第３の実施形態にかかるリポジトリ管理システム３０００の動作を説明する図である。
【図１０Ｂ】第３の実施形態にかかるリポジトリ管理装置３００における更新処理を説明するフローチャートである。
【図１１】第４の実施形態にかかるリポジトリ管理装置４００を含むリポジトリ管理システム４０００の構成を示すブロック図である。
【図１２】第５の実施形態にかかるリポジトリ管理装置５００を含むリポジトリ管理システム５０００の構成を示すブロック図である。
【図１３】本発明の実施形態にかかるリポジトリ管理システムの利用形態の一例を示す図である。
【図１４】本発明の実施形態にかかるリポジトリ管理システムの利用形態の他の例を示す図である。
【図１５】本発明の実施形態にかかるリポジトリ管理システムの利用形態のさらに他の例を示す図である。
【図１６】関連技術におけるユーザ情報管理システムを示す図である。
【発明を実施するための形態】
【００１３】
［第１の実施形態］
次に図面を参照して本発明の実施形態について説明する。
【００１４】
図１は、第１の実施形態にかかるリポジトリ管理装置１００を含むリポジトリ管理システム１０００の構成を示す図である。
【００１５】
リポジトリ管理システム１０００は、リポジトリ管理装置１００、サービスサーバ８００及びリポジトリ９００を含む。
リポジトリ９００は、ユーザに対して提供する情報を蓄積している装置である。リポジトリ９００は、それぞれリポジトリ９００を使用するユーザの情報を管理している。ユーザ情報は、例えば、氏名、住所、電話番号、メールアドレス等のユーザ本人を表す情報としてよいが、ユーザ本人に関する情報であればどんな情報でもよい。例えば、アクセス履歴情報、趣味、嗜好などユーザ本人と直接紐づかない情報もユーザ情報としてもよい。なお、各リポジトリに登録されているユーザ情報には、ユーザのＩＤ（identification）が対応づけられている。
サービスサーバ８００は、例えば、メールのサービスを行うサーバであるメールサービスサーバや課金システム等のサービスを行うサーバである課金サービスサーバである。サービスサーバ８００は、リポジトリ９００に登録されているユーザであるか確認し、ユーザに対してサービスを提供する。
【００１６】
リポジトリ管理装置１００は、サービスサーバ８００と、任意のタイミングで更新されるユーザ情報を保管する複数のリポジトリ９００とのユーザ情報に関する通信を仲介する。
【００１７】
リポジトリ管理装置１００は、要求受付部１０１、ユーザ最新情報ディスカバリ部１０３、リポジトリアクセス部１０５、及び応答送信部１０６を含む。
【００１８】
要求受付部１０１は、サービスサーバ８００よりユーザ情報を要求する電文（要求電文）を受け付ける。要求電文には、例えば、サービスサーバ８００がユーザ情報を要求する特定のユーザのユーザＩＤと、サービスサーバ８００が要求する特定のユーザ情報の種類が含まれている。
【００１９】
ユーザ最新情報ディスカバリ部１０３は、例えばリポジトリ管理装置１００に接続する記憶部等に記憶されているユーザ情報所在情報１を検索し、最後に更新された（最新の）ユーザ情報がどのリポジトリに登録されているかを決定する。ユーザ最新情報ディスカバリ部１０３は、要求電文に含まれていたユーザ情報の種類を手がかりとして最新情報を保管するリポジトリを検索する。
【００２０】
図４は、ユーザ情報所在情報１の構成を示す図である。ユーザ情報所在情報１は、E-mailアドレス（e-mail）や氏名（name）等の種類ごとに、ユーザ情報を保管するリポジトリ（保管リポジトリ）、最新情報を保管するリポジトリ（最新情報管理リポジトリ）、ユーザ情報の最終更新日時が対応付けられた情報である。
【００２１】
ユーザ最新情報ディスカバリ部１０３は、ユーザ情報を取得する、最新情報が保管されているリポジトリを決定する。例えば、要求するユーザ情報の種類がe-mailの場合、図４に示すように、最新情報管理リポジトリはRepository１であるので、最新情報が保管されているリポジトリをRepository１と決定する。要求するユーザ情報の種類がaddressの場合、図４に示すように、最新情報管理リポジトリはRepository２、Repository３、Repository４のように複数存在する。この場合、いずれか１つのリポジトリ、例えば、Repository２を最新情報が保管されているリポジトリと決定する。
【００２２】
リポジトリアクセス部１０５は、ユーザ最新情報ディスカバリ部１０３により決定されたリポジトリから、サービスサーバ８００からの要求電文に対応する特定のユーザのユーザＩＤに対応するユーザ情報を取得する。
【００２３】
応答送信部１０６は、リポジトリアクセス部１０５により取得した特定のユーザのユーザＩＤに対応するユーザ情報をサービスサーバ８００に送信する。
【００２４】
続いて、本実施形態にかかるリポジトリ管理システム１０００の動作を説明する。図２は、ユーザ情報管理システム１０００の動作を説明する図である。
【００２５】
リポジトリ管理装置１００の要求受付部１０１は、サービスサーバ８００からユーザ情報の要求（要求電文）を受信する（ステップＳ１）。ユーザ最新情報ディスカバリ部１０３は、上述の通り要求電文に含まれていたユーザ情報の種類を基にユーザ情報所在情報１を検索し、最新のユーザ情報が保管されているリポジトリ９００を決定する（ステップＳ２）。リポジトリアクセス部１０５は、ユーザ最新情報ディスカバリ部１０３により決定されたリポジトリ９００に対し、サービスサーバ８００からの要求電文に含まれていた特定のユーザのユーザＩＤに対応する最新のユーザ情報を要求する（ステップＳ３）。リポジトリ９００は、リポジトリアクセス部１０５からユーザ情報の要求があると、要求されたユーザＩＤのユーザ情報を返信する。リポジトリアクセス部１０５は、リポジトリ９００から、サービスサーバ８００からの要求電文に対応するユーザ情報を取得する（ステップＳ４）。リポジトリ９００より最新のユーザ情報を受信すると、応答送信部１０６は、リポジトリアクセス部１０５から受信した情報を受け取り、サービスサーバ８００に送信する（ステップＳ５）。
【００２６】
本実施形態にかかるリポジトリ管理装置１００によれば、ユーザ最新情報ディスカバリ部１０３がユーザ情報所在情報を検索し、最新のユーザ情報が保管されているリポジトリよりユーザ情報を取得することを決定する。これにより、最新のユーザ情報を保管しているリポジトリを効率よく把握することができる。図１６は、関連する技術におけるユーザ情報管理システムを示す図である。ユーザ情報を管理する装置（リポジトリ）として、DB（Data Base）サーバ、LDAP（Lightweight Directory Access Protocol）サーバ等が存在する。リポジトリにアクセスするサービスについても、メールや課金システム等複数存在する。図１６のシステムにおいては、各サービスがユーザ情報を要求する際には、各リポジトリに要求電文を作成しアクセスする。また、各リポジトリがどのようなユーザ情報を保管しているかについても、各サービスが独自に管理していた。例えば、エンドユーザのメールアドレスがDBサーバとLDAPサーバに登録されており、システム管理者がDBサーバに登録されているメールアドレスを更新した場合、サービスサーバは、すべてのリポジトリにメールアドレスを要求し最新情報か否かを判断する必要がある。本実施形態にかかるリポジトリ管理装置１００によれば、システム管理者が１つのリポジトリに登録されているメールアドレスを更新した場合であっても、すべてのリポジトリにメールアドレスを要求し最新情報か否かを判断する必要がない。
【００２７】
［第２の実施形態］
図７は、第２の実施形態にかかるリポジトリ管理システム２０００の利用形態の一例を示す図である。リポジトリ管理システム２０００は、ユーザ情報ゲートウェイ２００と、サービスサーバ８００と、リポジトリ９００とを含む。図７では、サービスの例としてメールサービス及び課金サービス、リポジトリの例としてDBサーバA、DBサーバB、LDAPサーバ、Webサービスサーバを示している。
図３は、第２の実施形態にかかるリポジトリ管理装置を含むリポジトリ管理システム２０００の構成を示す図である。以下の実施形態では、リポジトリ管理装置の一例として、ユーザ情報ゲートウェイの例について説明する。また、記憶部がユーザ情報ゲートウェイに設けられている構成について説明する。
【００２８】
ユーザ情報ゲートウェイ２００は、サービスサーバ８００とリポジトリ９００とのユーザ情報に関する通信を仲介する。ユーザ情報ゲートウェイ２００は、各サービスサーバ８００との通信においてそれぞれ単一のプロトコルにて通信する。例えば、メールサービスサーバとの通信においてはHTTP（Hypertext Transfer Protocol）にて通信を行い、課金サービスサーバとの通信においてはSOAP（Simple Object Access Protocol）にて通信を行う。
【００２９】
ユーザ情報ゲートウェイ２００は、要求受付部２０１、ユーザ情報マッピング部２０２、ユーザ最新情報ディスカバリ部２０３、情報取得部２０４、リポジトリアクセス部２０５、応答送信部２０６及び記憶部２０７を含む。
【００３０】
要求受付部２０１は、サービスサーバ８００よりユーザ情報を要求する電文（要求電文）を受け付ける。要求受付部２０１は、ユーザ情報ゲートウェイ２００が対応するプロトコルごとに複数存在してもよい。また、要求受付部２０１は、サービスサーバ８００より直接要求電文を受信することもあれば、ブラウザ等を介してリダイレクトされた要求電文を受信することもある。第１の実施形態と同様、要求電文には、例えば、サービスサーバ８００がユーザ情報を要求する特定のユーザのユーザＩＤと、サービスサーバ８００が要求する特定のユーザ情報の種類が含まれている。
【００３１】
サービスサーバ８００からの要求電文は、要求受付部２０１からユーザ情報マッピング部２０２に入力される。ユーザ情報マッピング部２０２は、記憶部２０７のサーバプロトコルマッピング部２０７ｂにおいて管理される、サービスサーバ８００におけるユーザ情報の種類を示すプロトコルごとに異なる要求電文（プロトコル上の表現）を、図５に示されるような変換テーブル２を参照し、ユーザ情報ゲートウェイ２００において規定される電文（内部表現）に変換して、ユーザ最新情報ディスカバリ部２０３に出力する。また、後述のようにリポジトリ９００からのユーザ情報も、リポジトリアクセス部２０５からユーザ情報マッピング部２０２に入力される。ユーザ情報マッピング部２０２は、リポジトリ９００におけるユーザ情報の種類を示すプロトコル上の表現を、記憶部２０７のサーバプロトコルマッピング部２０７ｂにおいて管理される変換テーブル２を参照してサービスサーバ８００における表現に変換し、応答送信部２０６に出力する。ユーザ情報ゲートウェイ２００において規定される電文をプロトコルごとに異なる応答電文に変換する。
【００３２】
ユーザ最新情報ディスカバリ部２０３は、要求電文に含まれ内部表現に変換されたユーザ情報の種類を基に、図４に示されるようなユーザ情報所在情報１を検索し、最新のユーザ情報がどのリポジトリに登録されているかを検索する。ユーザ情報所在情報１は、記憶部２０７のユーザ情報所在情報管理部２０７ａに記憶されている。ユーザ最新情報ディスカバリ部２０３は、最新情報が保管されているリポジトリよりユーザ情報を取得することを決定する。
【００３３】
情報取得部２０４は、リポジトリが対応しているユーザ情報の種類（e-mail、name、address、tel等）を判定する。情報取得部２０４は、記憶部２０７のリポジトリプロトコルマッピング部２０７ｃにおいて管理される、図６に示されるような対応テーブル３を参照し、ユーザ情報の種類を示す内部表現を、ユーザ最新情報ディスカバリ部２０３において決定したリポジトリに対応するプロトコル上の表現に変換し、決定したリポジトリに対する要求電文を作成する。この際、情報取得部２０４は、情報取得部２０４は、例えばユーザ情報の種類を「e-mail」と判定した場合、E-mailアドレスを要求する電文を作成する。
【００３４】
リポジトリアクセス部２０５は、情報取得部２０４が生成した要求電文をリポジトリに送信する。要求電文を受信したリポジトリは、ユーザ情報ゲートウェイ２００からの要求電文に対して最新のユーザ情報を送信する。リポジトリアクセス部２０５は、リポジトリより最新のユーザ情報を受信する。リポジトリアクセス部２０５は、リポジトリにアクセスするプロトコルごとに存在することもある。
【００３５】
リポジトリアクセス部２０５は、リポジトリより最新のユーザ情報を受信すると、ユーザ情報マッピング部２０２に、最新のユーザ情報とリポジトリのプロトコルの情報を出力する。ユーザ情報マッピング部２０２は、サーバプロトコルマッピング部２０７ｂにおいて管理される変換テーブル２を参照し、ユーザ情報の種類を示すリポジトリのプロトコル上の表現を、ユーザ情報を要求したサービスサーバ８００のプロトコル上の表現に変換してサービスサーバ８００への応答電文を作成し応答送信部２０６に出力する。応答送信部２０６は、ユーザ情報マッピング部２０２が生成した応答電文をサービスサーバ８００に送信する。なお、応答送信部２０６はプロトコルごとに複数存在してもよい。
【００３６】
記憶部２０７は、ユーザ情報所在情報１、変換テーブル２、対応テーブル３を記憶する。すなわち、記憶部２０７は、ユーザ情報所在情報管理部２０７ａ、サーバプロトコルマッピング部２０７ｂ及びリポジトリプロトコルマッピング部２０７ｃを備える。
【００３７】
ユーザ情報所在情報管理部２０７ａは、ユーザ情報所在情報１を管理する。ユーザ情報所在情ユーザ情報所在情報１は、図４に示すように、E-mailアドレス（e-mail）や氏名（name）等のユーザ情報（内部表現）の種類と、ユーザ情報を保管するリポジトリ（保管リポジトリ）と、最新情報を保管するリポジトリ（最新情報管理リポジトリ）と、ユーザ情報の最終更新日時とが対応付けられた情報を含む。ユーザ情報所在情報１は、ユーザ最新情報ディスカバリ部２０３が最新のユーザ情報を保管するリポジトリ（最新情報管理リポジトリ）を検索する際に用いられる。
【００３８】
サーバプロトコルマッピング部２０７ｂは、変換テーブル２を管理する。変換テーブル２は、サービスサーバ８００と通信するためのプロトコルと、そのプロトコル上のユーザ情報の表現と、ユーザ情報ゲートウェイ２００におけるユーザ情報の表現（内部表現）との対応を示すテーブルである。変換テーブル２は、図５に示すように例えば要求電文（プロトコル上の表現）「e-mail」が、ユーザ情報ゲートウェイ２００の内部表現「email」に対応することを示す。変換テーブル２は、プロトコルごとに異なる要求電文をユーザ情報ゲートウェイ２００において規定される電文に変換する際に用いられる。また、変換テーブル２は、ユーザ情報ゲートウェイ２００において規定される電文をプロトコルごとに異なる応答電文に変換する際にも用いられる。変換テーブル２は、図５に示したプロトコルごとの変換テーブルに限らず、サービスサーバとリポジトリとの組み合わせごとの変換テーブルであってもよい。サーバプロトコルマッピング部２０７ｂが管理する情報には、電文を変換するための情報だけでなく、ユーザ情報の種類のマッピングを行うための情報も含まれる。
【００３９】
リポジトリプロトコルマッピング部２０７ｃは、対応テーブル３を管理する。対応テーブル３は、図６に示すように、リポジトリ名と、リポジトリと通信するためのプロトコルとの対応を示すテーブルである。また対応テーブル３は、ユーザ情報ゲートウェイ２００において規定される電文（内部表現）とリポジトリにユーザ情報を要求する電文（プロトコル上の表現）の対応も示す。リポジトリプロトコルマッピング部２０７ｃが管理する情報には、電文を変換するための情報だけでなく、ユーザ情報ゲートウェイ２００において規定されるユーザ情報の種類と、リポジトリにおけるユーザ情報の種類との対応（マッピング）を行うための情報も含まれる。
【００４０】
続いて、リポジトリ管理システム２０００の動作を説明する。
【００４１】
図８は、リポジトリ管理システム２０００の動作を説明する図である。ユーザ情報ゲートウェイ２００の要求受付部２０１は、サービスサーバ８００からユーザ情報を要求する電文（要求電文）を受信する（ステップＳ１１）。受信された要求電文は、要求受付部２０１からユーザ情報マッピング部２０２に入力される。ユーザ情報マッピング部２０２は、サーバプロトコルマッピング部２０７ｂにおいて管理される変換テーブル２を参照し、ユーザ情報の種類を示すプロトコル上の表現を、内部表現に変換し、ユーザ最新情報ディスカバリ部２０３に出力する。ユーザ最新情報ディスカバリ部２０３は、要求電文に含まれ内部表現に変換されたユーザ情報の種類を基にユーザ情報所在情報１を検索し、最新のユーザ情報が保管されているリポジトリよりユーザ情報を取得することを決定する（ステップＳ１２）。ユーザ最新情報ディスカバリ部２０３は、ユーザ情報の種類を内部表現に変換した要求電文と決定したリポジトリの情報を情報取得部２０４に出力する。情報取得部２０４は、リポジトリプロトコルマッピング部２０７ｃにおいて管理される対応テーブル３を参照し、ユーザ情報の種類を示す内部表現を、ユーザ最新情報ディスカバリ部２０３において決定したリポジトリに対応するプロトコル上の表現に変換し、決定したリポジトリに対する要求電文を作成する（ステップＳ１３）。リポジトリアクセス部２０５は、情報取得部２０４が作成した要求電文をリポジトリに送信する（ステップＳ１４）。要求電文を受信したリポジトリは、ユーザ情報ゲートウェイ２００からの要求電文に対して最新のユーザ情報を送信する（ステップＳ１５）。リポジトリアクセス部２０５は、リポジトリより最新のユーザ情報を受信すると、ユーザ情報マッピング部２０２に、最新のユーザ情報とリポジトリのプロトコルの情報を出力する。ユーザ情報マッピング部２０２は、サーバプロトコルマッピング部２０７ｂにおいて管理される変換テーブル２を参照し、ユーザ情報の種類を示すリポジトリのプロトコル上の表現を、ステップＳ１１において要求電文を受信したサービスサーバ８００のプロトコル上の表現に変換してサービスサーバ８００への応答電文を作成し応答送信部２０６に出力する。応答送信部２０６は、当該応答電文をサービスサーバ８００に送信する（ステップＳ１６）。
【００４２】
本実施形態にかかるユーザ情報ゲートウェイ２００によれば、ユーザ最新情報ディスカバリ部２０３がユーザ情報所在情報を検索し、最新のユーザ情報が保管されているリポジトリよりユーザ情報を取得することを決定する。これにより、最新のユーザ情報を保管しているリポジトリを効率よく把握することのできるユーザ情報ゲートウェイを提供することができる。
【００４３】
また、ユーザ情報マッピング部２０２及び情報取得部２０４を備えることにより、異なるプロトコルに対応するサービスサーバやリポジトリとの間であっても最新のユーザ情報を保管しているリポジトリを効率よく把握することができる。
【００４４】
［第３の実施形態］
本実施形態では、リポジトリから受信したユーザ情報が更新されていた場合にユーザ情報所在情報を更新する態様について説明する。
【００４５】
図９は、本実施形態にかかるユーザ情報ゲートウェイ３００を含むリポジトリ管理システム３０００の構成を示す図である。ユーザ情報ゲートウェイ３００は、第２の実施形態にかかるユーザ情報ゲートウェイ２００において、さらに最新情報反映部３０８を設ける。ユーザ情報ゲートウェイ３００は、要求受付部３０１、ユーザ情報マッピング部３０２、ユーザ最新情報ディスカバリ部３０３、情報取得部３０４、リポジトリアクセス部３０５、応答送信部３０６及び記憶部３０７を含む。
要求受付部３０１は、サービスサーバ８００よりユーザ情報を要求する電文（要求電文）を受け付ける。要求受付部３０１は、ユーザ情報ゲートウェイ３００が対応するプロトコルごとに複数存在してもよい。また、要求受付部３０１は、サービスサーバ８００より直接要求電文を受信することもあれば、ブラウザ等を介してリダイレクトされた要求電文を受信することもある。第１、第２の実施形態と同様、要求電文には、例えば、サービスサーバ８００がユーザ情報を要求する特定のユーザのユーザＩＤと、サービスサーバ８００が要求する特定のユーザ情報の種類が含まれている。
サービスサーバ８００からの要求電文は、要求受付部３０１からユーザ情報マッピング部３０２に入力される。ユーザ情報マッピング部３０２は、記憶部３０７のサーバプロトコルマッピング部３０７ｂにおいて管理される、第２の実施形態と同様の変換テーブル２を参照し、サービスサーバ８００におけるユーザ情報の種類を示すプロトコル上の表現を、内部表現に変換し、ユーザ最新情報ディスカバリ部３０３に出力する。また後述のようにリポジトリ９００からのユーザ情報も、リポジトリアクセス部３０５からユーザ情報マッピング部３０２に入力される。ユーザ情報マッピング部３０２は、変換テーブル２を参照し、リポジトリ９００におけるユーザ情報の種類を示すプロトコル上の表現を、サービスサーバ８００における表現に変換し、応答送信部３０６に出力する。
ユーザ最新情報ディスカバリ部３０３は、要求電文に含まれ内部表現に変換されたユーザ情報の種類を基に、第１、第２の実施形態と同様のユーザ情報所在情報１を検索し、最新のユーザ情報がどのリポジトリに登録されているかを検索する。ユーザ情報所在情報１は、記憶部３０７のユーザ情報所在情報管理部３０７ａに記憶されている。ユーザ最新情報ディスカバリ部３０３は、最新情報が保管されているリポジトリよりユーザ情報を取得することを決定する。
情報取得部３０４は、リポジトリが対応しているユーザ情報の種類（e-mail、name、address、tel等）を判定する。情報取得部３０４は、記憶部３０７のリポジトリプロトコルマッピング部３０７ｃにおいて管理される、第２の実施形態と同様の対応テーブル３を参照し、ユーザ情報の種類を示す内部表現を、ユーザ最新情報ディスカバリ部３０３において決定したリポジトリに対応するプロトコル上の表現に変換し、決定したリポジトリに対する要求電文を作成する。
リポジトリアクセス部３０５は、情報取得部３０４が生成した要求電文をリポジトリに送信する。要求電文を受信したリポジトリは、ユーザ情報ゲートウェイ３００からの要求電文に対して最新のユーザ情報を送信する。リポジトリアクセス部３０５は、リポジトリより最新のユーザ情報を受信する。リポジトリアクセス部３０５は、リポジトリにアクセスするプロトコルごとに存在することもある。
リポジトリアクセス部３０５は、リポジトリより最新のユーザ情報を受信すると、ユーザ情報マッピング部３０２に、最新のユーザ情報とリポジトリのプロトコルの情報を出力する。ユーザ情報マッピング部３０２は、サーバプロトコルマッピング部３０７ｂにおいて管理される変換テーブル２を参照し、ユーザ情報の種類を示すリポジトリのプロトコル上の表現を、ユーザ情報を要求したサービスサーバ８００のプロトコル上の表現に変換してサービスサーバ８００への応答電文を作成し応答送信部３０６に出力する。応答送信部３０６は、ユーザ情報マッピング部３０２が生成した応答電文をサービスサーバ８００に送信する。なお、応答送信部３０６はプロトコルごとに複数存在してもよい。
記憶部３０７は、第２の実施形態と同様のユーザ情報所在情報１、変換テーブル２、対応テーブル３を記憶する。すなわち、記憶部３０７は、ユーザ情報所在情報管理部３０７ａ、サーバプロトコルマッピング部３０７ｂ及びリポジトリプロトコルマッピング部３０７ｃを備える。ユーザ情報所在情報管理部３０７ａは、ユーザ情報所在情報１を管理する。サーバプロトコルマッピング部３０７ｂは、変換テーブル２を管理する。サーバプロトコルマッピング部３０７ｂが管理する情報には、電文を変換するための情報だけでなく、ユーザ情報の種類のマッピングを行うための情報も含まれる。リポジトリプロトコルマッピング部３０７ｃは、対応テーブル３を管理する。リポジトリプロトコルマッピング部３０７ｃが管理する情報には、電文を変換するための情報だけでなく、ユーザ情報ゲートウェイ３００において規定されるユーザ情報の種類と、リポジトリにおけるユーザ情報の種類との対応（マッピング）を行うための情報も含まれる。
【００４６】
ユーザ最新情報ディスカバリ部３０３は、ユーザ情報ゲートウェイ２００におけるユーザ最新情報ディスカバリ部２０３が有する機能の他、全てのリポジトリを検索する機能を有する。すなわちユーザ最新情報ディスカバリ部３０３は、情報取得部３０４に対し、ユーザ情報所在情報１を検索して決定した、最新のユーザ情報が保管されているリポジトリを含む、全てのリポジトリを宛先とし、要求電文に含まれていたユーザ情報の種類を要求する要求電文の作成を指示する。情報取得部３０４は、対応テーブル３を参照し、全てのリポジトリに対し、ユーザ情報の種類を示す内部表現を、各リポジトリのプロトコル上の表現に変換した要求電文を作成する。
【００４７】
リポジトリアクセス部３０５は、情報取得部３０４が生成した要求電文を全てのリポジトリに送信する。リポジトリアクセス部３０５は、全てのリポジトリからユーザ情報とともにさらに更新日時を取得する。リポジトリアクセス部３０５は、取得したユーザ情報と更新日時を最新情報反映部３０８に出力する。
【００４８】
最新情報反映部３０８は、リポジトリアクセス部３０５が受信した情報及びユーザ情報所在情報１に含まれる更新日時を比較してユーザ情報が更新されているか否かを判定し、更新されている場合にはユーザ情報所在情報１を更新する。ユーザ情報所在情報の更新パターンは以下の通りである。１及び２は、最新情報管理リポジトリに対してさらに最新の更新情報があるか否かを検索する場合、及び全てのリポジトリに対して最新の更新情報があるか否かを検索する場合の更新パターンである。３及び４は、全てのリポジトリに対して最新の更新情報があるか否かを検索する場合の更新パターンである。
１．ユーザ情報を取得したリポジトリが最新情報管理リポジトリに登録されており、かつ、更新日時に変更が無い場合には、ユーザ情報所在情報１を変更しない。
２．ユーザ情報を取得したリポジトリが最新情報管理リポジトリに登録されており、かつ、更新日時に変更が有る場合には、ユーザ情報所在情報１の更新日時をリポジトリより取得した更新日時に変更する。
３．ユーザ情報を取得したリポジトリが最新情報管理リポジトリに登録されておらず、かつ、更新日時に変更が無い場合には、最新情報管理リポジトリの内容を、ユーザ情報を取得したリポジトリに変更する。
４．ユーザ情報を取得したリポジトリが最新情報管理リポジトリに登録されておらず、かつ、更新日時に変更が有る場合には、ユーザ情報所在情報１の更新日時をリポジトリより取得した更新日時に変更し、ユーザ情報所在情報１の最新情報管理リポジトリの内容を、ユーザ情報を取得したリポジトリに変更する。
【００４９】
続いて、リポジトリ管理システム３０００の動作を説明する。図１０Ａは、リポジトリ管理システム３０００の動作を説明する図である。図１０Ｂは、図１０ＡのステップＳ２６における更新処理を詳細に説明するフローチャートである。
【００５０】
ユーザ情報ゲートウェイ３００の要求受付部３０１がサービスサーバからユーザ情報要求を受信し、リポジトリがユーザ情報ゲートウェイ３００に対して最新のユーザ情報を返すまで、すなわちステップＳ２１からＳ２５までの動作は第２の実施形態における動作（図８のステップＳ１１からＳ１５まで）と同様である。すなわち、ユーザ情報ゲートウェイ３００の要求受付部３０１は、サービスサーバ８００からユーザ情報を要求する電文（要求電文）を受信する（ステップＳ２１）。受信された要求電文は、要求受付部３０１からユーザ情報マッピング部３０２に入力される。ユーザ情報マッピング部３０２は、サーバプロトコルマッピング部３０７ｂにおいて管理される変換テーブル２を参照し、ユーザ情報の種類を示すプロトコル上の表現を、内部表現に変換し、ユーザ最新情報ディスカバリ部３０３に出力する。ユーザ最新情報ディスカバリ部３０３は、要求電文に含まれ内部表現に変換されたユーザ情報の種類を基にユーザ情報所在情報１を検索し、要求電文を作成最新のユーザ情報が保管されているリポジトリを決定する（ステップＳ２２）。なお本実施形態においては、ユーザ最新情報ディスカバリ部３０３は、全てのリポジトリを宛先として決定し情報取得部３０４に要求電文の作成を指示する。情報取得部３０４は、リポジトリプロトコルマッピング部３０７ｃにおいて管理される対応テーブル３を参照し、ユーザ情報の種類を示す内部表現を、各リポジトリに対応するプロトコル上の表現に変換し、決定したリポジトリに対する要求電文を作成する（ステップＳ２３）。リポジトリアクセス部３０５は、情報取得部３０４が作成した要求電文をリポジトリに送信する（ステップＳ２４）。要求電文を受信したリポジトリは、ユーザ情報ゲートウェイ２００からの要求電文に対してユーザ情報を送信する（ステップＳ２５）。
【００５１】
本実施形態において、リポジトリアクセス部３０５がリポジトリより最新のユーザ情報及び更新日時を受信すると、最新情報反映部３０８は、上述した１乃至４の更新パターンに基づいて、受信した情報が更新されているか否かを判定し、更新されている場合はユーザ情報所在情報１を更新する（ステップＳ２６）。具体的には、ユーザ情報を取得したリポジトリが最新情報管理リポジトリに登録されており（図１０ＢのステップＳ２６１でｙｅｓ）、かつ、更新日時に変更が無い場合には（ステップＳ２６２でｙｅｓ）、ユーザ情報所在情報１を変更しない（ステップＳ２６３）。一方、ユーザ情報を取得したリポジトリが最新情報管理リポジトリに登録されており（ステップＳ２６１でｙｅｓ）、かつ、更新日時に変更が有る場合には（ステップＳ２６２でｎｏ）、ユーザ情報所在情報１の更新日時をリポジトリより取得した更新日時に変更する（ステップＳ２６４）。
【００５２】
ユーザ情報を取得したリポジトリが最新情報管理リポジトリに登録されておらず（ステップＳ２６１でｎｏ）、かつ、更新日時に変更が無い場合には（ステップＳ２６５でｙｅｓ）、最新情報管理リポジトリの内容を、ユーザ情報を取得したリポジトリに変更する（ステップＳ２６６）。ユーザ情報を取得したリポジトリが最新情報管理リポジトリに登録されておらず（ステップＳ２６１でｎｏ）、かつ、更新日時に変更が有る場合には（ステップＳ２６５でｎｏ）、ユーザ情報所在情報１の更新日時をリポジトリより取得した更新日時に変更し、ユーザ情報所在情報１の最新情報管理リポジトリの内容を、ユーザ情報を取得したリポジトリに変更する（ステップＳ２６７）。
【００５３】
上記更新処理の後、ユーザ情報マッピング部３０２が、受信した最新情報を各サービスへの応答電文に変換し、応答送信部３０６が当該応答電文をサービスサーバ８００に送信する（ステップＳ２７）。
【００５４】
本実施形態にかかるユーザ情報ゲートウェイ３００によれば、最新情報反映部３０８を設けることにより、リポジトリに登録されているユーザ情報の更新をユーザ情報所在情報に反映させることができる。
【００５５】
上記説明では、サービスサーバ８００から要求電文を受信したタイミングでリポジトリにアクセスしてユーザ情報を取得し、ユーザ情報所在情報の更新を行っている。しかし、ユーザ情報ゲートウェイ３００にリポジトリアクセス開始部を設け、定期的にリポジトリにアクセスしてユーザ情報を取得し、ユーザ情報所在情報１の更新を行う態様とすることもできる。例えば、毎日１回（ユーザアクセスが少ない深夜時間帯に）リポジトリにアクセスし、ユーザ情報が最新であるか確認することができる。
【００５６】
また、ユーザ情報ゲートウェイ３００にPUSH要求対応部を設け、リポジトリがユーザ情報ゲートウェイ３００に対して更新通知をPUSHする態様とすることもできる。例えば、システム管理者があるリポジトリに登録されているユーザ情報を更新した場合、リポジトリがユーザ情報ゲートウェイ３００に対して更新通知を行う。ユーザ情報ゲートウェイ３００は、リポジトリより更新通知を受信すると、ユーザ情報所在情報１を更新する。
【００５７】
上記説明では、ユーザ情報とともに更新日時を取得する例について説明した。しかし、更新日時に代えて、更新を示す情報を取得してもよい。
【００５８】
［第４の実施形態］
本実施形態では、各リポジトリが管理するユーザ情報を同期する態様について説明する。ここで、同期とは、他のリポジトリが保持するユーザ情報を最新のユーザ情報に更新して登録することをいう。
【００５９】
図１１は、本実施形態にかかるユーザ情報ゲートウェイ４００を含むリポジトリ管理システム４０００の構成を示す図である。ユーザ情報ゲートウェイ４００は、第３の実施形態にかかるユーザ情報ゲートウェイ３００において情報更新・登録部４０９を追加し、情報取得部及び最新情報反映部を削除した構成である。その他の構成については、第２、第３の実施形態のユーザ情報ゲートウェイにおいて対応するそれぞれの構成と同様である。すなわちユーザ情報ゲートウェイ４００は、要求受付部４０１、ユーザ情報マッピング部４０２、ユーザ最新情報ディスカバリ部４０３、情報更新・登録部４０９、リポジトリアクセス部４０５、応答送信部４０６及び記憶部４０７を含む。
要求受付部４０１は、サービスサーバ８００よりユーザ情報を要求する電文（要求電文）を受け付ける。要求受付部４０１は、ユーザ情報ゲートウェイ４００が対応するプロトコルごとに複数存在してもよい。また、要求受付部４０１は、サービスサーバ８００より直接要求電文を受信することもあれば、ブラウザ等を介してリダイレクトされた要求電文を受信することもある。第１から第３の実施形態と同様、要求電文には、例えば、サービスサーバ８００がユーザ情報を要求する特定のユーザのユーザＩＤと、サービスサーバ８００が要求する特定のユーザ情報の種類が含まれている。
サービスサーバ８００からの要求電文は、要求受付部４０１からユーザ情報マッピング部４０２に入力される。ユーザ情報マッピング部４０２は、記憶部４０７のサーバプロトコルマッピング部４０７ｂにおいて管理される、第２、第３の実施形態と同様の変換テーブル２を参照し、サービスサーバ８００におけるユーザ情報の種類を示すプロトコル上の表現を、内部表現に変換し、ユーザ最新情報ディスカバリ部４０３に出力する。またリポジトリ９００からのユーザ情報も、リポジトリアクセス部４０５からユーザ情報マッピング部４０２に入力される。ユーザ情報マッピング部４０２は、変換テーブル２を参照し、リポジトリ９００におけるユーザ情報の種類を示すプロトコル上の表現を、サービスサーバ８００における表現に変換し、応答送信部４０６に出力する。
ユーザ最新情報ディスカバリ部４０３は、要求電文に含まれ内部表現に変換されたユーザ情報の種類を基に、第１から第３の実施形態と同様のユーザ情報所在情報１を検索し、最新のユーザ情報がどのリポジトリに登録されているかを検索する。ユーザ情報所在情報１は、記憶部４０７のユーザ情報所在情報管理部４０７ａに記憶されている。ユーザ最新情報ディスカバリ部４０３は、最新情報が保管されているリポジトリよりユーザ情報を取得することを決定する。
情報更新・登録部４０９は、リポジトリが対応しているユーザ情報の種類（e-mail、name、address、tel等）を判定する。情報更新・登録部４０９は、記憶部４０７のリポジトリプロトコルマッピング部４０７ｃにおいて管理される、第２、第３の実施形態と同様の対応テーブル３を参照し、ユーザ情報の種類を示す内部表現を、ユーザ最新情報ディスカバリ部４０３において決定したリポジトリに対応するプロトコル上の表現に変換し、決定したリポジトリに対する要求電文を作成する。
リポジトリアクセス部４０５は、情報更新・登録部４０９が生成した要求電文をリポジトリに送信する。要求電文を受信したリポジトリは、ユーザ情報ゲートウェイ４００からの要求電文に対して最新のユーザ情報を送信する。リポジトリアクセス部４０５は、リポジトリより最新のユーザ情報を受信する。リポジトリアクセス部４０５は、リポジトリにアクセスするプロトコルごとに存在することもある。
リポジトリアクセス部４０５は、リポジトリより最新のユーザ情報を受信すると、ユーザ情報マッピング部４０２に、最新のユーザ情報とリポジトリのプロトコルの情報を出力する。ユーザ情報マッピング部４０２は、サーバプロトコルマッピング部４０７ｂにおいて管理される変換テーブル２を参照し、ユーザ情報の種類を示すリポジトリのプロトコル上の表現を、ユーザ情報を要求したサービスサーバ８００のプロトコル上の表現に変換してサービスサーバ８００への応答電文を作成し応答送信部４０６に出力する。応答送信部４０６は、ユーザ情報マッピング部４０２が生成した応答電文をサービスサーバ８００に送信する。なお、応答送信部４０６はプロトコルごとに複数存在してもよい。
記憶部４０７は、第２、第３の実施形態と同様のユーザ情報所在情報１、変換テーブル２、対応テーブル３を記憶する。すなわち、記憶部４０７は、ユーザ情報所在情報管理部４０７ａ、サーバプロトコルマッピング部４０７ｂ及びリポジトリプロトコルマッピング部４０７ｃを備える。
ユーザ情報所在情報管理部４０７ａは、ユーザ情報所在情報１を管理する。サーバプロトコルマッピング部４０７ｂは、変換テーブル２を管理する。サーバプロトコルマッピング部４０７ｂが管理する情報には、電文を変換するための情報だけでなく、ユーザ情報の種類のマッピングを行うための情報も含まれる。リポジトリプロトコルマッピング部４０７ｃは、対応テーブル３を管理する。リポジトリプロトコルマッピング部４０７ｃが管理する情報には、電文を変換するための情報だけでなく、ユーザ情報ゲートウェイ４００において規定されるユーザ情報の種類と、リポジトリにおけるユーザ情報の種類との対応（マッピング）を行うための情報も含まれる。
【００６０】
ユーザ最新情報ディスカバリ部４０３は、上記の第３の実施形態のユーザ情報ゲートウェイ３００におけるユーザ最新情報ディスカバリ部３０３が有する機能の他、各リポジトリを検索し、最新でない（古い）ユーザ情報が登録されているリポジトリを検索する機能を有する。そして、古いユーザ情報が登録されているリポジトリに対してユーザ情報を更新して登録する要求を送信することを決定する。すなわちユーザ最新情報ディスカバリ部４０３は、情報更新・登録部４０９に対し、最新でない古いユーザ情報が登録されているリポジトリを宛先とし、ユーザ情報を更新して登録することを要求する要求電文の作成を指示する。
【００６１】
情報更新・登録部４０９は、古いユーザ情報が登録されているリポジトリに対し、更新・登録を要求する電文を作成する。この際、情報更新・登録部４０９は、対応テーブル３を参照し、ユーザ情報の種類を示す内部表現を、ユーザ最新情報ディスカバリ部４０３において最新でない古いユーザ情報が登録されていると決定されたリポジトリに対応するプロトコル上の表現に変換し、更新・登録を要求する電文を作成する。例えばユーザ情報の種類を「e-mail」と判定した場合、情報更新・登録部４０９は、E-mailアドレスの更新・登録を要求する電文を作成する。また情報更新・登録部４０９は、ユーザ情報所在情報１を更新する。すなわち、情報更新・登録部４０９は、ユーザ情報所在情報１の更新日時を現在時刻に書き換え、最新情報管理リポジトリを、ユーザ情報を更新・登録するリポジトリに書き換える。
リポジトリアクセス部４０５は、情報更新・登録部４０９が生成した要求電文を最新のユーザ情報とともにユーザ情報を更新・登録するリポジトリに送信する。
【００６２】
最新のユーザ情報とともに更新・登録を要求する電文を受信したリポジトリは、各リポジトリが管理するユーザ情報の同期を行う。
【００６３】
このようにして、ユーザ情報ゲートウェイ４００では、各リポジトリが管理するユーザ情報を更新して登録することができる。
【００６４】
リポジトリアクセス部４０５がリポジトリより最新のユーザ情報を取得する方法としては、第１及び２の実施形態にて説明したように、サービスからの要求電文を受信したタイミングでリポジトリにアクセスしてユーザ情報を取得する方法がある。この他、定期的にリポジトリにアクセスしてユーザ情報を取得する態様が考えられる。また、リポジトリが更新通知をPUSHする態様も考えられる。
【００６５】
［第５の実施形態］
本実施形態では、各リポジトリが管理するユーザ情報を削除する態様について説明する。各リポジトリが管理するユーザ情報を削除する理由としては、ユーザからの削除要求や、予めルールで定めた保管期限の徒過が考えられる。
【００６６】
図１２は、本実施形態にかかるユーザ情報ゲートウェイ５００を含むリポジトリ管理システム５０００の構成を示す図である。ユーザ情報ゲートウェイ５００は、第４の実施形態にかかるユーザ情報ゲートウェイ４００において情報更新・登録部の代わりに情報削除部５１０を設けた構成である。他の構成は、第４の実施形態のユーザ情報ゲートウェイ４００と同様である。すなわちユーザ情報ゲートウェイ５００は、要求受付部５０１、ユーザ情報マッピング部５０２、ユーザ最新情報ディスカバリ部５０３、情報削除部５１０、リポジトリアクセス部５０５、応答送信部５０６及び記憶部５０７を含む。
要求受付部５０１は、サービスサーバ８００よりユーザ情報の削除を要求する電文（要求電文）を受け付ける。要求受付部５０１は、ユーザ情報ゲートウェイ５００が対応するプロトコルごとに複数存在してもよい。また、要求受付部５０１は、サービスサーバ８００より直接要求電文を受信することもあれば、ブラウザ等を介してリダイレクトされた要求電文を受信することもある。要求電文には、例えば、サービスサーバ８００がユーザ情報の削除を要求する特定のユーザのユーザＩＤと、サービスサーバ８００が要求する特定のユーザ情報の種類が含まれている。
サービスサーバ８００からの削除要求電文は、要求受付部５０１からユーザ情報マッピング部５０２に入力される。ユーザ情報マッピング部５０２は、記憶部５０７のサーバプロトコルマッピング部５０７ｂにおいて管理される、第２から４の実施形態と同様の変換テーブル２を参照し、サービスサーバ８００におけるユーザ情報の種類を示すプロトコル上の表現を、内部表現に変換し、ユーザ最新情報ディスカバリ部５０３に出力する。またリポジトリ９００からのユーザ情報も、リポジトリアクセス部５０５からユーザ情報マッピング部５０２に入力される。ユーザ情報マッピング部５０２は、変換テーブル２を参照し、リポジトリ９００におけるユーザ情報の種類を示すプロトコル上の表現を、サービスサーバ８００における表現に変換し、応答送信部５０６に出力する。
ユーザ最新情報ディスカバリ部５０３は、ユーザ情報の削除を要求されたリポジトリにおけるユーザ情報を削除することを決定する。
情報削除部５１０は、リポジトリが対応しているユーザ情報の種類（e-mail、name、address、tel等）を判定する。情報削除部５１０は、記憶部５０７のリポジトリプロトコルマッピング部５０７ｃにおいて管理される、第２から４の実施形態と同様の対応テーブル３を参照し、ユーザ情報の種類を示す内部表現を、ユーザ最新情報ディスカバリ部５０３において決定したリポジトリに対応するプロトコル上の表現に変換し、決定したリポジトリに対する削除要求電文を作成する。
リポジトリアクセス部５０５は、情報削除部５１０が生成した削除要求電文をリポジトリに送信する。削除要求電文を受信したリポジトリは、ユーザ情報ゲートウェイ５００からの要求電文に対してユーザ情報を削除した旨の通知を送信してもよい。リポジトリアクセス部５０５は、リポジトリにアクセスするプロトコルごとに存在することもある。
リポジトリアクセス部５０５は、リポジトリよりユーザ情報を削除した旨の通知を受信すると、ユーザ情報マッピング部５０２に、ユーザ情報を削除した旨の通知とリポジトリのプロトコルの情報を出力する。ユーザ情報マッピング部５０２は、サーバプロトコルマッピング部５０７ｂにおいて管理される変換テーブル２を参照し、ユーザ情報の種類を示すリポジトリのプロトコル上の表現を、ユーザ情報を要求したサービスサーバ８００のプロトコル上の表現に変換してサービスサーバ８００への応答電文を作成し応答送信部５０６に出力する。応答送信部５０６は、ユーザ情報マッピング部５０２が生成した応答電文をサービスサーバ８００に送信する。なお、応答送信部５０６はプロトコルごとに複数存在してもよい。
記憶部５０７は、第２から４の実施形態と同様のユーザ情報所在情報１、変換テーブル２、対応テーブル３を記憶する。すなわち、記憶部５０７は、ユーザ情報所在情報管理部５０７ａ、サーバプロトコルマッピング部５０７ｂ及びリポジトリプロトコルマッピング部５０７ｃを備える。ユーザ情報所在情報管理部５０７ａは、ユーザ情報所在情報１を管理する。サーバプロトコルマッピング部５０７ｂは、変換テーブル２を管理する。サーバプロトコルマッピング部５０７ｂが管理する情報には、電文を変換するための情報だけでなく、ユーザ情報の種類のマッピングを行うための情報も含まれる。リポジトリプロトコルマッピング部５０７ｃは、対応テーブル３を管理する。リポジトリプロトコルマッピング部５０７ｃが管理する情報には、電文を変換するための情報だけでなく、ユーザ情報ゲートウェイ４００において規定されるユーザ情報の種類と、リポジトリにおけるユーザ情報の種類との対応（マッピング）を行うための情報も含まれる。
【００６７】
ユーザ最新情報ディスカバリ部５０３は、各リポジトリにユーザ情報が登録されているか否かを確認する機能を有する。
【００６８】
情報削除部５１０は、各リポジトリに対して削除を要求する電文を作成する。この際、情報削除部５１０は、リポジトリが対応しているユーザ情報の種類を判定する。情報削除部５１０は、例えばユーザ情報の種類を「e-mail」と判定した場合、E-mailアドレスの削除を要求する電文を作成する。また、情報削除部５１０は、このタイミングでユーザ情報所在情報１を更新する。すなわち、ユーザ情報所在情報１の最新情報管理リポジトリより、ユーザ情報を削除するリポジトリの記載を削除する。
【００６９】
このようにして、ユーザ情報ゲートウェイ５００では、各リポジトリが管理するユーザ情報を削除することができる。
【００７０】
以上説明した本発明の実施形態にかかるリポジトリ管理システムの利用形態の例について説明する。
【００７１】
図１３は、オンラインサイトでのユーザ情報管理システムの例を示す図である。一般的にオンラインサイトでは、複数のユーザ情報管理基盤を具備する。各サービスがこれらのリポジトリに独自にアクセスするのではなく、第１乃至第５の実施形態にかかるユーザ情報ゲートウェイ１００乃至５００経由でアクセスする。
【００７２】
図１４は、ユーザの履歴情報管理のためのユーザ情報管理システムの例を示す図である。ユーザの情報を収集して分析し、リコメンド等に活用することがある。これは、いわゆるビッグデータの活用である。この場合、各サービスがユーザ情報や履歴情報等を管理している。そのため、リコメンドエンジンがユーザの履歴情報を利用する場合には、複数のリポジトリにアクセスする必要がある。そこで、第１乃至第５の実施形態にかかるユーザ情報ゲートウェイ１００乃至５００経由でアクセスする。そして、リコメンドエンジンが履歴情報を分析した結果は、各サイトに提供される。
【００７３】
図１５は、M2M（Machine to Machine）におけるユーザ情報管理システムの例を示す図である。M2Mシステムでは、様々なデバイス情報が複数のサーバにて管理されている。サービスがデバイス情報を利用する際には、複数のサーバにアクセスする必要がある。そこで、第１乃至第５の実施形態にかかるユーザ情報ゲートウェイ１００乃至５００がデバイス情報を管理する複数のリポジトリへアクセスする。
【００７４】
以上、本発明の実施形態について説明したが、本発明は、上記実施形態に限定されるものではなく、本発明の趣旨を逸脱しない限りにおいて、他の変形例、応用例を含むことは言うまでもない。
【００７５】
上記の実施形態の一部又は全部は、以下のようにも記載されうるが、以下には限られない。
【００７６】
（付記１）
サービスサーバから、ユーザ情報を要求する電文を受け付ける要求受付部と、ユーザ情報を保管する複数のリポジトリのうち最後に更新されたユーザ情報を保管するリポジトリを特定可能な情報であるユーザ情報所在情報を参照して、最後に更新されたユーザ情報を保管するリポジトリを決定するユーザ最新情報ディスカバリ部と、前記決定されたリポジトリから前記電文に対応するユーザ情報を取得するリポジトリアクセス部と、前記リポジトリアクセス部により取得した情報を前記サービスサーバに送信する応答送信部と、を備えるリポジトリ管理装置。
【００７７】
（付記２）
前記サービスサーバが対応するプロトコルと前記リポジトリ管理装置において規定されるユーザ情報とが対応づけられている変換テーブルを参照して、前記要求受付部が受け付けた電文に対応するユーザ情報を前記リポジトリ管理装置において規定されるユーザ情報に変換するユーザ情報マッピング部と、前記リポジトリ管理装置において規定されるユーザ情報と前記リポジトリが対応するプロトコルとが対応づけられている対応テーブルを参照して、最後に更新されたユーザ情報を保管するリポジトリに対しユーザ情報を要求する電文を作成する情報取得部と、をさらに備え、前記リポジトリアクセス部は、前記情報取得部が作成した電文を前記最後に更新されたユーザ情報を保管するリポジトリに送信し前記変換されたユーザ情報に対応するユーザ情報を前記リポジトリから取得する付記１に記載のリポジトリ管理装置。
【００７８】
（付記３）
前記リポジトリアクセス部は、複数のリポジトリから前記電文に対応するユーザ情報を取得し、前記リポジトリアクセス部により取得したユーザ情報が更新されているか否かを判定し、更新されている場合に前記ユーザ情報所在情報を更新する最新情報反映部をさらに備える付記１又は２に記載のリポジトリ管理装置。
【００７９】
（付記４）
前記リポジトリアクセス部は、複数のリポジトリからユーザ情報を取得し、前記複数のリポジトリのうち最新でないユーザ情報を保管するリポジトリに対してユーザ情報の更新を要求する電文を作成し、前記ユーザ情報所在情報の更新を行う情報更新・登録部をさらに備える付記１乃至３のいずれか一項に記載のリポジトリ管理装置。
【００８０】
（付記５）
前記リポジトリアクセス部は、ユーザ情報を保管するリポジトリからユーザ情報を取得し、
前記リポジトリに対してユーザ情報の削除を要求する電文を作成し、前記ユーザ情報所在情報の更新を行う削除部をさらに備える付記１乃至３のいずれか一項に記載のリポジトリ管理装置。
【００８１】
（付記６）
前記リポジトリアクセス部は、前記リポジトリに定期的にアクセスしてユーザ情報を取得する付記３乃至５に記載のリポジトリ管理装置。
【００８２】
（付記７）
前記リポジトリアクセス部は、前記リポジトリにおいてユーザ情報が更新された場合に前記リポジトリからユーザ情報を取得する付記３乃至５に記載のリポジトリ管理装置。
【００８３】
（付記８）
サービスサーバとリポジトリとの通信を仲介するリポジトリ管理装置のリポジトリ管理方法において、サービスサーバから、ユーザ情報を要求する電文を受け付け、
ユーザ情報を保管する複数のリポジトリのうち最後に更新されたユーザ情報を保管するリポジトリを特定可能な情報であるユーザ情報所在情報を参照して、最後に更新されたユーザ情報を保管するリポジトリを決定し、
決定されたリポジトリから前記電文に対応するユーザ情報を取得し、
取得したユーザ情報を前記サービスサーバに送信するリポジトリ管理方法。
【００８４】
（付記９）
前記サービスサーバのプロトコルと前記リポジトリ管理装置において規定されるユーザ情報とが対応づけられている変換テーブルを参照して、前記サービスサーバから受け付けた電文中のユーザ情報を前記リポジトリ管理装置において規定されるユーザ情報に変換し、
前記リポジトリ管理装置において規定されるユーザ情報と前記リポジトリが対応するプロトコルとが対応づけられている対応テーブルを参照して、最後に更新されたユーザ情報を保管するリポジトリに対しユーザ情報を要求する電文を作成し、
作成した電文を前記最後に更新されたユーザ情報を保管するリポジトリに送信し前記変換されたユーザ情報に対応するユーザ情報を前記リポジトリから取得する付記８に記載のリポジトリ管理方法。
【００８５】
（付記１０）
複数のリポジトリから前記電文に対応するユーザ情報を取得し、
取得したユーザ情報が更新されているか否かを判定し、更新されている場合に前記ユーザ情報所在情報を更新する付記８又は９に記載のリポジトリ管理方法。
【００８６】
（付記１１）
複数のリポジトリからユーザ情報を取得し、前記複数のリポジトリのうち最新でないユーザ情報を保管するリポジトリに対してユーザ情報の更新を要求する電文を作成し、前記ユーザ情報所在情報の更新を行う付記８乃至１０のいずれかに記載のリポジトリ管理方法。
【００８７】
（付記１２）
ユーザ情報を保管するリポジトリからユーザ情報を取得し、
前記リポジトリに対してユーザ情報の削除を要求する電文を作成し、前記ユーザ情報所在情報の更新を行う付記８乃至１０のいずれかに記載のリポジトリ管理方法。
【００８８】
（付記１３）
前記リポジトリに定期的にアクセスしてユーザ情報を取得する付記１０乃至１２のいずれかに記載のリポジトリ管理方法。
【００８９】
（付記１４）
前記リポジトリにおいてユーザ情報が更新された場合に前記リポジトリからユーザ情報を取得する付記１０乃至１２のいずれかに記載のリポジトリ管理方法。
【００９０】
（付記１５）
ユーザ情報を要求する電文を送信するサービスサーバと、
ユーザ情報を保管するリポジトリと、
サービスサーバから、ユーザ情報を要求する電文を受け付ける要求受付部と、
ユーザ情報を保管する複数のリポジトリのうち最後に更新されたユーザ情報を保管するリポジトリを特定可能な情報であるユーザ情報所在情報を参照して、最後に更新されたユーザ情報を保管するリポジトリを決定するユーザ最新情報ディスカバリ部と、
前記決定されたリポジトリから前記電文に対応するユーザ情報を取得するリポジトリアクセス部と、
前記リポジトリアクセス部により取得した情報を前記サービスサーバに送信する応答送信部と、を含むリポジトリ管理システム。
【００９１】
この出願は、２０１４年２月２６日に出願された日本出願特願２０１４−０３５２８５を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【００９２】
１    ユーザ情報所在情報
２    変換テーブル
３    対応テーブル
１００    リポジトリ管理装置
２００、３００、４００、５００    リポジトリ管理装置（ユーザ情報ゲートウェイ）
１０１、２０１、３０１、４０１、５０１    要求受付部
２０２、３０２、４０２、５０２    ユーザ情報マッピング部
１０３、２０３、３０３、４０３、５０３    ユーザ最新情報ディスカバリ部
２０４、３０４    情報取得部
１０５、２０５、３０５、４０５、５０５    リポジトリアクセス部
１０６、２０６、３０６、４０６、５０６    応答送信部
２０７、３０７、４０７、５０７    記憶部
２０７ａ、３０７ａ、４０７ａ、５０７ａ    ユーザ情報所在情報管理部
２０７ｂ、３０７ｂ、４０７ｂ、５０７ｂ    サーバプロトコルマッピング部
２０７ｃ、３０７ｃ、４０７ｃ、５０７ｃ    リポジトリプロトコルマッピング部
３０８    最新情報反映部
４０９    情報更新・登録部
５１０    情報削除部
８００    サービスサーバ
９００    リポジトリ
１０００、２０００、３０００、４０００、５０００    リポジトリ管理システム
【図１】
2015129239.tif 000003
【図２】
2015129239.tif 000004
【図３】
2015129239.tif 000005
【図４】
2015129239.tif 000006
【図５】
2015129239.tif 000007
【図６】
2015129239.tif 000008
【図７】
2015129239.tif 000009
【図８】
2015129239.tif 000010
【図９】
2015129239.tif 000011
【図１０Ａ】
2015129239.tif 000012
【図１０Ｂ】
2015129239.tif 000013
【図１１】
2015129239.tif 000014
【図１２】
2015129239.tif 000015
【図１３】
2015129239.tif 000016
【図１４】
2015129239.tif 000017
【図１５】
2015129239.tif 000018
【図１６】
2015129239.tif 000019
【国際調査報告】
2015129239.tif 000020
2015129239.tif 000021
2015129239.tif 000022