WO2010055901A1 - 情報処理システムと方法並びにプログラム - Google Patents

情報処理システムと方法並びにプログラム Download PDF

Info

Publication number
WO2010055901A1
WO2010055901A1 PCT/JP2009/069313 JP2009069313W WO2010055901A1 WO 2010055901 A1 WO2010055901 A1 WO 2010055901A1 JP 2009069313 W JP2009069313 W JP 2009069313W WO 2010055901 A1 WO2010055901 A1 WO 2010055901A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
search
user
index
access control
Prior art date
Application number
PCT/JP2009/069313
Other languages
English (en)
French (fr)
Inventor
真樹 菅
善裕 梶木
Original Assignee
日本電気株式会社
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 日本電気株式会社 filed Critical 日本電気株式会社
Priority to US13/128,738 priority Critical patent/US9002811B2/en
Priority to JP2010537811A priority patent/JP5549596B2/ja
Publication of WO2010055901A1 publication Critical patent/WO2010055901A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/217Database tuning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries

Definitions

  • the present invention is based on the priority claim of Japanese patent application: Japanese Patent Application No. 2008-292582 (filed on Nov. 14, 2008), the entire content of which is incorporated herein by reference. Shall.
  • the present invention relates to an information processing system, method, and program, and more particularly, to a system, method, and program suitable for information retrieval.
  • ACL search As a function required for ACL search, only documents for which the user has access authority are presented as search results.
  • the ACL search will be described below.
  • the index storage means includes information acquired by the file information acquisition means, and authority information acquisition means (access to the file is possible, taking into account the access authority set for the document.
  • the information acquired by (acquires authority information indicating a correct user) is associated and stored as an index, and the search condition expression generating means generates a search condition expression from the user information specified by the user specifying means and the keyword,
  • the search means an information processing apparatus for searching an index corresponding to a search condition expression from the index storage means is disclosed.
  • FIG. 1 is a diagram for explaining a configuration in which ACL authority information is stored in advance on the search server side, and corresponds to the configuration disclosed in Patent Document 1.
  • Non-patent document 1 also discloses a similar configuration.
  • 1 and 2 are newly drawn by the present inventors for explaining the background of the invention.
  • the search server 1 acquires the ACL information (_ac1) 5 of the document from the repository 3 that stores the ACL information, stores it in a database or the like in advance, and stores the index 4 corresponding to the search condition in the ACL information (_ac1) 5. (For example, an AND operation), and a document having access authority is output as a search result to the search requesting user.
  • the authentication server 2 for ADS (Active Directory Service), Windows (registered trademark) Server, etc.) checks whether or not the user is registered by checking the password entered at the time of login by the user. To check.
  • FIG. 2 shows that the search server 1 confirms whether or not there is an access right when outputting the search result.
  • the ACL checker 6 confirms the access right of the document stored in the repository 3, selects a document with the access right, and outputs it to the search result list. According to this method, a search result that always reflects the latest ACL can be obtained. Further, as shown in FIG. 1, it is not necessary to hold the ACL information in the search server 1.
  • ACL information 5 for example, as shown in FIG. 3, indexing is performed as bit information in which a user and a document (document) are mapped one-to-one (Non-Patent Document 1). reference).
  • the calculation amount of the ACL index (_ac1) update process increases, and the update cost increases.
  • one record (a bit string indicating the access authority (accessible / impossible) of the document for each document) is added corresponding to the new user.
  • ACL information of all documents to be searched is acquired.
  • all of one column corresponding to each user whose access authority is controlled is changed.
  • all records need to be modified.
  • the overhead of ACL check of documents for the number of outputs is required, and search performance deteriorates.
  • the ACL check is performed on all the search result documents, so that the search performance is significantly deteriorated. That is, the response time from the input of the search request to the output of the number of search results is remarkably delayed. It may be unfriendly to the user not to display the number of search results at all because the ACL check takes time and the response is delayed.
  • displaying the number of search results before the ACL check is a security problem. For this reason, the ACL check before outputting the number of search results is essential.
  • the method of FIG. 2 has a low ACL update cost but a high search cost.
  • a search system is realized by combining one or both of the methods shown in FIGS. 1 and 2, but the access right to a document changes in a company or a public office (for example, personnel changes). Depending on the department and authority.) Due to the change in access authority, there may be a situation where the user has the right to view but does not have the right to view now.
  • the inventors of the present application have newly invented an ACL search that can be applied to a time travel search and the like, and will be described below.
  • An object of the present invention is to provide an information processing apparatus, method, and program that balances access control information update processing and search performance with access authority.
  • the invention disclosed in the present application is configured as follows in order to solve the above problems.
  • a storage unit that stores a correspondence between a collection of searchers and access rights of searched information, a searcher, and a searcher set including the searcher Based on the correspondence relationship, the access authority of the searched information related to the searcher is derived with reference to the access authority of the searched information related to the searcher aggregate corresponding to the searcher, and the search from the searcher is derived.
  • An information processing system is provided that includes means for using, as a search result, information permitted to be referred to by the searcher among information searched for a request.
  • Means for storing in the storage unit, index updating means comprising: From the access control entry, access control cache data for associating the user with the access authority of the information to be searched is created, and an ACL cache creating means for registering in the cache, and the search index is searched according to a search request from the user.
  • the correspondence between the collection of searchers and the access authority of the searched information is stored in the storage unit, Based on the correspondence between the searcher and the searcher aggregate including the searcher, With reference to the access right of the searched information related to the searcher aggregate corresponding to the searcher, the access right of the searched information related to the searcher is derived, An information processing method is provided, in which information that is permitted to be referred to by the searcher among the information searched for the search request from the searcher is used as a search result.
  • the computer that can refer to the storage unit that stores the correspondence between the collection of searchers and the access authority of the searched information, Based on the correspondence between the searcher and the searcher aggregate including the searcher, With reference to the access right of the searched information related to the searcher aggregate corresponding to the searcher, the access right of the searched information related to the searcher is derived, There is provided a program for executing a process of using, as a search result, information permitted to be referred to by the searcher among the information searched for the search request from the searcher.
  • an access control entry including an information structure in which a group ID and a document ID are associated with each other including a plurality of users is stored and held in a storage unit as information for managing access authority for a document.
  • a search device is provided that extracts a document that matches a user's access authority from documents that match a search condition.
  • the access entry includes a correspondence between a document ID that is permitted to be referenced and a document ID that is not permitted to be referenced as the access authority for at least the group ID, and is a document that conforms to the search condition. Among them, a list of documents that are permitted to be referenced but not permitted to be referenced is created.
  • the correspondence between the user ID and the document ID is derived in advance from the information of the access control entry or is derived in response to a user search request.
  • the correspondence between the user ID and the document ID is derived from the information in the access control entry, and the correspondence between the key including the user ID and the document ID that can be referred to the user ID is stored in the cache.
  • a list of documents suitable for the user's access authority among the documents suitable for the search condition may be created with reference to the cache.
  • Holding the ACL information in the form shown in FIG. 1 in the search server is an expensive process.
  • a plurality of users are grouped into one group and access control is performed in units of groups.
  • an access control entry which is a list for access control that manages whether or not each document can be referred to, is created for each user or group, and an access authority matching operation is performed.
  • ACE access control entry
  • the search server 1 holds an access control entry (ACE) as shown in FIG. 4 (B) as the ACL information (_ac1) 7.
  • ACE access control entry
  • the user ID user system ID
  • group ID group system
  • Document ID document ID
  • DocID document ID
  • the user 1 is DENY (cannot be referred to) for the document IDs 1, 2, and 4
  • the user 2 is DENY for the document IDs 1, 2, 5, and 7.
  • Group 1 (Group1_sid) is DENY for document IDs 2 and 3, everyone (other than the administrator) is DENY for document IDs 1, 2, 3, 4, 5 and user 1 (User1_sid) is for document ID7.
  • ALLOW group 1 (Group1_sid) is ALLOW for document ID6, and everyone (other than the administrator) is ALLOW for document ID8.
  • a document list that is set to ALLOW and is not DENY is output.
  • search processing must be performed for all of the user ID of the user, the group ID to which the user belongs, and the user ID for everone (DENY and ALLOW). 2 times), the number of disk random reads increases.
  • an access control entry that makes it possible to control whether or not reference is possible in units of groups is used to hold the ACL index.
  • the ACL index is updated in groups. For example, even when one user is added, if there is no addition or change of group or the like, no record is added (the operation of acquiring ACL information of all documents to be searched is not required). As a result, the high cost (high burden) of the ACL index update process is solved, and the process can be made more efficient.
  • the access control entry not only access control information enabling control of referability in group units but also reference control is set, as well as access control information for determining whether reference is possible or not referable in user units. Of course, it may be.
  • the ACL information held in the index storage unit is held in the ACL cache (ACL Cache List), thereby shortening the search time, and the search cost, which is a problem in the method of FIG. The problem of high is solved.
  • an ACL cache may be provided so as to correspond to a differential index (partition index) that holds an index for acquiring a referenceable document list at high speed.
  • the ACL information corresponding to the past division index can be reused from the information in the ACL cache (ACL Cache List).
  • an ACL index (ACE) may be created and updated in real time at the time of a search request.
  • the search index is divided into a plurality of partitioned index structures, for example, and the ACL index is held in correspondence with the partitioned index structure, so that the past ACL is restored, for example, in a time travel search. Can do. That is, according to the past ACL, it is possible to perform an ACL search on the past division index.
  • the partition index structure is not limited to the partition index partitioned in time series, and may be an arbitrary partition index.
  • FIG. 5 is a diagram showing the configuration of the first embodiment of the present invention.
  • a time-series segmented index storage unit 100 a document repository (information storage unit) 102, an ACL repository (access control information storage unit) 104, an index update unit 106, a search condition input unit 108, A search processing unit 110, a search result output unit 112, a user authentication unit 114, an ACL cache (ACL Cache List) 116, and an ACL cache creation unit 118 are provided.
  • the time series segment index storage unit 100 includes segment indexes 10 to 14 which are past segment indexes and the latest index 15.
  • the partition index has five configurations, but the number thereof is not limited.
  • segmentation index is not restrict
  • Each segment index 10 to 14 includes a search index and an ACL index (ACE method).
  • the ACL index is held according to an ACE (access control entry) system that is a list for access control that controls whether reference is possible or not in group units.
  • the time-series division index storage unit 100 includes a storage device such as a storage.
  • the document repository 102 is a storage device and system that stores documents to be searched in the search system.
  • it consists of a file server.
  • the ACL repository 104 is software that manages an access right and the like provided to a user for a document stored in the document repository 102.
  • it consists of software on a file server (linux permission, windows (registered trademark) OS) or the like.
  • the index update unit 106 registers and updates the document search index of the document repository 102 and the ACL index of the ACL repository 104.
  • the search index is created by file analysis, index word extraction, transposition indexing, and the like.
  • the index update means 106 updates the division of the division index periodically or by setting input by an administrator. For example, the section index 11 is updated to one section index 10, the section index 12 is updated to one section index 11,..., The latest index 15 is set to the index 14 one generation before, and the latest index is newly emptied. Along with the update of the partition index generation, the generation of the ACE (ACL index) included in the partition index is also updated.
  • the ACE ACL index
  • Search condition input means 108 is an interface for the user to input search conditions.
  • the search condition input means 108 has a function of designating search conditions such as a search keyword for searching and information (time information such as year, month, day, etc.) as a search base point, and delivering the search conditions to the search processing means 110.
  • the search base information may be, for example, time information such as year, month, day, hour or minute, or trigger information such as an event related to time.
  • an input box for a search keyword input from the user's Web browser can be used as an input box for a search keyword input from the user's Web browser.
  • the search processing means 110 performs a keyword search.
  • a search method for a single search index is performed by a general search technique in information search.
  • the search processing unit 110 inputs a search condition from the search condition input unit 108, and when a search target time condition is specified in the search condition, searches for a classification index corresponding to the specified time or earlier. If no time condition is specified, the latest index is searched. In FIG. 5, the division indexes 10 and 11 indicated by arrows are set as search targets.
  • the search processing unit 110 further has an ACL search function. An ACL search is performed with reference to the ACL information of the ACL cache 116 with respect to the time series division index. This process will be described later.
  • the search result output unit 112 is an interface for displaying the search result searched by the search processing unit 110.
  • the search result output unit 112 has a function of receiving the result of the search process performed by the search processing unit 110 and outputting it as a search result to the user.
  • the search result output unit 112 for example, software that outputs a list of search results on a user's Web browser is used.
  • the user authentication unit 114 is a system for authenticating a user. Verifies whether the user and password are registered against the user name and password input at the time of user login.
  • the user authentication unit 114 cooperates with the user authority of the document repository 102 and the ACL repository 104. For example, it is realized by a NIS (Network Information Server) server, a Windows (registered trademark) domain controller, or the like.
  • NIS Network Information Server
  • Windows registered trademark
  • the ACL cache creation means 118 creates ACL cache data.
  • the ACL cache 116 is held on the memory.
  • the ACL cache is held for each partitioned index.
  • FIG. 6 shows an example of data stored in the ACL cache 116.
  • a bitmap format record (READ enabled flag) is provided.
  • the user ID “user ID + index ID” corresponds to the ID (identification information) of the logged-in user (search request source), and the index ID (index id) corresponds to the ID of the partition index of the time-series partition index storage unit 100.
  • the READ enabled flag takes a value of 1 if the corresponding bit document is READ enabled, and takes a value of 0 otherwise.
  • the record of the READ enabled flag for example, if “101010111...” Is the rightmost bit of the document 1, the documents 1, 2, 3, 4, 5, 6, 7, 8. , Impossible, Permitted, Permitted ...
  • cache data is not created or registered for the latest index 15 that is frequently updated.
  • the ACL cache creation means 118 creates data to be written to the ACL cache 116 when the user logs in. When the ACL cache 116 is cached out, the ACL cache creating unit 118 creates ACL cache data in the area. Appropriate cache control (LRU (Least Recently Used): data that has not been used recently may be cached) may be adopted according to the available memory amount of the search server.
  • LRU Least Recently Used
  • the index updating means 106, the search processing means 110, the search condition input means 108, the search result output means 112, the ACL cache creation means 118, and the user authentication means 114 are controlled by a program control that operates on a computer. Its functions and processing are realized.
  • the division indexes 10 to 14 and the latest index 15 are indexes used for search processing.
  • the index is divided into time series for some reason.
  • the latest updated segment index is set as the latest index.
  • the index update means 106 indexes new documents or updated documents and always registers them in the latest index.
  • the index update unit 106 creates and updates the ACL index of the document in the ACE format, and registers and updates it in the latest index 15.
  • the format for storing the division indexes 10 to 14 and the latest index 15 includes a normal file format and a record on the database.
  • the latest index 15 and the partitioned indexes 10 to 14 may be stored in different storage devices, or may be stored in the same storage device.
  • the storage method of ACL information in the index basically follows the method of FIG. 1, but ACE (Access Control Entry) information is treated as a user ID and group ID as index words, and is used as an inverted index. To construct. That is, the user ID and the group ID are associated with the document ID.
  • the ACE is stored in a time-series manner corresponding to the division index.
  • a plurality of inverted indexes indicating DENY and ALLOW are created as document access authority.
  • ACE a document that is not included in the DENY field (column) but is included in the ALLOW field is a document with access rights.
  • the search processing means 110 performs a search process of ⁇ user ID (1) + group ID (the number to which the user belongs) + everybody (1) ⁇ in the ACE DENY field, and OR (logical sum) of these search processes. To create a document ID list.
  • a search process of ⁇ user ID (1) + group ID (number of affiliations) + everybody (1) times ⁇ is performed, and a logical sum operation OR is performed to create a document ID list.
  • a document obtained by subtracting the document included in the DENY column from the document included in the ALLOW column is a document with access rights.
  • the present embodiment includes a cache of a user ID and a document ID list, and the ACL cache creation means 118 (FIG. 5) uses an ACL cache when a user logs in or at the first search. Create data.
  • group 1 includes user A, user B, and user C
  • group 2 includes user A and user D.
  • documents 1 and 2 Doc1, Doc2
  • the ACL cache creation unit 118 indexes the ACEs 21 and 22 of the documents 1 and 2 and indexes the file 23 corresponding to the user, group, and document ID for each of the DENY column (field) and the ALLOW column (FIG. 4B). Corresponding to the ACE method).
  • the ACL cache creation means 118 searches the index file 23 for the sid (system ID) of the user, and the ACL cache data 24 that can be referred (Y) or not (N) between the document and each user. Is generated. For example, in order to obtain the ACL cache data of the user A, the ACL cache creating unit 118 creates the DENY list of the user A, the groups 1 and 2, and everone_id from the DENY column of the index file 23. Further, the ACL cache creation unit 118 creates an ALLOW list of the user A, groups 1 and 2 and everone_id from the ALLOW column of the index file 23.
  • ACL cache data is similarly derived for the users B, C, and D and stored in the ACL cache 116. Note that the ACL cache data (bit map format access control information) once stored in the ACL cache 116 may be stored in a storage such as a disk. In this case, when it is necessary, such as at the next search or at the time of login, the ACL cache data may not be newly created from the ACE, but may be read from the storage and stored in the ACL cache 116.
  • FIG. 8 is a diagram showing a configuration of the index update means 106 of FIG.
  • the index update unit 106 will be described with reference to FIG.
  • the index update unit 106 includes a document analysis unit 106-1, an ACE conversion unit 106-2, and an index update unit 106-3.
  • the document analysis means 106-1 performs format conversion, index word extraction, transposition indexing, etc. of the document (document) in the document repository 102.
  • the ACE conversion means 106-2 converts the ACL information of the ACL repository 104 into the ACE format. That is, information on whether or not the document (document) is accessible or inaccessible to the group and the user is extracted. For example, conversion is performed from permission, which is a Linux access authority mechanism, to ACE.
  • the index update means 106-3 updates the search index and ACL information (ACE).
  • the index update unit 106 stores the latest registered index as a difference from the previous generation index.
  • the index update unit 106 stores only difference information for the subsequent partition indexes with respect to one past partition index serving as a reference. Therefore, it can be stored in a high-speed storage device.
  • index addition / update processing and the like can be performed at high speed.
  • FIG. 9 is a flowchart for explaining the search processing when the ACL cache is not used in this embodiment. With reference to FIG. 9 and FIG. 5, the procedure of the search process (without the ACL cache) of the present embodiment will be described.
  • the user authentication means 114 When the user logs in, the user authentication means 114 performs login authentication and acquires authority information (user ID and group ID to which the user belongs) (step S101).
  • the user inputs search conditions from the search condition input means 108 (step S102).
  • search conditions a search keyword and time designation information (option) for specifying the time range of the division index are input.
  • the search processing unit 110 searches the search index (partition index) according to the search condition (keyword, time), and generates a document list that matches the search condition (step S103).
  • the search processing unit 110 searches the ACE by using all IDs (user ID and group ID) and everyone ID of the authority information, and obtains a referenceable document list (ALLOW list) by taking the OR (logical sum) of the search results. (Step S104).
  • the search processing unit 110 searches the ACE by using all IDs (user ID and group ID) and everyone ID of the authority information, and obtains a reference non-permitted document list (DENY list) by taking the OR of the search results (step ST). S105).
  • the search processing means 110 is included in both the document list created in step S103 and the referable document list (ALLOW list) created in step S104, and is also referred to as a non-referenced document list (DENY) created in step S104.
  • a document list not included in the list is created as a search result (step S106).
  • the search processing means 110 repeats the processing of steps S103 to S106 for the plurality of division indexes (step S107).
  • the search processing unit 110 sets only the latest index 15 as a search target.
  • a list of final search results is created from a plurality of search result document lists obtained in step S107 (step S108).
  • the search result output means 112 outputs the search result (step S109).
  • step S110 When the user does not log out (NO branch of step S110), the processing from step S102 is performed, and when the user logs out (YES branch of step S110), the process ends.
  • FIG. 10 is a flowchart for explaining search processing when an ACL cache is provided in this embodiment. With reference to FIGS. 10 and 5, the procedure of the search processing (with ACL cache) of the present embodiment will be described.
  • the user authentication means 114 When the user logs in, the user authentication means 114 performs login authentication and acquires authority information (user ID and group ID to which the user belongs) (step S101).
  • the ACL cache creation means 118 creates the ACL cache 116 (step S111). Step S111 is called as a subroutine (details of processing will be described later).
  • the user inputs search conditions from the search condition input means 108 (step S102).
  • the search processing unit 110 searches the search index (partition index) according to the search condition (keyword, time), and generates a document list that matches the search condition (step S103).
  • the search processing unit 110 checks whether there is valid cache data of the user ID of the search target index in the ACL cache (step S112).
  • a referenceable document list of the logged-in user ID is acquired using the ACL cache data (step S113).
  • the search processing means 110 creates a document list included in both the document list created in step S103 and the referable document list created in step S113 as a search result (step S114).
  • Step S104 if the cache data does not exist, a referable document list is created in step S104, a reference disallowed document list is created in step S105, and is included in the document list and the referable document list in step S104.
  • a process for creating a document list that is not included in the reference-denied document list in step S105 is performed. Steps S104, S105, and S106 are the same as steps S104, S105, and S106 in FIG.
  • step S106 a document list included in the referable document list in step S104 and not included in the reference disallowed document list in step S105 is registered in the ACL cache 116 as ACL cache data (step S115).
  • the search processing means 110 repeats the processing of steps S103 to S115 for the plurality of divided indexes (step S107).
  • a list of final search results is created from a plurality of search result document lists obtained in step S107 (step S108).
  • the search result output means 112 outputs the search result (step S109).
  • step S110 When the user does not log out (NO branch of step S110), the processing from step S102 is performed, and when the user logs out (YES branch of step S110), the process ends.
  • FIG. 11 is a flowchart for explaining the procedure of the ACL cache creation process (step S111) in FIG. The procedure of the ACL cache creation process will be described with reference to FIGS.
  • the ACL cache creation means 118 selects one search index for creating cache data (ACL cache data) to be registered in the ACL cache 116 (step S201).
  • the ACL cache creation unit 118 checks whether there is ACL cache data of the corresponding user corresponding to the selected search index (step S202).
  • the ACL cache creation means 118 uses all the IDs and authority IDs of authority information (user ID and group ID to which the user belongs) acquired by the user authentication means 114.
  • the search index is searched to obtain a referable document, and an OR operation is performed to create a referable document list (step S203).
  • the ACL cache creation unit 118 searches the search index with all the authority information (user ID and ID of the group to which the user belongs) and the ID for everyone, obtains a document with reference non-permission (DENY), and performs an OR operation.
  • a reference non-permitted document list is created (step S204).
  • the ACL cache creation unit 118 generates a document list that is included in the document list in step S203 but not in the document list in step S204 as a document list to be registered in the ACL cache (step S205).
  • the ACL cache creation unit 118 registers the document list generated in step S205 in the ACL cache 116 (step S206).
  • step S207 It is checked whether or not ACL cache data generation processing has been performed for all past partitioned indexes except the latest index (step S207), and ACL cache data generation processing has not been performed for all past partitioned indexes.
  • the process from step S201 is executed. Note that steps S203 to S206 may be executed in parallel.
  • FIG. 12 is a flowchart for explaining the creation of an ACL index (ACE method) in the index updating means 106 in the present embodiment.
  • the index update unit 106 acquires a document to be registered in the search index from the document repository 102 (step S401).
  • the index update unit 106 acquires access control information for the document from the ACL repository 104 (step S402).
  • the index update unit 106 acquires the ID of the user or group to which the reference right is explicitly given in the access control information (step S403).
  • the index update means 106 acquires the ID of the user or group whose reference right is explicitly denied in the access control information (step S404).
  • the index update unit 106 updates the information obtained in steps S403 and S404 (user, group ID and document referenceable / non-referenceable ACL information) to the update target index (latest index) (step S405).
  • the ACL information is stored by the ACE method shown in FIG.
  • the index update unit 106 updates the transposed index of the document with respect to the update target index (latest index) (step S406).
  • the latest index is basically the update target index.
  • the old segmented index may be updated.
  • a mechanism for checking whether the cache information is the latest is required.
  • the ACL index is a data structure that obtains a document list that can be referred to or cannot be referred to at high speed using a user or group ID as a key.
  • a user or group ID is used as an index word key in an inverted index.
  • the update speed of the ACL index is based on transposition index holding ACL information by the ACE method.
  • the search speed depends on the ACL cache.
  • the ACL check process is concealed by the ACL cache to achieve high speed.
  • the ACL cache update frequency is also reduced due to the partitioned index structure.
  • a search result based on the ACL at the past time point is obtained.
  • the search based on the past ACL it may be necessary to perform an information search traced back to the past based on the current access right.
  • the user's access authority may change, and it may be difficult to see the document that previously held the access authority.
  • the past index may be updated.
  • an operation based on a policy such that a document that is visible at the past time is set as a search target is performed. Cannot be realized.
  • an update flag for the document may be prepared, and the latest ACL or the state of the document may be checked using the update flag and reflected in the search result. This makes it possible to perform a search based on the current access right in the time travel search with the ACL function. With respect to the search result hit in the time travel search, the presence of an updated newer file can be displayed at higher speed.
  • An information processing system includes a storage unit that stores a correspondence between an aggregate of searchers and an access right of search target information; Based on the correspondence between the searcher and the searcher aggregate including the searcher, With reference to the access right of the searched information related to the searcher aggregate corresponding to the searcher, the access right of the searched information related to the searcher is derived, Of the information searched in response to the search request from the searcher, there is provided means for using the information permitted to be referred to by the searcher as a search result.
  • the information processing system includes means for analyzing information from information storage means for storing searched information, creating a search index and storing it in the storage unit, and using the searcher as a user.
  • the access control information storing means for managing the aggregate as a group and storing the access control information is associated with the search index and associates the searched information with the access authority of the group for at least the group to which the user belongs Means for creating a control entry and storing the control entry in a storage unit;
  • ACL cache creation means for creating access control cache data for associating a user with the access authority of the searched information from the access control entry, and registering it in the cache;
  • the search index is searched in response to a search request from a user, and when access control cache data corresponding to the user and the search index is registered in the cache, based on the access control cache data of the cache, Search processing means for obtaining a search result of information permitted to be referred to the user among the searched information; Is provided.
  • the search processing means associates the user with a document access authority from the access control entry.
  • Access control cache data is created, and the access control cache data is registered in the cache.
  • a search result is obtained for documents that are permitted to be referenced by the user.
  • the access control entry stores a document ID in association with a group ID for each of a reference non-permission (DENY) field and a reference permission (ALLOW) field.
  • the search processing means includes a document list searched according to the search condition included in the search request in the reference non-permission (DENY) column of the access control entry.
  • a document list that is not included and is included in the referenceable (ALLOW) column is used as a search result.
  • the search processing means associates a document list not included in the reference disallowed (DENY) column of the access control entry and not included in the referable (ALLOW) column with the user in the cache. And register.
  • search index a plurality of partitioned indexes are provided in the storage unit, and the search processing unit is configured to respond from a plurality of partitioned indexes based on the conditions specified in the search request.
  • a section index to be selected is selected, and a search is performed using the selected section index.
  • the index update unit updates a search index and an access control entry of a predetermined partition index among the plurality of partition indexes.
  • the division index is divided in time series.
  • the information processing system of the embodiment includes an authentication unit that authenticates when a user logs in, acquires authority information, and supplies the information to a search processing unit and an ACL cache creation unit.
  • the information processing system of the embodiment includes search condition input means for inputting time or opportunity information, which is a search base point, as a search condition.
  • the information processing system of the embodiment holds the result of deriving the access right of the searched information regarding the searcher in the cache.
  • the information processing system derives the access right of the searched information related to the searcher at the time of a search request from the searcher or when the searcher logs in.
  • the information processing method stores the correspondence between the searcher's aggregate and the access authority of the searched information in the storage unit, Based on the correspondence between the searcher and the searcher aggregate including the searcher, With reference to the access right of the searched information related to the searcher aggregate corresponding to the searcher, the access right of the searched information related to the searcher is derived, Of the information searched in response to the search request from the searcher, information permitted to be referred to by the searcher is set as a search result.
  • the information processing method analyzes information from the information storage unit that stores the search target information, creates a search index, and stores the search index in the storage unit.
  • the searcher is a user, the searcher aggregate is managed as a group, From the access control information storage means for storing the access control information, an access control entry that associates the searched information and the access authority of the group with respect to at least the group to which the user belongs is created in the storage unit in association with the search index.
  • access control cache data that associates the access authority of the user and the searched information, register it in the cache.
  • the search index is searched in response to a search request from a user, and when access control cache data corresponding to the user and the search index is registered in the cache, based on the access control cache data of the cache, Of the searched information, information that is permitted to be referred to the user is used as a search result.
  • the access control entry stores an information ID in association with the group ID for each of the reference non-permission (DENY) field and the reference permission (ALLOW) field
  • the search processing unit includes the information list searched according to the search condition included in the search request in the reference non-permission (DENY) column of the access control entry.
  • An information list that is not included and is included in the referenceable (ALLOW) column is used as a search result.
  • an information list that is not included in the reference disapproval (DENY) column of the access control entry and that is not included in the referable (ALLOW) column is stored in the cache. Register in association with the user.
  • the storage unit includes a plurality of partitioned indexes as the search index, Based on the conditions specified in the search request, a corresponding segment index is selected from a plurality of segment indexes, and a search is performed using the selected segment index.
  • the search index and the access control entry of a predetermined partition index among the plurality of partition indexes are updated.
  • the division index is divided in time series.
  • the user authenticates at the time of login, acquires the authority information, and supplies it to the search processing means and the ACL cache creation means.
  • time or opportunity information that is a base point of the search is input as a search condition.
  • the access authority for the searched information related to the searcher is derived at the time of a search request from the searcher or when the searcher logs in.
  • the computer program provides a computer that can refer to a storage unit that stores a correspondence between a collection of searchers and access rights of searched information. Based on the correspondence between the searcher and the searcher aggregate including the searcher, With reference to the access right of the searched information related to the searcher aggregate corresponding to the searcher, the access right of the searched information related to the searcher is derived, A program for executing a process of using, as a search result, information permitted to be referred to by the searcher among information searched for the search request from the searcher.
  • the computer program of the embodiment analyzes the information from the information storage means for storing the searched information, creates a search index, and stores it in the storage unit;
  • the searcher is a user, the searcher aggregate is managed as a group, and from the access control information storage means for storing the access control information, the searched information and the group to which the user belongs at least in association with the search index
  • An index update process including: creating an access control entry in association with the access authority of the group and storing it in the storage unit;
  • ACL cache creation processing for creating access control cache data for associating a user with the access authority of information to be searched from the access control entry, and registering it in the cache;
  • the search index is searched in response to a search request from a user, and when access control cache data corresponding to the user and the search index is registered in the cache, based on the access control cache data of the cache, Among the searched information, a search process in which a search result is information permitted to be referred to the user; Including a program for causing
  • the search processing may be performed when the access control cache data corresponding to the user and the index to be searched is not registered in the cache, from the access control entry to the user Create access control cache data that correlates the access authority of the information to be searched, register the access control cache data in the cache, and, based on the created access control cache data, for the user among the searched information
  • the information for which reference is permitted is taken as the search result.
  • the access control entry stores an information ID in association with a group ID for each of a reference non-permission (DENY) field and a reference permission (ALLOW) field,
  • the search process is not included in the reference non-permission (DENY) column of the access control entry for the information list searched according to the search condition included in the search request.
  • an information list included in the referable column (ALLOW) is used as a search result.
  • the search process includes an information list that is not included in the reference non-permission (DENY) column of the access control entry and that is not included in the reference permission (ALLOW) column. Register in the cache in association with the user.
  • the storage unit includes a partitioned index divided into a plurality of as the search index, The search process selects a corresponding segment index from a plurality of segment indexes based on the conditions specified in the search request, and performs a search using the selected segment index.
  • the index update processing updates a search index and an access control entry of a predetermined partition index among a plurality of partition indexes.
  • the division index is divided in time series.
  • the user performs authentication at the time of login, acquires authority information, and causes the computer to execute an authentication process to be supplied to the search process and the ACL cache creation process.
  • the computer is caused to execute search condition input processing for inputting time or trigger information, which is a search base point, as a search condition.
  • the computer is caused to execute a process of holding the result of deriving the access right of the searched information regarding the searcher in the cache.
  • the access authority deriving process for the searched information regarding the searcher is performed when a search request is issued from the searcher or when the searcher logs in.
  • Patent Documents 1 and 2 and Non-Patent Document 1 are incorporated herein by reference.
  • the embodiments and examples can be changed and adjusted based on the basic technical concept.
  • Various combinations and selections of various disclosed elements are possible within the scope of the claims of the present invention. That is, the present invention of course includes various variations and modifications that could be made by those skilled in the art according to the entire disclosure including the claims and the technical idea.
  • ACL cache (ACL Cache list) 118 ACL cache creation means

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

 本発明は、アクセスコントロール情報の更新処理と、アクセス権限を加味した検索性能をバランスさせることを目的とする。情報を記憶するドキュメントレポジトリ102から該情報を解析して検索用インデックスを作成し時系列区分インデックス格納部100に記憶し、ACL情報を記憶するACLレポジトリ104から検索用インデックスに対応させて少なくともユーザが属するグループについて被検索情報と前記グループのアクセス権限とを関連付けたACE(アクセスコントロールエントリ)を作成するインデックス更新手段106と、ACEから、ユーザと被検索情報のアクセス権限とを対応付けるACLキャッシュデータを作成しACLキャッシュ116に登録するACLキャッシュ作成手段118と、ユーザからの検索要求に応じて検索用インデクッスを検索し、ユーザと検索用インデクッスに対応するACLキャッシュデータがACLキャッシュ116に登録されている場合、ACLキャッシュの情報に基づき、前記検索された情報のうち前記ユーザに対して参照が許可された情報を検索結果とする検索処理手段110を備えている。

