JP2001075854A - Method and system for data management, and storage medium with data management program stored therein - Google Patents

Method and system for data management, and storage medium with data management program stored therein

Info

Publication number
JP2001075854A
JP2001075854A JP24677699A JP24677699A JP2001075854A JP 2001075854 A JP2001075854 A JP 2001075854A JP 24677699 A JP24677699 A JP 24677699A JP 24677699 A JP24677699 A JP 24677699A JP 2001075854 A JP2001075854 A JP 2001075854A
Authority
JP
Japan
Prior art keywords
data
record
user
database
access
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
Application number
JP24677699A
Other languages
Japanese (ja)
Inventor
Taka Kobayashi
挙 小林
Shunichi Torii
俊一 鳥居
Masashi Tsuchida
正士 土田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP24677699A priority Critical patent/JP2001075854A/en
Publication of JP2001075854A publication Critical patent/JP2001075854A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To facilitate the access control for every user in a record unit in a data management system where a plurality of users share a database. SOLUTION: This data management system 105 managing a database 102 has record attribute information being information on each record stored in the database other than the column value of the column of a record defined by a user. The record attribute information includes, for instance, a user identifier showing the owner of the record corresponding to the record attribute information, an access right showing what action is allowed to be performed about the record by a user being the owner of the record and an access right showing what action is allowed to be performed about the record by a user being different from the owner of the record. The record attribute information is referred to about an inquiry from an application program, the approval/denial of the access for the user to the record is judged, and consequently, the access control of a record unit for every user is performed.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、データ管理方法、
データ管理システム、および該システムに係るプログラ
ムやデータを記憶した記憶媒体に関し、特に、レコード
単位でユーザごとのアクセス制御を行うデータ管理の方
法などに関する。
[0001] The present invention relates to a data management method,
The present invention relates to a data management system and a storage medium storing programs and data related to the system, and more particularly to a data management method for performing access control for each user on a record basis.

【0002】[0002]

【従来の技術】データベース用問合せ言語の標準規格で
あるSQLでは、ユーザごとのアクセス制御として、GRANT
文により、テーブル単位で参照、更新、および削除など
のアクセスの制御を行うことが規定されている。
2. Description of the Related Art SQL, which is a standard for a query language for databases, uses GRANT as an access control for each user.
The statement stipulates that access control such as reference, update, and delete is performed in table units.

【0003】これに対し、データベースシステムにおい
て、レコード単位でユーザごとにアクセス制御を行う方
法として、データベースに格納するレコードを構成する
カラム値にユーザを識別する値を設定し、データベース
を利用するプログラムが、そのユーザを識別する値によ
ってアクセス制御する方法がある。そのような例として
は、例えば、特開平10−124491号「文書共有整
理システム、共有文書管理装置および文書アクセス装
置」に開示された方法がある。
On the other hand, in a database system, as a method of performing access control for each user on a record-by-record basis, a program that uses a database by setting a value for identifying a user to a column value constituting a record stored in the database is used. There is a method of controlling access by a value for identifying the user. As such an example, there is a method disclosed in, for example, Japanese Patent Application Laid-Open No. Hei 10-124491, "Document Sharing and Organizing System, Shared Document Management Device and Document Accessing Device".

【0004】また、レコード単位でユーザごとにアクセ
ス制御する方法としては、特開平6−348575号
「データベース制御装置」に開示された方法がある。こ
の方法では、カラム値の条件とユーザごとのアクセス権
との対応を設定したアクセス権管理テーブルを用い、ア
クセス権管理テーブルの設定に従って、カラム値がある
条件を満たした場合に、それに対応するユーザごとのア
クセスを制御することにより、レコード単位の複雑なア
クセス権制御を実現できるようにしている。
As a method of controlling access for each user on a record-by-record basis, there is a method disclosed in JP-A-6-348575, "Database Controller". This method uses an access right management table that sets the correspondence between column value conditions and access rights for each user. If the column value satisfies a certain condition according to the settings in the access right management table, the corresponding user By controlling the access for each record, it is possible to realize complicated access right control on a record basis.

【0005】[0005]

【発明が解決しようとする課題】前記の従来技術では、
データベースを管理するデータベース管理システムにお
いて、レコードを構成する、ユーザが定義したカラムの
カラム値以外の情報をもとにしてデータベース処理を制
御することについて配慮されておらず、そのため、アク
セス制御の判断のもとになる値をすべてカラム値で表現
しレコードに含めてデータベースに格納し、データベー
スを利用するプログラムにおいてカラム値をもとにアク
セス制御を行わなければならず、データベースを利用す
るプログラムの負荷が大きいという問題があった。
In the above prior art,
In the database management system that manages the database, no consideration is given to controlling database processing based on information other than the column values of user-defined columns that constitute records, and therefore, access control decisions are not taken into account. All of the underlying values must be expressed as column values, included in the records and stored in the database, and access control must be performed based on the column values in the program that uses the database. There was a problem of being big.

【0006】例えば、複数のユーザが1つのスキーマの
1つのテーブルにレコードを登録し、あるユーザがその
テーブルから自分の作成したレコードのみを参照できる
ようにアクセス制御するには、データベースを利用する
プログラムであるアプリケーションプログラムで、以下
のようなアクセス制御を行う必要がある。
For example, in order to control access so that a plurality of users register records in one table of one schema and a certain user can refer to only records created by the user from the table, a program using a database is used. It is necessary to perform the following access control in the application program that is.

【0007】まず、テーブルの定義において、各レコー
ドを作成したユーザを示すユーザ識別子を保持するカラ
ムを用意しなければならない。そして、レコード登録に
おいて、アプリケーションプログラムは、ユーザ識別子
を生成し、ユーザ識別子を保持するよう定義したカラム
にそのユーザ識別子を格納するようにする。
First, in the definition of a table, a column for holding a user identifier indicating the user who created each record must be prepared. Then, in the record registration, the application program generates a user identifier and stores the user identifier in a column defined to hold the user identifier.

【0008】そして、検索においては、次の2つの方法
によりアクセス制御を行う。
In the search, access control is performed by the following two methods.

【0009】1つの方法は、データベースへの問合せ
(データベース管理システムへの検索要求)で、前記の
ユーザ識別子を保持するカラムに検索を実行するユーザ
のユーザ識別子が保持されているレコードのみを検索す
るように問合せの条件を設定し、データベース管理シス
テムでの一般的な条件による絞り込みにより、レコード
を選択する方法である。
One method is to query a database (search request to a database management system) to search only records in which a user ID of a user who executes a search is stored in the column holding the user ID. In this method, the conditions of the query are set as described above, and records are selected by narrowing down by general conditions in the database management system.

【0010】もう1つの方法は、データベースを検索し
て得られるレコードのうち、前記のユーザ識別子を保持
するカラムに検索を実行したユーザのユーザ識別子が保
持されているレコードのみをアプリケーションプログラ
ムが選択する方法である。
Another method is that the application program selects only records in which the user identifier of the user who has executed the search is stored in the column holding the user identifier among the records obtained by searching the database. Is the way.

【0011】このように、従来技術によれば、ユーザご
とのアクセス制御は、すべてアプリケーションプログラ
ムが実装しなければならない。
As described above, according to the prior art, all access control for each user must be implemented by an application program.

【0012】なお、同じユーザを示すためにユーザ識別
子を統一したり、複数のテーブルで同様にユーザ識別を
行うために整合性を保つことも、アプリケーションプロ
グラムで保証しなければならない。
The application program must ensure that the user identifiers are unified to indicate the same user, and that consistency is maintained in order to identify users in a plurality of tables.

【0013】また、データベースに登録されるユーザ識
別子は、データベース管理システムの管理外でアプリケ
ーションプログラムが独自に作成した値であり、データ
ベース管理システムは、それがユーザを識別するための
値であることを認識しない。ユーザ識別子を保持するカ
ラムも、データベース管理システムでは、ユーザを識別
するための特別なカラムとして他のカラムと区別して取
り扱うことはないので、データベース管理システムは、
ユーザ識別子を保持したカラムをもとにユーザを認識す
ることはない。従って、アクセス制御を行うアプリケー
ションプログラムを介さずに直接データベース管理シス
テムを通してデータベースを参照するユーザ、あるいは
ユーザ識別子を故意に変更するユーザには、アクセス制
御することができない。
Further, the user identifier registered in the database is a value independently created by the application program outside the management of the database management system, and the database management system determines that it is a value for identifying the user. not recognize. In the database management system, the column that holds the user identifier is not treated as a special column for identifying the user separately from other columns.
The user is not recognized based on the column holding the user identifier. Therefore, access control cannot be performed for a user who directly refers to the database through the database management system without using an application program for performing access control, or for a user who intentionally changes the user identifier.

【0014】また、SQLで規定されたユーザ管理をサポ
ートするデータベース管理システムにおけるユーザ管理
とは独立にアプリケーションプログラムでアクセス制御
を行うことになるため、データベース管理システムで行
われるアクセス制御とアプリケーションで行うアクセス
制御とを、整合するように調整しなければならない。
In addition, since access control is performed by an application program independently of user management in a database management system that supports user management specified by SQL, access control performed by the database management system and access control performed by an application are performed. Controls must be adjusted to match.

【0015】また、1つのスキーマ内では同じ名称のテ
ーブルを定義することができず、1つのテーブルを複数
のユーザが共用した場合、テーブルにUNIQUE指定する
と、異なるユーザが同一のレコードを登録できない。よ
って、同一の表を複数ユーザが共用して、ユーザごとに
個人別にレコードを参照するようなことはできない。
In addition, a table having the same name cannot be defined in one schema. When one table is shared by a plurality of users, if the table is specified as UNIQUE, different users cannot register the same record. Therefore, it is not possible for a plurality of users to share the same table and to refer to the record for each user individually.

【0016】従来技術では、上記の問題を解決する方法
やシステムが開示されていない。
The prior art does not disclose a method or system for solving the above problem.

【0017】本発明の目的は、複数のユーザがデータベ
ースを共用するデータ管理システムにおいて、レコード
単位でユーザごとのアクセス制御を容易にすることにあ
る。
An object of the present invention is to facilitate access control for each user in a record unit in a data management system in which a plurality of users share a database.

【0018】[0018]

【課題を解決するための手段】上記目的を達成するた
め、本発明は、データへのアクセスを管理するデータ管
理方法において、データに対応付けられたアクセス制御
に関する値を保持するデータ属性を管理し、データ処理
要求を入力すると、該データ処理要求がデータにアクセ
ス可能であるかを該データに対応付けられた前記データ
属性に基づいて判定し、該判定の結果アクセス可能であ
る場合に当該データに対して前記データ処理要求に基づ
いたデータ処理を行うことを特徴とする。
In order to achieve the above object, the present invention relates to a data management method for managing access to data, which manages a data attribute holding a value relating to access control associated with data. When a data processing request is input, whether the data processing request is accessible to data is determined based on the data attribute associated with the data, and if the result of the determination indicates that the data is accessible, On the other hand, data processing based on the data processing request is performed.

【0019】また、前記データ属性の値が未指定の場
合、あらかじめ指示された値を前記データ属性の値とみ
なすことを特徴とする。さらに本発明は、データ処理要
求を行うユーザを識別するユーザ識別子と、データに対
して該ユーザがアクセス可能であるか否かを示すアクセ
ス権を、該データに対応付けがなされている前記データ
属性に含むことを特徴とする。
Further, when the value of the data attribute is unspecified, a value designated in advance is regarded as the value of the data attribute. Further, according to the present invention, a user identifier for identifying a user who makes a data processing request and an access right indicating whether or not the user can access the data are assigned to the data attribute associated with the data. Is included.

【0020】また本発明は、データへのアクセスを管理
するデータ管理システムにおいて、データ処理要求を行
ったユーザを認識するユーザ認識手段と、該データ処理
要求を解析し、要求されているアクションを認識する要
求解析手段と、前記データ属性に、データに対してユー
ザがアクションを行えるか否かを示すアクセス権を保持
して、該データ属性に基づいてデータへのアクセス可否
を判定するアクセス可否判定手段を備えることを特徴と
する。
According to the present invention, in a data management system for managing access to data, a user recognizing means for recognizing a user who has made a data processing request, and analyzing the data processing request and recognizing a requested action. Request analysis means for determining whether or not a user can perform an action on data in the data attribute, and determining whether or not access to data is possible based on the data attribute It is characterized by having.

【0021】さらに本発明は、データへのアクセスを管
理するデータ管理システムにおけるデータ管理プログラ
ムを格納した記憶媒体であって、前記データ管理プログ
ラムは、データに対応付けられたアクセス制御に関する
値を保持するデータ属性を管理し、データ処理要求を入
力すると、該データ処理要求がデータにアクセス可能で
あるかを該データに対応付けられた前記データ属性に基
づいて判定し、該判定の結果アクセス可能である場合に
当該データに対して前記データ処理要求に基づいたデー
タ処理を行うものであることを特徴とする。
Further, the present invention is a storage medium storing a data management program in a data management system for managing access to data, wherein the data management program holds a value relating to access control associated with data. When the data attribute is managed and a data processing request is input, it is determined whether the data processing request is accessible to the data based on the data attribute associated with the data, and as a result of the determination, the data is accessible. In this case, data processing is performed on the data based on the data processing request.

【0022】[0022]

【発明の実施の形態】以下、本発明の実施の形態を図面
を用いて詳細に説明する。まず、本発明の実施形態のデ
ータベースシステムを示し、本発明の原理を説明する。
Embodiments of the present invention will be described below in detail with reference to the drawings. First, a database system according to an embodiment of the present invention will be described, and the principle of the present invention will be described.

