WO2005121967A1 - データ読み出し装置およびその方法 - Google Patents

データ読み出し装置およびその方法 Download PDF

Info

Publication number
WO2005121967A1
WO2005121967A1 PCT/JP2004/008111 JP2004008111W WO2005121967A1 WO 2005121967 A1 WO2005121967 A1 WO 2005121967A1 JP 2004008111 W JP2004008111 W JP 2004008111W WO 2005121967 A1 WO2005121967 A1 WO 2005121967A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
read
target data
permitted
source
Prior art date
Application number
PCT/JP2004/008111
Other languages
English (en)
French (fr)
Inventor
Kazuyuki Kikushima
Original Assignee
Hewlett-Packard Development Company, L.P.
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 Hewlett-Packard Development Company, L.P. filed Critical Hewlett-Packard Development Company, L.P.
Priority to PCT/JP2004/008111 priority Critical patent/WO2005121967A1/ja
Publication of WO2005121967A1 publication Critical patent/WO2005121967A1/ja

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication

Definitions

  • the present invention relates to a data reading device and a method for reading data stored in a database in response to a request.
  • Patent Documents 1 and 2 disclose a method of controlling access to a directory of a computer and a method of accessing data by rewriting a query using a mask condition.
  • Patent Document 1 can only control data access in units of directories.
  • Patent Document 2 it is necessary to rewrite an inquiry sentence using a mask condition, which complicates processing and settings for the processing.
  • Patent Document 1 JP-A-2000-155715
  • Patent Document 2 Japanese Patent Application Laid-Open No. 2002-215440
  • the present invention has been made in view of the above background, and has as its object to provide a data reading device and a method thereof that enable flexible control of data access and that facilitate processing and setting for the same.
  • a data reading device includes a data storage unit that stores one or more target data to be read, each including one or more element data; Permission information generating means for generating permission information in which each read source for reading the target data, target data permitted for the read source, and element data permitted for the read source are associated with each other; In response to a request from each of the reading sources, the stored object is stored based on the generated permission information.
  • a data reading unit that reads target data permitted to the read source from the data; and, based on the generated permission information, the read target data to the requested read source among the read target data.
  • Data selecting means for selecting the permitted element data and outputting the selected element data to the reading source.
  • the apparatus further comprises an authentication unit for authenticating the read source, wherein the data read unit reads the stored target data in response to a request from the authenticated read source.
  • the data selection means selects and outputs element data permitted by the authenticated reading source.
  • the apparatus further comprises request accepting means for accepting the read request in response to an operation from a user, wherein the authentication means includes a user and the request accepting means, or Authenticate as read source.
  • the target data is stored for each predetermined storage area
  • the permission information generating means is stored in each of the read sources for reading the target data and the storage area. Then, the permission information is generated by associating the target data permitted to be read with the element data permitted to the read source.
  • the permission information generating means includes a read source for reading the target data, target data permitted for the read source, and element data permitted for the read source.
  • the permission information is generated by further associating the time information indicating the time permitted for the read source, and the data selection unit is configured to read the read information based on the generated permission information.
  • the target data element data that is permitted to the requested read source and that is permitted to the read source based on the time information is selected and output to the read source.
  • the data reading unit is provided to a function realizing unit that realizes one or more functions that can be provided to the reading source, the reading sources, and the reading source.
  • a function providing means for providing a function associated with is a data read method, which stores one or more target data, each of which includes one or more element data, and reads the target data.
  • Permission information that associates target data permitted to the read source with element data permitted to the read source is generated, and the generated data is generated in response to a request from each of the read sources. Based on the permission information, the target data that is permitted to the read source is read out of the stored target data, and the read target data is read based on the generated permission information. From the data, element data permitted for the requested read source is selected and output to this read source.
  • the program according to the present invention is a data storage step of storing one or more target data items each including one or more element data items to be read, and a readout process of reading the target data.
  • element data permitted for the requested read source is selected from the read target data, and the read source is selected.
  • causing the computer to execute a data selection step to output to the computer.
  • FIG. 1 is a diagram exemplifying a configuration of a client server system to which a data reading method according to the present invention is applied.
  • FIG. 2 is a diagram exemplifying a hardware configuration of a server and a terminal shown in FIG. 1.
  • FIG. 3 is a diagram showing a configuration of a server program which is executed in the server shown in FIGS. 1 and 2 and realizes the data reading method according to the present invention.
  • FIG. 4 is a diagram showing a configuration of the AP shown in FIG. 3.
  • FIG. 5 is a diagram showing a storage area of an AP DB shown in FIG. 3.
  • FIG. 6 is a diagram showing user and terminal data stored in the user and terminal DB shown in FIG. 3.
  • FIG. 7 is a diagram showing security mask data stored in a mask DB shown in FIG. 3.
  • FIG. 8 is a diagram illustrating access conditions set for each time.
  • FIG. 9 is a diagram showing execution control data stored in an execution control DB shown in FIG. 4.
  • FIG. 10 is a flowchart showing the overall operation (S10) of the client server system shown in FIG.
  • FIG. 1 is a second sequence diagram.
  • FIG. 11 is a second sequence diagram showing an overall operation (S20) of the client server system shown in FIG. 1 and the like.
  • FIG. 12 is a diagram exemplifying a first (S80) in a general client-server system using an access control list (ACL).
  • ACL access control list
  • FIG. 13 is a diagram exemplifying a second process (S84) in a general client-server system using an access control list (ACL).
  • FIG. 14 is a diagram illustrating a third process (S86) in a general client-server system using an access control list (ACL).
  • FIG. 15 is a diagram illustrating a fourth process (S88) in a general client-server system using an access control list (ACL).
  • FIG. 1 is a diagram illustrating a configuration of a client server system 1 to which a data reading method according to the present invention is applied.
  • a client-server system 1 includes a server 2 and client terminals 110 — 110-m (m ⁇ l, the same applies to n hereinafter) connected to a network 100 such as a LAN, WAN, or the Internet. It is connected and configured through.
  • a network 100 such as a LAN, WAN, or the Internet. It is connected and configured through.
  • any one of a plurality of components such as the terminal 110-1 and the terminal 110-m is specified. , It may be abbreviated as terminal 110 or the like.
  • the server 2 and the terminal 110 may be collectively referred to as a node.
  • the client server system 1 causes the server 2 to read data from the database in response to a request from the terminal 110 and perform various processes.
  • FIG. 2 is a diagram illustrating a hardware configuration of server 2 and terminal 110 shown in FIG.
  • the server 2 and the terminal 110 are composed of a main body 120 including a CPU 122, a memory 124 and their peripheral circuits, a display device, a keyboard, an input / output device 126 including a mouse, and a network 100 (FIG. 1). And a recording device 130 that writes and reads data to and from a recording medium 132 such as a CD device and an HDD device.
  • a recording medium 132 such as a CD device and an HDD device.
  • the server 2 and the terminal 110 have a hardware component as a general computer capable of communicating with another node.
  • Each terminal 110 sends software such as a user password and a terminal identifier (ID) to the server 2 to authenticate the terminal 110 or the user, and receives a processing request to the server 2 and a processing result.
  • software such as a user password and a terminal identifier (ID)
  • ID terminal identifier
  • Necessary software such as software for software (the error is not shown) is loaded and executed as appropriate.
  • FIG. 3 is a diagram showing a configuration of a server program 3 which is executed in the server 2 shown in FIGS. 1 and 2 and realizes the data reading method according to the present invention.
  • the server program 3 includes a server unit 30 and a database unit (DB unit) 36.
  • DB unit database unit
  • the server unit 30 includes a business application program (AP) 4-1—4_n, a user's terminal interface unit (user.terminal IF) 300, an authentication unit 302, a user's terminal management unit 304, a user's terminal DB 306, and a mask DB creation.
  • AP business application program
  • the DB section 36 includes an AP DB management control section 360 and an AP DB 362. Note that FIG. 3 illustrates a case in which the server unit 30 and the DB unit 36 are configured as an integrated device. The force server unit 30 and the DB unit 36 can be realized on different computers.
  • FIG. 4 is a diagram showing a configuration of the AP 4 shown in FIG.
  • the AP 4 includes an execution control unit 400, an execution control DB 402, an execution control DB management unit 404, a function realizing unit 11p, and an AP DB access unit 440.
  • the server program 3 is supplied to the server 2 via the recording medium 132 (FIG. 2), loaded into the memory 124, and executed.
  • the server program 3 controls access to the data stored in the AP DB 362 for each user or terminal 110 according to a request from the user via the terminal 110 by these components, and stores the data. Perform the processing used.
  • FIG. 5 is a diagram showing a storage area of the AP DB 362 shown in FIG.
  • the DB362 for AP is provided with q DB columns (not necessarily corresponding to the directory etc. in server 2), and each DB column has its own DB column. ID (DB column ID) used for identification is added.
  • the AP DB 362 stores target data to be accessed by the AP 4 in each DB column.
  • each target data further includes one or more element data.
  • the customer data is stored as the target data in the DB column to be accessed by AP4, and the customer data includes, for example, the customer name, Customer address and customer phone number are included as element data.
  • the control unit 360 stores and manages target data in the AP DB 362.
  • the AP DB management 'control unit 360 reads the target data stored in the AP DB 362 in response to a request from AP 4 and outputs the data to the requested AP 4 via the filter unit 342.
  • FIG. 6 is a diagram showing user / terminal data stored in the user / terminal DB 306 shown in FIG.
  • the user terminal DB 306 stores user terminal data in the form of a table as shown in FIG.
  • the user terminal data entry includes user / terminal authentication data # 1 ## r , security mask ID # i_l # i_r, execution control data ID # 1 # 1 # j_r, and access group # k_l ## k-1r. included.
  • the user's terminal authentication data includes user authentication data required for user authentication, such as the user ID, user name, and password of the client server system 1, or
  • terminal authentication data required for authentication of the terminal 110 such as the ID of the terminal 110 of the client server system 1.
  • the user's terminal authentication data includes both of these data.
  • the security mask ID indicates a security mask (described later with reference to FIG. 7) applied to a user / terminal authenticated based on the user / terminal authentication data included in the same entry.
  • the execution control data ID and the access group are based on the user's terminal authentication data included in the same entry, and the execution control data (described later with reference to FIG. 9) applied to the authenticated user / terminal. Indicates ID and access group.
  • the user's terminal management unit 304 accepts an operation from the input / output device 126 or the terminal 110, creates the user / terminal data shown in FIG. 6, stores it in the user / terminal DB 306, and manages it.
  • the user 'terminal management unit 304 provides the user's terminal data stored in the user's terminal DB 306 for processing in the authentication unit 302, AP4, mask DB creation' management unit 320, and the like.
  • the authentication unit 302 authenticates the user accessing the server 2 and the terminal 110 using the user / terminal data provided by the user / terminal management unit 304.
  • FIG. 7 is a diagram showing security mask data stored in the mask DB 322 shown in FIG. It is.
  • the mask DB 322 stores security mask data in a table format exemplified in FIG.
  • security mask ID # 1 #s (Fig. 6), DB column ID # i'-1-s, security mask #j, -l #j, _s, and security mask information #k , — 1 # k, 1 are included.
  • Security mask ID # 1 #s is used to identify the security mask contained in the same entry.
  • DB column ID # i'_l Each of # i '_s includes one or more of DB column ID # 1 # q shown in FIG. 5, and this DB column ID is included in the same entry. Indicates the DB column to which the security mask is applied.
  • the security mask #j, — 11 #j, — s is, for example, 128-bit data, and the content of the filtering process on the target data in the filter unit 342 according to the value of each bit (1 or 0). Is defined.
  • the security mask information indicates the value of each bit of the security mask included in the same entry, and what kind of access to which element data of the target data is permitted.
  • the lower 3 bits of the security mask are used effectively to control data access to element data (customer name 'customer address' customer telephone number) included in the target data
  • the lower 3 bits (1 001) are used.
  • the security mask information is the same as when granting access to the customer name and allowing access to the same (1-1010) 1 customer address and also allowing access to the (1-1100) 1 customer telephone number. Defines the meaning of each bit in the mask.
  • FIG. 8 is a diagram exemplifying access conditions set for each time.
  • the security mask information further includes information for changing the access condition over time.
  • the security mask information uses the security mask (1 000) as the security mask valid at A and 1B shown in FIG. Is a security mask that is valid between B and C, and indicates that access is denied to all users and terminals during C and A.
  • the mask DB creation 'management unit 320 accepts an operation from the input / output device 126 or the terminal 110, creates the security mask data shown in Fig. 7, stores the security mask data in the mask DB 322, and manages the mask data.
  • the mask DB creation / management unit 320 provides the security mask data stored in the mask DB 322 for processing in the mask DB creation / management unit 320 and the like.
  • the timer unit 340 performs time management in the server program 3, and outputs, to the filter unit 342, for example, time information used to change access conditions over time, as shown in FIG.
  • FIG. 9 is a diagram showing execution control data stored in the execution control DB 402 shown in FIG.
  • the execution control DB 402 stores the execution control data shown in FIG.
  • the execution control data entry includes execution control data ID # 1— # t, access control AP # 11—1 # lt, access group # 1—1—1 and # l, t and execution Permitted function # ⁇ 1-1-1-1 # l "t is included.
  • the execution control data ID is used to identify each entry of the execution control data.
  • the access target AP indicates which AP 4 provides the function realized by the user and terminal associated with each other via the execution control data ID of each entry of the user's terminal data shown in Fig. 6. .
  • the access group and the execution permission function are included in the function realizing section 420 of the AP4 specified by the access target AP with respect to the user's terminal associated via each user / terminal data entry shown in FIG. This indicates which function realizing section 420 provides the function to be realized.
  • the execution control DB management unit 404 accepts an operation from the input / output device 126 or the terminal 110, creates the execution control data shown in FIG. 9, stores it in the execution control DB 402, and manages it.
  • execution control DB management unit 404 provides the execution control data stored in the execution control DB 402 for processing in the execution control unit 400.
  • the function realizing sections 420 are configured to realize the same or different functions, respectively, and provide various functions to the user terminal (FIG. 1) under the control of the execution control section 400.
  • Execution control unit 400 according to the execution control data stored in execution control DB management unit 404, via the execution control data ID of each entry of the user terminal data (Fig. 6 ) and the access group.
  • the function realizing unit 420 that realizes the function to be provided to the user's terminal associated with the user terminal is activated to provide each function.
  • the AP DB access unit 440 accesses the AP DB management control unit 360 according to a request from each of the function realizing units 420, and reads out data necessary for processing in the function realizing unit 420 from the AP DB 362.
  • the filter unit 342 (Fig. 3) is a function realizing unit 420 of AP4 (Fig. 4).
  • the finalizer 342 further reads the security mask data (FIG. 7) from the mask DB 322 via 320, and the access to the user's terminal is permitted by the security mask and the security information among the received target data. Only the element data is selected by filtering, and the selected data is output to the function implementing unit 420 that has read the target data.
  • FIGS. 10 and 11 show the overall operation (S1) of the client server system 1 shown in FIG. 0, S20) are first and second sequence diagrams.
  • the user A inputs the user name (A) and the password (PW) to the terminal 110-1, and
  • the terminal 110-1 issues an authentication request including a user name and a password to the server 2.
  • Steps 104, 106 (S104, S106)
  • the word Ninja 02 of the Sano program 3 uses the user's terminal data (FIG. 6) stored in the user's terminal DB306.
  • the A is authenticated, and the terminal 110-1 is notified of the authentication.
  • the server program 3 can perform authentication for both the user and the terminal. However, for the sake of concreteness and clarification, in the following description, the server program 3 will The case of performing authentication will be described.
  • steps 108 and 110 when an operation for making a predetermined processing request a to the authenticated user A power server 2 is performed on the terminal 110-1, The terminal 110-1 makes a processing request a to the server 2.
  • step 120 (S120) the filter unit 342 of the server unit 30 starts the filtering process on the target data al read from the AP DB 362 in the process requested by the authenticated user A.
  • the target data al specified by the DB column ID of the user terminal data of user A (Fig. 6) and requested by user A is customer data, A customer name, a customer address, and a customer telephone number are included as element data.
  • the content of the security mask (Fig. 7) specified by the security mask ID of the user's terminal data is (-111). Allow access to element data.
  • step 140 AP4 performs the processing requested by user A according to the execution control data (Fig. 9) indicated by the user's terminal data (Fig. 6).
  • DB management 'Request control unit 360 to read target data al.
  • step 142 the AP DB management ′ control unit 360 reads the target DB al for the AP DB 362 and outputs it to the filter unit 342.
  • the filter unit 342 performs filtering using the security mask (and security mask information as necessary; FIG. 7), and outputs all element data included in the target data to the AP 4 from which the target data al has been read. I do.
  • steps 160 and 162 processes the element data (customer name, customer address, customer telephone number) input from the DB management and control wholesaler 360 for AP.
  • the terminal 110-1 returns a processing response including these data to the terminal 110-1, and the terminal 110-1 indicates the returned processing response to the user ⁇ .
  • steps 180 and 182 upon requesting the end of the operation for the user power Sano2, the filter unit 342 of the server program 3 ends the finolatering process (S120) for the user A.
  • step 100 and 102 the user B (FIG. 1) inputs a user name ( ⁇ ) and a password to terminal 110-2.
  • terminal 110-2 After inputting (PW) and performing an operation for performing authentication on server 2, terminal 110-2 issues an authentication request including a user name and password to server 2.
  • the authentication unit 302 of the server program 3 uses the user terminal data (FIG. 6) stored in the user It authenticates B, and notifies terminal 110-2 of that.
  • steps 108 and 110 when the authenticated user B performs an operation on the terminal 110-2 to make a predetermined processing request a to the server 2,
  • the terminal 110-2 makes a processing request a to the server 2.
  • step 200 (S200) the filter unit 342 of the server unit 30 starts the filtering process on the target data al read from the AP DB 362 in the process requested by the authenticated user B.
  • Terminal data of user B (Fig. 6) and requested by user B for processing is customer data.
  • customer name, customer address and customer telephone number are included as element data.
  • User B is identified by the security mask ID in the user's terminal data.
  • the content of the security mask (Fig. 7) is (1-001), which allows user B to access only the customer name in the element data included in the target data al.
  • step 140 AP4 performs the processing requested by user A according to the execution control data (Fig. 9) indicated by the user's terminal data (Fig. 6).
  • DB management 'Request control unit 360 to read target data al.
  • step 142 the AP DB management ′ control unit 360 reads the target DB al for the AP DB 362 and outputs it to the filter unit 342.
  • the finalizer 342 performs filtering using a security mask or the like, and outputs only the element data a2 indicating the customer name to the AP4 among the element data included in the target data al.
  • AP4 processes the element data (customer name) input from the AP DB management / control wholesaler 360, and includes the data.
  • a response is returned to the terminal 110-1, and the terminal 110-1 indicates the returned processing response to the user ⁇ .
  • steps 180 and 182 when the user requests the end of the work on the server 2, the filter unit 342 of the server program 3 ends the finolatering process (S200) for the user B.
  • FIG. 12 to FIG. 15 are diagrams exemplifying an access control list (first to fourth processing (S80 to S88) in a general client-server system using ACU).
  • the server uses an ACL that associates the user with the processing, and provides only the processing indicated by the ACL to each user. Is adopted.
  • user A is included in customer data. If the process a using all the element data included is permitted and the process B using a part of the element data included in the customer data is permitted to the user B, as shown in FIGS. 12 and 13, the server Accepts process a from user A and rejects process a from user B. Similarly, as shown in FIGS. 14 and 15, the server accepts process b from user B and rejects process b from user A.
  • the client-server system 1 to which the data reading method according to the present invention is applied has the following advantages.
  • the client-server system 1 it is not necessary to create a program for performing different transaction processing for each security function to be realized, so the development period and man-hours are reduced, and functions are added. Can be flexibly realized at low cost. Further, in the client server system 1, the security function can be flexibly set for each user and each target data only by changing the data of the mask DB 322 and the execution control DB 402 and the like. When is found, misconfigurations can be easily corrected by an authorized user working online.
  • the security mask function can be changed every time, so that different security functions can be realized according to time without modifying the program. It may be possible to forbid all online access to server 2 before batch processing is started. Also, an update attribute or the like is added to the security mask information stored in the mask DB322. By doing so, it becomes possible to control the update transaction, so by dynamically changing the security, the control over the target data can be performed more finely.
  • the update transaction is a process of updating data, such as a process of rewriting the contents in the DB when the customer telephone number changes.
  • Update transactions require a strict security system to prevent unauthorized updates to data.
  • the present invention is applicable to a client server system and the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

 サーバ(2)は、ユーザAを認証する。ユーザBが、処理要求aを行うと、サーバ(2)は、ユーザBにより要求された処理に用いられる対象データa1についてのフィルタリング処理を開始する。サーバ(2)は、ユーザBにより要求された処理を行い、DB部(36)から対象データa1を読み出す。サーバ(2)は、設定されたセキュリティマスクを用いて対象データa1に対するフィルタリングを行い、対象データa1に含まれる要素データ(顧客名、顧客住所、顧客電話番号)の内、セキュリティマスクにおいてユーザBがアクセスを許可された要素データa2(顧客名)のみを、ユーザBに対して返す。