Description

情報処理システムと方法並びにプログラム
[関連出願の記載]
 本発明は、日本国特許出願:特願2008-292582号(2008年11月14日出願)の優先権主張に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
 本発明は情報処理システムと方法並びにプログラムに関し、特に、情報検索に用いて好適なシステムと方法並びにプログラムに関する。
 ESP(Enterprise Search Platform;インターネットや企業内の情報処理システムの情報を横断的に検索するもので、「企業内統合検索基盤」とも呼ばれる)等の企業向け検索エンジンにおいて、ユーザのアクセス権限を考慮した検索を行うことは、セキュリティ確保の点からも必要である。ファイル(文書)やフォルダ(ディレクトリ)に対するアクセス権限の制御は、ACL(Access Control List:アクセス制御リスト)を用いて行われる。
 ACL検索に求められる機能としては、ユーザがアクセス権限を保有している文書だけを、検索結果として提示する。ACL検索について以下に説明する。
 文書に設定されたアクセス権限を加味して検索を行うものとして、例えば特許文献1において、インデックス記憶手段は、ファイル情報取得手段によって取得された情報と、権限情報取得手段(ファイルに対してアクセス可能なユーザを示す権限情報を取得する)によって取得された情報を関連付けてインデックスとして記憶し、検索条件式生成手段は、ユーザ特定手段によって特定されたユーザ情報と、キーワードから検索条件式を生成し、検索手段は、検索条件式に対応するインデックスをインデックス記憶手段から検索する情報処理装置が開示されている。
 図1は、ACL権限情報を検索サーバ側で予め保持する構成を説明するための図であり、上記特許文献1に開示された構成に対応する。また非特許文献1にも同様の構成が開示されている。なお、図1、図2は、本発明者達が発明の背景を説明するために新たに作図したものである。
 検索サーバ1は、ACL情報を記憶するレポジトリ3から、文書のACL情報(_acl)5を取得してデータベース等に予め記憶保持しておき、検索条件に対応するインデックス4をACL情報(_acl)5と照合して(例えばAND演算)、アクセス権限がある文書を検索結果として検索要求元のユーザに出力する。なお、認証サーバ2(ADS(アクティブディレクトリサービス)、Windows(登録商標)Server等を対象とする)は、ユーザがログイン時に入力したパスワードを照合する等してユーザが登録されているか否か等をチェックする。
 図2は、検索サーバ1が、検索結果の出力時にアクセス権限の有無を確認するものである。検索要求に対して検索結果文書を出力するにあたり、ACLチェッカ6は、レポジトリ3に蓄積されている当該文書のアクセス権を確認し、アクセス権限のある文書を選択して検索結果リストに出力する。この手法によれば、常に最新のACLを反映した検索結果が得られる。また、図1のように、ACL情報を検索サーバ1に保持することは必要とされない。