【0023】図1は、本発明の実施形態のデータベース
システムの概要を示す概念図である。このデータベース
システム101は、データベース102へのユーザ10
3からのアクセスを管理するシステムである。
FIG. 1 is a conceptual diagram showing an outline of a database system according to an embodiment of the present invention. The database system 101 stores the user 10
3 is a system for managing access from the third party.

【0024】図1に示すように、本実施形態のデータベ
ースシステム101は、アプリケーションプログラム
(AP)104と、データベース管理システム105から
なる。
As shown in FIG. 1, the database system 101 of the present embodiment includes an application program (AP) 104 and a database management system 105.

【0025】AP104は、データベース接続要求106
をデータベース管理システム105に送信してデータベ
ース管理システム105との接続を確立し、ユーザ10
3からの要求を表わす問合せ107をデータベース管理
システム105に送信し、その要求に見合うデータベー
ス処理の結果である問合せ処理結果108を受け取るプ
ログラムである。
The AP 104 sends a database connection request 106
Is transmitted to the database management system 105 to establish a connection with the database management system 105 and the user 10
3 is a program that transmits a query 107 representing a request from the third server to the database management system 105 and receives a query processing result 108 which is a result of database processing corresponding to the request.

【0026】データベース管理システム105は、デー
タベース102を管理し、AP104からの問合せに見合
うデータベース処理を行い、その処理結果である結果デ
ータ109を含む問合せ処理結果108をAP104に返
却するプログラムである。
The database management system 105 is a program that manages the database 102, performs database processing corresponding to the inquiry from the AP 104, and returns an inquiry processing result 108 including result data 109 as the processing result to the AP 104.

【0027】データベース管理システム105は、実行
制御部110と、要求解析部111と、ユーザ認証部1
12と、データ検索部113と、アクセス可否判定部1
14からなる。
The database management system 105 includes an execution control unit 110, a request analysis unit 111, and a user authentication unit 1.
12, the data search unit 113, and the access permission determination unit 1
Consists of fourteen.

【0028】実行制御部110は、データベース管理シ
ステム105内で行う処理の実行制御を行う。すなわ
ち、実行制御部110は、データベース管理システム1
05で行う一連の処理の部分処理を、要求解析部111
と、ユーザ認証部112と、データ検索部113と、ア
クセス可否判定部114で処理するように制御する。要
求解析部111は、AP104からの要求を解析する。ユ
ーザ認証部112は、AP104からのデータベース接続
要求106に含まれるユーザを識別する指定をもとに、
ユーザ103の認証を行う。データ検索部113は、デ
ータベース102に保持しているテーブル115のレコ
ードを検索する。アクセス可否判定部114は、レコー
ド属性情報116に含まれるアクセス権を示す情報を参
照し、AP104の問合せ107に見合うデータベース処
理での、レコードに対するアクセスの可否を判定する。
The execution control unit 110 controls the execution of the processing performed in the database management system 105. That is, the execution control unit 110 executes the database management system 1
05 is executed by the request analysis unit 111
, The user authentication unit 112, the data search unit 113, and the access determination unit 114. The request analysis unit 111 analyzes a request from the AP 104. The user authentication unit 112, based on the specification for identifying the user included in the database connection request 106 from the AP 104,
The user 103 is authenticated. The data search unit 113 searches for a record in the table 115 stored in the database 102. The access permission / non-permission determining unit 114 refers to the information indicating the access right included in the record attribute information 116 and determines whether or not the access to the record is possible in the database processing corresponding to the inquiry 107 of the AP 104.

【0029】データベース102は、レコードを保持す
るテーブル115と、それぞれのレコードに関する属性
情報を保持するレコード属性情報116からなる。図1
では、テーブル115のレコードとそのレコードに関す
る属性情報とが同じ行になるように対応させて図示して
ある。
The database 102 comprises a table 115 for holding records and record attribute information 116 for holding attribute information on each record. FIG.
Here, the records of the table 115 and the attribute information related to the records are shown in correspondence so as to be on the same line.

【0030】次に、データベースシステム101におけ
るデータ検索処理の概要を説明する。まず、AP104が
データベース接続要求を行う。この接続要求を、データ
ベース言語SQL文で以下のように記述する。
Next, an outline of a data search process in the database system 101 will be described. First, the AP 104 makes a database connection request. This connection request is described in the database language SQL statement as follows.

【0031】 CONNECT TO dbserver USER 'usr1' … 106CONNECT TO dbserver USER 'usr1' ... 106

【0032】このように、データベース管理システム1
05をデータベースサーバとして識別する名称dbserver
を指定し、データベース管理システム105がユーザ1
03を識別するために用いるユーザ識別子usr1を指定す
る。
As described above, the database management system 1
Name to identify 05 as the database server dbserver
Is specified, and the database management system 105
Designate a user identifier usr1 used to identify 03.

【0033】データベース管理システム105は、デー
タベース接続要求106に従い、ユーザ認証部112に
よりユーザの認証を行い、実行ユーザ情報117を作成
し、AP104とデータベース管理システム105との接
続を確立する。
The database management system 105 authenticates the user by the user authentication unit 112 in accordance with the database connection request 106, creates execution user information 117, and establishes a connection between the AP 104 and the database management system 105.

【0034】次に、AP104が、検索の問合せをデータ
ベース管理システム105に送信する。この問合せを、
データベース言語SQL文で以下のように記述する。
Next, the AP 104 transmits a search query to the database management system 105. This query
Describe in the database language SQL statement as follows.

【0035】 SELECT clm1 FROM tbl1 WHERE clm2 < 200 … 107SELECT clm1 FROM tbl1 WHERE clm2 <200… 107

【0036】これは、テーブルtbl1から、カラムclm2の
値が200より小さいレコードのカラムclm1の値を検索す
る問合せである。
This is a query for searching the table tbl1 for the value of the column clm1 of the record in which the value of the column clm2 is smaller than 200.

【0037】データベース管理システム105では、実
行制御部110による制御のもとで、以下の処理を行
う。まず、要求解析部111で、問合せ107を解析す
る。解析の結果、要求されたアクションの種別が検索で
あることを示す要求アクション118を作成する。次
に、データ検索部113が、データベース102に保持
するテーブル115から、問合せの条件を満たすレコー
ドを取得する。次に、アクセス可否判定部114が、デ
ータ検索部113が取得したレコードに対応するレコー
ド属性情報116を取得し、該レコード属性情報に含ま
れるアクセス権を参照して、要求アクションである検索
を実行可能かどうかを判定する。
The database management system 105 performs the following processing under the control of the execution control unit 110. First, the request analysis unit 111 analyzes the inquiry 107. As a result of the analysis, a request action 118 indicating that the type of the requested action is a search is created. Next, the data search unit 113 acquires a record satisfying the query condition from the table 115 stored in the database 102. Next, the access permission / non-permission determining unit 114 acquires the record attribute information 116 corresponding to the record acquired by the data retrieval unit 113, and executes a search as a requested action by referring to the access right included in the record attribute information. Determine whether it is possible.

【0038】図1の例では、実行ユーザ情報がusr1であ
ることから、所有者がusr1のレコードについてはレコー
ド属性情報116のうちの所有者アクセス権を、所有者
がusr1ではないレコードについてはレコード属性情報1
16のうちの他者アクセス権を参照し、そのアクセス権
に検索の実行権を含むレコードについてのみ、検索を実
行する。次に、データ検索部113は、検索の実行が可
能なレコードに対してのみ、SELECT句に指定されたカラ
ムclm1の値を取り出し、結果データ109を作成して、
問合せ結果108としてAP104に返却し、検索処理を
終了する。
In the example of FIG. 1, since the execution user information is usr1, the owner access right of the record attribute information 116 is assigned to the record whose owner is usr1, and the record is assigned to the record whose owner is not usr1. Attribute information 1
Reference is made to the other person's access right out of 16, and the search is executed only for the record whose access right includes the search execution right. Next, the data search unit 113 extracts the value of the column clm1 specified in the SELECT clause only for the record that can be searched, creates the result data 109,
The search result is returned to the AP 104 as an inquiry result 108, and the search processing is terminated.

【0039】この例に示したように、本実施形態によれ
ば以下の効果がある。アクセス可否判定部114が、実
行ユーザ情報117をもとに、レコードのカラム値とは
異なるレコード属性情報116に含まれるアクセス権を
参照してアクセス可否を判定して、データベース管理シ
ステム105でアクセス制御を行うことから、AP104
で複雑なアクセス制御を行うことなく容易にユーザごと
のレコード単位のアクセス制御を行うことができる。
As shown in this example, the present embodiment has the following effects. The access permission / non-permission determining unit 114 determines access permission based on the execution user information 117 with reference to the access right included in the record attribute information 116 different from the record column value. The AP 104
Therefore, it is possible to easily perform access control in units of records for each user without performing complicated access control.

【0040】図2は、図1の実施形態におけるハードウ
ェア構成例を示す図である。本発明の実施形態として示
すプログラムは、図2に示すデータ処理装置の上で動作
する。
FIG. 2 is a diagram showing an example of a hardware configuration in the embodiment of FIG. A program shown as an embodiment of the present invention operates on the data processing device shown in FIG.

【0041】データ処理装置201−1、201−2
は、それぞれ、中央演算装置(CPU)202−1、202
−2、主記憶装置(メモリ)203−1、203−2、
入出力(I/O)コントローラ204−1、204−2、通
信コントローラ205−1、205−2、およびこれら
を接続するシステムバス206−1、206−2などか
らなる。また、I/Oコントローラ204−1、204−
2には、キーボードやマウスおよびディスプレイなどの
ようなデータ入出力装置207−1、207−2、およ
び、磁気ディスク装置のようなデータ記憶装置208−
1、208−2などが接続される。
Data processing devices 201-1 and 201-2
Are central processing units (CPU) 202-1, 202, respectively.
-2, main storage devices (memory) 203-1 and 203-2,
It comprises input / output (I / O) controllers 204-1 and 204-2, communication controllers 205-1 and 205-2, and system buses 206-1 and 206-2 connecting these. Also, the I / O controllers 204-1 and 204-
2 includes data input / output devices 207-1 and 207-2 such as a keyboard, a mouse, and a display, and a data storage device 208- such as a magnetic disk device.
1, 208-2 and the like are connected.

【0042】データ処理装置201−1、201−2
は、通信コントローラ205−1、205−2によりLA
N(Local Area Network)などのネットワーク209に接
続されており、ネットワーク209に接続されているほ
かのデータ処理装置と通信を行なう。
Data processing devices 201-1 and 201-2
Is LA by the communication controllers 205-1 and 205-2.
It is connected to a network 209 such as an N (Local Area Network) and communicates with other data processing devices connected to the network 209.

【0043】図1およびこれ以降に示すデータ処理は、
CPU202−1、202−2がメモリ203−1、20
3−2に格納されたプログラムを実行することにより実
現される。AP104およびデータベース管理システム1
05の機能を実現するプログラムは、それぞれメモリ2
03−1、203−2に格納されて、CPU202−1、
202−2により実行される。なお、AP104およびデ
ータベース管理システム105は、それぞれソフトウェ
アの論理的な機能単位であり、それぞれが互いに物理的
に異なるデータ処理装置201−1、201−2上で動
作しても良いし、1つのデータ処理装置上でこれらの複
数の機能のプログラムが動作しても良い。また、データ
ベース102などは、データ記憶装置208−1、20
8−2にデータを格納することにより実現される。
The data processing shown in FIG.
The CPUs 202-1 and 202-2 store the memories 203-1 and 20-20.
This is realized by executing the program stored in 3-2. AP104 and database management system 1
The programs that implement the functions of
03-1, 203-2, and the CPU 202-1,
202-2. Note that the AP 104 and the database management system 105 are logical functional units of software, respectively, and may each operate on physically different data processing devices 201-1 and 201-2. A program for these functions may operate on the processing device. Further, the database 102 and the like include the data storage devices 208-1 and 20
This is realized by storing data in 8-2.

【0044】次に、図1の実施形態のデータベースシス
テムをさらに詳細に説明する。
Next, the database system of the embodiment shown in FIG. 1 will be described in more detail.

【0045】図3は、図1の実施形態のデータベースシ
ステムの詳細な構成を示す構成図である。基本的な構成
は図1に示したシステムの構成と同じであるが、図1で
説明したアクセス制御を行うためにインデクスを用いる
ように具体化している。すなわち、データベース管理シ
ステム105においてインデクス305を用い、データ
ベース管理システム105は、インデクス管理部30
1、データ登録部302、データ削除部303、および
データ更新部304を備えている。
FIG. 3 is a configuration diagram showing a detailed configuration of the database system of the embodiment of FIG. The basic configuration is the same as the configuration of the system shown in FIG. 1, but the embodiment is embodied to use an index for performing the access control described in FIG. That is, the database management system 105 uses the index 305, and the database management system 105
1, a data registration unit 302, a data deletion unit 303, and a data update unit 304.

【0046】インデクス管理部301は、一般的なデー
タベース管理システムにおけるインデクス機能をサポー
トし、テーブル115のレコードのカラム値をキーと
し、データベースにおいてレコードを識別する識別子を
値とした組をインデクスレコード306に保持してイン
デクス305に格納する。インデクス管理部301によ
り、キーのカラム値の条件を満たすレコードのレコード
識別子を取得する。
The index management unit 301 supports an index function in a general database management system, and uses a column value of a record in the table 115 as a key and a set of an identifier for identifying the record in the database as a value in the index record 306. It is stored and stored in the index 305. The index management unit 301 acquires a record identifier of a record that satisfies the condition of the key column value.

