(57)【要約】【課題】  ＳａａＳアプリケーションなどの、マルチテナント型のアプリケーションにおいて、アクセス権限を付与する単位であるロールの分類と、各々のロール付与される権限を、テナント毎に柔軟に定義できるようにする。【解決手段】  情報資源に対する操作権限の情報を定義したアクセス権限定義情報と、テナント毎のロールの分類とロールに付与する権限を定義したテナントロール定義情報、またこのロールのユーザへの割り当てを定義したユーザロール定義情報を記憶しておき、これらの情報を組み合わせて結びつけることで、アプリケーションは単一のプログラムを用いて情報資源に対するユーザのアクセス制御を実現する。【選択図】  図３
2011128994.tif 000002
【特許請求の範囲】
【請求項１】
マルチテナント型のアプリケーションが提供する機能のうち、ユーザの権限に基づき前記ユーザが利用できる機能を決定する情報処理装置であって、
複数の前記テナントそれぞれについて、ロールとそのロールを有する権限との関係を示すテナント−ロール定義情報、前記テナント毎に、ユーザと当該ユーザに割り当てられたロールの関係を示すユーザ−ロール定義情報、及び複数の前記マルチテナント型のアプリケーションそれぞれについて、前記権限とその権限を有するユーザが実行できる当該アプリケーションの機能との関係を示すアクセス権限定義情報を記憶した記憶手段と、
ユーザが使用する端末より送信されるユーザ認証に用いる認証情報に従い、前記端末を使用するユーザを認証する認証手段と、
前記認証手段で認証されたユーザの権限を、前記記憶手段に記憶されているユーザ−ロール定義情報及びテナント−ロール定義情報に従って決定する第１の決定手段と、
前記端末よりアプリケーションの実行要求を受け付ける受付手段と、
前記受付手段が前記端末より実行要求を受け付けたアプリケーションのアクセス権限定義情報と、前記第１の決定手段で決定された当該ユーザの権限に従って、前記実行要求を受け付けたアプリケーションにおいて前記ユーザが利用できる機能を決定する第２の決定手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記第１の決定手段は、前記認証手段で認証されたユーザが、当該ユーザが属するテナントにおいて有するロールを前記ユーザ−ロール定義情報より全て取得し、取得した前記ロールがテナントにおいて有するユーザの権限を前記テナント−ロール定義情報から全て取得し、前記取得した全てのユーザの権限を前記ユーザの権限として決定する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記テナント−ロール定義情報、前記ユーザ−ロール定義情報及びアクセス権限定義情報の入力画面を介して入力された入力情報を取得する取得手段をさらに備え、
前記記憶手段は、前記取得手段で取得した入力情報に従い、前記テナント−ロール定義情報、前記ユーザ−ロール定義情報及びアクセス権限定義情報を記憶する
ことを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記第２の決定手段より決定したユーザが利用できるアプリケーションの機能に応じて、前記受付手段で実行要求を受け付けた前記アプリケーションにより提供される画面に含まれるコントロールの使用の可否を制御する制御手段
をさらに備えることを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
複数の前記テナントそれぞれについて、ロールとそのロールを有する権限との関係を示すテナント−ロール定義情報、前記テナント毎に、ユーザと当該ユーザに割り当てられたロールの関係を示すユーザ−ロール定義情報、及び複数の前記マルチテナント型アプリケーションそれぞれについて、前記権限とその権限を有するユーザが実行できる当該アプリケーションの機能との関係を示すアクセス権限定義情報を記憶した記憶手段を備える情報処理装置によって行われる、マルチテナント型のアプリケーションが提供する機能のうち、ユーザの権限に基づき前記ユーザが利用できる機能を決定する情報処理方法であって、
ユーザが使用する端末より送信されるユーザ認証に用いる認証情報に従い、前記端末を使用するユーザを認証する認証工程と、
前記認証工程で認証されたユーザの権限を、前記記憶手段に記憶されているユーザ−ロール定義情報及びテナント−ロール定義情報に従って決定する第１の決定工程と、
前記端末よりアプリケーションの実行要求を受け付ける受付工程と、
前記受付工程で前記端末より実行要求を受け付けたアプリケーションのアクセス権限定義情報と、前記第１の決定工程で決定した当該ユーザの権限に従って、前記実行要求を受け付けたアプリケーションにおいて前記ユーザが利用できる機能を決定する第２の決定工程と、
を備えることを特徴とする情報処理方法。
【請求項６】
複数の前記テナントそれぞれについて、ロールとそのロールを有する権限との関係を示すテナント−ロール定義情報、前記テナント毎に、ユーザと当該ユーザに割り当てられたロールの関係を示すユーザ−ロール定義情報、及び複数の前記マルチテナント型アプリケーションそれぞれについて、前記権限とその権限を有するユーザが実行できる当該アプリケーションの機能との関係を示すアクセス権限定義情報を記憶した記憶手段を備えるコンピュータを、マルチテナント型のアプリケーションが提供する機能のうち、ユーザの権限に基づき前記ユーザが利用できる機能を決定する情報処理装置として機能させるためのコンピュータプログラムであって、
ユーザが使用する端末より送信されるユーザ認証に用いる認証情報に従い、前記端末を使用するユーザを認証する認証手段と、
前記認証手段で認証されたユーザの権限を、前記記憶手段に記憶されているユーザ−ロール定義情報及びテナント−ロール定義情報に従って決定する第１の決定手段と、
前記端末よりアプリケーションの実行要求を受け付ける受付手段と、
前記受付手段で前記端末より実行要求を受け付けたアプリケーションのアクセス権限定義情報と、前記第１の決定工程で決定した当該ユーザの権限に従って、前記実行要求を受け付けたアプリケーションにおいて前記ユーザが利用できる機能を決定する第２の決定手段
として機能させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報資源に対するアクセス制御に関するものであって、特にマルチテナント型のシステムにおける、テナント毎に管理されるロール（役割）の定義と、ユーザに割り当てられたロールに基づく、情報資源に対するアクセス制御に関するものである。
【背景技術】
【０００２】
ユーザロールに基づく情報資源に対するアクセス制御を行う場合には、情報資源に対してのアクセス権限をロールに付与しておき、ユーザにロールを割り当てる。ユーザに割り当てられたロールに特定の操作に対する権限があれば、ユーザはそのアクションが許可される。特許文献１には、上記のようなユーザロールによるアクセス制御の方法が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開2000-207363号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ＳａａＳアプリケーションなど、マルチテナント型のシステムでは、同一のアプリケーションプログラムが複数のテナント（利用企業）に提供される。しかしながら、企業規模・業態が異なるテナント企業において、ユーザの役割を表すロールの望ましい分類は異なるものであり、また同一のロールに付与される権限も異なる可能性がある。このためマルチテナント型のアプリケーションにおいては、アクセス権限を付与する単位であるロールの分類と、各々のロール付与される権限（以下  アクセス権限を付与する単位であるロールの分類と、各々のロール付与される権限を「ロール定義情報」と表記する）を、テナント毎に柔軟に定義できるようにした上で、アプリケーションが単一のプログラム制御によって、アクセス制御を実現できるように必要がある。
【０００５】
しかしながら、特許文献１に記載のユーザ・アクセス制御装置においては、単一のロール定義情報による情報資源に対するアクセス制御は可能であるが、テナント毎の複数のロール定義情報に基づく、情報資源に対するアクセス制御を実現することはできない。特に、複数のロール定義情報を記憶する手段と、テナント毎に定義されたロールの権限を、単一のプログラムによって情報資源に対するアクセス権限制御を実現するためのデータに変換する手段に欠けている。
【０００６】
本発明は上記の課題を解決するためになされたものであり、アクセス権限を付与する単位であるロールの分類と、各々のロール付与される権限をテナント毎に設定可能な、アプリケーションが情報資源に対するユーザのアクセス制御を、単一のプログラム制御で実現できるようにするための、アクセス制御装置及びその制御方法、アクセス制御システム、プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記した目的を達成するために、本発明の情報処理装置は以下の構成を備える。即ち、    マルチテナント型のアプリケーションが提供する機能のうち、ユーザの権限に基づき前記ユーザが利用できる機能を決定する情報処理装置であって、複数の前記テナントそれぞれについて、ロールとそのロールを有する権限との関係を示すテナント−ロール定義情報、前記テナント毎に、ユーザと当該ユーザに割り当てられたロールの関係を示すユーザ−ロール定義情報、及び複数の前記マルチテナント型のアプリケーションそれぞれについて、前記権限とその権限を有するユーザが実行できる当該アプリケーションの機能との関係を示すアクセス権限定義情報を記憶した記憶手段と、ユーザが使用する端末より送信されるユーザ認証に用いる認証情報に従い、前記端末を使用するユーザを認証する認証手段と、前記認証手段で認証されたユーザの権限を、前記記憶手段に記憶されているユーザ−ロール定義情報及びテナント−ロール定義情報に従って決定する第１の決定手段と、前記端末よりアプリケーションの実行要求を受け付ける受付手段と、前記受付手段が前記端末より実行要求を受け付けたアプリケーションのアクセス権限定義情報と、前記第１の決定手段で決定された当該ユーザの権限に従って、前記実行要求を受け付けたアプリケーションにおいて前記ユーザが利用できる機能を決定する第２の決定手段と、を備えることを特徴とする。
【０００８】
また、上記した目的を達成するために、本発明の情報処理詳報は以下の構成を備える。即ち、  複数の前記テナントそれぞれについて、ロールとそのロールを有する権限との関係を示すテナント−ロール定義情報、前記テナント毎に、ユーザと当該ユーザに割り当てられたロールの関係を示すユーザ−ロール定義情報、及び複数の前記マルチテナント型アプリケーションそれぞれについて、前記権限とその権限を有するユーザが実行できる当該アプリケーションの機能との関係を示すアクセス権限定義情報を記憶した記憶手段を備える情報処理装置によって行われる、マルチテナント型のアプリケーションが提供する機能のうち、ユーザの権限に基づき前記ユーザが利用できる機能を決定する情報処理方法であって、ユーザが使用する端末より送信されるユーザ認証に用いる認証情報に従い、前記端末を使用するユーザを認証する認証工程と、前記認証工程で認証されたユーザの権限を、前記記憶手段に記憶されているユーザ−ロール定義情報及びテナント−ロール定義情報に従って決定する第１の決定工程と、前記端末よりアプリケーションの実行要求を受け付ける受付工程と、前記受付工程で前記端末より実行要求を受け付けたアプリケーションのアクセス権限定義情報と、前記第１の決定工程で決定した当該ユーザの権限に従って、前記実行要求を受け付けたアプリケーションにおいて前記ユーザが利用できる機能を決定する第２の決定工程と、を備えることを特徴とする。
【０００９】
また、上記した目的を達成するために、本発明のコンピュータプログラムは以下の構成を備える。即ち、  複数の前記テナントそれぞれについて、ロールとそのロールを有する権限との関係を示すテナント−ロール定義情報、前記テナント毎に、ユーザと当該ユーザに割り当てられたロールの関係を示すユーザ−ロール定義情報、及び複数の前記マルチテナント型アプリケーションそれぞれについて、前記権限とその権限を有するユーザが実行できる当該アプリケーションの機能との関係を示すアクセス権限定義情報を記憶した記憶手段を備えるコンピュータを、マルチテナント型のアプリケーションが提供する機能のうち、ユーザの権限に基づき前記ユーザが利用できる機能を決定する情報処理装置として機能させるためのコンピュータプログラムであって、ユーザが使用する端末より送信されるユーザ認証に用いる認証情報に従い、前記端末を使用するユーザを認証する認証手段と、
前記認証手段で認証されたユーザの権限を、前記記憶手段に記憶されているユーザ−ロール定義情報及びテナント−ロール定義情報に従って決定する第１の決定手段と、前記端末よりアプリケーションの実行要求を受け付ける受付手段と、前記受付手段で前記端末より実行要求を受け付けたアプリケーションのアクセス権限定義情報と、前記第１の決定工程で決定した当該ユーザの権限に従って、前記実行要求を受け付けたアプリケーションにおいて前記ユーザが利用できる機能を決定する第２の決定手段、として機能させることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、情報資源に対するアクセス権限を付与する単位であるロールの分類と各々のロールに付与される権限を、テナント毎に柔軟に定義しながら、アプリケーションが情報資源に対するユーザのアクセス制御を、単一のプログラム制御で実施するための、情報処理装置及び情報処理方法、及びコンピュータプログラムを提供できる。特に、テナント毎のロール定義情報と、テナント内のユーザが割り当てられたロールを定義したユーザロール定義情報を記憶し、これらの情報を元に、情報資源に対するアクセス権限のデータに変換するので、単一のシステムで柔軟なアクセス権限の制御を実現する効果を奏する。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態におけるシステムの構成を示す図である
【図２】本発明の実施形態における各端末及びサーバのハードウェア構成を示す図である。
【図３】本発明の実施形態における各端末及びサーバのモジュール構成を示す図である。
【図４】図３のアクセス制限定義情報の構成の一例を示す図である。
【図５】図３のユーザロール定義情報の構成の一例を示す図である。
【図６】図３のテナントロール定義情報の構成の一例を示す図である。
【図７】アクセス権限定義情報の設定に用いられる管理画面の一例を示す図である。
【図８】ユーザロール定義情報の設定に用いられる管理画面の一例を示す図である。
【図９】テナントロール定義情報の設定に用いられる管理画面の一例を示す図である。
【図１０】サービスアプリケーション３０１のメニュー画面の一例を示す図である。
【図１１】サービスアプリケーション３０１の業務画面の一例を示す図である。
【図１２】サービスアプリケーション３０１の業務画面の一例を示す図である。
【図１３】アクセス制御部３０２が情報資源に対するユーザのアクセス権限を導出する処理の一例を示すフローチャートである。
【図１４】アクセス権限定義情報を設定する処理の一例を示すフローチャートである。
【図１５】テナントロール権限定義情報を設定する処理の一例を示すフローチャートである。
【図１６】ユーザロール権限定義情報を設定する処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、図面を参照して、本発明の実施形態を詳細に説明する。図１は、本発明の実施形態におけるシステムの構成を示す図である。尚、図１のネットワーク１０３上に接続される各種端末の構成は一例であり、用途や目的に応じて様々な構成例があることは言うまでもない。
【００１３】
１０１はアプリケーションサービスを提供するアプリケーションサーバであり、マルチテナント型のアプリケーションは１０１上で稼動する。１０２はサービスを管理する事業者が使用する、サービス管理端末である。１０４−１、１０４−２は当該サービスを使用する各テナントの利用者が使用する、サービス利用端末である。サービス管理端末１０２、サービス利用端末１０４−１、サービス利用端末１０４−２は、ネットワーク１０３を介して、アプリケーションサーバ１０１とデータの送受信が可能である。
【００１４】
次に、図１のアプリケーションサーバ１０１、サービス管理端末１０２、サービス利用端末１０４−１、サービス利用端末１０４−２の各種端末に適用可能な情報処理装置のハードウェア構成について、図２を用いて説明する。
【００１５】
ＣＰＵ２０１は、システムバス２０４に接続される後述の各デバイスやコントローラを統括的に制御する。また、ＲＯＭ２０３あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ（Basic Input / Output System）やオペレーティングシステムプログラム（以下、ＯＳ）や、各サーバ或いは各ＰＣの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。ＲＡＭ２０２は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。
【００１６】
ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＡＭ２０２にロードして、プログラムを実行することで各種動作を実現するものである。また、入力コントローラ（入力Ｃ）２０５は、キーボードやポインティングデバイス等で構成される入力装置２０９からの入力を制御する。ビデオコントローラ（ＶＣ）２０６は、ディスプレイ装置２１０等の表示装置への表示を制御する。ディスプレイ装置は、例えばＣＲＴディスプレイや液晶ディスプレイ等で構成される。
【００１７】
メモリコントローラ（ＭＣ）２０７は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク（ＨＤ）やフロッピーディスク（登録商標  ＦＤ）或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュメモリ等の外部メモリ２１１へのアクセスを制御する。
【００１８】
通信Ｉ／Ｆコントローラ（通信Ｉ／ＦＣ）２０８は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いたインターネット通信等が可能である。
【００１９】
なお、ＣＰＵ２０１は、例えばＲＡＭ２０２内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ディスプレイ装置２１０上での表示を可能としている。また、ＣＰＵ２０１は、ディスプレイ装置２１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００２０】
図１に示す、本実施形態にかかる各種端末（アプリケーションサーバ１０１、サービス管理端末１０２、サービス利用端末１０４−１、１０４−２）が後述する各種処理を実行するために用いられるプログラムは外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０２にロードされることによりＣＰＵ２０１によって実行されるものである。さらに、本発明に係わるプログラムが用いる定義ファイルや各種情報テーブルは外部メモリ２１１に格納されている。
【００２１】
次に、図１のアプリケーションサーバ１０１、サービス管理端末１０２、サービス利用端末１０４−１、サービス利用端末１０４−２の各種端末の内部構成について、図３を用いて説明する。
【００２２】
図３で、３０１のサービスアプリケーション（サービスＡＰ）はアプリケーションサーバ１０１に配置され、サービスアプリケーション３０１がＷｅｂアプリケーションの形態を取る場合、サービス利用端末１０４からブラウザ３０３を用いてアクセスされる。３０２は特定のテナントの特定のユーザが許可されたアクセス権限の情報を、サービスアプリケーション３０１に提供するアクセス制御部である。アクセス制御部３０２は、サービスアプリケーション３０１から、ネットワーク１０３を介してアクセス可能な別のハードウェア上に配置されていても構わない。３１１、３１２、３１３は、アクセス制御部３０２の構成要素である。アクセス権限管理モジュール３１１は、アクセス制御部３０２のメインモジュールであり、ユーザロールプロバイダモジュール３１２、テナントロール定義プロバイダモジュール３１３を呼び出し、またアクセス権限定義情報３２１を用いて、テナントのユーザが利用できるアクセス権限の情報を提供する。ユーザロールプロバイダモジュール３１２は、ユーザ定義情報３２２を用いて、テナント内のユーザが割り当てられたロール情報を提供するモジュールである。テナントロール定義プロバイダモジュール３１３は、テナントロール定義情報３２３を用いて、テナントが定義するロールとそのロールに付与された権限の情報を提供するモジュールである。ユーザロールプロバイダモジュール３１２、テナントロール定義プロバイダモジュール３１３は、アクセス権限管理モジュール３１１から、ネットワーク１０３を介してアクセス可能な別のハードウェア上に配置されていても構わない。３０５はアクセス制御部３０２の動作に必要な、アクセス権限定義情報３２１、ユーザ定義情報３２２、テナントロール定義情報３２３を設定するための管理アプリケーション（管理ＡＰ）である。管理アプリケーション３０５は、サービス利用端末１０４のブラウザ３０３や、サービス管理端末１０２のブラウザ３０４からネットワーク１０３を介してアクセスできる。
【００２３】
次に、図３のアクセス権限定義情報３２１、ユーザロール定義情報３２２、テナントロール定義情報３２３の各種データ構造の例と、これを設定するための管理画面例について、図４から図９を用いて説明する。
【００２４】
図４は図３のアクセス権限定義情報３２１のデータ構造の一例を示している。アクセス権限定義情報３２１は、アクセス権限の一覧４０１を保持し、アクセス権限４０１毎に業務機能（業務機能１（４０２）、業務機能２（４０３）、業務機能３（４０４）、業務機能４（４０５））の操作権限を定義している。例えば図４の設定例で、アクセス権限”ＡＰ権限−４”は、”業務機能１”の参照権限”Ｒ”と、”業務機能２”の参照・編集権限”Ｒ／Ｗ”があることを意味する。
【００２５】
図７は、アクセス権限定義情報３２１を設定するための管理画面の一例である。管理画面７００がＷｅｂアプリケーションの形態で提供される場合、サービス管理端末１０２は、サービス管理端末１０２のブラウザ３０４により表示される管理画面７００を介してデータの入力を受け付け、ネットワーク１０３を介して管理アプリケーション３０５にデータを送信することで、アクセス制御部３０２のアクセス権限管理モジュール３１１はアクセス権限定義情報３２１を設定する。
【００２６】
図５は、図３のユーザロール定義情報３２２のデータ構造の一例を示している。ユーザロール定義情報３２２は、テナントのユーザ毎に、ユーザに割り当てられたロールを定義している。テナントＩＤ５０１はテナントを一意に識別するＩＤであり、ユーザＩＤ５０２はテナント内のユーザを一意に識別するＩＤである。ロール５０３はユーザに割り当てられたロールを示している。例えば、図５の設定例で、テナントＩＤが”Ｔ−Ａ”のテナントに所属するユーザ”ＵＳＥＲ１”は、”ロール２”と”ロール３”と”ロール４”が割り当てられていることを意味する。尚、ユーザに割り当てられるロールに割り当てられた権限は、テナントロール定義情報３２３に定義されている。
【００２７】
図８は、ユーザロール定義情報３２２を設定するための管理画面の一例である。管理画面８００がＷｅｂアプリケーションの形態で提供される場合、サービス利用端末１０４は、サービス利用端末１０４のブラウザ３０３により表示される管理画面８００を介してデータの入力を受け付け、ネットワーク１０３を介して管理アプリケーション３０５にデータを送信することで、アクセス制御部３０２のユーザロールプロバイダモジュール３１２はユーザロール定義情報３２２を設定する。
【００２８】
図６は、テナントロール定義情報３２３のデータ構造の一例を示している。テナントロール定義情報３２３は、各々のテナントＩＤ６０１で特定されるテナントのそれぞれのロール６０２について、当該ロールに付与されるアクセス権限６０３を定義している。例えば図６の設定例で、テナントＩＤが”Ｔ−Ａ”で表されるテナントにおいて、”ロール３”は”ＡＰ権限−１”と”ＡＰ権限−２”の権限を持つことを意味する。尚、ロールに付与されるアクセス権限は、図４で説明したアクセス権限定義情報３２１に定義されている。
【００２９】
図９は、テナントロール定義情報５０３を設定するための管理画面の一例である。管理画面９００がＷｅｂアプリケーションの形態で提供される場合、サービス利用端末１０４は、サービス利用者端末１０４のブラウザ３０３により表示される管理画面９００を介してデータの入力を受け付け、ネットワーク１０３を介して管理アプリケーション３０５にデータを送信することで、アクセス制御部３０２のテナントロール定義プロバイダモジュール３２３は定義情報テナントロール定義情報３２３を設定する。
【００３０】
次に、アプリケーションサーバ１０１のアクセス制御部３０２が情報資源に対するユーザのアクセス権限を導出する処理を、図１３を参照して説明する。ここでは、外部から与えられたテナントＩＤとユーザＩＤと、予め定義された情報に基づいて、アクセス制御部３０２が業務機能に対する当該ユーザのアクセス権の一覧を導出する処理の説明を行う。この処理を行う際には、アプリケーションサーバ１０１のＣＰＵ２０１は、外部メモリ２１１に記憶されている、ＣＰＵ２０１にアクセス制御部３０２に係る処理を行わせるためのプログラムをＲＡＭ２０２にロードし、当該プログラムの制御に従って本処理を行うことになる。以降の説明では、アクセス権限管理モジュール３１１によるに従ってＣＰＵ２０１が行う処理を、アクセス権限管理モジュール３１１が行う処理として、ユーザロールプロバイダモジュール３１２による制御に従ってＣＰＵ２０１が行う処理をユーザロールプロバイダモジュール３１２が行う処理として、テナントロール定義プロバイダモジュール３１３による制御に従ってＣＰＵ２０１が行う処理をテナントロール定義プロバイダモジュール３１３が行う処理として説明することにする。
【００３１】
ステップＳ１３０１では、アクセス権限管理モジュール３２１を呼び出し、その制御に従ってＣＰＵ２０１は、外部から条件として与えられたテナントＩＤ（Ｐ１）とユーザＩＤ（Ｐ２）を受け取る。そしてユーザ認証を行い、当該ユーザ情報、テナント情報を特定する。ここでは、Ｐ１の値を”Ｔ−Ａ”、Ｐ２の値を”ＵＳＥＲ２”と仮定して、この先のフローを説明する。
【００３２】
続いて、ステップＳ１３０２では、アクセス権限管理モジュール３１１は、ユーザロールプロバイダモジュール３２２を呼び出す。そしてユーザロールプロバイダモジュール３１２は、当該ユーザのロールリスト（Ｌ１）をユーザロール定義情報３２２より取得する。この際、ユーザロールプロバイダモジュール３１２には、引数としてテナントＩＤ（Ｐ１）とユーザＩＤ（Ｐ２）が受け渡される。ユーザロールプロバイダモジュール３１２は、ユーザロール定義情報３２２に予め定義されたデータを参照して、当該テナントユーザに割り当てられたロールを取得する。例えば、図５のようにユーザロール定義情報が設定されていた場合には、テナントＩＤ列が引数Ｐ１の値”Ｔ−Ａ”、ユーザＩＤ列が引数Ｐ２の値”ＵＳＥＲ２”の両方が一致する行が探索され、そのデータ行のロール列の値”ロール２、ロール３、ロール４”が取得される。そして取得したロールを要素とする配列Ｌ１をアクセス権限管理モジュール４０１に返す。この時点でＬ１の配列の要素には”ロール２”、”ロール３”、”ロール４”が含まれる。
【００３３】
ステップＳ１３０３では、配列Ｌ２が初期化される。この時点では配列Ｌ２の要素は空である。その後ステップＳ１３０４では、配列Ｌ２のカウンタ変数であるＫを０に初期化する。
【００３４】
ステップＳ１３０５は、ループ始端である。配列Ｌ１各々の要素であるＬ１［ｉ］（ｉの初期値は０）に対して、ステップＳ１３０６からＳ１３１１の処理を行う。
【００３５】
ステップＳ１３０６では、アクセス権限管理モジュール３１１は、テナントロール定義プロバイダモジュール３１３を呼び出して、テナントロール定義情報３２３からＬ１［ｉ］のロールについてアクセス権限リスト（Ｌ３）を取得する。この際、テナントロール定義プロバイダモジュール３１３には、引数としてテナントＩＤ（Ｐ１）とＬ１［ｉ］のロール（Ｐ３）が受け渡される。テナントロール定義プロバイダモジュール３１３は、テナントロール定義情報３２３に予め定義されたデータを参照して、当該ロールに付与されたアクセス権限を取得する。例えば、テナントロール定義情報が図６に示すように設定されており、引数Ｐ３の値が”ロール２”の時、テナントＩＤ列と引数Ｐ１の値”Ｔ−Ａ”、ロール列と引数Ｐ３の値”ロール２”の両方が一致する行が探索され、そのデータ行のアクセス権限列が取得される。そして取得したデータ行の権限列に設定された権限の、各々を要素とする配列Ｌ３をアクセス権限管理モジュール４０１に返す。引数Ｐ１の値が”Ｔ−Ａ”、
引数Ｐ３の値が”ロール２”の時、Ｌ３の配列の要素には”ＡＰ権限−３”が含まれる。
【００３６】
ステップＳ１３０７はループ始端である。配列Ｌ３各々の要素であるＬ３［ｊ］（ｊの初期値は０）に対して、ステップＳ１３０８からＳ１３１０の処理を行う。
【００３７】
ステップＳ１３０８では、Ｌ３［ｊ］の値が示すアクセス権限が配列Ｌ２の要素として含まれているかを確認し、配列Ｌ２の要素に含まれていない場合にはステップＳ１３０９に進む。Ｌ３［ｊ］の値が配列Ｌ２の要素に既に含まれている場合にはステップＳ１３１１に進む。
【００３８】
ステップＳ１３０９では、Ｌ２［ｋ］にＬ３［ｊ］を代入する。そして、ステップＳ１３１０で変数ｋの値に１を追加する。
【００３９】
ステップＳ１３１１はステップＳ１３０７に対応するループ終端である。配列Ｌ３に含まれる全ての要素についてステップＳ１３０８からＳ１３１０の処理が終わるとループが終了する。このループが終了した時点でユーザに割り当てられたロールの１つに付与された業務権限が、配列Ｌ２に追加されていることになる。例えばＬ１の１つ目の要素であるＬ１［０］が“ロール２”の時、Ｌ３の要素は“ＡＰ権限−３”が含まれる。
【００４０】
ステップＳ１３１２は、ステップＳ１３０５に対応するループ終端である。配列Ｌ１に含まれる全ての要素についてステップＳ１３０６からＳ１３１１の処理が終わるとループが終了する。このループが終了した時点でユーザに割り当てられた全てのロールに付与された業務権限が、配列Ｌ２に追加されていることになる。例えば引数Ｐ１の値が“Ｔ−Ａ”、引数Ｐ２の値が“ＵＳＥＲ２”の時、このループを終了する時点での、配列Ｌ２の要素は“ＡＰ権限−３”、“ＡＰ権限−１”、“ＡＰ権限−２”が含まれる。そして、ステップＳ１３１３で呼出元に配列Ｌ２を返す。
【００４１】
次に、図１４を参照して、アクセス権限定義情報３２１を設定する処理について説明する。図１４に示すアクセス権限定義情報設定処理は、サービス管理端末１０２及びアプリケーションサーバ１０１によって行われる。尚、アプリケーションサーバ１０１のＣＰＵ２０１により行われる処理については、その処理主体をＣＰＵ２０１に当該処理を行わせるモジュールとして説明することにする。
【００４２】
まず、サービス管理端末１０２のＣＰＵ２０１は、アクセス権限定義情報変更要求をアプリケーションサーバ１０１に対して送信する（ステップＳ１４０１）。その変更要求を受信する（ステップＳ１４０２）と、ステップＳ１４０３で管理アプリケーション３０５は、現在登録されているアクセス権限定義情報３２１のデータを取得するために、アクセス制御部３０２を呼び出す。このデータ取得要求は、アクセス制御部３０２の内部でアクセス権限管理モジュール３１１に伝えられる。
【００４３】
その後、ステップＳ１４０４でアクセス権限管理モジュール３１１は、アクセス権限定義情報３２１からデータを読み込んで、読み込んだデータ（以下  Ｄ１ａ）を呼出元に返す。アクセス制御装置３０２から、Ｄ１ａを受け取った管理アプリケーション３０５はステップＳ１４０５で、Ｄ１ａを反映したアクセス権限定義情報の管理画面７００のＨＴＭＬ文書を生成し、このＨＴＭＬ文書をサービス管理端末１０２のブラウザ３０４の応答として返す（ステップＳ１４０６）。このＨＴＭＬ文書はネットワーク１０３に送信され、ブラウザ３０４が受信する。サービス管理端末１０２が管理画面７００のＨＴＭＬデータを取得すると、ブラウザ３０４の機能により、Ｄ１ａが設定されたアクセス権限定義情報の管理画面７００がディスプレイ装置２１０に表示される（ステップＳ１４０８）。
【００４４】
そしてその後、管理画面７００を介してデータの変更入力を受け付ける（ステップＳ１４０９）。そしてその後、管理画面７００の送信ボタン７０４の押下を受け付けると、入力データ（以下  Ｄ１ｂ）が、ブラウザ３０４の機能によってネットワーク１０３に送信され（ステップＳ１４１０）、管理アプリケーション３０５がこれを受信する（ステップＳ１４１１）。ステップＳ１４１２では、Ｄ１ｂを受信した管理アプリケーション３０５は、このデータを永続化するために、アクセス制御部３０２にＤ１ｂを受け渡す。この永続化要求は、アクセス制御部３０２の内部でアクセス権限管理モジュール３１１に伝えられる。
【００４５】
そして、アクセス権限管理モジュール３１１は、アクセス権限定義情報３２１のデータを、受け取ったＤ１ｂの内容に置き換える（ステップＳ１４１２：データ更新）。そして、管理アプリケーション３０５はその処理結果をアクセス制御部３０２より取得し、取得した処理結果をサービス管理端末１０２のブラウザ３０４に対して送信する（ステップＳ１４１３）。そして、サービス管理端末１０２のブラウザ３０４は受信した処理結果を表示する（ステップＳ１４１４）。以上がアクセス権限定義情報設定処理の説明である。
【００４６】
次に、図１５を参照して、テナントロール定義情報３２３を設定する処理について説明する。図１５に示すテナントロール定義情報設定処理は、サービス利用端末１０４及びアプリケーションサーバ１０１によって行われる。尚、本処理の説明は、その処理主体をＣＰＵ２０１に当該処理を行わせるモジュールとして説明することにする。
【００４７】
まず、サービス利用端末１０４のＣＰＵ２０１は、テナントロール定義情報変更要求をアプリケーションサーバ１０１に対して送信する（ステップＳ１５０１）。その際には、ブラウザ３０３を利用して、管理アプリケーション３０５にアクセスすることになる。またこのアクセス要求には、テナントＩＤのようなアクセス元のテナントを識別する情報が含まれる。テナントＩＤをアクセス要求に含める方法としては、例えばＨＴＴＰ  ＣｏｏｋｉｅやＵＲＬ内のクエリストリングあるいは、ＨＴＴＰ  ＰＯＳＴデータに含める方法が考えられる。管理アプリケーション３０５においては、前記のアクセス元のテナントの表明が偽装される攻撃に備えて、十分な対策がなされるべきであることは言うまでもない。
【００４８】
アプリケーションサーバ１０１の管理アプリケーション３０５が変更要求を受信する（ステップＳ１５０２）と、ステップＳ１５０３で現在登録されているテナントロール定義情報３２３のデータを取得するために、アクセス制御部３０２を呼び出す。このデータ取得要求は、アクセス制御部３０２の内部でテナントロール定義プロバイダモジュール３１３に伝えられる。
【００４９】
ステップＳ１５０３で管理アプリケーション３０５は、該当するテナントのテナントロール定義のデータを取得するために、アクセス制御部３０２を呼び出す。呼び出しにあたって、管理アプリケーション３０５は、アクセス要求に含まれるテナントＩＤを取り出して、アクセス制御装置３０２に引数として受け渡す。このデータ取得要求は引数とともに、アクセス制御部３０２の内部で、アクセス権限管理モジュール３１１を介して、テナントロール定義プロバイダモジュール３１３に伝えられる。ステップＳ１５０４でテナントロール定義プロバイダモジュール３１３は、引数として受け渡されたテナントＩＤに該当する全てのレコードを、テナントロール定義情報３２３から読み込んで、このデータ（以下  Ｄ２ａ）を呼出元に返す。アクセス制御部３０２から、Ｄ２ａを受け取った管理アプリケーション３０５はステップＳ１５０５で、Ｄ２ａを反映したテナントロール定義情報の管理画面９００のＨＴＭＬ文書を作成し、このＨＴＭＬ文書をブラウザ３０３の応答として返す（ステップＳ１５０６）。このＨＴＭＬ文書はネットワーク１０３に送信され、ブラウザ３０３が受信する（ステップＳ１５０７）。ブラウザ３０３の機能により、Ｄ２ａが設定されたテナントロール定義情報の管理画面９００が表示される（ステップＳ１５０８）。
【００５０】
そしてその後、管理画面９００を介してデータの変更入力を受け付ける（ステップＳ１５０９）。そしてその後、管理画面９００の送信ボタン９０５の押下を受け付けると、入力データ（以下  Ｄ２ｂ）がブラウザ３０３の機能によってネットワーク１０３に送信され（ステップＳ１５１０）、管理アプリケーション３０５がこれを受信する（ステップＳ１５１１）。Ｄ２ｂを受信した管理アプリケーション３０５は、ステップＳ１５１１で、このデータを永続化するために、アクセス制御装置３０２にＤ２ｂとテナントＩＤを、アクセス制御部３０２に引数として受け渡す。この永続化要求は引数と共に、アクセス部装置３０２の内部でアクセス権限管理モジュール３１１を介して、テナントロール定義プロバイダモジュール３１３に伝えられる。尚、引数の一部として受け渡すテナントＩＤは、前述のアクセス要求時と同じようにブラウザ３０３から送出されるか、あるいはアプリケーションサーバ１０１のセッション状態管理機能を用いて、前述のアクセス要求時に管理アプリケーション３０５がテナントＩＤを記憶しておき、これを取り出して用いても良い。ステップＳ１５１２でテナントロール定義プロバイダモジュール３１３は、テナントロール定義情報３２３のうち、引数のテナントＩＤに該当するレコードを受け取ったＤ２ｂの内容に置き換える（ステップＳ１５１２：データ更新）。
【００５１】
そして、管理アプリケーション３０５はその処理結果をアクセス制御部３０２より取得し、取得した処理結果をサービス利用端末１０４のブラウザ３０４に対して送信する（ステップＳ１５１３）。そして、サービス利用端末１０４のブラウザ３０３は受信した処理結果を表示する（ステップＳ１５１４）。以上がテナントロール定義設定処理の説明である。
【００５２】
次に、図１６を参照して、ユーザロール定義情報３２２を設定する処理について説明する。図１６に示すユーザロール定義情報設定処理は、サービス利用端末１０４及びアプリケーションサーバ１０１によって行われる。尚、本処理の説明は、その処理主体をＣＰＵ２０１に当該処理を行わせるモジュールとして説明することにする。
【００５３】
まず、サービス利用端末１０４のＣＰＵ２０１は、ユーザロール定義情報変更要求をアプリケーションサーバ１０１に対して送信する（ステップＳ１６０１）。その際には、ブラウザ３０３を利用して、管理アプリケーション３０５にアクセスすることになる。またこのアクセス要求には、テナントＩＤのようなアクセス元のテナントを識別する情報が含まれる。テナントＩＤをアクセス要求に含める方法としては、例えばＨＴＴＰ  ＣｏｏｋｉｅやＵＲＬ内のクエリストリングあるいは、ＨＴＴＰ  ＰＯＳＴデータに含める方法が考えられる。管理アプリケーション３０５においては、前記のアクセス元のテナントの表明が偽装される攻撃に備えて、十分な対策がなされるべきであることは言うまでもない。
【００５４】
アプリケーションサーバ１０１の管理アプリケーション３０５が変更要求を受信する（ステップＳ１６０２）と、ステップＳ１６０３で現在登録されているユーザロール定義情報３２２のデータを取得するために、アクセス制御部３０２を呼び出す。このデータ取得要求は、アクセス制御部３０２の内部でユーザロールプロバイダモジュール３１２に伝えられる。
【００５５】
ステップＳ１６０３で、管理アプリケーション３０５は、該当するユーザのユーザロール定義のデータを取得するために、アクセス制御部３０２を呼び出す。呼び出しにあたって、管理アプリケーション３０５は、アクセス要求に含まれるテナントＩＤとユーザＩＤを取り出して、アクセス制御部３０２に引数として受け渡す。このデータ取得要求は引数とともに、アクセス制御部３０２の内部で、アクセス権限管理モジュール３１１を介して、ユーザロールプロバイダモジュール３１２に伝えられる。ステップＳ１６０４でユーザロールプロバイダモジュール３１２は、引数として受け渡されたテナントＩＤに該当する全てのレコードを、ユーザロール定義情報３２２から読み込んで、このデータ（以下  Ｄ３ａ）を呼出元に返す。
【００５６】
アクセス制御部３０２からＤ３ａを受け取った管理アプリケーション３０５はステップＳ１６０５で、Ｄ３ａを反映したユーザロール定義情報の管理画面８００のＨＴＭＬ文書を作成し、このＨＴＭＬ文書をブラウザ３０３の応答として返す（ステップＳ１６０６）。このＨＴＭＬ文書はネットワーク１０３に送信され、ブラウザ３０３が受信する（ステップＳ１６０７）。ブラウザ３０３の機能により、Ｄ３ａが設定されたたユーザロール定義情報の管理画面８００が表示される（ステップＳ１６０８）。
【００５７】
そしてその後、管理画面８００を介してデータの変更入力を受け付ける（ステップＳ１６０９）。そしてその後、管理画面８００の送信ボタン８０３の押下を受け付けると、入力データ（以下  Ｄ３ｂ）がブラウザ３０３の機能によってネットワーク１０３に送信され（ステップＳ１６１０）、管理アプリケーション３０５がこれを受信する（ステップＳ１６１１）。Ｄ３ｂを受信した管理アプリケーション３０５は、このデータを永続化するために、アクセス制御装置３０２にＤ３ｂとテナントＩＤ、ユーザＩＤを、アクセス制御装置３０２に引数として受け渡す。この永続化要求は引数と共に、アクセス制御装置３０２の内部でアクセス権限管理モジュール３１１を介して、ユーザロールプロバイダモジュール３１２に伝えられる。尚、引数の一部として受け渡すテナントＩＤとユーザＩＤは、前述のアクセス要求時と同じようにブラウザ３０３から送出されるか、あるいはアプリケーションサーバのセッション状態管理機能を用いて、前述のアクセス要求時に管理アプリケーション３０５がテナントＩＤを記憶しておき、これを取り出して用いても良い。ステップＳ１６１２でユーザロールプロバイダモジュール３１２は、ユーザロール定義情報３２２のうち、引数のテナントＩＤとユーザＩＤに該当するレコードを受け取ったＤ３ｂの内容に置き換える（ステップＳ１６１２：データ更新）。
【００５８】
そして、管理アプリケーション３０５はその処理結果をアクセス制御部３０２より取得し、取得した処理結果をサービス利用端末１０４のブラウザ３０４に対して送信する（ステップＳ１６１３）。そして、サービス利用端末１０４のブラウザ３０３は受信した処理結果を表示する（ステップＳ１６１４）。以上がユーザロール定義設定処理の説明である。
【００５９】
次に、図１０から図１２を参照して、サービス利用端末１０４からのアプリケーションの実行要求を受けた場合に、図１３に示すアクセス制御部３０２による情報資源に対するユーザのアクセス権限を導出する処理を実行後、ユーザが使用するサービス利用端末１０４に表示されるサービスアプリケーション３０１により提供される画面例について説明する。図１０は、サービスアプリケーション３０１のメニュー画面の一例である。サービス利用者は、この画面を用いて、使用する業務機能の起動指示をＣＰＵ２０１に対して入力する。例えば、図中に示す業務機能１ボタン（１００２）乃至業務機能４（１００４）ボタン等のコントロールに対する操作指示を行うことで、その入力を行うことが可能である。サービスアプリケーション３０１はアクセス制御装置３０２から取得した情報を用いて、このようなメニュー画面１０００のボタンの使用可否を切り替えることができる。すなわち、テナント“Ｔ−Ａ”に所属するユーザである“ＵＳＥＲ１”は、ロール１が割り当てられているとして、テナント“Ｔ−Ａ”における“ロール１”に付与される権限が、“ＡＰ権限−１”と“ＡＰ権限−２”と“ＡＰ権限−３”と“ＡＰ権限−４”である時、このユーザは、“業務機能１”と“業務機能２”に対するアクセスが許可されるため、“業務機能１”と業務権限“２”に対応するメニューボタンを有効とし、権限を持たない業務機能のメニューボタンを無効化にすることができる。
【００６０】
図１１及び図１２は、メニュー画面１０００から起動される業務画面の例である。サービスアプリケーション３０１は、例えば
“業務機能１”に対するアクセス権が参照・編集権限（Ｒ／Ｗ）のユーザに対しては、１１００の画面例のようにデータの変更に関わるボタンを活性化し、“業務機能１”に対するアクセス権が参照権限（Ｒ）のユーザに対しては、１２００の画面のようにデータの変更に関わるボタンを非活性にすることで、ユーザのアクセス権に応じた機能を提供できる。尚、アクセス制御装置３０２が提供するアクセス権限情報は、画面制御に限らず、アクセス制御の様々な局面に適用可能である。
【００６１】
以上説明したように、本実施形態によれば、情報資源に対する操作権限の情報を定義したアクセス権限定義情報と、テナント毎のロールの分類とロールに付与する権限を定義したテナントロール定義情報、またこのロールのユーザへの割り当てを定義したユーザロール定義情報を記憶しておき、これらの情報を組み合わせて結びつけることで、アプリケーションは単一のプログラムを用いて情報資源に対するユーザのアクセス制御を実現できる。
【００６２】
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実勢態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【００６３】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
【００６４】
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【００６５】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であってもよい。
【００６６】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。また、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などもある。
【００６７】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
【００６８】
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【００６９】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【００７０】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【００７１】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
【００７２】
なお、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【００７３】
１０１    アプリケーションサーバ
１０２  サービス管理端末
１０３  ネットワーク
１０４−１、１０４−２    サービス利用端末
２０１  ＣＰＵ
２０２  ＲＡＭ
２０３  ＲＯＭ
２０４  システムバス
２０５  入力コントローラ
２０６  ビデオコントローラ
２０７  メモリコントローラ
２０８  通信Ｉ／Ｆ（インターフェース）コントローラ
２０９  入力装置
２１０  ディスプレイ装置
２１１  外部メモリ
【図１】
2011128994.tif 000003
【図２】
2011128994.tif 000004
【図３】
2011128994.tif 000005
【図４】
2011128994.tif 000006
【図５】
2011128994.tif 000007
【図６】
2011128994.tif 000008
【図７】
2011128994.tif 000009
【図８】
2011128994.tif 000010
【図９】
2011128994.tif 000011
【図１０】
2011128994.tif 000012
【図１１】
2011128994.tif 000013
【図１２】
2011128994.tif 000014
【図１３】
2011128994.tif 000015
【図１４】
2011128994.tif 000016
【図１５】
2011128994.tif 000017
【図１６】
2011128994.tif 000018