特開2001-344245号公報 国際公開第2008/044542号パンフレット(WO 2008/044542 A1) Christopher D. Manning, Prabhakar Raghavan and Hinrich Schutze, Introduction to Information Retrieval, Cambridge University Press. 2008.<URL>http://www-csli.stanford.edu/~hinrich/Information-Retrieval-book.html
 以下に本発明による分析を与える。
 図1の手法は、ACL情報を検索サーバ側に記憶保持しているため、検索性能には優れるが、以下の課題がある。
 すなわち、検索サーバに記憶保持されているACL情報は最新とは限らない。このため、現時点ではアクセス権限が付与されない文書が、検索結果として出力される可能性がある。図1の検索サーバ1においては、ACL情報5(_acl)として、例えば図3に示すように、ユーザと文書(ドキュメント)間を1対1にマッピングしたビット情報としてインデックス化する(非特許文献1参照)。文書の参照(read)が不可の場合、0、それ以外の場合、1の値をとるビット情報であるACLインデックス(リスト)を保持する。しかしながら、このように、ユーザと文書間を1対1にマッピングした情報としてインデックス化すると、ACLインデックス(_acl)の更新処理の演算量が増大し、更新コストが増大する。例えば新たにユーザを1つ追加する場合、新規ユーザに対応して1レコード分(文書毎に該文書のアクセス権限(参照可/不可)を示すビットストリング)が追加される。その際、検索対象となる全文書のACL情報が取得される。また、文書を変更した場合、該文書のアクセス権限が制御される各ユーザに対応する1列分を全て変更する。データ構造によっては全レコードの修正が必要とされる。
 一方、図2の手法には、以下の課題がある。
 検索結果の出力にあたり、出力個数分の文書のACLチェックのオーバヘッドを要し、検索性能が劣化する。また、検索結果数(文書数)を正確に表示するには、検索結果の文書の全てについてACLチェックを行うことから、検索性能の劣化が著しい。すなわち、検索要求の入力から検索結果数の出力までの応答時間が著しく遅くなる。ACLチェックに時間を要し応答が遅れるからといって、検索結果数を全く表示しないのは、ユーザに対して不親切となる場合もある。一方、ACLチェック前の検索結果数を表示するのは、セキュリティ上問題となる。このため、検索結果数の出力の前のACLチェックは必須となる。このように、図2の手法は、ACLの更新コストが低いが、検索コストが高い。
 そこで、一般的に、図1、図2の手法の一方あるいは両方を組み合わせて、検索システムを実現することになるが、企業あるいは公官庁等では、文書に対するアクセス権は変化する(例えば人事異動などによって、部門や権限が変わっていく)。アクセス権限の変化により、以前は見る権利を持っていても、今は見る権利を保持していない、という事態が生じる場合がある。
 タイムトラベル検索(本願出願人の登録商標、特許文献2等参照)では、過去の情報空間に基づいた検索が実現されているが、ACL検索やアクセス権限の変更等についての対策はなされていない。
 本願発明者達は、タイムトラベル検索等に適用可能とされる、ACL検索をあらたに発明したので以下に説明する。
 本発明は、アクセスコントロール情報の更新処理と、アクセス権限を加味した検索性能をバランスさせる、情報処理装置、方法、プログラムを提供することを、その目的としている。
 本願で開示される発明は、上記課題を解決するため概略以下のように構成される。
 本発明の1つの側面(アスペクト)によれば、検索者の集合体と被検索情報とのアクセス権限との対応を記憶する記憶部と、検索者と、前記検索者が含まれる検索者集合体との対応関係に基づき、前記検索者に対応する前記検索者集合体に関する被検索情報のアクセス権限を参照して、前記検索者に関する被検索情報のアクセス権限を導出し、前記検索者からの検索要求に対して検索された情報のうち、前記検索者による参照が許可された情報を検索結果とする手段を備えた情報処理システムが提供される。
 本発明においては、前記被検索情報を記憶する情報格納手段から情報を解析して検索用インデックスを作成し記憶部に記憶する手段を備え、前記検索者をユーザとし、検索者集合体をグループとして管理し、アクセスコントロール情報を記憶するアクセスコントロール情報格納手段から、前記検索用インデックスに対応させて、少なくともユーザが属するグループについて被検索情報と前記グループのアクセス権限とを関連付けたアクセスコントロールエントリを作成し記憶部に記憶する手段と、を備えたインデックス更新手段と、
 前記アクセスコントロールエントリから、ユーザと被検索情報のアクセス権限とを対応付けるアクセスコントロールキャッシュデータを作成し、キャッシュに登録するACLキャッシュ作成手段と、ユーザからの検索要求に応じて前記検索用インデックスを検索し、前記ユーザと前記検索用インデックスに対応するアクセスコントロールキャッシュデータが前記キャッシュに登録されている場合、前記キャッシュのアクセスコントロールキャッシュデータに基づき、前記検索された情報のうち、前記ユーザに対して参照が許可された情報を検索結果とする検索処理手段と、を備える。
 本発明によれば、検索者の集合体と被検索情報とのアクセス権限との対応を記憶部に記憶し、
 検索者と、前記検索者が含まれる検索者集合体との対応関係に基づき、
 前記検索者に対応する前記検索者集合体に関する被検索情報のアクセス権限を参照して、前記検索者に関する被検索情報のアクセス権限を導出し、
 前記検索者からの検索要求に対して検索された情報のうち、前記検索者による参照が許可された情報を検索結果とする、情報処理方法が提供される。
 本発明によれば、検索者の集合体と被検索情報とのアクセス権限との対応を記憶する記憶部を参照可能なコンピュータに、
 検索者と、前記検索者が含まれる検索者集合体との対応関係に基づき、
 前記検索者に対応する前記検索者集合体に関する被検索情報のアクセス権限を参照して、前記検索者に関する被検索情報のアクセス権限を導出し、
 前記検索者からの検索要求に対して検索された情報のうち、前記検索者による参照が許可された情報を検索結果とする処理を実行させるプログラムが提供される。
 本発明によれば、文書に対するアクセス権限を管理するための情報として、複数のユーザを含むグループ単位に、グループIDと文書IDとを関連付けた情報構造を含むアクセスコントロールエントリを記憶部に記憶保持し、
 ユーザの検索要求で検索された文書のアクセス権限の照合を、
 前記ユーザが属するグループ単位で行うか、又は、
 前記アクセスコントロールエントリの情報から導出された、ユーザIDと文書IDとの対応に基づき、ユーザ単位で行い、
 検索条件に適合した文書のうちユーザのアクセス権限に適った文書を抽出する、検索装置が提供される。
 本発明において、前記アクセスエントリが、少なくともグループIDに対して、前記アクセス権限として、参照が許可される文書IDと、参照が不許可の文書IDとの対応を含み、前記検索条件に適合した文書のうち、参照が許可され、且つ参照が不許可でない文書のリストを作成する。
 本発明において、前記ユーザIDと文書IDとの対応は、前記アクセスコントロールエントリの情報から事前に導出されているか、又は、ユーザの検索要求に応じて導出される。
 本発明において、前記ユーザIDと文書IDとの対応を、前記アクセスコントロールエントリの情報から導出し、前記ユーザIDを含むキーと、前記ユーザIDに参照可とする文書IDとの対応をキャッシュに格納する手段を備え、前記検索条件に適合した文書のうちユーザのアクセス権限に適った文書のリストを、前記キャッシュを参照して作成する構成としてもよい。
 本発明によれば、アクセスコントロール情報の更新処理と、アクセス権限を加味した検索性能をバランスさせることができる。