【0047】図4は、テーブル115およびレコード属
性情報116の構造を示す図である。
FIG. 4 is a diagram showing the structure of the table 115 and the record attribute information 116.

【0048】テーブル115は、2つのカラムclm1、cl
m2を備え、tbl1で識別されるテーブルを示す。
The table 115 has two columns clm1, clm
Shows a table with m2 and identified by tbl1.

【0049】テーブル115は、レコード401、40
2、403、404、405を保持する。レコード40
1は、カラムclm1、clm2のそれぞれに対するカラム値aa
a、200からなる。レコード402は、カラムclm1、clm2
のそれぞれに対するカラム値bbb、100からなる。レコー
ド403は、カラムclm1、clm2のそれぞれに対するカラ
ム値ccc、100からなる。レコード404は、カラムclm
1、clm2のそれぞれに対するカラム値ddd、210からな
る。レコード405は、カラムclm1、clm2のそれぞれに
対するカラム値eee、150からなる。
The table 115 includes records 401 and 40
2, 403, 404, and 405 are held. Record 40
1 is the column value aa for each of the columns clm1 and clm2
a, consisting of 200. Record 402 has columns clm1, clm2
Consists of the column values bbb and 100 for each of. The record 403 includes column values ccc and 100 for the columns clm1 and clm2, respectively. Record 404 has column clm
1, column values ddd and 210 for clm2 respectively. The record 405 includes column values eee and 150 for the columns clm1 and clm2, respectively.

【0050】レコード属性情報116は、テーブル11
5のレコード401、402、403、404、405
のそれぞれに対応する属性情報406、407、40
8、409、410を保持する。
The record attribute information 116 is stored in the table 11
5 records 401, 402, 403, 404, 405
Attribute information 406, 407, 40 corresponding to each of
8, 409 and 410 are held.

【0051】この属性情報は、所有者、所有者アクセス
権、および他者アクセス権からなる。レコード401の
レコード属性情報406の所有者、所有者アクセス権、
および他者アクセス権は、それぞれ、usr1、「検索 更
新 削除」、および設定無し、であり、これは以下のこ
とを示す。レコード401の所有者がusr1で識別される
ユーザである。レコード401の所有者usr1がレコード
401に対して行えるデータベース処理のアクションは
検索、更新、および削除である。レコード401の所有
者usr1以外がレコード401に対して行えるデータベー
ス処理のアクションは、ない。
This attribute information includes an owner, an owner access right, and another person access right. The owner of the record attribute information 406 of the record 401, the owner access right,
And the other person's access rights are usr1, "search / update / delete", and no setting, respectively, which indicate the following: The owner of the record 401 is the user identified by usr1. The database processing actions that the owner usr1 of the record 401 can perform on the record 401 are search, update, and delete. There is no database processing action that can be performed on the record 401 by anyone other than the owner usr1 of the record 401.

【0052】同様に、レコード402に対応するレコー
ド属性情報407は、以下のことを示す。レコード40
2の所有者がusr1で識別されるユーザである。レコード
402の所有者usr1がレコード402に対して行えるデ
ータベース処理のアクションは検索、更新、および削除
である。レコード402の所有者usr1以外がレコード4
02に対して行えるデータベース処理のアクションは検
索である。
Similarly, the record attribute information 407 corresponding to the record 402 indicates the following. Record 40
Owner 2 is the user identified by usr1. The database processing actions that the owner usr1 of the record 402 can perform on the record 402 are search, update, and delete. Record 4 other than owner usr1 of record 402
The action of database processing that can be performed on 02 is search.

【0053】レコード403に対応するレコード属性情
報408は、以下のことを示す。レコード403の所有
者がusr2で識別されるユーザである。レコード403の
所有者usr2がレコード403に対して行えるデータベー
ス処理のアクションは削除である。レコード403の所
有者usr2以外がレコード403に対して行えるデータベ
ース処理のアクションは検索である。
The record attribute information 408 corresponding to the record 403 indicates the following. The owner of the record 403 is the user identified by usr2. The database processing action that can be performed on the record 403 by the owner usr2 of the record 403 is deletion. A database processing action that can be performed on the record 403 by a person other than the owner usr2 of the record 403 is search.

【0054】レコード404に対応するレコード属性情
報409は、以下のことを示す。レコード404の所有
者がusr3で識別されるユーザである。レコード404の
所有者usr3がレコード404に対して行えるデータベー
ス処理のアクションは検索、および削除である。レコー
ド404の所有者usr3以外がレコード404に対して行
えるデータベース処理のアクションは、ない。
The record attribute information 409 corresponding to the record 404 indicates the following. The owner of the record 404 is the user identified by usr3. The database processing actions that the owner usr3 of the record 404 can perform on the record 404 are search and delete. No database processing action can be performed on the record 404 by anyone other than the owner usr3 of the record 404.

【0055】レコード405に対応するレコード属性情
報410は、以下のことを示す。レコード405の所有
者がusr2で識別されるユーザである。レコード405の
所有者usr2がレコード405に対して行えるデータベー
ス処理のアクションは検索、更新、および削除である。
レコード405の所有者usr2以外がレコード405に対
して行えるデータベース処理のアクションは検索、更
新、および削除である。
The record attribute information 410 corresponding to the record 405 indicates the following. The owner of the record 405 is the user identified by usr2. The database processing actions that the owner usr2 of the record 405 can perform on the record 405 are search, update, and delete.
The database processing actions that can be performed on the record 405 by a person other than the owner usr2 of the record 405 are search, update, and delete.

【0056】このようなテーブル115およびレコード
属性情報116の構成により、レコード単位のユーザご
とのアクセス権を示す情報を保持する。
With such a configuration of the table 115 and the record attribute information 116, information indicating an access right for each user in a record unit is held.

【0057】なお、この例ではテーブル115とレコー
ド属性情報116を分けて構成しているが、レコード属
性情報116の内容をテーブル115のカラムに保持す
るように、ユーザが定義したカラムとは別にデータベー
ス管理システム105が作成して構成しても良い。
In this example, the table 115 and the record attribute information 116 are configured separately. However, a database is provided separately from the column defined by the user so that the contents of the record attribute information 116 are stored in the columns of the table 115. It may be created and configured by the management system 105.

【0058】図5は、図3のインデクス305に保持す
るインデクスレコード306の構成を示す図である。図
3のインデクス305は、図4で説明したtbl1で識別さ
れるテーブル115に対し、カラムclm2をキーとして設
定されたインデクスである。
FIG. 5 is a diagram showing the structure of the index record 306 held in the index 305 of FIG. The index 305 in FIG. 3 is an index set using the column clm2 as a key for the table 115 identified by tbl1 described in FIG.

【0059】そのインデクスレコード306は、図5に
示すように、キー値501、レコード識別子502、お
よびレコード属性情報503からなる。レコード属性情
報503は、ユーザ識別子504と、所有者アクセス権
505と、他者アクセス権506からなる。図5に図示
したインデクスレコード306は、テーブル115のレ
コード401に対応するインデクスレコードであり、キ
ー値501が200、レコード識別子502がレコード4
01を識別するレコード識別子rcdid1である。また、レ
コード属性情報503は、レコード401の所有者がユ
ーザusr1であり、レコード401の所有者アクセス権が
検索、更新、および削除であり、レコード402の他者
アクセス権がなし、であることを示す。
As shown in FIG. 5, the index record 306 includes a key value 501, a record identifier 502, and record attribute information 503. The record attribute information 503 includes a user identifier 504, an owner access right 505, and another person access right 506. The index record 306 illustrated in FIG. 5 is an index record corresponding to the record 401 of the table 115, and the key value 501 is 200 and the record identifier 502 is record 4
01 is a record identifier rcdid1 that identifies 01. The record attribute information 503 indicates that the owner of the record 401 is the user usr1, the owner access right of the record 401 is search, update, and delete, and the record 402 has no other access right. Show.

【0060】このような構成により、インデクスレコー
ド306により、ユーザごとのレコード単位のアクセス
権を示す。
With such a configuration, the index record 306 indicates an access right for each user in a record unit.

【0061】図6は、上述のデータベースシステム10
1におけるデータベース接続処理の流れを示すフローチ
ャートである。
FIG. 6 shows the database system 10 described above.
3 is a flowchart showing the flow of a database connection process in the first embodiment;

【0062】まず、AP104が、データベース管理シス
テム105に対してデータベース接続を要求する(60
1)。すなわち、データベース接続要求106をデータ
ベース管理システム105に送信する。次に、ユーザ認
証部112が、データベース接続要求106を解析し、
ユーザを認証する(602)。一般的にデータベース管
理システムで行われるユーザ認証で良い。次に、データ
ベース管理システム105が、ステップ602で認証し
たユーザに関する情報をもとに実行ユーザ情報117を
作成する(603)。次に、データベース管理システム
105は、AP104との接続を確立する(604)。一
般的にデータベース管理システムで行われる接続の確立
処理で良い。以上でデータベース接続処理を終了する。
First, the AP 104 requests a database connection to the database management system 105 (60).
1). That is, a database connection request 106 is transmitted to the database management system 105. Next, the user authentication unit 112 analyzes the database connection request 106,
The user is authenticated (602). Generally, user authentication performed in a database management system may be used. Next, the database management system 105 creates execution user information 117 based on the information on the user authenticated in step 602 (603). Next, the database management system 105 establishes a connection with the AP 104 (604). Generally, connection establishment processing performed by a database management system may be used. Thus, the database connection process ends.

【0063】この処理により、データベース管理システ
ム105は、以降に行われるAP104の問合せ107に
従うデータベース処理が、どのユーザからの要求である
かを判別するための実行ユーザ情報117を得る。
With this processing, the database management system 105 obtains the execution user information 117 for determining which user is required to perform the database processing according to the inquiry 107 of the AP 104, which is performed thereafter.

【0064】図7は、データベースシステム101にお
ける基本的なデータベース処理の流れを示すフローチャ
ートである。
FIG. 7 is a flowchart showing the flow of basic database processing in the database system 101.

【0065】まず、AP104が、データベース管理シス
テム105に対して問合せ107を送信する(70
1)。次に、データベース管理システム105の要求解
析部111が、問合せ107を解析する(702)。そ
の解析結果として問合せ解析結果705を出力する。ま
た、問合せで要求されている検索、更新、あるいは削除
などのデータベース処理のアクションを示す要求アクシ
ョン118を出力する。
First, the AP 104 sends an inquiry 107 to the database management system 105 (70).
1). Next, the request analysis unit 111 of the database management system 105 analyzes the inquiry 107 (702). An inquiry analysis result 705 is output as the analysis result. In addition, a request action 118 indicating a database processing action such as search, update, or deletion requested by the query is output.

【0066】次に、データベース管理システム105が
問合せ107に見合うデータベース処理を行う(70
3)。すなわち、要求アクション118に示される検
索、更新、削除などの要求に応じて、実行ユーザ情報1
17をもとに、アクセス可否判定部114によりアクシ
ョンの実行可否を判定しながら、データベース処理を行
う。この詳細は、後に図8、図14、図16、および図
21などを用いて説明する。データベース処理の結果、
問合せ処理結果108を出力する。
Next, the database management system 105 performs a database process corresponding to the inquiry 107 (70
3). That is, in response to a request for search, update, deletion, etc. indicated in the request action 118,
17, the database processing is performed while the access permission / inhibition determination unit 114 determines whether or not the action can be executed. The details will be described later with reference to FIG. 8, FIG. 14, FIG. 16, and FIG. As a result of database processing,
The query processing result 108 is output.

【0067】データベース管理システム105は、問合
せ処理結果108をAP104に返却し(704)、デー
タベース処理を終了する。
The database management system 105 returns the query processing result 108 to the AP 104 (704), and ends the database processing.

【0068】次に、データベースシステム101におけ
る検索処理の詳細について説明する。AP104の検索要
求は、図1に示した問合せ107と同じとする。また、
全体的なデータベース処理の流れは、図7に示したとお
りであり、検索処理の詳細については、図7のステップ
703のデータベース管理システム105における処理
の流れとして説明する。
Next, details of the search processing in the database system 101 will be described. The search request of the AP 104 is the same as the query 107 shown in FIG. Also,
The overall database processing flow is as shown in FIG. 7, and the details of the search processing will be described as the processing flow in the database management system 105 in step 703 in FIG.

【0069】図8は、データベース管理システム105
における検索処理のフローチャートである。
FIG. 8 shows the database management system 105.
3 is a flowchart of a search process in the embodiment.

【0070】まず、データベース管理システム105
は、問合せ解析結果705をもとに検索条件805を取
得する(801)。例えば、図1に示した問合せ107
であれば、clm2 < 200 という検索条件を得る。
First, the database management system 105
Acquires the search condition 805 based on the query analysis result 705 (801). For example, the query 107 shown in FIG.
Then, the search condition of clm2 <200 is obtained.

【0071】次に、データ検索部113が、データベー
ス102のレコードから結果データ806を作成する
(802)。具体的には、データ検索部113は、検索
アクションであることを示す要求アクション118、お
よび要求したユーザがusr1であることを示す実行ユーザ
情報117をもとに、アクセス可否判定部114が実行
可否を判定したレコードを処理対象として、検索処理を
行う。検索処理結果として結果データ806を出力す
る。詳細は後に図9を用いて説明する。
Next, the data search unit 113 creates result data 806 from the record of the database 102 (802). Specifically, the data search unit 113 determines whether the access permission / inhibition unit 114 is executable based on the request action 118 indicating that it is a search action and the execution user information 117 indicating that the requesting user is usr1. Search processing is performed on the record for which the determination is made as the processing target. The result data 806 is output as a search processing result. Details will be described later with reference to FIG.