Description

明 細 書
データ読み出し装置およびその方法
技術分野
[0001] 本発明は、要求に応じて、データベースに記憶されたデータを読み出すデータ読 み出し装置およびその方法に関する。
背景技術
[0002] 例えば、特許文献 1 , 2は、コンピュータのディレクトリに対するアクセス制御の方法 、および、マスク条件を用いて問い合わせ文を書き換えてデータにアクセスする方法 を開示する。
し力 ながら、特許文献 1に開示された方法では、ディレクトリを単位としたデータァ クセスの制御しかできない。
また、特許文献 2に開示された方法では、マスク条件を用いて問い合わせ文を書き 換える必要があり、処理およびそのための設定が複雑になってしまう。
特許文献 1 :特開 2000 - 155715号公報
特許文献 2:特開 2002 - 215440号公報
発明の開示
発明が解決しょうとする課題
[0003] 本発明は、上述した背景からなされたものであり、データアクセスの柔軟性のある制 御が可能で、処理およびそのための設定が容易なデータ読み出し装置およびその 方法を提供することを目的とする。
課題を解決するための手段
[0004] 上記目的を達成するために、本発明にかかるデータ読み出し装置は、読み出しの 対象とされ、それぞれ 1つ以上の要素データを含む 1つ以上の対象データを記憶す るデータ記憶手段と、対象データを読み出す読み出し元それぞれと、この読み出し 元に対して許可される対象データと、この読み出し元に対して許可される要素データ とを対応付けた許可情報を生成する許可情報生成手段と、前記読み出し元それぞ れからの要求に応じて、前記生成された許可情報に基づいて、前記記憶された対象 データの内、この読み出し元に対して許可されている対象データを読み出すデータ 読み出し手段と、前記生成された許可情報に基づいて、前記読み出された対象デー タの内、前記要求した読み出し元に許可されている要素データを選択して、この読み 出し元に対して出力するデータ選択手段とを有する。
[0005] 好適には、前記読み出し元を認証する認証手段をさらに有し、前記データ読み出 し手段は、前記認証された読み出し元からの要求に応じて、前記記憶された対象デ ータを読み出し、前記データ選択手段は、前記認証された読み出し元に許可されて レ、る要素データを選択して出力する。
[0006] 好適には、ユーザからの操作に応じて、前記読み出しの要求を受け入れる要求受 入手段をさらに有し、前記認証手段は、前記ユーザおよび前記要求受入手段または これらのいずれかを、前記読み出し元として認証する。
[0007] 好適には、前記対象データは、所定の記憶領域ごとに記憶され、前記許可情報生 成手段は、対象データを読み出す読み出し元それぞれと、前記記憶領域に記憶され 、この読み出し元に対して許可される対象データと、この読み出し元に対して許可さ れる要素データとを対応付けて許可情報を生成する。
[0008] 好適には、前記許可情報生成手段は、対象データを読み出す読み出し元それぞ れと、この読み出し元に対して許可される対象データと、この読み出し元に対して許 可される要素データとに、この読み出し元に対して許可する時間を示す時間情報を さらに対応付けて、前記許可情報を生成し、前記データ選択手段は、前記生成され た許可情報に基づいて、前記読み出された対象データの内、前記要求した読み出し 元に許可されている要素データであって、前記時間情報によりこの読み出し元に許 可されている要素データを選択して、この読み出し元に対して出力する。
[0009] 好適には、前記データ読み出し手段は、前記読み出し元に対して提供されうる 1つ 以上の機能を実現する機能実現手段と、前記読み出し元それぞれと、この読み出し 元に対して提供される機能とを対応付けた機能提供情報を記憶する機能提供情報 記憶手段と、前記記憶された機能提供情報に基づいて、前記機能実現手段を制御 し、前記要求した読み出し元に対して、この読み出し元に対応付けられた機能を提 供する機能提供手段とを有する。 [0010] また、本発明に力かるデータ読み出し方法は、読み出しの対象とされ、それぞれ 1 つ以上の要素データを含む 1つ以上の対象データを記憶し、対象データを読み出す 読み出し元それぞれと、この読み出し元に対して許可される対象データと、この読み 出し元に対して許可される要素データとを対応付けた許可情報を生成し、前記読み 出し元それぞれからの要求に応じて、前記生成された許可情報に基づいて、前記記 憶された対象データの内、この読み出し元に対して許可されている対象データを読 み出し、前記生成された許可情報に基づいて、前記読み出された対象データの内、 前記要求した読み出し元に許可されている要素データを選択して、この読み出し元 に対して出力する。
[0011] また、本発明に力、かるプログラムは、読み出しの対象とされ、それぞれ 1つ以上の要 素データを含む 1つ以上の対象データを記憶するデータ記憶ステップと、対象デー タを読み出す読み出し元それぞれと、この読み出し元に対して許可される対象デー タと、この読み出し元に対して許可される要素データとを対応付けた許可情報を生成 する許可情報生成ステップと、前記読み出し元それぞれからの要求に応じて、前記 生成された許可情報に基づいて、前記記憶された対象データの内、この読み出し元 に対して許可されている対象データを読み出すデータ読み出しステップと、前記生 成された許可情報に基づいて、前記読み出された対象データの内、前記要求した読 み出し元に許可されている要素データを選択して、この読み出し元に対して出力す るデータ選択ステップとをコンピュータに実行させる。
発明の効果
[0012] 本発明によれば、データアクセスの柔軟性のある制御が可能で、処理およびそのた めの設定が容易なデータ読み出し装置およびその方法を提供することができる。 図面の簡単な説明
[0013] [図 1]本発明に力かるデータ読み出し方法が適用されるクライアントサーバシステムの 構成を例示する図である。
[図 2]図 1に示したサーバおよび端末のハードウェア構成を例示する図である。
[図 3]図 1 ,図 2に示したサーバにおいて実行され、本発明にかかるデータ読み出し 方法を実現するサーバプログラムの構成を示す図である。 [図 4]図 3に示した APの構成を示す図である。
[図 5]図 3に示した AP用 DBの記憶領域を示す図である。
[図 6]図 3に示したユーザ ·端末 DBに記憶されるユーザ ·端末データを示す図である
[図 7]図 3に示したマスク DBに記憶されるセキュリティマスクデータを示す図である。
[図 8]時刻ごとに設定されるアクセス条件を例示する図である。
[図 9]図 4に示した実行制御 DBに記憶される実行制御データを示す図である。
[図 10]図 1などに示したクライアントサーバシステムの全体的な動作(S10)を示す第
1 ,第 2のシーケンス図である。
[図 11]図 1などに示したクライアントサーバシステムの全体的な動作(S20)を示す第 2のシーケンス図である。
[図 12]アクセス制御リスト (ACL)を用いる一般的なクライアントサーバシステムにおけ る第 1 (S80)を例示する図である。
[図 13]アクセス制御リスト (ACL)を用いる一般的なクライアントサーバシステムにおけ る第 2の処理(S84)を例示する図である。
[図 14]アクセス制御リスト (ACL)を用いる一般的なクライアントサーバシステムにおけ る第 3の処理(S86)を例示する図である。
[図 15]アクセス制御リスト (ACL)を用いる一般的なクライアントサーバシステムにおけ る第 4の処理(S88)を例示する図である。
発明を実施するための最良の形態
[0014] 以下、本発明の実施形態を説明する。
[0015] [クライアントサーバシステム 1]
図 1は、本発明にかかるデータ読み出し方法が適用されるクライアントサーバシステ ム 1の構成を例示する図である。
図 1に示すように、クライアントサーバシステム 1は、サーバ 2と、クライアント端末 110 _1一 110— m (m≥l、以下 nなどについて同様)とが、 LAN, WANあるいはインター ネットなどのネットワーク 100を介して接続されて構成される。
[0016] なお、以下、端末 110 - 1一 110 - mなど、複数ある構成部分のいずれかを特定せ ずに示すときには、端末 110などと略記することがある。
また、以下の各図においては、実質的に同じ構成部分 ·処理には、同じ符号が付さ れている。
また、以下、サーバ 2および端末 110を総称してノードと記すことがある。 クライアントサーバシステム 1は、これらの構成部分により、サーバ 2が、端末 110か らの要求に応じてデータベースからデータを読み出し、様々な処理を行う。
[0017] レヽードウエア]
図 2は、図 1に示したサーバ 2および端末 110のハードウェア構成を例示する図で ある。
図 2に示すように、サーバ 2および端末 110は、 CPU122 'メモリ 124およびこれら の周辺回路などを含む本体 120、表示装置'キーボード 'マウスなどを含む入出力装 置 126、ネットワーク 100 (図 1)を介した他ノードとの通信を行う通信装置 128、およ び、 CD装置 'HDD装置など、記録媒体 132に対してデータの書き込みおよび読み 出しを行う記録装置 130から構成される。
つまり、サーバ 2および端末 110は、他ノードとの間で通信が可能な一般的なコンビ ユータとしてのハードウェア的構成部分を有してレ、る。
[0018] [ソフトウェア]
端末 110それぞれには、サーバ 2に対してユーザのパスワード '端末識別子(ID)な どを送って、端末 110またはユーザの認証を行うためのソフトウェア、および、サーバ 2に対する処理要求および処理結果の受け取りなどのためのソフトウェア(レヽずれも 図示せず)など、必要とされるソフトウェア力 適宜、ロードされ、実行される。
[0019] 図 3は、図 1 ,図 2に示したサーバ 2において実行され、本発明にかかるデータ読み 出し方法を実現するサーバプログラム 3の構成を示す図である。
図 3に示すように、サーバプログラム 3は、サーバ部 30およびデータベース部(DB 部) 36から構成される。
サーバ部 30は、業務用アプリケーションプログラム (AP) 4—1— 4_n、ユーザ'端末 インターフェース部(ユーザ.端末 IF) 300、認証部 302、ユーザ'端末管理部 304、 ユーザ'端末 DB306、マスク DB作成'管理部 320、マスク DB322、タイマ部 340お よびからフィルタ部 342から構成される。
DB部 36は、 AP用 DB管理 '制御部 360および AP用 DB362から構成される。 なお、図 3には、サーバ部 30と DB部 36とが一体の装置として構成される場合が例 示されている力 サーバ部 30と DB部 36とは、それぞれ異なるコンピュータ上で実現 されうる。
[0020] 図 4は、図 3に示した AP4の構成を示す図である。
図 4に示すように、 AP4は、実行制御部 400、実行制御 DB402、実行制御 DB管 理部 404、機能実現部 1一 pおよび AP用 DBアクセス部 440から構成される。
サーバプログラム 3は、記録媒体 132 (図 2)を介してサーバ 2に供給され、メモリ 12 4にロードされて実行される。
サーバプログラム 3は、これらの構成部分により、ユーザによる端末 110を介した要 求に応じて、ユーザあるいは端末 110ごとに、 AP用 DB362に記憶されたデータへ のアクセスを制御して、このデータを用いた処理を行う。
[0021] 図 5は、図 3に示した AP用 DB362の記憶領域を示す図である。
図 5に示すように、 AP用 DB362には、 q個の DBカラム(サーバ 2におけるディレクト リなどとは必ずしも対応しなレ、)が設けられ、 DBカラムそれぞれには、 DBカラムそれ ぞれの識別に用いられる ID (DBカラム ID)が付される。
AP用 DB362は、 DBカラムそれぞれに、 AP4がアクセスの対象とする対象データ を記憶する。
なお、対象データそれぞれには、さらに、 1つ以上の要素データが含まれる。
つまり、例えば、 AP4力 顧客管理を行うプログラムであるときには、 AP4がアクセス の対象とする DBカラムには、対象データとして、顧客データが記憶され、この顧客デ ータには、例えば、顧客名、顧客住所および顧客電話番号などが、要素データとして 含まれる。
[0022] AP用 DB管理.制御部 360は、 AP用 DB362に、対象データを記憶し、管理する。
AP用 DB管理'制御部 360は、 AP4からの要求に応じて、 AP用 DB362に記憶し た対象データを読み出し、フィルタ部 342を介して、要求した AP4に対して出力する [0023] 図 6は、図 3に示したユーザ ·端末 DB306に記憶されるユーザ ·端末データを示す 図である。
ユーザ ·端末 DB306は、図 6に例示するテーブル形式のユーザ端末データを記憶 する。
このユーザ端末データのエントリには、ユーザ ·端末認証データ # 1一 #r、セキユリ ティマスク ID # i_l # i_r、実行制御データ ID #卜 1一 #j_rおよびアクセスグルー プ # k_l一 # k一 rが含まれる。
[0024] ユーザ'端末認証データには、クライアントサーバシステム 1のユーザの ID、ユーザ 名およびパスワードなど、ユーザの認証に必要とされるユーザ認証用データ、または
、クライアントサーバシステム 1の端末 110の IDなど、端末 110の認証に必要とされる 端末認証用データが含まれる。
なお、サーバプログラム 3が、ユーザ認証用データおよび端末認証データの両方を 必要とするときには、ユーザ'端末認証データには、これら両方のデータが含まれる。
[0025] セキュリティマスク IDは、同じエントリに含まれるユーザ'端末認証データに基づい て認証されたユーザ ·端末に対して適用されるセキュリティマスク(図 7を参照して後 述)を示す。
実行制御データ IDおよびアクセスグループは、同じエントリに含まれるユーザ'端末 認証データに基づレ、て認証されたユーザ ·端末に対して適用される実行制御データ (図 9を参照して後述)の IDおよびアクセスグループを示す。
[0026] ユーザ'端末管理部 304は、入出力装置 126あるいは端末 110からの操作を受け 入れて、図 6に示したユーザ ·端末データを作成し、ユーザ ·端末 DB306に記憶し、 管理する。
また、ユーザ'端末管理部 304は、ユーザ.端末 DB306に記憶したユーザ.端末デ ータを、認証部 302、 AP4およびマスク DB作成'管理部 320などにおける処理の用 に供する。
認証部 302は、ユーザ ·端末管理部 304により提供されるユーザ ·端末データを用 いて、サーバ 2にアクセスするユーザおよび端末 110の認証を行う。
[0027] 図 7は、図 3に示したマスク DB322に記憶されるセキュリティマスクデータを示す図 である。
マスク DB322は、図 7に例示するテーブル形式のセキュリティマスクデータを記憶 する。
このセキュリティマスクデータのエントリには、セキュリティマスク ID # 1 # s (図 6)、 DBカラム ID # i'— 1— s、セキュリティマスク #j,—l一 #j,_sおよびセキュリティ マスク情報 # k,— 1一 # k, 1が含まれる。
セキュリティマスク ID # 1 # sは、同じエントリに含まれるセキュリティマスクを識別 するために用いられる。
[0028] DBカラム ID # i'_l— # i' _sそれぞれは、図 5に示した DBカラム ID # 1 # qの内 の 1つ以上を含み、この DBカラム IDは、同じエントリに含まれるセキュリティマスクが 適用される DBカラムを示す。
セキュリティマスク #j,— 1一 #j,— sは、例えば 128ビットのデータであって、各ビット の値(1または 0)に応じて、フィルタ部 342における対象データに対するフィルタリン グ処理の内容が定義される。
[0029] セキュリティマスク情報は、同じエントリに含まれるセキュリティマスクの各ビットの値 力 対象データのいずれの要素データに対するどのようなアクセスを許可するかを示 す。
例えば、セキュリティマスクの下位 3ビットのみ力 対象データに含まれる要素データ (顧客名 '顧客住所'顧客電話番号)に対するデータアクセスの制御のために有効に 用いられるときには、下位 3ビット(一 001)が、顧客名に対するアクセスを許可し、同 じく(一 010) 1 顧客住所に対するアクセスを許可し、同じく(一 100) 1 顧客電話 番号に対するアクセスを許可するといつたように、セキュリティマスク情報は、セキユリ ティマスクの各ビットの意味を定義する。
[0030] 図 8は、時刻ごとに設定されるアクセス条件を例示する図である。
また、例えば、図 8に示すように、図 6,図 7に示すユーザ'端末データおよびセキュ リティマスクデータにより特定されるユーザ Xに対して、 A時から B時までは、同じェント リに含まれる DBカラム IDが示す DBカラム(図 5)に記憶された対象データに含まれる 全ての要素データへのアクセスが許可され、 B時から C時までは、この対象データへ のアクセスが不許可とされ、また、 C時から A時までは、全てのユーザに対して、この 対象データへのアクセスが不許可とされるといったように、サーバプログラム 3におい ては、対象データおよび要素データへのアクセスが、経時的に変更されうる。
サーバプログラム 3において、このような経時的なアクセス条件の変更が行われると きには、セキュリティマスク情報は、このような経時的なアクセス条件の変更を行うため の情報を、さらに含む。
つまり、ここで例示したような場合には、セキュリティマスク情報は、セキュリティマス ク(一 000)を、図 8に示した A時一 B時に有効とされるセキュリティマスクとし、セキユリ ティマスク(一 111)を、 B時一 C時の間に有効とされるセキュリティマスクとし、 C時一 A時の間には全ユーザ ·端末に対してアクセス不許可とする旨を示す。
[0031] マスク DB作成'管理部 320は、入出力装置 126あるいは端末 110からの操作を受 け入れて、図 7に示したセキュリティマスクデータを作成し、マスク DB322に記憶し、 管理する。
また、マスク DB作成'管理部 320は、マスク DB322に記憶したセキュリティマスクデ ータを、マスク DB作成 ·管理部 320などにおける処理の用に供する。
タイマ部 340は、サーバプログラム 3における時間管理を行い、例えば、図 8に示し たように、アクセス条件を経時的に変更するために用いられる時刻情報を、フィルタ 部 342に対して出力する。
[0032] 図 9は、図 4に示した実行制御 DB402に記憶される実行制御データを示す図であ る。 AP4 (図 3,図 4)において、実行制御 DB402は、図 9に示す実行制御データを 記憶する。
図 9に示すように、実行制御データのエントリには、実行制御データ ID # 1— # t、 アクセス制御 AP # 11— 1 # lt、アクセスグループ # 1— 1— 1一 #l,tおよび実行許 可機能 # Γ 1-1-1-1一 # l"tが含まれる。
実行制御データ IDは、実行制御データの各エントリを識別するために用いられる。 アクセス対象 APは、図 6に示したユーザ'端末データの各エントリの実行制御デー タ IDを介して対応付けられたユーザ ·端末に対して、いずれの AP4が実現する機能 を提供するかを示す。 アクセスグループおよび実行許可機能は、図 6に示したユーザ ·端末データの各ェ ントリを介して対応付けられたユーザ'端末に対して、アクセス対象 APにより特定され る AP4の機能実現部 420の内、いずれの機能実現部 420が実現する機能を提供す るかを示す。
[0033] 実行制御 DB管理部 404は、入出力装置 126あるいは端末 110からの操作を受け 入れて、図 9に示した実行制御データを作成し、実行制御 DB402に記憶し、管理す る。
また、実行制御 DB管理部 404は、実行制御 DB402に記憶した実行制御データを 、実行制御部 400における処理の用に供する。
機能実現部 420は、それぞれ同一または異なる機能を実現しうるように構成されて おり、実行制御部 400の制御に従って、ユーザ ·端末(図 1)に対して、様々な機能を 提供する。
[0034] 実行制御部 400は、実行制御 DB管理部 404に記憶された実行制御データに従つ て、ユーザ.端末データ(図 6)の各エントリの実行制御データ IDおよびアクセスダル ープを介して対応付けられたユーザ'端末に対して提供すべき機能を実現する機能 実現部 420を起動し、それぞれの機能を提供させる。
AP用 DBアクセス部 440は、機能実現部 420それぞれからの要求に従って、 AP用 DB管理 '制御部 360にアクセスし、 AP用 DB362から、機能実現部 420における処 理に必要なデータを読み出す。
[0035] フィルタ部 342 (図 3)は、 AP4の機能実現部 420 (図 4)が、 AP用 DB管理.制御部
360を介して AP用 DB362から読み出した対象データを受け入れる。
フイノレタ部 342は、さらに、 320を介してマスク DB322からセキュリティマスクデータ (図 7)を読み出し、受け入れた対象データの内、セキュリティマスクおよびセキユリテ ィ情報により、ユーザ'端末に対してアクセスが許可された要素データのみをフィルタ リングにより選択し、対象データを読み出した機能実現部 420に対して出力する。
[0036] [クライアントサーバシステム 1の動作]
以下、クライアントサーバシステム 1の全体的な動作を説明する。
[0037] 図 10,図 11は、図 1などに示したクライアントサーバシステム 1の全体的な動作(S1 0, S20)を示す第 1,第 2のシーケンス図である。
図 10に示すように、ステップ 100, 102 (S100, S102)において、ユーザ A (図 1) 、端末 110-1に対してユーザ名(A)およびパスワード(PW)を入力し、サーバ 2に 対する認証を行うための操作を行うと、端末 110— 1は、サーバ 2に対して、ユーザ名 およびパスワードを含む認証要求を出す。
ステップ 104, 106 (S104, S106) こおレヽて、サーノプログラム 3 (図 3)の言忍証き 02は、ユーザ'端末 DB306に記憶されたユーザ'端末データ(図 6)を用いて、ユー ザ Aを認証し、その旨を端末 110—1に対して通知する。
なお、既に述べたように、サーバプログラム 3は、ユーザおよび端末のいずれに対 する認証も行い得るが、説明の具体化'明確化のために、以下の説明においては、 サーバプログラム 3がユーザの認証を行う場合について述べる。
[0038] ステップ 108, 110 (S108, S110)におレ、て、認証されたユーザ A力 サーバ 2に 対して所定の処理要求 aを行うための操作を端末 110-1に対して行うと、端末 110- 1は、サーバ 2に対して処理要求 aを行う。
ステップ 120 (S120)におレヽて、サーバ部 30のフィルタ部 342は、認証されたユー ザ Aにより要求された処理において AP用 DB362から読み出される対象データ alに ついてのフィルタリング処理を開始する。
[0039] 既に例示したように、ユーザ Aのユーザ ·端末データ(図 6)の DBカラム IDにより特 定され、ユーザ Aが要求した処理の対象となる対象データ alは、顧客データであつ て、顧客名、顧客住所および顧客電話番号を、要素データとして含む。
また、ユーザ Aについて、ユーザ'端末データのセキュリティマスク IDにより特定され るセキュリティマスク(図 7)の内容は(一 111)であって、ユーザ Aに対して、対象デー タ alに含まれる全ての要素データへのアクセスを許可する。
[0040] ステップ 140 (S140)において、 AP4は、ユーザ'端末データ(図 6)が示す実行制 御データ(図 9)に従って、ユーザ Aにより要求された処理を行レ、、 DB部 36の AP用 DB管理 '制御部 360に対して、対象データ alの読み出しを要求する。
ステップ 142 (S142)において、 AP用 DB管理'制御部 360は、 AP用 DB362力、ら 対象データ alを読み出し、フィルタ部 342に対して出力する。 フィルタ部 342は、セキュリティマスク(および必要に応じてセキュリティマスク情報; 図 7)を用いてフィルタリングを行い、対象データに含まれる全ての要素データを、対 象データ alを読み出した AP4に対して出力する。
[0041] ステップ 160, 162 (S160, S162)におレヽて、 AP4は、 AP用 DB管理 ·制 ί卸部 360 から入力された要素データ (顧客名、顧客住所、顧客電話番号)を処理し、これらの データを含む処理応答を、端末 110-1に対して返し、端末 110-1は、返された処理 応答を、ユーザ Αに対して示す。
これ以降、同様に、ユーザ Aは、サーバ 2に対する作業を行う。
ステップ 180, 182 (S180, S182)におレヽて、ユーザ力 サーノ 2に対する作業の 終了を要求すると、サーバプログラム 3のフィルタ部 342は、ユーザ Aに関するフィノレ タリング処理(S120)を終了する。
[0042] また、図 11 ίこ示すよう (こ、ステップ 100, 102 (S100, S102) ίこおレヽて、ユーザ B ( 図 1)力 端末 110-2に対してユーザ名(Β)およびパスワード(PW)を入力し、サー バ 2に対する認証を行うための操作を行うと、端末 110-2は、サーバ 2に対して、ュ 一ザ名およびパスワードを含む認証要求を出す。
ステップ 104, 106 (S104, S106)におレヽて、サーバプログラム 3 (図 3)の認証部 3 02は、ユーザ.端末 DB306に記憶されたユーザ.端末データ(図 6)を用いて、ユー ザ Bを認証し、その旨を端末 110-2に対して通知する。
[0043] ステップ 108, 110 (S108, S110)におレヽて、認証されたユーザ Bが、サーバ 2に 対して所定の処理要求 aを行うための操作を端末 110-2に対して行うと、端末 110- 2は、サーバ 2に対して処理要求 aを行う。
ステップ 200 (S200)におレ、て、サーバ部 30のフィルタ部 342は、認証されたユー ザ Bにより要求された処理において AP用 DB362から読み出される対象データ alに ついてのフィルタリング処理を開始する。
[0044] 図 10にも示したように、ユーザ Bのユーザ.端末データ(図 6)の DBカラム IDにより 特定され、ユーザ Bが要求した処理の対象となる対象データ alは、顧客データであ つて、顧客名、顧客住所および顧客電話番号を、要素データとして含む。
また、ユーザ Bについて、ユーザ'端末データのセキュリティマスク IDにより特定され るセキュリティマスク(図 7)の内容は(一 001)であって、ユーザ Bに対して、対象デー タ alに含まれる要素データの内、顧客名へのアクセスのみを許可する。
[0045] ステップ 140 (S140)において、 AP4は、ユーザ'端末データ(図 6)が示す実行制 御データ(図 9)に従って、ユーザ Aにより要求された処理を行レ、、 DB部 36の AP用 DB管理 '制御部 360に対して、対象データ alの読み出しを要求する。
ステップ 142 (S142)において、 AP用 DB管理'制御部 360は、 AP用 DB362力、ら 対象データ alを読み出し、フィルタ部 342に対して出力する。
フイノレタ部 342は、セキュリティマスクなどを用いてフィルタリングを行レ、、対象デー タ alに含まれる要素データの内、顧客名を示す要素データ a2のみを AP4に対して 出力する。
[0046] ステップ 220, 222 (S220, S222)におレヽて、 AP4は、 AP用 DB管理 ·制 ί卸部 360 から入力された要素データ(顧客名)を処理し、これらのデータを含む処理応答を、 端末 110-1に対して返し、端末 110-1は、返された処理応答を、ユーザ Βに対して 示す。
なお、 ΑΡ4は、要求した対象データに含まれる要素データの内、フィルタ部 342に よる処理によって、その一部のみしか得られないときには、適宜、その旨を、ユーザ Β に対して通知するための処理を行う。
これ以降、同様に、ユーザ Βは、サーバ 2に対する作業を行う。
ステップ 180, 182 (S180, S182)におレ、て、ユーザが、サーバ 2に対する作業の 終了を要求すると、サーバプログラム 3のフィルタ部 342は、ユーザ Bに関するフィノレ タリング処理(S200)を終了する。
[0047] [アクセス制御リスト (ACL)による制御]
図 12—図 15は、アクセス制御リスト (ACUを用いる一般的なクライアントサーバシ ステムにおける第 1一第 4の処理(S80— S88)を例示する図である。
一般的なクライアントサーバシステムにおいては、ユーザごとに異なった処理を行う ために、サーバにおいて、ユーザと処理とを対応付ける ACLを用レ、、ユーザそれぞ れに対して、 ACLが示す処理のみを提供する方法が採られる。
ACLを用レ、る方法によると、例えば、 ACLにおいて、ユーザ Aに、顧客データに含 まれる全ての要素データを用いる処理 aが許可され、ユーザ Bに、顧客データに含ま れる要素データの一部を用いる処理 bが許可されていると、図 12,図 13に示すように 、サーバは、ユーザ Aからの処理 aを受け入れ、ユーザ Bからの処理 aを拒否する。 同様に、図 14,図 15に示すように、サーバは、ユーザ Bからの処理 bを受け入れ、 ユーザ Aからの処理 bを拒否する。
[0048] [クライアントサーバシステム 1の長所]
このような一般的なクライアントサーバシステムに対して、本発明にかかるデータ読 み出し方法が適用されるクライアントサーバシステム 1は、以下のような長所を有する サーバ 2をプログラミングするプログラマは、所望のセキュリティ機能を実現するため に、オペレーティングシステムあるいはデータベースシステムそれぞれで異なるセキ ユリティ機能を習得'設定しなくとも、マスク DB322への設定のみを行えばよいので、 プログラミングに要する間が、大きく削減される。
[0049] また、クライアントサーバシステム 1においては、マスク DB322への設定およびフィ ルタ部 342による論理演算処理により、統一的な方法で、きめ細かいセキュリティ機 能が実現されうる。
また、クライアントサーバシステム 1においては、実現されるべきセキュリティ機能ごと に、異なるトランザクション処理を行うためのプログラムを作成する必要がなレ、ので、 開発ェ期、工数が削減され、また、機能追加などが、低コストで柔軟に実現されうる。 また、クライアントサーバシステム 1においては、マスク DB322および実行制御 DB 402などのデータを変更するだけで、ユーザごと、および、対象データごとに、柔軟に セキュリティ機能を設定することができ、しかも、設定ミスが見つかったときには、権限 を有するユーザのオンライン作業により、簡単に設定ミスが修正されうる。
[0050] また、クライアントサーバシステム 1においては、時間ごとにセキュリティマスク機能を 変更できるので、プログラムの修正なしに、時間に応じて異なるセキュリティ機能を実 現することができるので、例えば、サーバ 2においてバッチ処理が開始される前に、サ ーバ 2に対するオンラインアクセスをすベて禁止するといつたことが実現されうる。 また、マスク DB322に記憶されるセキュリティマスク情報に、更新属性などを付加す ることにより、更新トランザクションの制御も可能となるので、ダイナミックにセキュリティ を変更することにより、対象データに対する制御を、よりきめ細力べ行うことができる。
[0051] なお、上記更新トランザクションとは、データを更新する処理であって、その例として 、顧客電話番号が変わったときに、 DB中の内容を書き換えるような処理を挙げること ができる。
更新トランザクションでは、データが不正に更新されないように、厳密なセキュリティ 力 システムに対して要求される。
例えば、セキュリティマスクの最上位ビットを更新可/不可ビットと設定することによ り、更新トランザクションが発生する場合には、そのビットをチェックすることにより、更 新トランザクションについて、統一的にセキュリティを確保することできる。
[0052] また、セキュリティ機能を変更するときににも、必要に応じてデータを変更するだけ で済み、多くのプログラムを改修および試験する必要がない。
また、セキュリティ機能の変更時にも、システムの停止、プログラムファイルの入替え 作業および環境設定作業などが不要で、人為的なミスでシステムが停止するなどの 事故が発生しない。
産業上の利用可能性
[0053] 本発明は、クライアントサーバシステムなどに利用可能である。

Claims

請求の範囲
[1] 読み出しの対象とされ、それぞれ 1つ以上の要素データを含む 1つ以上の対象デー タを記憶するデータ記憶手段と、
対象データを読み出す読み出し元それぞれと、この読み出し元に対して許可される 対象データと、この読み出し元に対して許可される要素データとを対応付けた許可情 報を生成する許可情報生成手段と、
前記読み出し元それぞれからの要求に応じて、前記生成された許可情報に基づい て、前記記憶された対象データの内、この読み出し元に対して許可されている対象 データを読み出すデータ読み出し手段と、
前記生成された許可情報に基づいて、前記読み出された対象データの内、前記要 求した読み出し元に許可されている要素データを選択して、この読み出し元に対して 出力するデータ選択手段と
を有するデータ読み出し装置。
[2] 前記読み出し元を認証する認証手段
をさらに有し、
前記データ読み出し手段は、前記認証された読み出し元からの要求に応じて、前 記記憶された対象データを読み出し、
前記データ選択手段は、前記認証された読み出し元に許可されている要素データ を選択して出力する
請求の範囲第 1項に記載のデータ読み出し装置。
[3] ユーザからの操作に応じて、前記読み出しの要求を受け入れる要求受入手段 をさ らに有し、
前記認証手段は、前記ユーザおよび前記要求受入手段またはこれらのレ、ずれかを 、前記読み出し元として認証する
請求の範囲第 2項に記載のデータ読み出し装置。
[4] 前記対象データは、所定の記憶領域ごとに記憶され、
前記許可情報生成手段は、対象データを読み出す読み出し元それぞれと、前記記 憶領域に記憶され、この読み出し元に対して許可される対象データと、この読み出し 元に対して許可される要素データとを対応付けて許可情報を生成する 請求の範囲第 1項に記載のデータ読み出し装置。
[5] 前記許可情報生成手段は、対象データを読み出す読み出し元それぞれと、この読 み出し元に対して許可される対象データと、この読み出し元に対して許可される要素 データとに、この読み出し元に対して許可する時間を示す時間情報をさらに対応付 けて、前記許可情報を生成し、
前記データ選択手段は、前記生成された許可情報に基づいて、前記読み出された 対象データの内、前記要求した読み出し元に許可されている要素データであって、 前記時間情報によりこの読み出し元に許可されている要素データを選択して、この読 み出し元に対して出力する
請求の範囲第 1項に記載のデータ読み出し装置。
[6] 前記データ読み出し手段は、
前記読み出し元に対して提供されうる 1つ以上の機能を実現する機能実現手段と、 前記読み出し元それぞれと、この読み出し元に対して提供される機能とを対応付け た機能提供情報を記憶する機能提供情報記憶手段と、
前記記憶された機能提供情報に基づいて、前記機能実現手段を制御し、前記要 求した読み出し元に対して、この読み出し元に対応付けられた機能を提供する機能 提供手段と
を有する
請求の範囲第 1項に記載のデータ読み出し装置。
[7] 読み出しの対象とされ、それぞれ 1つ以上の要素データを含む 1つ以上の対象デー タを記憶し、
対象データを読み出す読み出し元それぞれと、この読み出し元に対して許可される 対象データと、この読み出し元に対して許可される要素データとを対応付けた許可情 報を生成し、
前記読み出し元それぞれからの要求に応じて、前記生成された許可情報に基づい て、前記記憶された対象データの内、この読み出し元に対して許可されている対象 データを読み出し、 前記生成された許可情報に基づいて、前記読み出された対象データの内、前記要 求した読み出し元に許可されている要素データを選択して、この読み出し元に対して 出力する
データ読み出し方法。
読み出しの対象とされ、それぞれ 1つ以上の要素データを含む 1つ以上の対象デー タを記憶するデータ記憶ステップと、
対象データを読み出す読み出し元それぞれと、この読み出し元に対して許可される 対象データと、この読み出し元に対して許可される要素データとを対応付けた許可情 報を生成する許可情報生成ステップと、
前記読み出し元それぞれからの要求に応じて、前記生成された許可情報に基づい て、前記記憶された対象データの内、この読み出し元に対して許可されている対象 データを読み出すデータ読み出しステップと、
前記生成された許可情報に基づいて、前記読み出された対象データの内、前記要 求した読み出し元に許可されている要素データを選択して、この読み出し元に対して 出力するデータ選択ステップと
をコンピュータに実行させるプログラム。
PCT/JP2004/008111 2004-06-10 2004-06-10 データ読み出し装置およびその方法 WO2005121967A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2004/008111 WO2005121967A1 (ja) 2004-06-10 2004-06-10 データ読み出し装置およびその方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2004/008111 WO2005121967A1 (ja) 2004-06-10 2004-06-10 データ読み出し装置およびその方法

Publications (1)

Publication Number Publication Date
WO2005121967A1 true WO2005121967A1 (ja) 2005-12-22

Family

ID=35503247

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2004/008111 WO2005121967A1 (ja) 2004-06-10 2004-06-10 データ読み出し装置およびその方法

Country Status (1)

Country Link
WO (1) WO2005121967A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60118954A (ja) * 1983-11-30 1985-06-26 Fujitsu Ltd 多レベルアクセス保護方式
JP2003345663A (ja) * 2002-05-29 2003-12-05 Fujitsu Ltd データベースアクセス制御方法およびデータベースアクセス制御プログラム
JP2004145767A (ja) * 2002-10-25 2004-05-20 Crypt Software Inc データ処理システム、処理装置及びコンピュータプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60118954A (ja) * 1983-11-30 1985-06-26 Fujitsu Ltd 多レベルアクセス保護方式
JP2003345663A (ja) * 2002-05-29 2003-12-05 Fujitsu Ltd データベースアクセス制御方法およびデータベースアクセス制御プログラム
JP2004145767A (ja) * 2002-10-25 2004-05-20 Crypt Software Inc データ処理システム、処理装置及びコンピュータプログラム

Similar Documents

Publication Publication Date Title
US7509497B2 (en) System and method for providing security to an application
US7483896B2 (en) Architecture for computer-implemented authentication and authorization
US8667578B2 (en) Web management authorization and delegation framework
US8875258B2 (en) Constraining a login to a subset of access rights
US20080115223A1 (en) Techniques for variable security access information
US20070300287A1 (en) Partition Access Control System And Method For Controlling Partition Access
US20060259960A1 (en) Server, method and program product for management of password policy information
JP2007241562A (ja) デバイスドライバプログラムを記録したコンピュータ読取可能な記録媒体、記憶装置アクセス方法および記憶装置アクセスシステム
AU2004241605A1 (en) System and method for electronic document security
US20070022091A1 (en) Access based file system directory enumeration
WO2021108128A1 (en) Protocol-agnostic claim configuration and verification
JP5229049B2 (ja) サーバ装置、アクセス制御システム、及びアクセス制御プログラム
US8095970B2 (en) Dynamically associating attribute values with objects
US20070208750A1 (en) Method and system for access to distributed data
WO2005121967A1 (ja) データ読み出し装置およびその方法
EP4070222A1 (en) Associating decentralized identifiers with one or more devices
WO2021112973A1 (en) Identity provider that supports multiple personas for a single user
JPH11203366A (ja) 情報管理システムおよびそのセキュリティ管理方法
JP2006065712A (ja) 統合認証方法、統合認証装置および統合認証のためのプログラム
JP5854070B2 (ja) アクセス制御装置、端末装置、及びプログラム
JP2006059280A (ja) 電子機器
WO2023250403A1 (en) Data resolution using user domain names
JP5505533B2 (ja) アクセス制御装置、端末装置、及びプログラム
JP2004030609A (ja) ログイン処理方法及びネットワークシステム
JP2000187589A (ja) プログラムシステムのコンポーネントアクセス制御装置

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DPEN Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed from 20040101)
NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Country of ref document: DE

NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP

122 Ep: pct application non-entry in european phase