ACL検索の典型例1を説明する図である。 ACL検索の典型例2を説明する図である。 ACL検索の典型例1を説明する図である。 ACL検索におけるACEを説明する図である。 本発明の一実施例の構成を示す図である。 本発明の一実施例におけるACLキャッシュデータを説明する図である。 本発明の一実施例におけるACL情報の格納、マッチングを説明する図である。 本発明の一実施例におけるインデックス更新手段の構成を説明する図である。 本発明の一実施例における検索処理(ACLキャッシュ無し)を説明する流れ図である。 本発明の一実施例における検索処理(ACLキャッシュ有り)を説明する流れ図である。 本発明の一実施例におけるACLキャッシュ作成処理を説明する流れ図である。 本発明の一実施例におけるACLインデックス作成処理を説明する流れ図である。
 以下、本発明の実施の形態について説明する。検索サーバにおいて、図1に示した形態のACL情報を保持することは、高コストな処理である。実際のユーザ管理システムでは、一般に、複数のユーザを1つのグループにまとめグループ単位等でアクセスコントロールを行っている。
 本発明においては、ユーザ、グループ単位で文書毎の参照可/不可を管理するアクセス制御用のリストであるアクセスコントロールエントリ(ACE)を作成して、アクセス権限の照合(matching)演算を行う。グループ単位でのアクセス権限の制御により、ユーザと文書間のマッピングによるACLインデックスの更新処理のコスト、負担を下げる。
 図4(A)に示すように、検索サーバ1は、ACL情報(_acl)7として、図4(B)に示すようなアクセスコントロールエントリ(ACE)を保持する。ACEにおいて、参照不可(参照不許可)(DOMAIN.DENY)、参照可(参照許可)(DOMAIN.ALLOW)の欄(Field)毎に、ユーザID(ユーザのシステムID)、グループID(グループのシステムID)と文書ID(DocID)の対応を保持する。図4(B)に示す例では、ユーザ1(User1_sid)は、文書ID1、2、4に対してDENY(参照不可)、ユーザ2(User2_sid)は文書ID1、2、5、7に対してDENY、グループ1(Group1_sid)は文書ID2、3に対してDENY)、everyone(管理者以外)は文書ID1、2、3、4、5に対してDENY、ユーザ1(User1_sid)は文書ID7に対してALLOW、グループ1(Group1_sid)は文書ID6に対してALLOW、everyone(管理者以外)は文書ID8に対してALLOWとされる。ALLOWとされ、且つDENYでない文書リストが出力される。
 比較例として図2の手法によるACLチェックにおいては、ユーザ自身のユーザIDと、ユーザが所属するグループIDと、everyone用のユーザIDの全てにおいて探索処理を行わなければならならず(DENYとALLOWの2回分)、ディスクランダムリード回数が増加する。
 これに対して、本発明においては、ACLのインデックスの保持として、図4(B)に示すように、グループ単位での参照可、参照不可を制御可能とするアクセスコントロールエントリ(ACE)を用い、基本的に、ACLのインデックスの更新等をグループ単位で行う。例えばユーザを1つ追加する場合であっても、グループの追加変更等がなければ、レコードの追加は行われない(検索対象となる全文書のACL情報を取得する作業も不要)。この結果、ACLのインデックスの更新処理の高コスト(高負担)を解決し、処理の効率化を可能としている。なお、アクセスコントロールエントリ(ACE)には、グループ単位での参照可、参照不可を制御可能とするアクセスコントロール情報だけでなく、ユーザ単位での参照可、参照不可を確定するアクセスコントロール情報を設定してもよいことは勿論である。
 さらに、本発明においては、インデックス格納部に保持されるACL情報をACLキャッシュ(ACL Cache List)に保持することで、検索時間の短縮を図り、図2の手法において問題とされた、検索コストが高いという課題を解消している。
 本発明においては、参照可能な文書リストを高速に取得するためのインデックスを保持する差分インデックス(区分インデックス)に対応させてACLキャッシュを備えた構成としてもよい。過去の区分インデックスに対応するACL情報は、ACLキャッシュ(ACL Cache List)の情報を使い回すことができる。
 本発明においては、最新の検索についてだけ、検索要求時に、リアルタイムにACLインデックス(ACE)の作成、更新を行うようにしてもよい。
 本発明においては、検索用のインデックスを、例えば複数に区分した区分インデックス構造とし、区分インデックス構造に対応させて、ACLインデックスを保持することで、例えばタイムトラベル検索において、過去のACLを復元することができる。すなわち、過去のACLにしたがって、過去の区分インデックスをACL検索することができる。なお、本発明において、区分インデックス構造は、時系列に区分した区分インデックスに限定されるものでなく、任意の区分インデックスであってよい。
 図5は、本発明の第1の実施例の構成を示す図である。図5を参照すると、時系列区分インデックス格納部100と、ドキュメントレポジトリ(情報格納手段)102と、ACLレポジトリ(アクセスコントロール情報格納手段)104と、インデックス更新手段106と、検索条件入力手段108と、検索処理手段110と、検索結果出力手段112と、ユーザ認証手段114と、ACLキャッシュ(ACL Cache List)116と、ACLキャッシュ作成手段118と、を備えている。
 時系列区分インデックス格納部100は、過去の区分インデックスである区分インデックス10~14、最新のインデックス15を含む。区分インデックスは、図5の例では、5つの構成であるが、その数に制限はない。なお、区分インデックスとして、時系列に区分した例に即して説明するが、本発明において、区分インデックスは、時系列区分インデックスに制限されるものでないことは勿論である。
 各区分インデックス10~14は、検索インデックスと、ACLインデックス(ACE方式)を含む。ACLインデックスは、グループ単位での参照可能、参照不可を制御するアクセス制御用のリストであるACE(アクセスコントロールエントリ)方式にしたがって保持する。時系列区分インデックス格納部100は、ストレージなどの記憶装置よりなる。
 ドキュメントレポジトリ102は、検索システムにおいて検索対象となる文書が格納されている記憶装置およびシステムである。例えばファイルサーバなどからなる。
 ACLレポジトリ104は、ドキュメントレポジトリ102内に格納されている文書に対して、ユーザに提供するアクセス権などの管理を行っているソフトウェアである。例えばファイルサーバ上のソフトウェア(linux permission, windows(登録商標) OS)等からなる。
 インデックス更新手段106は、ドキュメントレポジトリ102のドキュメントの検索インデックスおよびACLレポジトリ104のACLのインデックスを登録、更新する。検索インデックスに関しては、ファイル解析、索引語抽出、転置インデックス化等により作成される。
 なお、インデックス更新手段106は、定期的に、あるいは、管理者の設定入力等により、区分インデックスの区分を更新する。例えば区分インデックス11を区分インデックス10、区分インデックス12を区分インデックス11、・・・と世代を1つ更新し、最新インデックス15を1世代前のインデックス14とし、新たに最新インデックスを空とする。区分インデックスの世代の更新に伴い、該区分インデックスに含まれるACE(ACLインデックス)も世代が更新される。
 検索条件入力手段108はユーザが検索条件を入力するインタフェースである。検索条件入力手段108は、検索するための検索キーワードや検索の基点となる情報(年月日等の時間情報)等の検索条件を指定し、検索処理手段110に対して受け渡す機能を果たす。検索の基点となる情報は、例えば年月日、あるいは、時、分等の時間情報のほか、時間に関連したイベント等の契機情報であってもよい。検索条件入力手段108の一例として、例えば、ユーザのWebブラウザ上から入力する検索キーワードの入力ボックス等を用いることができる。
 検索処理手段110は、キーワード検索を行う。単一の検索インデックスに対する検索方法は、情報検索における一般的な検索技術で行われる。
 検索処理手段110は、検索条件入力手段108から検索条件を入力し、当該検索条件に検索対象の時間条件が指定されている場合、指定時間以前に対応する区分インデックスの検索を行う。時間条件が指定されていない場合、最新のインデックスの検索を行う。図5では、矢印で示す区分インデックス10、11が検索対象とされる。検索処理手段110は、さらにACL検索機能を具備している。時系列区分インデックスに対して、ACLキャッシュ116のACL情報を参照して、ACL検索を行う。この処理は、後述される。
 検索結果出力手段112は、検索処理手段110で検索された検索結果を表示するインタフェースである。検索結果出力手段112は、検索処理手段110が行った検索処理の結果を受け取り、ユーザに検索結果として出力する機能を果たす。検索結果出力手段112の一例として、例えば、ユーザのWebブラウザ上に検索結果の一覧を出力するソフトウェアが用いられる。
 ユーザ認証手段114は、ユーザの認証を行うシステムである。ユーザログイン時のユーザ名、パスワード入力に対して登録済みのユーザ、パスワードであるかを照合する。ユーザ認証手段114は、ドキュメントレポジトリ102、ACLレポジトリ104のユーザ権限と連携する。例えばNIS(Network Information Server)サーバ、Windows(登録商標)ドメインコントローラ等で実現される。
 ACLキャッシュ作成手段118は、ACLキャッシュデータを作成する。
 ACLキャッシュ116は、メモリ上に保持される。ACLキャッシュは、区分されたインデックス毎に保持される。
 図6に、ACLキャッシュ116の格納データの一例を示す。検索キー(ユーザID+インデックスID)に対して、ビットマップ形式のレコード(READ可能フラグ)を備えている。「ユーザID+インデックスID」のユーザIDは、ログインしたユーザ(検索要求元)のID(識別情報)、インデックスID(index id)は、時系列区分インデックス格納部100の区分インデックスのIDに対応する。READ可能フラグは対応するビットの文書がREAD可能の場合には1、それ以外の場合には0の値をとる。READ可能フラグのレコードに関して、例えば“10101011・・”は右端のビットを文書1とすると、文書1、2、3、4、5、6、7、8・・・は、READ可、不可、可、不可、可、可・・・を表す。
 なお、頻繁に更新される最新インデックス15に関しては、キャッシュデータの作成・登録は行われない。
 ACLキャッシュ作成手段118は、ユーザのログイン時にACLキャッシュ116に書き込むデータを作成する。ACLキャッシュ作成手段118は、ACLキャッシュ116がキャッシュアウトされていたら、当該領域に、ACLキャッシュデータを作成する。検索サーバの利用可能メモリ量に応じて適切なキャッシュ制御(LRU(Least Recently Used:最近に使用されないデータをキャッシュアウト)等)を採ってよい。
 インデックス1つあたり1レコードにしなければならない、ということはない。分割しても良い。すなわち、図6のレコードを分割してもよい。
 本実施例において、インデックス更新手段106と、検索処理手段110と、検索条件入力手段108と、検索結果出力手段112、ACLキャッシュ作成手段118、ユーザ認証手段114は、コンピュータで動作するプログラム制御により、その機能、処理が実現される。
 区分インデックス10~14、最新インデックス15は、検索処理に用いるインデックスである。そのインデックスを何らかの契機により時系列に区分したものである。このうち、最新の更新分の区分インデックスを最新インデックスとする。
 インデックス更新手段106は、新規文書あるいは更新文書をインデックス化して、常に、最新インデックスへ登録する。またインデックス更新手段106は当該文書のACLインデックスの作成、更新をACE形式で行い、最新インデックス15に登録、更新する。
 区分インデックス10~14、最新インデックス15の保存する形式としては、通常のファイルの形式、データベース上のレコード等がある。最新インデックス15、区分インデックス10~14は、それぞれ異なる記憶装置に保存されてもよいし、同じ記憶装置に保存されてもよい。
 本実施例において、ACL情報のインデックスへの格納方式は、基本的に、図1の方式に従うが、ACE(Access Control Entry)情報を、ユーザID、グループIDを索引語として扱って、転置インデックスとして構築する。すなわち、ユーザIDとグループIDを文書IDと関係付ける。ACEは、区分インデックスと対応して時系列に区分されて記憶される。
 さらに、文書のアクセス権限として、DENYとALLOWを示す複数の転置インデックスを作成する。ACEにおいて、DENYフィールド(欄)に含まれず、ALLOWフィールドに含まれる文書がアクセス権のある文書である。
 検索処理手段110は、ACEのDENYフィールドで、{ユーザID(1)+グループID(ユーザが所属する数分)+Everyone(1)}の検索処理を行い、これらの検索処理のOR(論理和)を取って文書IDリストを作成する。
 ALLOWフィールドで、{ユーザID(1)+グループID(所属数)+Everyone(1)回}の検索処理を行い、論理和演算ORを取って文書IDリストを作成する。ALLOW欄に含まれる文書から、DENY欄に含まれる文書を差し引いた文書がアクセス権のある文書である。
 上記検索処理は時間が掛かるため、本実施例では、ユーザIDと文書IDリストのキャッシュを備え、ユーザのログイン時や一回目の検索時等に、ACLキャッシュ作成手段118(図5)はACLキャッシュデータを作成する。
 図7を参照してACLキャッシュ作成手段118におけるACLキャッシュの作成を説明する。ここで、グループ1は、ユーザA、ユーザB、ユーザCを含み、グループ2は、ユーザAとユーザDを含むものとする。インデックス化対象の文書として文書1、2(Doc1、Doc2)があるものとする。
 文書1(Doc1)のACE(アクセスコントロールエントリ)21より、ユーザA、B、グループ2では参照不可、グループ1、everyoneは参照可能である。文書2(Doc2)のACE22より、文書2はeveryoneで参照不可、グループ1、2では参照可能である。
 ACLキャッシュ作成手段118は、文書1、2のACE21、22をインデックス化してDENY欄(フィールド)、ALLOW欄ごとに、ユーザ、グループと文書IDとの対応であるインデックスファイル23(図4(B)のACE方式に対応する)を作成する。
 ACLキャッシュ作成手段118は、つづいて、インデックスファイル23から、ユーザのsid(システムID)をサーチし、文書と、各ユーザとの間の参照可(Y)、不可(N)のACLキャッシュデータ24を生成する。例えばユーザAのACLキャッシュデータを得るには、ACLキャッシュ作成手段118は、インデックスファイル23のDENY欄から、ユーザA、グループ1、2、everyone_idのDENYリストを作成する。またACLキャッシュ作成手段118は、インデックスファイル23のALLOW欄から、ユーザA、グループ1、2、everyone_idのALLOWリストを作成する。
 文書がALLOWリストになければ、文書はユーザAによる参照(READ)が否定され、ALLOWリストにあり、且つ、DENYリストになければ、ユーザAによる参照(READ)は許可される。ユーザB、C、Dについても同様にしてACLキャッシュデータが導出され、ACLキャッシュ116に格納される。なお、ACLキャッシュ116に一旦格納された後、キャッシュアウトされたACLキャッシュデータ(ビットマップ形式のアクセスコントロール情報)は、ディスク等のストレージに格納するようにしてもよい。この場合、次回の検索時あるいはログイン時等、必要とされるとき、新たにACEからACLキャッシュデータ作成することをせず、ストレージから読み出してACLキャッシュ116に格納するようにしてもよい。
 図8は、図5のインデックス更新手段106の構成を示す図である。図8を参照して、インデックス更新手段106について説明する。インデックス更新手段106は、ドキュメント解析手段106-1、ACE変換手段106-2、インデックス更新手段106-3を備えている。
 ドキュメント解析手段106-1は、ドキュメントレポジトリ102の文書(ドキュメント)のフォーマット変換、索引語抽出、転置インデックス化等を行う。
 ACE変換手段106-2は、ACLレポジトリ104のACL情報をACE形式に変換する。すなわち、文書(ドキュメント)が、グループおよびユーザに対して、アクセス可能か不可能かの情報を抽出する。例えば、Linuxのアクセス権限機構であるpermissionから、ACEに変換する。
 インデックス更新手段106-3は、検索インデックス、ACL情報(ACE)を更新する。インデックス更新手段106は、最新登録分のインデックスを、前の世代のインデックスに対する差分として格納する。インデックス更新手段106は、本実施例において、基準となる過去の1つの区分インデックスに対して、以降の区分インデックスは、差分情報のみが蓄積されることになる。従って、高速な記憶装置に格納することができる。また、インデックスの追加更新処理等を高速に行うことができる。
 次に、本実施例における検索処理手順を説明する。
 図9は、本実施例において、ACLキャッシュを用いない場合の検索処理を説明する流れ図である。図9及び図5を参照して、本実施例の検索処理(ACLキャッシュ無し)の手順を説明する。
 ユーザがログイン時、ユーザ認証手段114は、ログイン認証を行い、権限情報(ユーザIDとユーザが属するグループID)を取得する(ステップS101)。
 ユーザが検索条件入力手段108から検索条件を入力する(ステップS102)。検索条件には、検索キーワードと、区分インデックスの時間範囲を特定するための時間指定情報(オプション)が入力される。
 検索処理手段110は、検索条件(キーワード、時間)にしたがって検索インデックス(区分インデックス)を検索し、検索条件に適合した文書リストを生成する(ステップS103)。
 検索処理手段110は、権限情報の全てのID(ユーザIDとグループID)とeveryoneIDによってACEを検索し、検索結果のOR(論理和)をとることで、参照可文書リスト(ALLOWリスト)を取得する(ステップS104)。
 検索処理手段110は、権限情報の全てのID(ユーザIDとグループID)とeveryoneIDによってACEを検索し、検索結果のORをとることで、参照不許可文書リスト(DENYリスト)を取得する(ステップS105)。
 検索処理手段110は、ステップS103で作成された文書リストとステップS104で作成された参照可文書リスト(ALLOWリスト)の双方に含まれ、且つ、ステップS104で作成された参照不許可文書リスト(DENYリスト)に含まれない文書リストを検索結果として、作成する(ステップS106)。
 検索インデックスが複数の区分インデックスに区分されており、検索範囲が複数の区分インデックスにまたがる場合、検索処理手段110は、複数の区分インデックスについて、ステップS103~S106の処理を繰り返す(ステップS107)。なお、時間指定情報が指定されない場合、検索処理手段110は、最新インデックス15のみを検索対象とする。
 ステップS107で得られた複数の検索結果の文書リストから最終検索結果のリストを作成する(ステップS108)。
 検索結果出力手段112は検索結果を出力する(ステップS109)。
 ユーザがログアウトしない場合(ステップS110のNO分岐)、ステップS102からの処理が行われ、ログアウトした場合(ステップS110のYES分岐)、終了する。
 図10は、本実施例において、ACLキャッシュを備えた場合の検索処理を説明する流れ図である。図10及び図5を参照して、本実施例の検索処理(ACLキャッシュ有り)の手順を説明する。
 ユーザがログイン時、ユーザ認証手段114は、ログイン認証を行い、権限情報(ユーザIDとユーザが属するグループID)を取得する(ステップS101)。
 ACLキャッシュ作成手段118がACLキャッシュ116を作成する(ステップS111)。なお、ステップS111は、サブルーチンとして呼び出される(処理の詳細は後述する)。
 ユーザが検索条件入力手段108から検索条件を入力する(ステップS102)。
 検索処理手段110は、検索条件(キーワード、時間)にしたがって検索インデックス(区分インデックス)を検索し、検索条件に適合した文書リストを生成する(ステップS103)。
 検索処理手段110は、ACLキャッシュに検索対象インデックスのユーザIDの正当なキャッシュデータが存在するかチェックする(ステップS112)。
 キャッシュデータが存在する場合、ACLキャッシュデータを用いて、ログインしているユーザIDの参照可能文書リストを取得する(ステップS113)。
 検索処理手段110は、ステップS103で作成された文書リストとステップS113で作成された参照可文書リストの双方に含まれる文書リストを検索結果として作成する(ステップS114)。
 一方、キャッシュデータが存在しない場合、ステップS104で参照可文書リストを作成し、ステップS105で参照不許可文書リストを作成し、ステップS106で、ステップS104の文書リストと参照可文書リストに含まれ、且つ、ステップS105の参照不許可文書リストに含まれない文書リストの作成処理を行う。ステップS104、S105、S106は、図9のステップS104、S105、S106と同一である。
 ステップS106につづいて、ステップS104の参照可文書リストに含まれ、ステップS105の参照不許可文書リストに含まれない文書リストをACLキャッシュデータとして、ACLキャッシュ116に登録する(ステップS115)。
 検索インデックスが複数の区分インデックスに区分されている場合、検索処理手段110は、複数の区分インデックスについてステップS103~S115の処理を繰り返す(ステップS107)。
 ステップS107で得られた複数の検索結果の文書リストから最終検索結果のリストを作成する(ステップS108)。
 検索結果出力手段112は検索結果を出力する(ステップS109)。
 ユーザがログアウトしない場合(ステップS110のNO分岐)、ステップS102からの処理が行われ、ログアウトした場合(ステップS110のYES分岐)、終了する。
 図11は、図10のACLキャッシュ作成処理(ステップS111)の手順を説明する流れ図である。図11及び図5を参照して、ACLキャッシュ作成処理の手順を説明する。
 ACLキャッシュ作成手段118は、ACLキャッシュ116に登録するキャッシュデータ(ACLキャッシュデータ)を作成する検索インデックスを1つ選択する(ステップS201)。
 ACLキャッシュ作成手段118は、選択した検索インデックスに対応する、該当ユーザのACLキャッシュデータがあるか否かチェックする(ステップS202)。
 ACLキャッシュデータがない場合(ステップS202のNO)、ACLキャッシュ作成手段118は、ユーザ認証手段114で取得された権限情報(ユーザIDとユーザが属するグループのID)の全てのIDとeveryone用IDで検索インデックスを検索し、参照可文書を取得し、OR演算して参照可文書リストを作成する(ステップS203)。
 ACLキャッシュ作成手段118は、権限情報(ユーザIDとユーザが属するグループのID)全てのIDとeveryone用IDで検索インデックスを検索し、参照不許可(DENY)の文書を取得し、OR演算して参照不許可文書リストを作成する(ステップS204)。
 ACLキャッシュ作成手段118は、ステップS203の文書リストに含まれ、ステップS204の文書リストに含まれない文書リストをACLキャッシュに登録する文書リストとして生成する(ステップS205)。
 ACLキャッシュ作成手段118は、ステップS205で生成した文書リストをACLキャッシュ116に登録する(ステップS206)。
 最新インデックスを除く、全ての過去の区分インデックスに対してACLキャッシュデータ生成処理を行ったか否かをチェックし(ステップS207)、全ての過去の区分インデックスに対してACLキャッシュデータ生成処理を行っていない場合、ステップS201からの処理を実行する。なお、ステップS203~S206は、並列に実行するようにしてもよい。
 図12は、本実施例において、インデックス更新手段106におけるACLインデックス(ACE方式)の作成を説明する流れ図である。
 インデックス更新手段106は、ドキュメントレポジトリ102から、検索インデックスに登録する文書を取得する(ステップS401)。
 インデックス更新手段106は、ACLレポジトリ104から、文書に対するアクセスコントロール情報を取得する(ステップS402)。
 インデックス更新手段106は、アクセスコントロール情報内に明示的に参照権が与えられているユーザやグループのIDを取得する(ステップS403)。
 インデックス更新手段106は、アクセスコントロール情報内に明示的に参照権が否定されているユーザやグループのIDを取得する(ステップS404)。
 インデックス更新手段106は、ステップS403、S404で得た情報(ユーザ、グループIDと文書の参照可、参照不可のACL情報)を、更新対象のインデックス(最新インデックス)に対して更新する(ステップS405)。ACL情報は、図4(B)のACE方式で記憶される。
 インデックス更新手段106は、更新対象のインデックス(最新インデックス)に対して文書の転置インデックスを更新する(ステップS406)。
 本実施例では、基本的に最新インデックスを更新対象インデックスとする。しかしながら、古い区分インデックスを更新対象としてもよい。この場合、ACLキャッシュの利用、作成にあたり、そのキャッシュ情報が最新かどうかを確認する機構が必要となる。ACLインデックスは、ユーザやグループIDをキーとして、参照あるいは参照不可のドキュメントリストを高速に取得するデータ構造である。実装例として、ユーザやグループIDを転置インデックスにおける索引語のキーとして利用する。
 本実施例の作用効果を以下に説明する。
 ACLインデックスの更新速度と、検索速度のバランスを取ったACL検索システムの構築が可能である。ACLインデックスの更新速度は、ACE方式によるACL情報を保持し、転置インデックス化による。検索速度は、ACLキャッシュの保持による。
 また、過去のACEの状態を保持しているため、それを利用した検索も可能(従来のタイムトラベル検索)である。最新のACEの状態だけを持つ場合には、過去のアクセス権を考慮した検索ができない。
 過去の転置インデックスに、高負荷な更新を掛けないで済む。過去のACEインデックスの更新は行われない。
 ACLチェック処理をACLキャッシュにより隠蔽し、高速化を実現する。
 区分インデックス構造により、ACLキャッシュ更新頻度も減らしている。
 本実施例によれば、過去に遡った情報検索を行った際に、過去の時点のACLに基づいた検索結果が得られる。また、上記したような、過去のACLに基づく検索だけではなく、現在のアクセス権に基づいて過去に遡った情報検索を行う必要が生じる場合もある。例えばユーザのアクセス権限が変わって、以前はアクセス権を保持していた文書が現在見えては困る事態も起り得る。ACLインデックスに関しては、過去のインデックスを更新するようにしても良いが、このように過去のインデックスを更新してしまうと、過去の時点では見えている文書を検索対象にする、といったポリシーによる動作が実現できない。このため、文書に対する更新フラグを用意し、更新フラグを用いて、最新のACLや文書の状態をチェックして検索結果に反映するようにしてもよい。このようにすることで、ACL機能付きのタイムトラベル検索において、現在のアクセス権に基づいた検索を行うことができる。タイムトラベル検索においてヒットした検索結果に対して、更新された、より新しいファイルの存在を、より高速に表示することができる。
 本発明の実施例を以下にまとめる。