【0072】次に、データベース管理システム105
は、ステップ802で結果データ806が得られたかど
うかを判定する(803)。結果データ806がある場
合は、該結果データを問合せ処理結果108に設定し
(804)、ステップ802に戻って、次の検索結果デ
ータを作成するよう処理を繰り返す。ステップ803の
判定で結果データがない場合(データベースの該当する
レコードをすべて処理した場合)は、この処理を終了す
る。
Next, the database management system 105
Determines whether the result data 806 has been obtained in step 802 (803). If there is the result data 806, the result data is set as the query processing result 108 (804), and the process returns to step 802 to repeat the process to create the next search result data. If there is no result data in the determination in step 803 (when all the corresponding records in the database have been processed), this processing ends.

【0073】図9は、データ検索部113における検索
処理結果作成の処理(図8のステップ802)を示すフ
ローチャートである。
FIG. 9 is a flowchart showing a process (step 802 in FIG. 8) for creating a search result in the data search unit 113.

【0074】まず、データ検索部113は、検索処理対
象にインデクスが設定されているか否かを判定する(9
01)。
First, the data search unit 113 determines whether or not an index has been set as a search processing target (9).
01).

【0075】インデクスが設定されている場合は、イン
デクス管理部301が問合せの条件を満たしかつアクセ
ス可能なレコードのレコード識別子905を取得し(9
02)(この処理の詳細は後に図10を用いて説明す
る)、続いてそのレコード識別子905をもとにデータ
検索部113がデータベース102からレコードを取得
して結果データ806を作成し(903)、この検索処
理を終了する。
If an index has been set, the index management unit 301 acquires a record identifier 905 of a record that satisfies the query condition and is accessible (9).
02) (details of this processing will be described later with reference to FIG. 10), and then, based on the record identifier 905, the data search unit 113 acquires a record from the database 102 and creates result data 806 (903). , This search process ends.

【0076】ステップ901の判定でインデクスが設定
されていない場合は、データ検索部113がデータベー
ス102から問合せの条件を満たしかつアクセス可能な
レコードを取得して結果データ806を作成し(90
4)(この処理の詳細は後に図12を用いて説明す
る)、この検索処理を終了する。
If the index has not been set in step 901, the data search unit 113 acquires a record that satisfies the query condition and is accessible from the database 102, and creates the result data 806 (90).
4) (Details of this processing will be described later with reference to FIG. 12), and this search processing ends.

【0077】図10は、インデクス管理部301におけ
る検索処理(図9のステップ902)のフローチャート
である。
FIG. 10 is a flowchart of the search process (step 902 in FIG. 9) in the index management unit 301.

【0078】まず、インデクス管理部301は、検索条
件805をもとに、条件を満たすインデクスレコード1
006を取得する(1001)。
First, based on the search condition 805, the index management unit 301
006 is obtained (1001).

【0079】次に、アクセス可否判定部114におい
て、インデクスレコード1006に対応するレコード属
性情報および検索要求であることを示す要求アクション
118をもとに、要求アクションについての実行可否を
判定する(1002)。アクセス可否判定部114によ
る実行可否の判定処理については、図11で説明する。
Next, the access permission / non-permission determining unit 114 determines whether or not the requested action can be executed based on the record attribute information corresponding to the index record 1006 and the request action 118 indicating that the request is a search request (1002). . The process of determining whether or not execution is permitted by the access determination unit 114 will be described with reference to FIG.

【0080】次に、アクセス可否判定部114の判定結
果が実行可であるかどうかを判定する(1003)。実
行可であれば、インデクスレコード1006に含まれる
レコード識別子905を出力し(1004)、この処理
を終了する。ステップ1003の判定で実行可でない場
合は、「該当するレコードなし」とし(1005)、こ
の処理を終了する。
Next, it is determined whether or not the result of the determination by the access permission / non-permission determining unit 114 is executable (1003). If executable, the record identifier 905 included in the index record 1006 is output (1004), and this processing ends. If it is not executable in the determination of step 1003, it is determined that there is no applicable record (1005), and this processing ends.

【0081】このような処理により、データベース管理
システム105は、実行ユーザの情報とインデクスに含
まれるレコード属性情報のアクセス権情報をもとにし
て、ユーザからのデータベース処理要求について実行ユ
ーザごとのレコード単位のアクセス制御を行うことがで
きる。
According to the above processing, the database management system 105 determines a database processing request from a user on a record basis for each execution user based on the execution user information and the access right information of the record attribute information included in the index. Access control can be performed.

【0082】図11は、アクセス可否判定部114にお
ける要求アクション実行可否を判定する処理(図10の
ステップ1002)のフローチャートである。
FIG. 11 is a flowchart of the process (step 1002 in FIG. 10) of determining whether the requested action can be performed by the access determination unit 114.

【0083】まず、アクセス判定部114は、この処理
の入力である実行ユーザ情報117とレコード属性情報
1107をもとに、実行ユーザが当該レコードの所有者
であるか否かを判定する(1101)。実行ユーザがレ
コードの所有者の場合は、レコード属性情報1107か
ら所有者のアクセス権を示す情報をアクセス権情報11
08として取得し(1102)、ステップ1104にす
すむ。ステップ1101で実行ユーザがレコードの所有
者と異なる場合は、レコード属性情報1107から他者
のアクセス権を示す情報をアクセス権情報1108とし
て取得し(1103)、ステップ1104にすすむ。
First, the access determination unit 114 determines whether or not the execution user is the owner of the record based on the execution user information 117 and the record attribute information 1107 which are inputs of this processing (1101). . If the executing user is the owner of the record, information indicating the access right of the owner is obtained from the record attribute information 1107 in the access right information 11.
08 (1102), and proceeds to step 1104. If the executing user is different from the owner of the record in step 1101, information indicating the access right of another person is acquired from the record attribute information 1107 as access right information 1108 (1103), and the process proceeds to step 1104.

【0084】次に、ステップ1104では、ステップ1
102または1103で取得したアクセス権情報110
8とこの処理の入力である要求アクション1109をも
とに、要求アクションの実行権があるか否かを判定す
る。例えば、要求アクションが検索で、アクセス権情報
に検索が含まれる場合は、実行権ありとする。ステップ
1104の判定で実行権ありの場合は、実行可とし(1
105)、この処理を終了する。ステップ1104の判
定で実行権なしの場合は、実行不可とし(1106)、
この処理を終了する。
Next, in step 1104, step 1
Access right information 110 obtained in 102 or 1103
8 and a request action 1109 which is an input of this processing, it is determined whether or not the execution right of the request action exists. For example, when the requested action is a search and the access right information includes the search, it is determined that the execution right exists. If it is determined in step 1104 that there is an execution right, it is determined that execution is possible (1
105), this process ends. If it is determined in step 1104 that there is no execution right, execution is disabled (1106),
This processing ends.

【0085】このような処理により、データベース管理
システム105は、実行ユーザの情報とレコード属性情
報に含まれるアクセス権情報をもとにして、ユーザから
のデータベース処理要求について実行ユーザごとのレコ
ード単位のアクセス制御を行うことができる。
According to the above processing, the database management system 105 can access the database processing request from the user on a record-by-record basis for each execution user based on the execution user information and the access right information included in the record attribute information. Control can be performed.

【0086】図12は、データ検索部113における検
索処理のフローチャートである。この処理は、図9のス
テップ904の処理の詳細を示す。
FIG. 12 is a flowchart of a search process in the data search unit 113. This processing shows the details of the processing of step 904 in FIG.

【0087】まず、データ検索部113で、データベー
ス102から、問合せの条件805を満たすレコードを
探索する(1201)。また、探索して得られるレコー
ドから、それに対応するレコード属性情報1208を取
得する。
First, the data search unit 113 searches the database 102 for a record that satisfies the query condition 805 (1201). The record attribute information 1208 corresponding to the record obtained by the search is acquired.

【0088】次に、ステップ1201で条件を満たすレ
コードが得られたか否かを判定する(1202)。レコ
ードが得られた場合は、要求アクション118および実
行ユーザ情報117をもとに、アクセス可否判定部11
4において検索の要求アクションが実行可であるか否か
を判定する(1203)。この判定処理は、図11に示
した処理で行う。
Next, it is determined whether or not a record satisfying the condition is obtained in step 1201 (1202). If a record is obtained, the access permission / inhibition determination unit 11 is performed based on the request action 118 and the execution user information 117.
In step 4, it is determined whether the search request action is executable (1203). This determination process is performed by the process shown in FIG.

【0089】続いて、ステップ1203の判定結果が実
行可であるかどうかを判定する(1204)。実行可の
場合は、ステップ1201で得られたレコードをもとに
結果データ806を作成し(1205)、この処理を終
了する。ステップ1204で実行可でない場合は、「該
当結果なし」とし(1206)、この処理を終了する。
Subsequently, it is determined whether or not the result of the determination in step 1203 is executable (1204). If executable, the result data 806 is created based on the record obtained in step 1201 (1205), and this process ends. If it is not executable in step 1204, it is determined that there is no applicable result (1206), and this process ends.

【0090】ステップ1202でレコードがなかった場
合は、「該当結果なし」とし(1207)、この処理を
終了する。
If there is no record in step 1202, it is determined that there is no applicable result (1207), and this processing ends.

【0091】このような処理により、データベース管理
システム105は、実行ユーザの情報とデータベースに
含まれるレコード属性情報のアクセス権情報をもとにし
て、ユーザからのデータベース処理要求について実行ユ
ーザごとのレコード単位のアクセス制御を行うことがで
きる。
According to the above processing, the database management system 105 determines a database processing request from a user on a record basis for each execution user based on the execution user information and the access right information of the record attribute information included in the database. Access control can be performed.

【0092】次に、本実施形態のデータベースシステム
101におけるデータ登録処理の詳細を説明する。
Next, details of the data registration processing in the database system 101 of the present embodiment will be described.

【0093】図13は、本実施形態のデータベースシス
テム101の構成を示す図である。基本的には、図3に
示したデータベースシステム101と同様の構成である
が、データの登録の流れに着目した構成を示してある。
すなわち、AP104が、登録するデータ1303に対し
てデータベース102におけるアクセス権をどのように
するかを指定するアクセス権設定要求1301と、デー
タ登録要求の問合せ1302を発行すること、並びに、
データベース管理システム105において、要求アクシ
ョン118が「登録」を示すこと、およびアクセス権設
定要求1301に応じてアクセス権情報1304を持つ
ことなどを示してある。
FIG. 13 is a diagram showing the configuration of the database system 101 of the present embodiment. Basically, it has the same configuration as the database system 101 shown in FIG. 3, but shows a configuration focusing on the flow of data registration.
That is, the AP 104 issues an access right setting request 1301 that specifies how to make the access right in the database 102 to the data 1303 to be registered, and an inquiry 1302 of the data registration request;
In the database management system 105, it is shown that the request action 118 indicates “registration” and that the request action 118 has access right information 1304 in response to the access right setting request 1301.

【0094】このアクセス権設定要求1301 SET INSERT_DATA_PERMISSION 'SUD---' は、以降に登録するデータについて、所有者のアクセス
権が「検索 更新 削除」であり、他者のアクセス権がな
し、とすることを示す。要求解析部111は、このよう
なアクセス権設定要求1301を解析し、アクセス権情
報1304を得る。
This access right setting request 1301 SET INSERT_DATA_PERMISSION 'SUD ---' indicates that, for data to be registered thereafter, the owner's access right is “search / update / delete” and there is no other person's access right. Indicates that The request analysis unit 111 analyzes such an access right setting request 1301 and obtains access right information 1304.

【0095】登録要求の問合せ1302 INSERT INTO tbl1 VALUES ('fff' 300) は、テーブルtbl1に登録データ1303(その値は、ff
f、300)からなるレコードを登録することを示す。
A query 1302 of the registration request INSERT INTO tbl1 VALUES ('fff' 300) is stored in the table tbl1 as registration data 1303 (the value of which is ff
f, 300).

【0096】次に、データベースシステム101でのデ
ータ登録処理の詳細を説明する。全体的なデータベース
処理の流れは、図7に示したとおりであり、登録処理の
詳細については、図7のステップ703のデータベース
管理システム105における処理の流れとして説明す
る。
Next, details of the data registration processing in the database system 101 will be described. The overall flow of database processing is as shown in FIG. 7, and the details of the registration processing will be described as the flow of processing in the database management system 105 in step 703 in FIG.

【0097】図14は、データベース管理システム10
5における登録処理のフローチャートである。
FIG. 14 shows the database management system 10
6 is a flowchart of a registration process in No. 5.

【0098】まず、データベース管理システム105
が、登録データ1303をもとに、データベース102
に格納するレコードを作成する(1401)。図13の
登録データ1303の例であれば、カラムclm1、clm2に
対しそれぞれfff、300のカラム値からなるレコードを作
成する。
First, the database management system 105
Based on the registration data 1303
A record to be stored in the file is created (1401). In the example of the registration data 1303 in FIG. 13, a record is created having column values of fff and 300 for the columns clm1 and clm2, respectively.

