JP2000172653A - 分散システム - Google Patents
分散システムInfo
- Publication number
- JP2000172653A JP2000172653A JP10344010A JP34401098A JP2000172653A JP 2000172653 A JP2000172653 A JP 2000172653A JP 10344010 A JP10344010 A JP 10344010A JP 34401098 A JP34401098 A JP 34401098A JP 2000172653 A JP2000172653 A JP 2000172653A
- Authority
- JP
- Japan
- Prior art keywords
- server
- client
- access
- interface
- access control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】
【課題】 インタフェースがクライアントオブジェクト
に応じて区分され、複数のインタフェースに対して1つ
のオブジェクトが生成されるような分散システムにおい
て、インタフェース毎にクライアントオブジェクトから
のアクセスを制御する。 【解決手段】 サーバ11にアクセス制御ブロック12
−1〜12−3をインタフェース毎に備える。サーバ1
1内の各オペレーションはアクセス制御ブロック12−
1〜12−3を介してアクセスされる。そして、このア
クセス制御ブロック12−1〜12−3によってクライ
アントマシン2−1〜2−nからのアクセスをインタフ
ェース毎に制御する。
に応じて区分され、複数のインタフェースに対して1つ
のオブジェクトが生成されるような分散システムにおい
て、インタフェース毎にクライアントオブジェクトから
のアクセスを制御する。 【解決手段】 サーバ11にアクセス制御ブロック12
−1〜12−3をインタフェース毎に備える。サーバ1
1内の各オペレーションはアクセス制御ブロック12−
1〜12−3を介してアクセスされる。そして、このア
クセス制御ブロック12−1〜12−3によってクライ
アントマシン2−1〜2−nからのアクセスをインタフ
ェース毎に制御する。
Description
【0001】
【発明の属する技術分野】本発明は、複数のインタフェ
ースによって1つのオブジェクトを生成するような分散
システムに関し、特にサービスを提供するサーバ側でイ
ンタフェース毎にアクセス制御を行う分散システムに関
する。
ースによって1つのオブジェクトを生成するような分散
システムに関し、特にサービスを提供するサーバ側でイ
ンタフェース毎にアクセス制御を行う分散システムに関
する。
【0002】
【従来の技術】従来より、複数のコンピュータをネット
ワークに接続し、ネットワーク接続されたコンピュータ
間で、コンピュータ上のアプリケーションプログラムを
協調動作させて一つの機能を実現する分散システムが知
られている。
ワークに接続し、ネットワーク接続されたコンピュータ
間で、コンピュータ上のアプリケーションプログラムを
協調動作させて一つの機能を実現する分散システムが知
られている。
【0003】このように分散したアプリケーションやデ
ータを統合化するプラットフォームとして注目されてい
るのが、ORB(Object Request Broker)と呼ばれる分
散オブジェクト環境であり、システム上のアプリケーシ
ョンプログラム作成の効率化を図るための分散システム
モデルの1つとして、アメリカのOMG(Object Manage
ment Grope)によって標準化されたCORBA(Common O
bject Request BrokerArchitecture)がある。
ータを統合化するプラットフォームとして注目されてい
るのが、ORB(Object Request Broker)と呼ばれる分
散オブジェクト環境であり、システム上のアプリケーシ
ョンプログラム作成の効率化を図るための分散システム
モデルの1つとして、アメリカのOMG(Object Manage
ment Grope)によって標準化されたCORBA(Common O
bject Request BrokerArchitecture)がある。
【0004】このCORBAでは、データと処理をカプ
セル化したオブジェクトをクライアント(処理を要求す
る側)からサーバへ処理を要求する単位とし、このオブ
ジェクトによって様々なサービス、例えば個人別電話帳
のようにオブジェクトを名前で管理するネーミングサー
ビス(Naming Service)、職業別電話帳のようにオブジ
ェクト自らのサービスを広告し、それらを見つける手助
けをするようなトレーダサービス、データベースに対し
て検索処理を行うクエリーサービス(Query Service)
等が提供されている。
セル化したオブジェクトをクライアント(処理を要求す
る側)からサーバへ処理を要求する単位とし、このオブ
ジェクトによって様々なサービス、例えば個人別電話帳
のようにオブジェクトを名前で管理するネーミングサー
ビス(Naming Service)、職業別電話帳のようにオブジ
ェクト自らのサービスを広告し、それらを見つける手助
けをするようなトレーダサービス、データベースに対し
て検索処理を行うクエリーサービス(Query Service)
等が提供されている。
【0005】このサービスにアクセスするための唯一の
手段がインタフェースであり、インタフェースは、ID
L(Interface Definition Language)ファイルによっ
て定義されている。
手段がインタフェースであり、インタフェースは、ID
L(Interface Definition Language)ファイルによっ
て定義されている。
【0006】図2はCORBA IDL(Interface De
finition Language)によって記述されたインタフェー
スの一例を示す図である。IDLファイルでは、宣言さ
れたmoduleに一連のインタフェースが記述される。そし
て、このインタフェースの中で、オブジェクトに対して
クライアントが起動できる一連のオペレーション(メソ
ッド)を定義する。
finition Language)によって記述されたインタフェー
スの一例を示す図である。IDLファイルでは、宣言さ
れたmoduleに一連のインタフェースが記述される。そし
て、このインタフェースの中で、オブジェクトに対して
クライアントが起動できる一連のオペレーション(メソ
ッド)を定義する。
【0007】このIDLファイルをコンパイルすること
によってクライアントのスタブ(クライアントアプリケ
ーション用のソースコード)やサーバ実装のスケルトン
(サーバアプリケーション用のソースコード)が生成さ
れ、ソフトウェアのアーキテクチャ及びクライアントと
サーバとの間のパスが提供される。このCORBAで
は、現在、1つのインタフェースによって1つのオブジ
ェクトが生成される。
によってクライアントのスタブ(クライアントアプリケ
ーション用のソースコード)やサーバ実装のスケルトン
(サーバアプリケーション用のソースコード)が生成さ
れ、ソフトウェアのアーキテクチャ及びクライアントと
サーバとの間のパスが提供される。このCORBAで
は、現在、1つのインタフェースによって1つのオブジ
ェクトが生成される。
【0008】このCORBAをベースとして、複数のイ
ンタフェースによって1つのオブジェクトが生成される
TINA−DPE (Telecommunications Information N
etworking Architecture−Distribured Processing Env
ironment) モデルが構想されている。
ンタフェースによって1つのオブジェクトが生成される
TINA−DPE (Telecommunications Information N
etworking Architecture−Distribured Processing Env
ironment) モデルが構想されている。
【0009】このTINA−DPEモデルでは、利用す
るクライアントオブジェクトが異なっていることを想定
しているため、インタフェースを、一つ以上の管理イン
タフェースと一つ以上のサービスインタフェースとに区
分している。ここで、管理インタフェースとはインタフ
ェースの動的生成及び削除、インタフェースの使用許可
又は不許可、インタフェースのサービス属性の編集等を
行うためのインタフェースであり、サービスインタフェ
ースとはクライアントオブジェクトが通常のサービスに
対して使用するインタフェースである。
るクライアントオブジェクトが異なっていることを想定
しているため、インタフェースを、一つ以上の管理イン
タフェースと一つ以上のサービスインタフェースとに区
分している。ここで、管理インタフェースとはインタフ
ェースの動的生成及び削除、インタフェースの使用許可
又は不許可、インタフェースのサービス属性の編集等を
行うためのインタフェースであり、サービスインタフェ
ースとはクライアントオブジェクトが通常のサービスに
対して使用するインタフェースである。
【0010】そして、管理オブジェクトは管理インタフ
ェースを使用し、通常のクライアントオブジェクトはサ
ービスインタフェースを使用するというように使い分け
るのが一般的である。
ェースを使用し、通常のクライアントオブジェクトはサ
ービスインタフェースを使用するというように使い分け
るのが一般的である。
【0011】
【発明が解決しようとする課題】ところで、かかる複数
のインタフェースに対して1つのオブジェクトが生成さ
れるようなTINA−DPEをモデルとした分散システ
ムでは、インタフェースを上記のように区分しているた
め、サービスオブジェクトから管理インタフェースをア
クセスしたり、管理オブジェクトからサービスインタフ
ェースをアクセスしたり、またサービスインタフェース
間においても自由にアクセスしたりすることは問題とな
る。従って、オブジェクトがサポートするインタフェー
ス毎に、アクセス制御を行う必要がある。
のインタフェースに対して1つのオブジェクトが生成さ
れるようなTINA−DPEをモデルとした分散システ
ムでは、インタフェースを上記のように区分しているた
め、サービスオブジェクトから管理インタフェースをア
クセスしたり、管理オブジェクトからサービスインタフ
ェースをアクセスしたり、またサービスインタフェース
間においても自由にアクセスしたりすることは問題とな
る。従って、オブジェクトがサポートするインタフェー
ス毎に、アクセス制御を行う必要がある。
【0012】前記TINA−DPEモデルでは、現在、
このようなアクセス制御を含めたオブジェクトの構成は
未定である。もし、アクセス制御を行おうとすれば、ア
クセス可能なインタフェースと、アクセス不可のインタ
フェースとを備えることが考えられる。
このようなアクセス制御を含めたオブジェクトの構成は
未定である。もし、アクセス制御を行おうとすれば、ア
クセス可能なインタフェースと、アクセス不可のインタ
フェースとを備えることが考えられる。
【0013】しかし、このようにすると、両方のインタ
フェースに同一オペレーションコードを記述しなければ
ならず、同じオペレーションコードを記述したインタフ
ェースを複数実装することになり、サーバ開発にかかる
コストが増大してしまう。
フェースに同一オペレーションコードを記述しなければ
ならず、同じオペレーションコードを記述したインタフ
ェースを複数実装することになり、サーバ開発にかかる
コストが増大してしまう。
【0014】従って、複数のインタフェースに対して1
つのオブジェクトが生成されるような分散システムにお
いて、インタフェースが複数あっても同一のオペレーシ
ョンコードを重複せずに記述できるようなシステムが望
まれる。
つのオブジェクトが生成されるような分散システムにお
いて、インタフェースが複数あっても同一のオペレーシ
ョンコードを重複せずに記述できるようなシステムが望
まれる。
【0015】
【課題を解決するための手段】本発明は以上の課題を解
決するため次の構成を採用する。 〈構成1〉請求項1の発明に係る分散システムは、複数
のコンピュータをネットワーク接続し、所定のサービス
を実行するオペレーションにアクセスするためのインタ
フェースを、処理を要求するクライアントオブジェクト
に応じて区分し、処理を提供するサーバオブジェクトを
複数のインタフェースによって定義し、該定義に基づい
てサーバにオペレーションを実装し、クライアントがサ
ーバ上のオペレーションにアクセスするように構成され
た分散システムにおいて、前記クライアントは、オペレ
ーションにアクセスするためのアクセス権を判定するた
めのコードを含むメッセージをサーバに送信するように
構成され、前記サーバは、送信されたメッセージに含ま
れたコードに基づいて、オペレーションへのアクセス権
があるか否かをインタフェース毎に判定する判定手段
と、該判定手段によってアクセス権があると判定された
ときは、オペレーションへのアクセスを許可し、アクセ
ス権がないと判定されたときは、アクセスを許可しない
アクセス制御手段と、を備えて構成されている。
決するため次の構成を採用する。 〈構成1〉請求項1の発明に係る分散システムは、複数
のコンピュータをネットワーク接続し、所定のサービス
を実行するオペレーションにアクセスするためのインタ
フェースを、処理を要求するクライアントオブジェクト
に応じて区分し、処理を提供するサーバオブジェクトを
複数のインタフェースによって定義し、該定義に基づい
てサーバにオペレーションを実装し、クライアントがサ
ーバ上のオペレーションにアクセスするように構成され
た分散システムにおいて、前記クライアントは、オペレ
ーションにアクセスするためのアクセス権を判定するた
めのコードを含むメッセージをサーバに送信するように
構成され、前記サーバは、送信されたメッセージに含ま
れたコードに基づいて、オペレーションへのアクセス権
があるか否かをインタフェース毎に判定する判定手段
と、該判定手段によってアクセス権があると判定された
ときは、オペレーションへのアクセスを許可し、アクセ
ス権がないと判定されたときは、アクセスを許可しない
アクセス制御手段と、を備えて構成されている。
【0016】〈構成2〉請求項2の発明に係る分散シス
テムでは、前記アクセス権を判定するためのコードは、
ユーザ識別番号及び所定のパスワードのうち、少なくと
も1つである。
テムでは、前記アクセス権を判定するためのコードは、
ユーザ識別番号及び所定のパスワードのうち、少なくと
も1つである。
【0017】
【発明の実施の形態】以下、本発明の実施の形態を具体
例を用いて説明する。 〈具体例〉具体例は、分散システムのサーバに、アクセ
ス制御ブロックをインタフェース毎に設け、要求された
処理を実際に行うオペレーションへのアクセスをインタ
フェース毎に制御するようにしたものである。
例を用いて説明する。 〈具体例〉具体例は、分散システムのサーバに、アクセ
ス制御ブロックをインタフェース毎に設け、要求された
処理を実際に行うオペレーションへのアクセスをインタ
フェース毎に制御するようにしたものである。
【0018】図1は、具体例における分散システムの構
成を示すブロック図である。分散システムでは、複数の
コンピュータとして、サーバマシン1と複数のクライア
ントマシン2−1〜2−nとが、ネットワーク3を介し
て接続されている。
成を示すブロック図である。分散システムでは、複数の
コンピュータとして、サーバマシン1と複数のクライア
ントマシン2−1〜2−nとが、ネットワーク3を介し
て接続されている。
【0019】サーバマシン1は、例えばファイルサー
バ、プリントサーバ、データベースサーバのように、ク
ライアントマシン2−1〜2−nからの依頼に応じて上
記サービスを提供するコンピュータである。
バ、プリントサーバ、データベースサーバのように、ク
ライアントマシン2−1〜2−nからの依頼に応じて上
記サービスを提供するコンピュータである。
【0020】クライアントマシン2−1〜2−nは、サ
ービスを依頼する側のコンピュータであり、クライアン
トプログラム21を備えて構成される。このクライアン
トプログラム21は、サーバマシン1上のサーバプログ
ラム11と協調して動作する分散型プログラムである。
ービスを依頼する側のコンピュータであり、クライアン
トプログラム21を備えて構成される。このクライアン
トプログラム21は、サーバマシン1上のサーバプログ
ラム11と協調して動作する分散型プログラムである。
【0021】この分散システムでは、データと処理をカ
プセル化したオブジェクトを処理の単位として種々のサ
ービスが提供される。提供されるサービスとしては、例
えばオブジェクトを名前で管理するネーミングサービ
ス、サービスを探しだせるようにオブジェクト自らのサ
ービスを広告するトレーダサービス、データベースに対
して検索処理を行うクエリーサービス等がある。
プセル化したオブジェクトを処理の単位として種々のサ
ービスが提供される。提供されるサービスとしては、例
えばオブジェクトを名前で管理するネーミングサービ
ス、サービスを探しだせるようにオブジェクト自らのサ
ービスを広告するトレーダサービス、データベースに対
して検索処理を行うクエリーサービス等がある。
【0022】この分散システムでは、利用目的に応じて
インタフェースを区分し、複数のインタフェースを用い
て1つのオブジェクトを生成するTINA−DPEモデ
ルを用いるものとする。但し、このモデルに限定される
ものではなく、このような機能を有するモデルであれば
どのようなものにも適用できる。このモデルでは、オブ
ジェクトのインタフェース、オペレーションはODL
(Object definition Language)によって定義される。
インタフェースを区分し、複数のインタフェースを用い
て1つのオブジェクトを生成するTINA−DPEモデ
ルを用いるものとする。但し、このモデルに限定される
ものではなく、このような機能を有するモデルであれば
どのようなものにも適用できる。このモデルでは、オブ
ジェクトのインタフェース、オペレーションはODL
(Object definition Language)によって定義される。
【0023】図3はODLファイルの一例を示す説明図
である。この例では、インタフェースとしてManager、U
ser1、 User2が定義され、Managerインタフェースに
は、add_user()、remomove()、user_list()の3つのオ
ペレーションが定義され、User1, User2インタフェース
には、それぞれオペレーションとしてprint1()、 print
2()が定義されている。add_user()、remomove()、user_
list()は管理用のオペレーションであり、print1()、 p
rint2()はサービス用のオペレーションである。
である。この例では、インタフェースとしてManager、U
ser1、 User2が定義され、Managerインタフェースに
は、add_user()、remomove()、user_list()の3つのオ
ペレーションが定義され、User1, User2インタフェース
には、それぞれオペレーションとしてprint1()、 print
2()が定義されている。add_user()、remomove()、user_
list()は管理用のオペレーションであり、print1()、 p
rint2()はサービス用のオペレーションである。
【0024】このODLファイルをコンパイルすること
により、サーバマシン1には、サーバ11が、クライア
ントマシン2−1〜2−nの各クライアントプログラム
21には、クライアントスタブ23がそれぞれ実装さ
れ、さらにサーバ11には、アクセス制御ブロック12
がインタフェース毎に実装される。尚、この動作につい
ては後述する。
により、サーバマシン1には、サーバ11が、クライア
ントマシン2−1〜2−nの各クライアントプログラム
21には、クライアントスタブ23がそれぞれ実装さ
れ、さらにサーバ11には、アクセス制御ブロック12
がインタフェース毎に実装される。尚、この動作につい
ては後述する。
【0025】アクセス制御ブロック12は、クライアン
トマシン2−1〜2−nからのリクエストに対してアク
セス制御を行うブロックである。ODLファイルには、
3つのインタフェース、Manager、User1、 User2が定義
されているので、実装されるアクセス制御ブロック12
は3つであり、その3つのアクセス制御ブロック12−
1〜12−3は、それぞれ3つのインタフェースManage
r、User1、 User2に対応する。
トマシン2−1〜2−nからのリクエストに対してアク
セス制御を行うブロックである。ODLファイルには、
3つのインタフェース、Manager、User1、 User2が定義
されているので、実装されるアクセス制御ブロック12
は3つであり、その3つのアクセス制御ブロック12−
1〜12−3は、それぞれ3つのインタフェースManage
r、User1、 User2に対応する。
【0026】各クライアントプログラム21に実装され
たクライアントスタブ23は、アプリケーションプログ
ラム22とリンクしてメッセージをサーバ11のアクセ
ス制御ブロック12−1〜12−3に対して送信するク
ライアントアプリケーション用のソースコードである。
たクライアントスタブ23は、アプリケーションプログ
ラム22とリンクしてメッセージをサーバ11のアクセ
ス制御ブロック12−1〜12−3に対して送信するク
ライアントアプリケーション用のソースコードである。
【0027】図4は、図1におけるサーバ11の詳細な
構成を示すブロック図である。サーバ11は、サーバオ
ブジェクト13を備えて構成される。このサーバオブジ
ェクト13には、オペレーションop1()〜op
5()を有するオペレーション部14と、スタブ15−
1〜15−5を有するサーバスタブ部15と、が設けら
れる。
構成を示すブロック図である。サーバ11は、サーバオ
ブジェクト13を備えて構成される。このサーバオブジ
ェクト13には、オペレーションop1()〜op
5()を有するオペレーション部14と、スタブ15−
1〜15−5を有するサーバスタブ部15と、が設けら
れる。
【0028】オペレーションop1()〜op5()が
実際にクライアントマシン2−1〜2−nからの処理を
実行するものである。スタブ15−1〜15−5は、サ
ーバ11用のソースコードであり、それぞれオペレーシ
ョンop1()〜op5()と1対1に対応している。
実際にクライアントマシン2−1〜2−nからの処理を
実行するものである。スタブ15−1〜15−5は、サ
ーバ11用のソースコードであり、それぞれオペレーシ
ョンop1()〜op5()と1対1に対応している。
【0029】具体例では、オペレーションop1()〜
op3()を、それぞれadd_user()、remomove()、user
_list()に相当する管理用のオペレーションとし、オペ
レーションop4()、op5()を、それぞれprint1
()、 print2()に相当するサービス用のオペレーション
とする。
op3()を、それぞれadd_user()、remomove()、user
_list()に相当する管理用のオペレーションとし、オペ
レーションop4()、op5()を、それぞれprint1
()、 print2()に相当するサービス用のオペレーション
とする。
【0030】このようなサーバ11の構成により、全て
のオペレーションop1()〜op3()はサーバオブ
ジェクト13によってサポートされる。図中、矢印はア
クセス制御ブロック12−1、12−2、12−3から
それぞれアクセス可能なオペレーションを示し、オペレ
ーションop1()〜op5()はアクセス制御ブロッ
ク12−1〜12−3によって参照される。
のオペレーションop1()〜op3()はサーバオブ
ジェクト13によってサポートされる。図中、矢印はア
クセス制御ブロック12−1、12−2、12−3から
それぞれアクセス可能なオペレーションを示し、オペレ
ーションop1()〜op5()はアクセス制御ブロッ
ク12−1〜12−3によって参照される。
【0031】即ち、アクセス制御ブロック12−1〜1
2−3は、オペレーションop1()〜op5()のオ
ペレーションコードを共有することになる。尚、どのよ
うなオペレーションを実装し、アクセス制御ブロック1
2をどのように実装するかについては、システム設計者
によって設計される。
2−3は、オペレーションop1()〜op5()のオ
ペレーションコードを共有することになる。尚、どのよ
うなオペレーションを実装し、アクセス制御ブロック1
2をどのように実装するかについては、システム設計者
によって設計される。
【0032】〈動作〉図5は、アクセス制御ブロック1
2−1〜12−3等の実装手順を示すフローチャートで
あり、この図5に基づいてかかる実装手順を説明する。
尚、図中、「S」はステップを示す。
2−1〜12−3等の実装手順を示すフローチャートで
あり、この図5に基づいてかかる実装手順を説明する。
尚、図中、「S」はステップを示す。
【0033】ステップ1では、ODLファイルに基づい
てオブジェクトの実装定義が作成される。ステップ2で
は、ODLツールによってODLファイルをコンパイル
する。これによりクライアントマシン2−1〜2−nに
は、クライアントスタブ23が生成され、サーバマシン
1には、サーバスタブ部15と、ヘッダファイルと、が
生成され、オブジェクトを作成するために必要となるク
ラス定義は、このヘッダファイルに含まれている。
てオブジェクトの実装定義が作成される。ステップ2で
は、ODLツールによってODLファイルをコンパイル
する。これによりクライアントマシン2−1〜2−nに
は、クライアントスタブ23が生成され、サーバマシン
1には、サーバスタブ部15と、ヘッダファイルと、が
生成され、オブジェクトを作成するために必要となるク
ラス定義は、このヘッダファイルに含まれている。
【0034】ステップ3では、サーバオブジェクト13
のオペレーション部14にオペレーションop1()〜
op5()を実装し、ODLツールによって生成された
サーバスタブ部15にオペレーションop1()〜op
5()が実装されたことを示すコードを出力する。
のオペレーション部14にオペレーションop1()〜
op5()を実装し、ODLツールによって生成された
サーバスタブ部15にオペレーションop1()〜op
5()が実装されたことを示すコードを出力する。
【0035】ステップ4では、アクセス制御ブロック1
2−1〜12−3を実装し、サーバスタブ部15にアク
セス制御ブロック12−1〜12−3が実装されたこと
を示すコードを出力する。
2−1〜12−3を実装し、サーバスタブ部15にアク
セス制御ブロック12−1〜12−3が実装されたこと
を示すコードを出力する。
【0036】ステップ5では、サーバスタブ部15から
コードを読み込んで実行ファイルを作成する。この実行
ファイルによってオペレーションop1()〜op
5()にアクセスして提供されるサービスが実行され
る。
コードを読み込んで実行ファイルを作成する。この実行
ファイルによってオペレーションop1()〜op
5()にアクセスして提供されるサービスが実行され
る。
【0037】図6は、このように実装された構成に基づ
いて実際にクライアントからサーバ11にアクセスする
ときの動作を示すフローチャートである。ステップ11
では、例えばトレーダ、ネーミングサービス等のサービ
スの提供を受けてクライアント側でインタフェースリフ
ァレンスを取得する。これにより提供されているサービ
スのオペレーションがどこにあるのかが判別される。
いて実際にクライアントからサーバ11にアクセスする
ときの動作を示すフローチャートである。ステップ11
では、例えばトレーダ、ネーミングサービス等のサービ
スの提供を受けてクライアント側でインタフェースリフ
ァレンスを取得する。これにより提供されているサービ
スのオペレーションがどこにあるのかが判別される。
【0038】ステップ12では、オペレーションop1
()〜op5()へのアクセス権を判定するためのコー
ドとして、ユーザID、パスワードをメッセージに挿入
する。メッセージはサーバ11に送信する処理用のデー
タ等であり、ユーザID、パスワードは予めクライアン
トマシン2−1〜2−n上のクライアント、サーバ11
側で認識できるように取り決められたものである。
()〜op5()へのアクセス権を判定するためのコー
ドとして、ユーザID、パスワードをメッセージに挿入
する。メッセージはサーバ11に送信する処理用のデー
タ等であり、ユーザID、パスワードは予めクライアン
トマシン2−1〜2−n上のクライアント、サーバ11
側で認識できるように取り決められたものである。
【0039】尚、アクセス権判定用のコードとしては、
ユーザID、パスワードのうちのいずれか一方だけであ
ってもよいし、また、アクセス権を判定できればユーザ
ID、パスワード以外のものを用いても構わない。ステ
ップ13では、ユーザID、パスワードを挿入したメッ
セージを、サーバ11に送信する。
ユーザID、パスワードのうちのいずれか一方だけであ
ってもよいし、また、アクセス権を判定できればユーザ
ID、パスワード以外のものを用いても構わない。ステ
ップ13では、ユーザID、パスワードを挿入したメッ
セージを、サーバ11に送信する。
【0040】図7はサーバマシン1のサーバ11がこの
メッセージを受け取ったときの動作を示すフローチャー
トである。ステップ21では、クライアントから送信さ
れたメッセージを受信し、アクセス制御ブロック12−
1〜12−3において、このメッセージに挿入されたユ
ーザID、パスワードを認証する。
メッセージを受け取ったときの動作を示すフローチャー
トである。ステップ21では、クライアントから送信さ
れたメッセージを受信し、アクセス制御ブロック12−
1〜12−3において、このメッセージに挿入されたユ
ーザID、パスワードを認証する。
【0041】ステップ22では、メッセージを送信した
クライアントにアクセス権があるかどうかを、認証した
ユーザID、パスワードに基づいて判断する。この判断
は、アクセス制御ブロック12−1〜12−3によって
インタフェース毎に行われる。
クライアントにアクセス権があるかどうかを、認証した
ユーザID、パスワードに基づいて判断する。この判断
は、アクセス制御ブロック12−1〜12−3によって
インタフェース毎に行われる。
【0042】例えばadd_user()、remomove()、user_lis
t()に相当するオペレーションop1()〜op3()
に対して、各クライアントマシン2−1〜2−nからメ
ッセージが送信されたときは、Managerインタフェース
に対応したアクセス制御ブロック12−1がアクセス権
の有無を判定する。
t()に相当するオペレーションop1()〜op3()
に対して、各クライアントマシン2−1〜2−nからメ
ッセージが送信されたときは、Managerインタフェース
に対応したアクセス制御ブロック12−1がアクセス権
の有無を判定する。
【0043】例えば、クライアントマシン2−1上のク
ライアントには、アクセス権が設定され、クライアント
マシン2−n上のクライアントにアクセス権が設定され
ていない場合に、前者のクライアントからメッセージが
送信されたときは、アクセス制御ブロック12−1によ
ってアクセス権があると判定されてステップ23に進
む。
ライアントには、アクセス権が設定され、クライアント
マシン2−n上のクライアントにアクセス権が設定され
ていない場合に、前者のクライアントからメッセージが
送信されたときは、アクセス制御ブロック12−1によ
ってアクセス権があると判定されてステップ23に進
む。
【0044】ステップ23では、アクセスを許可し、ス
タブ15−1〜15−3を介して指定されたオペレーシ
ョンop1()〜op3()をそれぞれコールする。要
求された処理は、コールされたオペレーションop
1()〜op3()によって実行される。
タブ15−1〜15−3を介して指定されたオペレーシ
ョンop1()〜op3()をそれぞれコールする。要
求された処理は、コールされたオペレーションop
1()〜op3()によって実行される。
【0045】一方、後者のクライアントからメッセージ
が送信されたときは、アクセス制御ブロック12−1に
よってアクセス権がないと判定されてステップ24に進
み、その要求を拒否する。このようにして、各クライア
ントからのアクセスに対し、インタフェース毎にアクセ
ス制御が行われる。尚、ステップ22が判定手段に相当
し、アクセス制御ブロック12−1〜12−3及びステ
ップ23,24がアクセス制御手段に相当する。
が送信されたときは、アクセス制御ブロック12−1に
よってアクセス権がないと判定されてステップ24に進
み、その要求を拒否する。このようにして、各クライア
ントからのアクセスに対し、インタフェース毎にアクセ
ス制御が行われる。尚、ステップ22が判定手段に相当
し、アクセス制御ブロック12−1〜12−3及びステ
ップ23,24がアクセス制御手段に相当する。
【0046】〈具体例の効果〉以上、具体例によれば、
サーバ(オブジェクト)が複数のインタフェースを管理
するようなTINA−DPEをモデルとした分散システ
ムにおいて、インタフェース毎にアクセス制御ブロック
12−1〜12−3を備えるようにしたので、インタフ
ェース毎にアクセス制御を行うことができる。また、各
アクセス制御ブロック12−1〜12−3が参照するオ
ペレーションコードを共有化するようにしたので、同一
オペレーションを一つのコードに集約することが可能と
なり、同一オペレーションコードを重複して記述しなく
てもよくなる。このため、サーバ開発にかかるコストを
削減することができる。
サーバ(オブジェクト)が複数のインタフェースを管理
するようなTINA−DPEをモデルとした分散システ
ムにおいて、インタフェース毎にアクセス制御ブロック
12−1〜12−3を備えるようにしたので、インタフ
ェース毎にアクセス制御を行うことができる。また、各
アクセス制御ブロック12−1〜12−3が参照するオ
ペレーションコードを共有化するようにしたので、同一
オペレーションを一つのコードに集約することが可能と
なり、同一オペレーションコードを重複して記述しなく
てもよくなる。このため、サーバ開発にかかるコストを
削減することができる。
【0047】また、サーバ開発者はどのアクセス制御ブ
ロックからどのオペレーションを起動するかを予め設定
しておけば、サーバの構成はソフトウェアによって自動
的に生成されるため、さらにサーバ開発にかかるコスト
を削減することができ、アクセス制御ブロックによって
クライアントのアクセスを各インタフェース毎に管理す
ることができるので、管理も容易となる。
ロックからどのオペレーションを起動するかを予め設定
しておけば、サーバの構成はソフトウェアによって自動
的に生成されるため、さらにサーバ開発にかかるコスト
を削減することができ、アクセス制御ブロックによって
クライアントのアクセスを各インタフェース毎に管理す
ることができるので、管理も容易となる。
【0048】また、アクセス権判定用のコードとして、
ユーザID及びパスワードを用いたので、アクセスした
クライアントにアクセス権があるか否かを容易に、しか
も確実に判定することができる。
ユーザID及びパスワードを用いたので、アクセスした
クライアントにアクセス権があるか否かを容易に、しか
も確実に判定することができる。
【図1】本発明の実施の形態の具体例における分散シス
テムの構成を示すブロック図である。
テムの構成を示すブロック図である。
【図2】従来のCORBAのIDLファイルの記述例を
示す説明図である。
示す説明図である。
【図3】具体例のODLファイルの一例を示す説明図で
ある。
ある。
【図4】図1のサーバマシンにおける構成を示すブロッ
ク図である。
ク図である。
【図5】図1のアクセス制御ブロック等の実装手順を示
すフローチャートである。
すフローチャートである。
【図6】具体例のクライアントの動作を示すフローチャ
ートである。
ートである。
【図7】具体例のサーバの動作を示すフローチャートで
ある。
ある。
1 サーバマシン 2 クライアントマシン 3 ネットワーク 12 アクセス制御ブロック(12−1〜12−3)
Claims (2)
- 【請求項1】 複数のコンピュータをネットワーク接続
し、所定のサービスを実行するオペレーションにアクセ
スするためのインタフェースを、処理を要求するクライ
アントオブジェクトに応じて区分し、処理を提供するサ
ーバオブジェクトを複数のインタフェースによって定義
し、該定義に基づいてサーバにオペレーションを実装
し、クライアントがサーバ上のオペレーションにアクセ
スするように構成された分散システムにおいて、 前記クライアントは、オペレーションにアクセスするた
めのアクセス権を判定するためのコードを含むメッセー
ジをサーバに送信するように構成され、 前記サーバは、送信されたメッセージに含まれたコード
に基づいて、オペレーションへのアクセス権があるか否
かをインタフェース毎に判定する判定手段と、 該判定手段によってアクセス権があると判定されたとき
は、オペレーションへのアクセスを許可し、アクセス権
がないと判定されたときは、アクセスを許可しないアク
セス制御手段と、を備えて構成されたことを特徴とする
分散システム。 - 【請求項2】 前記アクセス権を判定するためのコード
は、ユーザ識別番号及び所定のパスワードのうち、少な
くとも1つであることを特徴とする請求項1に記載の分
散システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10344010A JP2000172653A (ja) | 1998-12-03 | 1998-12-03 | 分散システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10344010A JP2000172653A (ja) | 1998-12-03 | 1998-12-03 | 分散システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2000172653A true JP2000172653A (ja) | 2000-06-23 |
Family
ID=18365970
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10344010A Pending JP2000172653A (ja) | 1998-12-03 | 1998-12-03 | 分散システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2000172653A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006252536A (ja) * | 2005-03-08 | 2006-09-21 | Microsoft Corp | レガシーコンポーネントのための動的サービスの生成 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09212367A (ja) * | 1995-12-29 | 1997-08-15 | Internatl Business Mach Corp <Ibm> | オブジェクトへのアクセスを制御するための方法及び情報処理システム |
JPH09212365A (ja) * | 1996-01-03 | 1997-08-15 | Internatl Business Mach Corp <Ibm> | 分散コンピューティング環境でのオブジェクト・セキュリティ・サービス認可の統合を含む情報取り扱いシステム、方法および製品 |
JPH09212366A (ja) * | 1995-12-29 | 1997-08-15 | Internatl Business Mach Corp <Ibm> | オブジェクトへのアクセスを制御するための方法及び情報処理システム |
-
1998
- 1998-12-03 JP JP10344010A patent/JP2000172653A/ja active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09212367A (ja) * | 1995-12-29 | 1997-08-15 | Internatl Business Mach Corp <Ibm> | オブジェクトへのアクセスを制御するための方法及び情報処理システム |
JPH09212366A (ja) * | 1995-12-29 | 1997-08-15 | Internatl Business Mach Corp <Ibm> | オブジェクトへのアクセスを制御するための方法及び情報処理システム |
JPH09212365A (ja) * | 1996-01-03 | 1997-08-15 | Internatl Business Mach Corp <Ibm> | 分散コンピューティング環境でのオブジェクト・セキュリティ・サービス認可の統合を含む情報取り扱いシステム、方法および製品 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006252536A (ja) * | 2005-03-08 | 2006-09-21 | Microsoft Corp | レガシーコンポーネントのための動的サービスの生成 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220070122A1 (en) | Method and Apparatus for Composite User Interface Generation | |
JP3853592B2 (ja) | 分散ウェブアプリケーションサーバ | |
JP4729172B2 (ja) | 宣言型パラダイムをサポートするステートレスなウェブ環境におけるトランザクションを実行するための方法および装置 | |
EP0501610B1 (en) | Object oriented distributed computing system | |
EP1027795B1 (en) | Method and apparatus for implementing an extensible authentication mechanism in a web application server | |
US6356931B2 (en) | Method and system for remotely browsing objects | |
AU746391B2 (en) | Method and system for facilitating distributed software development in a distribution unaware manner | |
US5758069A (en) | Electronic licensing system | |
US6851118B1 (en) | Remote object access | |
US6845505B1 (en) | Web request broker controlling multiple processes | |
JPH0827726B2 (ja) | 共通エージェント・コンピュータ管理システムと方法 | |
JPH09223116A (ja) | 複数ミドルウェアに渡る分散オブジェクトの位置透過性 | |
US6748436B1 (en) | System, method and program for management of users, groups, servers and resources in a heterogeneous network environment | |
EP1208461A1 (en) | Entitlement management and access control system | |
WO2003093943A2 (en) | Systems and methods for application view transactions | |
US6732360B1 (en) | System and method for providing connection between client and heterogeneous database management systems | |
US6832223B1 (en) | Method and system for facilitating access to a lookup service | |
JP3173361B2 (ja) | コンピュータシステム | |
US20080281969A1 (en) | Controlling access to versions of application software by a server, based on site ID | |
US20040139144A1 (en) | Using web services to access computational grids by non-members of the grid | |
EP1061445A2 (en) | Web-based enterprise management with transport neutral client interface | |
US6308226B1 (en) | Communication method and system for objects movable in network | |
JP2000172653A (ja) | 分散システム | |
JP2005523513A (ja) | オペレーティングシステムオプション価値を管理するためのシステムおよび方法 | |
JP2003303108A (ja) | Corba分散処理システムおよびcorba分散処理システムの優先度マップ管理方法およびcorba分散プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20040406 |