(57)【特許請求の範囲】
【請求項１】
第１権限情報に基づきサービスへのアクセス制御を行う第１システムと、前記第１権限情報とは異なる第２権限情報に基づきサービスへのアクセス制御を行う第２システムと、前記第１システムと前記第２システムとを連携させる連携システムとを備えるアクセス制御連携システムであり、
前記第１システムは、
処理装置によりユーザの認証を行うユーザ認証部と、
前記ユーザ認証部が認証したユーザを示すユーザＩＤと、前記第２システムが提供する所定のサービスを示すサービスＩＤとを含むサービス要求を前記第２システムへ通信装置を介して送信して、前記ユーザに前記第２システムが提供する前記サービスへのアクセス許可を要求するサービス要求送信部とを備え、
前記連携システムは、
前記第１権限情報と前記第２権限情報との対応関係を示す権限対応情報を記憶装置に記憶する権限対応情報記憶部と、
前記第１システムにおける前記ユーザの権限を示す第１権限情報を前記第１システムから通信装置を介して取得する権限取得部と、
前記権限対応情報記憶部が記憶した権限対応情報から、前記権限取得部が取得した第１権限情報に対応する第２権限情報を処理装置により検索する権限検索部とを備え、
前記第２システムは、
前記権限検索部が検索した第２権限情報に基づき、前記第１システムの前記サービス要求送信部が送信したサービス要求に含まれるサービスＩＤが示すサービスへ、前記サービス要求に含まれるユーザＩＤが示すユーザのアクセスが許可されると判定される場合に、前記ユーザに前記サービスへのアクセスを処理装置により許可するアクセス許可部
を備えることを特徴とするアクセス制御連携システム。
【請求項２】
前記第２システムは、さらに、
前記サービス要求を受信した場合、受信したサービス要求に含まれるユーザＩＤを含む権限要求を前記連携システムへ通信装置を介して送信して、前記ユーザの権限を示す権限情報の送信を要求する権限要求送信部を備え、
前記連携システムの前記権限取得部は、前記権限要求送信部が送信した権限要求を受信した場合、受信した権限要求に含まれるユーザＩＤが示すユーザの第１権限情報を前記第１システムから取得し、
前記連携システムの前記権限検索部は、前記権限取得部が取得した第１権限情報に対応する第２権限情報を検索し、
前記連携システムは、さらに、
前記権限検索部が検索した第２権限情報を前記第２システムへ通信装置を介して送信する権限送信部を備え、
前記第２システムの前記アクセス許可部は、前記連携システムの前記権限送信部が送信した第２権限情報に基づき、受信したサービス要求に含まれるサービスＩＤが示すサービスへ、受信したサービス要求に含まれるユーザＩＤが示すユーザのアクセスが許可されるか否かを判定して、前記サービスへ前記ユーザのアクセスが許可されると判定した場合、前記ユーザに前記サービスへのアクセスを許可する
ことを特徴とする請求項１に記載のアクセス制御連携システム。
【請求項３】
前記第１システムは、さらに、
前記ユーザ認証部がユーザを認証した場合、認証したユーザの権限を示す第１権限情報を前記連携システムへ通信装置を介して送信する権限送信部を備え、
前記連携システムの前記権限取得部は、前記権限送信部が送信した第１権限情報を取得し、
前記連携システムの前記権限検索部は、前記権限取得部が取得した第１権限情報に対応する第２権限情報を検索し、
前記連携システムは、さらに、
第２権限情報と、その第２権限情報が示す権限でアクセスが許されるサービスとの対応関係を示すサービス対応情報を記憶装置に記憶するサービス対応情報記憶部と、
前記サービス対応情報記憶部が記憶したサービス対応情報に基づき、前記権限検索部が検索した第２権限情報でアクセスが許されるサービスの一覧情報を取得するサービス一覧取得部と、
前記サービス一覧取得部が取得した一覧情報を前記第１システムへ送信する一覧送信部とを備え、
前記第１システムは、さらに、
前記一覧送信部が送信した一覧情報に含まれるサービスから、提供を受けたいサービスを入力装置により入力するサービス入力部を備え、
前記第１システムのサービス要求送信部は、前記ユーザＩＤと、前記サービス入力部が入力したサービスを示すサービスＩＤとを含むサービス要求を前記第２システムへ送信し、
前記第２システムの前記アクセス許可部は、前記第１システムの前記サービス要求送信部が送信したサービス要求を受信した場合、受信したサービス要求に含まれるサービスＩＤが示すサービスへ、受信したサービス要求に含まれるユーザＩＤが示すユーザＩＤが示すユーザのアクセスが許可されると判定して、前記ユーザに前記サービスへのアクセスを許可する
ことを特徴とする請求項１に記載のアクセス制御連携システム。
【請求項４】
前記第２システムは、さらに、
前記サービス要求に含まれるユーザＩＤを含む確認要求を前記連携システムへ通信装置を介して送信して、前記ユーザＩＤが示すユーザが前記第１システムの前記ユーザ認証部が認証した認証済ユーザであることの確認を要求する確認要求送信部を備え、
前記連携システムは、さらに、
前記確認要求送信部が送信した確認要求に含まれるユーザＩＤを前記第１システムへ送信して、前記ユーザＩＤが示すユーザが前記認証済ユーザであることを処理装置により確認する認証確認部を備え、
前記第２システムの前記アクセス許可部は、前記連携システムの前記認証確認部が認証済ユーザであることを確認した場合、前記ユーザに前記サービスへのアクセスを許可する
ことを特徴とする請求項３に記載のアクセス制御連携システム。
【請求項５】
第１権限情報に基づきサービスへのアクセス制御を行う第１システムと、前記第１権限情報とは異なる第２権限情報に基づきサービスへのアクセス制御を行う第２システムとのアクセス制御を連携させるアクセス制御連携方法であり、
前記第１システムが、ユーザの認証を行うユーザ認証工程と、
前記第１システムが、前記ユーザ認証工程で認証したユーザを示すユーザＩＤと、前記第２システムが提供する所定のサービスを示すサービスＩＤとを含むサービス要求を前記第２システムへ送信して、前記ユーザに前記第２システムが提供する前記サービスへのアクセス許可を要求するサービス要求送信工程と、
前記第１システムと前記第２システムとを連携させる連携システムが、前記第１権限情報を前記第１システムから取得する権限取得工程と、
前記連携システムが、予め記憶装置に記憶した前記第１権限情報と前記第２権限情報との対応関係を示す権限対応情報から、前記権限取得工程で取得した第１権限情報に対応する第２権限情報を検索する権限検索工程と、
前記第２システムが、前記権限検索工程で検索した第２権限情報に基づき、前記サービス要求送信工程で送信したサービス要求に含まれるサービスＩＤが示すサービスへ、前記サービス要求に含まれるユーザＩＤが示すユーザのアクセスが許可されると判定される場合に、前記ユーザに前記サービスへのアクセスを許可するアクセス許可工程と
を備えることを特徴とするアクセス制御連携方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、異なるアクセス制御方式でアクセス制御を行う複数のシステム間において、アクセス制御を連携させる技術に関する。
【背景技術】
【０００２】
現在、多様な情報サービスが提供されており、それらのサービスを連携することにより、サービスの質の向上や新たなサービスの創造が期待されている。
異なるシステム間で安全に情報サービスを連携する場合、共通のアカウント及びアクセス権限が必要である。しかし、異なるシステム間でアカウント及びアクセス権限を共通化することは、ＩＤの割り振りが困難であることや、管理保守コストが高いことから現実的ではない。そこで、既に各システムで管理されているユーザのＩＤ及びアクセス権限を用いて認証を行い、連携を図るＩＤ連携及びアクセス権限制御が必要である。
【０００３】
特許文献１には、認証代行サーバが認証代行サーバ用のＩＤと、各システム識別情報及びそのシステム用のＩＤとの対応付けを行い、認証代行サーバで認証を行うことにより、複数のシステム間でＩＤ連携を実現する方法についての記載がある。しかし、特許文献１には、アクセス権限の制御については記載されていない。
【０００４】
特許文献２には、ユーザが所属するシステムではなく、サービスを提供するシステム側で全てのユーザを認証し、認証したユーザに対して開示対象データのアクセス権限を設定することについての記載がある。この方法では、設定したアクセス権限に基づきアクセス制御を行う。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許公開２００７−２９９３０３号公報
【特許文献２】特許公開２００９−２３７６７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献２に記載された方法では、各システムが全てのユーザの認証及びアクセス権限制御を行う。そのため、各システムが連携する全てのシステムの認証情報（属性やロール等）を保持する必要がある。したがって、連携するシステムが増加するに従い、保持する情報が増加し、管理に負担が掛かる。また、あるシステムが認証情報を更新すると、全てのシステムが管理情報を見直さなければならず、大変な手間がかかるとともに、更新のタイムラグが発生する。
この発明は、複数のシステム間のアクセス制御を連携させる場合において、あるシステムにおける認証情報の更新に伴う保持情報変更作業の手間を軽減するとともに、更新のタイムラグを小さくすることを目的とする。
【課題を解決するための手段】
【０００７】
この発明に係るアクセス制御連携システムは、
第１権限情報に基づきサービスへのアクセス制御を行う第１システムと、前記第１権限情報とは異なる第２権限情報に基づきサービスへのアクセス制御を行う第２システムと、前記第１システムと前記第２システムとを連携させる連携システムとを備えるアクセス制御連携システムであり、
前記第１システムは、
処理装置によりユーザの認証を行うユーザ認証部と、
前記ユーザ認証部が認証したユーザを示すユーザＩＤと、前記第２システムが提供する所定のサービスを示すサービスＩＤとを含むサービス要求を前記第２システムへ通信装置を介して送信して、前記ユーザに前記第２システムが提供する前記サービスへのアクセス許可を要求するサービス要求送信部とを備え、
前記連携システムは、
前記第１権限情報と前記第２権限情報との対応関係を示す権限対応情報を記憶装置に記憶する権限対応情報記憶部と、
前記第１システムにおける前記ユーザの権限を示す第１権限情報を前記第１システムから通信装置を介して取得する権限取得部と、
前記権限対応情報記憶部が記憶した権限対応情報から、前記権限取得部が取得した第１権限情報に対応する第２権限情報を処理装置により検索する権限検索部とを備え、
前記第２システムは、
前記権限検索部が検索した第２権限情報に基づき、前記第１システムの前記サービス要求送信部が送信したいサービス要求に含まれるサービスＩＤが示すサービスへ、前記サービス要求に含まれるユーザＩＤが示すユーザのアクセスが許可されると判定される場合に、前記ユーザに前記サービスへのアクセスを処理装置により許可するアクセス許可部
を備えることを特徴とする。
【発明の効果】
【０００８】
この発明に係るアクセス制御連携システムは、サービスを提供する各システム（第１システムと第２システム）は、自システムに所属するユーザの認証情報のみを保持していればよい。したがって、あるシステムが認証情報を更新した場合に、サービスを提供する他のシステムは認証情報の更新をする必要がない。
【図面の簡単な説明】
【０００９】
【図１】実施の形態１に係るアクセス制御連携システム１の機能ブロック図。
【図２】ＩＤ管理テーブル１５０，２５０が記憶する認証情報の一例を示す図。
【図３】図２とは異なる認証情報の一例を示す図。
【図４】コンテンツテーブル１４０，２４０が記憶する制御情報の一例を示す図。
【図５】ロールマッピングテーブル３３０が記憶する権限対応情報の一例を示す図。
【図６】図５とは異なる権限対応情報の一例を示す図。
【図７】実施の形態１に係るアクセス制御連携システム１の処理の流れを示すフローチャート。
【図８】実施の形態２に係るアクセス制御連携システム１の機能ブロック図。
【図９】ロールサービスマッピングテーブル３４０が記憶したサービス対応情報の一例を示す図。
【図１０】図９とは異なるサービス対応情報の一例を示す図。
【図１１】実施の形態２に係るアクセス制御連携システム１の処理の流れを示すフローチャート。
【図１２】各サーバのハードウェア構成の一例を示す図。
【発明を実施するための形態】
【００１０】
以下、図に基づき、この発明の実施の形態について説明する。
なお、以下の説明において、処理装置は後述するＣＰＵ９１１等である。記憶装置は後述するＲＯＭ９１３、ＲＡＭ９１４、磁気ディスク９２０あるいはＣＰＵ９１１が有するキャッシュメモリやレジスタ等である。入力装置は後述するキーボード９０２、通信ボード９１５等である。通信装置は、後述する通信ボード９１５等である。つまり、処理装置、記憶装置、入力装置、通信装置はハードウェアである。
【００１１】
実施の形態１．
図１は、実施の形態１に係るアクセス制御連携システム１の機能ブロック図である。
アクセス制御連携システム１は、サービスを提供する複数のシステム（ここでは、システムＡ１００とシステムＢ２００）と、複数のシステムのアクセス制御を連携させる中央認証機関３００（連携システム）とを備える。
サービスを提供する各システムの間、及び、サービスを提供する各システムと中央認証機関３００との間は、ネットワークで接続されている。
【００１２】
システムＡ１００とシステムＢ２００とは、同じ構成である。システムＡ１００とシステムＢ２００とは、それぞれ、連携サーバ１１０，２１０、ＡＰＰサーバ１２０，２２０、認証サーバ１３０，２３０、コンテンツテーブル１４０，２４０、ＩＤ管理テーブル１５０，２５０を備える。
連携サーバ１１０，２１０は、サービスを提供するシステム間の連携を図るためのサーバである。連携サーバ１１０，２１０は、サービス要求送信部１１１，２１１、ロール送信部１１２，２１２（権限要求送信部）を備える。
ＡＰＰサーバ１２０，２２０は、ユーザへサービスを提供するサーバである。ＡＰＰサーバ１２０，２２０は、サービス提供部１２１，２２１（アクセス許可部）を備える。
認証サーバ１３０，２３０は、ユーザを認証するサーバである。認証サーバ１３０，２３０は、ユーザ認証部１３１，２３１を備える。
コンテンツテーブル１４０，２４０は、ＡＰＰサーバ１２０，２２０がサービスの提供するか否かを決定する基準となる制御情報を記憶した記憶装置である。
ＩＤ管理テーブル１５０，２５０は、自システムに所属するユーザのユーザＩＤやロール等を認証情報として記憶した記憶装置である。
【００１３】
中央認証機関３００は、連携サーバ３１０、ロール変換サーバ３２０、ロールマッピングテーブル３３０（権限対応情報記憶部）を備える。
連携サーバ３１０は、サービスを提供するシステム間の連携を図るためのサーバである。連携サーバ３１０は、ロール取得部３１１（権限取得部）、ロール転送部３１２（権限送信部）を備える。
ロール変換サーバ３２０は、あるシステム（例えば、システムＡ１００）におけるユーザの権限を示すロール（権限情報）を、他のシステム（例えば、システムＢ２００）におけるロールへ変換するサーバである。ロール変換サーバ３２０は、ロール変換部３２１（権限検索部）を備える。
ロールマッピングテーブル３３０は、サービスを提供する各システムにおけるロールの対応関係を権限対応情報として記憶した記憶装置である。
【００１４】
なお、上記説明では、システムＡ１００、システムＢ２００、中央認証機関３００は、複数のサーバで構成されるとした。しかし、システムＡ１００、システムＢ２００、中央認証機関３００は、単一のサーバで構成されていてもよい。
【００１５】
図２は、ＩＤ管理テーブル１５０，２５０が記憶する認証情報の一例を示す図である。図２（Ａ）は、システムＡ１００のＩＤ管理テーブル１５０が記憶する認証情報の例を示す。図２（Ｂ）は、システムＢ２００のＩＤ管理テーブル２５０が記憶する認証情報の例を示す。
認証情報には、ユーザＩＤ、パスワード、名前、住所、ロールが含まれる。
図２（Ａ）に示す認証情報は、システムＡ１００における認証情報であるため、認証情報にはシステムＡ１００に所属するユーザに関する情報のみ記憶されている。また、図２（Ａ）に示す認証情報に含まれるロールは、システムＡ１００におけるアクセス権限を示す第１ロール（第１権限情報）である。
同様に、図２（Ｂ）に示す認証情報は、システムＢ２００における認証情報であるため、認証情報にはシステムＢ２００に所属するユーザに関する情報のみ記憶されている。また、図２（Ｂ）に示す認証情報に含まれるロールは、システムＢ２００におけるアクセス権限を示す第２ロール（第２権限情報）である。
【００１６】
図３は、図２とは異なる認証情報の一例を示す図である。図３では、図２（Ａ）に対応する認証情報を示す。
図３に示す認証情報は、図２に示す認証情報に含まれる情報に加え、公開用ＩＤを含む。公開用ＩＤは、そのシステムに所属するユーザを識別可能なＩＤであって、他のシステムへ公開するためのＩＤである。システム内で使用しているユーザＩＤを他のシステムへ公開したくない場合には認証情報を図３に示すような構成とし、他システムへユーザＩＤを公開する必要がある場合には、ユーザＩＤに代えて公開用ＩＤを公開すればよい。
【００１７】
図４は、コンテンツテーブル１４０，２４０が記憶する制御情報の一例を示す図である。なお、図４では、コンテンツテーブル２４０が記憶する制御情報の一例を示す。つまり、図４では、システムＢ２００で管理される制御情報の一例を示す。
制御情報は、サービスＩＤとロールとを含み、そのシステムで提供するサービス毎に、そのサービスへのアクセスを許可するロールが記憶される。図４では、コンテンツテーブル２４０が記憶する制御情報であるため、制御情報は、システムＢ２００が提供するサービスのサービスＩＤと、システムＢ２００におけるアクセス権限を示す第２ロールとを含む。
例えば、あるサービスへ複数の第２ロールに対してアクセスを許可する場合、そのサービスに対応させてアクセスを許可する第２ロールを全て記憶してもよいし、アクセスを許可する第２ロールのうち最も権限の弱い（最下位の）第２ロールのみを記憶してもよい。なお、アクセスを許可する第２ロールのうち最も権限の弱い第２ロールのみを記憶する場合、権限の強い（上位の）第２ロールは、権限の弱い（下位）の第２ロールがアクセスできるサービスへはアクセスできるものとする。
【００１８】
図５は、ロールマッピングテーブル３３０が記憶する権限対応情報の一例を示す図である。
権限対応情報は、各システム間のロールの対応関係を示す情報である。つまり、システムＡ１００における各第１ロールと、システムＢ２００における各第２ロールとが対応付けられた情報である。
【００１９】
図６は、図５とは異なる権限対応情報の一例を示す図である。
図６に示す権限対応情報は、各システムにおける各ロールと、共通のロールとが対応付けられた情報である。
連携するシステムが多くなった場合、各システム間のロールの対応関係を記憶すると、記憶しなければならない情報量が多くなってしまう。そこで、図６に示すように、共通のロールとの各システムのロールとの間の対応関係を記憶することで、記憶しなければならない情報量を減らすことができる。
【００２０】
図１と図７とに基づき、システムＡ１００及びシステムＢ２００と、中央認証機関３００との機能及び動作について説明する。
図７は、実施の形態１に係るアクセス制御連携システム１の処理の流れを示すフローチャートである。
なお、ここでは、システムＡ１００（第１システム）に所属するユーザが、システムＢ２００（第２システム）が提供するサービスへアクセスする場合を例として説明する。
【００２１】
（Ｓ１０１）
システムＡ１００に所属するユーザがシステムＡ１００へログインする。例えば、ユーザは、端末からユーザＩＤ及びパスワードを入力して、システムＡ１００へログインする。
すると、認証サーバ１３０のユーザ認証部１３１は、ＩＤ管理テーブル１５０に記憶された認証情報と、入力されたユーザＩＤ及びパスワードとに基づき、ユーザを処理装置により認証する。
【００２２】
（Ｓ１０２）
ユーザは、アクセスしたいサービスを指定する。例えば、ユーザは、端末からアクセスしたサービスのサービスＩＤを入力することで、サービスを指定する。
指定されたサービスがシステムＡ１００で提供するサービスである場合には、ＡＰＰサーバ１２０のサービス提供部１２１が、コンテンツテーブル１４０に記憶された制御情報に基づき、指定されたサービスへのユーザのアクセスを許可するか否かを処理装置により判定する。そして、アクセスを許可すると判定した場合、サービス提供部１２１はユーザへサービスを処理装置により提供する。
ここで、指定されたサービスへのユーザのアクセスを許可するか否かを判定する場合、まず、サービス提供部１２１は、ＩＤ管理テーブル１５０に記憶された認証情報から、そのユーザについての第１ロールを取得する。また、サービス提供部１２１は、コンテンツテーブル１４０に記憶された制御情報から、指定されたサービスへのアクセスを許可する第１ロールを取得する。そして、サービス提供部１２１は、ＩＤ管理テーブル１５０から取得した第１ロールと、コンテンツテーブル１４０から取得した第１ロールとを比較することで、そのユーザへ指定されたサービスへのアクセスを許可するか否かを判定できる。
なお、ここでは、ユーザは、システムＡ１００が提供するサービスではなく、システムＢ２００が提供するサービスを指定したとする。この場合、サービス提供部１２１は、ユーザＩＤと、指定されたサービスを示すサービスＩＤとを連携サーバ１１０のサービス要求送信部１１１へ送信する。
【００２３】
（Ｓ１０３）
連携サーバ１１０のサービス要求送信部１１１は、受信したユーザＩＤ及びサービスＩＤと、システムＡ１００を示すシステムＩＤ（Ａ）とを含むサービス要求をシステムＢ２００へ通信装置を介して送信する。これにより、サービス要求送信部１１１は、送信したサービスＩＤが示すサービスを送信したユーザＩＤが示すユーザへ提供することをシステムＢ２００に要求する。
【００２４】
（Ｓ１０４）
システムＢ２００ではサービス要求を受信すると、連携サーバ２１０のロール送信部２１２が、サービス要求に含まれるユーザＩＤ及びシステムＩＤ（Ａ）と、システムＢ２００を示すシステムＩＤ（Ｂ）とを含む権限要求を中央認証機関３００へ通信装置を介して送信する。これにより、ロール送信部２１２は、ユーザＩＤが示すユーザの第２ロールを送信することを中央認証機関３００に要求する。
【００２５】
（Ｓ１０５）
中央認証機関３００では権限要求を受信すると、連携サーバ３１０のロール取得部３１１が、権限要求に含まれるユーザＩＤを含む権限要求をシステムＡ１００へ通信装置を介して送信する。この際、送信先のシステムは、権限要求に含まれるシステムＩＤ（Ａ）から特定される。これにより、連携サーバ３１０は、送信したユーザＩＤが示すユーザのシステムＡ１００における第１ロールを送信することをシステムＡ１００に要求する。
【００２６】
（Ｓ１０６）
システムＡ１００では権限要求を受信すると、連携サーバ１１０のロール送信部１１２が、権限要求に含まれるユーザＩＤが示すユーザの第１ロールをＩＤ管理テーブル１５０から取得する。そして、ロール送信部１１２は、取得した第１ロールを中央認証機関３００へ通信装置を介して送信する。
【００２７】
（Ｓ１０７）
中央認証機関３００では第１ロールを受信すると、ロール変換サーバ３２０のロール変換部３２１が、ロールマッピングテーブル３３０が記憶した権限対応情報に基づき、取得したシステムＡ１００における第１ロールに対応するシステムＢ２００における第２ロールを処理装置により検索する。つまり、ロール変換部３２１は、システムＡ１００における第１ロールを、システムＢ２００における第２ロールへ変換する。この際、どのシステムにおけるロールへ変換すればよいかは、権限要求に含まれるシステムＩＤ（Ｂ）から特定される。
【００２８】
（Ｓ１０８）
連携サーバ３１０のロール転送部３１２は、ロール変換部３２１が変換したシステムＢ２００における第２ロールを通信装置を介してシステムＢ２００へ送信する。この際、送信先のシステムは、権限要求に含まれるシステムＩＤ（Ｂ）から特定される。
【００２９】
（Ｓ１０９）
連携サーバ２１０のロール送信部２１２は、システムＢ２００における第２ロールを受信すると、受信した第２ロールとサービス要求に含まれるサービスＩＤとをＡＰＰサーバ２２０へ送信する。
ＡＰＰサーバ２２０のサービス提供部２２１は、受信した第２ロールと、コンテンツテーブル２４０に記憶された制御情報とに基づき、受信したサービスＩＤが示すサービスへのユーザのアクセスを許可するか否かを処理装置により判定する。そして、アクセスを許可すると判定した場合、サービス提供部２２１はユーザへサービスを処理装置により提供する。なお、アクセスを許可するか否かの判定方法は、（Ｓ１０２）で説明した方法と同様である。
【００３０】
なお、システムＢ２００が一旦取得したユーザＩＤと、システムＢ２００における第２ロールとは、セッション情報としてシステムＢ２００で管理される。そのため、セッションが切れるまで、ユーザは直接システムＢ２００が提供するサービスへアクセスすることができる。
【００３１】
以上のように、実施の形態１に係るアクセス制御連携システム１では、ユーザ認証は、そのユーザが所属するシステムで実施される。また、アクセス制御はサービスを提供するシステム側で実施されるものの、中央認証機関３００によりロール変換が行われるため、各システムは自システムで使用するロールに基づきアクセス制御を行うことができる。そのため、サービスを提供する各システムは、自システムに所属するユーザの認証情報のみ管理すればよい。したがって、連携するシステムが増加しても、管理する認証情報の量は増加しない。
また、あるシステムのロールが更新された場合、中央認証機関３００におけるロールマッピングテーブル３３０で記憶された権限対応情報を更新するだけで、全てのシステムに対してロールの更新が反映される。したがって、ロールの更新の手間が少なく、更新のタイムラグも小さい。
【００３２】
実施の形態２．
実施の形態２では、実施の形態１とは異なる流れでアクセス制御を連携する方法について説明する。
【００３３】
図８は、実施の形態２に係るアクセス制御連携システム１の機能ブロック図である。
実施の形態２に係るアクセス制御連携システム１は、実施の形態１に係るアクセス制御連携システム１と同様に、サービスを提供するシステムＡ１００及びシステムＢ２００と、複数のシステムのアクセス制御を連携させる中央認証機関３００とを備える。
【００３４】
システムＡ１００とシステムＢ２００とは、同じ構成である。システムＡ１００とシステムＢ２００とは、実施の形態１と同様に、それぞれ、連携サーバ１１０，２１０、ＡＰＰサーバ１２０，２２０、認証サーバ１３０，２３０、コンテンツテーブル１４０，２４０、ＩＤ管理テーブル１５０，２５０を備える。
連携サーバ１１０，２１０は、実施の形態１と同様に、サービスを提供するシステム間の連携を図るためのサーバである。しかし、連携サーバ１１０，２１０が備える機能は、実施の形態１とは異なり、サービス要求送信部１１１，２１１、認証要求・結果送信部１１３，２１３、サービス取得部１１４，２１４を備える。
ＡＰＰサーバ１２０，２２０と認証サーバ１３０，２３０とは実施の形態１と同様の機能構成であり、コンテンツテーブル１４０，２４０、ＩＤ管理テーブル１５０，２５０は実施の形態１と同様である。
【００３５】
中央認証機関３００は、実施の形態１に係る中央認証機関３００が備える連携サーバ３１０、ロール変換サーバ３２０、ロールマッピングテーブル３３０に加え、ロールサービスマッピングテーブル３４０を備える。
連携サーバ３１０は、実施の形態１と同様に、サービスを提供するシステム間の連携を図るためのサーバである。しかし、連携サーバ３１０は、実施の形態１と異なり、認証確認部３１３、サービス一覧送信部３１４を備える。
ロール変換サーバ３２０は、ロール変換部３２１、サービス検索部３２２を備える。
ロールマッピングテーブル３３０は実施の形態１と同様である。
ロールサービスマッピングテーブル３４０は、各システムのロールと、そのロールでアクセスが許可されるサービスとの対応関係をサービス対応情報として記憶した記憶装置である。
【００３６】
図９は、ロールサービスマッピングテーブル３４０が記憶したサービス対応情報の一例を示す図である。
サービス対応情報は、各システムのロールと、そのロールでアクセスが許可されるサービスのサービスＩＤとが対応付けられた情報である。
【００３７】
図１０は、図９とは異なるサービス対応情報の一例を示す図である。
図１０に示すサービス対応情報は、図６に示した共通のロールと、その共通のロールでアクセスが許可されるサービスのサービスＩＤとが対応付けられた情報である。
ロールマッピングテーブル３３０が記憶する権限対応情報として、図６に示す各システムのロールと、共通のロールとが対応付けられた情報が記憶されている場合には、サービス対応情報として図１０に示す情報を記憶してもよい。
【００３８】
システムＡ１００及びシステムＢ２００と、中央認証機関３００との機能及び動作について説明する。
図１１は、実施の形態２に係るアクセス制御連携システム１の処理の流れを示すフローチャートである。
なお、ここでは、システムＡ１００（第１システム）に所属するユーザが、システムＢ２００（第２システム）が提供するサービスへアクセスする場合を例として説明する。また、ここでは、ロールサービスマッピングテーブル３４０は、サービス対応情報として、図９に示す各システムのロールと、そのロールでアクセスが許可されるサービスのサービスＩＤとが対応付けられた情報を記憶しているものとする。
【００３９】
（Ｓ２０１）は、（Ｓ１０１）と同様である。
【００４０】
（Ｓ２０２）
ユーザは、アクセス可能なサービスの一覧情報の取得を要求する。例えば、ユーザは、端末から一覧情報の取得要求を示すボタンを押下することで、一覧情報の取得を要求する。
すると、ＡＰＰサーバ１２０のサービス提供部１２１は、ログインしたユーザの第１ロールをＩＤ管理テーブル１５０から取得して、連携サーバ１１０のサービス取得部１１４へ送信する。
【００４１】
（Ｓ２０３）
連携サーバ１１０のサービス取得部１１４は、サービス提供部１２１が送信した第１ロールと、システムＡ１００を示すシステムＩＤ（Ａ）とを含む一覧要求を中央認証機関３００へ通信装置を介して送信する。これにより、サービス取得部１１４は、ログインしたユーザがアクセスを許可されるサービスの一覧情報の送信を中央認証機関３００へ要求する。
【００４２】
（Ｓ２０４）
中央認証機関３００では一覧要求を受信すると、ロール変換サーバ３２０のロール変換部３２１がロールマッピングテーブル３３０が記憶した権限対応情報に基づき、受信した一覧要求に含まれるシステムＡ１００における第１ロールに対応するシステムＢ２００における第２ロールを処理装置により検索する。つまり、ロール変換部３２１は、システムＡ１００における第１ロールを、システムＢ２００における第２ロールへ変換する。
なお、ここでは、サービスを提供するシステムがシステムＡ１００とシステムＢ２００とのみであるため、取得したシステムＡ１００における第１ロールをシステムＢ２００における第２ロールへのみ変換する。しかし、他にもサービスを提供するシステムが存在する場合には、ロール変換部３２１は、システムＡ１００における第１ロールを他のシステムにおけるロールへも変換する。
【００４３】
（Ｓ２０５）
ロール変換サーバ３２０のサービス検索部３２２は、受信した一覧要求に含まれるシステムＡ１００における第１ロールでアクセスが許可されるサービスと、ロール変換部３２１が変換したシステムＢ２００における第２ロールでアクセスが許可されるサービスとを、ロールサービスマッピングテーブル３４０から処理装置により検索する。
なお、（Ｓ２０４）でロール変換部３２１が第１ロールを他のシステムにおけるロールへも変換している場合には、サービス検索部３２２は、他のシステムにおけるロールでアクセスが許可されるサービスも検索する。
これにより、ユーザがアクセス可能なサービスの一覧情報を取得する。
【００４４】
（Ｓ２０６）
連携サーバ３１０のサービス一覧送信部３１４は、ロール変換部３２１が取得した一覧情報を通信装置を介してシステムＡ１００へ送信する。この際、送信先のシステムは、権限要求に含まれるシステムＩＤ（Ａ）から特定される。
【００４５】
（Ｓ２０７）
システムＡ１００では一覧情報を受信すると、ＡＰＰサーバ１２０のサービス提供部１２１が一覧情報を表示装置に表示する等して、ユーザへ一覧情報を提供する。そして、サービス提供部１２１は、ユーザに端末を用いて、一覧情報に含まれるサービスからアクセスしたいサービスを指定（入力）させる。
指定されたサービスがシステムＡ１００で提供するサービスである場合には、ＡＰＰサーバ１２０のサービス提供部１２１が、ユーザへサービスを処理装置により提供する。
なお、ここでは、ユーザは、システムＡ１００が提供するサービスではなく、システムＢ２００が提供するサービスを指定したとする。この場合、サービス提供部１２１は、ユーザＩＤと、指定されたサービスを示すサービスＩＤとを連携サーバ１１０のサービス要求送信部１１１へ送信する。
【００４６】
（Ｓ２０８）
連携サーバ１１０のサービス要求送信部１１１は、受信したユーザＩＤ及びサービスＩＤと、システムＡ１００を示すシステムＩＤ（Ａ）とを含むサービス要求をシステムＢ２００へ通信装置を介して送信する。これにより、サービス要求送信部１１１は、送信したサービスＩＤが示すサービスを送信したユーザＩＤが示すユーザへ提供することをシステムＢ２００に要求する。
【００４７】
（Ｓ２０９）
システムＢ２００ではサービス要求を受信すると、連携サーバ２１０の認証要求・結果送信部２１３が、サービス要求に含まれるユーザＩＤ及びシステムＩＤ（Ａ）と、システムＢ２００を示すシステムＩＤ（Ｂ）とを含む確認要求を中央認証機関３００へ通信装置を介して送信する。これにより、認証要求・結果送信部２１３は、ユーザＩＤが示すユーザがシステムＡ１００に所属すること及びシステムＡ１００で認証されたユーザであることの確認を中央認証機関３００に要求する。
【００４８】
（Ｓ２１０）
中央認証機関３００では確認要求を受信すると、連携サーバ３１０の認証確認部３１３が、確認要求に含まれるユーザＩＤを含む確認要求をシステムＡ１００へ通信装置を介して送信する。この際、送信先のシステムは、確認要求に含まれるシステムＩＤ（Ａ）から特定される。これにより、連携サーバ３１０は、送信したユーザＩＤが示すユーザがシステムＡ１００に所属すること及びシステムＡ１００で認証されたユーザであることの確認をシステムＡ１００に要求する。
【００４９】
（Ｓ２１１）
システムＡ１００では確認要求を受信すると、連携サーバ１１０の認証要求・結果送信部１１３が、認証要求に含まれるユーザＩＤを認証サーバ１３０のユーザ認証部１３１へ送信して、ユーザＩＤが示すユーザが所属すること及び認証されたユーザであることを処理装置により確認する。
なお、ユーザ認証部１３１は、ＩＤ管理テーブル１５０からユーザＩＤを検索することにより、ユーザが所属しているか否かを判定できる。また、例えば、ＩＤ管理テーブル１５０が記憶する認証情報に、現在ログイン中であるか否かを示すフラグ情報を持たせ、（Ｓ２０１）でログインした際、及びログアウトする際にそのフラグ情報を設定する。これにより、ユーザ認証部１３１は、ＩＤ管理テーブル１５０を確認することで、現在認証されたユーザであるか否かを判定できる。
【００５０】
（Ｓ２１２）
認証要求・結果送信部１１３は、ユーザＩＤが示すユーザが所属するか否か、及び、認証されたユーザであるか否かを示す結果情報を中央認証機関３００へ通信装置を介して送信する。
【００５１】
（Ｓ２１３）
中央認証機関３００では結果情報を受信すると、連携サーバ３１０の認証確認部３１３が、受信した結果情報をシステムＢ２００へ通信装置を介して送信する。この際、送信先のシステムは、確認要求に含まれるシステムＩＤ（Ｂ）から特定される。
【００５２】
（Ｓ２１４）
システムＢ２００では結果情報を受信すると、連携サーバ２１０の認証要求・結果送信部２１３は、ユーザがシステムＡ１００に所属すること及びシステムＡ１００で認証されたユーザであることを結果情報が示すか否かを処理装置により判定する。ユーザがシステムＡ１００に所属すること及びシステムＡ１００で認証されたユーザであると示す場合、認証要求・結果送信部２１３は、サービス要求に含まれるユーザＩＤ及びサービスＩＤをＡＰＰサーバ２２０のサービス提供部２２１へ送信する。
【００５３】
（Ｓ２１５）
ＡＰＰサーバ２２０のサービス提供部２２１は、ユーザＩＤ及びサービスＩＤを受信すると、コンテンツテーブル２４０に基づく判定をすることなく、アクセスを許可すると判定する。そして、サービス提供部２２１は、ユーザへサービスを処理装置により提供する。
【００５４】
なお、一旦ログインしたことと、中央認証機関３００から取得した一覧情報とは、セッション情報としてシステムＡ１００で管理される。そのため、ユーザが再びシステムＢ２００が提供するサービスへアクセスする場合、セッションが切れるまで、（Ｓ２０１）から（Ｓ２０６）までの処理を省略して、（Ｓ２０７）におけるアクセスしたいサービスを指定する処理から実行すればよい。
【００５５】
以上のように、実施の形態２に係るアクセス制御連携システム１では、ユーザ認証は、そのユーザが所属するシステムで実施される。また、アクセス制御もユーザが所属するシステム側で実施される。そのため、サービスを提供する各システムは、自システムに所属するユーザの認証情報のみ管理すればよい。したがって、連携するシステムが増加しても、管理する認証情報の量は増加しない。
また、実施の形態１と同様に、あるシステムのロールが更新された場合、中央認証機関３００におけるロールマッピングテーブル３３０で記憶された権限対応情報を更新するだけで、全てのシステムに対してロールの更新が反映される。したがって、ロールの更新の手間が少なく、更新のタイムラグも小さい。
【００５６】
なお、ロールマッピングテーブル３３０が権限対応情報として、図６に示す各システムのロールと、共通のロールとが対応付けられた情報を記憶するとともに、ロールサービスマッピングテーブル３４０がサービス対応情報として、図１０に示す共通のロールと、その共通のロールでアクセスが許可されるサービスのサービスＩＤとが対応付けられた情報を記憶している場合がある。
この場合、（Ｓ２０４）では、ロール変換サーバ３２０のロール変換部３２１は、ロールマッピングテーブル３３０が記憶した権限対応情報に基づき、受信したロール（第１ロール）を共通のロールへ変換する。また、（Ｓ２０５）では、サービス検索部３２２は、（Ｓ２０４）で変換された共通のロールでアクセスで許可されるサービスを検索する。これにより、ユーザがアクセス可能なサービスの一覧情報を取得することができる。
【００５７】
次に、上記実施の形態におけるアクセス制御連携システム１が備える各サーバのハードウェア構成について説明する。
図１２は、各サーバのハードウェア構成の一例を示す図である。
図１２に示すように、各サーバは、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ・Ｐｒｏｃｅｓｓｉｎｇ・Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。ＣＰＵ９１１は、バス９１２を介してＲＯＭ９１３、ＲＡＭ９１４、ＬＣＤ９０１（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）、キーボード９０２（Ｋ／Ｂ）、通信ボード９１５、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置９２０（固定ディスク装置）の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。磁気ディスク装置９２０は、所定の固定ディスクインタフェースを介して接続される。
【００５８】
ＲＯＭ９１３、磁気ディスク装置９２０は、不揮発性メモリの一例である。ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３とＲＡＭ９１４と磁気ディスク装置９２０とは、記憶装置（メモリ）の一例である。また、キーボード９０２、通信ボード９１５は、入力装置の一例である。また、通信ボード９１５は、通信装置（ネットワークインタフェース）の一例である。さらに、ＬＣＤ９０１は、表示装置の一例である。
【００５９】
磁気ディスク装置９２０又はＲＯＭ９１３などには、オペレーティングシステム９２１（ＯＳ）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。プログラム群９２３のプログラムは、ＣＰＵ９１１、オペレーティングシステム９２１、ウィンドウシステム９２２により実行される。
【００６０】
プログラム群９２３には、上記の説明において「サービス要求送信部１１１，２１２」、「ロール送信部１１２，２１２」、「認証要求・結果送信部１１３，２１３」、「サービス取得部１１４，２１４」、「サービス提供部１２１，２２１」、「ユーザ認証部１３１，２３１」、「ロール取得部３１１」、「ロール転送部３１２」、「認証確認部３１３」、「サービス一覧送信部３１４」、「ロール変換部３２１」、「サービス検索部３２２」、等として説明した機能を実行するソフトウェアやプログラムやその他のプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
ファイル群９２４には、上記の説明において「認証情報」、「制御情報」、「権限対応情報」、「サービス対応情報」等の情報やデータや信号値や変数値やパラメータが、「ファイル」や「データベース」の各項目として記憶される。「ファイル」や「データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ９１１によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのＣＰＵ９１１の動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示のＣＰＵ９１１の動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
【００６１】
また、上記の説明におけるフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、ＲＡＭ９１４のメモリ、その他光ディスク等の記録媒体やＩＣチップに記録される。また、データや信号は、バス９１２や信号線やケーブルその他の伝送媒体や電波によりオンライン伝送される。
また、上記の説明において「〜部」として説明するものは、「〜回路」、「〜装置」、「〜機器」、「〜手段」、「〜機能」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。また、「〜装置」として説明するものは、「〜回路」、「〜機器」、「〜手段」、「〜機能」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。さらに、「〜処理」として説明するものは「〜ステップ」であっても構わない。すなわち、「〜部」として説明するものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、ＲＯＭ９１３等の記録媒体に記憶される。プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。すなわち、プログラムは、上記で述べた「〜部」としてコンピュータ等を機能させるものである。あるいは、上記で述べた「〜部」の手順や方法をコンピュータ等に実行させるものである。
【符号の説明】
【００６２】
１  アクセス制御連携システム、１００  システムＡ、２００  システムＢ、１１０，２１０  連携サーバ、１１１，２１１  サービス要求送信部、１１２，２１２  ロール送信部、１１３，２１３  認証要求・結果送信部、１１４，２１４  サービス取得部、１２０，２２０  ＡＰＰサーバ、１２１，２２１  サービス提供部、１３０，２３０  認証サーバ、１３１，２３１  ユーザ認証部、１４０，２４０  コンテンツテーブル、１５０，２５０  ＩＤ管理テーブル、３００  中央認証機関、３１０  連携サーバ、３１１  ロール取得部、３１２  ロール転送部、３１３  認証確認部、３１４  サービス一覧送信部、３２０  ロール変換サーバ、３２１  ロール変換部、３２２  サービス検索部、３３０  ロールマッピングテーブル、３４０  ロールサービスマッピングテーブル。
【図１】
0005409435.tif 000002
【図２】
0005409435.tif 000003
【図３】
0005409435.tif 000004
【図４】
0005409435.tif 000005
【図５】
0005409435.tif 000006
【図６】
0005409435.tif 000007
【図７】
0005409435.tif 000008
【図８】
0005409435.tif 000009
【図９】
0005409435.tif 000010
【図１０】
0005409435.tif 000011
【図１１】
0005409435.tif 000012
【図１２】
0005409435.tif 000013