【0099】次に、データベース管理システム105
が、実行ユーザ情報117およびアクセス権情報130
4をもとに、レコード属性情報を作成する(140
2)。実行ユーザ情報117に含まれるユーザ識別子us
r1と、アクセス権情報1304の所有者アクセス権「検
索 更新 削除」、他者アクセス権「なし」をもとに、レ
コード属性情報を作成する。
Next, the database management system 105
Is executed user information 117 and access right information 130
4 based on the record attribute information (140
2). User identifier us included in execution user information 117
Record attribute information is created based on r1, the owner access right “search / update / delete” of the access right information 1304, and the other person access right “none”.

【0100】次に、データ登録部302が、データベー
ス102中に、ステップ1401および1402で作成
したレコードとレコード属性情報とを対応付けて格納す
る(1403)。格納した結果、格納したレコードを識
別するレコード識別子1406を作成する。
Next, the data registration unit 302 stores the records created in steps 1401 and 1402 and the record attribute information in the database 102 in association with each other (1403). As a result of the storage, a record identifier 1406 for identifying the stored record is created.

【0101】次に、登録したレコードを保持するテーブ
ル115に対してインデクスが設定されているか否かを
判定する(1404)。インデクスが設定されている場
合は、インデクス管理部301においてインデクスレコ
ード登録処理を行い(1405)(インデクスレコード
登録処理の詳細は図15で説明する)、この処理を終了
する。ステップ1404でインデクスが設定されていな
い場合は、この処理を終了する。
Next, it is determined whether or not an index is set for the table 115 holding the registered records (1404). If an index has been set, the index management unit 301 performs index record registration processing (1405) (details of the index record registration processing will be described with reference to FIG. 15), and this processing ends. If no index has been set in step 1404, this process ends.

【0102】このような処理により、AP104が登録要
求の問合せでユーザの情報やアクセス権に関わる情報を
指定しなくても、データベース管理部105がレコード
属性情報116にアクセス制御に必要な情報を設定する
ので、AP104に負担をかけることなく、アクセス制御
することができる。
By such processing, the database management unit 105 sets the information necessary for access control in the record attribute information 116 even if the AP 104 does not specify the user information or the information related to the access right in the registration request inquiry. Therefore, access control can be performed without imposing a burden on the AP 104.

【0103】図15は、インデクス管理部301におけ
るインデクスレコード登録処理のフローチャートであ
る。これは図14のステップ1405の処理の詳細を示
す。
FIG. 15 is a flowchart of the index record registration process in the index management unit 301. This shows the details of the processing in step 1405 in FIG.

【0104】まず、インデクス管理部301は、AP10
4からの登録要求で指定された登録データ1303と、
ステップ1403で格納して得られたレコード識別子
(本例では、rcdid2)1406をもとに、インデクスに
登録するインデクスレコード1504を作成する(15
01)。本例では、カラムclm2のキー値300と、レコー
ドを識別するレコード識別子rcdid2を含むインデクスレ
コード1504を作成することになる。
First, the index management unit 301
4, registration data 1303 specified by the registration request from
An index record 1504 to be registered in the index is created based on the record identifier (rcdid2 in this example) 1406 obtained in step 1403 (15).
01). In this example, an index record 1504 including the key value 300 of the column clm2 and the record identifier rcdid2 for identifying the record is created.

【0105】次に、実行ユーザ情報117とアクセス権
情報1304をもとに、レコード属性情報1505を作
成する(1502)。本例では、実行ユーザusr1と、ア
クセス権情報 'SUD---' からなるレコード属性情報を作
成することになる。次に、インデクス305にインデク
スレコード1504とレコード属性情報1505とを対
応付けて登録し(1503)、この処理を終了する。
Next, record attribute information 1505 is created based on the execution user information 117 and the access right information 1304 (1502). In this example, record attribute information including the execution user usr1 and the access right information 'SUD ---' is created. Next, the index record 1504 and the record attribute information 1505 are registered in the index 305 in association with each other (1503), and this processing ends.

【0106】このような処理により、データベース管理
部105がインデクス305のインデクスレコード30
6のレコード属性情報にアクセス制御に必要な情報を設
定するので、AP104に負担をかけることなく、アクセ
ス制御することができる。
By such processing, the database management unit 105 makes the index record 30 of the index 305
Since information necessary for access control is set in the record attribute information No. 6, access control can be performed without imposing a load on the AP 104.

【0107】次に、データベースシステム101におい
て、テーブル115に保持するレコードに同一のレコー
ドが存在しないようにUNIQUE指定した場合の、UNIQUEチ
ェックを含むデータ登録処理の詳細を説明する。なお、
この例でのUNIQUEチェックでは、ユーザごとにレコード
の同一性がチェックされるものとする。すなわち、各ユ
ーザごとに所有するレコードがそれぞれユニークにな
り、登録するユーザが異なる(レコードの所有者が異な
る)場合は、同じテーブルに同一のカラム値からなるレ
コードが存在しうるものとする。
Next, the details of the data registration processing including the UNIQUE check when the database system 101 specifies UNIQUE so that the same record does not exist in the records held in the table 115 will be described. In addition,
In the UNIQUE check in this example, it is assumed that record identity is checked for each user. That is, when records owned by each user are unique and registered users are different (record owners are different), it is assumed that records having the same column values can exist in the same table.

【0108】全体的なデータベース処理の流れは、図7
に示したとおりであり、本登録処理の詳細については、
図7のステップ703のデータベース管理システム10
5における処理の流れとして説明する。
The flow of the entire database processing is shown in FIG.
The details of this registration process are described in
The database management system 10 in step 703 of FIG.
5 will be described.

【0109】図16は、データベース管理システム10
5におけるUNIQUEチェックを含むデータ登録処理のフロ
ーチャートである。基本的な処理の流れは、図14に示
したものと同じである。異なる部分のみを説明する。
FIG. 16 shows the database management system 10.
9 is a flowchart of a data registration process including a UNIQUE check in No. 5; The basic processing flow is the same as that shown in FIG. Only different parts will be described.

【0110】まず、ステップ1401、1402で登録
するレコードおよびレコード属性情報を作成したのち、
ステップ1403のデータベース102へのレコード格
納の前に、UNIQUEチェックを行う(1601)。チェッ
ク処理の詳細については、図17で説明する。
First, after creating records to be registered and record attribute information in steps 1401 and 1402,
Before storing records in the database 102 in step 1403, a UNIQUE check is performed (1601). Details of the check processing will be described with reference to FIG.

【0111】続いて、UNIQUEチェックの結果、すでにレ
コードが登録されているか否かを判定する(160
2)。レコード登録がある場合は、「登録済み」エラー
とし(1603)、この処理を終了する。ステップ16
02でレコードが登録されていない場合は、ステップ1
403以降の図14で説明したとおりの処理を行う。
Subsequently, as a result of the UNIQUE check, it is determined whether a record has already been registered (160).
2). If there is a record registration, a “registered” error is determined (1603), and this process ends. Step 16
If no record is registered in step 02, step 1
The processing as described in FIG. 14 after 403 is performed.

【0112】図17は、データベース管理システム10
5でのUNIQUEチェック処理(図16のステップ160
1)のフローチャートである。
FIG. 17 shows the database management system 10.
5 UNIQUE check processing (step 160 in FIG. 16)
It is a flowchart of 1).

【0113】まず、データを登録するテーブル115に
インデクスが設定されているか否かを判定する(170
1)。インデクスが設定されている場合は、インデクス
管理部301が、登録データ1303と実行ユーザ情報
117をもとに、登録データと同一視するレコードを探
索する(1702)。このステップの詳細については、
図18で説明する。
First, it is determined whether or not an index is set in the table 115 for registering data (170).
1). If an index is set, the index management unit 301 searches for a record that is identified with the registered data based on the registered data 1303 and the execution user information 117 (1702). For more information on this step,
This will be described with reference to FIG.

【0114】続いて、ステップ1702での探索の結
果、インデクスに登録があるか否かを判定する(170
3)。登録がある場合は、「すでに登録あり」とし(1
704)、この処理を終了する。登録がない場合は、
「登録なし」とし(1705)、この処理を終了する。
Subsequently, as a result of the search in step 1702, it is determined whether or not the index is registered (170).
3). If there is a registration, "Already registered" (1
704), this process ends. If you have not registered,
"No registration" is set (1705), and this process ends.

【0115】ステップ1701で、インデクスが設定さ
れていない場合は、登録データ1303と実行ユーザ情
報117をもとに、データ検索部113がデータベース
102から登録データと同一視するレコードを探索する
(1706)。このステップの詳細は図19で説明す
る。
If the index is not set in step 1701, based on the registration data 1303 and the execution user information 117, the data search unit 113 searches the database 102 for a record that is identified with the registration data (1706). . Details of this step will be described with reference to FIG.

【0116】続いて、ステップ1706での探索の結
果、すでにデータベース102にレコードが登録されて
いるか否かを判定する(1707)。登録がある場合
は、「すでに登録あり」とし(1708)、この処理を
終了する。登録がない場合は、「登録なし」とし(17
09)、この処理を終了する。
Subsequently, as a result of the search in step 1706, it is determined whether or not a record has already been registered in the database 102 (1707). If there is a registration, it is determined that "already registered" (1708), and this processing ends. If there is no registration, “No registration” (17
09), this process ends.

【0117】図18は、インデクス管理部301が登録
データと同一視するレコードを探索する処理(図17の
ステップ1702)のフローチャートである。
FIG. 18 is a flowchart of a process (step 1702 in FIG. 17) in which the index management unit 301 searches for a record identified with registered data.

【0118】まず、インデクス305において、キーが
登録データ1303のキーと一致するインデクスレコー
ド1808を探索する(1801)。次に、ステップ1
801での探索の結果、一致するインデクスレコードが
あるか否か判別する(1802)。判別の結果、インデ
クスレコードがない場合は、「登録なし」とし(180
3)、この処理を終了する。
First, in the index 305, an index record 1808 whose key matches the key of the registration data 1303 is searched (1801). Next, step 1
As a result of the search in 801, it is determined whether there is a matching index record (1802). As a result of the determination, if there is no index record, “No registration” is set (180
3), this process ends.

【0119】ステップ1802でインデクスレコードが
ある場合は、インデクスレコード1808に対応するレ
コード属性情報1809を取得する(1804)。次
に、実行ユーザ情報117とレコード属性情報1809
に含まれる所有者をもとに、実行ユーザとレコードの所
有者が一致するか否かを判定する(1805)。ユーザ
が一致する場合は、「すでに登録あり」とし(180
6)、この処理を終了する。ユーザが一致しない場合
は、「登録なし」とし(1807)、この処理を終了す
る。
If there is an index record in step 1802, record attribute information 1809 corresponding to the index record 1808 is obtained (1804). Next, the execution user information 117 and the record attribute information 1809
It is determined whether the owner of the record matches the owner of the record based on the owner included in the record (1805). If the users match, it is determined that “already registered” (180
6), this process ends. If the users do not match, "no registration" is set (1807), and this process ends.

【0120】このような処理により、データベース管理
システム105が、インデクスを用いて、ユーザごとの
レコードのユニークチェックを行うことができる。
By such processing, the database management system 105 can perform a unique check of a record for each user using the index.

【0121】図19は、データ検索部113でデータベ
ース102から登録データと同一視するレコードを探索
する処理(図17のステップ1706)のフローチャー
トである。
FIG. 19 is a flowchart of a process (step 1706 in FIG. 17) of searching the database 102 for a record identified with registered data by the data search unit 113.

【0122】まず、データ検索部113が、データベー
ス102から登録データ1303と一致するレコードを
探索する(1901)。次に、ステップ1901の探索
の結果、一致するレコードがあったか否かを判定する
(1902)。
First, the data search unit 113 searches the database 102 for a record that matches the registered data 1303 (1901). Next, it is determined whether there is a matching record as a result of the search in step 1901 (1902).

【0123】一致するレコードがあった場合は、そのレ
コードに対応するレコード属性情報1908を取得し
(1903)、実行ユーザ情報117とレコード属性情
報1908の所有者とが一致するか否か判定する(19
04)。一致する場合は、「すでに登録あり」とし(1
905)、この処理を終了する。一致しない場合は、
「登録なし」とし(1906)、この処理を終了する。
If there is a matching record, the record attribute information 1908 corresponding to the record is obtained (1903), and it is determined whether or not the execution user information 117 and the owner of the record attribute information 1908 match (step 1903). 19
04). If they match, it is determined that "already registered" (1
905), this process ends. If they do not match,
"No registration" is set (1906), and this process ends.

【0124】ステップ1902でデータベースに一致す
るレコードがない場合は、「登録なし」とし(190
6)、この処理を終了する。
If there is no matching record in the database in step 1902, it is determined as "no registration" (190
6), this process ends.

【0125】このような処理により、データベース管理
システム105が、データベース102に保持したレコ
ード属性情報116をもとにして、ユーザごとのレコー
ドのユニークチェックを行うことができる。
By such processing, the database management system 105 can perform a unique check of a record for each user based on the record attribute information 116 held in the database 102.

【0126】なお、上記の処理では、レコードを構成す
るカラム値のほかに、レコードに関する属性情報を含め
て、レコードの同一性を判定している。
In the above processing, the identity of the records is determined by including the attribute information on the records in addition to the column values constituting the records.

【0127】次に、データベースシステム101におけ
るデータベース102のデータ削除処理の詳細を説明す
る。全体的なデータベース処理の流れは、図7に示した
とおりであり、削除処理の詳細については、図7のステ
ップ703のデータベース管理システムにおける処理の
流れとして説明する。
Next, the details of the data deletion processing of the database 102 in the database system 101 will be described. The overall flow of the database processing is as shown in FIG. 7, and the details of the deletion processing will be described as the processing flow in the database management system of step 703 in FIG.

【0128】図20は、AP104におけるデータ削除要
求の問合せ107である。この問合せ107のSQL文
FIG. 20 shows an inquiry 107 of the AP 104 for a data deletion request. SQL statement of this query 107

【0129】DELETE FROM tbl1 WHERE clm2 = 200 は、テーブルtbl1から、カラムclm2の値が200であるレ
コードを削除することを示す。
DELETE FROM tbl1 WHERE clm2 = 200 indicates that a record in which the value of the column clm2 is 200 is deleted from the table tbl1.

【0130】図21は、データベース管理システム10
5でのデータ削除処理のフローチャートである。
FIG. 21 shows the database management system 10
13 is a flowchart of a data deletion process in the fifth embodiment.

【0131】まず、問合せ要求を解析し、削除対象の条
件2105を取得する(2101)。例えば、図20に
示したような削除要求を要求解析部111で解析し、そ
の解析結果である問合せ解析結果705から、条件「テ
ーブルtbl1のカラムclm2の値が200であるレコード」と
いう条件を取得する。
First, the inquiry request is analyzed, and the condition 2105 to be deleted is obtained (2101). For example, the request analysis unit 111 analyzes a deletion request as shown in FIG. 20, and obtains a condition “a record in which the value of the column clm2 of the table tbl1 is 200” from the query analysis result 705 that is the analysis result. I do.

【0132】次に、削除を示す要求アクション118お
よび実行ユーザ情報117をもとに、データ検索部11
3でユーザが削除可能なデータベース102中のレコー
ドを探索する(2102)。このステップの詳細は、図
9に示したデータ検索処理と同様で、異なる点は、要求
アクション118を「削除」とすることのみであるの
で、説明は省略する。
Next, based on the request action 118 indicating deletion and the execution user information 117, the data search unit 11
In step 3, the user searches for a record in the database 102 that can be deleted by the user (2102). The details of this step are the same as those of the data search processing shown in FIG. 9, and the only difference is that the requested action 118 is “delete”.

【0133】次に、ステップ2102で探索した結果、
レコードがあるかどうかを判定する(2103)。レコ
ードがある場合は、データ削除部303が該当するレコ
ードを削除し(2104)、ステップ2102に戻って
処理を繰り返す。ステップ2103でレコードがない場
合(削除対象をすべて削除した場合)は、この処理を終
了する。
Next, as a result of the search in step 2102,
It is determined whether there is a record (2103). If there is a record, the data deletion unit 303 deletes the record (2104), returns to step 2102, and repeats the process. If there is no record in step 2103 (all deletion targets have been deleted), this processing ends.

【0134】このような処理により、AP104が複雑な
問合せ要求をしなくても、データベース管理システム1
05が、データ削除処理においてユーザごとにレコード
単位でアクセス制御することができる。
By such processing, even if the AP 104 does not make a complicated inquiry request, the database management system 1
05 can perform access control on a record basis for each user in the data deletion process.

【0135】図22は、図21に示した処理により削除
されるレコードの構成例を示す図である。例えば、図2
0に示した問合せ107の削除対象条件が clm2 = 200
であることから、レコード2201、2202、220
3がデータベース102から探索されるが、アクセス可
否判定部114により、レコード属性情報116に従
い、この削除の実行ユーザusr1のアクセス権が「削除」
を含むかどうかが判定される。
FIG. 22 is a diagram showing an example of the structure of a record deleted by the processing shown in FIG. For example, FIG.
The deletion target condition of the query 107 shown in 0 is clm2 = 200
, The records 2201, 2202, 220
3 is searched from the database 102, and the access right of the execution user usr1 of this deletion is set to “delete” by the access permission / inhibition determination unit 114 in accordance with the record attribute information 116.
Is determined.

【0136】レコード2201は、所有者が実行ユーザ
と同じusr1で、所有者アクセス権に削除が含まれるの
で、削除対象となる。レコード2202は、所有者が実
行ユーザと異なるusr2で、他者アクセス権に削除が含ま
れるので、削除対象となる。レコード2203は、所有
者が実行ユーザと異なるusr3で、他者アクセス権に削除
が含まれないので、削除対象とならない。
The record 2201 is to be deleted because the owner is usr1, which is the same as the executing user, and the owner access right includes deletion. The record 2202 is to be deleted because the owner is usr2 different from the execution user, and the access right of the other person includes deletion. The record 2203 is not usr3 whose owner is different from the execution user and is not deleted because the access right of the other party does not include deletion.

【0137】次に、データベースシステム101で、ユ
ーザ削除と同時にそのユーザの所有するデータをすべて
削除する例を示す。この例のデータベースシステムの構
成は、図3に示したものと同じである。
Next, an example in which the database system 101 deletes all data owned by a user at the same time as the user is deleted. The configuration of the database system in this example is the same as that shown in FIG.

【0138】図23は、AP104において、ユーザ削除
と同時にそのユーザの所有するデータをすべて削除する
要求の例を示す。2301に示す設定文 SET DELETE_USER_DATA_AT_DROP_USER によって、データベース管理システム105に、ユーザ
削除と同時にそのユーザの所有するデータをすべて削除
するよう設定する。続いて、ユーザ削除要求2302 DROP USER usr1 により、データベース102からユーザusr1を削除する
ことを要求する。
FIG. 23 shows an example of a request in the AP 104 to delete all data owned by the user at the same time as the user is deleted. A setting statement SET DELETE_USER_DATA_AT_DROP_USER shown in 2301 sets the database management system 105 to delete all data owned by the user at the same time as the user is deleted. Subsequently, a user deletion request 2302 DROP USER usr1 is requested to delete the user usr1 from the database 102.

【0139】データベース管理システム105は、ユー
ザ削除要求2302を受け付けると、2301の設定に
従い、データベース102内のすべてのテーブルについ
て、レコード属性情報の所有者がusr1のデータをすべて
削除する。削除処理は、図21に示した処理とほぼ同じ
であるが、データベース管理システム105のユーザ削
除処理に伴う特権により、所有者がusr1であればアクセ
ス権に関係なくレコードを削除する。所有者usr1のレコ
ードをすべて削除したのち、ユーザusr1の登録を抹消
し、ユーザ削除処理を終える。
Upon receiving the user deletion request 2302, the database management system 105 deletes all the data of usr1 whose record attribute information is the owner of all the tables in the database 102 according to the setting of 2301. The deletion processing is almost the same as the processing shown in FIG. 21. However, if the owner is usr1, the record is deleted irrespective of the access right due to the privileges associated with the user deletion processing of the database management system 105. After deleting all records of the owner usr1, the registration of the user usr1 is deleted, and the user deletion process is completed.

【0140】次に、データベースシステム101で、ロ
ールごとにアクセス制御する例を説明する。ロールと
は、データベースで同一の特権を持つユーザの集まりを
示す。この例のデータベースシステム105の構成は、
図3に示したものと同じである。異なる点は、レコード
属性情報116に、レコードの属するロール、およびそ
のロールに属するユーザのアクセス権を持つことであ
る。
Next, an example in which access is controlled for each role in the database system 101 will be described. A role represents a group of users with the same privileges in the database. The configuration of the database system 105 in this example is as follows.
This is the same as that shown in FIG. The difference is that the record attribute information 116 has the access right of the role to which the record belongs and the user who belongs to the role.

【0141】図24に、ロールを含むレコード属性情報
116の例を示す。2403は、レコード2401のロ
ールがrole1であり、ロールrole1のユーザからのアクセ
ス権が検索と更新であることを示す。2404は、レコ
ード2402のロールがrole2であり、ロールrole2のユ
ーザからのアクセス権が検索のみであることを示す。こ
のようなレコード属性情報116に従い、前述のような
アクセス可否判定部114による判定を行い、ロールご
とのアクセス制御を行うことができる。
FIG. 24 shows an example of record attribute information 116 including a role. Reference numeral 2403 indicates that the role of the record 2401 is role1, and the access right from the user of the role role1 is search and update. Reference numeral 2404 indicates that the role of the record 2402 is role2, and the access right from the user of the role role2 is only search. According to the record attribute information 116, the above-described determination by the access permission / non-permission determining unit 114 is performed, and access control for each role can be performed.

【0142】次に、データベースシステム101で、ア
クセス制御を行うモジュールを、データベース管理シス
テム105とは独立したモジュールとして構成する例を
示す。
Next, an example will be described in which a module for performing access control is configured as a module independent of the database management system 105 in the database system 101.

【0143】図25に、アクセス制御を行うモジュール
を独立させたデータベース管理システムの構成図を示
す。この例のデータベース管理システム105の基本的
な構成は、図3に示したものと同じである。異なる点
は、アクセス可否判定部114およびインデクス管理部
301を、データベース管理システム105自体に埋め
込んで固定的に備えるのではなく、独立したモジュール
としていることである。
FIG. 25 shows a configuration diagram of a database management system in which modules for performing access control are made independent. The basic configuration of the database management system 105 in this example is the same as that shown in FIG. The difference is that the access permission / non-permission judgment unit 114 and the index management unit 301 are not embedded and fixedly provided in the database management system 105 itself, but are provided as independent modules.

【0144】アクセス可否判定部114およびインデク
ス管理部301のモジュールは、データベース管理シス
テム105に対して、いわゆるプラグイン(plug-in)
の機構により取り込まれるものとする。例えば、オペレ
ーティングシステムの動的ロード機能を用いて、データ
ベース管理システム105が、アクセス可否判定部11
4およびインデクス管理部301のモジュールの実体で
ある動的ロードライブラリをロードして取り込むものと
する。
The modules of the access permission / non-permission judgment unit 114 and the index management unit 301 provide a so-called plug-in to the database management system 105.
It shall be taken in by the mechanism of. For example, using the dynamic loading function of the operating system, the database management system 105
4 and a dynamic load library which is a substance of a module of the index management unit 301.

【0145】この構成では、テーブルを次のようなSQL
文で定義する。
In this configuration, the table is stored in the following SQL
Defined by statement.

【0146】CREATE TABLE tbl1 (...) WITH OPTIONS (ACCESS CONTROL LIBRARY 'libactl1' )CREATE TABLE tbl1 (...) WITH OPTIONS (ACCESS CONTROL LIBRARY 'libactl1')

【0147】この定義文は、テーブルtbl1についてアク
セス制御を行うことを指定し、ライブラリlibactl1によ
って提供される機能を用いてアクセス制御を行うことを
示す。
This definition statement specifies that access control is to be performed for the table tbl1, and indicates that access control is to be performed using a function provided by the library libactl1.

【0148】データベース管理システム105の実行制
御部110は、この定義の指定に従い、データベース処
理においてアクセス制御が必要なタイミングでライブラ
リをロードして処理を行う。例えば、図12のステップ
1203において、ライブラリlibactl1に含まれるアク
セス可否を判定する機能を呼び出す(関数名checkAcces
sPermission()の関数をコールする)。
The execution control unit 110 of the database management system 105 loads the library at the timing when access control is required in the database processing and performs the processing according to the specification of this definition. For example, in step 1203 of FIG. 12, a function included in the library libactl1 to determine whether access is permitted is called (function name checkAcces
sPermission () function call).

【0149】また、インデクスを次のようなSQL文で定
義する。
An index is defined by the following SQL statement.

【0150】CREATE INDEX idx1 ON tbl1 (clm1) WITH OPTIONS ( ACCESS CONTROL LIBRARY 'libactlidx
1' )
CREATE INDEX idx1 ON tbl1 (clm1) WITH OPTIONS (ACCESS CONTROL LIBRARY 'libactlidx
1 ')

【0151】この定義文は、テーブルtbl1のカラムclm1
に設定したインデクスidx1についてアクセス制御を行う
ことを指定し、ライブラリlibactlidx1によって提供さ
れる機能を用いてアクセス制御を行うことを示す。
This definition statement corresponds to column clm1 of table tbl1.
Specifies that access control is to be performed for the index idx1 set in Table 2, and indicates that access control is to be performed using the function provided by the library libactlidx1.

【0152】データベース管理システム105の実行制
御部110は、この定義の指定に従い、データベース処
理において、インデクスを利用してアクセス制御が必要
なタイミングでライブラリのロードして処理を行う。例
えば、図10のステップ1002において、ライブラリ
libactlidx1に含まれるアクセス可否を判定する機能を
呼び出す(関数名checkAccessPermissionByIndexEntr
y()の関数をコールする)。
The execution control unit 110 of the database management system 105 performs processing by loading a library at the timing when access control is required by using an index in the database processing in accordance with the specification of this definition. For example, in step 1002 of FIG.
Call the function that determines whether access is included in libactlidx1 (function name checkAccessPermissionByIndexEntr
call the function of y ()).

【0153】また、アクセス可否判定を行うライブラリ
libactl1は、アクセス権に関する情報(レコード属性情
報116)を操作する機能を持ち、データベース管理シ
ステム105がテーブル115のレコードを登録および
削除するタイミングにおいて、それぞれの機能(関数in
sertPermissionRecord(),deletePermissionRecord())
を呼び出すことにより、レコードの登録および削除に合
わせてレコード属性情報116を設定する。
A library for determining whether access is possible
libactl1 has a function of operating information on access rights (record attribute information 116). Each function (function in function) is registered when the database management system 105 registers and deletes records in the table 115.
sertPermissionRecord (), deletePermissionRecord ())
To set the record attribute information 116 in accordance with the registration and deletion of the record.

【0154】インデクス管理を行うライブラリlibactli
dx1は、アクセス権に関する情報(インデクスレコード
306のレコード属性情報503)を操作する機能を持
ち、データベース管理システム105がテーブル115
のレコードを登録1405および削除するタイミングに
おいて、それぞれの機能(関数insertPermissionIndexE
ntry(),removePermissionIndexEntry())を呼び出すこ
とにより、レコードの登録および削除に合わせてレコー
ド属性情報503を設定する。
Library libactli for index management
dx1 has a function of operating information on the access right (record attribute information 503 of the index record 306), and the database management system 105
At the timing of registration 1405 and deletion of the record of each function, the respective functions (function insertPermissionIndexE
By calling ntry (), removePermissionIndexEntry ()), record attribute information 503 is set in accordance with registration and deletion of a record.

【0155】このように、アクセス制御を行うモジュー
ルをデータベース管理システム105と独立させること
により、データベース管理システム105にアクセス制
御の機能を追加、削除することを容易に行うことができ
る。また、セキュリティ面では、データベース管理シス
テム105自体を詳細に解析して攻撃が可能となった場
合でも、アクセス制御の部分が不明で攻撃が不可能とな
る場合もあり、セキュリティを強化することができる。
As described above, by making the module for performing access control independent of the database management system 105, it is possible to easily add or delete an access control function to the database management system 105. Further, in terms of security, even if the database management system 105 itself is analyzed in detail and an attack is possible, the access control part is unknown and the attack may not be possible, so that the security can be strengthened. .

【0156】上記実施の形態において、レコード単位に
限らず、カラム単位に属性情報を対応付けることによ
り、カラム値単位のアクセス制御を行うこともできる。
In the above embodiment, access control can be performed not only in record units but also in column values by associating attribute information in column units.

【0157】次に、データベースシステム101で、カ
ラム値単位でアクセス制御を行うモジュールを、データ
ベース管理システム105とは独立したモジュールとし
て構成する例を示す。
Next, an example in which the database system 101 configures a module for performing access control in units of column values as a module independent of the database management system 105 will be described.

【0158】図26に、カラム値単位でアクセス制御を
行うモジュールをとり込むデータベース管理システムの
構成図を示す。この例のデータベース管理システム10
5の基本的な構成は、図3に示したものと同じである。
異なる点は、国際標準化機構ISOの標準SQL99で規定され
ている抽象データ型を用いて、カラム値単位でアクセス
制御を行うモジュールである抽象データアクセス管理部
2601をデータベース管理システム105に取り込ん
でいることである。また、抽象データ型のカラムに対す
るインデクス機能を提供する抽象データインデクス管理
部2602もデータベース管理システム105に取り込
んでいる。
FIG. 26 is a configuration diagram of a database management system that incorporates a module for performing access control in units of column values. Database management system 10 of this example
The basic configuration of No. 5 is the same as that shown in FIG.
The difference is that the abstract data access management unit 2601, which is a module that performs access control in units of column values, is incorporated into the database management system 105 using an abstract data type defined in the international standardization organization ISO standard SQL99. It is. The database management system 105 also incorporates an abstract data index management unit 2602 that provides an index function for an abstract data type column.

【0159】ここで、抽象データ型は次のようなSQL文
で定義する。
Here, the abstract data type is defined by the following SQL statement.

【0160】 CREATE TYPE adt1 ( PRIVATE attr1 CHAR(200), PRIVATE permissions VARCHAR(100), PUBLIC FUNCTION getattr1( ) RETURNS CHAR(200) LIBRARY 'libadt1' ... )CREATE TYPE adt1 (PRIVATE attr1 CHAR (200), PRIVATE permissions VARCHAR (100), PUBLIC FUNCTION getattr1 () RETURNS CHAR (200) LIBRARY 'libadt1' ...)

【0161】関数getattr1()の実装は、抽象データアク
セス制御部2601のライブラリlibadt1に含まれる。
The implementation of the function getattr1 () is included in the library libadt1 of the abstract data access control unit 2601.

【0162】抽象データ型adt1をカラムの型とするテー
ブルは、次のようなSQL文で定義する。
A table using the abstract data type adt1 as a column type is defined by the following SQL statement.

【0163】 CREATE TABLE tbl1 ( ..., clm3 adt1, ... )CREATE TABLE tbl1 (..., clm3 adt1, ...)

【0164】このような定義により、抽象データ型の値
をカラム値とする。
With such a definition, the value of the abstract data type is used as the column value.

【0165】図27に、アクセス制御を行う抽象データ
型のカラム値のデータ構造を示す。抽象データ型の値2
701は、属性値2702とアクセス権情報2703か
らなる。属性値2702は、先述の抽象データ型adt1の
定義文での attr1 CHAR(200)に従い、200バイトの文字
配列の値を保持する。
FIG. 27 shows a data structure of an abstract data type column value for performing access control. Abstract data type value 2
Reference numeral 701 includes an attribute value 2702 and access right information 2703. The attribute value 2702 holds a 200-byte character array value in accordance with attr1 CHAR (200) in the definition statement of the above-described abstract data type adt1.

【0166】アクセス権情報2703は、この抽象デー
タ型の値2701へのアクセス可否についての情報を保
持する。アクセス権情報2703は、先述の抽象データ
型adt1の定義文での permissions VARCHAR(100) に従
い、最大100バイトの可変長文字列値を保持する。詳細
は、図4のレコード属性情報116と同様である。
Access right information 2703 holds information on whether or not access to value 2701 of this abstract data type is possible. The access right information 2703 holds a variable-length character string value of up to 100 bytes in accordance with permissions VARCHAR (100) in the definition statement of the above-described abstract data type adt1. Details are the same as the record attribute information 116 of FIG.

【0167】関数getattr1()では、アクセス権情報27
03を参照し、実行ユーザ情報117をもとに、アクセ
ス可否を判定し、アクセス可と判定した場合は属性値2
702を返し、アクセス否と判定した場合は、「該当な
し」を返すものとする。判定処理は、図11で説明した
処理と同様でよい。
In the function getattr1 (), the access right information 27
03, based on the execution user information 117, whether access is permitted or not is determined.
702 is returned, and when it is determined that the access is not permitted, “not applicable” is returned. The determination process may be similar to the process described with reference to FIG.

【0168】抽象データ型のカラム値の参照は、次のよ
うなSQL文で要求する。
Reference to the column value of the abstract data type is requested by the following SQL statement.

【0169】SELECT clm3.getattr1() FROM tbl1SELECT clm3.getattr1 () FROM tbl1

【0170】このSQL文により、テーブルtbl1のカラムc
lm3に保持した抽象データ型の属性attr1の属性値を取得
する。関数getattr()のアクセス可否判定により、アク
セス権情報2703によりアクセス可であることが示さ
れた抽象データ型の値の属性値のみが問合せ結果とな
る。
By this SQL statement, column c of table tbl1
Get attribute value of attribute attr1 of abstract data type stored in lm3. As a result of the access permission determination of the function getattr (), only the attribute value of the value of the abstract data type indicated to be accessible by the access right information 2703 becomes a query result.

【0171】抽象データインデクス管理部2602は、
抽象データ型のカラムに対して、インデクス305と同
様に、抽象データ型のカラム値をキーとしたインデクス
を作成する。そして、図10、図15に示した処理と同
様に、アクセス可否判定を含むインデクス処理を行う。
データベース処理のそれぞれのタイミング、インデクス
作成、エントリ検索、エントリ登録、エントリ削除につ
いて、それぞれ抽象データインデクス管理部2602に
含まれる関数createIndex(), searchEntry(),insertEnt
ry(), removeEntry()をコールし、アクセス制御に関す
る処理を抽象データインデクス管理部2602で行う。
The abstract data index management unit 2602
For the column of the abstract data type, similarly to the index 305, an index is created using the column value of the abstract data type as a key. Then, similarly to the processing shown in FIGS. 10 and 15, index processing including access permission / non-permission determination is performed.
The functions createIndex (), searchEntry (), insertEnt included in the abstract data index management unit 2602 for each timing of database processing, index creation, entry search, entry registration, and entry deletion
ry () and removeEntry () are called, and processing related to access control is performed by the abstract data index management unit 2602.

【0172】このような構成により、カラム値ごとにア
クセス制御を実装できるので、カラムごとにアクセス制
御機能を追加、削除することが容易になる。また、個々
のカラムごとに抽象データ型の関数を実装することによ
り、きめこまかなアクセス制御が可能になる。また、抽
象データインデクス管理部2602により、アクセス制
御を含む抽象データ型のカラム値に対する問合せ処理を
高速化することができる。
With such a configuration, since access control can be implemented for each column value, an access control function can be easily added or deleted for each column. By implementing an abstract data type function for each column, fine-grained access control is possible. In addition, the abstract data index management unit 2602 can speed up query processing for an abstract data type column value including access control.

【0173】上記実施形態において、レコード属性情報
116の所有者の情報に基づき、テーブルの結合(Joi
n)において、所有者が一致するレコード同士を結合す
ることもできる。レコード属性情報116を用いること
により、AP104が複数のテーブルでユーザを示すカラ
ムやユーザ識別子の整合性を維持する手間が不要とな
る。
In the above embodiment, the tables are joined (Joi) based on the owner information of the record attribute information 116.
In n), records having the same owner can be combined. The use of the record attribute information 116 eliminates the need for the AP 104 to maintain the consistency of columns indicating users and user identifiers in a plurality of tables.

【0174】また、データベース102のレコードを暗
号化して格納する場合に、レコード属性情報116の所
有者に従って、ユーザごとに暗号化方式を変更すること
ができ、ユーザの区別なく暗号化する場合に比べてセキ
ュリティを強化することができる。
Further, when the records of the database 102 are encrypted and stored, the encryption method can be changed for each user according to the owner of the record attribute information 116. Security.

【0175】また、レコード属性情報116の所有者に
従って、データベース102に格納するレコードをユー
ザごとにクラスタリングすることにより、データ記憶装
置208−2からのレコードの読み込みの効率を向上
し、ユーザごとのデータベース処理の高速化を図ること
ができる。
Further, by clustering the records stored in the database 102 for each user according to the owner of the record attribute information 116, the efficiency of reading records from the data storage device 208-2 is improved, and the database for each user is improved. The processing can be speeded up.

【0176】また、レコードごとの所有者とアクセス権
の管理を、データベース管理システム105がオペレー
ティングシステムのユーザおよびアクセス管理に適合さ
せ、またアプリケーションプログラムにもユーザおよび
アクセス管理の情報を引き渡すことにより、オペレーテ
ィングシステム、データベース、およびアプリケーショ
ンプログラムを統一したアクセス制御を行うことができ
る。このことは、特に一貫したセキュリティが要求され
るデータ管理システムにおいて有効である。
The management of the owner and the access right for each record is adapted to the user and access management of the operating system by the database management system 105, and the information of the user and access management is transferred to the application program. It is possible to perform unified access control for systems, databases, and application programs. This is particularly effective in data management systems that require consistent security.

【0177】また、本発明によるアクセス制御に類似し
た方法として、一般的なファイルシステムにおけるファ
イルのパーミッションによるアクセス制御方法がある
が、そのようなファイルシステムではファイルの存在が
他ユーザにも認識され、アクセス時にパーミッションが
ない場合にエラーとなるのに対し、本発明の方法では他
ユーザにはレコードの存在すら認識されないようにする
ことができる。また、ファイルシステムではファイル名
がファイルの識別に用いられユーザが異なっても同一の
名称のファイルを作成することができないが、本発明の
方法では所有者情報を含めた同一性の判定によって、レ
コード自体は同一でもユーザごとにレコードを登録する
ことができる。このように、自分のレコードを他ユーザ
に存在すら認識させないようにできることは、セキュリ
ティが要求されるデータ管理システムにおいて有効であ
る。
As a method similar to the access control according to the present invention, there is an access control method based on file permissions in a general file system. In such a file system, the existence of a file is recognized by other users. While an error occurs when there is no permission at the time of access, the method of the present invention can prevent other users from even recognizing the existence of a record. Further, in the file system, the file name is used to identify the file, and even if the user is different, a file having the same name cannot be created. Records can be registered for each user even if they are the same. Thus, being able to prevent other users from recognizing their own records is effective in a data management system requiring security.

【0178】なお、前述したフローチャートの処理は、
図2に示したようなデータ処理装置でプログラムを実行
することによって実現できる。また、そのプログラム
は、ハードディスク装置、フロッピーディスクなどのコ
ンピュータで読み書きができる記憶媒体に格納すること
ができ、ネットワークを通してプログラムにアクセスす
ることができる。
The processing of the above-described flowchart is as follows.
This can be realized by executing a program with a data processing device as shown in FIG. In addition, the program can be stored in a computer-readable and writable storage medium such as a hard disk device or a floppy disk, and the program can be accessed through a network.

【0179】[0179]

【発明の効果】以上説明したように、本発明によれば、
複数のユーザのデータを管理し、複数のユーザがデータ
にアクセスするデータ管理システムにおいて、データベ
ースを利用するアプリケーションプログラムが意識しな
くても、データベース管理システムがユーザごとのレコ
ード単位のアクセス制御を行うことができるので、アプ
リケーションプログラムを簡略化できるという効果があ
る。
As described above, according to the present invention,
In a data management system that manages data of multiple users and accesses the data by multiple users, the database management system performs access control on a record-by-user basis for each user without being aware of application programs that use the database. Therefore, there is an effect that the application program can be simplified.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の一実施形態におけるデータ検索処理の
概要を示す概念図
FIG. 1 is a conceptual diagram showing an outline of a data search process according to an embodiment of the present invention.