[1]:実施例の情報処理システムは、検索者の集合体と被検索情報とのアクセス権限との対応を記憶する記憶部と、
 検索者と、前記検索者が含まれる検索者集合体との対応関係に基づき、
 前記検索者に対応する前記検索者集合体に関する被検索情報のアクセス権限を参照して、前記検索者に関する被検索情報のアクセス権限を導出し、
 前記検索者からの検索要求に対して検索された情報のうち、前記検索者による参照が許可された情報を検索結果とする手段を備える。
[2]:実施例の情報処理システムは、被検索情報を記憶する情報格納手段から情報を解析して検索用インデックスを作成し記憶部に記憶する手段と、前記検索者をユーザとし、検索者集合体をグループとして管理し、アクセスコントロール情報を記憶するアクセスコントロール情報格納手段から、前記検索用インデックスに対応させて、少なくともユーザが属するグループについて被検索情報と前記グループのアクセス権限とを関連付けたアクセスコントロールエントリを作成し記憶部に記憶する手段と、を備えたインデックス更新手段と、
 前記アクセスコントロールエントリから、ユーザと被検索情報のアクセス権限とを対応付けるアクセスコントロールキャッシュデータを作成し、キャッシュに登録するACLキャッシュ作成手段と、
 ユーザからの検索要求に応じて前記検索用インデックスを検索し、前記ユーザと前記検索用インデックスに対応するアクセスコントロールキャッシュデータが前記キャッシュに登録されている場合、前記キャッシュのアクセスコントロールキャッシュデータに基づき、前記検索された情報のうち、前記ユーザに対して参照が許可された情報を検索結果とする検索処理手段と、
 を備える。
