JP4688591B2 - Object control apparatus and control method thereof - Google Patents
Object control apparatus and control method thereof Download PDFInfo
- Publication number
- JP4688591B2 JP4688591B2 JP2005200587A JP2005200587A JP4688591B2 JP 4688591 B2 JP4688591 B2 JP 4688591B2 JP 2005200587 A JP2005200587 A JP 2005200587A JP 2005200587 A JP2005200587 A JP 2005200587A JP 4688591 B2 JP4688591 B2 JP 4688591B2
- Authority
- JP
- Japan
- Prior art keywords
- container
- bundle
- request
- stored
- computer
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Storage Device Security (AREA)
Description
本発明は、オブジェクト制御装置とその制御方法に関するものである。 The present invention relates to an object control apparatus and a control method therefor.
Java(登録商標)で実現されるようなオブジェクト制御装置では、スレッドに管理されるオブジェクトのクラスとメソッドの名前が、当該コンピュータ内のJava(登録商標)仮想マシンによって呼び出しスタックに記憶されるので、アクセスコントローラ(非特許文献1)が、この呼び出しスタックを参照することで、オブジェクトのクラスとメソッドを知ることができる(非特許文献2)。
しかし、知ることができるのは、あくまでもオブジェクトのクラスとメソッドであり、スレッドに管理されるオブジェクトを知ることはできない。なお、呼び出しスタックを参照しても、クラスおよびメソッドの名前が他のものと同じならば、それらを識別することすらできない。また、かかるコンピュータ内では、オブジェクト間通信が行われるものの、これは実際には、指定したオブジェクトと通信とするような、オブジェクトを識別した上での通信ではなかった。 However, what can be known is only the class and method of the object, and the object managed by the thread cannot be known. Note that even if you refer to the call stack, if the class and method names are the same as others, you cannot even identify them. In addition, although inter-object communication is performed in such a computer, this is not actually communication after identifying an object, such as communication with a designated object.
ところで、昨今では、同一のクラスから生成された複数のオブジェクトのそれぞれに、独自の所有権やアクセス権を設定し、特定の所有権等をもつオブジェクトだけに情報を公開しなければならない場合がある。例えば、ホームネットワークに接続されたテレビ受像機との通信を行うオブジェクトであっても、リビングルームにあるテレビ受像機との通信を行うオブジェクトと、書斎にあるテレビ受像機との通信を行うオブジェクトとでは、所有権等が異なるので、これらを識別する必要がある。 By the way, in recent years, it is sometimes necessary to set unique ownership and access rights to each of a plurality of objects generated from the same class, and to disclose information only to objects having specific ownerships. . For example, an object that communicates with a television receiver connected to a home network, an object that communicates with a television receiver in a living room, and an object that communicates with a television receiver in a study Then, since ownership is different, it is necessary to identify them.
しかし、アクセスコントローラでは、このようなオブジェクト単位での識別が出来なかった。 However, the access controller could not identify such an object unit.
また、セキュリティの観点から、クラスを含むプログラム(ソースコードなど)への改ざんを防止することで、間接的にオブジェクトの改ざんを防止することがある。しかし、これはオブジェクトごとに改ざんを防止しているのではなく、プログラムの改ざんを防止することで、このプログラム内のクラスにより生成されたスレッドに管理される全てのオブジェクトの改ざんを包括的に防止しているにすぎない。 Also, from the viewpoint of security, there are cases where the alteration of an object indirectly is prevented by preventing the alteration to a program (such as source code) including a class. However, this does not prevent tampering for each object, but prevents tampering of all the objects managed by threads generated by classes in this program by preventing tampering of the program. I'm just doing it.
一方、別々のベンダーによって作られたプログラムを協調動作させるための、OSGiなどのプラットフォームをJava(登録商標)仮想マシンとともに用いる場合、オブジェクトはサービスとしてプラットフォームに登録され相互に利用される(非特許文献3)。このサービスの識別には、String列で構成されるService.idやService.pidが使われるが、これらは閲覧が許可されているので、偽のオブジェクト(サービス)によるオブジェクトの呼出しに使用されるおそれがある。 On the other hand, when a platform such as OSGi for cooperating programs created by different vendors is used with a Java (registered trademark) virtual machine, an object is registered in the platform as a service and used mutually (Non-Patent Document). 3). For identification of this service, the Service. Although id and Service.pid are used, since browsing is permitted, there exists a possibility that it may be used for the call of the object by a fake object (service).
また、かかるプラットフォームが用いられる場合には、オブジェクトが生成されるときに実行されたプログラム(OSGiでは、一連の動作に必要なプログラムをバンドルという)を示すバンドルIDがスタックされるバンドルIDスタックを参照することで、バンドルIDを知ることができるが、これはあくまでバンドルIDであり、管理されるオブジェクトを知ることはできない。 When such a platform is used, a bundle ID stack in which a bundle ID indicating a program executed when an object is generated (OSGi refers to a program necessary for a series of operations is referred to as a bundle) is referred to. By doing this, it is possible to know the bundle ID, but this is only the bundle ID, and the managed object cannot be known.
これらの場合とは別に、各オブジェクトに一意に識別子を与える方法が提案されている(非特許文献3)。しかし、偽のオブジェクトによる呼出しを防止する技術は開示されておらず、そのため、かかる呼び出しが行われるおそれがある。よって、オブジェクトの識別子の信頼性を担保する必要がある。 Apart from these cases, a method for uniquely giving an identifier to each object has been proposed (Non-Patent Document 3). However, a technique for preventing a call by a fake object is not disclosed, and therefore, such a call may be performed. Therefore, it is necessary to ensure the reliability of the object identifier.
また、分散オブジェクトの分野では、識別子の代わりとなる、各オブジェクトに固有の鍵ペアによる公開鍵暗号方式を利用することで、偽のオブジェクトによる呼び出しを防止することができる(非特許文献4)。しかし、各オブジェクトが秘密鍵を生成するので、各オブジェクトは信頼性の高い秘密鍵を生成するという、負荷の大きい処理を行う必要がある。また、オブジェクトの呼び出しごとに公開鍵暗号の復号化が必要であり、オブジェクトの呼び出しが増加すると、コンピュータのパフォーマンスが下がる場合がある。 Moreover, in the field of distributed objects, a call by a fake object can be prevented by using a public key cryptosystem using a key pair unique to each object instead of an identifier (Non-patent Document 4). However, since each object generates a secret key, it is necessary for each object to perform a heavy load process of generating a highly reliable secret key. Also, it is necessary to decrypt the public key encryption for each object call, and if the number of object calls increases, the performance of the computer may decrease.
本発明は、上記課題に鑑みなされたものであり、その目的とするところは、スレッドに利用されるオブジェクトの識別が可能なオブジェクト制御装置とその制御方法を提供することにある。 The present invention has been made in view of the above problems, and an object of the present invention is to provide an object control apparatus capable of identifying an object used for a thread and a control method therefor.
上記の課題を解決するために、請求項1の本発明は、コンピュータ内での実行が可能なプログラムであるバンドルに含まれるクラスが実行されることによりスレッド及び当該スレッドに利用されるオブジェクトが生成されるとともに、当該オブジェクトからの処理要求を他のオブジェクトが受信したときに当該実行されたバンドルを示すバンドルIDが記憶された後当該他のオブジェクトが生成されたときに実行されたバンドルのバンドルIDが記憶されるバンドルIDスタックを有するコンピュータであるオブジェクト制御装置において、当該コンピュータ内での実行が可能なバンドルであって選択されたバンドルのバンドルIDが記憶されるバンドルID記憶部と、当該コンピュータ内のオブジェクトが生成された後、当該オブジェクトから当該オブジェクトのオブジェクトIDの生成の要求があった場合、当該オブジェクトが生成されたときに実行されたバンドルのバンドルIDを前記バンドルIDスタックから取得し、当該取得したバンドルIDが前記バンドルID記憶部に記憶されているか否かを判定し、記憶されている場合、当該オブジェクトのオブジェクトIDを生成するオブジェクトID生成手段とを備えることを特徴とするオブジェクト制御装置をもって解決手段とする。
In order to solve the above problem, the present invention of
請求項2の本発明は、前記オブジェクトID生成手段により生成されたオブジェクトIDが記憶され、当該オブジェクトIDに、当該オブジェクトIDのオブジェクトが生成されたときに実行されたバンドルのバンドルIDが対応づけられるオブジェクトID記憶部を備えることを特徴とする請求項1記載のオブジェクト制御装置をもって解決手段とする。
In the present invention of
請求項3の本発明は、前記コンピュータ内のオブジェクトからオブジェクトIDの認証の要求があった場合、当該オブジェクトIDが前記オブジェクトID記憶部に記憶されているか否かを判定し、記憶されている場合、当該オブジェクトIDに対応づけられたバンドルIDが前記バンドルID記憶部に記憶されているか否かを判定し、記憶されている場合、当該認証が成功したことを示す認証結果を当該オブジェクトに送信するオブジェクトID認証手段を備えることを特徴とする請求項2記載のオブジェクト制御装置をもって解決手段とする。
In the third aspect of the present invention, when an object ID authentication request is received from an object in the computer, it is determined whether or not the object ID is stored in the object ID storage unit. , It is determined whether or not a bundle ID associated with the object ID is stored in the bundle ID storage unit, and if it is stored, an authentication result indicating that the authentication is successful is transmitted to the object. and solutions with a object control system according to
請求項4の本発明は、前記コンピュータ内に生成されるオブジェクトであるコンテナオブジェクトであって当該コンテナオブジェクトへの他のオブジェクトに対する処理要求及び当該他のオブジェクトによる処理結果たる情報の記憶と当該コンテナオブジェクトからの当該情報の取得とが行われる当該コンテナオブジェクトを生成すべく当該コンピュータ内のオブジェクトから要求があった場合、前記オブジェクトID認証手段に当該オブジェクトのオブジェクトIDの認証の要求を行い、当該認証が成功したことを示す処理結果が送信された場合、当該コンテナオブジェクトを生成するコンテナ生成手段を備えることを特徴とする請求項3記載のオブジェクト制御装置をもって解決手段とする。
The present invention of
請求項5の本発明は、前記コンテナ生成手段は、コンテナオブジェクトの生成の際に要求を行ったオブジェクトから送信されるオブジェクトIDを当該コンテナオブジェクトに記憶させるものであり、当該コンテナオブジェクトは、当該コンテナオブジェクトへの情報記憶、当該コンテナオブジェクト内の情報操作および当該コンテナオブジェクトからの情報取得の内のいずれかの要求が当該コンピュータ内のオブジェクトからあった場合、当該オブジェクトのオブジェクトIDが当該コンテナオブジェクトに記憶されているか否かを判定し、記憶されている場合、前記オブジェクトID認証手段に当該オブジェクトのオブジェクトIDの認証の要求を行い、当該認証が成功したことを示す処理結果が送信された場合、当該要求に応じることを特徴とする請求項4記載のオブジェクト制御装置をもって解決手段とする。
The present invention of claim 5, wherein the container generation means, the object ID transmitted from the object making the request in the generation of container object is intended to be stored in the container object, the container object, the When any of the information storage in the container object, information operation in the container object, and information acquisition from the container object is requested from the object in the computer, the object ID of the object is stored in the container object. It determines whether it is stored, if it is stored, when the authenticate request object ID of the object in the object ID authentication means, the processing result indicating that the person authentication is successful is transmitted Responding to the request And solutions with a object control system according to
請求項6の本発明は、前記コンテナ生成手段により生成されるコンテナオブジェクトの存在通知を伴って当該コンピュータ内のオブジェクトへなされる要求により当該オブジェクトが当該コンテナオブジェクトの存在通知を伴う他のオブジェクトへの要求を行うということを連鎖的に2回以上行うという指示内容の中でのいずれかの要求を受ける各オブジェクトの中で最初に要求を受けるオブジェクトへの要求を行うとともに当該オブジェクトへ当該指示内容を通知するオブジェクトが、前記コンテナ生成手段に当該コンテナオブジェクトの生成の要求を行うとともに当該指示内容の中でのいずれかの要求を受ける各オブジェクトのオブジェクトIDの中の一部のオブジェクトIDを当該コンテナオブジェクトに記憶することを特徴とする請求項5記載のオブジェクト制御装置をもって解決手段とする。
According to the present invention of
請求項7の本発明は、コンピュータ内での実行が可能なプログラムであるバンドルに含まれるクラスが実行されることによりスレッド及び当該スレッドに利用されるオブジェクトが生成されるとともに、当該オブジェクトからの処理要求を他のオブジェクトが受信したときに当該実行されたバンドルを示すバンドルIDが記憶された後当該他のオブジェクトが生成されたときに実行されたバンドルのバンドルIDが記憶されるバンドルIDスタックを有するコンピュータであるオブジェクト制御装置の制御方法において、当該コンピュータ内での実行が可能なバンドルであって選択されたバンドルのバンドルIDが記憶されるバンドルID記憶部を当該オブジェクト制御装置が備えており、当該コンピュータ内のオブジェクトID生成手段が、当該コンピュータ内のオブジェクトが生成された後、当該オブジェクトから当該オブジェクトのオブジェクトIDの生成の要求があった場合、当該オブジェクトが生成されたときに実行されたバンドルのバンドルIDを前記バンドルIDスタックから取得し、当該取得したバンドルIDが前記バンドルID記憶部に記憶されているか否かを判定し、記憶されている場合、当該オブジェクトのオブジェクトIDを生成することを特徴とするオブジェクト制御装置の制御方法をもって解決手段とする。 According to the seventh aspect of the present invention, a thread and an object used for the thread are generated by executing a class included in a bundle that is a program that can be executed in a computer, and processing from the object is performed. A bundle ID stack that stores the bundle ID of the bundle executed when the other object is generated after the bundle ID indicating the executed bundle is stored when the other object receives the request the control method for object control device is a computer provided with a bundle ID storage unit bundle ID bundles execution within the computer has been selected a bundle that can be stored is the object control device, the Object ID generation means in the computer After the object in the computer is generated, acquired when a request for generating from the object of the object ID of the object, the bundle ID of the bundle which is executed when the corresponding object is generated from the bundle ID stack And determining whether or not the acquired bundle ID is stored in the bundle ID storage unit and, if stored, generating an object ID of the object, with a control method for an object control device, Let it be a solution.
請求項8の本発明は、前記オブジェクトID生成手段により生成されたオブジェクトIDが記憶され、当該オブジェクトIDに、当該オブジェクトIDのオブジェクトが生成されたときに実行されたバンドルのバンドルIDが対応づけられるオブジェクトID記憶部を当該オブジェクト制御装置が備えることを特徴とする請求項7記載のオブジェクト制御装置の制御方法をもって解決手段とする。
In the present invention of claim 8, the object ID generated by the object ID generation means is stored, and the bundle ID of the bundle executed when the object of the object ID is generated is associated with the object ID. object ID storage unit and solutions with a control method of an object control system according to
請求項9の本発明は、前記コンピュータ内のオブジェクトID認証手段が、前記コンピュータ内のオブジェクトからオブジェクトIDの認証の要求があった場合、当該オブジェクトIDが前記オブジェクトID記憶部に記憶されているか否かを判定し、記憶されている場合、当該オブジェクトIDに対応づけられたバンドルIDが前記バンドルID記憶部に記憶されているか否かを判定し、記憶されている場合、当該認証が成功したことを示す認証結果を当該オブジェクトに送信することを特徴とする請求項8記載のオブジェクト制御装置の制御方法をもって解決手段とする。 According to the ninth aspect of the present invention , when the object ID authenticating means in the computer requests an object ID authentication from an object in the computer, whether or not the object ID is stored in the object ID storage unit. If it is stored, it is determined whether or not the bundle ID associated with the object ID is stored in the bundle ID storage unit, and if it is stored, the authentication is successful. an authentication result indicating that the solutions have a control method of an object control device according to claim 8, wherein that you send to the object.
請求項10の本発明は、前記コンピュータ内のコンテナ生成手段が、前記コンピュータ内に生成されるオブジェクトであるコンテナオブジェクトであって当該コンテナオブジェクトへの他のオブジェクトに対する処理要求及び当該他のオブジェクトによる処理結果たる情報の記憶と当該コンテナオブジェクトからの当該情報の取得とが行われる当該コンテナオブジェクトを生成すべく当該コンピュータ内のオブジェクトから要求があった場合、前記オブジェクトID認証手段に当該オブジェクトのオブジェクトIDの認証の要求を行い、当該認証が成功したことを示す処理結果が送信された場合、当該コンテナオブジェクトを生成することを特徴とする請求項9記載のオブジェクト制御装置の制御方法をもって解決手段とする。
The present invention of claim 10, the container generation means in said computer, processing by the other processing requests for objects and the other objects of a container object is an object that is created in the computer to the container object When there is a request from the object in the computer to generate the container object for storing the resulting information and acquiring the information from the container object, the object ID authenticating means stores the object ID of the object. authenticate request, if the processing result indicating that the person authentication is successful is transmitted, and solutions with a control method of an object control system according to
請求項11の本発明は、前記コンテナ生成手段は、コンテナオブジェクトの生成の際に要求を行ったオブジェクトから送信されるオブジェクトIDを当該コンテナオブジェクトに記憶させるものであり、当該コンテナオブジェクトは、当該コンテナオブジェクトへの情報記憶、当該コンテナオブジェクト内の情報操作および当該コンテナオブジェクトからの情報取得の内のいずれかの要求が当該コンピュータ内のオブジェクトからあった場合、当該オブジェクトのオブジェクトIDが当該コンテナオブジェクトに記憶されているか否かを判定し、記憶されている場合、前記オブジェクトID認証手段に当該オブジェクトのオブジェクトIDの認証の要求を行い、当該認証が成功したことを示す処理結果が送信された場合、当該要求に応じることを特徴とする請求項10記載のオブジェクト制御装置の制御方法をもって解決手段とする。
The present invention of
請求項12の本発明は、前記コンテナ生成手段により生成されるコンテナオブジェクトの存在通知を伴って当該コンピュータ内のオブジェクトへなされる要求により当該オブジェクトが当該コンテナオブジェクトの存在通知を伴う他のオブジェクトへの要求を行うということを連鎖的に2回以上行うという指示内容の中でのいずれかの要求を受ける各オブジェクトの中で最初に要求を受けるオブジェクトへの要求を行うとともに当該オブジェクトへ当該指示内容を通知するオブジェクトが、前記コンテナ生成手段に当該コンテナオブジェクトの生成の要求を行うとともに当該指示内容の中でのいずれかの要求を受ける各オブジェクトのオブジェクトIDの中の一部のオブジェクトIDを当該コンテナオブジェクトに記憶することを特徴とする請求項11記載のオブジェクト制御装置の制御方法をもって解決手段とする。
The present invention of
本発明によれば、予めバンドルIDをバンドルID記憶部に記憶させ、オブジェクトIDの生成の要求があった場合、そのオブジェクトが生成されたときに実行されたバンドルのバンドルIDをバンドルIDスタックから取得し、取得したバンドルIDがバンドルID記憶部に記憶されているか否かを判定し、記憶されている場合、オブジェクトIDを生成することで、信用されたバンドルのバンドルIDをバンドルID記憶部に記憶させたときには、信用されたバンドルが実行されて生成されたオブジェクトのオブジェクトIDのみが生成され、よって、信用されたバンドルが実行されて生成されたオブジェクトの識別が可能となる。 According to the present invention, the bundle ID is stored in the bundle ID storage unit in advance, and when there is a request for generating the object ID, the bundle ID of the bundle executed when the object is generated is acquired from the bundle ID stack. Then, it is determined whether or not the acquired bundle ID is stored in the bundle ID storage unit. If the bundle ID is stored, the bundle ID of the trusted bundle is stored in the bundle ID storage unit by generating the object ID. In this case, only the object ID of the object generated by executing the trusted bundle is generated, and thus the object generated by executing the trusted bundle can be identified.
また、オブジェクトID生成オブジェクトにより生成されたオブジェクトIDが記憶され、当該オブジェクトIDのオブジェクトが生成されたときに実行されたバンドルのバンドルIDが対応づけられるオブジェクトID記憶部と、オブジェクトIDの認証の要求があった場合、オブジェクトIDがオブジェクトID記憶部に記憶されているか否かを判定し、記憶されている場合、オブジェクトIDに対応づけられたバンドルIDがバンドルID記憶部に記憶されているか否かを判定し、記憶されている場合、当該認証が成功したことを示す認証結果を送信するオブジェクトID認証オブジェクトとを設けることで、偽のオブジェクトIDでは認証が失敗し、よって、偽のオブジェクトIDの使用を防止することができる。また、情報の暗号化と複合化が不要なので、コンピュータのパフォーマンス低下を防止することができる。 Also, an object ID generated by the object ID generation object is stored, an object ID storage unit associated with a bundle ID of a bundle executed when the object of the object ID is generated, and an object ID authentication request If there is an object ID, it is determined whether or not the object ID is stored in the object ID storage unit. If it is stored, whether or not the bundle ID associated with the object ID is stored in the bundle ID storage unit. And the object ID authentication object that transmits the authentication result indicating that the authentication has succeeded is provided, the authentication fails with the fake object ID. Use can be prevented. In addition, since the encryption and decryption of information are not required, it is possible to prevent a decrease in computer performance.
また、コンテナオブジェクトを生成すべく要求があった場合、オブジェクトID認証オブジェクトにオブジェクトIDの認証の要求を行い、認証が成功したことを示す処理結果が送信された場合、コンテナオブジェクトを生成するコンテナ生成オブジェクトを設けたことで、偽のオブジェクトIDでは認証が失敗し、よって、偽のオブジェクトIDが使用されてコンテナオブジェクトが生成されるのを防止することができる。 In addition, when there is a request to generate a container object, a request for object ID authentication is made to the object ID authentication object, and when a processing result indicating that the authentication is successful is transmitted, a container generation for generating a container object is generated. By providing an object, authentication fails with a fake object ID, and therefore it is possible to prevent a container object from being generated using a fake object ID.
また、コンテナ生成オブジェクトが、送信されるオブジェクトIDをコンテナオブジェクトに記憶させるようにし、コンテナオブジェクトは、情報記憶、情報操作および情報取得の内のいずれかの要求がオブジェクトからあった場合、そのオブジェクトIDがコンテナオブジェクトに記憶されているか否かを判定し、記憶されている場合、そのオブジェクトIDの認証の要求を行い、認証が成功したことを示す処理結果が送信された場合、要求に応じることで、偽のオブジェクトIDでは認証が失敗し、よって、偽のオブジェクトIDが使用されて、コンテナオブジェクトへの情報記憶、情報操作および情報取得がなされるのを防止することができる。 In addition, the container generation object stores the object ID to be transmitted in the container object, and the container object has its object ID when any of the information storage, information operation, and information acquisition requests is received from the object. Is stored in the container object, and if it is stored, a request for authentication of the object ID is made. If a processing result indicating that the authentication is successful is transmitted, the request can be satisfied. Thus, authentication fails with a fake object ID, and therefore it is possible to prevent a fake object ID from being used to store information in a container object, perform information manipulation, and acquire information.
また、コンテナオブジェクトの存在通知を伴ってオブジェクトへなされる要求により当該オブジェクトがコンテナオブジェクトの存在通知を伴う他のオブジェクトへの要求を行うということを連鎖的に2回以上行うという指示内容の中でのいずれかの要求を受ける各オブジェクトの中で最初に要求を受けるオブジェクトへの要求を行うとともに当該オブジェクトへ当該指示内容を通知するオブジェクトが、コンテナ生成オブジェクトにコンテナオブジェクトの生成の要求を行うとともに指示内容の中でのいずれかの要求を受ける各オブジェクトのオブジェクトIDの中の一部のオブジェクトIDをコンテナ生成オブジェクトに送信することで、コンテナ生成オブジェクト自らによってもコンテナオブジェクトに記憶されずかつ送信されないオブジェクトIDはコンテナオブジェクトには記憶されず、そのオブジェクトIDのオブジェクトがコンテナオブジェクトへ要求を行っても、そのオブジェクトIDでは認証が失敗し、よって、全オブジェクトが協働して指示内容の処理をコンテナオブジェクトを用いて行うようにでき、しかも、その中の一部のオブジェクトについては、そのオブジェクトによるコンテナオブジェクトへの情報記憶、情報操作および情報取得を禁止することができる。 In addition, in the instruction content that the object makes a request to another object accompanied by the container object existence notification by the request made to the object accompanied by the container object existence notice in a chained manner twice or more. Among the objects that receive any of the above requests, the object that first requests the object that receives the request, and the object that notifies the object of the instruction content requests the container generation object to generate the container object and instructs By transmitting a part of the object IDs of the object IDs of the objects receiving any request in the contents to the container generated object, the container generated object itself is not stored in the container object and is not transmitted. The object ID is not stored in the container object, and even if the object with the object ID makes a request to the container object, the authentication fails with the object ID. Therefore, all the objects cooperate to process the instruction content. In addition, information can be prohibited from being stored in the container object, information manipulation, and information acquisition for some of the objects.
以下、本発明の実施の形態を図面を参照して説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
図1は、本実施の形態に係るオブジェクト制御装置とその制御方法を適用したホームネットワークシステムの構成図である。 FIG. 1 is a configuration diagram of a home network system to which an object control device and a control method thereof according to the present embodiment are applied.
ホームサーバ1は、電話機能を有する電話端末2と、スケジュール管理機能を有するコンピュータ3と、電話番号が記憶されたデータであるアドレス帳21ならびに予定行事と予定時刻と予定行事を行うユーザのユーザIDの組を複数備えたスケジュールデータ31が記憶されたデータベースシステム4とに接続されているコンピュータであり、このホームサーバ1は、本発明のオブジェクト制御装置に相当するものである。
The
ホームサーバ1は、コンピュータのハードウェアを仮想的にソフトウェアで実現した仮想マシン11と、ホームサーバ1内に構成されたスレッドおよびオブジェクトを管理するプラットフォーム12と、オブジェクトが生成されるときに実行されるプログラムであるバンドルが1以上記憶されたバンドル記憶部13と、ホームサーバ1内での実行が可能なバンドルであって選択されたバンドルの識別子(以下、識別子をIDという)が記憶されたバンドルID記憶部14と、ホームサーバ1内に構成されたオブジェクトでありかつ当該オブジェクトのIDであるオブジェクトIDを備えたオブジェクトの当該オブジェクトIDが記憶されるオブジェクトID記憶部15を備える。
The
バンドル記憶部13には、電話端末2に対して通信するためのプログラム(クラス)を含むプログラム(バンドル)でありかつ信用できるベンダが作成したバンドル130ならびにコンピュータ3内のスケジュール管理部3Aに対して通信するためのプログラム(クラス)を含むプログラム(バンドル)でありかつ信用できるベンダが作成したバンドル131が記憶されている。なお、バンドル記憶部13には、他の任意のバンドルが記憶されていてもよい。
The
プラットフォーム12では、バンドル記憶部13に記憶されたバンドルの1つが実行されることで、スレッドという処理部が先ず構成される。そして、このスレッドがオブジェクトを1つ以上、ホームサーバ1内に生成する。そして、その中の1つのオブジェクトが、他のオブジェクトまたは他のスレッドにより生成された他のオブジェクトに要求を行い、さらにそのオブジェクトが他のオブジェクトに要求を行うというような流れを、最初の要求元のオブジェクトを生成したスレッドが管理するようになっている。
In the
ホームサーバ1には、バンドル130が実行されることでスレッド120が構成されている。また、その動作中に呼び出されるオブジェクト160,165,1651,1652および1653が構成されている。
In the
また、ホームサーバ1には、バンドル131が実行されることでスレッド121が構成されている。また、その動作中に呼び出されるオブジェクト161,163,164が構成され、オブジェクト165,1651,1652および1653はスレッド121の動作中にも呼び出される。
Further, the thread 121 is configured by executing the bundle 131 in the
オブジェクト160は、電話端末2に対して通信するオブジェクトであり、バンドル130内のあるクラスが実行されることで構成されたものである。以下、オブジェクト160を電話オブジェクト160という。オブジェクト161は、コンピュータ3のスケジュール管理部3Aに対して通信するオブジェクトであり、バンドル131内のあるクラスが実行されることで構成されたものである。以下、オブジェクト161をスケジュール管理オブジェクト161という。オブジェクト163は、スケジュールデータ31内の予定行事と予定時刻とユーザIDの組を予定時刻順にソートするオブジェクトであり、バンドル記憶部13に記憶された他のバンドル内のあるクラスが実行されることで構成されたものである。以下、オブジェクト163をソートオブジェクト163という。オブジェクト165は、データベースシステム4に対して通信するオブジェクトであり、バンドル記憶部13に記憶された他のバンドル内のあるクラスが実行されることで構成されたものである。以下、オブジェクト165をデータベースシステムオブジェクト165という。
The
ホームサーバ1内に構成されるオブジェクトのそれぞれは、ホームサーバ1内で処理を行う処理部とホームサーバ1内に設けられた記憶部とからなり、処理部は記憶部に記憶された内容に対し、これをオブジェクト以外に対して秘匿するために、暗号化などして管理する。以降、冗長化防止のため、これら処理部および記憶部という用語を用いずに説明を行う。
Each of the objects configured in the
プラットフォーム12には、スレッド120についてバンドルIDスタック120Aが構成され、スレッド121についてバンドルIDスタック121Aが構成される。
In the
例えば、バンドルIDスタック120Aでは、スレッド120に管理されるオブジェクトの中で、他のオブジェクトに要求した処理の実行を待っているオブジェクト(要求元)が生成されるときに実行されたバンドルを示すバンドルID(以下、オブジェクトが生成されるときに実行された(オブジェクトの元となる)バンドルのバンドルIDを便宜的に「オブジェクトのバンドルID」という)が記憶され、さらにその上に要求先のオブジェクトのバンドルIDが積み上げられ(スタックされ)、さらにその要求先のオブジェクトが今度は要求元となって他のオブジェクトを要求先として処理を要しその実行を待っているときは、その要求先のオブジェクトのバンドルIDがスタックされ、当該オブジェクトが処理を終えたときに当該バンドルIDが消去され、同様に最も上のバンドルIDが順次に消去されるというような方法で、当該各バンドルIDが適宜スタックあるいは消去される。バンドルIDスタック121Aについても同様である。
For example, in the
ホームサーバ1内の全オブジェクトには、他のオブジェクトから処理を要求される(呼び出される)オブジェクトのために生成されたオブジェクトが含まれる。処理を要求される1つのオブジェクトに対して生成された3つのオブジェクトによりオブジェクト管理部が構成され、このオブジェクト管理部は、当該1つのオブジェクトのオブジェクトIDを予め記憶し、当該1つのオブジェクトへの要求の際にのみ処理を行うようになっている。
All objects in the
ここでは、他のオブジェクトから処理を要求されるデータベースシステムオブジェクト165をオブジェクト管理部165Aが管理することとなっており、オブジェクト管理部165Aは、オブジェクト1651、1652および1653で構成されている。
Here, the object management unit 165A manages the database system object 165 that is requested to be processed by another object, and the object management unit 165A includes
図2は、オブジェクト管理部165Aの構成と当該オブジェクト管理部165Aが用いられるときの要求などの流れを示す図である。 FIG. 2 is a diagram illustrating a configuration of the object management unit 165A and a flow of requests and the like when the object management unit 165A is used.
オブジェクト管理部165Aが備える3つのオブジェクトについて説明する。先ず、オブジェクト1651は、管理対象であるデータベースシステムオブジェクト165による処理を含む指示内容で指示を行うこととなるオブジェクトのオブジェクトIDを生成して当該オブジェクトIDを当該オブジェクトに送信するオブジェクト(以下、オブジェクトID生成オブジェクト1651という)である。オブジェクト1652は、指示内容や処理結果が格納されるコンテナオブジェクトを生成するオブジェクト(以下、コンテナ生成オブジェクト1652という)であり、データベースシステムオブジェクト165のオブジェクトIDを備えている。オブジェクト1653は、コンテナオブジェクトへの処理の指示内容やデータの記憶時および処理時に送信されてくるオブジェクトIDを認証するオブジェクト(以下、オブジェクトID認証オブジェクト1653という)である。なお、この3つのオブジェクトと同様な3つのオブジェクトが、他のオブジェクトを管理する他のオブジェクト管理部(図示せず)にも設けられている。要求などの流れについては後述する。
Three objects provided in the object management unit 165A will be described. First, the
図3は、バンドルID記憶部14を例示した図である。
FIG. 3 is a diagram illustrating the bundle
バンドルID記憶部14には、ホームサーバ1内で実行可能なバンドルであってそのバンドルが信用されていることから選択されたバンドルの、例えば数字のバンドルIDが1以上記憶されている。これらのバンドルIDは、このバンドルIDをもつバンドルを、例えば信用できるベンダが作成したことにより、バンドル自体も信用され、これにより、当該バンドルID記憶部14に記憶されている。よって、バンドルID記憶部14には、バンドル130および131のバンドルIDが記憶されている。また、バンドルID記憶部14には、ソートオブジェクト163のバンドルIDが同様の理由で記憶されている。
The bundle
図4は、オブジェクトID記憶部15を例示した図である。
FIG. 4 is a diagram illustrating the object
オブジェクトID記憶部15には、ホームサーバ1内に構成されたオブジェクトに送信された、当該オブジェクトのオブジェクトIDが記憶される。オブジェクトID記憶部15に記憶されるオブジェクトIDは、例えば、当該オブジェクトIDをもつオブジェクトのバンドルID(B45など)と当該オブジェクトIDが生成された順番を示す数字(12など)と当該オブジェクトIDが生成されたときに生成された乱数(485447など)とから構成される。また、オブジェクトID記憶部15に記憶されるオブジェクトIDには、当該オブジェクトIDをもつオブジェクトのバンドルID(B45など)が対応づけられる。
The object
なお、オブジェクトIDは、バンドルIDや生成順番と無関係なもの(例えば、乱数のみ)としてもよい。また、オブジェクトによってアクセス権が変わるような場合には、各オブジェクトIDに対し、仮想マシン11やその仮想マシン11を動作させるオペレーティングシステムなどから取得できるアクセス権、ユーザ名、デバイス名、オブジェクトのハッシュ値などを対応づけ、これらによる詳細な制御を行ってもよい。
The object ID may be unrelated to the bundle ID or the generation order (for example, only a random number). Further, when the access right varies depending on the object, the access right, user name, device name, and object hash value that can be acquired from the
(本実施の形態の動作)
次に、本実施の形態の動作を説明する。
(Operation of this embodiment)
Next, the operation of this embodiment will be described.
図5は、スレッド120に呼び出された電話オブジェクト160が、電話端末2からの依頼により、データベースシステムオブジェクト165を介して、データベースシステム4内のアドレス帳21を取得し、電話端末2へ送信するときのシーケンス図である。
FIG. 5 shows a case where the
バンドル130が実行されることで生成されたスレッド120の動作中において、電話端末2が電話オブジェクト160へ依頼を行い、この依頼内容により、電話オブジェクト160は、先ず、オブジェクトID生成オブジェクト1651に対し、電話オブジェクト160のオブジェクトIDを生成して当該電話オブジェクト160に送信するように要求する(図5:ステップS1)。かかる要求は、いわゆるコマンドとパラメータで行われることが一般的であるが、動作の理解を助けるため、以下においても、かかる形容を含めて要求を説明する。
During the operation of the
図6は、このような要求を受けるオブジェクトID生成オブジェクト1651のフローチャートである。
FIG. 6 is a flowchart of the object
オブジェクトID生成オブジェクト1651が、電話オブジェクト160などからの要求を受信した(図6:ステップS101でYES)とき、バンドルIDスタック120Aには、電話オブジェクト160のバンドルIDが先ず積まれ(スタックされ)、その上に、オブジェクトID生成オブジェクト1651のバンドルIDがスタックされるので、その際にオブジェクトID生成オブジェクト1651は、バンドルIDスタック120Aにおける上から2番目のバンドルIDをプラットフォーム12から取得する(図2、図6:ステップS103)。
When the object
次に、オブジェクトID生成オブジェクト1651は、このバンドルIDがバンドルID記憶部14に記憶されているか否かを判定する(図6:ステップS105)。記憶されている(YES)と判定された場合は、例えば、乱数を生成し、当該バンドルIDと当該要求の順番を示す数字と当該乱数とからなるオブジェクトIDを生成する(図6:ステップS107)。
Next, the object
次に、オブジェクトID生成オブジェクト1651は、ステップS107で生成したオブジェクトIDをオブジェクトID記憶部15に記憶させるとともに、ステップS103で取得したバンドルIDを当該記憶させたオブジェクトIDに対応づける(図6:ステップS109:オブジェクトID記憶部15を更新)。
Next, the object
次に、オブジェクトID生成オブジェクト1651は、ステップS107で生成したオブジェクトIDを処理結果として、要求元である電話オブジェクト160などに送信し(図2、図6:ステップS111)、処理を終える。
Next, the object
一方、ステップS105でNOと判定された場合は、処理が行えなかったことを示す処理結果を要求元の電話オブジェクト160などに送信して処理を終える。
On the other hand, if NO is determined in step S105, the processing result indicating that the processing could not be performed is transmitted to the requesting
図5に戻る。なお、オブジェクトID生成オブジェクト1651の処理終了により、バンドルIDスタック120Aでは、最も上にある、オブジェクトID生成オブジェクト1651のバンドルIDが消去され、電話オブジェクト160のバンドルIDが最も上のバンドルIDとなる。
Returning to FIG. When the processing of the object
次に、電話オブジェクト160は、オブジェクトID生成オブジェクト1651からオブジェクトIDが送信されたときは、これを受信記憶し、コンテナ生成オブジェクト1652に対し、コンテナオブジェクトを生成するように要求し、このときに電話オブジェクト160のオブジェクトIDをコンテナ生成オブジェクト1652に送信する(図5:ステップS3)。バンドルIDスタック120Aでは、電話オブジェクト160のバンドルIDの上に、コンテナ生成オブジェクト1652のバンドルIDがスタックされる。
Next, when the object ID is transmitted from the object
図7は、このような要求を受けるコンテナ生成オブジェクト1652のフローチャートである。
FIG. 7 is a flowchart of the
コンテナ生成オブジェクト1652は、電話オブジェクト160などからの要求を受信した(図7:ステップS201でYES)とき、要求元であるオブジェクトから送信される要求元のオブジェクトIDを受信する(図2、図7:ステップS203)。ステップS203では、要求元でないオブジェクトのオブジェクトIDが要求元から1以上送信されることがあり、そのときにはその全てを受信する。
When the
次に、コンテナ生成オブジェクト1652は、ステップS203で受信した要求元のオブジェクトIDをオブジェクトID認証オブジェクト1653に送信するとともに当該オブジェクトIDの認証を要求する(図2、図7:ステップS205)。バンドルIDスタック120Aなどでは、要求元であるコンテナ生成オブジェクト1652のバンドルIDの上に、オブジェクトID認証オブジェクト1653のバンドルIDがスタックされる。
Next, the
図8は、このような要求を受けるオブジェクトID認証オブジェクト1653のフローチャートである。
FIG. 8 is a flowchart of the object
オブジェクトID認証オブジェクト1653は、コンテナ生成オブジェクト1652などからの要求を受信した(図8:ステップS301でYES)とき、認証対象である電話オブジェクト160などのオブジェクトIDを要求元から受信する(図8:ステップS303)。そして、オブジェクトID記憶部15を参照して(図2:ステップS305)、ステップS303で受信したオブジェクトIDがオブジェクトID記憶部15に記憶されているか否かを判定する(図8:ステップS305)。記憶されている(YES)と判定された場合は、当該オブジェクトIDにオブジェクトID記憶部15で対応づけられているバンドルIDをオブジェクトID記憶部15から読み出すとともにバンドルIDスタック120Aなどを取得し(図2:ステップS307)、読み出したバンドルIDに等しいバンドルIDが、取得したバンドルIDスタック120Aなどの中にあるか否かを判定する(図8:ステップS307)。
When the object
ステップS307でバンドルIDがある(YES)と判定された場合、オブジェクトID認証オブジェクト1653は、認証が成功したことを示す処理結果を要求元であるコンテナ生成オブジェクト1652などに送信し(図8:ステップS309)、処理を終える。
If it is determined in step S307 that there is a bundle ID (YES), the object
例えば、ホームサーバ1に接続された他の電話端末(図示せず)に対して通信するオブジェクト(図示せず。以下、悪意のオブジェクト)がオブジェクトIDを備えているものの、そのオブジェクトIDがオブジェクトID記憶部15に記憶されていない場合には、ステップS305でNOと判定されるので、このような場合には、オブジェクトID認証オブジェクト1653は、認証が失敗したことを示す処理結果を要求元であるコンテナ生成オブジェクト1652などに送信し(図8:ステップS311)、処理を終える。
For example, although an object (not shown) that communicates with another telephone terminal (not shown) connected to the
よって、例えば、アドレス帳21が電話端末2を利用する父親のものであるときに、そのアドレス帳21が、悪意のオブジェクトと電話端末を介して子供などに開示され、子供がいたずら電話してしまうのを防止することができる。
Therefore, for example, when the
一方、ステップS307では、判定結果が、以下のような事情によって分かれる。つまり、ステップS307のときに、電話オブジェクト160などのバンドルIDは、バンドルIDスタック120Aなどの上から3番目に位置するので、ステップS307ではYESと判定されるのだが、例えば、電話オブジェクト160などのオブジェクトIDが漏洩し、電話オブジェクト160が他のオブジェクトに要求を行っていないときに、この漏洩したオブジェクトIDを悪意のオブジェクトが当該オブジェクトのオブジェクトIDと偽ってコンテナ生成オブジェクト1652などに送信した場合は、ステップS305ではYESと判定されるものの、この漏洩したオブジェクトIDをもつ電話オブジェクト160などのバンドルIDは、バンドルIDスタック120Aなどに存在することはないので、ステップS307でNOと判定される。このような場合、オブジェクトID認証オブジェクト1653は、認証が失敗したことを示す処理結果を要求元であるコンテナ生成オブジェクト1652などに送信し(図8:ステップS311)、処理を終える。
On the other hand, in step S307, the determination result is divided according to the following circumstances. That is, at step S307, the bundle ID of the
よって、同様に、アドレス帳21が、悪意のオブジェクトと電話端末を介して子供などに開示され、子供がいたずら電話してしまうことなどを防止することができる。
Therefore, similarly, the
図7に戻る。なお、バンドルIDスタック120Aなどでは、最も上にある、オブジェクトID認証オブジェクト1653のバンドルIDが消去され、コンテナ生成オブジェクト1652のバンドルIDが最も上のバンドルIDとなる。
Returning to FIG. In the
次に、コンテナ生成オブジェクト1652は、認証結果を受信した(図7:ステップS207でYES)場合、その認証結果が認証が成功したことを示すものか認証が失敗したことを示すものかを判定する(図7:ステップS209)、認証が成功したことを示すものの場合、コンテナ生成オブジェクト1652は、コンテナオブジェクトを生成する(図2、図7:ステップS211)。
Next, when the
次に、コンテナ生成オブジェクト1652は、生成したコンテナオブジェクトに、ステップS203で受信した電話オブジェクト160などの要求元のオブジェクトID、ステップS203で受信した、要求元でないオブジェクトのオブジェクトIDの全て、ならびにコンテナ生成オブジェクト1652に備わったデータベースシステムオブジェクト165のオブジェクトID(要求先となるオブジェクトのオブジェクトID)を記憶させる(図7:ステップS213)。
Next, the
次に、コンテナ生成オブジェクト1652は、当該コンテナオブジェクトを直接または間接的に示す参照情報を処理結果として、要求元である電話オブジェクト160などに送信し(図7:ステップS215)、処理を終える。一方、認証が失敗したことを示すものの場合(ステップS215)、処理が行えなかったことを示す処理結果を要求元の電話オブジェクト160などに送信して処理を終える。
Next, the
図5に戻る。なお、バンドルIDスタック120Aでは、最も上にある、コンテナ生成オブジェクト1652のバンドルIDが消去され、電話オブジェクト160のバンドルIDが最も上のバンドルIDとなる。
Returning to FIG. In the
次に、電話オブジェクト160は、生成されたコンテナオブジェクト(以下、コンテナオブジェクト16501という)の参照情報(以下、参照情報16501Rという)を受信した(図5:ステップS5でYES)場合、その参照情報16501Rを元にコンテナオブジェクト16501を検出し、電話端末2からの依頼内容に基づく指示内容、ここではアドレス帳21をデータベースシステムオブジェクト165がデータベースシステム4から取得してコンテナオブジェクト16501に記憶させるという指示内容をコンテナオブジェクト16501に記憶させるべくコンテナオブジェクト16501に要求を行い、このときに電話オブジェクト160のオブジェクトIDをコンテナオブジェクト16501に送信する(図2、図5:ステップS7)。
Next, when the
図9は、このような要求を受けるコンテナオブジェクトのフローチャートである。 FIG. 9 is a flowchart of a container object that receives such a request.
コンテナオブジェクトは、電話オブジェクト160などの要求元からの要求を受信した(図9:ステップS401でYES)とき、要求元であるオブジェクトから送信される当該オブジェクトのオブジェクトIDを受信する(図9:ステップS403)。バンドルIDスタック120Aなどでは、コンテナオブジェクトのバンドルIDが最も上にスタックされている。
When the container object receives a request from a request source such as the telephone object 160 (FIG. 9: YES in step S401), the container object receives the object ID of the object transmitted from the request source object (FIG. 9: step). S403). In the
次に、コンテナオブジェクトは、ステップS403で受信したオブジェクトIDとコンテナオブジェクト内のいずれかのオブジェクトIDとが一致するか否かを判定する(図9:ステップS405)。YESと判定された場合は、ステップS403で受信したオブジェクトIDをオブジェクトID認証オブジェクト1653に送信するとともに当該オブジェクトIDの認証を要求する(図2、図9:ステップS407)。バンドルIDスタック120Aなどでは、コンテナオブジェクトのバンドルIDの上に、オブジェクトID認証オブジェクト1653のバンドルIDがスタックされる。
Next, the container object determines whether or not the object ID received in step S403 matches any object ID in the container object (FIG. 9: step S405). If YES is determined, the object ID received in step S403 is transmitted to the object
以降、図8の処理がなされる。 Thereafter, the processing of FIG. 8 is performed.
図9に戻る。なお、バンドルIDスタック120Aなどでは、最も上にある、オブジェクトID認証オブジェクト1653のバンドルIDが消去され、コンテナオブジェクトのバンドルIDが最も上のバンドルIDとなる。以降、冗長化防止のため、バンドルIDスタックの状態変化の説明を省略する。
Returning to FIG. In the
次に、コンテナオブジェクトは、認証結果を受信した(図9:ステップS409でYES)とき、その認証結果が認証が成功したことを示すものか認証が失敗したことを示すものかを判定する(図9:ステップS411)、認証が成功したことを示すものの場合、コンテナオブジェクトは、要求元の電話オブジェクト160などからの要求を受け入れる(図9:ステップS413)。ここでは、コンテナオブジェクトは、電話オブジェクト160から送信される指示内容をコンテナオブジェクトに記憶させる。
Next, when the container object receives the authentication result (FIG. 9: YES in step S409), the container object determines whether the authentication result indicates that the authentication has succeeded or indicates that the authentication has failed (FIG. 9). 9: Step S411), if it indicates that the authentication has succeeded, the container object accepts a request from the
次に、コンテナオブジェクトは、処理が終了したことを示す処理結果を要求元の電話オブジェクト160などに送信し(図9:ステップS415)、処理を終える。一方、ステップS405でNOと判定された場合は、あるいは、認証が失敗したことを示すものの場合(ステップS411)、処理が行えなかったことを示す処理結果を要求元の電話オブジェクト160などに送信し(図9:ステップS417)、処理を終える。
Next, the container object transmits a processing result indicating that the processing is completed to the
図5に戻り、次に、電話オブジェクト160は、コンテナオブジェクト16501から、処理が終了したことを示す処理結果を受信した(図5:ステップS9でYES)場合、データベースシステムオブジェクト165にコンテナオブジェクト16501の参照情報16501Rを送信して、コンテナオブジェクト16501内の指示内容で処理を行うようにデータベースシステムオブジェクト165に要求する(図5:ステップS11)。なお、参照情報などは、このように直接送信してもよいし、参照情報をホームサーバ1内に記憶させ、情報が記憶された場所を直接または間接的に示す参照情報を送信してもよい。
Returning to FIG. 5, when the
データベースシステムオブジェクト165は、ステップS11を契機に、送信された参照情報16501Rからコンテナオブジェクト16501を検出し、コンテナオブジェクト16501内の指示内容を取得すべくコンテナオブジェクト16501に要求を行い、このときにデータベースシステムオブジェクト165のオブジェクトIDをコンテナオブジェクト16501に送信する(図2、図5:ステップS13)。
In response to step S11, the
以降、図9の処理がなされ、データベースシステムオブジェクト165は、コンテナオブジェクト16501内の指示内容を取得する。
Thereafter, the processing of FIG. 9 is performed, and the
図5に戻り、データベースシステムオブジェクト165は、コンテナオブジェクト16501から、処理が終了したことを示す処理結果をを受信した(図5:ステップS15でYES)場合、コンテナオブジェクト16501から取得した指示内容にしたがい、データベースシステム4からアドレス帳21を取得する(図5:ステップS17)。
Returning to FIG. 5, when the
次に、データベースシステムオブジェクト165は、コンテナオブジェクト16501内にアドレス帳21を記憶させるべくコンテナオブジェクト16501に要求を行い、このときにデータベースシステムオブジェクト165のオブジェクトIDをコンテナオブジェクト16501に送信する(図2、図5:ステップS19)。
Next, the database system object 165 requests the
以降、図9の処理がなされ、データベースシステムオブジェクト165は、コンテナオブジェクト16501にアドレス帳21を記憶させる。
Thereafter, the processing of FIG. 9 is performed, and the database system object 165 stores the
図5に戻り、データベースシステムオブジェクト165は、コンテナオブジェクト16501から処理が終了したことを示す処理結果を受信した(図5:ステップS21でYES)場合、処理が終了したことを示す処理結果を電話オブジェクト160に送信し(図5:ステップS23)、処理を終える。
Returning to FIG. 5, when the
電話オブジェクト160は、ステップS23を契機に、コンテナオブジェクト16501内のアドレス帳21を取得すべくコンテナオブジェクト16501に要求を行い、このときに電話オブジェクト160のオブジェクトIDをコンテナオブジェクト16501に送信する(図2、図5:ステップS25)。
The
以降、図9の処理がなされ、電話オブジェクト160は、コンテナオブジェクト16501からアドレス帳21を取得する。
Thereafter, the processing of FIG. 9 is performed, and the
図5に戻り、電話オブジェクト160は、コンテナオブジェクト16501から処理が終了したことを示す処理結果をを受信した(図5:ステップS27でYES)場合、アドレス帳21を電話端末2に送信し(ステップS29)、処理を終える。
Returning to FIG. 5, when the
これにより、例えば、電話端末2が、アドレス帳21に含まれた複数の電話番号を表示し、その1つが選択されたときに、その電話番号の回線へ発信することが可能となる。
Thereby, for example, the
さて、次に、スレッド121に呼び出されたスケジュール管理オブジェクト161に対し、コンピュータ3内のスケジュール管理部3Aから依頼があり、これにより、データベースシステムオブジェクト165が、データベースシステム4内のスケジュールデータ31を取得し、これをソートオブジェクト163がソートし、これをスケジュール管理オブジェクト161が取得し、スケジュール管理部3Aに送信するときの動作を説明する。
Next, there is a request from the schedule management unit 3A in the
図10は、そのときの要求などの流れを示す図であり、図11は、そのときのシーケンスの一部を示す図である。 FIG. 10 is a diagram showing a flow of requests and the like at that time, and FIG. 11 is a diagram showing a part of the sequence at that time.
ここでは、スケジュール管理オブジェクト161、ソートオブジェクト163は、図5のステップS1と同様の要求を行ったことで、自身のオブジェクトIDを備え、オブジェクトID記憶部15では、当該オブジェクトIDが記憶され、さらに、このオブジェクトIDをもつオブジェクトのバンドルIDが対応づけられ、ソートオブジェクト163のオブジェクトIDをスケジュール管理オブジェクト161が既に取得していることとする。
Here, the
バンドル131が実行されることで生成されたスレッド121の動作中において、スケジュール管理部3Aがスケジュール管理オブジェクト161へ依頼を行い、この依頼内容により、スケジュール管理オブジェクト161は、先ず、コンテナ生成オブジェクト1652に対し、コンテナオブジェクトを生成するように要求し、このときにスケジュール管理オブジェクト161のオブジェクトIDならびにソートオブジェクト163のオブジェクトIDをコンテナ生成オブジェクト1652に送信する(図11:ステップS33)。
During the operation of the thread 121 generated by executing the bundle 131, the schedule management unit 3A makes a request to the
以降、図7の処理がなされ、スケジュール管理オブジェクト161、ソートオブジェクト163およびデータベースシステムオブジェクト165のオブジェクトIDを備えたコンテナオブジェクトが生成される。
Thereafter, the processing of FIG. 7 is performed, and a container object having object IDs of the
図11に戻り、スケジュール管理オブジェクト161は、生成されたコンテナオブジェクト(以下、コンテナオブジェクト16511という)の参照情報(以下、参照情報16511Rという)を受信した(図11:ステップS35でYES)場合、その参照情報16511Rを元にコンテナオブジェクト16511を検出し、スケジュール管理部3Aからの依頼内容に基づく指示内容、ここではスケジュールデータ31をデータベースシステムオブジェクト165が取得してコンテナオブジェクト16511に記憶させ、ソートオブジェクト163がスケジュールデータ31内の、依頼内容に含まれたユーザID(ユーザID500という)を含む組を予定時刻順にソートするという指示内容をコンテナオブジェクト16511に記憶させるべく、コンテナオブジェクト16511に要求を行い、このときにスケジュール管理オブジェクト161のオブジェクトIDをコンテナオブジェクト16511に送信する(図10、図11:ステップS37)。
Returning to FIG. 11, when the
以降、図9の処理がなされ、指示内容がコンテナオブジェクト16511に記憶される。
Thereafter, the processing of FIG. 9 is performed, and the instruction content is stored in the
図11に戻り、スケジュール管理オブジェクト161は、コンテナオブジェクト16511から処理が終了したことを示す処理結果を受信した(図11:ステップS39でYES)場合、ソートオブジェクト163にコンテナオブジェクト16511の参照情報16511Rを送信して、コンテナオブジェクト16511内の指示内容で処理を行うようにソートオブジェクト163に要求する(図10、図11:ステップS41)。
Returning to FIG. 11, when the
ソートオブジェクト163は、ステップS41を契機に、送信された参照情報16511Rからコンテナオブジェクト16511を検出し、コンテナオブジェクト16511内の指示内容を取得すべくコンテナオブジェクト16511に要求を行い、このときにソートオブジェクト163のオブジェクトIDをコンテナオブジェクト16511に送信する(図10、図11:ステップS43)。
At step S41, the
以降、図9の処理がなされ、ソートオブジェクト163が、コンテナオブジェクト16511内の指示内容を取得する。
Thereafter, the processing of FIG. 9 is performed, and the
図11に戻り、ソートオブジェクト163は、コンテナオブジェクト16511から処理が終了したことを示す処理結果を受信した(図11:ステップS45でYES)場合、コンテナオブジェクト16511内の指示内容が、スケジュールデータ31をデータベースシステムオブジェクト165が取得してコンテナオブジェクト16511に記憶させ、ソートオブジェクト163がスケジュールデータ31内の、ユーザID500を含む組を予定時刻順にソートするという内容なので、データベースシステムオブジェクト165にコンテナオブジェクト16511の参照情報16511Rを送信して、コンテナオブジェクト16511内の指示内容で処理を行うようにデータベースシステムオブジェクト165に要求する(図10、図11:ステップS47)。
Returning to FIG. 11, when the
データベースシステムオブジェクト165は、ステップS47を契機に、送信された参照情報16511Rからコンテナオブジェクト16511を検出し、コンテナオブジェクト16511内の指示内容を取得すべくコンテナオブジェクト16511に要求を行い、このときにデータベースシステムオブジェクト165のオブジェクトIDをコンテナオブジェクト16511に送信する(図10、図11:ステップS49)。
In response to step S47, the
以降、図9の処理がなされ、データベースシステムオブジェクト165が、コンテナオブジェクト16511内の指示内容を取得する。
Thereafter, the processing of FIG. 9 is performed, and the
図11に戻り、データベースシステムオブジェクト165は、コンテナオブジェクト16511から処理が終了したことを示す処理結果を受信した(図11:ステップS51でYES)場合、コンテナオブジェクト16511内の指示内容が、スケジュールデータ31をデータベースシステムオブジェクト165が取得してコンテナオブジェクト16511に記憶させ、ソートオブジェクト163がスケジュールデータ31内の、ユーザID500を含む組を予定時刻順にソートするという内容なので、データベースシステム4からスケジュールデータ31を取得する(図11:ステップS53)。
Returning to FIG. 11, when the
次に、データベースシステムオブジェクト165は、コンテナオブジェクト16511内にスケジュールデータ31を記憶させるべくコンテナオブジェクト16511に要求を行い、このときにデータベースシステムオブジェクト165のオブジェクトIDをコンテナオブジェクト16511に送信する(図10、図11:ステップS55)。
Next, the database system object 165 requests the
以降、図9の処理がなされ、データベースシステムオブジェクト165は、コンテナオブジェクト16511にスケジュールデータ31を記憶させる。
Thereafter, the processing of FIG. 9 is performed, and the database system object 165 stores the
図11に戻り、データベースシステムオブジェクト165は、コンテナオブジェクト16511から処理が終了したことを示す処理結果を受信した(図11:ステップS57)場合、処理が終了したことを示す処理結果をソートオブジェクト163に送信し(図11:ステップS59)、処理を終える。
Returning to FIG. 11, when the
ソートオブジェクト163は、ステップS59を契機に、コンテナオブジェクト16511内のスケジュールデータ31内の予定行事と予定時刻の組をソートすべくコンテナオブジェクト16511に要求を行い、このときにソートオブジェクト163のオブジェクトIDをコンテナオブジェクト16511に送信する(図10、図11:ステップS61)。
The
以降、図9の処理がなされ、ソートオブジェクト163が、コンテナオブジェクト16511に記憶されたスケジュールデータ31内の、ユーザID500を含む組を予定時刻順にソートする。
Thereafter, the processing of FIG. 9 is performed, and the
図11に戻り、ソートオブジェクト163は、コンテナオブジェクト16511から処理が終了したことを示す処理結果を受信した(図11:ステップS63でYES)場合、処理が終了したことを示す処理結果をスケジュール管理オブジェクト161に送信し(図11:ステップS65)、処理を終える。
Returning to FIG. 11, when the
スケジュール管理オブジェクト161は、ステップS65を契機に、コンテナオブジェクト16511内のソートされたスケジュールデータ31を取得すべくコンテナオブジェクト16511に要求を行い、このときに電話オブジェクト160のオブジェクトIDをコンテナオブジェクト16511に送信する(図10、図11:ステップS67)。
At step S65, the
以降、図9の処理がなされ、スケジュール管理オブジェクト161は、コンテナオブジェクト16511からソートされたスケジュールデータ31を取得する。
Thereafter, the process of FIG. 9 is performed, and the
図11に戻り、スケジュール管理オブジェクト161は、コンテナオブジェクト16511から、処理が終了したことを示す処理結果をを受信した(図11:ステップS69でYES)場合、スケジュールデータ31をコンピュータ3内のスケジュール管理部3Aに送信し(ステップS71)、処理を終える。
Returning to FIG. 11, when the
これにより、例えば、コンピュータ3内のスケジュール管理部3Aが、スケジュールデータ31内のソートされた予定行事を予定時刻とともに表示させることが可能となる。
Thereby, for example, the schedule management unit 3A in the
次に、スケジュール管理オブジェクト161およびソートオブジェクト163とデータベースシステムオブジェクト165との直接通信が禁止され、スケジュール管理オブジェクト161、ソートオブジェクト163およびデータベースシステムオブジェクト165とオブジェクト164との直接通信が許可されている場合に、スレッド121に呼び出されたスケジュール管理オブジェクト161に対し、コンピュータ3内のスケジュール管理部3Aから依頼があり、これにより、データベースシステムオブジェクト165が、データベースシステム4内のスケジュールデータ31を取得し、このことをオブジェクト164を介してソートオブジェクト163に通知し、ソートオブジェクト163がスケジュールデータ31をソートし、これを電話オブジェクト160が取得し、スケジュール管理部3Aに送信するときの動作を説明する。
Next, direct communication between the
図12は、そのときの要求などの流れを示す図であり、図13は、そのときのシーケンスの一部を示す図である。 FIG. 12 is a diagram showing a flow of requests and the like at that time, and FIG. 13 is a diagram showing a part of the sequence at that time.
ここでは、スケジュール管理オブジェクト161、ソートオブジェクト163およびオブジェクト164は、図5のステップS1と同様の要求を行ったことで、自身のオブジェクトIDを備え、オブジェクトID記憶部15には、当該オブジェクトIDが記憶され、さらに、このオブジェクトIDをもつオブジェクトのバンドルIDが対応づけられ、ソートオブジェクト163およびオブジェクト164のオブジェクトIDをスケジュール管理オブジェクト161が既に取得していることとする。
Here, the
スレッド121の動作中において、スケジュール管理部3Aがスケジュール管理オブジェクト161に依頼を行い、この依頼内容により、スケジュール管理オブジェクト161は、先ず、コンテナ生成オブジェクト1652に対し、コンテナオブジェクトを生成するように要求し、このときにスケジュール管理オブジェクト161のオブジェクトIDならびにソートオブジェクト163のオブジェクトIDをコンテナ生成オブジェクト1652に送信する(図13:ステップS133)。ここでは、オブジェクト164によるコンテナオブジェクトへの情報記憶、情報操作および情報取得を禁止すべく、スケジュール管理オブジェクト161は、オブジェクト164のオブジェクトIDをコンテナ生成オブジェクト1652へは送信しない。
During the operation of the thread 121, the schedule management unit 3A makes a request to the
以降、図7の処理がなされ、スケジュール管理オブジェクト161、ソートオブジェクト163およびデータベースシステムオブジェクト165のオブジェクトIDを備えたコンテナオブジェクトが生成される。
Thereafter, the processing of FIG. 7 is performed, and a container object having object IDs of the
図13に戻り、スケジュール管理オブジェクト161は、生成されたコンテナオブジェクト(以下、コンテナオブジェクト16512という)の参照情報(以下、参照情報16512Rという)を受信した(図13:ステップS135でYES)場合、その参照情報16512Rからコンテナオブジェクト16512を検出し、スケジュール管理部3Aからの依頼内容に基づく指示内容、ここではスケジュールデータ31をデータベースシステムオブジェクト165が取得してコンテナオブジェクト16512に記憶させ、このことをオブジェクト164を介してソートオブジェクト163に通知し、ソートオブジェクト163が、スケジュールデータ31内の、依頼内容に含まれたユーザID(ユーザID500という)を含む組を予定時刻順にソートするという指示内容をコンテナオブジェクト16512に記憶させるべくコンテナオブジェクト16512に要求を行い、このときにスケジュール管理オブジェクト161のオブジェクトIDをコンテナオブジェクト16512に送信する(図12、図13:ステップS137)。
Returning to FIG. 13, when the
以降、図9の処理がなされ、指示内容がコンテナオブジェクト16512に記憶される。
Thereafter, the processing of FIG. 9 is performed, and the instruction content is stored in the
図13に戻り、スケジュール管理オブジェクト161は、コンテナオブジェクト16512から、処理が終了したことを示す処理結果を受信した(図13:ステップS139でYES)場合、ソートオブジェクト163にコンテナオブジェクト16512の参照情報16512Rを送信して、コンテナオブジェクト16512内の指示内容で処理を行うようにソートオブジェクト163に要求する(図12、図13:ステップS141)。
Returning to FIG. 13, when the
ソートオブジェクト163は、ステップS141を契機に、送信された参照情報16512Rからコンテナオブジェクト16512を検出し、コンテナオブジェクト16512内の指示内容を取得すべくコンテナオブジェクト16512に要求を行い、このときにソートオブジェクト163のオブジェクトIDをコンテナオブジェクト16512に送信する(図12、図13:ステップS143)。
In response to step S141, the
以降、図9の処理がなされ、ソートオブジェクト163が、コンテナオブジェクト16512内の指示内容を取得する。
Thereafter, the processing of FIG. 9 is performed, and the
図13に戻り、ソートオブジェクト163は、コンテナオブジェクト16512から、処理が終了したことを示す処理結果を受信した(図13:ステップS145でYES)場合、コンテナオブジェクト16512内の指示内容が、スケジュールデータ31をデータベースシステムオブジェクト165が取得してコンテナオブジェクト16512に記憶させ、このことをオブジェクト164を介してソートオブジェクト163に通知し、ソートオブジェクト163がスケジュールデータ31内の、ユーザID500を含む組を予定時刻順にソートするという指示内容なので、コンテナオブジェクト16512の参照情報16512Rをオブジェクト164に送信し、データベースシステムオブジェクト165へ参照情報16512Rを送信するようにオブジェクト164に要求し、さらに参照情報16512Rが示すコンテナオブジェクト16512内の指示内容での処理を行うようにデータベースシステムオブジェクト165に要求するようにオブジェクト164に要求する(図12、図13:ステップS147)。
Returning to FIG. 13, when the
オブジェクト164は、ステップS147において送信された参照情報16512Rをデータベースシステムオブジェクト165へ送信し、この参照情報16512Rが示すコンテナオブジェクト16512内の指示内容での処理を行うようにデータベースシステムオブジェクト165に要求する(図12、図13:ステップS149)。
The
ここでオブジェクト164は、それが例えば悪意のオブジェクトであれば、以下のことが可能となる。つまり、送信された参照情報16512Rからコンテナオブジェクト16512を検出し、図12にステップS151で示すように、コンテナオブジェクト16512内の指示内容を取得すべくコンテナオブジェクト16512に要求を行い、このときにオブジェクト164のオブジェクトIDをコンテナオブジェクト16512に送信することができる。しかし、コンテナオブジェクト16512内には、オブジェクト164のオブジェクトIDが記憶されていないので、オブジェクト164は、コンテナオブジェクト16512内の指示内容を取得できず、オブジェクト164には、コンテナオブジェクト16512から処理が行えなかったことを示す処理結果が送信される(図12:ステップS153)。
Here, if the
また、オブジェクト164は、送信された参照情報16512Rからコンテナオブジェクト16512を検出し、図12のステップS151でコンテナオブジェクト16512内の指示内容を取得すべくコンテナオブジェクト16512に要求を行うときに、例えば、漏洩あるいは不正に取得したオブジェクトIDをオブジェクト164のオブジェクトIDと偽ってコンテナオブジェクト16512に送信することができる。このオブジェクトIDを最初に受信したオブジェクトのオブジェクトIDがオブジェクトID記憶部15に記憶されている場合には、オブジェクトID記憶部15が参照(図12:ステップS303)され、図8のステップS303の判定でYESと判定されるものの、当該オブジェクトが他のオブジェクトに要求を行っていないときには、取得したバンドルIDスタック121A(図12:ステップS304)には、漏洩等した当該オブジェクトのオブジェクトIDが存在しないので、図8のステップS307の判定でNOと判定される。よって、結局は、オブジェクト164は、コンテナオブジェクト16512内の指示内容を取得できず、オブジェクト164には、コンテナオブジェクト16512から処理が行えなかったことを示す処理結果が送信される(図12:ステップS153)。
When the
さて、このようなことがなく、ステップS149が行われたとき、データベースシステムオブジェクト165は、このステップS149を契機に、送信された参照情報16512Rからコンテナオブジェクト16512を検出し、コンテナオブジェクト16512内の指示内容を取得すべくコンテナオブジェクト16512に要求を行い、このときにデータベースシステムオブジェクト165のオブジェクトIDをコンテナオブジェクト16512に送信する(図12、図13:ステップS159)。
Now, when step S149 is performed without such a situation, the
以降、図9の処理がなされ、データベースシステムオブジェクト165が、コンテナオブジェクト16512内の指示内容を取得する。
Thereafter, the processing of FIG. 9 is performed, and the
図13に戻り、データベースシステムオブジェクト165は、コンテナオブジェクト16512から、処理が終了したことを示す処理結果を受信した(図13:ステップS161でYES)場合、コンテナオブジェクト16512内の指示内容が、スケジュールデータ31をデータベースシステムオブジェクト165が取得してコンテナオブジェクト16512に記憶させ、このことをオブジェクト164を介してソートオブジェクト163に通知し、ソートオブジェクト163が、スケジュールデータ31内の、ユーザID500を含む組を予定時刻順にソートするという内容なので、データベースシステム4からスケジュールデータ31を取得する(図13:ステップS163)。
Returning to FIG. 13, when the
次に、データベースシステムオブジェクト165は、コンテナオブジェクト16512内にスケジュールデータ31を記憶させるべくコンテナオブジェクト16512に要求を行い、このときにデータベースシステムオブジェクト165のオブジェクトIDをコンテナオブジェクト16512に送信する(図12、図13:ステップS165)。
Next, the database system object 165 requests the
以降、図9の処理がなされ、データベースシステムオブジェクト165は、コンテナオブジェクト16512にスケジュールデータ31を記憶させる。
Thereafter, the processing of FIG. 9 is performed, and the database system object 165 stores the
図13に戻り、データベースシステムオブジェクト165は、コンテナオブジェクト16512から、処理が終了したことを示す処理結果を受信した(図13:ステップS167)場合、処理が終了したことを示す処理結果をオブジェクト164に送信し(図11:ステップS169)、処理を終える。
Returning to FIG. 13, when the
オブジェクト164は、ステップS169を契機に、処理が終了したことを示す処理結果をソートオブジェクト163に送信し(図13:ステップS171)、処理を終える。
In response to step S169, the
ソートオブジェクト163は、ステップS171を契機に、コンテナオブジェクト16512内のスケジュールデータ31内の予定行事と予定時刻の組をソートすべくコンテナオブジェクト16512に要求を行い、このときにソートオブジェクト163のオブジェクトIDをコンテナオブジェクト16512に送信する(図12、図13:ステップS181)。
The
以降、図9の処理がなされ、ソートオブジェクト163が、コンテナオブジェクト16512内のスケジュールデータ31内の、ユーザID500を含む組を予定時刻順にソートする。
Thereafter, the processing of FIG. 9 is performed, and the
図13に戻り、ソートオブジェクト163は、コンテナオブジェクト16512から、処理が終了したことを示す処理結果を受信した(図13:ステップS183でYES)場合、処理が終了したことを示す処理結果をスケジュール管理オブジェクト161に送信し(図13:ステップS185)、処理を終える。
Returning to FIG. 13, when the
スケジュール管理オブジェクト161は、ステップS185を契機に、コンテナオブジェクト16512内のソートされたスケジュールデータ31を取得すべくコンテナオブジェクト16512に要求を行い、このときにスケジュール管理オブジェクト161のオブジェクトIDをコンテナオブジェクト16512に送信する(図12、図13:ステップS187)。
In step S185, the
以降、図9の処理がなされ、スケジュール管理オブジェクト161は、コンテナオブジェクト16512からソートされたスケジュールデータ31を取得する。
Thereafter, the process of FIG. 9 is performed, and the
図13に戻り、スケジュール管理オブジェクト161は、コンテナオブジェクト16512から、処理が終了したことを示す処理結果を受信した(図13:ステップS189でYES)場合、スケジュールデータ31をコンピュータ3内のスケジュール管理部3Aに送信し(ステップS191)、処理を終える。
Returning to FIG. 13, when the
以上説明したように、本実施の形態によれば、予めバンドルIDをバンドルID記憶部14に記憶させ、オブジェクトIDの生成の要求があった場合、そのオブジェクトが生成されたときに実行されたバンドルのバンドルIDをバンドルIDスタックから取得し、取得したバンドルIDがバンドルID記憶部14に記憶されているか否かを判定し、記憶されている場合、オブジェクトIDを生成することで、信用されたバンドルのバンドルIDをバンドルID記憶部14に記憶させたときには、信用されたバンドルが実行されて生成されたオブジェクトのオブジェクトIDのみが生成され、よって、信用されたバンドルが実行されて生成されたオブジェクトの識別が可能となる。
As described above, according to the present embodiment, the bundle ID is stored in the bundle
また、オブジェクトID生成オブジェクトにより生成されたオブジェクトIDが記憶され、当該オブジェクトIDのオブジェクトが生成されたときに実行されたバンドルのバンドルIDが対応づけられるオブジェクトID記憶部15と、オブジェクトIDの認証の要求があった場合、オブジェクトIDがオブジェクトID記憶部15に記憶されているか否かを判定し、記憶されている場合、オブジェクトIDに対応づけられたバンドルIDがバンドルID記憶部14に記憶されているか否かを判定し、記憶されている場合、当該認証が成功したことを示す認証結果を送信するオブジェクトID認証オブジェクトとを設けることで、偽のオブジェクトIDでは認証が失敗し、よって、偽のオブジェクトIDの使用を防止することができる。また、情報の暗号化と複合化が不要なので、コンピュータのパフォーマンス低下を防止することができる。
In addition, the object ID generated by the object ID generation object is stored, the object
また、コンテナオブジェクトを生成すべく要求があった場合、オブジェクトID認証オブジェクトにオブジェクトIDの認証の要求を行い、認証が成功したことを示す処理結果が送信された場合、コンテナオブジェクトを生成するコンテナ生成オブジェクトを設けたことで、偽のオブジェクトIDでは認証が失敗し、よって、偽のオブジェクトIDが使用されてコンテナオブジェクトが生成されるのを防止することができる。 In addition, when there is a request to generate a container object, a request for object ID authentication is made to the object ID authentication object, and when a processing result indicating that the authentication is successful is transmitted, a container generation for generating a container object is generated. By providing an object, authentication fails with a fake object ID, and therefore it is possible to prevent a container object from being generated using a fake object ID.
また、コンテナ生成オブジェクトが、送信されるオブジェクトIDをコンテナオブジェクトに記憶させるようにし、コンテナオブジェクトは、情報記憶、情報操作および情報取得の内のいずれかの要求がオブジェクトからあった場合、そのオブジェクトIDがコンテナオブジェクトに記憶されているか否かを判定し、記憶されている場合、そのオブジェクトIDの認証の要求を行い、認証が成功したことを示す処理結果が送信された場合、その要求に応じることで、偽のオブジェクトIDでは認証が失敗し、よって、偽のオブジェクトIDが使用されて、コンテナオブジェクトへの情報記憶、情報操作および情報取得がなされるのを防止することができる。 In addition, the container generation object stores the object ID to be transmitted in the container object, and the container object has its object ID when any of the information storage, information operation, and information acquisition requests is received from the object. Is stored in the container object, and if it is stored, a request for authentication of the object ID is made. If a processing result indicating that the authentication is successful is transmitted, the request is satisfied. Thus, authentication fails with a fake object ID, and therefore it is possible to prevent the fake object ID from being used to perform information storage, information manipulation, and information acquisition in the container object.
また、図13で説明したように、コンテナオブジェクトの存在通知(参照情報による)を伴ってオブジェクトへなされる要求により当該オブジェクトがコンテナオブジェクトの存在通知を伴う他のオブジェクトへの要求を行うということを連鎖的に2回行うという指示内容の中でのいずれかの要求を受ける各オブジェクト(ソートオブジェクト163とオブジェクト164とデータベースシステムオブジェクト165)の中で最初に要求を受けるオブジェクト(ソートオブジェクト163)への要求を行うとともに当該オブジェクト(ソートオブジェクト163)へ当該指示内容を通知するオブジェクト(スケジュール管理オブジェクト161)が、コンテナオブジェクトの生成の要求を行う(ステップS133)とともに各オブジェクト(ソートオブジェクト163とオブジェクト164とデータベースシステムオブジェクト165)のオブジェクトIDの中の一部のオブジェクトID(ソートオブジェクト163のオブジェクトID)をコンテナ生成オブジェクトに送信することで、コンテナ生成オブジェクト自らによってもコンテナオブジェクトに記憶されずかつ送信もされないオブジェクトID(オブジェクト164のオブジェクトID)はコンテナオブジェクトには記憶されず、そのオブジェクトIDのオブジェクトがコンテナオブジェクトへ要求を行っても、そのオブジェクトIDでは認証が失敗し、よって、全オブジェクト(ソートオブジェクト163とオブジェクト164とデータベースシステムオブジェクト165)が協働して指示内容の処理をコンテナオブジェクトを用いて行うようにでき、しかも、その中の一部のオブジェクト(オブジェクト164)については、そのオブジェクトによるコンテナオブジェクトへの情報記憶、情報操作および情報取得を禁止することができる。なお、かかる作用効果は、ここでは連鎖的に2回行った要求を3回以上とし、それに応じた態様でオブジェクトが動作する場合であっても同様にして得られる。
In addition, as described with reference to FIG. 13, a request made to an object with a container object presence notification (by reference information) makes the object make a request to another object with a container object presence notification. In each object (
なお、ホームサーバ1としてコンピュータを機能させるコンピュータプログラムは、半導体メモリ、磁気ディスク、光ディスク、光磁気ディスク、磁気テープなどのコンピュータ読み取り可能な記録媒体に格納したり、インターネットなどの通信網を介して伝送させて、広く流通させることができる。
A computer program that causes a computer to function as the
また、上記実施の形態では、ホームサーバとしてのオブジェクト制御装置を説明したが、他の態様、例えばインターネットに設けられるサーバあるいはパーソナルコンピュータとして、オブジェクト制御装置を具現化してもよい。 Moreover, although the object control apparatus as a home server has been described in the above embodiment, the object control apparatus may be embodied as another aspect, for example, a server or personal computer provided on the Internet.
1…ホームサーバ
2…電話端末
3…コンピュータ
3A…スケジュール管理部
4…データベースシステム
11…仮想マシン
12…プラットフォーム
13…バンドル記憶部
14…バンドルID記憶部
15…オブジェクトID記憶部
21…アドレス帳
31…スケジュールデータ
120,121…スレッド
120A,121A…バンドルIDスタック
160…電話オブジェクト
161…スケジュール管理オブジェクト
163…ソートオブジェクト
165…データベースシステムオブジェクト
165A…オブジェクト管理部
1651…オブジェクトID生成オブジェクト
1652…コンテナ生成オブジェクト
1653…オブジェクトID認証オブジェクト
16501,16511,16512…コンテナオブジェクト
16501R,16511R,16512R…参照情報
DESCRIPTION OF
Claims (12)
当該コンピュータ内での実行が可能なバンドルであって選択されたバンドルのバンドルIDが記憶されるバンドルID記憶部と、
当該コンピュータ内のオブジェクトが生成された後、当該オブジェクトから当該オブジェクトのオブジェクトIDの生成の要求があった場合、当該オブジェクトが生成されたときに実行されたバンドルのバンドルIDを前記バンドルIDスタックから取得し、当該取得したバンドルIDが前記バンドルID記憶部に記憶されているか否かを判定し、記憶されている場合、当該オブジェクトのオブジェクトIDを生成するオブジェクトID生成手段と
を備えることを特徴とするオブジェクト制御装置。 When a class included in a bundle that is a program that can be executed in a computer is executed, a thread and an object used for the thread are generated, and another object receives a processing request from the object. In an object control device, which is a computer having a bundle ID stack in which bundle IDs of bundles executed when other objects are generated after a bundle ID indicating the executed bundle is stored are stored.
A bundle ID storage unit in which a bundle ID of a bundle that can be executed in the computer and is selected is stored;
After the object in the computer is generated, if there is a request for generating the object ID of the object from the object, the bundle ID of the bundle executed when the object is generated is acquired from the bundle ID stack And determining whether or not the acquired bundle ID is stored in the bundle ID storage unit and, if stored, an object ID generating unit that generates an object ID of the object. Object control unit.
を備えることを特徴とする請求項1記載のオブジェクト制御装置。 The object ID object ID generated by the generating means is stored, in the object ID, the object ID storage unit bundle ID of the executed bundles is associated when the object of the object ID is generated
Object control device according to claim 1, characterized in that it comprises a.
を備えることを特徴とする請求項2記載のオブジェクト制御装置。The object control apparatus according to claim 2, further comprising:
を備えることを特徴とする請求項3記載のオブジェクト制御装置。 A container object that is an object generated in the computer, a processing request for the other object to the container object, storage of information as a processing result by the other object , and acquisition of the information from the container object If there is the object in the computer to produce the container object to be performed required, the authenticate request object ID of the object in the object ID authentication means, the processing result indicating that the person authentication is successful The object control apparatus according to claim 3, further comprising: a container generation unit configured to generate the container object when the message is transmitted.
当該コンテナオブジェクトは、当該コンテナオブジェクトへの情報記憶、当該コンテナオブジェクト内の情報操作および当該コンテナオブジェクトからの情報取得の内のいずれかの要求が当該コンピュータ内のオブジェクトからあった場合、当該オブジェクトのオブジェクトIDが当該コンテナオブジェクトに記憶されているか否かを判定し、記憶されている場合、前記オブジェクトID認証手段に当該オブジェクトのオブジェクトIDの認証の要求を行い、当該認証が成功したことを示す処理結果が送信された場合、当該要求に応じることを特徴とする請求項4記載のオブジェクト制御装置。 It said container generation means, the object ID transmitted from the object making the request in the generation of container object is intended to be stored in the container object,
The container object is the object of the object when any of the information storage in the container object, the information operation in the container object, and the information acquisition from the container object is requested from the object in the computer. ID is determined whether stored in the container object, if it is stored, to authenticate the request of the object ID of the object with the object ID authentication means indicate that the person authentication is successful treatment 5. The object control apparatus according to claim 4 , wherein when the result is transmitted, the request is satisfied.
ことを特徴とする請求項5記載のオブジェクト制御装置。 It is chained that the object makes a request to another object with the presence notification of the container object by a request made to the object in the computer with the notification of the existence of the container object generated by the container generation means. An object that first makes a request to the object that receives the request among the objects that receive any request in the instruction content that is to be performed twice or more is generated by the container. and characterized by storing a part of the object ID in the object ID of each object receive either request in the instruction content performs a request for production of the container object to the means on the container Nao object The object according to claim 5 Control device.
当該コンピュータ内での実行が可能なバンドルであって選択されたバンドルのバンドルIDが記憶されるバンドルID記憶部を当該オブジェクト制御装置が備えており、
当該コンピュータ内のオブジェクトID生成手段が、
当該コンピュータ内のオブジェクトが生成された後、当該オブジェクトから当該オブジェクトのオブジェクトIDの生成の要求があった場合、当該オブジェクトが生成されたときに実行されたバンドルのバンドルIDを前記バンドルIDスタックから取得し、当該取得したバンドルIDが前記バンドルID記憶部に記憶されているか否かを判定し、記憶されている場合、当該オブジェクトのオブジェクトIDを生成する
ことを特徴とするオブジェクト制御装置の制御方法。 When a class included in a bundle that is a program that can be executed in a computer is executed, a thread and an object used for the thread are generated, and another object receives a processing request from the object. Control of an object control device which is a computer having a bundle ID stack in which bundle IDs of bundles executed when another object is generated after a bundle ID indicating the executed bundle is stored In the method
The object control device includes a bundle ID storage unit in which a bundle ID of a bundle that can be executed in the computer and is selected is stored,
The object ID generation means in the computer is
After the object in the computer is generated, if there is a request for generating the object ID of the object from the object, the bundle ID of the bundle executed when the object is generated is acquired from the bundle ID stack Then, it is determined whether or not the acquired bundle ID is stored in the bundle ID storage unit. If the bundle ID is stored, the object ID of the object is generated.
ことを特徴とする請求項8記載のオブジェクト制御装置の制御方法。The method of controlling an object control apparatus according to claim 8.
ことを特徴とする請求項9記載のオブジェクト制御装置の制御方法。 Container generating means in said computer, storage and the container of the processing result serving information by the other processing requests for objects and the other objects of a container object is an object that is created in the computer to the container object If the acquisition of the information from the object is requested from an object in the computer to produce the container object to be performed, to authenticate requests for object ID of the object with the object ID authentication means, those wherein The method for controlling an object control apparatus according to claim 9 , wherein when a processing result indicating that the authentication is successful is transmitted, the container object is generated.
当該コンテナオブジェクトは、当該コンテナオブジェクトへの情報記憶、当該コンテナオブジェクト内の情報操作および当該コンテナオブジェクトからの情報取得の内のいずれかの要求が当該コンピュータ内のオブジェクトからあった場合、当該オブジェクトのオブジェクトIDが当該コンテナオブジェクトに記憶されているか否かを判定し、記憶されている場合、前記オブジェクトID認証手段に当該オブジェクトのオブジェクトIDの認証の要求を行い、当該認証が成功したことを示す処理結果が送信された場合、当該要求に応じることを特徴とする請求項10記載のオブジェクト制御装置の制御方法。 It said container generation means, the object ID transmitted from the object making the request in the generation of container object is intended to be stored in the container object,
The container object is the object of the object when any of the information storage in the container object, the information operation in the container object, and the information acquisition from the container object is requested from the object in the computer. ID is determined whether stored in the container object, if it is stored, to authenticate the request of the object ID of the object with the object ID authentication means indicate that the person authentication is successful treatment 11. The method of controlling an object control apparatus according to claim 10 , wherein when the result is transmitted, the request is satisfied.
ことを特徴とする請求項11記載のオブジェクト制御装置の制御方法。 It is chained that the object makes a request to another object with the presence notification of the container object by a request made to the object in the computer with the notification of the existence of the container object generated by the container generation means. An object that first makes a request to the object that receives the request among the objects that receive any request in the instruction content that is to be performed twice or more is generated by the container. and characterized by storing a part of the object ID in the object ID of each object receive either request in the instruction content performs a request for production of the container object to the means on the container Nao object The object according to claim 11. The control method of the project control device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005200587A JP4688591B2 (en) | 2005-07-08 | 2005-07-08 | Object control apparatus and control method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005200587A JP4688591B2 (en) | 2005-07-08 | 2005-07-08 | Object control apparatus and control method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007018369A JP2007018369A (en) | 2007-01-25 |
JP4688591B2 true JP4688591B2 (en) | 2011-05-25 |
Family
ID=37755475
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005200587A Expired - Fee Related JP4688591B2 (en) | 2005-07-08 | 2005-07-08 | Object control apparatus and control method thereof |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4688591B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4889575B2 (en) * | 2007-06-11 | 2012-03-07 | 日本電信電話株式会社 | Access permission setting method, access permission setting device, and access permission setting program |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006510075A (en) * | 2002-12-12 | 2006-03-23 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Method, system, and computer program for configuring a client device (configuration of a client device by a configuration service provider) |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7516331B2 (en) * | 2003-11-26 | 2009-04-07 | International Business Machines Corporation | Tamper-resistant trusted java virtual machine and method of using the same |
-
2005
- 2005-07-08 JP JP2005200587A patent/JP4688591B2/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006510075A (en) * | 2002-12-12 | 2006-03-23 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Method, system, and computer program for configuring a client device (configuration of a client device by a configuration service provider) |
Also Published As
Publication number | Publication date |
---|---|
JP2007018369A (en) | 2007-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2001082086A1 (en) | Access right setting device and manager terminal | |
KR101169801B1 (en) | Method and device for managing history of file | |
CN108369614B (en) | User authentication method and system for implementing the same | |
JP2011238036A (en) | Authentication system, single sign-on system, server device and program | |
WO2006001153A1 (en) | File managing program | |
TW201337631A (en) | Sensitive information leakage prevention system, sensitive information leakage prevention method, and computer-readable recording medium | |
JP2023543934A (en) | Data transmission methods, devices, equipment, and computer programs | |
JP6287213B2 (en) | Proxy login device, terminal, control method, and program | |
KR101318132B1 (en) | Method for securing a gadget access to a library | |
JP5687455B2 (en) | Server, terminal, program, and service providing method | |
JP6322976B2 (en) | Information processing apparatus and user authentication method | |
JP4688591B2 (en) | Object control apparatus and control method thereof | |
JP3994657B2 (en) | Service provision system | |
US20090150979A1 (en) | Network system, network method, and terminal and program therefor | |
JP6708239B2 (en) | Document management system | |
KR101980828B1 (en) | Authentication method and apparatus for sharing login ID | |
JP2004310372A (en) | Password setting method, device and log-in server | |
JP6499736B2 (en) | User authentication method and system for realizing the method | |
CN105519069B (en) | Data processing system, center fixture and program | |
JP2010033385A (en) | Network telephone directory system, network telephone directory management method and program | |
JP7200776B2 (en) | Information processing system and program | |
JP4878566B2 (en) | Digital certificate distribution system, digital certificate distribution method, and digital certificate distribution program | |
JP4624942B2 (en) | Home gateway software permission management system | |
JP5226636B2 (en) | Security maintenance support system and information terminal | |
CN113196263A (en) | User authentication system, user authentication server, and user authentication method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070808 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100817 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100917 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101116 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101209 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110208 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110215 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140225 Year of fee payment: 3 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |