(57)【要約】【課題】  ユーザとロールとの関係、およびロールと権限との関係の、２つの関係を一元的に管理するアクセス制御を実現することができない。【解決手段】  システム操作権限と、ユーザが認証されていることを示すトークンとの関係を示す情報を記憶する管理情報格納手段と、その管理情報格納手段に記憶されている情報に基づいて、確認要求に含まれるトークンに対応するユーザがその確認要求に含まれるシステム操作への権限を有していることを確認する確認手段と、その確認手段による確認の結果に基づいて、システム操作要求に含まれるトークンを、そのシステム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、出力する処理要求手段と、を含む情報処理システム。【選択図】      図１
2015121962.tif 000002
【特許請求の範囲】
【請求項１】
任意の粒度のシステム操作に対する権限と、ユーザが認証されていることを示すトークンとの関係を示す情報を記憶する管理情報格納手段と、
前記システム操作を特定する情報と前記トークンとを含む確認要求を受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、確認結果を送信する確認手段と、
前記システム操作を特定する情報、および前記ユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記確認要求を前記確認手段に送信し、前記確認要求に対応する前記確認結果を受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力する処理要求手段と、を含む
情報処理システム。
【請求項２】
ユーザの認証に必要な情報を含む認証要求を受信した場合に、前記ユーザが認証されていることを示すトークンを生成し、生成された前記トークンを送信し、前記生成されたトークンと前記ユーザとの関係を前記管理情報格納手段に出力するユーザ認証手段を更に含み、
前記管理情報格納手段は、
ユーザと任意の粒度のシステム操作に対する権限との関係を記憶する権限記憶手段と、
前記ユーザと前記トークンとの関係を記憶するトークン記憶手段と、を含み、
前記確認手段は、
前記トークンを含むユーザ確認要求を受信した場合に、前記トークン記憶手段に記憶されている情報に基づいて、前記ユーザ確認要求に含まれる前記トークンに対応するユーザを特定する情報を含むユーザ確認結果を送信するユーザ確認手段と、
前記ユーザに関する権限確認要求を受信した場合に、前記権限記憶手段に記憶されている情報に基づいて、前記権限確認要求に含まれるシステム操作とユーザとの関係の有無を判定し、権限確認結果を送信する権限確認手段と、を含み、
前記処理要求手段は、
前記システム操作を特定する情報、および前記ユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、前記トークンを含むユーザ確認要求を前記ユーザ確認手段に送信し、前記ユーザ確認要求に対応するユーザ確認結果を受信し、受信した前記ユーザ確認結果に基づいて前記権限確認要求を権限確認手段に送信し、前記権限確認要求に対応する前記権限確認結果を受信し、受信した前記権限確認結果に基づいて、前記第１のシステム操作要求と前記トークンと前記トークンに対応するユーザを特定する情報とを含む第１の処理要求を生成し、生成したその処理要求を出力する、処理要求受付手段と、
前記システム操作に対する管理者権限を有するユーザを前記ユーザとする前記認証要求を前記ユーザ認証手段に送信し、前記認証要求に対応する前記認証結果を受信し、前記権限確認結果に基づいて、前記第１の処理要求に含まれる前記ユーザを特定する情報を、前記管理者権限を有するユーザを特定する情報に置き換え、前記第１処理要求に含まれるトークンを、受信した前記認証結果に含まれるトークンに置き換えた第２の処理要求を生成し、生成した前記第２の処理要求を出力する処理要求代行手段と、を含む
請求項１記載の情報処理システム。
【請求項３】
管理装置と管理対象装置とを含み、
前記管理装置は、前記管理情報格納手段と前記ユーザ認証手段と前記ユーザ確認手段と前記権限確認手段とを含み、
前記管理情報格納手段は、前記ユーザを特定する情報を記憶するユーザ情報記憶手段を更に含み、
前記管理対象装置は前記処理要求受付手段と前記処理要求代行手段と処理実施手段とを含み、
前記処理要求代行手段は、前記第２の処理要求を前記処理実施手段に出力し、
前記処理実施手段は、前記第２の処理要求に含まれるシステム操作を実行する
請求項２記載の情報処理システム。
【請求項４】
前記管理対象装置は、
前記ユーザと前記管理対象装置におけるシステム操作に対する権限との関係を記憶する下位管理情報格納手段と、
前記ユーザに関する下位権限確認要求に対応して、前記下位管理情報格納手段に記憶される情報に基づいて、前記下位権限確認要求に含まれるシステム操作とユーザとの関係の有無を判定し、下位権限確認結果を前記処理実施手段に出力する下位権限確認手段と、をさらに含み、
前記処理要求代行手段は、前記権限確認結果に基づいて、前記第１の処理要求および前記第２の処理要求のいずれかを前記処理実施手段に出力し、
前記処理実施手段は、前記第１の処理要求に基づいて前記下位権限確認要求を前記下位権限確認手段に出力し、前記下位権限確認要求に対応する前記下位権限確認結果に基づいて、前記第２の処理要求を実行する
ことを特徴とする請求項３記載の情報処理システム。
【請求項５】
前記任意の粒度のシステム操作に対する権限を入力する手段を更に含む
ことを特徴とする請求項１乃至４のいずれかに１項に記載の情報処理システム。
【請求項６】
任意の粒度のシステム操作に対する権限と、ユーザが認証されていることを示すトークンとの関係を示す情報を記憶する管理情報格納手段と、
前記システム操作を特定する情報と前記トークンとを含む確認要求を受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、確認結果を管理対象装置に送信する確認手段と、を含み、
前記管理対象装置は、前記システム操作を特定する情報、および前記ユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記確認要求を前記確認手段に送信し、前記確認要求に対応する前記確認結果を受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力する
情報処理装置。
【請求項７】
任意の粒度のシステム操作を特定する情報、およびユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記システム操作を特定する情報と前記トークンとを含む確認要求を管理装置に送信し、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、前記確認要求に対応する確認結果を前記管理装置から受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力する処理要求手段と、を含み
前記管理装置は、前記システム操作に対する権限と前記トークンとの関係を示す情報を記憶する管理情報格納手段と、前記確認要求を受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて前記確認結果を送信する確認手段と、を含む
情報処理装置。
【請求項８】
任意の粒度のシステム操作に対する権限と、ユーザが認証されていることを示すトークンとの関係を示す情報を記憶する管理情報格納手段を備える第１のコンピュータが、
前記システム操作を特定する情報と前記トークンとを含む確認要求を第２のコンピュータから受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、確認結果を前記第２のコンピュータに送信し、
前記第２のコンピュータが、
前記システム操作を特定する情報、および前記ユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記確認要求を前記第１のコンピュータに送信し、前記確認要求に対応する前記確認結果を前記第１のコンピュータから受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力する
アクセス制御方法。
【請求項９】
任意の粒度のシステム操作に対する権限と、ユーザが認証されていることを示すトークンとの関係を示す情報を記憶する管理情報格納手段と、
前記システム操作を特定する情報と前記トークンとを含む確認要求を受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、確認結果を送信する確認手段と、を含む情報処理装置に接続された
コンピュータが、
前記システム操作を特定する情報、および前記ユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記確認要求を前記情報処理装置に送信し、前記確認要求に対応する前記確認結果を前記情報処理装置から受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力する
アクセス制御方法。
【請求項１０】
任意の粒度のシステム操作に対する権限と、ユーザが認証されていることを示すトークンとの関係を示す情報を記憶する管理情報格納手段と、
前記システム操作を特定する情報と前記トークンとを含む確認要求を受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、確認結果を送信する確認手段と、を含む情報処理装置に接続されたコンピュータに、
前記システム操作を特定する情報、および前記ユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記確認要求を前記情報処理装置に送信し、前記確認要求に対応する前記確認結果を前記情報処理装置から受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力する処理を実行させる
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アクセス制御を実行する情報処理システム、情報処理装置、アクセス制御方法およびプログラムに関し、特に、リソースへのアクセスを制御する情報処理システム、情報処理装置、アクセス制御方法およびプログラムに関する。
【背景技術】
【０００２】
アクセス制御に関して、さまざまな関連技術が知られている。
【０００３】
例えば、特許文献１は、一般的なアクセス制御システムの一例を開示する。特許文献１のアクセス制御システムは、サービス提供装置と、サービス提供装置からリソースへのアクセス要求の認可判定を行う認可装置と、を備える。認可装置は、要求受付部と認可判定部とポリシ格納部と応答部とを備える。
【０００４】
要求受付部は、サービス提供装置から、ユーザからのリソースへのアクセス要求を受け付ける。
【０００５】
認可判定部は、アクセス要求に呼応して、予め仮登録されたポリシを用いて、ユーザおよびリソースの属性情報に基づき、リソースへのアクセスを許可するか否かの認可判定を行う。
【０００６】
ポリシ格納部は、判定結果に基づき予め仮登録されたポリシにポリシ設定違反がないことを確認し、ポリシ設定違反がないそのポリシを検証済みポリシとして登録する。
【０００７】
応答部は、ポリシ設定違反がないそのポリシを用いた認可判定部の判定結果をサービス提供装置に返信する。
【０００８】
近年、クラウドコンピューティングが普及し、クラウドコンピューティング環境を構成する部品群である、マルチベンダ及びマルチレイヤの多種多様な機器やプログラムを管理するため、クラウドオーケストレーション、クラウドオーケストレータ、クラウド基盤管理、あるいはクラウド統合管理などと呼ばれる技術が提案され、開発されている。
【０００９】
そのうち、代表的な実装例として、オープンスタック（ＯｐｅｎＳｔａｃｋ）と呼ばれる技術が提案され、開発され、普及が進んでいる。非特許文献１および２は、ＯｐｅｎＳｔａｃｋの技術を開示する。以下に、非特許文献１および２に記載されたＯｐｅｎＳｔａｃｋの技術について説明する。
【００１０】
ＯｐｅｎＳｔａｃｋは、ＩａａＳ（Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ  ａｓ  ａ  Ｓｅｒｖｉｃｅ）を中心としたクラウドコンピューティングプラットフォーム（Ｃｌｏｕｄ  Ｃｏｍｐｕｔｉｎｇ  Ｐｌａｔｆｏｒｍ）を構築するための技術である。
【００１１】
より具体的には、ＯｐｅｎＳｔａｃｋは、クラウドコンピューティングプラットフォームを構成するシステムの構築に必要となる機能毎に分割された、複数の機能モジュールからなる。
【００１２】
それら機能モジュールは、それぞれの機能を外部に提供するためのＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）を持つ。ここで、その外部は、例えば、ユーザインタフェースを介したユーザやプログラム、装置などである。以後、これらの外部を、単にユーザとも呼ぶ。また、それら機能モジュールは、ＡＰＩを通じて他の機能モジュールとの連携を実現する。
【００１３】
ＯｐｅｎＳｔａｃｋは、ＡＰＩを介して依頼されたさまざまな処理を、実行する働きを有する。ある場合、その処理は、１つの機能モジュールで完結される。また、ＯｐｅｎＳｔａｃｋは、ＡＰＩを介して機能モジュール間で相互に処理を依頼して機能を融通し合うことによって、大きな処理を実行する場合もある。
【００１４】
この働きにより、ＯｐｅｎＳｔａｃｋは、構築したいクラウドコンピューティングプラットフォームの用途に応じて、必要な機能モジュールだけを組み合わせてそのクラウドコンピューティングプラットフォームを構成し、利用することができるという特徴を持つ。
【００１５】
主要な機能モジュールとしては、ｃｉｎｄｅｒ、ｓｗｉｆｔ、ｎｏｖａ、ｋｅｙｓｔｏｎｅ、ｇｌａｎｃｅおよびｑｕａｎｔｕｍなどがある。ｃｉｎｄｅｒは、仮想マシン（ＶＭ；Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ）等のデータを格納するブロックストレージ（Ｂｌｏｃｋ  Ｓｔｏｒａｇｅ）機能を持つ。ｓｗｉｆｔは、オブジェクトストレージ（Ｏｂｊｅｃｔ  Ｓｔｏｒａｇｅ）機能を持つ。ｎｏｖａは、仮想マシンを実行するコンピュート（Ｃｏｍｐｕｔｅ）機能を持つ。ｋｅｙｓｔｏｎｅは、各機能モジュールのユーザ管理やアクセス制御情報を扱うアイデンティティ（Ｉｄｅｎｔｉｔｙ）機能を持つ。ｇｌａｎｃｅは、仮想マシンの構成情報などを管理するイメージ（Ｉｍａｇｅ）機能を持つ。ｑｕａｎｔｕｍは、仮想マシン間や外部との通信を制御するネットワーキング（Ｎｅｔｗｏｒｋｉｎｇ）機能を持つ。
【００１６】
これらのうち、ｋｅｙｓｔｏｎｅは、すべての機能モジュール（ｋｅｙｓｔｏｎｅ自身および他の機能のジュールを含む）のそれぞれが持つＡＰＩへのアクセスについて、そのアクセスが正しいユーザからのアクセスであるかを判断するために必要な情報を管理し、その情報を提供する。
【００１７】
より具体的には、ある主体が各機能モジュールの持つ各種ＡＰＩにアクセスする場合、その主体は、そのアクセスの前にｋｅｙｓｔｏｎｅに対して、ユーザ認証の処理を依頼する必要がある。ここで、その主体は、利用者やＡＰＩへのアクセスを要求する側の機能モジュールなどである。以後、その主体を単にユーザとも呼ぶ。
【００１８】
ｋｅｙｓｔｏｎｅは、ユーザ情報の登録を受け付ける機能を有し、そのユーザ情報を保管する。
【００１９】
ｋｅｙｓｔｏｎｅは、ユーザ認証を依頼されると、依頼時に渡されたユーザ情報を、保管しているユーザ情報と突き合わせる。そして、ｋｅｙｓｔｏｎｅは、依頼時に渡されたそのユーザ情報が実在するユーザ情報であると判断した場合、ｋｅｙｓｔｏｎｅは、そのユーザ認証の依頼元のユーザについて、特定の期間のみ有効なトークン（ｔｏｋｅｎ）を生成する。続けて、ｋｅｙｓｔｏｎｅは、そのトークンを記録するとともに、その依頼元のユーザに対してそのトークンを発行する。
【００２０】
その依頼元のユーザは、ＡＰＩへのアクセスの際、ＡＰＩに対して依頼する処理内容を渡す以外に、そのトークンを渡すことで、そのＡＰＩへのアクセスが正しいものであることを証明する情報を提示する。
【００２１】
アクセスされたＡＰＩは、その渡されたトークンが正しく発行されたものである場合に限り、その依頼された処理内容を受け付ける。この時、そのアクセスされたＡＰＩは、その渡されたトークンが正しいものであるかを確認するために、ｋｅｙｓｔｏｎｅに対し、そのトークンの照会を行う。
【００２２】
ｋｅｙｓｔｏｎｅは、既に記録されたトークンの情報と、その照会されたトークンの情報とを比較し、正しいユーザかつ正しい期間のものであるか否かを判定し、その照会への応答として判定結果をＡＰＩに渡す。
【００２３】
ＡＰＩは、ｋｅｙｓｔｏｎｅから渡されたその判定結果において、その渡されたトークンが有効なものであれば、そのアクセス（処理内容）を受け入れ、その渡されたトークンが無効なものであればそのアクセスを拒否する。
【００２４】
さらに、ｋｅｙｓｏｔｎｅは、ユーザに対して、ロール（役割；ｒｏｌｅ）を付与する機能を有する。
【００２５】
ロールは、ロールベースアクセス制御（ＲＢＡＣ；  Ｒｏｌｅ  Ｂａｓｅｄ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）において用いられる。ＲＢＡＣは、ユーザと権限（ｐｅｒｍｉｓｓｉｏｎ）とを紐付ける際に、ユーザと１つ１つの権限との組み合わせを扱うのではなく、ロールという単位で権限をまとめて扱うことで、直観的かつ簡便にアクセス制御設定を実現する技術である。そのロールは、職務などの役割の遂行に必要な、権限の集合である。
【００２６】
ＯｐｅｎＳｔａｃｋにおけるＲＢＡＣ機能は、ユーザへのロールの付与と、各機能モジュールの持つ、ｐｏｌｉｃｙ．ｊｓｏｎと呼ばれるアクセス制御設定ファイルの記述によって実現される。
【００２７】
例えば、ｐｏｌｉｃｙ．ｊｓｏｎは、特定のロールの保有を条件に特定の権限の行使を許可する、アクセス制御ルールを記載される。
【００２８】
ＡＰＩは、前述したユーザ認証におけるトークンの判定結果において、そのトークンが有効であった場合、さらに、そのトークンに対応するユーザの持つロールに対して、ｐｏｌｉｃｙ．ｊｓｏｎのアクセス制御ルールに基づく、権限行使の可否判定を実行する。
【先行技術文献】
【特許文献】
【００２９】
【特許文献１】特開２０１２−２０８５５４号公報
【非特許文献】
【００３０】
【非特許文献１】ＯｐｅｎＳｔａｃｋ  Ｆｏｕｎｄａｔｉｏｎ、  ”ＯｐｅｎＳｔａｃｋ  Ｏｐｅｒａｔｉｏｎｓ  Ｇｕｉｄｅ”、［ｏｎｌｉｎｅ］、［平成２５年０６月０１日検索］、インターネット〈ＵＲＬ：http://docs.openstack.org/trunk/openstack-ops/content/〉。
【００３１】
【非特許文献２】ＯｐｅｎＳｔａｃｋ  Ｆｏｕｎｄａｔｉｏｎ、  “ＯｐｅｎＳｔａｃｋ  Ｉｄｅｎｔｉｔｙ  Ｓｅｒｖｉｃｅ  ＡＰＩ  ｖ２．０  Ｒｅｆｅｒｅｎｃｅ”、［ｏｎｌｉｎｅ］、［平成２５年０６月０１日検索］、インターネット〈ＵＲＬ：http://docs.openstack.org/api/openstack-identity-service/2.0/content/〉
【発明の概要】
【発明が解決しようとする課題】
【００３２】
しかしながら、上述した先行技術文献に記載された技術は、ユーザとロールとの関係、およびロールと権限との関係の、２つの関係を一元的に管理するアクセス制御を実現することができないという問題点を有する。
【００３３】
その２つの関係を一元的に管理するアクセス制御を実現できない理由は、上述した先行技術文献に記載された技術の構成あるいは動作が以下の通りだからである。
【００３４】
非特許文献１および２のｋｅｙｓｔｏｎｅ、即ちＯｐｅｎＳｔａｃｋのアクセス制御情報管理手段は、ユーザとロールとの紐付け（アクセス主体間の関係）は管理するが、ロールと権限との紐付け（アクセス主体毎の権限）は管理しない。
【００３５】
ｋｅｙｓｔｏｎｅは、ユーザに対して、ロール（役割；ｒｏｌｅ）を付与する機能を有する。換言すると、ｋｅｙｓｔｏｎｅは、ユーザとロールとの関係を管理する。
【００３６】
一方、各ＡＰＩは、正当なユーザの持つロールについて、ｐｏｌｉｃｙ．ｊｓｏｎのアクセス制御ルールに基づく、権限行使の可否判定を実行する。換言すると、ロールと権限との関係は、各ＡＰＩによって管理される。
【００３７】
つまり、ＯｐｅｎＳｔａｃｋにおいて、ユーザとロールとの紐付けから、ロールに紐づく権限集合の管理までを含めた一連のアクセス制御を、ｋｅｙｓｔｏｎｅなどの管理機能を持つモジュールから一元管理することができない。
【００３８】
特許文献１は、ユーザとロールとの関係について言及していない。
【００３９】
本発明の目的は、上述した問題点を解決できる情報処理システム、情報処理装置、アクセス制御方法およびプログラムを提供することにある。
【課題を解決するための手段】
【００４０】
本発明の一様態における情報処理システムは、任意の粒度のシステム操作に対する権限と、ユーザが認証されていることを示すトークンとの関係を示す情報を記憶する管理情報格納手段と、
前記システム操作を特定する情報と前記トークンとを含む確認要求を受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、確認結果を送信する確認手段と、
前記システム操作を特定する情報、および前記ユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記確認要求を前記確認手段に送信し、前記確認要求に対応する前記確認結果を受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力する処理要求手段と、を含む。
【００４１】
本発明の一様態における第１の情報処理装置は、任意の粒度のシステム操作に対する権限と、ユーザが認証されていることを示すトークンとの関係を示す情報を記憶する管理情報格納手段と、
前記システム操作を特定する情報と前記トークンとを含む確認要求を受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、確認結果を管理対象装置に送信する確認手段と、を含み、
前記管理対象装置は、前記システム操作を特定する情報、および前記ユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記確認要求を前記確認手段に送信し、前記確認要求に対応する前記確認結果を受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力する。
【００４２】
本発明の一様態における第２の情報処理装置は、任意の粒度のシステム操作を特定する情報、およびユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記システム操作を特定する情報と前記トークンとを含む確認要求を管理装置に送信し、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、前記確認要求に対応する確認結果を前記管理装置から受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力する処理要求手段と、を含み
前記管理装置は、前記システム操作に対する権限と前記トークンとの関係を示す情報を記憶する管理情報格納手段と、前記確認要求を受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて前記確認結果を送信する確認手段と、を含む。
【００４３】
本発明の一様態における第１のアクセス制御方法は、任意の粒度のシステム操作に対する権限と、ユーザが認証されていることを示すトークンとの関係を示す情報を記憶する管理情報格納手段を備える第１のコンピュータが、
前記システム操作を特定する情報と前記トークンとを含む確認要求を第２のコンピュータから受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、確認結果を前記第２のコンピュータに送信し、
前記第２のコンピュータが、
前記システム操作を特定する情報、および前記ユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記確認要求を前記第１のコンピュータに送信し、前記確認要求に対応する前記確認結果を前記第１のコンピュータから受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力する。
【００４４】
本発明の一様態における第２のアクセス制御方法は、任意の粒度のシステム操作に対する権限と、ユーザが認証されていることを示すトークンとの関係を示す情報を記憶する管理情報格納手段と、
前記システム操作を特定する情報と前記トークンとを含む確認要求を受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、確認結果を送信する確認手段と、を含む情報処理装置に接続された
コンピュータが、
前記システム操作を特定する情報、および前記ユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記確認要求を前記情報処理装置に送信し、前記確認要求に対応する前記確認結果を前記情報処理装置から受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力する。
【００４５】
本発明の一様態におけるプログラムは、任意の粒度のシステム操作に対する権限と、ユーザが認証されていることを示すトークンとの関係を示す情報を記憶する管理情報格納手段と、
前記システム操作を特定する情報と前記トークンとを含む確認要求を受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、確認結果を送信する確認手段と、を含む情報処理装置に接続されたコンピュータに、
前記システム操作を特定する情報、および前記ユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記確認要求を前記情報処理装置に送信し、前記確認要求に対応する前記確認結果を前記情報処理装置から受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力する処理を実行させる。
【発明の効果】
【００４６】
本発明は、アクセス制御において、ユーザとロールとの関係、およびロールと権限との関係を一元的に管理するアクセス制御を実現することが可能になるという効果がある。
【図面の簡単な説明】
【００４７】
【図１】図１は、本発明の第１の実施形態に係るアクセス制御システムの構成の一例を示すブロック図である。
【図２】図２は、関連技術に係るアクセス制御システムの構成の一例を示すブロック図である。
【図３】図３は、第１の実施形態に係るユーザ端末、管理装置および管理対象装置を実現するコンピュータのハードウェア構成を示すブロック図である。
【図４】図４は、第１の実施形態におけるユーザ情報の一例を示す図である。
【図５】図５は、第１の実施形態におけるトークン情報の一例を示す図である。
【図６】図６は、第１の実施形態における権限情報の一例を示す図である。
【図７】図７は、関連技術におけるアクセス制御システムの動作を示すシーケンス図である。
【図８】図８は、第１の実施形態におけるアクセス制御システムの動作を示すシーケンス図である。
【図９】図９は、第１の実施形態におけるアクセス制御システムの、管理対象装置によるユーザ認証要求に関する処理の詳細な動作を示すシーケンス図である。
【図１０】図１０は、第１の実施形態におけるアクセス制御システムのユーザ端末によるユーザ認証要求に関する処理の詳細な動作を示すシーケンス図である。
【図１１】図１１は、第１の実施形態におけるアクセス制御システムのユーザ端末による処理要求に関する処理の詳細な動作を示すシーケンス図である。
【図１２】図１２は、第１の実施形態におけるアクセス制御システムのユーザ端末による処理要求に関する処理の詳細な動作を示すシーケンス図である。
【図１３】図１３は、本発明の第２の実施形態に係るアクセス制御システムの構成の一例を示すブロック図である。
【図１４】図１４は、第２の実施形態における管理情報の一例を示す図である。
【発明を実施するための形態】
【００４８】
本発明を実施するための形態について図面を参照して詳細に説明する。尚、各図面および明細書記載の各実施形態において、同様の構成要素には同様の符号を付与し、適宜説明を省略する。
【００４９】
＜＜＜用語の説明＞＞＞
「権限（ｐｅｒｍｉｓｓｉｏｎ)」は、特定のリソース（またはオブジェクト)および特定のアクションの組で示される権限を意味する。換言すると、権限としての特定のリソースおよび特定のアクションの組は、そのリソースおよびそのアクションの組により権限が特定されることを示す。
【００５０】
「アクセス権」は、特定のサブジェクト、特定のリソースおよび特定のアクションの組で示されるアクセス権を意味する。換言すると、アクセス権としての特定のサブジェクト、特定のリソースおよび特定のアクションの組は、そのサブジェクト、そのリソースおよびそのアクションの組において、アクセス権が存在することを示す。
【００５１】
従って、アクセス権は、特定のサブジェクトと権限との組でもある。換言すると、アクセス権に含まれるサブジェクトは、そのアクセス権に含まれるリソースおよびアクションの組より特定される権限を有する。
【００５２】
「ロール（ｒｏｌｅ)」は、権限の集合を特定する。即ち、ある処理に必要な権限の集合（システム操作権限）を、ロールに関連付けることができる。換言すると、あるロールを付与されたサブジェクトと、そのロールが特定する権限の集合との組にアクセス権を定義することができる。尚、あるロールそのものも、サブジェクトの一種である。
【００５３】
ロールには、識別子が付与される。例えば、その識別子は、所属部署、役職、プロジェクト、業務内容及び作業項目などの識別子であってよい。また、各ロールは、その識別子以外に、ユーザインタフェースなどで用いるための表示名称を持ってもよい。更に、各ロールは、ロール自身を指すその識別子の他に、ロール階層を表現するため、親ノードや子ノードにあたるロールの識別子や、パスの情報などを持ってもよい。
【００５４】
「サブジェクト」は、アクセス主体、即ちアクセス権を行使するアクセス元となる存在を示す識別子である。アクセス権に基づいてアクセス制御を行うアクセス制御実施機能では、人、ソフトウェアおよび装置などに、例えばユーザＩＤ（Ｉｄｅｎｔｉｆｉｅｒ）などのシステム上での識別子が付与され、付与されたその識別子が「サブジェクト」として使用される。その識別子は、会員番号、社員番号または製造番号などの一意性を持った情報や、氏名などの個人を特定する情報、あるいはシステム独自の値をそれらの情報のいずれかと紐付けて用いられるものであってよい。さらに、サブジェクトは、ユーザインタフェースなどで用いるための表示名称を持ってもよい。
【００５５】
「ロールベースアクセス制御（ＲＢＡＣ；Ｒｏｌｅ  Ｂａｓｅｄ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）」では、例えば、サブジェクトとなるユーザに権限を付与する場合、そのユーザにロールが割り当てられる。そのようにすることで、ロールに紐づく権限集合が、そのユーザに付与される。このため、あるユーザと権限との関係を変更する方法には、ユーザとロールとの関係を変更する方法、およびロールと権限との関係を変更する方法の２種類がある。そして、一般的な関連技術においては、これらの２種類の方法は、別々の機能で取り扱われる。
【００５６】
例えば、関連技術のＯｐｅｎＳｔａｃｋは、基本的に、ユーザとロールとの関係をＫｅｙｓｔｏｎｅで管理し、ロールと権限との関係を各機能モジュールの持つｐｏｌｉｃｙ．ｊｓｏｎで管理する。
【００５７】
但し、ロールを使用することなく、ユーザに直接、権限を付与する方法を併用する場合もある。この場合、権限を付与する対象となるユーザの識別子を、ユーザとロールの関係が変更できない、一人のユーザ専用の特殊なロールと捉えることもできる。
【００５８】
アクセス制御情報（後述する「権限情報」）を記述する場合、例えば、ロールと権限との関係、およびユーザと権限との関係が記述される。このとき、ユーザを特殊なロールとして見れば、どちらも、ロールと権限の関係として扱うことができる。あるいは逆に、ロールを、抽象化された仮想的なユーザと捉え、特殊なサブジェクトとして見れば、どちらも、サブジェクトと権限の関係として扱うことができる。いずれと見るかは別として、便宜上、同じ記述方法で扱うことが出来るため、実際のアクセス制御情報の記述方法としては、混在させて扱うことがある。
【００５９】
関連技術であるＯｐｅｎＳｔａｃｋの権限情報の記述についても、権限と関係付ける要素として、ユーザとロールとを混在させて記述することができる。本実施形態では、便宜上、権限情報として扱う場合に限り、ユーザの識別子も、ロールの識別子も、サブジェクトとして扱うものとする。権限情報の詳細は、後述する。
【００６０】
＜＜＜第１の実施形態＞＞＞
次に、図面を参照して、本発明の第１の実施形態について説明する。尚、関連技術を合わせて示し、本実施形態との差異を説明する。
【００６１】
＝＝＝アクセス制御システム（情報処理システムとも呼ばれる）４０１＝＝＝
図１は、本実施形態に係るアクセス制御システム４０１の構成の一例を示すブロック図である。
【００６２】
図１に示すように、アクセス制御システム４０１は、管理装置２１０と管理対象装置３１０とを備える。図１に示すユーザ端末１００と管理装置２１０と管理対象装置３１０とは、図示しないネットワークで、互いに接続されている。
【００６３】
図１には３台のユーザ端末１００ａ、ｂおよびｃと３台の管理対象装置３１０ａ、ｂおよびｃとが示されているが、ユーザ端末１００および管理対象装置３１０のそれぞれは任意の台数であってよい。
【００６４】
＝＝＝管理装置２１０＝＝＝
図１に示すように、管理装置２１０は、ユーザ認証部２０１と、管理情報格納部２０２１と、ユーザ確認部２０３と、権限確認部２０４とを含む。ユーザ認証部２０１と、管理情報格納部２０２１と、ユーザ確認部２０３と、権限確認部２０４とは、それぞれ別個のコンピュータシステムで構築されていてもよいし、一部または全部が同一のコンピュータシステムで実現されていてもよい。
【００６５】
＝＝＝管理対象装置３１０＝＝＝
図１に示すように、管理対象装置３１０は、処理要求受付部３０１１と、処理要求代行部３０２と、処理実施部３０３と、下位権限確認部３０４と、下位管理情報格納部３０５とを含む。処理要求受付部３０１１と、処理要求代行部３０２と、処理実施部３０３と、下位権限確認部３０４と、下位管理情報格納部３０５とは、それぞれ別個のコンピュータシステムで構築されていてもよいし、一部または全部が同一のコンピュータシステムで実現されていてもよい。図１には３つの処理実施部３０３ａ、ｂおよびｃが示されているが、管理対象装置３１０は、任意の数の処理実施部３０３を含んでよい。
【００６６】
＝＝＝情報処理システム４００＝＝＝
図２は、関連技術に係るアクセス制御システム４０２の構成の一例を示すブロック図である。
【００６７】
図２に示すように、アクセス制御システム４０２は、管理装置２００と管理対象装置３００とを備える。図２に示すユーザ端末１００と管理装置２００と管理対象装置３００とは、図示しないネットワークで、互いに接続されている。
【００６８】
図２には３台のユーザ端末１００ａ、ｂおよびｃと３台の管理対象装置３００ａ、ｂおよびｃとが示されているが、ユーザ端末１００および管理対象装置３００のそれぞれは、任意の台数であってよい。
【００６９】
＝＝＝管理装置２００＝＝＝
図２に示すように、管理装置２００は、ユーザ認証部２０１と、管理情報格納部２０２と、ユーザ確認部２０３とを含む。ユーザ認証部２０１と、管理情報格納部２０２と、ユーザ確認部２０３とは、それぞれ別個のコンピュータシステムで構築されていてもよいし、一部または全部が同一のコンピュータシステムで実現されていてもよい。
【００７０】
＝＝＝管理対象装置３００＝＝＝
図２に示すように、管理対象装置３００は、処理要求受付部３０１と、処理実施部３０３と、下位権限確認部３０４と、下位管理情報格納部３０５とを含む。処理要求受付部３０１と、処理実施部３０３と、下位権限確認部３０４と、下位管理情報格納部３０５とは、それぞれ別個のコンピュータシステムで構築されていてもよいし、一部または全部が同一のコンピュータシステムで実現されていてもよい。図２には３つの処理実施部３０３ａ、ｂおよびｃが示されているが、管理対象装置３００は、任意の数の処理実施部３０３を含んでよい。
【００７１】
図１に示すアクセス制御システム４０１は、アクセス制御システム４０２が混在するアクセス制御システム（情報処理システム）であってよい。この場合、管理装置２１０は、任意の管理対象装置３００および管理対象装置３１０と接続されてよい。また、管理対象装置３１０は、管理装置２００および管理装置２１０の任意のいずれかと接続されてよい。
【００７２】
また、管理装置２００、管理装置２１０、管理対象装置３００および管理対象装置３１０は、それぞれ別個のコンピュータシステムで構築されてもよいし、一部または全部が同一のコンピュータシステムで実現されてもよい。そして、同一のコンピュータシステムで実現される各装置は、同一の構成要素を、共用してもよい。
【００７３】
ユーザ端末１００は、具体的には、プログラムに従って動作する情報処理装置のＣＰＵ（Ｃｅｎｔｏｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、プロセッサとも呼ばれる）と、ＲＡＭ（Ｒａｎｄａｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）やハードディスク等の記憶媒体と、通信インタフェースとによって実現される。通信インタフェースは、管理装置２００、管理装置２１０、管理対象装置３００および管理対象装置３１０と通信を行う。
【００７４】
管理装置２００と管理装置２１０とは、具体的には、プログラムに従って動作する情報処理装置のＣＰＵと、ＲＡＭやハードディスク等の記憶媒体と、通信インタフェースとによって実現される。通信インタフェースは、ユーザ端末１００、管理対象装置３００および管理対象装置３１０と通信を行う。
【００７５】
管理対象装置３００と、管理対象装置３１０は、具体的には、プログラムに従って動作する情報処理装置のＣＰＵと、ＲＡＭやハードディスク等の記憶媒体と、通信インタフェースとによって実現される。通信インタフェースは、ユーザ端末１００、管理装置２００および管理装置２１０と通信を行う。
【００７６】
ユーザ認証部２０１と、ユーザ確認部２０３と、権限確認部２０４と、処理要求受付部３０１と、処理要求受付部３０１１と、処理実施部３０３と、下位権限確認部３０４とは、具体的には、プログラムに従って動作する情報処理装置のＣＰＵと、ＲＡＭ等の記憶媒体と、通信インタフェースとによって実現される。
【００７７】
管理情報格納部２０２と、管理情報格納部２０２１と、処理要求代行部３０２と、下位管理情報格納部３０５とは、具体的には、プログラムに従って動作する情報処理装置のＣＰＵと、ＲＡＭやハードディスク等の記憶媒体と、通信インタフェースとによって実現される。
【００７８】
図３は、管理装置２１０および管理対象装置３１０を実現する情報処理装置（以下、コンピュータと呼ぶ）のハードウェア構成を示すブロック図である。
【００７９】
図３に示すように、コンピュータ７００は、ＣＰＵ７０１、記憶部（例えば、ＲＡＭ）７０２、記憶装置（例えば、ハードディスク）７０３、入力部７０４、出力部７０５および通信部７０６を含む。更に、コンピュータ７００は、外部から供給される記録媒体（または記憶媒体）７０７を含む。例えば、記録媒体７０７は、情報を非一時的に記憶する不揮発性記録媒体（非一時的記録媒体）である。また、記録媒体７０７は、情報を信号として保持する、一時的記録媒体であってもよい。
【００８０】
ＣＰＵ７０１は、オペレーティングシステム（不図示）を動作させて、コンピュータ７００の、全体の動作を制御する。例えば、ＣＰＵ７０１は、記憶装置７０３に装着された記録媒体７０７から、そのプログラムやデータを読み込み、読み込んだそのプログラムやそのデータを記憶部７０２に書き込む。ここで、そのプログラムは、例えば、後述の図７、図８、図９、図１０、図１１および図１２に示すシーケンス図の動作を各コンピュータ７００に実行させるためのプログラムである。
【００８１】
そして、ＣＰＵ７０１は、その読み込んだプログラムに従って、またその読み込んだデータに基づいて、図１に示すユーザ認証部２０１、管理情報格納部２０２１、ユーザ確認部２０３、権限確認部２０４、処理要求受付部３０１、処理要求受付部３０１１、処理要求代行部３０２、処理実施部３０３、下位権限確認部３０４および下位管理情報格納部３０５として各種の処理を実行する。
【００８２】
尚、ＣＰＵ７０１は、通信網（不図示）に接続されている外部コンピュータ（不図示）から、記憶部７０２にそのプログラムやそのデータをダウンロードするようにしてもよい。
【００８３】
記憶部７０２は、そのプログラムやそのデータを記憶する。記憶部７０２は、図１に示す管理情報格納部２０２１および下位管理情報格納部３０５の一部に含まれてよい。
【００８４】
記憶装置７０３は、例えば、光ディスク、フレキシブルディスク、磁気光ディスク、外付けハードディスクおよび半導体メモリであって、記録媒体７０７を含む。記憶装置７０３（記録媒体７０７）は、そのプログラムをコンピュータ読み取り可能に記憶する。また、記憶装置７０３は、そのデータを記憶してもよい。記憶装置７０３は、図１に示す管理情報格納部２０２１および下位管理情報格納部３０５の一部に含まれてよい。
【００８５】
入力部７０４は、オペレータによる操作の入力や外部からの情報の入力を受け付ける。入力操作に用いられるデバイスは、例えば、マウスやキーボード、内蔵のキーボタンおよび、タッチパネルなどである。
【００８６】
出力部７０５は、例えばディスプレイで実現される。出力部７０５は、例えばＧＵＩ（ＧＲＡＰＨＩＣＡＬ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）による入力要求や出力などの確認をするために用いられる。
【００８７】
管理装置２１０の通信部７０６は、ユーザ端末１００、管理対象装置３００および管理対象装置３１０とのインタフェースを実現する。管理装置２１０の通信部７０６は、ユーザ認証部２０１、ユーザ確認部２０３および権限確認部２０４の一部として含まれる。
【００８８】
管理対象装置３１０の通信部７０６は、ユーザ端末１００、管理装置２００、管理装置２１０とのインタフェースを実現する。管理対象装置３１０の通信部７０６は、処理要求受付部３０１１、処理要求代行部３０２、処理実施部３０３の一部として含まれる。
【００８９】
以上説明したように、図１に示す管理装置２１０および管理対象装置３１０の機能単位のブロックは、図３に示すハードウェア構成のコンピュータ７００によって実現される。但し、コンピュータ７００が備える各部の実現手段は、上記に限定されない。すなわち、コンピュータ７００は、物理的に結合した１つの装置により実現されてもよいし、物理的に分離した２つ以上の装置を有線または無線で接続し、これら複数の装置により実現されてもよい。
【００９０】
尚、上述のプログラムのコードを記録した記録媒体７０７が、コンピュータ７００に供給され、ＣＰＵ７０１は、記録媒体７０７に格納されたそのプログラムのコードを読み出して実行するようにしてもよい。或いは、ＣＰＵ７０１は、記録媒体７０７に格納されたそのプログラムのコードを、記憶部７０２、記憶装置７０３またはその両方に格納するようにしてもよい。すなわち、本実施形態は、コンピュータ７００（ＣＰＵ７０１）が実行するそのプログラム（ソフトウェア）を、一時的にまたは非一時的に、記憶する記録媒体７０７の実施形態を含む。尚、情報を非一時的に記憶する記憶媒体は、不揮発性記憶媒体とも呼ばれる。
【００９１】
尚、図１に示す構成要素は、上述のコンピュータ装置の機能単位に分割した構成要素に限らず、ハードウェア単位の構成要素でもよい。
【００９２】
次に、各構成要素の本実施形態に関連する機能を説明する。
【００９３】
＝＝＝ユーザ端末１００＝＝＝
ユーザ端末１００は、管理装置２００および管理装置２１０のそれぞれに対してユーザ認証要求を送信する。ユーザ端末１００は、管理装置２００および管理装置２１０のそれぞれから、ユーザ認証要求への応答であるユーザ認証結果を受信し、そのユーザ認証結果に付随するトークンを記憶する。
【００９４】
また、ユーザ端末１００は、管理対象装置３００および管理対象装置３１０のそれぞれに対して処理要求入力（システム操作要求とも呼ばれる）を送信する。その処理要求入力は、管理対象装置３００および管理対象装置３１０のそれぞれが実施すべき処理を指定する。また、その処理要求入力は、ユーザ端末１００が管理装置２００および管理装置２１０のそれぞれから受信して記憶しているトークンを伴う。ユーザ端末１００は、管理対象装置３００および管理対象装置３１０のそれぞれから、その処理要求入力への応答である処理結果出力を受信する。
【００９５】
＝＝＝管理装置２００と管理装置２１０＝＝＝
管理装置２００と管理装置２１０とは、ユーザ端末１００からユーザ認証要求を受信し、そのユーザ認証要求に基づいてユーザ認証を実行し、そのユーザ端末１００へユーザ認証結果を送信する。
【００９６】
また、管理装置２００と管理装置２１０とは、管理対象装置３００および管理対象装置３１０のそれぞれから、ユーザ確認要求を受信する。次に、管理装置２００と管理装置２１０とは、受信したそのユーザ確認要求に基づいてユーザ確認を実行する。次に、管理装置２００と管理装置２１０とは、その管理対象装置３００および管理対象装置３１０のそれぞれへユーザ確認結果を送信する。なお、ユーザ確認要求は、管理対象装置３００または管理対象装置３１０がユーザ端末１００から受信した処理要求入力に含まれている、トークンを含む。
【００９７】
また、管理装置２１０は、管理対象装置３１０から、権限確認要求を受信し、その権限確認要求に基づいて権限確認を実行し、その管理対象装置３１０へ権限確認結果を送信する。
【００９８】
尚、そのユーザ確認要求とその権限確認要求とは、合わせて、確認要求とも呼ばれる。
【００９９】
管理対象装置３００と管理対象装置３１０とは、ユーザ端末１００から処理要求入力を受信し、その処理要求入力に基づいて処理を実行し、そのユーザ端末１００へ処理結果出力を送信する。
【０１００】
また、管理対象装置３００と管理対象装置３１０とは、管理装置２００および管理装置２１０のそれぞれに対してユーザ確認要求を送信する。次に、管理対象装置３００と管理対象装置３１０とは、管理装置２００および管理装置２１０のそれぞれから、そのユーザ確認要求への応答であるユーザ確認結果を受信する。
【０１０１】
また、管理対象装置３１０は、管理装置２１０に対して権限確認要求を送信する。管理対象装置３１０は、管理装置２１０からその権限確認要求への応答である権限確認結果を受信する。
【０１０２】
なお、管理対象装置３１０は、例えば、管理装置２００に対しても権限確認要求を送信してよい。そして、管理対象装置３１０は、例えば、管理装置２００から無効な応答を受信することによって、管理装置２００が権限管理機能を持たないことを判別する。
【０１０３】
管理対象装置３１０は、例えば、管理装置群のうち、どの管理装置が管理装置２００で、どの管理装置が管理装置２１０かを示す情報を予め保持し、その情報を参照するようにしてもよい。
【０１０４】
管理装置２１０とは、例えば、管理装置群のうち、どの装置が管理装置２００で、どの装置が管理装置２１０かを示す情報を保持し、管理対象装置３１０に対する応答に含めて送信するようにしてもよい。この場合、管理対象装置３１０は、その応答に含まれる情報を参照するようにしてもよい。
【０１０５】
管理対象装置３１０は、上述のように、管理装置２１０と管理装置２００とを判別することで、管理装置３１０が存在するか否かを判定する。そして、管理対象装置３１０は、管理装置３１０が存在しない場合、権限確認要求及び後述する「管理者権限を持つユーザの認証要求」を送信しないようにしてよい。こうすることで、不要な通信を削減することができる。
【０１０６】
次に、本実施形態の動作について、図面を参照して詳細に説明する。
【０１０７】
図４は、管理情報格納部２０２１に記憶されるユーザ情報８１０の一例を示す図である。図４に示すように、ユーザ情報８１０は、ユーザＩＤ８１２、パスワード８１３およびサブジェクト８１４の組であるユーザ情報レコード８１１を含む。
【０１０８】
ユーザＩＤ８１２は、ユーザを特定する識別子である。パスワード８１３は、そのユーザＩＤ８１２に対応するパスワードである。尚、パスワード８１３に暗号化やハッシュ化などの難読化処理を施して扱うようにしてもよい。ユーザＩＤ８１２およびパスワード８１３の組は、ユーザの認証に必要な情報、クレデンシャルあるいはクレデンシャルの一部とも呼ばれる。
【０１０９】
サブジェクト８１４は、そのユーザＩＤ８１２に対応する、管理対象装置３１０に対して操作を行う主体を示す情報である。サブジェクト８１４は、例えば、ユーザＩＤ８１２と同じであってよい。
【０１１０】
また、そのユーザＩＤ８１２に対応するユーザが、何らかの職務に必要な権限集合として、ロール（役割）を付与されている場合、サブジェクト８１４は、ロールＩＤであってよい。ロールＩＤは、例えば、「人事部」や、「経理部」、「ＶＭ稼働管理」、「ＶＭ構成管理」、「ネットワーク管理」などを示す。
【０１１１】
ユーザ情報８１０は、必要に応じて、図示しないユーザ名称、所属名称、連絡先などの情報を含んでもよい。
【０１１２】
図５は、管理情報格納部２０２１に記憶されるトークン情報８２０の一例を示す図である。図５に示すように、トークン情報８２０は、トークン８２２、有効期限８２３およびユーザＩＤ８２４の組であるトークン情報レコード８２１を含む。有効期限８２３は、トークン８２２の有効期限（例えば、日時）を示す。
【０１１３】
図６は、管理情報格納部２０２１に記憶される権限情報８３０の一例を示す図である。図６に示すように、権限情報８３０は、アクセス権を構成するサブジェクト８３２、アクション８３３、リソース８３４の組である、権限情報レコード８３１を含む。
【０１１４】
サブジェクト８３２は、サブジェクト８１４と同等である。
【０１１５】
アクション８３３は、操作内容を示す、例えば、ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）、処理要求入力、コマンド、処理実施機能の識別子などである。
【０１１６】
リソース８３４は、操作を行う対象を示す、例えば、ユーザ情報８１０の一部または全部、トークン情報８２０の一部または全部、権限情報８３０の一部または全部、システムを構成する機能モジュール情報、ＶＭ情報、ＶＭの構成情報（イメージ）、管理対象装置の識別子、ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）の識別子、ネットワークセグメントの識別子などである。
【０１１７】
但し、アクション８３３は、その内容によっては、特定のリソース指定を持たない。例えば、全体に対する一覧取得のアクションや、全体に対するステータス確認のアクション、システムの起動及び終了のアクションなどは、特定のリソース指定を持たない。
【０１１８】
アクセス制御システム４０１の管理者は、例えば、入力部７０４を介して、権限情報８３０を管理情報格納部２０２１に記録してよい。また、その管理者は、図示しない管理者端末から通信部７０６を経由して、権限情報８３０を管理情報格納部２０２１に記録してよい。換言すると、入力部７０４及び通信部７０６は、権限情報８３０（任意の粒度のシステム操作に対する権限）を入力する手段である。
【０１１９】
図７は、図２に示す関連技術に係るアクセス制御システム４０２の動作を示すシーケンス図である。
【０１２０】
（１）ステップＳ１００
ユーザ端末１００は、管理装置２００に対し、ユーザ認証要求を送信する。また、ユーザ端末１００は、管理装置２００からユーザ認証結果を受信し、ユーザ認証結果に付随するトークン８２２を記憶する。尚、ユーザ端末１００は、そのトークン８２２を一時的に記憶してよい。
【０１２１】
（２）ステップＳ２００
次に、ユーザ端末１００は、管理対象装置３００に対して処理要求入力を送信し、管理対象装置３００が実施すべき処理を指定する。なお、処理要求入力は、ユーザ端末１００が管理装置２００から受信して記憶しているそのトークン８２２を含む。
【０１２２】
次に、管理対象装置３００は、管理装置２００に対してユーザ確認要求を送信し、管理装置２００から、ユーザ確認結果を受信する。なお、ユーザ確認要求は、管理対象装置３００がユーザ端末１００から受信した処理要求入力に含まれていたトークン８２２を含む。
【０１２３】
次に、管理対象装置３００は、処理要求入力で指定された処理を実施し、処理結果を得る。なお、その処理の実施は、その処理の実施に必要な権限がユーザ端末１００の利用者（ユーザ）に存在するか否かに関する、権限確認を伴う。続けて、管理対象装置３００は、その処理結果の出力を、ユーザ端末１００へ送信する。
【０１２４】
ユーザ端末１００は、管理対象装置３００から処理結果出力を受信する。
【０１２５】
図８は、図１に示すアクセス制御システム４０１の動作を示すシーケンス図である。
【０１２６】
（１）ステップＳ１１０
管理対象装置３１０は、管理装置２１０に対し、ユーザ認証要求を送信し、管理装置２１０からユーザ認証結果を受信し、ユーザ認証結果に含まれるトークン８２２を記憶する。以後、このステップＳ１１０で記憶するそのトークン８２２をトークンａとも呼ぶ。
【０１２７】
なお、ステップＳ１１０は、図７に示すステップＳ１００と同様のプロトコルを用いてユーザ認証を実行する。但し、そのユーザ認証における認証の対象は、ステップＳ１００が認証の対象とするユーザ端末１００の利用者ではなく、図１に示す管理対象装置３１０に対して管理者権限を持つユーザである。また、そのユーザ認証における認証の対象は、図１に示すアクセス制御システム４０１に対する権利者権限を持つユーザであってもよい。
【０１２８】
（２）ステップＳ１００
次に、ユーザ端末１００は、管理装置２１０に対し、ユーザ認証要求を送信し、管理装置２１０からユーザ認証結果を受信し、ユーザ認証結果に付随するトークン８２２を記憶する。尚、ユーザ端末１００は、そのトークン８２２を一時的に記憶してよい。以後、このステップＳ１００で記憶するトークン８２２をトークンｕとも呼ぶ。
【０１２９】
なお、ステップＳ１００は、図７に示すステップＳ１００と同じである。
【０１３０】
（３）ステップＳ２１０
次に、ユーザ端末１００は、管理対象装置３１０に対して処理要求入力を送信し、管理対象装置３１０が実施すべき処理を指定する。
【０１３１】
なお、処理要求入力は、ユーザ端末１００が管理装置２１０から受信して記憶しているトークンｕを含む。
【０１３２】
次に、管理対象装置３１０は、管理装置２１０に対してユーザ確認要求を送信し、管理装置２１０から、ユーザ確認結果を受信する。なお、ユーザ確認要求は、その受信した処理要求入力に含まれるトークンｕを含む。
【０１３３】
次に、管理対象装置３１０は、管理装置２１０に対して権限確認要求を送信し、管理装置２１０から、権限確認結果を受信する。なお、その権限確認要求は、その処理要求入力で指定される処理の実施に必要な権限が、ユーザ端末１００の利用者（ユーザ）に存在するか否かの確認を要求する。
【０１３４】
その権限がそのユーザに存在しない場合、管理対象装置３１０は、終了処理を実行する。その終了処理は本実施形態の構成及び動作に直接的な関係を有さない為、説明を省略する。
【０１３５】
その権限がそのユーザに存在する場合、管理対象装置３１０は、処理要求代行処理を実行する。具体的には、管理対象装置３１０は、その受信した処理要求入力について、処理の要求元に関する情報を、管理者権限を持つユーザに関する情報で置き換えた置換処理要求を生成し、出力する。
【０１３６】
管理対象装置３１０は、置換処理要求で指定された処理を実施し、処理結果を得る。
【０１３７】
なお、管理対象装置３１０は、その処理を実施する際に、処理実施に必要な権限がユーザ端末１００の利用者（ユーザ）に存在するか否かに関する権限確認を、置換処理要求に含まれる管理者権限を持つユーザに関する情報を利用して実行する。
【０１３８】
ユーザ端末１００は、管理対象装置３１０から処理結果出力を受信する。
【０１３９】
なお、ステップＳ２１０は、図２に示すアクセス制御システム４０２における、図７に示すステップＳ２００を拡張したステップであるものとする。
【０１４０】
その際、ステップＳ２００を実行する管理対象装置３００と、ステップＳ２１０を実行する管理対象装置３１０とが混在する環境でも、管理装置２００および管理装置２１０のいずれか一方によって一元管理が可能となるよう、その拡張している部分以外は図７に示すステップＳ２００と同じであるものとする。
【０１４１】
これにより、ステップＳ２１０は、以下の管理機能を同時に提供することが可能である。第１の管理機能は、拡張部分を持つ管理装置２１０と管理対象装置３１０の組み合わせに対する、図１に示すアクセス制御システム４０１に係る技術（本実施形態の技術）に基づく管理機能である。第２の管理機能は、拡張部分を持たない管理装置２００や管理対象装置３００による、図２に示すアクセス制御システム４０２に係る技術（関連技術）に基づく管理機能と同様の管理機能である。
【０１４２】
次に、図９〜１２を参照して、本実施形態の詳細な動作について説明する。
【０１４３】
図９は、図１に示すアクセス制御システム４０１の、管理対象装置３１０によるユーザ認証要求に関する処理の詳細な動作を示すシーケンス図である。
【０１４４】
（１）ステップＳ１１０１
処理要求代行部３０２は、ユーザ認証部２０１に対し、認証要求を送信する。
【０１４５】
その認証要求には、ユーザの認証に必要となる情報（クレデンシャル）を含む。
【０１４６】
クレデンシャルは、典型的には、例えばユーザＩＤとパスワードとの組である。例えば、ユーザＩＤとして「ｋ−ｓａｔｏｕ」、パスワードとして「ｐａｓｓｗｄ」などの文字列が用いられる。パスワードは、暗号化やハッシュ化などの難読化処理を施されてもよい。
【０１４７】
また、クレデンシャルは、例えば、予測困難でユニークなｂｉｔ列や、任意の数字および文字の列、あるいは特定の暗号アルゴリズムやプロトコルに基づく「署名の付いた証明書」などであってもよい。
【０１４８】
処理要求代行部３０２は、管理者権限を持つユーザ（例えば「ａｄｍｉｎ」）の、ユーザＩＤ、ロールＩＤ、および管理情報格納部２０２１の記憶しているユーザ情報８１０に含まれるその管理者権限を持つユーザの識別子（ユーザＩＤ８１２）やＵＵＩＤ（Ｕｎｉｖｅｒｓａｌｌｙ  Ｕｎｉｑｕｅ  Ｉｄｅｎｔｉｆｉｅｒ）、などの権限者情報（不図示）を記憶している。
【０１４９】
ここで、処理要求代行部３０２は、管理者権限を持つユーザに対応するクレデンシャルとして、例えば「ａｄｍｉｎ」のユーザＩＤとパスワードとの組を用いた認証要求を送信する。こうして、処理要求代行部３０２は、以下のステップＳ１１０２からステップＳ１１０９の動作により、図１２に示すステップＳ２１１７において処理要求代行部３０２が必要とする、管理者権限を持つユーザのトークン８２２を取得する。
【０１５０】
（２）ステップＳ１１０２
ユーザ認証部２０１は、管理情報格納部２０２１に対し、ユーザ検索要求を出力する。
【０１５１】
ユーザ検索要求は、検索したいユーザを特定するための情報として、クレデンシャルの一部および全部のいずれかを含む。
【０１５２】
（３）ステップＳ１１０３
管理情報格納部２０２１は、管理情報格納部２０２１が記憶しているユーザ情報８１０に対しユーザ検索を実行し、受け取ったそのユーザ検索要求に含まれるクレデンシャルに対応する、ユーザ情報レコード８１１が存在するか否かを確認する。
【０１５３】
（４）ステップＳ１１０４
管理情報格納部２０２１は、ユーザ認証部２０１に対し、ユーザ検索結果を出力する。
【０１５４】
ユーザ検索結果には、管理情報格納部２０２１が記憶しているユーザ情報８１０における、特定のユーザ情報レコード８１１の有無を示す情報を含む。その特定のユーザ情報レコード８１１は、その受け取ったユーザ検索要求に含まれるクレデンシャルに対応する、ユーザＩＤ８１２とパスワード８１３とを含むユーザ情報レコード８１１である。
【０１５５】
その特定のユーザ情報レコード８１１の有無を示す情報は、例えば、ｔｒｕｅあるいはｆａｌｓｅなどの真偽値である。また、その有無を示す情報は、「１」あるいは「０」などの数値、クレデンシャルの一部または全部、検索結果として得られたユーザ情報レコード８１１の一部または全部、などであってよい。
【０１５６】
例えば、その有無を示す情報は、ユーザＩＤ８１２の「ｋ−ｓａｔｏｕ」とパスワード８１３の「ｐａｓｓｗｄ」との組や、管理情報格納部２０２１が記憶しているユーザ情報８１０においてユーザ情報レコード８１１のユニークな識別子として使用している項目（不図示）、例えば、ＵＵＩＤ「１２３４５６７８−１２３４−１２３４−１２３４−１２３４５６７８９０１２」など、であってよい。
【０１５７】
（５）ステップＳ１１０５
ユーザ検索結果に含まれる、その特定のユーザ情報レコード８１１の有無を示す情報が「有」を示す内容である場合、ユーザ認証部２０１は、この指定されたユーザに提供するトークン８２２（トークンａ）を生成する。その特定のユーザ情報レコード８１１の有無を示す情報が「有」を示す内容である場合は、つまり、その受け取ったユーザ検索要求で指定されたユーザを特定する情報に該当するユーザの情報が、存在する場合である。
【０１５８】
トークン８２２は、例えば、予測困難でユニークなｂｉｔ列や任意の数字および文字の列などであり、典型的には、ＵＵＩＤである。
【０１５９】
例えば、トークン８２２は、ＵＵＩＤ「１２３４５６７８−１２３４−１２３４−１２３４−２３４５６７８９０１２３」である。
【０１６０】
トークン８２２は、特定の期間、例えば、ユーザ認証の直後から１日間や１時間などの期間に限定して有効である。尚、トークン８２２は、期間に限定されず継続的に有効であってもよい。
【０１６１】
なお、その特定のユーザ情報レコード８１１の有無を示す情報が、「無」を示す内容である場合、つまり、その受け取ったユーザ検索要求で指定されたユーザを特定する情報に該当するユーザ情報が存在しない場合、ユーザ認証部２０１は、トークン８２２を生成しない。次に、処理は、ステップＳ１１０９に進む。
【０１６２】
（６）ステップＳ１１０６
ユーザ認証部２０１は、管理情報格納部２０２１に対し、トークン登録要求を出力する。そのトークン登録要求は、ステップＳ１１０５で生成されたトークン８２２（トークンａ）を含む。
【０１６３】
また、トークン８２２が有効期間を限定されている場合、そのトークン登録要求は、有効期間に関する日時を含む。
【０１６４】
有効期間に関する日時は、例えば、トークン８２２の生成日時、最終更新日時、有効期限日時などである。例えば、有効期間に関する日時は、有効期限日時「２００１−０２−０３Ｔ０４：０５：０６＋０９：００」である。
【０１６５】
（７）ステップＳ１１０７
管理情報格納部２０２１は、受け取ったそのトークン登録要求に含まれるトークン８２２（トークンａ）について、トークン登録を実行する。即ち、管理情報格納部２０２１は、受け取ったそのトークン登録要求に含まれるトークン８２２（トークンａ）を含むトークン情報レコード８２１を、トークン情報８２０に記憶する。
【０１６６】
なお、トークン登録要求がトークン８２２の有効期間に関する日時を含む場合、管理情報格納部２０２１は、トークン８２２と有効期限８２３との組を含むトークン情報レコード８２１を、トークン情報８２０に記憶する。
【０１６７】
（８）ステップＳ１１０８
管理情報格納部２０２１は、ユーザ認証部２０１に対し、トークン登録結果を出力する。
【０１６８】
そのトークン登録結果は、トークン登録の成否を示す情報を含む。
【０１６９】
トークン登録の成否を示す情報は、例えば、ｔｒｕｅあるいはｆａｌｓｅなどの真偽値である。また、トークン登録の成否を示す情報は、「１」あるいは「０」などの数値、登録したトークン８２２の一部または全部、トークン８２２の発行対象となったユーザ情報レコード８１１の一部または全部、などであってもよい。
【０１７０】
（９）ステップＳ１１０９
ユーザ認証部２０１は、処理要求代行部３０２に対し、認証結果を送信する。その認証結果は、ユーザ認証の成否を示す情報およびトークンaを含む。
【０１７１】
ユーザ認証の成否を示す情報は、例えば、ｔｒｕｅあるいはｆａｌｓｅなどの真偽値である。また、ユーザ認証の成否を示す情報は、「１」あるいは「０」などの数値、登録したトークン８２２の一部または全部、トークン８２２の発行対象となったユーザ情報レコード８１１の一部または全部、などであってもよい。
【０１７２】
ユーザ認証の成否を示す情報としてトークン８２２を用いる場合、認証結果は、そのトークン８２２のみを含んでもよい。
【０１７３】
また、ステップＳ１１０５においてその特定のユーザ情報レコード８１１の有無を示す情報が「無」を示す内容であった場合や、ステップＳ１１０８においてトークン登録の成否を示す情報が「否」を示す内容であった場合、ユーザ認証部２０１は、ユーザ認証の成否を示す情報を、「否」を示す内容とする。
【０１７４】
図１０は、図１に示すアクセス制御システム４０１の、ユーザ端末１００によるユーザ認証要求に関する処理の詳細な動作を示すシーケンス図である。
【０１７５】
（１）ステップＳ１００１
ユーザ端末１００は、ユーザ認証部２０１に対し、認証要求を送信する。
【０１７６】
その認証要求には、ユーザの認証に必要となる情報を含む。その情報は、例えば、前述のクレデンシャルと呼ばれる情報である。
【０１７７】
ここで、ユーザ端末１００は、そのユーザ端末１００を利用しているユーザに対応するクレデンシャルとして、例えば「ｕｓｅｒ０１」のユーザＩＤとパスワードとの組を用いた認証要求を送信する。
【０１７８】
ステップＳ１００２からステップＳ１００８までは、図９に示すステップＳ１１０２からステップＳ１１０８までと同等（但し、トークンａはトークンｕと読み替えられる）である為、説明を省略する。
【０１７９】
（９）ステップＳ１００９
ユーザ認証部２０１は、ユーザ端末１００に対し、認証結果を送信する。
【０１８０】
その認証結果は、図９に示すステップＳ１１０９と同様の、ユーザ認証の成否を示す情報およびトークンｕを含む。
【０１８１】
図１１および図１２は、図１に示すアクセス制御システム４０１の、ユーザ端末１００による処理要求に関する処理の詳細な動作を示すシーケンス図である。
【０１８２】
（１）ステップＳ２１０１
ユーザ端末１００は、処理要求受付部３０１１に対し、処理要求入力を送信する。
【０１８３】
処理要求入力は、管理対象装置３１０の持つ処理実施機能（処理実施部３０３）を用いて実行される処理を行わせるための指示を、示すものである。その指示は、有効なトークンｕと、管理対象装置３１０の処理要求受付部３０１１に対するコマンドとを含む情報である。その有効なトークンｕは、処理要求を行うユーザ端末１００の利用者（ユーザ）が図８に示すステップＳ１００におけるユーザ認証によって取得したトークンｕである。
【０１８４】
処理要求受付部３０１１に対するコマンドとして、典型的には、例えば、仮想マシン（ＶＭ）の一覧の取得コマンドや、特定のＶＭの情報取得のコマンド、特定のＶＭの起動／終了／サスペンド／レジュームのコマンド、新しいＶＭ構成の作成のコマンド、ＶＭ構成の削除のコマンド、ネットワーク構成の参照のコマンド、新しいネットワークセグメントの作成のコマンド、ネットワークセグメントの削除のコマンド、ＶＭのネットワークインタフェースカード（ＮＩＣ）とネットワークセグメントの紐付けのコマンドなどがある。
【０１８５】
また、そのコマンドは、ＶＭや仮想ネットワークではなく、物理的な計算機やネットワークスイッチ等を操作対象とする場合もある。
【０１８６】
処理要求受付部３０１１に入力するコマンドは、コマンド毎に細かい記述形式は異なるが、基本的に、要求する操作（アクション）と、操作の対象とするＶＭなどのリソースとを含む。例えば、アクションとして「ｓｔａｒｔ」、リソースとして「ｖｍ１」などを含む。
【０１８７】
また、処理要求受付部３０１１は、自身および、他にも複数存在する管理対象装置３１０の処理要求受付部３０１１に対し、ユーザ端末１００が行うのと同様の手順で、処理要求入力を送信することもできる。
【０１８８】
これは、ユーザに要求されたある処理が、１つの処理要求入力やコマンドで完遂できない処理である場合に、幾つかの処理要求入力やコマンドを連鎖的、再帰的および入れ子状などに呼び出し、その結果を統合することで、所望の処理結果を得られるようにするためである。
【０１８９】
例えば、１つの処理要求入力で完遂できないその処理は、複数の管理対象装置３１０に跨ってＶＭの一覧を取得する場合の処理である。例えば、１つのコマンドで完遂できないその処理は、ＶＭの実行管理を行うコンピュート機能に対するコマンドでＶＭの識別子を取得した後、ＶＭの構成管理を行うイメージ機能に対するコマンドでそのＶＭの名称やスペックなどの詳細情報を得るような場合の処理である。
【０１９０】
（２）ステップＳ２１０２
処理要求受付部３０１１は、ユーザ確認部２０３に対し、ユーザ確認要求を出力する。そのユーザ確認要求には、ステップＳ２１０１における処理要求入力に含まれるトークンｕを含む。
【０１９１】
（３）ステップＳ２１０３
ユーザ確認部２０３は、管理情報格納部２０２１に対し、トークン検索要求を出力する。そのトークン検索要求には、ステップＳ２１０２におけるユーザ確認要求に含まれるトークンｕを含む。
【０１９２】
（４）ステップＳ２１０４
管理情報格納部２０２１は、管理情報格納部２０２１が記憶しているトークン情報８２０に対し、トークン検索を実行し、受け取ったそのトークン検索要求に含まれるトークンｕが存在するか否かを確認する。換言すると、管理情報格納部２０２１は、そのトークンｕがトークン情報８２０に含まれているか否かを確認する。
【０１９３】
さらに、存在することを確認されたそのトークンｕに有効期間が設定されている場合、管理情報格納部２０２１は、そのトークンｕが有効期間内のものか否かを確認する。
【０１９４】
（５）ステップＳ２１０５
管理情報格納部２０２１は、ユーザ確認部２０３に対し、トークン検索結果を出力する。
【０１９５】
トークン検索結果は、管理情報格納部２０２１が記憶しているトークン情報８２０における、その受け取ったトークン検索要求に含まれるトークンｕの有無を示す情報およびそのトークンｕに対応するユーザを特定する情報を含む。
【０１９６】
但し、トークンｕの有無を示すその情報は、トークンｕに有効期間が設定されている場合、トークン情報８２０に含まれ、かつ有効期間内のトークンｕの有無を示す。
【０１９７】
有効なトークンｕの有無を示すその情報は、例えば、ｔｒｕｅあるいはｆａｌｓｅなどの真偽値である。また、有効なトークンｕの有無を示すその情報は、「１」あるいは「０」などの数値、トークンｕの一部または全部であってもよい。さらに、有効なトークンｕの有無を示すその情報は、そのトークンｕに対応するユーザＩＤ８２４の一部または全部であってもよい。
【０１９８】
トークンｕに対応するユーザを特定するその情報は、例えば、ユーザＩＤ８２４である。トークンｕに対応するユーザを特定するその情報は、ＵＵＩＤなどユーザ情報レコード８１１に付与されたユニークなＩＤ（図示しない）であってもよい。また、トークンｕに対応するユーザを特定するその情報は、ユーザＩＤ８２４とパスワード（図示しない）との組であってよい。
【０１９９】
（６）ステップＳ２１０６
ユーザ確認部２０３は、管理情報格納部２０２１に対し、ユーザ情報検索要求を出力する。
【０２００】
ユーザ情報検索要求には、ステップＳ２１０５で受け取ったトークン検索結果に含まれる、トークンｕに対応するユーザを特定するその情報（本実施形態では、ユーザＩＤ８２４）を含む。
【０２０１】
（７）ステップＳ２１０７
管理情報格納部２０２１は、管理情報格納部２０２１が記憶しているユーザ情報８１０に対し、トークンｕに対応するユーザを特定するその情報（ユーザＩＤ８２４）に基づいてユーザ情報検索を実行し、ステップＳ２１０５で存在が確認されたトークンｕに対応するサブジェクト８１４を取得する。
【０２０２】
（８）ステップＳ２１０８
管理情報格納部２０２１は、ユーザ確認部２０３に対し、ユーザ情報検索結果を出力する。
【０２０３】
そのユーザ情報検索結果には、管理情報格納部２０２１が記憶しているユーザ情報８１０における、ユーザ情報検索要求で指定されたユーザに関するユーザ情報（サブジェクト８１４）を含む。
【０２０４】
（９）ステップＳ２１０９
ユーザ確認部２０３は、処理要求受付部３０１１に対し、ユーザ確認結果を送信する。
【０２０５】
そのユーザ確認結果には、ステップＳ２１０２におけるユーザ確認要求が含むトークンｕに対応するユーザに関するユーザ情報（サブジェクト８１４）を含む。
【０２０６】
そのユーザ確認結果を受信した処理要求受付部３０１１は、そのユーザ確認結果を参照し、ステップＳ２１０１における処理要求入力に含まれるトークンｕが有効であり、そのトークンｕに対応する有効なユーザが存在することを確認し、そのユーザのユーザ情報（例えば、サブジェクト８１４）を取得する。
【０２０７】
（１０）ステップＳ２１１０
処理要求受付部３０１１は、権限確認部２０４に対し、権限確認要求を送信する。
【０２０８】
権限確認要求には、ステップＳ２１０１における処理要求入力に含まれるアクションとリソースと、ステップＳ２１０９におけるユーザ情報（サブジェクト８１４）とを含む。
【０２０９】
（１１）ステップＳ２１１１
権限確認部２０４は、管理情報格納部２０２１に対し、権限確認要求に基づいて権限検索要求を出力する。
【０２１０】
権限検索要求は、検索する権限を指定する、ステップＳ２１１０における権限確認要求に含まれるユーザＩＤやロールＩＤなどのサブジェクト８１４と、アクションと、リソースとを含む。
【０２１１】
（１２）ステップＳ２１１２
管理情報格納部２０２１は、管理情報格納部２０２１が記憶している権限情報８３０に対し、権限検索を実行する。具体的には、管理情報格納部２０２１は、ステップＳ２１１１における権限検索要求に含まれるユーザＩＤやロールＩＤなどのサブジェクト８１４について、その権限検索要求に含まれるアクションとリソースとの組に該当する権限を付与する記述（権限情報レコード８３１）が存在するか否かを確認する。
【０２１２】
（１３）ステップＳ２１１３
管理情報格納部２０２１は、権限確認部２０４に対し、権限検索結果を出力する。
【０２１３】
権限検索結果には、権限検索要求で指定されたその権限の、管理情報格納部２０２１が記憶している権限情報８３０における有無を示す情報を含む。
【０２１４】
その権限の有無を示すその情報は、例えば、ｔｒｕｅあるいはｆａｌｓｅなどの真偽値である。また、権限の有無を示す情報は、「１」あるいは「０」などの数値、権限情報レコード８３１の一部または全部、検索結果に付随して得られたユーザ情報レコード８１１の一部または全部やトークン情報レコード８２１の一部または全部、などであってもよい。
【０２１５】
（１４）ステップＳ２１１４
権限確認部２０４は、処理要求受付部３０１１に対し、権限確認結果を送信する。
【０２１６】
権限確認結果は、アクセス権相当の情報および権限情報レコード８３１のいずれかを含む。そのアクセス権相当の情報は、ステップＳ２１１０における権限確認要求に含まれるサブジェクト８１４、アクションおよびリソースで構成される。その権限情報レコード８３１は、ステップＳ２１１２における権限検索によって存在を確認された権限情報レコード８３１である。
【０２１７】
例えば、権限確認結果は、ユーザ「ｋ−ｓａｔｏｕ」というサブジェクト８１４が、ＶＭ「ｖｍ１」というリソースに対して、操作「ｓｔａｒｔ」というアクションを行使する権限を持つ、などの情報を含む。
【０２１８】
例えば、権限確認結果は、ロール「ｖｍ１−ａｄｍｉｎ」というサブジェクト８１４が、ＶＭ「ｖｍ１」というリソースに対して、操作「ｓｔａｒｔ」というアクションを行使する権限を持つ、などの情報を含む。
【０２１９】
サブジェクト８１４、アクションおよびリソースを表現するために、分かりやすい記述とは別に、ＵＵＩＤ「１２３４５６７８−１２３４−１２３４−１２３４−１２３４５６７８９０１２」などのユニークな識別子が用いられてもよい。
【０２２０】
その権限確認結果を受信した処理要求受付部３０１１は、その権限確認結果を参照し、ステップＳ２１０１における処理要求入力の内容の実施に必要な権限が、その処理要求入力を行ったユーザに付与されていることを確認する。
【０２２１】
（１５）ステップＳ２１１５
次に、処理要求受付部３０１１は、処理要求入力の内容を実施するため、処理要求分配を実行する。具体的には、処理要求受付部３０１１は、その処理要求入力で示される処理内容に対応する処理実施部３０３を選択し、処理要求を生成する。
【０２２２】
処理要求は、例えば、リソース「ｖｍ１」のアクション「ｓｔａｒｔ」などの内容のコマンドにあたる。
【０２２３】
また、処理要求は、処理要求入力を行ったユーザについて、ステップＳ１００９で取得した認証結果に含まれるトークン８２２と、ステップＳ２１０９で取得したユーザＩＤやロールＩＤなどのサブジェクト８１４とを更に含む。
【０２２４】
つまり、処理要求は、サブジェクト８１４、アクションおよびリソースのアクセス権相当の情報を含む。
【０２２５】
なお、１つの処理要求入力を、複数の処理実施部３０３の機能を組み合わせて実施する場合がある。この場合、処理要求受付部３０１１は、複数の処理実施部３０３を選択し、処理要求入力を分割して、各処理実施部３０３に配付するための複数の処理要求を生成する。
【０２２６】
（１６）ステップＳ２１１６
処理要求受付部３０１１は、処理要求代行部３０２に対し、生成したその処理要求を出力する。
【０２２７】
図２に示す、関連技術の、管理対象装置３００の処理要求受付部３０１は、生成したその処理要求を、直接処理実施部３０３に分配する。
【０２２８】
しかし、図１に示す、本実施形態の管理対象装置３１０の処理要求受付部３０１１は、図２に示す処理要求受付部３０１と同様に生成した処理要求を、処理実施部３０３には配付せず、処理要求代行部３０２に出力する。
【０２２９】
（１７）ステップＳ２１１７
ステップＳ２１１４の権限確認結果においてその権限がそのユーザに付与されている場合、処理要求代行部３０２は、以下のように、処理実施部３０３に対し、受け取った処理要求について処理の要求元に関する情報を置き換えた置換処理要求を出力する。処理の要求元に関するその情報は、サブジェクト８１４およびトークンｕである。
【０２３０】
処理要求代行部３０２は、処理要求受付部３０１１から受け取った処理要求に含まれるサブジェクト８１４を、処理要求代行部３０２が記憶しているその権限者情報に含まれる、対応する情報に置き換える。その処理要求代行部３０２が記憶しているその権限者情報は、図９に示すＳ１１０１において認証要求を送信する際に利用した、即ちトークンａに対応する権限者情報である。
【０２３１】
更に、処理要求代行部３０２は、処理要求受付部３０１１から受け取った処理要求に含まれるトークンｕを、ステップＳ１１０９で取得した認証結果に含まれるトークンａに置き換えて、置換処理要求を生成する。続けて、処理要求代行部３０２は、生成したその置換処理要求を処理実施部３０３に出力する。
【０２３２】
なお、処理要求代行部３０２は、ステップＳ１１０９で取得した認証結果に含まれるトークンａを使用し、ステップＳ２１０２〜Ｓ２１０９と同様の手順を用いて、管理者権限を持つユーザのユーザＩＤ８１２あるいは図示しないロールＩＤを、権限者情報として取得してもよい。この場合、処理要求代行部３０２は、権限者情報を記憶していなくてもよい。
【０２３３】
ステップＳ２１１４の権限確認結果においてその権限がそのユーザに付与されていない場合、処理要求代行部３０２は、処理実施部３０３に対し、受け取った処理要求
をそのまま出力する。
【０２３４】
尚、ステップＳ２１１４の権限確認結果においてその権限がそのユーザに付与されていない場合、処理要求代行部３０２は、処理を終了（異常終了）するようにしてもよい。
【０２３５】
（１８）ステップＳ２１１８
処理実施部３０３は、下位権限確認部３０４に対し、下位権限確認要求を出力する。
【０２３６】
下位権限確認要求には、ステップＳ２１１６における処理要求に含まれるアクションおよびリソースと、ステップＳ２１１７における権限者情報に含まれるユーザＩＤやロールＩＤなどのサブジェクト８１４とを含む。
【０２３７】
（１９）ステップＳ２１１９
下位権限確認部３０４は、下位管理情報格納部３０５に対し、下位権限検索要求を出力する。
【０２３８】
下位権限検索要求は、ステップＳ２１１８における下位権限確認要求に含まれる、ユーザＩＤやロールＩＤなどのサブジェクト８１４と、アクションと、リソースとを含む。
【０２３９】
（２０）ステップＳ２１２０
下位管理情報格納部３０５は、下位管理情報格納部３０５自身が記憶している権限情報に対し、下位権限検索を実行し、ステップＳ２１１９における下位権限検索要求に対応する記述が存在するか否かを確認する。その対応する記述は、ステップＳ２１１９における下位権限検索要求に含まれるユーザＩＤやロールＩＤなどのサブジェクト８１４に対して、その下位権限検索要求に含まれるアクションとリソースとの組に該当する権限を付与することを示す記述である。
【０２４０】
下位管理情報格納部３０５が記憶している権限情報は、例えば、前述の管理情報格納部２０２１が記憶している権限情報８３０と同様の構造である。この場合、その下位権限検索要求に含まれるサブジェクト８１４に対して、その下位権限検索要求に含まれるアクションとリソースとの組に該当する権限を付与する記述は、権限情報レコード８３１と同様の構造である。
【０２４１】
尚、下位管理情報格納部３０５が記憶している権限情報は、その下位管理情報格納部３０５が含まれる管理対象装置３１０および管理対象装置３００のいずれかに関する権限情報である。換言すると、下位管理情報格納部３０５が記憶している権限情報は、管理対象装置３１０および管理対象装置３００のそれぞれごとに、分散し、独立して管理される。
【０２４２】
ここで、ステップＳ２１１９における下位権限検索要求に含まれるサブジェクト８１４は、ステップＳ２１１７において、権限者情報に基づいて置き換えられている。このため、下位権限検索の結果は、常に権限が「有」の内容となる。
【０２４３】
（２１）ステップＳ２１２１
下位管理情報格納部３０５は、下位権限確認部３０４に対し、下位権限検索結果を出力する。
【０２４４】
下位管理情報格納部３０５が出力する下位権限検索結果は、下位管理情報格納部３０５が記憶している権限情報における、下位権限検索要求で指定された権限の有無を示す情報を含む。
【０２４５】
権限の有無を示す情報は、例えば、ｔｒｕｅあるいはｆａｌｓｅなどの真偽値である。また、権限の有無を示す情報は、「１」あるいは「０」などの数値や、下位管理情報格納部３０５が記憶している権限情報における権限を付与する記述の一部または全部、などであってもよい。
【０２４６】
（２２）ステップＳ２１２２
下位権限確認部３０４は、処理実施部３０３に対し、下位権限確認結果を出力する。
【０２４７】
下位権限確認部３０４が出力する下位権限確認結果は、アクセス権相当の情報および権限情報の記述内容のいずれかを含む。そのアクセス権相当の情報は、ステップＳ２１１８における下位権限確認要求に含まれるサブジェクト８１４、アクションおよびリソースで構成される。その権限情報の記述内容は、ステップＳ２１２０における下位権限検索によって存在を確認された権限を付与する記述の一部または全部である。
【０２４８】
例えば、下位権限確認部３０４が出力する下位権限確認結果は、ユーザ「ｋ−ｓａｔｏｕ」というサブジェクトが、ＶＭ「ｖｍ１」というリソースに対して、操作「ｓｔａｒｔ」というアクションを行使する権限を持つ、などの情報を含む。
【０２４９】
例えば、下位権限確認部３０４が出力する下位権限確認結果は、ロール「ｖｍ１−ａｄｍｉｎ」というサブジェクトが、ＶＭ「ｖｍ１」というリソースに対して、操作「ｓｔａｒｔ」というアクションを行使する権限を持つ、などの情報を含む。
【０２５０】
サブジェクト、アクションおよびリソースを表現するために、分かりやすい記述とは別に、ＵＵＩＤ「１２３４５６７８−１２３４−１２３４−１２３４−１２３４５６７８９０１２」などのユニークな識別子が用いられてもよい。
【０２５１】
その下位権限確認結果を受信した処理実施部３０３は、受信したその下位権限確認結果を参照し、ステップＳ２１１７における置換処理要求の内容の実施に必要な権限が、その置換処理要求を行ったユーザに付与されていることを確認する。
【０２５２】
但し、ここで、処理実施部３０３は、そのユーザを、ステップＳ２１１７において置き換えられた、管理者権限を持つユーザであるものとして、必要な権限が付与されていることを確認する。
【０２５３】
尚、ステップＳ２１１８〜ステップＳ２１２２は、図２に示す管理装置２００を用いてアクセス制御を実現するためには必須の動作である。しかし、図１に示すアクセス制御システム４０１においては、管理装置２１０によってアクセス制御の一元管理が実現されている。従って、図１に示す管理装置２１０および管理対象装置３１０と、図２に示す管理装置２００の混在環境ではない場合、管理対象装置３１０は、ステップＳ２１１８〜ステップＳ２１２２を実行しなくてよい。また、それらの混在環境であっても異なる技術による実現方式間やバージョン間での互換性及び親和性が不要な場合、管理対象装置３１０は、ステップＳ２１１８〜ステップＳ２１２２を実行しなくてよい。
【０２５４】
（２３）ステップＳ２１２３
処理実施部３０３は、ステップＳ２１１７で受け取った置換処理要求に基づいて、処理を実行する。処理実施部３０３は、例えば、リソース「ｖｍ１」のアクション「ｓｔａｒｔ」の内容のコマンドを実行する。
【０２５５】
また、処理実施部３０３は、自身および、同じ管理対象装置３１０が持つ他の処理実施部３０３や、他の管理対象装置３１０が持つ処理要求受付部３０１１に対し、処理要求受付部３０１１や処理要求代行部３０２が行うのと同様の手順で、処理要求を送信することもできる。
【０２５６】
これは、ある行いたい処理が、１つの処理要求やコマンドで完遂できない処理である場合に、幾つかの処理要求やコマンドを連鎖的、再帰的及び入れ子状などに任意に呼び出し、その結果を統合することで、望む処理結果を得られるようにするためである。
【０２５７】
例えば、１つの処理要求やコマンドで完遂できないその処理は、ＮＩＣの一覧取得のコマンドでＮＩＣの識別子を取得してから各ＮＩＣを指定してＮＩＣ毎の詳細情報を得るような場合の処理である。また、１つの処理要求やコマンドで完遂できないその処理は、複数の管理対象装置３１０に跨ってＶＭの一覧を取得する場合の処理である。更に、１つの処理要求やコマンドで完遂できないその処理は、ＶＭの実行管理を行うコンピュート機能に対するコマンドでＶＭの識別子を取得した後、ＶＭの構成管理を行うイメージ機能に対するコマンドでそのＶＭの名称やスペックなどの詳細情報を得るような場合の処理である。
【０２５８】
（２４）ステップＳ２１２４
処理実施部３０３は、処理要求代行部３０２に対し、処理結果を出力する。処理結果には、ステップＳ２１２３における処理実施によって得られた情報、実施内容、応答内容およびステータスなどのうち、一部および全部のいずれかを含む。
【０２５９】
（２５）ステップＳ２１２５
処理要求代行部３０２は、処理要求受付部３０１１に対し、処理結果を出力する。処理要求代行部３０２が出力する処理結果には、基本的に、ステップＳ２１２４における処理結果と同じ内容が含まれる。但し、処理要求代行部３０２は、処理の実施を要求した主体としてのユーザを示す情報をその処理結果に含める場合、管理者権限を持つユーザを特定する情報を本来のユーザを特定する情報に戻す。具体的には、処理要求代行部３０２は、ステップＳ２１１７において置き換えたサブジェクト８１４を、ステップＳ２１１６における処理要求に含まれるサブジェクト８１４に戻した処理結果を生成し、生成したその処理結果を出力する。
【０２６０】
例えば、処理要求代行部３０２は、ユーザ「ａｄｍｉｎ」及びロール「ａｄｍｉｎ」であったサブジェクト８１４を、ユーザ「ｋ−ｓａｔｏｕ」及びロール「ｖｍ１−ａｄｍｉｎ」に戻す。
【０２６１】
（２６）ステップＳ２１２６
処理要求受付部３０１１は、処理要求代行部３０２から受け取った処理結果について、ステップＳ２１１５における処理分配によって処理要求入力を複数の処理要求に分割していた場合は、処理結果の統合処理を実行する。即ち、処理要求受付部３０１１は、ステップＳ２１０１における処理要求入力に対する応答として適切な粒度及び内容となるよう、複数の処理結果を統合し、Ｓ２１０１における処理要求入力に対応する処理結果出力を生成する。
【０２６２】
（２７）ステップＳ２１２７
処理要求受付部３０１１は、ユーザ端末１００に対し、生成したその処理結果出力を送信する。
【０２６３】
処理結果出力は、管理対象装置３１０の持つ処理実施部３０３により実行された処理の実施内容、応答内容、ステータスおよび得られた情報などのうち、一部および全部のいずれかを含む。
【０２６４】
以上説明したように、図２に示す、関連技術に基づく、アクセス制御システム４０２は、個々の管理対象装置３００において分散し独立して管理される、下位管理情報格納部３０５に記憶されている権限情報（アクセス制御のポリシ、例えばｐｏｌｉｃｙ．ｊｓｏｎ）に基づいて、管理対象装置３００の単位や、処理実施部３０３の単位などで、個別にアクセス制御判定を行う。
【０２６５】
従って、関連技術においては、上述した、ユーザとロールとの関係、およびロールと権限との関係の、２つの関係を一元的に管理するアクセス制御を実現することができないという第１の問題点がある。更に、ＯｐｅｎＳｔａｃｋのような関連技術には、以下のような様々な問題点がある。
【０２６６】
例えば、ある処理の実行時には、その処理において行使される権限について、ｐｏｌｉｃｙ．ｊｓｏｎに基づく可否判定が行われる。
【０２６７】
現実の処理は、一般的に、複数の「小さな処理」がひとかたまりとなった「大きな処理」として構成されている。そのため、ある処理の実行が許可されるためには、その処理に固有の権限を許可するだけでは足りず、その処理の中で間接的に呼び出される「小さな処理」すべての行使する権限について、１つ残らず許可されなければならない。
【０２６８】
これらの権限が１つでも許可されない場合、ユーザが本来実行したいその処理（以下、要求処理と呼ぶ）は実行されない。
【０２６９】
このような状況で、その要求処理に固有の権限のみを許可するルールをアクセス制御ルールに記載しても、期待するアクセス制御結果は得られない。つまり、期待するアクセス制御結果を得るためには、「その要求処理以外の「小さな処理」が行使するすべての権限」を許可するルールがアクセス制御ルールに列挙されなければならない。
【０２７０】
あるいは逆に、ある処理のみを拒否するために、その処理の権限を拒否する（あるいは、許可しない）ルールがアクセス制御ルールに記載された場合、その権限が、別の「大きな処理」の一部においても利用されていると、その別の「大きな処理」も拒否されてしまう。従って、期待するアクセス制御結果が得られない。
【０２７１】
つまり、ユーザから見た処理単位に基づく各権限の指定範囲と、ｐｏｌｉｃｙ．ｊｓｏｎに対して実際に設定できる各権限の指定範囲とが一致しない。
【０２７２】
そのため、ユーザが設定したい内容のアクセス制御を設定することが困難であるという第２の問題点がある。また、ユーザが設定したい内容のアクセス制御が設定されたとしても、アクセス制御ルールの記載から実際に許可／拒否される処理を導出し、理解することが困難な、見通しの悪い煩雑なアクセス制御ルールになるという第３の問題点がある。
【０２７３】
また、多数の処理が、ｋｅｙｓｔｏｎｅでのロール付与や、ｐｏｌｉｃｙ．ｊｓｏｎでのアクセス制御ルールによる許可とは別に、ＯＳなどシステムの管理者権限を必要とする内容を含んでいる。
【０２７４】
それらの処理は、ＯｐｅｎＳｔａｃｋにおけるアクセス制御設定の存在とは無関係に、システム管理者権限を持つユーザによる実行を前提として構成されている。
【０２７５】
つまり、ｐｏｌｉｃｙ．ｊｓｏｎで許可された権限であっても、管理者権限を持っていない限り実行できない処理が存在する。
【０２７６】
しかも、前述のように、一般的に１つの処理は多数の「小さな処理」で構成される。従って、それらの「小さな処理」のうち１つでも管理者権限の必要なものを含む処理については、いずれについても、管理者権限を持つユーザでなければ実行できない。
【０２７７】
また、ＯｐｅｎＳｔａｃｋにおける管理者権限は、ａｄｍｉｎという特殊なロールとして、固定的に、あらかじめ設定されている。
【０２７８】
このような場合、ＯｐｅｎＳｔａｃｋの管理者権限の必要な処理について、ｐｏｌｉｃｙ．ｊｓｏｎでａｄｍｉｎロールに対して実行の許可を与えると、ａｄｍｉｎロールを持つユーザであれば、管理者権限の必要なその処理を実行することができる。しかし、同じ処理について、ｐｏｌｉｃｙ．ｊｓｏｎでａｄｍｉｎ以外の任意のロール、例えばロール「Ｒ１」に対して実行の許可を与えたとしても、「Ｒ１」を持つユーザは管理者権限の必要なその処理を実行することができない。
【０２７９】
さらに、ａｄｍｉｎロールに紐づく管理者権限のうちの一部だけを付与することはできない。従って、ユーザに一部の管理者権限のみが付与されるべき場合でも、ａｄｍｉｎロールを割り当てることによってすべての管理者権限を付与することしかできない。即ち、最小権限の原則にも反することとなる。
【０２８０】
このため、ＯｐｅｎＳｔａｃｋにおけるＲＢＡＣ機能は、アクセス制御ルールの記載によって、任意の権限集合を任意のロールに紐つけるような、自由度の高いアクセス制御を行うことができないという第４の問題点がある。
【０２８１】
また、アクセス制御を行うためには、処理を行う機能モジュールのプログラムソースにおいて、アクセス制御の判定を依頼するロジックが記述されなければならない。
【０２８２】
前述のような管理者権限を必要とするような処理は、アクセス制御の依頼機能自体が省略されている場合がある。また、各機能モジュールが「小さな処理」毎に必要な依頼機能を扱っている場合、依頼機能の記述数が膨大になる。更に、処理毎にアクセス制御の依頼機能に必要な情報の形式が異なる場合がある。
【０２８３】
このような状況で、任意の権限集合を任意のロールに紐つけるようなアクセス制御を行おうとすると、アクセス制御の依頼機能を挿入するために、現在のプログラムソースに対して膨大な変更が必要となる。このため、改造の手間及び時間がかかる上、バグも誘発し、改造前のバージョンとの共存性及び互換性や、バージョンアップなどに伴うその改造とは無関係な別の機能改造との共存性及び互換性などが大きく損なわれる。
【０２８４】
アクセス制御判定を依頼される、ｋｅｙｓｔｏｎｅなどの管理モジュールの側も、アクセス制御の判定対象に応じて、異なる機能を持たなければならなくなる。このため、改造の手間及び時間がかかる上、バグも誘発し、改造前のバージョンとの共存性及び互換性や、バージョンアップなどに伴うその改造とは無関係な別の機能改造との、共存性及び換性などが大きく損なわれる。
【０２８５】
つまり、アクセス制御ルールの記載によって、任意の権限集合を任意のロールに紐つけるようなアクセス制御を行おうとすると、改造の手間及び時間がかかる上、バグも誘発し、改造前のバージョンとの共存性及び互換性や、バージョンアップなどに伴うその改造とは無関係な別の機能改造との共存性及び互換性などが低下するという第５の問題点がある。
【０２８６】
また、ある処理に含まれる多数の「小さな処理」が行使する権限や、多数の大きな処理で使用される「小さな処理」が行使する権限を含めた、大量かつ頻繁に行使される権限のすべてについて、アクセス制御判定を行うため、パフォーマンスの低下や、実質的なシステム停止を発生させるという第６の問題点がある。その理由は、１つ１つのアクセス制御判定の処理にかかる負荷は小さくとも、大量かつ頻繁に行われるアクセス制御判定処理そのものや、判定処理のための情報の受け渡しにかかる時間や、ＣＰＵ、メモリおよび通信帯域といったリソース消費などの負荷が、積み重なって無視できないほどの量となるからである。
【０２８７】
上述のような、問題点を有する関連技術に対して、図１に示す本実施形態のアクセス制御システム４０１は、管理装置２１０の管理情報格納部２０２１で一元管理される権限情報８３０に基づいて、組み合わせて利用されるすべての管理対象装置３１０や処理実施部３０３に対し、一括して、分かりやすい粒度で、ポリシ同士の衝突を起こすことなく、アクセス制御を行うことができる。
【０２８８】
即ち、本実施形態は、以下の効果を有する。
【０２８９】
上述した本実施形態における第１の効果は、アクセス制御において、ユーザとロールとの関係、およびロールと権限との関係を一元的に管理するアクセス制御を、実現することを可能にする点である。
【０２９０】
その理由は、以下の構成を含むようにしたからである。第１に、ユーザ確認部２０３が、トークン情報８２０に基づいてユーザを確認する。第２に、権限確認部２０４が、権限情報８３０に基づいて権限を確認する。第３に、処理要求受付部３０１１が、管理者権限を持つユーザの認証（例えば、トークンａ）を取得する。第４に、処理要求代行部３０２が、処理を要求したユーザの情報（例えば、トークンｕ）を、管理者権限を有するユーザの情報（例えば、トークンａ）に置き換えて、処理実施部３０３に処理を要求する。
【０２９１】
上述した本実施形態における第２の効果は、「ロールに紐づく権限集合の管理」まで含めた一連のアクセス制御を、例えばｋｅｙｓｔｏｎｅなどの管理機能を持つモジュール（例えば、管理装置２１０）から一元管理することが可能となる。
【０２９２】
その理由は、以下の構成を含むようにしたからである。第１に、管理装置２１０の管理情報格納部２０２１が、任意の粒度のシステム操作に対する権限と、ユーザが認証されていることを示すトークン８２２との関係を示す情報（トークン情報８２０および権限情報８３０）を記憶する。第２に、ユーザ認証部２０１が、ユーザを認証し、トークン情報８２０を更新する。第３に、ユーザ確認部２０３が、トークン情報８２０に基づいてユーザを確認する。第４に、権限確認部２０４が、権限情報８３０に基づいて権限を確認する。
【０２９３】
上述した本実施形態における第３の効果は、ユーザから見た際の処理の単位やその実行に必要な権限の範囲と、例えばｋｅｙｓｔｏｎｅなどの管理機能を持つモジュールで扱う処理の単位や権限の範囲とを一致させることが可能になる点である。さらに、ユーザが設定したい内容のアクセス制御を、実際に許可／拒否される処理の導出し理解することが容易な、見通しの良い簡単なルールとして設定することが可能になる点である。
【０２９４】
その理由は、第２の効果の理由と同じである。
【０２９５】
上述した本実施形態における第４の効果は、関連技術においてＯｐｅｎＳｔａｃｋによるアクセス制御設定の内容とは別にシステム管理者権限を持っていない限り実行できなかった処理であっても、アクセス制御設定の通りにアクセス制御を行うことが可能となる点である。
【０２９６】
その理由は、第２の効果の理由と同じである。
【０２９７】
上述した本実施形態における第５の効果は、関連技術においてアクセス制御設定の内容とは無関係にＯｐｅｎＳｔａｃｋの管理者権限のロールを持っていない限り実行できない処理や、１つの権限集合として分けられない管理者権限群のうちの何れかを必要とする処理などを含む、すべての処理に対して、任意のロールに紐づく任意の権限集合を定義することができ、自由度の高いアクセス制御を行うことが可能となる点である。
【０２９８】
その理由は、第２の効果の理由と同じである。
【０２９９】
上述した本実施形態における第６の効果は、例えばｋｅｙｓｔｏｎｅなどの管理機能を持つモジュールによる一元管理を行うにあたって、必ずしもすべての管理対象装置を参加させる必要はなく、本実施形態の管理対象装置３１０と、本実施形態に未対応の、関連技術の管理対象装置３００と、が混在している環境も扱うことができる点である。
【０３００】
その理由は、管理対象装置３１０が下位権限確認部３０４および下位管理情報格納部３０５を含むようにしたからである。
【０３０１】
この第６の効果に伴って、単純に混在環境を扱うこと、本実施形態の技術による実現方式の適用を段階的に拡大すること、逆に本実施形態の技術による実現方式の適用を中止して関連技術による実現方式に戻すことが可能になる。また、クラウドコンピューティング環境の利用者毎に異なるサービス要求内容に応じて適用する技術を臨機応変に変更することが可能になる。さらに、本実施形態の実現に際して、本実施形態のプロトコルに含まれる、関連技術で用いているプロトコルには、手を加えていない。このため、関連技術におけるバージョンアップ時の内容は、関連技術に適用するだけでなく、本実施形態にその内容を統合することが容易に可能となる。また、関連技術におけるバージョンアップ時に、管理対象装置３００については本実施形態に係る技術へのバージョンアップ内容の統合し検証することを待たずに、先行してバージョンアップを行うことが容易に可能となる。
【０３０２】
上述した本実施形態における第７の効果は、例えばｋｅｙｓｔｏｎｅなどの管理機能を持つモジュールによる一元管理をすべての管理対象装置に適用する場合、即ち情報処理システムにおいて管理装置は必ず管理装置２１０であり、管理対象装置は必ず管理対象装置３１０である場合には、アクセス制御の負荷をさらに軽減することが可能になる点である。
【０３０３】
その理由は、第１の効果の理由と同様である。具体的には、各管理対象装置３１０において下位権限確認部３０４によるアクセス制御判定を省略することが可能だからである。従って、関連技術においては、大量かつ頻繁に行使される権限のすべてについてアクセス制御判定を行う負荷により、パフォーマンス低下や実質的なシステム停止を発生させるようなアクセス制御の内容であっても、本実施形態においては、ユーザからみた処理の単位でアクセス制御判定を行うことによって、少数のアクセス制御判定のみを行い、大きな負荷をかけずにアクセス制御を行うことが可能だからである。
【０３０４】
＜＜＜第２の実施形態＞＞＞
次に、本発明の第２の実施形態について図面を参照して詳細に説明する。以下、本実施形態の説明が不明確にならない範囲で、前述の説明と重複する内容については説明を省略する。
【０３０５】
図１３は、本実施形態に係る情報処理システム４００の構成を示すブロック図である。
【０３０６】
図１３に示すように、本実施形態における情報処理システム４００は、管理情報格納部２００１、確認部２００４および処理要求部３００２を含む。
【０３０７】
＝＝＝管理情報格納部２００１＝＝＝
管理情報格納部２００１は、図１４に示すような管理情報８４０を記憶する。図１４に示すように、管理情報８４０は、トークン８４２、アクション８４３およびリソース８４４を含む管理情報レコード８４１よりなる。アクション８４３およびリソース８４４の組は、任意の粒度のシステム操作を特定する情報である。換言すると、管理情報レコード８４１は、任意の粒度のシステム操作に対する権限とトークン８４２との関係を示す情報である。
【０３０８】
＝＝＝確認部２００４＝＝＝
確認部２００４は、処理要求部３００２、確認要求を受信する。
【０３０９】
次に、確認部２００４は、管理情報格納部２００１に記憶されている管理情報８４０に基づいて、受信したその確認要求に含まれるアクション、リソースおよびトークン８４２の組と一致する管理情報レコード８４１が存在するか否かの判定を実行する。
【０３１０】
次に、確認部２００４は、その判定の結果を含む確認結果を、処理要求部３００２に送信する。
【０３１１】
換言すると、確認部２００４は、その確認要求に含まれるトークン８４２に対応するユーザが、同じくその確認要求に含まれるシステム操作（アクションとリソースとの組）への権限を有していることを判定する。次に、確認部２００４は、そのトークン８４２に対応するユーザが、そのシステム操作への権限を有していることを示す確認結果を送信する。
【０３１２】
＝＝＝処理要求部３００２＝＝＝
処理要求部３００２は、例えば図示しないユーザ端末から、システム操作要求を受信する。システム操作要求は、有効なトークン８４２（ユーザが認証されていることを示すトークン８４２）と、コマンドとを含む。ここで、コマンドは、システム操作を特定する、アクションとリソースとの組である。
【０３１３】
次に、処理要求部３００２は、受信したそのシステム操作要求に基づいて、確認部２００４に確認要求を送信し、その確認要求に対応する確認結果を受信する。
【０３１４】
次に、処理要求部３００２は、受信したその確認結果に基づいて、その受信したシステム操作要求に含まれるトークン８４２を、そのシステム操作（そのコマンド）に対する管理者権限を有するユーザに対応するトークン８４２に置き換えて処理要求を生成する。尚、処理要求部３００２は、その管理者権限を有するユーザに対応するトークン８４２を、図示しないユーザ認証手段から、予め取得するようにしてよい。
【０３１５】
次に、処理要求部３００２は、生成したその処理要求を出力する。例えば、処理要求部３００２は、その処理要求部３００２自身を含む「図示しない情報処理装置の処理実施部」に、その処理要求を出力する。
【０３１６】
図１３に示す、情報処理システム４００の各構成要素は、図３に示すコンピュータによって実現されてよい。
【０３１７】
この場合、ＣＰＵ７０１は、その読み込んだプログラムに従って、またその読み込んだデータに基づいて、図１３示す管理情報格納部２００１、確認部２００４および処理要求部３００２として各種の処理を実行する。
【０３１８】
記憶部７０２は、図１３に示す管理情報格納部２００１の一部に含まれてよい。記憶装置７０３は、図１３に示す管理情報格納部２００１の一部に含まれてよい。
【０３１９】
通信部７０６は、確認部２００４および処理要求部３００２の一部として含まれる。
【０３２０】
上述した本実施形態における効果は、第１の実施形態の効果と同じく、アクセス制御において、ユーザとロールとの関係、およびロールと権限との関係を一元的に管理するアクセス制御を、実現することを可能にする点である。
【０３２１】
その理由は、確認部２００４が、管理情報８４０に基づいて権限を確認し、処理要求部３００２が確認された権限に基づいて、システム操作要求に含まれるトークン８４２を、そのシステム操作に対する管理者権限を有するユーザに対応するトークン８４２に置き換えた処理要求を出力するようにしたからである。
【０３２２】
以上の各実施形態で説明した各構成要素は、必ずしも個々に独立した存在である必要はない。例えば、各構成要素は、複数の構成要素が１個のモジュールとして実現されてよい。また、各構成要素は、１つの構成要素が複数のモジュールで実現されてもよい。また、各構成要素は、ある構成要素が他の構成要素の一部であるような構成であってよい。また、各構成要素は、ある構成要素の一部と他の構成要素の一部とが重複するような構成であってもよい。
【０３２３】
以上説明した各実施形態における各構成要素および各構成要素を実現するモジュールは、必要に応じ、可能であれば、ハードウェア的に実現されてよい。また、各構成要素および各構成要素を実現するモジュールは、コンピュータおよびプログラムで実現されてよい。また、各構成要素および各構成要素を実現するモジュールは、ハードウェア的なモジュールとコンピュータおよびプログラムとの混在により実現されてもよい。
【０３２４】
そのプログラムは、例えば、磁気ディスクや半導体メモリなど、不揮発性のコンピュータ可読記録媒体に記録されて提供され、コンピュータの立ち上げ時などにコンピュータに読み取られる。この読み取られたプログラムは、そのコンピュータの動作を制御することにより、そのコンピュータを前述した各実施形態における構成要素として機能させる。
【０３２５】
また、以上説明した各実施形態では、複数の動作をシーケンス図の形式で順番に記載してあるが、その記載の順番は複数の動作を実行する順番を限定するものではない。このため、各実施形態を実施するときには、その複数の動作の順番は内容的に支障のない範囲で変更することができる。
【０３２６】
更に、以上説明した各実施形態では、複数の動作は個々に相違するタイミングで実行されることに限定されない。例えば、ある動作の実行中に他の動作が発生したり、ある動作と他の動作との実行タイミングが部分的に乃至全部において重複していたりしていてもよい。
【０３２７】
更に、以上説明した各実施形態では、ある動作が他の動作の契機になるように記載しているが、その記載はある動作と他の動作との全ての関係を限定するものではない。このため、各実施形態を実施するときには、その複数の動作の関係は内容的に支障のない範囲で変更することができる。また各構成要素の各動作の具体的な記載は、各構成要素の各動作を限定するものではない。このため、各構成要素の具体的な各動作は、各実施形態を実施する上で機能的、性能的、その他の特性に対して支障をきたさない範囲内で変更されて良い。
【０３２８】
上記の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。
【０３２９】
（付記１）
任意の粒度のシステム操作に対する権限と、ユーザが認証されていることを示すトークンとの関係を示す情報を記憶する管理情報格納手段と、
前記システム操作を特定する情報と前記トークンとを含む確認要求を受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、確認結果を送信する確認手段と、
前記システム操作を特定する情報、および前記ユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記確認要求を前記確認手段に送信し、前記確認要求に対応する前記確認結果を受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力する処理要求手段と、を含む
情報処理システム。
【０３３０】
（付記２）
ユーザの認証に必要な情報を含む認証要求を受信した場合に、前記ユーザが認証されていることを示すトークンを生成し、生成された前記トークンを送信し、前記生成されたトークンと前記ユーザとの関係を前記管理情報格納手段に出力するユーザ認証手段を更に含み、
前記管理情報格納手段は、
ユーザと任意の粒度のシステム操作に対する権限との関係を記憶する権限記憶手段と、
前記ユーザと前記トークンとの関係を記憶するトークン記憶手段と、を含み、
前記確認手段は、
前記トークンを含むユーザ確認要求を受信した場合に、前記トークン記憶手段に記憶されている情報に基づいて、前記ユーザ確認要求に含まれる前記トークンに対応するユーザを特定する情報を含むユーザ確認結果を送信するユーザ確認手段と、
前記ユーザに関する権限確認要求を受信した場合に、前記権限記憶手段に記憶されている情報に基づいて、前記権限確認要求に含まれるシステム操作とユーザとの関係の有無を判定し、権限確認結果を送信する権限確認手段と、を含み、
前記処理要求手段は、
前記システム操作を特定する情報、および前記ユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、前記トークンを含むユーザ確認要求を前記ユーザ確認手段に送信し、前記ユーザ確認要求に対応するユーザ確認結果を受信し、受信した前記ユーザ確認結果に基づいて前記権限確認要求を権限確認手段に送信し、前記権限確認要求に対応する前記権限確認結果を受信し、受信した前記権限確認結果に基づいて、前記第１のシステム操作要求と前記トークンと前記トークンに対応するユーザを特定する情報とを含む第１の処理要求を生成し、生成したその処理要求を出力する、処理要求受付手段と、
前記システム操作に対する管理者権限を有するユーザを前記ユーザとする前記認証要求を前記ユーザ認証手段に送信し、前記認証要求に対応する前記認証結果を受信し、前記権限確認結果に基づいて、前記第１の処理要求に含まれる前記ユーザを特定する情報を、前記管理者権限を有するユーザを特定する情報に置き換え、前記第１処理要求に含まれるトークンを、受信した前記認証結果に含まれるトークンに置き換えた第２の処理要求を生成し、生成した前記第２の処理要求を出力する処理要求代行手段と、を含む
付記１記載の情報処理システム。
【０３３１】
（付記３）
管理装置と管理対象装置とを含み、
前記管理装置は、前記管理情報格納手段と前記ユーザ認証手段と前記ユーザ確認手段と前記権限確認手段とを含み、
前記管理情報格納手段は、前記ユーザを特定する情報を記憶するユーザ情報記憶手段を更に含み、
前記管理対象装置は前記処理要求受付手段と前記処理要求代行手段と処理実施手段とを含み、
前記処理要求代行手段は、前記第２の処理要求を前記処理実施手段に出力し、
前記処理実施手段は、前記第２の処理要求に含まれるシステム操作を実行する
付記２記載の情報処理システム。
【０３３２】
（付記４）
前記管理対象装置は、
前記ユーザと前記管理対象装置におけるシステム操作に対する権限との関係を記憶する下位管理情報格納手段と、
前記ユーザに関する下位権限確認要求に対応して、前記下位管理情報格納手段に記憶される情報に基づいて、前記下位権限確認要求に含まれるシステム操作とユーザとの関係の有無を判定し、下位権限確認結果を前記処理実施手段に出力する下位権限確認手段と、をさらに含み、
前記処理要求代行手段は、前記権限確認結果に基づいて、前記第１の処理要求および前記第２の処理要求のいずれかを前記処理実施手段に出力し、
前記処理実施手段は、前記第１の処理要求に基づいて前記下位権限確認要求を前記下位権限確認手段に出力し、前記下位権限確認要求に対応する前記下位権限確認結果に基づいて、前記第２の処理要求を実行する
ことを特徴とする付記３記載の情報処理システム。
【０３３３】
（付記５）  前記管理対象装置は、前記管理装置が存在するか否かを判定する手段を更に含む
ことを特徴とする付記３または４記載の情報処理システム。
【０３３４】
（付記６）  前記任意の粒度のシステム操作に対する権限を入力する手段を更に含む
ことを特徴とする付記１乃至５のいずれかに１項に記載の情報処理システム。
【０３３５】
（付記７）
プロセッサと、
プロセッサが確認手段および処理要求手段のいずれかとして動作するための、プロセッサによって実行される命令を保持する記憶部と、
任意の粒度のシステム操作に対する権限と、ユーザが認証されていることを示すトークンとの関係を示す情報を記憶する管理情報格納手段とを含み、
前記確認手段は、前記システム操作を特定する情報と前記トークンとを含む確認要求を受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、確認結果を送信し、
前記処理要求手段は、前記システム操作を特定する情報、および前記ユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記確認要求を前記確認手段に送信し、前記確認要求に対応する前記確認結果を受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力する
情報処理システム。
【０３３６】
（付記８）
任意の粒度のシステム操作に対する権限と、ユーザが認証されていることを示すトークンとの関係を示す情報を記憶する管理情報格納手段と、
前記システム操作を特定する情報と前記トークンとを含む確認要求を受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、確認結果を管理対象装置に送信する確認手段と、を含み、
前記管理対象装置は、前記システム操作を特定する情報、および前記ユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記確認要求を前記確認手段に送信し、前記確認要求に対応する前記確認結果を受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力する
情報処理装置。
【０３３７】
（付記９）
プロセッサと、
プロセッサが確認手段として動作するための、プロセッサによって実行される命令を保持する記憶部と、
任意の粒度のシステム操作に対する権限と、ユーザが認証されていることを示すトークンとの関係を示す情報を記憶する管理情報格納手段とを含み、
前記確認手段は、前記システム操作を特定する情報と前記トークンとを含む確認要求を受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、確認結果を管理対象装置に送信し、
前記管理対象装置は、前記システム操作を特定する情報、および前記ユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記確認要求を前記確認手段に送信し、前記確認要求に対応する前記確認結果を受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力する
情報処理装置。
【０３３８】
（付記１０）
任意の粒度のシステム操作を特定する情報、およびユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記システム操作を特定する情報と前記トークンとを含む確認要求を管理装置に送信し、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、前記確認要求に対応する確認結果を前記管理装置から受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力する処理要求手段と、を含み
前記処理要求手段は、前記システム操作に対する権限と前記トークンとの関係を示す情報を記憶する管理情報格納手段と、前記確認要求を受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて前記確認結果を送信する確認手段と、を含む情報処理装置に前記確認要求を送信し、前記情報処理装置から前記確認結果を受信する
情報処理装置。
【０３３９】
（付記１１）
プロセッサと、
プロセッサが処理要求手段として動作するための、プロセッサによって実行される命令を保持する記憶部とを含み、
前記処理要求手段は、任意の粒度のシステム操作を特定する情報、およびユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記システム操作を特定する情報と前記トークンとを含む確認要求を管理装置に送信し、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、前記確認要求に対応する確認結果を前記管理装置から受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力し
前記管理装置は、前記システム操作に対する権限と前記トークンとの関係を示す情報を記憶する管理情報格納手段と、前記確認要求を受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて前記確認結果を送信する確認手段と、を含む
情報処理装置。
【０３４０】
（付記１２）
任意の粒度のシステム操作に対する権限と、ユーザが認証されていることを示すトークンとの関係を示す情報を記憶する管理情報格納手段を備える第１のコンピュータが、
前記システム操作を特定する情報と前記トークンとを含む確認要求を第２のコンピュータから受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、確認結果を前記第２のコンピュータに送信し、
前記第２のコンピュータが、
前記システム操作を特定する情報、および前記ユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記確認要求を前記第１のコンピュータに送信し、前記確認要求に対応する前記確認結果を前記第１のコンピュータから受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力する
アクセス制御方法。
【０３４１】
（付記１３）
任意の粒度のシステム操作に対する権限と、ユーザが認証されていることを示すトークンとの関係を示す情報を記憶する管理情報格納手段と、
前記システム操作を特定する情報と前記トークンとを含む確認要求を受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、確認結果を送信する確認手段と、を含む情報処理装置に接続された
コンピュータが、
前記システム操作を特定する情報、および前記ユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記確認要求を前記情報処理装置に送信し、前記確認要求に対応する前記確認結果を前記情報処理装置から受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力する
アクセス制御方法。
【０３４２】
（付記１４）
任意の粒度のシステム操作を特定する情報、およびユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記システム操作を特定する情報と前記トークンとを含む確認要求を送信し、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、前記確認要求に対応する確認結果を受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力する処理要求手段、を含む情報処理装置に接続され、
前記任意の粒度のシステム操作に対する権限と、前記ユーザが認証されていることを示すトークンとの関係を示す情報を記憶する管理情報格納手段を備える
コンピュータが、
前記システム操作を特定する情報と前記トークンとを含む確認要求を前記情報処理装置から受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、確認結果を前記情報処理装置に送信する、
アクセス制御方法。
【０３４３】
（付記１５）
任意の粒度のシステム操作に対する権限と、ユーザが認証されていることを示すトークンとの関係を示す情報を記憶する管理情報格納手段と、
前記システム操作を特定する情報と前記トークンとを含む確認要求を受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、確認結果を送信する確認手段と、を含む情報処理装置に接続された
コンピュータに、
前記システム操作を特定する情報、および前記ユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記確認要求を前記情報処理装置に送信し、前記確認要求に対応する前記確認結果を前記情報処理装置から受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力する処理を実行させる
プログラム。
【０３４４】
（付記１６）
任意の粒度のシステム操作を特定する情報、およびユーザが認証されていることを示すトークンを含むシステム操作要求を受信した場合に、受信した前記システム操作要求に基づいて前記システム操作を特定する情報と前記トークンとを含む確認要求を送信し、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、前記確認要求に対応する確認結果を受信し、前記確認結果に基づいて、前記システム操作要求に含まれるトークンを、前記システム操作に対する管理者権限を有するユーザに対応するトークンに置き換えた処理要求を生成し、生成した前記処理要求を出力する処理要求手段と、を含む情報処理装置に接続され、
前記任意の粒度のシステム操作に対する権限と、前記ユーザが認証されていることを示すトークンとの関係を示す情報を記憶する管理情報格納手段を含む
コンピュータに、
前記システム操作を特定する情報と前記トークンとを含む確認要求を前記情報処理装置から受信した場合に、前記管理情報格納手段に記憶されている情報に基づいて、前記確認要求に含まれる前記トークンに対応するユーザが前記確認要求に含まれるシステム操作への権限を有していることを示す、確認結果を前記情報処理装置に送信する処理を実行させる
プログラム。
【０３４５】
以上、各実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解しえるさまざまな変更をすることができる。
【符号の説明】
【０３４６】
１００    ユーザ端末
２００    管理装置
２０１    ユーザ認証部
２００１    管理情報格納部
２０２    管理情報格納部
２０２１    管理情報格納部
２０３    ユーザ確認部
２０４    権限確認部
２００４    確認部
２１０    管理装置
３００    管理対象装置
３０１    処理要求受付部
３０１１    処理要求受付部
３０２    処理要求代行部
３００２    処理要求部
３０３    処理実施部
３０４    下位権限確認部
３０５    下位管理情報格納部
３１０    管理対象装置
４０１    アクセス制御システム
４０２    アクセス制御システム
７００    コンピュータ
７０１    ＣＰＵ
７０２    記憶部
７０３    記憶装置
７０４    入力部
７０５    出力部
７０６    通信部
７０７    記録媒体
８１０    ユーザ情報
８１１    ユーザ情報レコード
８１２    ユーザＩＤ
８１３    パスワード
８１４    サブジェクト
８２０    トークン情報
８２１    トークン情報レコード
８２２    トークン
８２３    有効期限
８２４    ユーザＩＤ
８３０    権限情報
８３１    権限情報レコード
８３２    サブジェクト
８３３    アクション
８３４    リソース
【図１】
2015121962.tif 000003
【図２】
2015121962.tif 000004
【図３】
2015121962.tif 000005
【図４】
2015121962.tif 000006
【図５】
2015121962.tif 000007
【図６】
2015121962.tif 000008
【図７】
2015121962.tif 000009
【図８】
2015121962.tif 000010
【図９】
2015121962.tif 000011
【図１０】
2015121962.tif 000012
【図１１】
2015121962.tif 000013
【図１２】
2015121962.tif 000014
【図１３】
2015121962.tif 000015
【図１４】
2015121962.tif 000016