[3]:前記検索処理手段は、前記ユーザと前記検索対象のインデックスに対応するアクセスコントロールキャッシュデータが前記キャッシュに登録されていない場合、前記アクセスコントロールエントリから、ユーザと文書のアクセス権限とを対応付けるアクセスコントロールキャッシュデータを作成し、前記アクセスコントロールキャッシュデータを前記キャッシュに登録するとともに、前記アクセスコントロールキャッシュデータに基づき、検索された文書のうち、前記ユーザに対して参照が許可された文書を検索結果とする。
[4]:前記アクセスコントロールエントリは、参照不許可(DENY)欄と参照可(ALLOW)欄の各々について、グループIDに関連付けて、文書IDを記憶し、
 前記キャッシュのアクセスコントロールキャッシュデータを用いない場合、前記検索処理手段は、検索要求に含まれる検索条件に従って検索された文書リストに対して、前記アクセスコントロールエントリの前記参照不許可(DENY)欄に含まれず、且つ、前記参照可(ALLOW)欄に含まれる文書リストを、検索結果とする。
[5]:前記検索処理手段は、前記アクセスコントロールエントリの前記参照不許可(DENY)欄に含まれず、且つ、前記参照可(ALLOW)欄に含まれない文書リストを前記キャッシュに前記ユーザと関連付けて登録する。
[6]:前記検索用インデックスとして、複数に区分された区分インデックスを前記記憶部に備え、前記検索処理手段は、前記検索要求で指定された条件に基づき、複数の区分インデックスの中から、対応する区分インデックスを選択し、前記選択した区分インデックスを用いて検索を行う。
[7]:前記インデックス更新手段は、複数の区分インデックスのうち、所定の区分インデックスの検索用インデックス及びアクセスコントロールエントリを更新する。
[8]:実施例の情報処理システムにおいて、前記区分インデックスが時系列に区分されている。
[9]:実施例の情報処理システムにおいて、ユーザがログイン時に認証を行い、権限情報を取得し、検索処理手段、ACLキャッシュ作成手段に供給する認証手段を備える。
[10]:実施例の情報処理システムは、検索条件として、検索の基点となる、時間又は契機情報を入力する検索条件入力手段を備える。
[11]:実施例の情報処理システムは、前記検索者に関する被検索情報のアクセス権限を導出した結果を、キャッシュに保持する。
[12]:実施例の情報処理システムは、前記検索者に関する被検索情報のアクセス権限の導出を、前記検索者からの検索要求時、又は、前記検索者のログイン時に行う。
[13]:実施例の情報処理方法は、検索者の集合体と被検索情報とのアクセス権限との対応を記憶部に記憶し、情報検索にあたり、
 検索者と、前記検索者が含まれる検索者集合体との対応関係に基づき、
 前記検索者に対応する前記検索者集合体に関する被検索情報のアクセス権限を参照して、前記検索者に関する被検索情報のアクセス権限を導出し、
 前記検索者からの検索要求に対して検索された情報のうち、前記検索者による参照が許可された情報を検索結果とする。
[14]:実施例の情報処理方法は、前記被検索情報を記憶する情報格納手段から情報を解析して検索用インデックスを作成して記憶部に記憶し、
 前記検索者をユーザとし、検索者集合体をグループとして管理し、
 アクセスコントロール情報を記憶するアクセスコントロール情報格納手段から、前記検索用インデックスに対応させて、少なくともユーザが属するグループについて被検索情報と前記グループのアクセス権限とを関連付けたアクセスコントロールエントリを作成し記憶部に記憶し、
 前記アクセスコントロールエントリから、ユーザと被検索情報のアクセス権限とを対応付けるアクセスコントロールキャッシュデータを作成し、キャッシュに登録し、
 ユーザからの検索要求に応じて前記検索用インデックスを検索し、前記ユーザと前記検索用インデックスに対応するアクセスコントロールキャッシュデータが前記キャッシュに登録されている場合、前記キャッシュのアクセスコントロールキャッシュデータに基づき、前記検索された情報のうち、前記ユーザに対して参照が許可された情報を検索結果とする。
[15]:実施例の情報処理方法においては、前記ユーザと前記検索対象のインデックスに対応するアクセスコントロールキャッシュデータが前記キャッシュに登録されていない場合、前記アクセスコントロールエントリから、ユーザと被検索情報のアクセス権限とを対応付けるアクセスコントロールキャッシュデータを作成し、前記アクセスコントロールキャッシュデータを前記キャッシュに登録するとともに、作成した前記アクセスコントロールキャッシュデータに基づき、検索された情報のうち前記ユーザに対して参照が許可された情報を検索結果とする。
[16]:実施例の情報処理方法においては、前記アクセスコントロールエントリは、参照不許可(DENY)欄と参照可(ALLOW)欄の各々について、グループIDに関連付けて情報IDを記憶し、
 前記キャッシュのアクセスコントロールキャッシュデータを用いない場合、前記検索処理手段は、検索要求に含まれる検索条件に従って検索された情報リストに対して、前記アクセスコントロールエントリの前記参照不許可(DENY)欄に含まれず、且つ、前記参照可(ALLOW)欄に含まれる情報リストを、検索結果とする。
[17]:実施例の情報処理方法においては、前記アクセスコントロールエントリの前記参照不許可(DENY)欄に含まれず、且つ、前記参照可(ALLOW)欄に含まれない情報リストを前記キャッシュに前記ユーザと関連付けて登録する。
[18]:実施例の情報処理方法においては、前記検索用インデックスとして前記記憶部に、複数に区分された区分インデックスを備え、
 前記検索要求で指定された条件に基づき、複数の区分インデックスの中から、対応する区分インデックスを選択し、前記選択した区分インデックスを用いて検索を行う。
[19]:実施例の情報処理方法においては、複数の区分インデックスのうち、所定の区分インデックスの検索用インデックス及びアクセスコントロールエントリを更新する。
[20]:実施例の情報処理方法においては、前記区分インデックスが時系列に区分されている。
[21]:実施例の情報処理方法においては、ユーザがログイン時に認証を行い、権限情報を取得し、前記検索処理手段、前記ACLキャッシュ作成手段に供給する。
[22]:実施例の情報処理方法においては、検索条件として、検索の基点となる、時間又は契機情報を入力する。
[23]:実施例の情報処理方法においては、前記検索者に関する被検索情報のアクセス権限を導出した結果を、キャッシュに保持する。
[24]:実施例の情報処理方法においては、前記検索者に関する被検索情報のアクセス権限の導出を、前記検索者からの検索要求時、又は、前記検索者のログイン時に行う。
[25]:実施例のコンピュータ・プログラムは、検索者の集合体と被検索情報とのアクセス権限との対応を記憶する記憶部を参照可能なコンピュータに、
 検索者と、前記検索者が含まれる検索者集合体との対応関係に基づき、
 前記検索者に対応する前記検索者集合体に関する被検索情報のアクセス権限を参照して、前記検索者に関する被検索情報のアクセス権限を導出し、
 前記検索者からの検索要求に対して検索された情報のうち、前記検索者による参照が許可された情報を検索結果とする処理を実行させるプログラムを含む。
[26]:実施例のコンピュータ・プログラムは、前記被検索情報を記憶する情報格納手段から情報を解析して検索用インデックスを作成し記憶部に記憶する処理と、
 前記検索者をユーザとし、検索者集合体をグループとして管理し、アクセスコントロール情報を記憶するアクセスコントロール情報格納手段から、前記検索用インデックスに対応させて、少なくともユーザが属するグループについて被検索情報と前記グループのアクセス権限とを関連付けたアクセスコントロールエントリを作成し記憶部に記憶する処理と、を含むインデックス更新処理と、
 前記アクセスコントロールエントリから、ユーザと被検索情報のアクセス権限とを対応付けるアクセスコントロールキャッシュデータを作成し、キャッシュに登録するACLキャッシュ作成処理と、
 ユーザからの検索要求に応じて前記検索用インデックスを検索し、前記ユーザと前記検索用インデックスに対応するアクセスコントロールキャッシュデータが前記キャッシュに登録されている場合、前記キャッシュのアクセスコントロールキャッシュデータに基づき、前記検索された情報のうち、前記ユーザに対して参照が許可された情報を検索結果とする検索処理と、
 を前記コンピュータに実行させるプログラムを含む。
[27]:実施例のコンピュータ・プログラムにおいて、前記検索処理は、前記ユーザと前記検索対象のインデックスに対応するアクセスコントロールキャッシュデータが前記キャッシュに登録されていない場合、前記アクセスコントロールエントリから、ユーザと被検索情報のアクセス権限とを対応付けるアクセスコントロールキャッシュデータを作成し、前記アクセスコントロールキャッシュデータを前記キャッシュに登録するとともに、作成した前記アクセスコントロールキャッシュデータに基づき、検索された情報のうち前記ユーザに対して参照が許可された情報を検索結果とする。
[28]:実施例のコンピュータ・プログラムにおいて、前記アクセスコントロールエントリは、参照不許可(DENY)欄と参照可(ALLOW)欄の各々について、グループIDに関連付けて情報IDを記憶し、
 前記キャッシュのアクセスコントロールキャッシュデータを用いない場合、前記検索処理は、検索要求に含まれる検索条件に従って検索された情報リストに対して、前記アクセスコントロールエントリの前記参照不許可(DENY)欄に含まれず、且つ、前記参照可(ALLOW)欄に含まれる情報リストを、検索結果とする。
[29]:実施例のコンピュータ・プログラムにおいて、前記検索処理は、前記アクセスコントロールエントリの前記参照不許可(DENY)欄に含まれず、且つ、前記参照可(ALLOW)欄に含まれない情報リストを前記キャッシュに前記ユーザと関連付けて登録する。
[30]:実施例のコンピュータ・プログラムにおいて、前記検索用インデックスとして複数に区分された区分インデックスを前記記憶部に備え、
 前記検索処理は、前記検索要求で指定された条件に基づき、複数の区分インデックスの中から、対応する区分インデックスを選択し、前記選択した区分インデックスを用いて検索を行う。
[31]:実施例のコンピュータ・プログラムにおいて、前記インデックス更新処理は、複数の区分インデックスのうち、所定の区分インデックスの検索用インデックス及びアクセスコントロールエントリを更新する。
[32]:実施例のコンピュータ・プログラムにおいて、前記区分インデックスが時系列に区分されている。
[33]:実施例のコンピュータ・プログラムにおいて、ユーザがログイン時に認証を行い、権限情報を取得し、前記検索処理、前記ACLキャッシュ作成処理に供給する認証処理を前記コンピュータに実行させる。
[34]:実施例のコンピュータ・プログラムにおいて、検索条件として、検索の基点となる、時間又は契機情報を入力する検索条件入力処理を前記コンピュータに実行させる。
[35]:実施例のコンピュータ・プログラムにおいて、前記検索者に関する被検索情報のアクセス権限を導出した結果を、キャッシュに保持する処理を前記コンピュータに実行させる。
[36]:実施例のコンピュータ・プログラムにおいて、前記検索者に関する被検索情報のアクセス権限の導出処理を、前記検索者からの検索要求時、又は、前記検索者のログイン時に行う。
 なお、上記の特許文献1、2、非特許文献1の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素の多様な組み合わせないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
 1 検索サーバ
 2 認証サーバ
 3 レポジトリ
 4 インデックス
 5 ACL情報(_acl)
 6 ACLチェッカ
 7 ACL情報(ACE方式)
 10~14 区分インデックス
 15 最新インデックス
 21、22 ACE
 23 インデックス
 24 ACLキャッシュデータ
 100 時系列区分インデックス格納部
 102 ドキュメントレポジトリ
 104 ACLレポジトリ
 106 インデックス更新手段
 106-1 ドキュメント解析手段
 106-2 ACE変換手段
 106-3 インデックス更新手段
 108 検索条件入力手段
 110 検索処理手段
 112 検索結果出力手段
 114 ユーザ認証手段
 116 ACLキャッシュ(ACL Cache list)
 118 ACLキャッシュ作成手段

Claims (40)

  1.  検索者の集合体と被検索情報とのアクセス権限との対応を記憶する記憶部と、
     検索者と、前記検索者が含まれる検索者集合体との対応関係に基づき、
     前記検索者に対応する前記検索者集合体に関する被検索情報のアクセス権限を参照して、前記検索者に関する被検索情報のアクセス権限を導出し、
     前記検索者からの検索要求に対して検索された情報のうち、前記検索者による参照が許可された情報を検索結果とする手段を備えたことを特徴とする情報処理システム。
  2.  前記被検索情報を記憶する情報格納手段から情報を解析して検索用インデックスを作成し記憶部に記憶する手段を備え、
     前記検索者をユーザとし、検索者集合体をグループとして管理し、
     アクセスコントロール情報を記憶するアクセスコントロール情報格納手段から、前記検索用インデックスに対応させて、少なくともユーザが属するグループについて被検索情報と前記グループのアクセス権限とを関連付けたアクセスコントロールエントリを作成し記憶部に記憶する手段を備えたインデックス更新手段と、
     前記アクセスコントロールエントリから、ユーザと被検索情報のアクセス権限とを対応付けるアクセスコントロールキャッシュデータを作成し、キャッシュに登録するACLキャッシュ作成手段と、
     ユーザからの検索要求に応じて前記検索用インデックスを検索し、前記ユーザと前記検索用インデックスに対応するアクセスコントロールキャッシュデータが前記キャッシュに登録されている場合、前記キャッシュのアクセスコントロールキャッシュデータに基づき、前記検索された情報のうち、前記ユーザに対して参照が許可された情報を検索結果とする検索処理手段と、
     を備えたことを特徴とする請求項1に記載の情報処理システム。
  3.  前記検索処理手段は、前記ユーザと前記検索対象のインデックスに対応するアクセスコントロールキャッシュデータが前記キャッシュに登録されていない場合、前記アクセスコントロールエントリから、ユーザと被検索情報のアクセス権限とを対応付けるアクセスコントロールキャッシュデータを作成し、前記アクセスコントロールキャッシュデータを前記キャッシュに登録するとともに、作成した前記アクセスコントロールキャッシュデータに基づき、検索された情報のうち前記ユーザに対して参照が許可された情報を検索結果とする、ことを特徴とする請求項2に記載の情報処理システム。
  4.  前記アクセスコントロールエントリは、参照不可(DENY)欄と参照可(ALLOW)欄の各々について、グループIDに関連付けて情報IDを記憶し、
     前記キャッシュのアクセスコントロールキャッシュデータを用いない場合、前記検索処理手段は、検索要求に含まれる検索条件に従って検索された情報リストに対して、前記アクセスコントロールエントリの前記参照不可(DENY)欄に含まれず、且つ、前記参照可(ALLOW)欄に含まれる情報リストを、検索結果とする、ことを特徴とする請求項2又は3に記載の情報処理システム。
  5.  前記検索処理手段は、前記アクセスコントロールエントリの前記参照不可(DENY)欄に含まれず、且つ、前記参照可(ALLOW)欄に含まれない情報リストを前記キャッシュに前記ユーザと関連付けて登録する、ことを特徴とする請求項4に記載の情報処理システム。
  6.  前記検索用インデックスとして複数に区分された区分インデックスを前記記憶部に備え、
     前記検索処理手段は、前記検索要求で指定された条件に基づき、複数の区分インデックスの中から、対応する区分インデックスを選択し、前記選択した区分インデックスを用いて検索を行う、ことを特徴とする請求項2乃至5のいずれか1項に記載の情報処理システム。
  7.  前記インデックス更新手段は、複数の区分インデックスのうち、所定の区分インデックスの検索用インデックス及びアクセスコントロールエントリを更新する、ことを特徴とする請求項6に記載の情報処理システム。
  8.  前記区分インデックスが時系列に区分されている、ことを特徴とする請求項6又は7に記載の情報処理システム。
  9.  ユーザがログイン時に認証を行い、権限情報を取得し、前記検索処理手段、前記ACLキャッシュ作成手段に供給する認証手段を備えた、ことを特徴とする請求項2乃至7のいずれか1項に記載の情報処理システム。
  10.  検索条件として、検索の基点となる、時間又は契機情報を入力する検索条件入力手段を備えた、ことを特徴とする請求項2乃至9のいずれか1項に記載の情報処理システム。
  11.  前記検索者に関する被検索情報のアクセス権限を導出した結果を、キャッシュに保持する、ことを特徴とする請求項1に記載の情報処理システム。
  12.  前記検索者に関する被検索情報のアクセス権限の導出を、前記検索者からの検索要求時、又は、前記検索者のログイン時に行う、ことを特徴とする請求項11に記載の情報処理システム。
  13.  検索者の集合体と被検索情報とのアクセス権限との対応を記憶部に記憶し、
     検索者と、前記検索者が含まれる検索者集合体との対応関係に基づき、
     前記検索者に対応する前記検索者集合体に関する被検索情報のアクセス権限を参照して、前記検索者に関する被検索情報のアクセス権限を導出し、
     前記検索者からの検索要求に対して検索された情報のうち、前記検索者による参照が許可された情報を検索結果とする、
     ことを特徴とする情報処理方法。
  14.  前記被検索情報を記憶する情報格納手段から情報を解析して検索用インデックスを作成して記憶部に記憶し、
     前記検索者をユーザとし、検索者集合体をグループとして管理し、
     アクセスコントロール情報を記憶するアクセスコントロール情報格納手段から、前記検索用インデックスに対応させて、少なくともユーザが属するグループについて被検索情報と前記グループのアクセス権限とを関連付けたアクセスコントロールエントリを作成し記憶部に記憶し、
     前記アクセスコントロールエントリから、ユーザと被検索情報のアクセス権限とを対応付けるアクセスコントロールキャッシュデータを作成し、キャッシュに登録し、
     ユーザからの検索要求に応じて前記検索用インデックスを検索し、前記ユーザと前記検索用インデックスに対応するアクセスコントロールキャッシュデータが前記キャッシュに登録されている場合、前記キャッシュのアクセスコントロールキャッシュデータに基づき、前記検索された情報のうち、前記ユーザに対して参照が許可された情報を検索結果とする、ことを特徴とする請求項13に記載の情報処理方法。
  15.  前記ユーザと前記検索対象のインデックスに対応するアクセスコントロールキャッシュデータが前記キャッシュに登録されていない場合、前記アクセスコントロールエントリから、ユーザと被検索情報のアクセス権限とを対応付けるアクセスコントロールキャッシュデータを作成し、前記アクセスコントロールキャッシュデータを前記キャッシュに登録するとともに、作成した前記アクセスコントロールキャッシュデータに基づき、検索された情報のうち前記ユーザに対して参照が許可された情報を検索結果とする、ことを特徴とする請求項14に記載の情報処理方法。
  16.  前記アクセスコントロールエントリは、参照不可(DENY)欄と参照可(ALLOW)欄の各々について、グループIDに関連付けて情報IDを記憶し、
     前記キャッシュのアクセスコントロールキャッシュデータを用いない場合、前記検索処理手段は、検索要求に含まれる検索条件に従って検索された情報リストに対して、前記アクセスコントロールエントリの前記参照不可(DENY)欄に含まれず、且つ、前記参照可(ALLOW)欄に含まれる情報リストを、検索結果とする、ことを特徴とする請求項13又は14に記載の情報処理方法。
  17.  前記アクセスコントロールエントリの前記参照不可(DENY)欄に含まれず、且つ、前記参照可(ALLOW)欄に含まれない情報リストを前記キャッシュに前記ユーザと関連付けて登録する、ことを特徴とする請求項16に記載の情報処理方法。
  18.  前記検索用インデックスとして前記記憶部に、複数に区分された区分インデックスを備え、
     前記検索要求で指定された条件に基づき、複数の区分インデックスの中から、対応する区分インデックスを選択し、前記選択した区分インデックスを用いて検索を行う、ことを特徴とする請求項14乃至17のいずれか1項に記載の情報処理方法。
  19.  複数の区分インデックスのうち、所定の区分インデックスの検索用インデックス及びアクセスコントロールエントリを更新する、ことを特徴とする請求項18に記載の情報処理方法。
  20.  前記区分インデックスが時系列に区分されている、ことを特徴とする請求項18又は19に記載の情報処理方法。
  21.  ユーザがログイン時に認証を行い、権限情報を取得し、前記検索処理手段、前記ACLキャッシュ作成手段に供給する、ことを特徴とする請求項14乃至19のいずれか1項に記載の情報処理方法。
  22.  検索条件として、検索の基点となる、時間又は契機情報を入力する、ことを特徴とする請求項14乃至21のいずれか1項に記載の情報処理方法。
  23.  前記検索者に関する被検索情報のアクセス権限を導出した結果を、キャッシュに保持する、ことを特徴とする請求項13に記載の情報処理方法。
  24.  前記検索者に関する被検索情報のアクセス権限の導出を、前記検索者からの検索要求時、又は、前記検索者のログイン時に行う、ことを特徴とする請求項23に記載の情報処理方法。
  25.  検索者の集合体と被検索情報とのアクセス権限との対応を記憶する記憶部を参照可能なコンピュータに、
     検索者と、前記検索者が含まれる検索者集合体との対応関係に基づき、
     前記検索者に対応する前記検索者集合体に関する被検索情報のアクセス権限を参照して、前記検索者に関する被検索情報のアクセス権限を導出し、
     前記検索者からの検索要求に対して検索された情報のうち、前記検索者による参照が許可された情報を検索結果とする処理を実行させるプログラム。
  26.  前記被検索情報を記憶する情報格納手段から情報を解析して検索用インデックスを作成し記憶部に記憶する処理と、
     前記検索者をユーザとし、検索者集合体をグループとして管理し、アクセスコントロール情報を記憶するアクセスコントロール情報格納手段から、前記検索用インデックスに対応させて、少なくともユーザが属するグループについて被検索情報と前記グループのアクセス権限とを関連付けたアクセスコントロールエントリを作成し記憶部に記憶する処理と、を含むインデックス更新処理と、
     前記アクセスコントロールエントリから、ユーザと被検索情報のアクセス権限とを対応付けるアクセスコントロールキャッシュデータを作成し、キャッシュに登録するACLキャッシュ作成処理と、
     ユーザからの検索要求に応じて前記検索用インデックスを検索し、前記ユーザと前記検索用インデックスに対応するアクセスコントロールキャッシュデータが前記キャッシュに登録されている場合、前記キャッシュのアクセスコントロールキャッシュデータに基づき、前記検索された情報のうち、前記ユーザに対して参照が許可された情報を検索結果とする検索処理と、
     を前記コンピュータに実行させる請求項25に記載のプログラム。
  27.  前記検索処理は、前記ユーザと前記検索対象のインデックスに対応するアクセスコントロールキャッシュデータが前記キャッシュに登録されていない場合、前記アクセスコントロールエントリから、ユーザと被検索情報のアクセス権限とを対応付けるアクセスコントロールキャッシュデータを作成し、前記アクセスコントロールキャッシュデータを前記キャッシュに登録するとともに、作成した前記アクセスコントロールキャッシュデータに基づき、検索された情報のうち前記ユーザに対して参照が許可された情報を検索結果とする、請求項26に記載のプログラム。
  28.  前記アクセスコントロールエントリは、参照不可(DENY)欄と参照可(ALLOW)欄の各々について、グループIDに関連付けて情報IDを記憶し、
     前記キャッシュのアクセスコントロールキャッシュデータを用いない場合、前記検索処理は、検索要求に含まれる検索条件に従って検索された情報リストに対して、前記アクセスコントロールエントリの前記参照不可(DENY)欄に含まれず、且つ、前記参照可(ALLOW)欄に含まれる情報リストを、検索結果とする、請求項26又は27に記載のプログラム。
  29.  前記検索処理は、前記アクセスコントロールエントリの前記参照不可(DENY)欄に含まれず、且つ、前記参照可(ALLOW)欄に含まれない情報リストを前記キャッシュに前記ユーザと関連付けて登録する、請求項28に記載のプログラム。
  30.  前記検索用インデックスとして複数に区分された区分インデックスを前記記憶部に備え、
     前記検索処理は、前記検索要求で指定された条件に基づき、複数の区分インデックスの中から、対応する区分インデックスを選択し、前記選択した区分インデックスを用いて検索を行う、請求項26乃至29のいずれか1項に記載のプログラム。
  31.  前記インデックス更新処理は、複数の区分インデックスのうち、所定の区分インデックスの検索用インデックス及びアクセスコントロールエントリを更新する、請求項30に記載のプログラム。
  32.  前記区分インデックスが時系列に区分されている、請求項31に記載のプログラム。
  33.  ユーザがログイン時に認証を行い、権限情報を取得し、前記検索処理、前記ACLキャッシュ作成処理に供給する認証処理を、前記コンピュータに実行させる請求項26乃至32のいずれか1項に記載のプログラム。
  34.  検索条件として、検索の基点となる、時間又は契機情報を入力する検索条件入力処理を、前記コンピュータに実行させる請求項26乃至32のいずれか1項に記載のプログラム。
  35.  前記検索者に関する被検索情報のアクセス権限を導出した結果を、キャッシュに保持する処理を、前記コンピュータに実行させる請求項25に記載のプログラム。
  36.  前記検索者に関する被検索情報のアクセス権限の導出処理を、前記検索者からの検索要求時、又は、前記検索者のログイン時に行う、請求項35に記載のプログラム。
  37.  文書に対するアクセス権限を管理するための情報として、複数のユーザを含むグループ単位に、グループIDと文書IDとを関連付けた情報構造を含むアクセスコントロールエントリを記憶部に記憶保持し、
     ユーザの検索要求で検索された文書のアクセス権限の照合を、
     前記ユーザが属するグループ単位で行うか、又は、
     前記アクセスコントロールエントリの情報から導出された、ユーザIDと文書IDとの対応に基づき、ユーザ単位で行い、
     検索条件に適合した文書のうちユーザのアクセス権限に適った文書を抽出する、検索装置。
  38.  前記アクセスコントロールエントリが、少なくともグループIDに対して、前記アクセス権限として、参照が許可される文書IDと、参照が不許可の文書IDとの対応を含み、
     前記検索条件に適合した文書のうち、参照が許可され、且つ参照が不許可でない文書のリストを作成する、請求項37記載の検索装置。
  39.  前記ユーザIDと文書IDとの対応は、前記アクセスコントロールエントリの情報から事前に導出されているか、又は、ユーザの検索要求に応じて導出される、請求項37記載の検索装置。
  40.  前記ユーザIDと文書IDとの対応を、前記アクセスコントロールエントリの情報から導出し、前記ユーザIDを含むキーと、前記ユーザIDに参照可とする文書IDとの対応をキャッシュに格納する手段を備え、
     前記検索条件に適合した文書のうちユーザのアクセス権限に適った文書のリストを、前記キャッシュを参照して作成する、請求項39記載の検索装置。
PCT/JP2009/069313 2008-11-14 2009-11-13 情報処理システムと方法並びにプログラム WO2010055901A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US13/128,738 US9002811B2 (en) 2008-11-14 2009-11-13 System, method and program for information processing
JP2010537811A JP5549596B2 (ja) 2008-11-14 2009-11-13 情報処理システムと方法並びにプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2008-292582 2008-11-14
JP2008292582 2008-11-14

Publications (1)

Publication Number Publication Date
WO2010055901A1 true WO2010055901A1 (ja) 2010-05-20

Family

ID=42170031

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2009/069313 WO2010055901A1 (ja) 2008-11-14 2009-11-13 情報処理システムと方法並びにプログラム

Country Status (3)

Country Link
US (1) US9002811B2 (ja)
JP (1) JP5549596B2 (ja)
WO (1) WO2010055901A1 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012089039A (ja) * 2010-10-22 2012-05-10 Nec Corp 管理装置、格納形式の決定方法、及びプログラム
JP2013025389A (ja) * 2011-07-15 2013-02-04 Ricoh Co Ltd インデックス管理プログラ及び検索システム
WO2013022319A2 (ko) * 2011-08-10 2013-02-14 엘지전자 주식회사 서버의 명령에 대한 권한 인증 방법, 권한 인증 요청 방법 및 그를 위한 장치
JP2013114331A (ja) * 2011-11-25 2013-06-10 Ricoh Co Ltd インデックス管理プログラム、インデックス管理装置及び検索システム
CN103597474A (zh) * 2011-03-11 2014-02-19 谷歌公司 对列入访问控制表的文档进行的高效索引和搜索
CN107466403A (zh) * 2015-05-28 2017-12-12 谷歌公司 对于数据资源的访问控制
CN110191135A (zh) * 2019-06-11 2019-08-30 杭州迪普信息技术有限公司 Acl配置方法、装置、电子设备

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011123598A (ja) * 2009-12-09 2011-06-23 Canon Inc 原稿判別装置、原稿判別方法及びプログラム
US9767268B2 (en) * 2011-04-20 2017-09-19 International Business Machines Corporation Optimizing a compiled access control table in a content management system
US9955348B2 (en) 2012-09-12 2018-04-24 Lg Electronics Inc. Method and device for requesting for specific right acquisition on specific resource in wireless communication system
US9069817B2 (en) * 2012-11-28 2015-06-30 International Business Machines Corporation Database row access control
US9141723B2 (en) * 2013-03-14 2015-09-22 Facebook, Inc. Caching sliding window data
US9934538B2 (en) * 2014-09-24 2018-04-03 Deere & Company Recalling crop-specific performance targets for controlling a mobile machine
CN107515879B (zh) * 2016-06-16 2021-03-19 伊姆西Ip控股有限责任公司 用于文档检索的方法和电子设备
JP6926749B2 (ja) 2017-07-12 2021-08-25 富士フイルムビジネスイノベーション株式会社 文書管理装置、文書管理システム及びプログラム
JP7009802B2 (ja) 2017-07-12 2022-01-26 富士フイルムビジネスイノベーション株式会社 文書管理装置、文書管理システム及びプログラム
US11086943B2 (en) * 2017-07-17 2021-08-10 Ebay Inc. Bucket based distributed search system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008044542A1 (fr) * 2006-10-06 2008-04-17 Nec Corporation Système et procédé de recherche d'informations et programme

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5440730A (en) * 1990-08-09 1995-08-08 Bell Communications Research, Inc. Time index access structure for temporal databases having concurrent multiple versions
US5347653A (en) * 1991-06-28 1994-09-13 Digital Equipment Corporation System for reconstructing prior versions of indexes using records indicating changes between successive versions of the indexes
US5915112A (en) * 1996-01-02 1999-06-22 International Business Machines Corporation Remote procedure interface with support for multiple versions
US6061678A (en) * 1997-10-31 2000-05-09 Oracle Corporation Approach for managing access to large objects in database systems using large object indexes
US6985948B2 (en) * 2000-03-29 2006-01-10 Fujitsu Limited User's right information and keywords input based search query generating means method and apparatus for searching a file
JP2001344245A (ja) 2000-03-29 2001-12-14 Fujitsu Ltd 情報処理装置
JP4186456B2 (ja) * 2001-11-28 2008-11-26 沖電気工業株式会社 分散ファイル共有システムおよびその制御方法
US7305629B2 (en) * 2002-09-26 2007-12-04 International Business Machines Corporation Consolidation of computer documentation
KR100553273B1 (ko) * 2003-11-14 2006-02-22 주식회사 넷츠 엑스트라넷 액세스제어 장치 및 방법
US7490079B2 (en) * 2005-04-14 2009-02-10 Microsoft Corporation Client side indexing of offline address book files
US8417693B2 (en) * 2005-07-14 2013-04-09 International Business Machines Corporation Enforcing native access control to indexed documents
US20070027732A1 (en) * 2005-07-28 2007-02-01 Accu-Spatial, Llc Context-sensitive, location-dependent information delivery at a construction site
JP2007199950A (ja) 2006-01-25 2007-08-09 Nec Corp 情報管理システム、情報管理方法及び情報管理用プログラム
JP4838610B2 (ja) * 2006-03-24 2011-12-14 キヤノン株式会社 文書管理装置、文書管理方法、プログラム
JP2008243089A (ja) * 2007-03-28 2008-10-09 Fujitsu Ltd アクセス権制御プログラム及びアクセス管理装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008044542A1 (fr) * 2006-10-06 2008-04-17 Nec Corporation Système et procédé de recherche d'informations et programme

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"Realcom, REALCOM Quarterly VISION - Enterprise 2.0 wa Honmonoka?", WEB2.0 TONO HONSHITSUTEKI CHIGAI TO ARATANA HOGA, 2007, Retrieved from the Internet <URL:http://www.realcom.co.jp/trend/vision/vol12/extender3.html> *
"Repository-Resource no Security", ORACLE XML DB KAIHATSUSHA GIDE, 25 December 2007 (2007-12-25), Retrieved from the Internet <URL:http://otndnld.oracle.co.jp/document/products/oracle10g/102/doc_cd/appdev.102/B19255-01/xdb21sec.htm> [retrieved on 20091127] *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012089039A (ja) * 2010-10-22 2012-05-10 Nec Corp 管理装置、格納形式の決定方法、及びプログラム
CN103597474A (zh) * 2011-03-11 2014-02-19 谷歌公司 对列入访问控制表的文档进行的高效索引和搜索
CN103597474B (zh) * 2011-03-11 2017-07-11 谷歌公司 用于管理文档的系统、设备和方法
JP2013025389A (ja) * 2011-07-15 2013-02-04 Ricoh Co Ltd インデックス管理プログラ及び検索システム
WO2013022319A3 (ko) * 2011-08-10 2013-04-04 엘지전자 주식회사 서버의 명령에 대한 권한 인증 방법, 권한 인증 요청 방법 및 그를 위한 장치
WO2013022319A2 (ko) * 2011-08-10 2013-02-14 엘지전자 주식회사 서버의 명령에 대한 권한 인증 방법, 권한 인증 요청 방법 및 그를 위한 장치
JP2013114331A (ja) * 2011-11-25 2013-06-10 Ricoh Co Ltd インデックス管理プログラム、インデックス管理装置及び検索システム
CN107466403A (zh) * 2015-05-28 2017-12-12 谷歌公司 对于数据资源的访问控制
JP2018513478A (ja) * 2015-05-28 2018-05-24 グーグル エルエルシー データ・リソースに対するアクセス制御
US10326768B2 (en) 2015-05-28 2019-06-18 Google Llc Access control for enterprise knowledge
US10798098B2 (en) 2015-05-28 2020-10-06 Google Llc Access control for enterprise knowledge
CN107466403B (zh) * 2015-05-28 2021-02-02 谷歌有限责任公司 对于数据资源的访问控制
CN110191135A (zh) * 2019-06-11 2019-08-30 杭州迪普信息技术有限公司 Acl配置方法、装置、电子设备

Also Published As

Publication number Publication date
JP5549596B2 (ja) 2014-07-16
JPWO2010055901A1 (ja) 2012-04-12
US20110218999A1 (en) 2011-09-08
US9002811B2 (en) 2015-04-07

Similar Documents

Publication Publication Date Title
JP5549596B2 (ja) 情報処理システムと方法並びにプログラム
US9965644B2 (en) Record level data security
JP5000457B2 (ja) ファイル共有システム及びファイル共有方法
US7519835B2 (en) Encrypted table indexes and searching encrypted tables
US20090063448A1 (en) Aggregated Search Results for Local and Remote Services
US20110282944A1 (en) Systems and methods for content sharing across enterprise social networks
US8799321B2 (en) License management apparatus, license management method, and computer readable medium
JP2005242586A (ja) 文書ビュー提供のためのプログラム、装置、システム及び方法
JP2016200938A (ja) 検索システム
US8079065B2 (en) Indexing encrypted files by impersonating users
JPWO2010041516A1 (ja) 情報処理装置、文書検索システム、文書検索方法およびプログラム
US20120290592A1 (en) Federated search apparatus, federated search system, and federated search method
JP7100563B2 (ja) 匿名化システムおよび匿名化方法
EP3699785A1 (en) Method for managing data of digital documents
JP5783414B2 (ja) 文書管理システムおよび文書管理方法
JP5783010B2 (ja) インデックス管理プログラム、インデックス管理装置及び検索システム
JP5017405B2 (ja) 規程管理装置及びプログラム
CN110998583A (zh) 识别和保护个人敏感文档
JP5197179B2 (ja) データ管理装置
JP2005196382A (ja) 情報管理システムによるデータ登録方法、データ参照方法、ならびに、情報管理システムにおけるマスタデータベースサーバ
EP3864558A1 (en) Method for managing data of digital documents
JP2012238195A (ja) 共有情報提供システム及び共有情報提供方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09826147

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2010537811

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 13128738

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09826147

Country of ref document: EP

Kind code of ref document: A1