【図2】本発明の一実施形態におけるハードウェアの構
成図
FIG. 2 is a configuration diagram of hardware according to an embodiment of the present invention.

【図3】本発明の一実施形態におけるデータベースシス
テムの構成図
FIG. 3 is a configuration diagram of a database system according to an embodiment of the present invention.

【図4】データベースのテーブルの構成図FIG. 4 is a configuration diagram of a database table;

【図5】データベースのインデクスレコードの構成図FIG. 5 is a configuration diagram of an index record of a database.

【図6】データベース接続処理のフローチャート図FIG. 6 is a flowchart of a database connection process.

【図7】データベース問合せ処理のフローチャート図FIG. 7 is a flowchart of a database inquiry process;

【図8】データベース管理システムにおけるデータ検索
処理のフローチャート図
FIG. 8 is a flowchart of a data search process in the database management system.

【図9】データ検索部におけるデータ検索処理結果作成
のフローチャート図
FIG. 9 is a flowchart of a data search processing result creation in the data search unit.

【図10】インデクス管理部におけるデータ検索処理の
フローチャート図
FIG. 10 is a flowchart of a data search process in an index management unit.

【図11】アクセス可否判定処理のフローチャート図FIG. 11 is a flowchart of access permission / inhibition determination processing;

【図12】データ検索部におけるデータ検索処理のフロ
ーチャート図
FIG. 12 is a flowchart of a data search process in a data search unit.

【図13】本発明の一実施形態のデータベースシステム
の構成図
FIG. 13 is a configuration diagram of a database system according to an embodiment of the present invention.

【図14】データベース管理システムにおけるデータ登
録処理のフローチャート図
FIG. 14 is a flowchart of a data registration process in the database management system.

【図15】インデクス管理部におけるインデクスレコー
ド登録処理のフローチャート図
FIG. 15 is a flowchart of an index record registration process in an index management unit.

【図16】データベース管理システムにおけるUNIQUEチ
ェックを含むデータ登録処理のフローチャート図
FIG. 16 is a flowchart of a data registration process including a UNIQUE check in the database management system.

【図17】データベース管理システムにおけるUNIQUEチ
ェック処理のフローチャート図
FIG. 17 is a flowchart of a UNIQUE check process in the database management system.

【図18】インデクス管理部におけるUNIQUEチェック処
理のフローチャート図
FIG. 18 is a flowchart of a UNIQUE check process in the index management unit.

【図19】データ検索部におけるUNIQUEチェック処理の
フローチャート図
FIG. 19 is a flowchart of a UNIQUE check process in the data search unit.

【図20】データ削除要求の構成図FIG. 20 is a configuration diagram of a data deletion request.

【図21】データベース管理システムにおけるデータ削
除処理のフローチャート図
FIG. 21 is a flowchart of data deletion processing in the database management system.

【図22】データ削除対象レコードの構成図FIG. 22 is a configuration diagram of a record to be deleted.

【図23】ユーザ削除と同時にデータ削除する要求の構
成図
FIG. 23 is a configuration diagram of a request to delete data at the same time as user deletion.

【図24】ロールの情報を含むテーブルの構成図FIG. 24 is a configuration diagram of a table including role information.

【図25】アクセス制御を行うモジュールを独立させた
データベース管理システムの構成図
FIG. 25 is a configuration diagram of a database management system in which modules for performing access control are made independent.

【図26】抽象データ型のカラム値のアクセス制御を行
うモジュールを用いたデータベース管理システムの構成
FIG. 26 is a configuration diagram of a database management system using a module that performs access control on column values of an abstract data type.

【図27】抽象データ型のカラム値の構成図FIG. 27 is a configuration diagram of a column value of an abstract data type

【符号の説明】[Explanation of symbols]

105…データベース管理システム 112…ユーザ認証部 114…アクセス可否判定部 116…レコード属性情報 117…実行ユーザ情報 118…要求アクション 105: Database Management System 112: User Authentication Unit 114: Access Permission Judgment Unit 116: Record Attribute Information 117: Execution User Information 118: Request Action

───────────────────────────────────────────────────── フロントページの続き (72)発明者 土田 正士 神奈川県川崎市幸区鹿島田890番地 株式 会社日立製作所システム開発本部内 Fターム(参考) 5B017 AA01 BA06 BB06 CA16 5B082 EA07 EA11 GA11  ────────────────────────────────────────────────── ─── Continuing on the front page (72) Inventor Masashi Tsuchida 890 Kashimada, Saiwai-ku, Kawasaki-shi, Kanagawa F-term in the System Development Division, Hitachi, Ltd. 5B017 AA01 BA06 BB06 CA16 5B082 EA07 EA11 GA11

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】データへのアクセスを管理するデータ管理
方法において、 データに対応付けられたアクセス制御に関する値を保持
するデータ属性を管理し、 データ処理要求を入力すると、該データ処理要求がデー
タにアクセス可能であるかを該データに対応付けられた
前記データ属性に基づいて判定し、 該判定の結果アクセス可能である場合に当該データに対
して前記データ処理要求に基づいたデータ処理を行うこ
とを特徴とするデータ管理方法。
In a data management method for managing access to data, a data attribute holding a value related to access control associated with data is managed, and when a data processing request is input, the data processing request is added to the data. Determining whether the data is accessible based on the data attribute associated with the data, and performing data processing based on the data processing request on the data when the result of the determination indicates that the data is accessible. Characteristic data management method.
【請求項2】請求項1に記載のデータ管理方法におい
て、 前記データ属性の値が未指定の場合、あらかじめ指示さ
れた値を前記データ属性の値とみなすことを特徴とする
データ管理方法。
2. The data management method according to claim 1, wherein when a value of the data attribute is not specified, a value designated in advance is regarded as the value of the data attribute.
【請求項3】請求項1に記載のデータ管理方法におい
て、 データ処理要求を行うユーザを識別するユーザ識別子
と、データに対して該ユーザがアクセス可能であるか否
かを示すアクセス権を、該データに対応付けがなされて
いる前記データ属性に含むことを特徴とするデータ管理
方法。
3. The data management method according to claim 1, wherein a user identifier for identifying a user making a data processing request and an access right indicating whether or not the user can access the data are provided. A data management method, wherein the data attribute is included in the data attribute associated with data.
【請求項4】データへのアクセスを管理するデータ管理
システムにおいて、 データ処理要求を行ったユーザを認識するユーザ認識手
段と、 該データ処理要求を解析し、要求されているアクション
を認識する要求解析手段と、 前記データ属性に、データに対してユーザがアクション
を行えるか否かを示すアクセス権を保持して、該データ
属性に基づいてデータへのアクセス可否を判定するアク
セス可否判定手段を備えることを特徴とするデータ管理
システム。
4. A data management system for managing access to data, a user recognizing means for recognizing a user who has made a data processing request, and a request analysis for analyzing the data processing request and recognizing a requested action. Means for storing access right indicating whether or not a user can perform an action on the data in the data attribute, and determining whether or not to access the data based on the data attribute. A data management system characterized by the following.
【請求項5】データへのアクセスを管理するデータ管理
システムにおけるデータ管理プログラムを格納した記憶
媒体であって、 前記データ管理プログラムは、 データに対応付けられたアクセス制御に関する値を保持
するデータ属性を管理し、 データ処理要求を入力すると、該データ処理要求がデー
タにアクセス可能であるかを該データに対応付けられた
前記データ属性に基づいて判定し、 該判定の結果アクセス可能である場合に当該データに対
して前記データ処理要求に基づいたデータ処理を行うも
のであることを特徴とする記憶媒体。
5. A storage medium storing a data management program in a data management system for managing access to data, wherein the data management program has a data attribute that holds a value related to access control associated with the data. When a data processing request is input, a determination is made based on the data attribute associated with the data whether the data processing request is accessible. If the result of the determination indicates that the data processing request is accessible, A storage medium for performing data processing on data based on the data processing request.
JP24677699A 1999-08-31 1999-08-31 Method and system for data management, and storage medium with data management program stored therein Pending JP2001075854A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24677699A JP2001075854A (en) 1999-08-31 1999-08-31 Method and system for data management, and storage medium with data management program stored therein

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24677699A JP2001075854A (en) 1999-08-31 1999-08-31 Method and system for data management, and storage medium with data management program stored therein

Publications (1)

Publication Number Publication Date
JP2001075854A true JP2001075854A (en) 2001-03-23

Family

ID=17153499

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24677699A Pending JP2001075854A (en) 1999-08-31 1999-08-31 Method and system for data management, and storage medium with data management program stored therein

Country Status (1)

Country Link
JP (1) JP2001075854A (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2371127A (en) * 2001-01-16 2002-07-17 Abattia Group Ltd Protection of personal information in a database
JP2006179009A (en) * 2004-12-22 2006-07-06 Microsoft Corp Protected view for crm database
JP2007249622A (en) * 2006-03-16 2007-09-27 Fuji Electric Holdings Co Ltd Method, system and program for providing information containing disclosure/non-disclosure item
JP2007257405A (en) * 2006-03-24 2007-10-04 Canon Inc Document management device, document managing method, storage medium, and program
JP2007531154A (en) * 2004-03-29 2007-11-01 マイクロソフト コーポレーション System and method for fine grain access control of data stored in relational database
JP2008158611A (en) * 2006-12-21 2008-07-10 Fuji Xerox Co Ltd Information processor, output processing system, and program of computer
JP2008165618A (en) * 2006-12-28 2008-07-17 Nippon Digital Kenkyusho:Kk Data input confirmation method, server device, client server system, and data input confirmation program
JP2010108111A (en) * 2008-10-29 2010-05-13 Hitachi Software Eng Co Ltd File search system and file search server device
JP2020204865A (en) * 2019-06-17 2020-12-24 コニカミノルタ株式会社 Method and program for cooperating two systems and information processing system

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2371127B (en) * 2001-01-16 2005-04-06 Abattia Group Ltd Consensus protected database
GB2371127A (en) * 2001-01-16 2002-07-17 Abattia Group Ltd Protection of personal information in a database
KR101153064B1 (en) * 2004-03-29 2012-06-04 마이크로소프트 코포레이션 Systems and methods for fine grained access control of data stored in relational databases
JP2007531154A (en) * 2004-03-29 2007-11-01 マイクロソフト コーポレーション System and method for fine grain access control of data stored in relational database
JP2006179009A (en) * 2004-12-22 2006-07-06 Microsoft Corp Protected view for crm database
KR101224822B1 (en) 2004-12-22 2013-01-21 마이크로소프트 코포레이션 Secured views for a crm database
JP2007249622A (en) * 2006-03-16 2007-09-27 Fuji Electric Holdings Co Ltd Method, system and program for providing information containing disclosure/non-disclosure item
JP2007257405A (en) * 2006-03-24 2007-10-04 Canon Inc Document management device, document managing method, storage medium, and program
JP2008158611A (en) * 2006-12-21 2008-07-10 Fuji Xerox Co Ltd Information processor, output processing system, and program of computer
JP2008165618A (en) * 2006-12-28 2008-07-17 Nippon Digital Kenkyusho:Kk Data input confirmation method, server device, client server system, and data input confirmation program
JP2010108111A (en) * 2008-10-29 2010-05-13 Hitachi Software Eng Co Ltd File search system and file search server device
JP2020204865A (en) * 2019-06-17 2020-12-24 コニカミノルタ株式会社 Method and program for cooperating two systems and information processing system
JP7293895B2 (en) 2019-06-17 2023-06-20 コニカミノルタ株式会社 Method and program for linking two systems, and information processing system

Similar Documents

Publication Publication Date Title
WO2022126968A1 (en) Micro-service access method, apparatus and device, and storage medium
US8166070B2 (en) Techniques for sharing persistently stored query results between multiple users
JP4398371B2 (en) How to control access to a relational database
US9881170B2 (en) DBFS permissions using user, role, and permissions flags
JP4842279B2 (en) Infrastructure for performing file operations by database server
US7711750B1 (en) Systems and methods that specify row level database security
US6973455B1 (en) File server system providing direct data sharing between clients with a server acting as an arbiter and coordinator
US6578037B1 (en) Partitioned access control to a database
US8930382B2 (en) High performance secure data access in a parallel processing system
US7548918B2 (en) Techniques for maintaining consistency for different requestors of files in a database management system
JP2001051879A (en) Method and system for improved access to nonrelational database
US20070038596A1 (en) Restricting access to data based on data source rewriting
US20110214165A1 (en) Processor Implemented Systems And Methods For Using Identity Maps And Authentication To Provide Restricted Access To Backend Server Processor or Data
US20030101200A1 (en) Distributed file sharing system and a file access control method of efficiently searching for access rights
AU2005317196A1 (en) Techniques for providing locks for file operations in a database management system
WO2018095326A1 (en) Method and apparatus for determining access permission, and terminal
US8521875B2 (en) Identity for data sources
US20050203903A1 (en) System and method for locking and isolation in a storage platform
JP2001075854A (en) Method and system for data management, and storage medium with data management program stored therein
US11372859B2 (en) Efficiently supporting value style access of MOBs stored in SQL LOB column by providing value based semantics for LOBs in RDBMS
WO2021208527A1 (en) Database distributed storage system and method based on optical disk
CN112231733A (en) MAC protection enhancement system of object proxy feature database
US20230111044A1 (en) Automatic query optimization for controlled data access
JP2000148552A (en) Method and system for associating data base file and medium where processing program thereof is recorded
JP2002259214A (en) Controlling access to storage device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040730

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070511

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070710

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080226