JP2015153139A - Rule table generating apparatus, generating method, and generating program - Google Patents
Rule table generating apparatus, generating method, and generating program Download PDFInfo
- Publication number
 - JP2015153139A JP2015153139A JP2014026352A JP2014026352A JP2015153139A JP 2015153139 A JP2015153139 A JP 2015153139A JP 2014026352 A JP2014026352 A JP 2014026352A JP 2014026352 A JP2014026352 A JP 2014026352A JP 2015153139 A JP2015153139 A JP 2015153139A
 - Authority
 - JP
 - Japan
 - Prior art keywords
 - node
 - information
 - unit
 - adjacency matrix
 - access
 - Prior art date
 - Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
 - Granted
 
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
 
Abstract
       【課題】ルールテーブルを効率的に生成することができるルールテーブル生成装置、生成方法および生成プログラムを提供する。
【解決手段】本発明に係るルールテーブル生成装置は、ワークフローに基づき、業務プロセスの情報と、業務プロセスの各タスクにおいてアクセスするアクセス情報との入力を受け付ける入力部10と、業務プロセスの情報を隣接行列に変換する隣接行列生成部30と、隣接行列を束構造化して隣接行列テーブルを作成する隣接行列束構造化部20と、業務プロセスの情報に基づき、各タスクに対応する隣接行列テーブルの各ノードと、アクセス情報との対応関係に係る対応表を作成する対応表作成部40と、対応表を束構造化して対応表テーブルを生成する対応表束構造化部25と、隣接行列テーブルと対応表テーブルとに基づいて、各ノードのアクセス権を算出するルールテーブル生成部170とを備える。
【選択図】図2A rule table generation device, a generation method, and a generation program capable of efficiently generating a rule table are provided. 
 A rule table generation apparatus according to the present invention includes an input unit that receives input of business process information and access information accessed in each task of the business process, based on the workflow, and the business process information adjacent to each other. An adjacency matrix generating unit 30 for converting into a matrix; an adjacency matrix bundle structuring unit 20 for forming an adjacency matrix table by bundling an adjacency matrix; and each of adjacency matrix tables corresponding to each task based on business process information Correspondence table creation unit 40 that creates a correspondence table related to the correspondence relationship between nodes and access information, correspondence table bundle structuring unit 25 that creates a correspondence table by bundling the correspondence table, and correspondence to adjacent matrix table A rule table generation unit 170 that calculates the access right of each node based on the table. 
 [Selection] Figure 2
    
Description
本発明は、情報へのアクセス権を管理するルールテーブルを効率的に生成するルールテーブル生成装置、生成方法および生成プログラムに関する。 The present invention relates to a rule table generation device, a generation method, and a generation program for efficiently generating a rule table for managing access rights to information.
情報への不正アクセスを防止するためのアクセス制御技術は、情報漏洩や不正利用等を防止するために必要不可欠な技術である。従来、情報へのアクセス制御は、情報を参照する利用者あるいは利用者の役職等の権限に対してアクセス権を設定することで行われていた(非特許文献1参照)。利用者単位にアクセス権を設定する従来のアクセス制御技術を以下に説明する。 An access control technique for preventing unauthorized access to information is an indispensable technique for preventing information leakage and unauthorized use. Conventionally, access control to information has been performed by setting an access right for the authority of the user who refers to the information or the post of the user (see Non-Patent Document 1). A conventional access control technique for setting an access right for each user will be described below.
         
  図13は、利用者単位にアクセス権を設定する従来のアクセス制御装置の構成を示す図である。アクセス制御装置1000は、入力部1001と、出力部1002と、認証部1003と、業務処理部1004−1、1004−2・・・1004−Nと、アクセス権限チェック部1005と、情報検索部1006と、業務権限テーブルT1001と、アクセス権限テーブルT1002と、情報テーブルT1003からなる。
  FIG. 13 is a diagram showing a configuration of a conventional access control apparatus that sets an access right for each user. The 
         
  入力部1001は、外部からアクセス制御装置1000への入力を行う。出力部1002は、アクセス制御装置1000での処理結果などを、アクセス制御装置1000から外部に出力する。認証部1003は、利用者IDをもとに業務の実行権限を業務権限テーブルT1001にてチェックする。
  The 
         
  業務権限テーブルT1001は、利用者ID毎に、実施できる業務IDを対応付けるテーブルである。表1に業務権限テーブルT1001の一例を示す。
 
         
  業務処理部1004−1、1004−2・・・1004−N(以下、特に区別しない場合は、業務処理部1004と記載する)は、実行する業務毎に分かれており、入力部1001からの指示に従って業務を実行する。各業務処理部1004−1、1004−2・・・1004−Nは、情報種別コードが付与された情報を使用して業務を実行する。
  The business processing units 1004-1, 1004-2,... 1004-N (hereinafter referred to as 
         
  アクセス権限チェック部1005は、利用者IDをもとに検索する情報種別コードへのアクセス権を、アクセス権限テーブルT1002にてチェックする。
  The access 
         
  アクセス権限テーブルT1002は、利用者ID毎に、アクセスできる情報種別コードを対応付けるテーブルである。表2にアクセス権限テーブルT1002の一例を示す。
 
         
  情報検索部1006は、アクセス権の正当性が確認された後、情報テーブルT1003から情報を検索する。
  The 
         
  情報テーブルT1003は、個人を特定する個人コードと、情報の種類を表す情報種別コードと、情報実体からなる。表3に情報テーブルT1003の一例を示す。情報検索部1006は、個人コード、情報種別コードにて情報テーブルT1003を検索し、情報実体を取得する。
 
         
  図13を用いて従来のアクセス制御装置の処理手順を説明する。最初に、入力部1001にて、アクセス制御装置1000を利用する利用者の利用者ID、業務IDおよび個人コードを入力し、認証部1003に送る。認証部1003では、入力部1001で入力された利用者ID、業務IDを用いて業務権限テーブルT1001を検索し、一致するレコードがあれば、利用者IDと個人コードを該当する業務IDの業務処理部1004に送る。一致するレコードがなければ、エラー信号を出力部1002に送る。
  The processing procedure of the conventional access control apparatus will be described with reference to FIG. First, the 
         
  次に、該当する業務IDの業務処理部1004では、認証部1003から利用者ID、個人コードを受け取り、業務処理を実行する。業務処理において情報種別コードが付与された情報を使用する場合には、利用者ID、個人コード、情報種別コードをアクセス権限チェック部1005に送る。アクセス権限チェック部1005では、取得した利用者IDと情報種別コードにてアクセス権限テーブルT1002を検索する。一致するレコードがなければ、エラー信号を業務処理部1004に送る。一致するレコードがあれば、個人コードおよび情報種別コードを情報検索部1006に送る。
  Next, the 
         
  情報検索部1006では、個人コードおよび情報種別コードにて情報テーブルT1003を検索し、情報実体を取得し、業務処理部1004に送る。業務処理部1004では、アクセス権限チェック部1005からエラー信号が返ってきた場合にはエラー信号を出力部1002に送り、情報検索部1006から情報実体が得られた場合には、業務処理を継続する。業務処理が終了した場合には、処理結果を出力部1002に送る。最後に、出力部1002では、得られた業務処理結果を外部に出力する。
  The 
         
  上述した従来のアクセス制御装置では、業務権限テーブルT1001およびアクセス権限テーブルT1002に役職情報の項目を設け、入力部1001で役職情報を入力させ、認証部1003で役職情報を用いて実行する業務IDをチェックし、アクセス権限チェック部1005で役職情報を用いて情報種別コードをチェックすることで、役職によるアクセス権チェックが可能となっている。
  In the conventional access control apparatus described above, the job authority table T1001 and the access authority table T1002 are provided with title information items, the job title information is input by the 
          
従来のアクセス制御装置の場合、情報を参照する利用者あるいは利用者の役職等に対してアクセス権を設定していたため、アクセス権を有する利用者の意思に応じてアクセスが可能であった。このため、アクセス権を有する人が悪意を持つなどによる不正アクセスが可能であった。例えば公共分野では、申請業務において最初に利用者が情報を登録し、公共機関の職員が確認した後に処理が行われるが、従来のアクセス権の設定方法では、職員にアクセス権が設定されるため、申請業務以外の時にも利用者の情報にアクセスすることができてしまっていた。情報へのアクセスについては、事前に規則(条例、法令、等)により定められており、この規則通りにしか情報にアクセスできないようにする仕組みが要望されていた。 In the case of a conventional access control apparatus, access rights are set for the user who refers to the information or the post of the user, etc., so that access is possible according to the intention of the user having the access right. For this reason, unauthorized access is possible, for example, because a person with access rights has malicious intent. For example, in the public sector, the user first registers information in the application work, and processing is performed after confirmation by a public institution staff. However, in the conventional access right setting method, the access right is set for the staff. , I was able to access user information at times other than application work. Regarding access to information, rules (regulations, laws, etc.) have been established in advance, and there has been a demand for a mechanism that enables access to information only in accordance with these rules.
また、情報のアクセス権を規定するテーブルを、属人的な方法により設定する場合には、いくつかの問題が生じることとなるため、効率性が悪い。具体的には、かかるテーブルの設定が、手作業でアクセス権の定義を抽出して設定することにより行われている場合には、技術的な理解が必要となる上に、今日の巨大なシステム設計においては、業務に含まれるタスクの数が非常に多いため、テーブルの設定に要する作業は増大している。そのため、システム開発全体のコストのうち、テーブルの設定作業が占めるコストの割合も小さくない。また、かかるテーブル設定には、ヒューマンエラーによりバグが発生したりセキュリティホールが生じたりする等の不具合が起こるというリスクが存在する。 In addition, when the table that defines the access right of information is set by a personal method, several problems arise, resulting in poor efficiency. Specifically, if such a table is set by manually extracting and setting access right definitions, technical understanding is required, and today's huge system In design, since the number of tasks included in the work is very large, the work required for setting a table is increasing. For this reason, the ratio of the cost occupied by the table setting work out of the total system development cost is not small. In addition, such a table setting has a risk that a malfunction such as a bug or a security hole occurs due to a human error.
従って、かかる点に鑑みてなされた本発明の目的は、本来のアクセスすべき目的以外での情報へのアクセスを制限できるルールテーブルを効率的に生成することができるルールテーブル生成装置、生成方法および生成プログラムを提供することにある。 Accordingly, an object of the present invention made in view of such a point is to provide a rule table generation device, a generation method, and a generation method capable of efficiently generating a rule table capable of restricting access to information other than the purpose to be accessed. To provide a generation program.
上述した諸課題を解決すべく、本発明に係るルールテーブル生成装置は、ワークフローに基づき、業務プロセスの情報と、該業務プロセスの各タスクにおいてアクセスするアクセス情報との入力を受け付ける入力部と、前記業務プロセスの情報を隣接行列に変換する隣接行列生成部と、前記隣接行列を束構造化して隣接行列テーブルを作成する隣接行列束構造化部と、前記業務プロセスの情報に基づき、前記各タスクに対応する前記隣接行列テーブルの各ノードと、前記アクセス情報との対応関係に係る対応表を作成する対応表作成部と、前記対応表を束構造化して対応表テーブルを作成する対応表束構造化部と、前記隣接行列テーブルと前記対応表テーブルとに基づいて、前記各ノードのアクセス権を算出するルールテーブル生成部とを備える。 In order to solve the above-described problems, the rule table generation device according to the present invention is based on a workflow, an input unit that receives input of business process information and access information accessed in each task of the business process, Based on the information on the business process, an adjacency matrix generation unit that converts business process information into an adjacency matrix, an adjacency matrix bundle structuring unit that forms an adjacency matrix table by bundling the adjacency matrix, Correspondence table creation unit that creates a correspondence table related to the correspondence relationship between each node of the corresponding adjacency matrix table and the access information, and correspondence table bundle structure that creates a correspondence table table by bundling the correspondence table And a rule table generation unit that calculates an access right of each node based on the adjacency matrix table and the correspondence table table. That.
また、本発明は上述したルールテーブル生成装置に実質的に相当する方法およびプログラムとしても実現し得るものであり、本発明の範囲にはこれらも包含されるものと理解されたい。 The present invention can also be realized as a method and program substantially corresponding to the rule table generating device described above, and it should be understood that these are also included in the scope of the present invention.
例えば、本発明に係るルールテーブル生成方法は、ルールテーブル生成装置におけるルールテーブル生成方法であって、ワークフローに基づき、業務プロセスの情報と、該業務プロセスの各タスクにおいてアクセスするアクセス情報との入力を受け付けるステップと、前記業務プロセスの情報を隣接行列に変換するステップと、前記隣接行列を束構造化して隣接行列テーブルを作成するステップと、前記業務プロセスの情報に基づき、前記各タスクに対応する前記隣接行列テーブルの各ノードと、前記アクセス情報との対応関係に係る対応表を作成するステップと、前記対応表を束構造化して対応表テーブルを作成するステップと、前記隣接行列テーブルと前記対応表テーブルとに基づいて、前記各ノードのアクセス権を算出するステップとを含む。 For example, the rule table generation method according to the present invention is a rule table generation method in a rule table generation device, and inputs business process information and access information accessed in each task of the business process based on a workflow. Accepting, converting the business process information into an adjacency matrix, creating an adjacency matrix table by bundling the adjacency matrix, and based on the business process information, the task corresponding to each task Creating a correspondence table related to the correspondence between each node of the adjacency matrix table and the access information; creating a correspondence table by bundling the correspondence table; and the adjacency matrix table and the correspondence table Calculating the access right of each node based on the table; Including.
また、本発明に係るルールテーブル生成プログラムは、コンピュータに、ワークフローに基づき、業務プロセスの情報と、該業務プロセスの各タスクにおいてアクセスするアクセス情報との入力を受け付けるステップと、前記業務プロセスの情報を隣接行列に変換するステップと、前記隣接行列を束構造化して隣接行列テーブルを作成するステップと、前記業務プロセスの情報に基づき、前記各タスクに対応する前記隣接行列テーブルの各ノードと、前記アクセス情報との対応関係に係る対応表を作成するステップと、前記対応表を束構造化して対応表テーブルを作成するステップと、前記隣接行列テーブルと前記対応表テーブルとに基づいて、前記各ノードのアクセス権を算出するステップとを実行させる。 Further, the rule table generation program according to the present invention includes a step of accepting input of business process information and access information accessed in each task of the business process based on a workflow to the computer, and the business process information. Converting to an adjacency matrix; creating an adjacency matrix table by bundling the adjacency matrix; and each node of the adjacency matrix table corresponding to each task based on the information of the business process; and the access Based on the step of creating a correspondence table related to the correspondence relationship with the information, the step of creating the correspondence table by bundling the correspondence table, the adjacency matrix table and the correspondence table table, And calculating an access right.
上記のように構成された本発明に係るルールテーブル生成装置、生成方法および生成プログラムによれば、業務プロセスの情報の入力によってルールテーブルを効率的に生成することができる。 According to the rule table generation device, generation method, and generation program according to the present invention configured as described above, a rule table can be efficiently generated by inputting business process information.
また、ルールテーブルが自動的に作成されるため、ルールテーブルの生成に必要なコストを低減することができる。さらに、ヒューマンエラーに起因してバグが発生したりセキュリティホールが生じたりする等の不具合が起こるというリスクを低減することができる。 Further, since the rule table is automatically created, the cost required for generating the rule table can be reduced. Furthermore, it is possible to reduce the risk of occurrence of problems such as bugs or security holes due to human errors.
        
以下、本発明の実施の形態について、図面を参照して説明する。 Embodiments of the present invention will be described below with reference to the drawings.
         
  図1は、本発明の一実施形態に係るルールテーブル生成装置が使用されるアクセス制御装置の構成を示す図である。図1に示すアクセス制御装置1100は、入力部101と、出力部102と、認証部103と、業務処理部104−1、104−2・・・104−Nと、ルール情報検索部105と、情報検索部106と、業務権限テーブルT101と、ルールテーブルT160と、情報テーブルT103とにより構成されている。ルール情報検索部105と情報検索部106は、情報と業務とを関連付けて管理し、アクセス権をチェックして情報を提供する情報管理部を構成する。また、アクセス制御装置1100は、ルールテーブルT160において、ルールテーブル生成装置200と接続されている。なお、本実施形態においては、ルールテーブル生成装置200は、図1に示すようにアクセス制御装置1100とは異なる独立した装置であるとして説明するが、ルールテーブル生成装置200は、アクセス制御装置1100内に含まれていてもよい。
  FIG. 1 is a diagram illustrating a configuration of an access control device in which a rule table generation device according to an embodiment of the present invention is used. 1 includes an input unit 101, an 
         
  入力部101は、外部からアクセス制御装置1100への入力を行う。出力部102は、アクセス制御装置1100での処理結果などをアクセス制御装置1100から外部に出力する。認証部103は、利用者IDにより業務の実行権限を業務権限テーブルT101にてチェックする。
  The input unit 101 performs input to the 
         
  業務権限テーブルT101は、利用者ID毎に、実施できる業務IDを対応付けるテーブルである。表4に業務権限テーブルT101の一例を示す。
 
         
  業務処理部104−1、104−2・・・104−N(以下、特に区別しない場合は、業務処理部104と記載する)は、実行する業務毎に分かれており、入力部101からの指示に従って業務を実行する。各業務処理部104−1、104−2・・・104−Nは、情報種別コードが付与された情報を使用して業務を実行する。業務処理部104では、名前や住所などの様々な情報を使用して業務を行うが、情報種別コードとは、この業務に利用される名前や住所などの情報の種類に付与したコードのことである。例えば、名前:10、住所:20、職業:30、年収:40、本籍地:50などである。
  The business processing units 104-1, 104-2,... 104-N (hereinafter referred to as the 
         
  ルール情報検索部105は、業務IDをもとに検索する情報種別コードへのアクセス権を、ルールテーブルT160にてチェックする。
  The rule 
         
  ルールテーブルT160は、業務ID毎に、アクセスできる情報種別コードを対応付ける(関連付ける)テーブルである。表5にルールテーブルT160の一例を示す。ルールテーブルT160は、例えば、規則(条例、法令、等)により定められた情報へのアクセス範囲をルールにて記述し管理する。ルールテーブルT160は、ルールテーブル生成装置200により生成されるが、ルールテーブルT160の詳細な生成方法については後述する。
 
         
  情報検索部106は、アクセス権の正当性が確認された後、情報テーブルT103から情報を検索する。
  After the validity of the access right is confirmed, the 
         
  情報テーブルT103は、個人を特定する個人コードと、情報の種類を表す情報種別コードと、情報実体からなる。表6に情報テーブルT103の一例を示す。情報検索部106は、個人コード、情報種別コードにて検索し、情報実体を取得する。
 
         
  次に、図1を用いて、アクセス制御装置1100における処理手順を説明する。
  Next, a processing procedure in the 
         
  最初に、入力部101にて、アクセス制御装置1100を利用する利用者の利用者ID、業務IDおよび個人コードを入力し、認証部103に送る(送信する)。認証部103では、入力部101で入力された利用者ID、業務IDを用いて業務権限テーブルT101を検索し、一致するレコードがあれば、業務IDと個人コードを該当する業務IDの業務処理部104に送る。一致するレコードがなければ、エラー信号を出力部102に送る。
  First, the input unit 101 inputs the user ID, business ID, and personal code of the user who uses the 
         
  次に、該当する業務IDの業務処理部104では、認証部103から業務ID、個人コードを受け取り、業務処理を実行する。業務処理において情報を必要とする場合には、情報に付与された情報種別コード、業務ID、個人コードをルール情報検索部105に送る。ルール情報検索部105では、取得した業務IDと情報種別コードにてルールテーブルT160を検索する。一致するレコードがなければ、エラー信号を業務処理部104に返す。一致するレコードがあれば、個人コードおよび情報種別コードを情報検索部106に送る。
  Next, the 
         
  情報検索部106では、個人コードおよび情報種別コードにて情報テーブルT103を検索し、情報実体を取得し、業務処理部1104に送る。業務処理部104では、ルール情報検索部105からエラー信号が返ってきた場合にはエラー信号を出力部102に送り、情報検索部106から情報実体が得られた場合には、業務処理を継続する。業務処理が終了した場合には、処理結果を出力部102に送る。最後に、出力部102では、得られた業務処理結果を外部に出力する。
  The 
         
  なお、業務処理部104にて、複数の情報が不足している場合(情報種別コードが付与された情報を複数使用する場合)には、ルール情報検索部105への情報要求を複数回実施する。
  When the 
         
  また、アクセス制御装置1100は、リモートプロシージャーコールなどを利用することにより、入力部101、出力部102、認証部103、業務処理部104、業務権限テーブルT101を具備する端末装置と、ルール情報検索部105、情報検索部106、ルールテーブルT160、情報テーブルT103を具備する端末装置に分けることもできる。
  Further, the 
         
  図2は、本発明の一実施形態に係るルールテーブル生成装置200の概略的なブロック図である。図2に示すように、ルールテーブル生成装置200は、入力部10と、隣接行列束構造化部20と、対応表束構造化部25と、隣接行列生成部30と、対応表作成部40と、隣接行列テーブルT130と、対応表テーブルT140と、フラグ管理テーブルT150と、ルールテーブル生成部170とを備える。また、ルールテーブル生成装置200は、ルールテーブル生成部170のルールテーブル管理部70において、ルールテーブルT160に接続されている。
  FIG. 2 is a schematic block diagram of the rule 
         
  ルールテーブル生成装置200では、入力部10が、業務プロセスの情報と、業務プロセスの各タスクにおいてアクセスするアクセス情報との入力を受け付ける。隣接行列生成部30および隣接行列束構造化部20は、入力された業務プロセスの情報に基づいて隣接行列テーブルT130を作成する。また、対応表作成部40および対応表束構造化部25は、入力されたアクセス情報に基づいて対応表テーブルT140を作成する。そして、ルールテーブル生成部170は、隣接行列テーブルT130と対応表テーブルT140とに基づいて、各ノードのアクセス権を算出する。
  In the rule 
         
  図3は、本発明の一実施形態に係るルールテーブル生成装置200によりルールテーブルT160を生成するために使用されるワークフローの例を示す図である。本明細書においては、図3のワークフローで表される業務プロセスのルールテーブルT160を設定する方法について説明するが、ルールテーブルT160の生成対象となるワークフローは、図3に示すものに限られない。
  FIG. 3 is a diagram illustrating an example of a workflow used for generating the rule table T160 by the rule 
         
  図3において、f1からf7はタスクを示し、各タスクを結ぶ矢印は、業務プロセスの順序を示す。図3のワークフローを参照すると、この業務は3通りのプロセスのいずれかにより行われる。3通りのプロセスは、f1、f2、f3、f5およびf7のタスクを順に行うプロセス、f1、f2、f3、f6およびf7のタスクを順に行うプロセス、またはf1、f2、f4およびf7のタスクを順に行うプロセスである。また、f1からf7の各タスクにおいてアクセスするアクセス情報を、それぞれS1からS7とする。以下、図3に示すワークフローで表される業務プロセスと、各タスクにおけるアクセス情報とに基づき、ルールテーブル生成装置200がルールテーブルT160を生成する方法について説明する。なお、本明細書において、アクセス権は、業務プロセスの各タスクにおける所定の情報にアクセスする権限をいう。また、アクセス権情報は、業務プロセスの各タスクにおけるアクセスする権限に関する情報をいう。また、ルールは、アクセス権に基づいて、所定の条件において情報を閲覧することが可能であるか否かを判定する規則である。
In FIG. 3, f 1 to f 7 indicate tasks, and arrows connecting the tasks indicate the order of business processes. Referring to the workflow of FIG. 3, this task is performed by one of three processes. The three processes are processes that sequentially perform tasks of f 1 , f 2 , f 3 , f 5, and f 7 , processes that sequentially perform tasks of f 1 , f 2 , f 3 , f 6, and f 7 , or f This is a process of sequentially performing tasks 1 , f 2 , f 4 and f 7 . In addition, the access information accessed in the tasks f 1 to f 7 is S 1 to S 7 , respectively. Hereinafter, a method in which the rule 
         
  再び図2を参照する。入力部10は、ワークフローに基づき、業務プロセスの情報と、業務プロセスの各タスクにおいてアクセスするアクセス情報との入力を受け付ける。業務プロセスの情報は、例えば、ワークフローをBPMN(Business Process Modeling Notation:ビジネスプロセスモデリング表記法)によって記述した有向グラフとして入力される。有向グラフにおいては、ワークフローのタスクがノードとして、各タスクの実行順がエッジとして表現される。また、アクセス情報としては、各タスクf1からf7にそれぞれ対応付けられたアクセス情報が入力される。本明細書においては、アクセス情報を示すシンボルとして、アクセス情報をSと表記する。すなわち、各タスクf1からf7には、それぞれアクセス情報をS1からS7がそれぞれ対応付けられる。
Refer to FIG. 2 again. Based on the workflow, the 
         
  隣接行列生成部30は、入力部10から入力された業務プロセスの情報を隣接行列に変換する。ここで、隣接行列は、入力した有向グラフの遷移を表記したものである。図4は、隣接行列の例を示す図であり、図4(a)は、図3に示すワークフローを変換した結果の隣接行列を示す図である。隣接行列において、縦軸および横軸は各ノードf1からf7である。隣接行列において、ビット「1」が立てられた要素は、その要素の行のノードからその要素の列のノードへの遷移が存在することを示し、ビット「0」が立てられた要素は、その要素の行のノードからその要素の列のノードへの遷移が存在しないことを示す。例えば図4(a)のノードf1の行を参照すると、ノードf2の列にビット「1」が立てられており、これは、ノードf1からノードf2へ遷移することを示す。また、ノードf1の行において、ノードf2の列以外の列には、ビット「0」が立てられているため、ノードf1から遷移しないことを示す。同様に、ノードf2の行を参照すると、ノードf3およびノードf4の列にビット「1」が立てられ、それ以外の列にはビット「0」が立てられているため、ノードf2からは、ノードf3またはノードf4へ遷移し、それ以外のノードへは遷移しないことが理解される。
The adjacency 
         
  隣接行列束構造化部20は、隣接行列生成部30において生成された隣接行列を束構造化する。束構造は、仮想的な始まりと終わりをそれぞれ唯一に有する構造である。隣接行列束構造化部20は、具体的には、隣接行列生成部30で生成された隣接行列に、仮想的な始まりのノードf0と、仮想的な終わりのノードfendとを付加する。図4(b)は、図4(a)の隣接行列を束構造化した隣接行列テーブルT130である。図4(b)に示すように、ノードf0とノードfendとが隣接行列に付加されている。
The adjacency matrix 
         
  対応表作成部40は、入力部10から入力された業務プロセスの情報に基づき、ノードとして表記されるタスクのそれぞれとアクセス情報との対応関係に係る対応表を作成する。具体的には、対応表作成部40は、それぞれのノードとアクセス情報とを対応させた表を対応表として作成する。図5は、対応表の例を示す図であり、図5(a)は、図3に示すワークフローに基づいて対応表作成部40が作成する対応表の例を示す図である。図5(a)を参照すると、例えばノードf1には情報S1が対応付けられている。同様に、ノードf2からf7についても、それぞれ情報S2からS7が対応付けられている。
The correspondence table creation unit 40 creates a correspondence table related to the correspondence between each task represented as a node and access information based on the business process information input from the 
         
  対応表束構造化部25は、対応表作成部40において作成された対応表を束構造化する。具体的には、対応表束構造化部25は、隣接行列束構造化部20において付加されたノードf0およびノードfendにそれぞれ対応する、仮想的な始まりのノードf0と終わりのノードfendとを、対応表に付加する。図5(b)は、図5(a)の対応表を束構造化した対応表テーブルT140である。図5(b)に示すように、ノードf0とノードfendとが付加されている。ここで、ノードf0およびノードfendは仮想的なノードであるため、ノードf0およびノードfendにおいてアクセスする情報は存在しない。そのため、ノードf0およびノードfendについては、空集合を示す「0」が対応付けられる。
The correspondence table 
         
  隣接行列テーブルT130は、隣接行列束構造化部20において束構造化された隣接行列(ここでは、図4(b)に示す隣接行列)である。隣接行列テーブルT130は、ルールテーブルT160を生成するときに使用される。
  The adjacency matrix table T130 is an adjacency matrix (in this case, the adjacency matrix shown in FIG. 4B) that has been bundled by the adjacency matrix 
         
  対応表テーブルT140は、対応表束構造化部25において束構造化された対応表(ここでは、図5(b)に示す対応表)である。対応表テーブルT140は、ルールテーブルT160を生成するときに使用される。
  The correspondence table T140 is a correspondence table (here, the correspondence table shown in FIG. 5B) that has been bundled by the correspondence table 
フラグ管理テーブルT150は、ルールテーブルT160の作成において使用されるテーブルであり、各ノードのアクセス権が算出されているか否かを示す。図6は、フラグ管理テーブルT150の例を示す図である。図6に示すように、フラグ管理テーブルT150では、各ノードfに対してフラグを示す欄に「0」または「1」が格納されている。ノードfについて「1」が格納されているとき、フラグが立てられており、アクセス権の算出がされたことを示す。一方、ノードfについて「0」が格納されているとき、フラグが立てられておらず、アクセス権の算出がされていないことを示す。従って、図6に示すフラグ管理テーブルT150においては、ノードf0、f1、f2、f3およびf5についてフラグが立てられているため、これらのノードについては、アクセス権の算出がされている。一方、ノードf4、f6、f7およびfendにはフラグが立てられていないため、これらのノードについては、アクセス権の算出がされていない。 The flag management table T150 is a table used in creating the rule table T160, and indicates whether or not the access right of each node is calculated. FIG. 6 is a diagram illustrating an example of the flag management table T150. As shown in FIG. 6, in the flag management table T150, “0” or “1” is stored in the column indicating the flag for each node f. When “1” is stored for the node f, a flag is set, indicating that the access right has been calculated. On the other hand, when “0” is stored for the node f, it indicates that the flag is not set and the access right is not calculated. Accordingly, in the flag management table T150 shown in FIG. 6, since the flags are set for the nodes f 0 , f 1 , f 2 , f 3 and f 5 , the access right is calculated for these nodes. Yes. On the other hand, since no flags are set for the nodes f 4 , f 6 , f 7 and f end , the access right is not calculated for these nodes.
         
  ルールテーブルT160は、ルールテーブル生成部170により生成されるルールテーブル行列に基づいて生成される。図7は、ルールテーブル行列の例を示す図である。ルールテーブル行列において、縦軸はノードfであり、横軸はアクセス情報Sである。ルールテーブル行列において、各要素には「0」または「1」が格納される。「0」が格納された要素は、その要素の行のノードfにおいてその要素の列のアクセス情報Sにアクセスできないことを示し、「1」が格納された要素は、その要素の行のノードfにおいてその要素の列のアクセス情報Sにアクセスできることを示す。すなわち、「1」が格納された要素が、各ノードにおけるアクセス権を示す。例えば、ノードf3の行を参照すると、アクセス情報S1、S2およびS3の列に「1」が格納されている。従って、ノードf3においては、アクセス情報S1、S2およびS3についてアクセスすることができ、アクセス情報S4、S5、S6およびS7についてアクセスすることができない。
The rule table T160 is generated based on the rule table matrix generated by the rule 
         
  ルールテーブル生成部170は、隣接行列読込部50と、アクセス権算出部60と、ルールテーブル管理部70と、フラグチェック部80と、フラグ設定部90と、算出対象ノード指定部180とを備える。ルールテーブル生成部170は、各機能部を協働させてルールテーブル行列を生成し、ルールテーブル行列に基づきルールテーブルT160を生成する。
  The rule 
         
  隣接行列読込部50は、隣接行列テーブルT130を読み込む。
  The adjacency 
         
  アクセス権算出部60は、算出対象ノードのアクセス権を、算出対象ノードへ遷移する遷移前ノードの算出済みのアクセス権情報と、対応表テーブルT140に記載された算出対象ノードに対応するアクセス情報との論理和を計算することにより算出する。ここで、算出対象ノードとは、アクセス権の算出対象となるノードをいう。アクセス権算出部60は、算出対象ノードを順次計算することにより、ルールテーブル行列を作成する。アクセス権算出部60が行う算出の詳細な例については後述する。
  The access 
         
  ルールテーブル管理部70は、ルールテーブルT160からルールテーブル行列を読み込んだり、ルールテーブルT160にルールテーブル行列に関する情報を書き込んだりする。
  The rule 
         
  フラグチェック部80は、フラグ管理テーブルT150所定のノードについて、フラグが立っているか否かを確認する。
  The 
         
  フラグ設定部90は、フラグ管理テーブルT150の所定のノードに対して、所定の条件においてフラグを立てる。
  The 
         
  算出対象ノード指定部180は、隣接行列テーブルT130に基づいて、アクセス権の算出対象となる算出対象ノードを順次指定する。算出対象ノード指定部180は、次ノード探索部100と、戻るノード探索部110と、終了判定部120とを備える。
  The calculation target 
         
  次ノード探索部100は、隣接行列読込部50とフラグチェック部80とから取得した情報に基づき、次ノードを探索する。具体的には、次ノード探索部100は、隣接行列テーブルT130に基づいて、アクセス権を算出したノードから遷移する遷移先ノードを選択し、遷移先ノードのうちアクセス権を算出していないノードの中の1つを算出対象候補ノードとして指定する。なお、次ノードは、所定のノードから遷移するノードに係るノードである。探索方法については、後述する図11の説明において詳述する。
  The next 
         
  戻るノード探索部110は、隣接行列読込部50とフラグチェック部80とから取得した情報に基づき、戻るノードを探索する。具体的には、戻るノード探索部110は、隣接行列テーブルT130に基づいて、算出対象候補ノードの遷移前ノードを選択し、選択した遷移前ノードの全てについてアクセス権が算出されているとき、算出対象候補ノードを、算出対象ノードとして指定し、選択した遷移前ノードのいずれかについてアクセス権が算出されていないとき、アクセス権が算出されていない遷移前ノードの中の1つを、算出対象候補ノードとして指定しなおす。戻るノードは、所定のノードへ遷移するノードに係るノードであって、アクセス権の算出がされていないノードである。探索方法については、後述する図12の説明において詳述する。
  The return 
         
  終了判定部120は、フラグチェック部80から取得した情報に基づき、アクセス権の算出を終了するか否かを判定する。具体的には、終了判定部120は、ノードfendにフラグが立っているときアクセス権の算出を終了すると判定し、ノードfendにフラグが立っていないとき、アクセス権の算出を終了しないと判定する。
The end determination unit 120 determines whether or not to end the access right calculation based on the information acquired from the 
         
  次に、図8を参照して、ルールテーブル生成部170におけるルールテーブル行列の生成手順について説明する。ルールテーブル行列の生成開始時点において、フラグ管理テーブルT150には、図9(a)に示すように、フラグが立っておらず、すなわち、全てのノードfについてフラグを示す欄に「0」が格納されている。また、ルールテーブル行列の生成開始時点において、ルールテーブル行列の全ての要素には、図10(a)に示すように「0」が格納されている。
  Next, a rule table matrix generation procedure in the rule 
         
  まず、フラグ設定部90は、フラグ管理テーブルT150のノードf0にフラグを立てる(ステップS101)。すなわち、フラグ設定部90は、図9(b)に示すように、フラグ管理テーブルT150のノードf0に対応するフラグを示す欄に「1」を格納する。
First, the 
         
  次に、ルールテーブル生成部170は、次に算出対象ノードの候補としての算出対象候補ノードを指定する。具体的には、まず、次ノード探索部100は、隣接行列読込部50とフラグチェック部80とから取得した情報に基づき、フラグを立てたノードfh(ここではh=0)の次ノードを探索する(ステップS102)。図11は、次ノード探索部100における次ノードの探索方法の例を示すフローチャートである。
Next, the rule 
         
  次ノード探索部100は、隣接行列読込部50から取得した隣接行列テーブルT130を参照して、ノードfhの行においてビットが立っている列のノードを遷移先ノードとして選択する(ステップS201)。図4(b)に示す隣接行列テーブルT130を参照すると、ノードf0の行においてビットが立っているのは、ノードf1の列である。従って、次ノード探索部100はf1を選択する。
Next 
         
  そして、次ノード探索部100は、フラグチェック部80から取得したフラグ管理テーブルT150を参照して、選択した遷移先ノードのうちフラグが立っていないノードを抽出する(ステップS202)。この段階で、ノードf1にはフラグが立っていないため、次ノード探索部100はノードf1を抽出する。
Then, the next 
         
  そして、次ノード探索部100は、抽出したノードのうち任意のノードを算出対象候補ノードfiとして指定する(ステップS203)。ここでは、抽出したノードが1つであるため、次ノード探索部100は、ノードf1を算出対象候補ノードfiとして指定する。抽出したノードが複数のとき、次ノード探索部100は、例えばノードfの添え字が最も小さいノードまたは最も大きいノードを算出対象候補ノードfiとして指定することができる。なお、本明細書においては、次ノード探索部100は、例えばノードfの添え字が最も小さいノードを算出対象候補ノードfiとして指定するとして以下説明する。
Then, the next 
         
  再び図8を参照すると、次ノード探索部100が算出対象候補ノードを指定した後、戻るノード探索部110が、隣接行列読込部50とフラグチェック部80とから取得した情報に基づき、算出対象候補ノードとして指定したノードfiの戻るノードfjを探索する(ステップS103)。ここでは、戻るノード探索部110は、ノードf1の戻るノードfjを探索する。
Referring again to FIG. 8, after the next 
         
  そして、戻るノード探索部110は、探索の結果、戻るノードfjが存在するか否かを判定する(ステップS104)。戻るノードfjが存在しない場合(ステップS104のNo)、ルールテーブル生成部170は、ステップS106に進む。一方、戻るノードfjが存在する場合(ステップS104のYes)、戻るノード探索部110は、ノードfj=ノードfiとする(ステップS105)。そして、戻るノード探索部110は、さらにノードfiの戻るノードfjを探索する(ステップS103)。
Then, the return 
         
  ここで、ステップS103からステップS105までの戻るノード探索部110が行う処理について、図12を参照して、さらに詳細に説明する。図12は、戻るノード探索部110における戻るノードの探索方法の例を示すフローチャートである。
  Here, the process performed by the returning 
         
  戻るノード探索部110は、隣接行列読込部50から取得した隣接行列テーブルT130を参照して、ノードfiの列においてビットが立っている行のノードを遷移前ノードとして選択する(ステップS301)。ここで、図4(b)に示す隣接行列テーブルT130を参照すると、ノードf1の列においてビットが立っているのは、ノードf0の列である。従って、戻るノード探索部110はf0を選択する。
Back 
         
  続いて、戻るノード探索部110は、フラグチェック部80から取得したフラグ管理テーブルT150を参照して、選択した遷移前ノードのうちフラグが立っていないノードが存在するか否かを判定する(ステップS302)。ステップS302は、図8のステップS104に対応する。この段階で、ノードf0にはフラグが立っているため、戻るノード探索部110は、フラグが立っていないノードは存在しないと判定する(ステップS302のNo)。フラグが立っていないノードが存在しない場合、戻るノードfjは存在しない(図8のステップS104におけるNo)。このとき、ルールテーブル生成部170は、図8のステップS106に進む。
Subsequently, the returning 
         
  一方、戻るノード探索部110が、フラグが立っていないノードが存在すると判定したとき(ステップS302のYes)、戻るノードfjが存在する(図8のステップS104におけるYes)。このとき、戻るノード探索部110は、フラグ管理テーブルT150を参照して、選択したノードのうちフラグが立っていないノードを抽出する(ステップS303)。
On the other hand, when the return 
         
  そして、戻るノード探索部110は、抽出したノードのうち任意のノードを算出対象候補ノードfjとして指定しなおす(ステップS304)。抽出したノードが複数のとき、戻るノード探索部110は、例えばノードfの添え字が最も小さいノードまたは最も大きいノードを算出対象候補ノードfjとして指定することができる。なお、本明細書においては、戻るノード探索部100は、例えばノードfの添え字が最も小さいノードを算出対象候補ノードfjとして決定するとして以下説明する。
The returning 
         
  戻るノード探索部110は、算出対象候補ノードfjを指定すると、ノードfj=ノードfiとする(ステップS305)。そして、戻るノード探索部110は、再びステップS301に戻り、隣接行列読込部50から取得した隣接行列テーブルT130を参照して、ノードfiの列においてビットが立っている行の遷移前ノードを選択する。このようにして、戻るノード探索部110は、ステップS302において、フラグが立っていないノードが存在しないと判定するまで、このフローを繰り返す。フラグが立っていないノードが存在しないと判定されたときのノードfjが、算出対象ノードとして指定される。
When the return 
         
  再び図8を参照する。ステップS104において、ノードf1について戻るノードfjが存在しないと判定されたとき(ステップS104のNo)、アクセス権算出部60は、ルールテーブル管理部70を介してルールテーブル行列の情報を取得し、対応表テーブルT140も参照して、算出対象ノードfi(ここではi=1)に遷移する遷移前ノードのアクセス権情報と、ノードfiにおけるアクセス情報との論理和を計算する(ステップS106)。ここで、ルールテーブル行列の情報を参照すると、ノードf1に遷移するノードf0のアクセス権情報は「0(空集合)」であり、図5(b)に示す対応表テーブルT140を参照すると、ノードf1におけるアクセス情報はS1である。アクセス権算出部60は、これらの論理和を計算することによって、ノードf1のアクセス権がアクセス情報S1であると算出する。
Refer to FIG. 8 again. In step S104, (No in step S104), and the access 
         
  算出結果に基づいて、ルールテーブル管理部70は、ルールテーブルT160のルールテーブル行列のf1の行にビットを立てる(ステップS107)。ここでは、具体的には、図10(a)のf1の行においてS1の要素に「1」が格納される。このようにして、ノードf1のアクセス権が算出され、ルールテーブル行列が生成される。
Based on the calculation result, the rule 
         
  そして、フラグ設定部90は、フラグ管理テーブルT150のノードf1にフラグを立てる(ステップS108)。すなわち、この段階で、フラグ管理テーブルT150は、図9(c)に示すように、f0とf1とにフラグが立てられた状態となる。
The 
         
  そして、終了判定部120は、フラグ管理テーブルT150のノードfendにフラグが立っているか否かを判定する(ステップS109)。ノードfendにフラグが立っているとき(ステップS109のYes)、ルールテーブル生成部170は、全てのノードfのアクセス権が算出されたと判定して、フローを終了する。
Then, the end determination unit 120 determines whether or not a flag is set in the node f end of the flag management table T150 (step S109). When the flag is set in the node f end (Yes in step S109), the rule 
         
  ノードfendにフラグが立っていないとき(ステップS109のNo)、次ノード探索部100は、ノードfi=ノードfhとする。そして、ルールテーブル生成部170は、再びステップS102からこのフローを繰り返す。すなわち、ここでは、図9(c)のように、ノードfendにフラグが立っていないため、次ノード探索部100は、ノードf1の次ノードfiを探索する。
When the flag is not set in the node f end (No in Step S109), the next 
         
  次ノード探索部100は、隣接行列テーブルT130のノードf1の行においてビットが立っている列のノードf2を遷移先ノードとして選択する(ステップS201)。この段階で、フラグ管理テーブルT150を参照すると、遷移先ノードf2にはフラグが立っていないため、ステップS202においてノードf2が抽出され、ステップS203において、ノードf2が算出対象候補ノードfiとして決定される。
Next 
         
  次に、戻るノード探索部110は、隣接行列テーブルT130のノードf2の列においてビットが立っている行の遷移前ノードf1を選択する(ステップS301)。フラグ管理テーブルT150を参照すると、この段階でノードf1にはフラグが立っているため、ステップS302において、戻るノード探索部110は、フラグが立っていないノードが存在しないと判定し(ステップS302のNo)、ノードf2が算出対象ノードとして決定される。
Then, return 
         
  そして、アクセス権算出部60は、算出対象ノードf2に遷移する遷移前ノードf1のアクセス権情報と、ノードf2におけるアクセス情報との論理和を計算する(ステップS106)。ここで、ノードf1のアクセス権情報はアクセス情報S1であり、ノードf2におけるアクセス情報はS2である。アクセス権算出部60は、これらの論理和を計算することによって、ノードf2のアクセス権がアクセス情報S1およびS2であると算出する。そして、算出結果に基づいて、ルールテーブル管理部70は、ルールテーブルT160のルールテーブル行列のf2の行にビットを立てる(ステップS107)。ここでは、具体的には、図10(a)のf2の行においてS1およびS2の要素に「1」が格納される。そして、フラグ設定部90は、図9(d)に示すように、フラグ管理テーブルT150のノードf2にフラグを立てる(ステップS108)。この段階でノードfendにフラグが立っていないため(ステップS109のNo)、ノードf2=ノードfiとして、再びステップS102に戻る。
Then, the access 
         
  図4(b)に示す隣接行列テーブルT130を参照すると、ノードf2の行においては、ノードf3およびノードf4の列にビットが立っているため、次ノード探索部100は、ステップS201において、ノードf3およびノードf4を遷移先ノードとして選択する。この段階で、遷移先ノードf3および遷移先ノードf4には、いずれもフラグが立っていないため、ステップS202において、ノードf3およびノードf4が抽出される。そして、次ノード探索部100は、ステップS203において、ノードf3およびノードf4のうちf3を算出対象候補ノードfiとして指定する。
Referring to adjacency matrix table T130 shown in FIG. 4 (b), in the line of nodes f 2, since the bit string of the nodes f 3 and node f 4 is set, the next 
         
  隣接行列テーブルT130のノードf3の戻るノードfjは存在しないため(ステップS104のNo)、ノードf3が算出対象ノードとして決定される。アクセス権算出部60は、算出対象ノードf3に遷移する遷移前ノードf2のアクセス権情報と、ノードf3におけるアクセス情報との論理和を計算する(ステップS106)。ここで、ノードf2のアクセス権情報はアクセス情報S1およびS2であり、ノードf3におけるアクセス情報はS3である。アクセス権算出部60は、これらの論理和を計算することによって、ノードf3のアクセス権がアクセス情報S1、S2およびS3であると算出する。そして、算出結果に基づいて、ルールテーブル管理部70は、ルールテーブルT160のルールテーブル行列のf3の行にビットを立てる(ステップS107)。ここでは、具体的には、図10(a)のf3の行においてS1、S2およびS3の要素に「1」が格納される。そして、フラグ設定部90は、図9(e)に示すように、フラグ管理テーブルT150のノードf3にフラグを立てる(ステップS108)。この段階でノードfendにフラグが立っていないため(ステップS109のNo)、ノードf3=ノードfiとして、再びステップS102に戻る。
Since the return node f j of the node f 3 in the adjacency matrix table T130 does not exist (No in step S104), the node f 3 is determined as the calculation target node. The access 
         
  図4(b)に示す隣接行列テーブルT130を参照すると、ノードf3の行においては、ノードf5およびノードf6の列にビットが立っているため、次ノード探索部100は、ステップS201において、ノードf5およびノードf6を遷移先ノードとして選択する。この段階で、ノードf5およびノードf6には、いずれもフラグが立っていないため、ステップS202において、ノードf5およびノードf6が抽出される。そして、次ノード探索部100は、ステップS203において、ノードf5およびノードf6のうちf5を算出対象候補ノードfiとして指定する。
Referring to adjacency matrix table T130 shown in FIG. 4 (b), in the line of nodes f 3, since the bit string of the nodes f 5 and the node f 6 is set, the next 
         
  隣接行列テーブルT130のノードf5の戻るノードfjが存在しないため(ステップS104のNo)、ノードf5が算出対象ノードとして決定される。アクセス権算出部60は、算出対象ノードf5に遷移する遷移前ノードf3のアクセス権情報と、ノードf5におけるアクセス情報との論理和を計算する(ステップS106)。ここで、ノードf3のアクセス権情報はアクセス情報S1、S2およびS3であり、ノードf5におけるアクセス情報はS5である。アクセス権算出部60は、これらの論理和を計算することによって、ノードf5のアクセス権がアクセス情報S1、S2、S3およびS5であると算出する。そして、算出結果に基づいて、ルールテーブル管理部70は、ルールテーブルT160のルールテーブル行列のf5の行にビットを立てる(ステップS107)。ここでは、具体的には、図10(a)のf5の行においてS1、S2、S3およびS5の要素に「1」が格納される。この時点で、ルールテーブル行列は、図10(b)に示すように、ノードf1、f2、f3およびf5の行の要素にビットが立てられた状態となる。そして、フラグ設定部90は、図9(f)に示すように、フラグ管理テーブルT150のノードf5にフラグを立てる(ステップS108)。この段階でノードfendにフラグが立っていないため(ステップS109のNo)、ノードf5=ノードfiとして、再びステップS102に戻る。
Since the return node f j of the node f 5 in the adjacency matrix table T130 does not exist (No in step S104), the node f 5 is determined as the calculation target node. The access 
         
  次ノード探索部100は、隣接行列テーブルT130のノードf5の行においてビットが立っている列のノードf7を遷移先ノードとして選択する(ステップS201)。この段階で、フラグ管理テーブルT150を参照すると、ノードf7にはフラグが立っていないため、ステップS202においてノードf7が抽出され、ステップS203において、ノードf7が算出対象候補ノードfiとして指定される。
Next 
         
  次に、戻るノード探索部110は、隣接行列テーブルT130のノードf7の列においてビットが立っている行のノードf4、f5およびf6を選択する(ステップS301)。フラグ管理テーブルT150を参照すると、この段階でノードf4およびf6にはフラグが立っていないため、ステップS302において、戻るノード探索部110は、フラグが立っていない遷移前ノードが存在すると判定する(ステップS302のYes)。そして、戻るノード探索部110は、ノードf4およびノードf6を抽出し(ステップS303)、f4を算出対象候補ノードfiとして指定しなおす(ステップS304)。そして、ノードf4=ノードfiとする(ステップS305)。
Next, the returning 
         
  再びS301に戻ると、戻るノード探索部110は、隣接行列テーブルT130のノードf4の列においてビットが立っている行のノードf2を遷移前ノードとして選択する(ステップS301)。ノードf2にはフラグが立っているため、戻るノード探索部110は、ステップS302において、戻るノード探索部110は、フラグが立っていないノードが存在しないと判定し(ステップS302のNo)、ノードf4が算出対象ノードとして決定される。
Returning to step S301 again, it returns 
         
  そして、アクセス権算出部60は、算出対象ノードf4に遷移する遷移前ノードf2のアクセス権情報と、ノードf4におけるアクセス情報との論理和を計算する(ステップS106)。ここで、ノードf2のアクセス権情報はアクセス情報S1およびS2であり、ノードf4におけるアクセス情報はS4である。アクセス権算出部60は、これらの論理和を計算することによって、ノードf4のアクセス権がアクセス情報S1、S2およびS4であると算出する。そして、算出結果に基づいて、ルールテーブル管理部70は、ルールテーブルT160のルールテーブル行列のf4の行にビットを立てる(ステップS107)。ここでは、具体的には、図10(b)のf4の行においてS1、S2およびS4の要素に「1」が格納される。そして、フラグ設定部90は、図9(g)に示すように、フラグ管理テーブルT150のノードf4にフラグを立てる(ステップS108)。この段階でノードfendにフラグが立っていないため(ステップS109のNo)、ノードf4=ノードfiとして、再びステップS102に戻る。
Then, the access 
         
  次ノード探索部100は、隣接行列テーブルT130のノードf4の行においてビットが立っている列のノードf7を遷移先ノードとして選択する(ステップS201)。この段階で、フラグ管理テーブルT150を参照すると、ノードf7にはフラグが立っていないため、ステップS202においてノードf7が抽出され、ステップS203において、ノードf7が算出対象候補ノードfiとして指定される。
Next 
         
  次に、戻るノード探索部110は、隣接行列テーブルT130のノードf7の列においてビットが立っている行のノードf4、f5およびf6を選択する(ステップS301)。フラグ管理テーブルT150を参照すると、この段階でノードf6にはフラグが立っていないため、ステップS302において、戻るノード探索部110は、フラグが立っていない遷移前ノードが存在すると判定する(ステップS302のYes)。そして、戻るノード探索部110はノードf6を抽出し(ステップS303)、f6を算出対象候補ノードfiとして指定しなおす(ステップS304)。そして、ノードf6=ノードfiとする(ステップS305)。
Next, the returning 
         
  再びS301に戻ると、戻るノード探索部110は、隣接行列テーブルT130のノードf6の列においてビットが立っている行のノードf3を選択する(ステップS301)。ノードf3にはフラグが立っているため、戻るノード探索部110は、ステップS302において、戻るノード探索部110は、フラグが立っていない遷移前ノードが存在しないと判定し(ステップS302のNo)、ノードf6が算出対象ノードとして決定される。
Returning to step S301 again, returns 
         
  そして、アクセス権算出部60は、算出対象ノードf6に遷移する遷移前ノードf3のアクセス権情報と、ノードf6におけるアクセス情報との論理和を計算する(ステップS106)。ここで、ノードf3のアクセス権情報はアクセス情報S1、S2およびS3であり、ノードf6におけるアクセス情報はS6である。アクセス権算出部60は、これらの論理和を計算することによって、ノードf6のアクセス権がアクセス情報S1、S2、S3およびS6であると算出する。そして、算出結果に基づいて、ルールテーブル管理部70は、ルールテーブルT160のルールテーブル行列のf6の行にビットを立てる(ステップS107)。ここでは、具体的には、図10(b)のf6の行においてS1、S2、S3およびS6の要素に「1」が格納される。そして、フラグ設定部90は、図9(h)に示すように、フラグ管理テーブルT150のノードf6にフラグを立てる(ステップS108)。この段階でノードfendにフラグが立っていないため(ステップS109のNo)、ノードf6=ノードfiとして、再びステップS102に戻る。
Then, the access 
         
  次ノード探索部100は、隣接行列テーブルT130のノードf6の行においてビットが立っている列のノードf7を選択する(ステップS201)。この段階で、フラグ管理テーブルT150を参照すると、ノードf7にはフラグが立っていないため、ステップS202においてノードf7が抽出され、ステップS203において、ノードf7が算出対象候補ノードfiとして決定される。
Next 
         
  次に、戻るノード探索部110は、隣接行列テーブルT130のノードf7の列においてビットが立っている行のノードf4、f5およびf6を選択する(ステップS301)。フラグ管理テーブルT150を参照すると、この段階でノードf4、f5およびf6にはいずれもフラグが立っているため、ステップS302において、戻るノード探索部110は、フラグが立っていない遷移前ノードが存在しないと判定し(ステップS302のNo)、ノードf7が算出対象ノードとして決定される。
Next, the returning 
         
  そして、アクセス権算出部60は、算出対象ノードf7に遷移する遷移前ノードf4、f5およびf6のアクセス権情報と、ノードf7におけるアクセス情報との論理和を計算する(ステップS106)。ここで、ノードf4のアクセス権情報はアクセス情報S1、S2およびS4であり、ノードf5のアクセス権情報はアクセス情報S1、S2、S3およびS5であり、ノードf6のアクセス権情報はアクセス情報S1、S2、S3およびS6である。また、ノードf7におけるアクセス情報はS7である。アクセス権算出部60は、これらの論理和を計算することによって、ノードf7のアクセス権がアクセス情報S1からS7であると算出する。そして、算出結果に基づいて、ルールテーブル管理部70は、ルールテーブルT160のルールテーブル行列のf7の行にビットを立てる(ステップS107)。ここでは、具体的には、図10(b)のf7の行においてS1からS7の要素に「1」が格納される。そして、フラグ設定部90は、図9(i)に示すように、フラグ管理テーブルT150のノードf7にフラグを立てる(ステップS108)。この段階でノードfendにフラグが立っていないため(ステップS109のNo)、ノードf7=ノードfiとして、再びステップS102に戻る。
Then, the access 
         
  次ノード探索部100は、隣接行列テーブルT130のノードf7の行においてビットが立っている列のノードfendを選択する(ステップS201)。この段階で、フラグ管理テーブルT150を参照すると、ノードfendにはフラグが立っていないため、ステップS202においてノードfendが抽出され、ステップS203において、ノードfendが算出対象候補ノードfiとして指定される。
The next 
         
  次に、戻るノード探索部110は、隣接行列テーブルT130のノードfendの列においてビットが立っている行のノードf7を選択する(ステップS301)。フラグ管理テーブルT150を参照すると、この段階でノードf7にはフラグが立っているため、ステップS302において、戻るノード探索部110は、フラグが立っていない遷移前ノードが存在しないと判定し(ステップS302のNo)、ノードfendが算出対象ノードとして決定される。
Then, return 
         
  そして、アクセス権算出部60は、算出対象ノードfendに遷移する遷移前ノードf7のアクセス権情報と、ノードf7におけるアクセス情報との論理和を計算する(ステップS106)。ここで、ノードf7のアクセス権情報はアクセス情報S1からS7である。また、ノードfendにおけるアクセス情報は「0(空集合)」である。アクセス権算出部60は、これらの論理和を計算することによって、ノードfendのアクセス権がアクセス情報S1からS7であると算出する。そして、算出結果に基づいて、ルールテーブル管理部70は、ルールテーブルT160のルールテーブル行列のfendの行にビットを立てる(ステップS107)。ここでは、具体的には、図10(b)のfendの行においてS1からS7の要素に「1」が格納される。このようにして、ルールテーブル行列は、図10(c)に示すように、全てのノードfについて、ビットが立てられた状態となる。そして、フラグ設定部90は、図9(j)に示すように、フラグ管理テーブルT150のノードfendにフラグを立てる(ステップS108)。したがって、ステップS109において、終了判定部120は、ノードfendにフラグが立っていると判定する(ステップS109のYes)。そしてルールテーブル生成部170は、図8のフローを終了する。そして、ルールテーブル生成部170は、生成したルールテーブル行列に基づいて、ルールテーブルT160を生成する。
Then, the access 
         
  このようにして、ルールテーブル生成装置200は、ルールテーブルT160を生成する。このようにルールテーブルT160を生成させるプログラムは、例えばルールテーブル生成装置200における図示しない記憶部または外部の記憶媒体等に格納される。
  In this way, the rule 
         
  利用者が情報を閲覧しようとするとき、アクセス制御装置1100は、上述のように生成されたルールテーブルT160を参照して、利用者が閲覧しようとする情報に対してアクセス権を有するか否かを判定することができる。
  When the user wants to browse information, the 
         
  以上のように、ルールテーブル生成装置200は、業務プロセスの情報の入力に基づき自動的にルールテーブルT160を生成することができる。従って、ルールテーブルの生成に必要なコストを低減することができる。さらに、ヒューマンエラーに起因してバグが発生したりセキュリティホールが生じたりする等の不具合が起こるというリスクを低減することができる。このようにして本発明によって、効率的にルールテーブルを生成することができる。
  As described above, the rule 
上述の実施形態は、代表的な例として説明したが、本発明の趣旨および範囲内で、多くの変更および置換ができることは当業者に明らかである。したがって、本発明は、上述の実施形態によって制限するものと解するべきではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。 Although the above embodiments have been described as representative examples, it will be apparent to those skilled in the art that many changes and substitutions can be made within the spirit and scope of the invention. Therefore, the present invention should not be construed as being limited by the above-described embodiments, and various modifications and changes can be made without departing from the scope of the claims.
例えば、各構成部、各ステップ等に含まれる機能等は論理的に矛盾しないように再配置可能であり、複数の構成部やステップ等を1つに組み合わせたり、或いは分割したりすることが可能である。 For example, the functions included in each component, each step, etc. can be rearranged so that there is no logical contradiction, and multiple components, steps, etc. can be combined or divided into one It is.
         
  また、上述の実施形態において、アクセス情報をSというシンボルとして表記したが、このアクセス情報Sが、アクセス情報の情報提供者(情報提供者コード)および情報の内容(情報種別コード)などの属性を有することは当然である。また、fというシンボルとして表記した各ノードは、業務の種別(業務ID)によって表現することも可能である。これらのコードおよびIDを使用することにより、ルールテーブルT160は、表7に示すようなテーブルとして作成することが可能である。
 
表7において、ルールIDは、アクセス権に係るルールについて設定されたそれぞれ固有のIDである。また、業務IDは各ノードfを示すIDであり、情報提供者コードは、情報の提供者に対応付けられたそれぞれ固有のコードであり、情報種別コードは情報の内容に対応付けられたそれぞれ固有のコードである。表7を参照すると、例えば、「R0001」というIDを有するルールでは、「G0110」という業務IDを有するノードにおいて、「25」というコードに対応する情報提供者から提供された「40」というコードに対応する内容の情報を閲覧することができるというアクセス権があることを示している。 In Table 7, the rule ID is a unique ID set for each rule related to the access right. In addition, the business ID is an ID indicating each node f, the information provider code is a unique code associated with the information provider, and the information type code is unique for each information content. This is the code. Referring to Table 7, for example, in the rule having the ID “R0001”, in the node having the business ID “G0110”, the code “40” provided by the information provider corresponding to the code “25” is used. This indicates that the user has an access right to view corresponding information.
         
10  入力部
20  隣接行列束構造化部
25  対応表束構造化部
30  隣接行列生成部
40  対応表作成部
50  隣接行列読込部
60  アクセス権算出部
70  ルールテーブル管理部
80  フラグチェック部
90  フラグ設定部
100  次ノード探索部
110  戻るノード探索部
120  終了判定部
170  ルールテーブル生成部
180  算出対象ノード指定部
200  ルールテーブル生成装置
1000、1100  アクセス制御装置
101、1001  入力部
102、1002  出力部
103、1003  認証部
104、1004  業務処理部
105、1005  ルール情報検索部
106、1006  情報検索部
T101、T1001  業務権限テーブル
T103、T1003  情報テーブル
T130  隣接行列テーブル
T140  対応表テーブル
T150  フラグ管理テーブル
T160  ルールテーブル
T1002  アクセス権限テーブル
10 
Claims (5)
前記業務プロセスの情報を隣接行列に変換する隣接行列生成部と、
前記隣接行列を束構造化して隣接行列テーブルを作成する隣接行列束構造化部と、
前記業務プロセスの情報に基づき、前記各タスクに対応する前記隣接行列テーブルの各ノードと、前記アクセス情報との対応関係に係る対応表を作成する対応表作成部と、
前記対応表を束構造化して対応表テーブルを作成する対応表束構造化部と、
前記隣接行列テーブルと前記対応表テーブルとに基づいて、前記各ノードのアクセス権を算出するルールテーブル生成部と
を備える、ルールテーブル生成装置。 An input unit that receives input of business process information and access information accessed in each task of the business process based on a workflow;
An adjacency matrix generation unit that converts information of the business process into an adjacency matrix;
An adjacency matrix bundle structuring unit that forms an adjacency matrix table by bundling the adjacency matrix;
Based on the business process information, each node of the adjacency matrix table corresponding to each task, and a correspondence table creating unit that creates a correspondence table related to the access information,
A correspondence table bundle structuring unit for creating a correspondence table by bundling the correspondence table;
A rule table generation device comprising: a rule table generation unit that calculates an access right of each node based on the adjacency matrix table and the correspondence table table.
前記隣接行列テーブルに基づいて、前記アクセス権の算出対象となる算出対象ノードを順次指定する算出対象ノード指定部と、
前記算出対象ノードのアクセス権を、前記算出対象ノードへ遷移する遷移前ノードの算出済みのアクセス権情報と、前記対応表テーブルに記載された前記算出対象ノードに対応する前記アクセス情報との論理和を計算することにより算出するアクセス権算出部と
を備える、請求項1に記載のルールテーブル生成装置。 The rule table generator is
Based on the adjacency matrix table, a calculation target node specifying unit that sequentially specifies calculation target nodes that are the calculation targets of the access right;
The access right of the calculation target node is ORed with the calculated access right information of the pre-transition node that transitions to the calculation target node and the access information corresponding to the calculation target node described in the correspondence table. The rule table generation device according to claim 1, further comprising: an access right calculation unit that calculates by calculating.
前記隣接行列テーブルに基づいて、前記アクセス権を算出したノードから遷移する遷移先ノードを選択し、該遷移先ノードのうち前記アクセス権を算出していないノードの中の1つを算出対象候補ノードとして指定する次ノード探索部と、
前記隣接行列テーブルに基づいて、前記算出対象候補ノードの前記遷移前ノードを選択し、前記選択した遷移前ノードの全てについて前記アクセス権が算出されているとき、前記算出対象候補ノードを、前記算出対象ノードとして指定し、前記選択した遷移前ノードのいずれかについて前記アクセス権が算出されていないとき、前記アクセス権が算出されていない前記遷移前ノードの中の1つを、前記算出対象候補ノードとして指定しなおす戻るノード探索部と
を備える、請求項2に記載のルールテーブル生成装置。 The calculation target node designation unit
Based on the adjacency matrix table, a transition destination node that transitions from the node that has calculated the access right is selected, and one of the transition destination nodes that has not calculated the access right is selected as a calculation target candidate node A next node search unit designated as
When the pre-transition node of the calculation target candidate node is selected based on the adjacency matrix table and the access right is calculated for all of the selected pre-transition nodes, the calculation target candidate node is calculated When the access right is not calculated for any of the selected pre-transition nodes specified as a target node, one of the pre-transition nodes for which the access right is not calculated is selected as the calculation target candidate node The rule table generation device according to claim 2, further comprising: a return node search unit that is designated again.
ワークフローに基づき、業務プロセスの情報と、該業務プロセスの各タスクにおいてアクセスするアクセス情報との入力を受け付けるステップと、
前記業務プロセスの情報を隣接行列に変換するステップと、
前記隣接行列を束構造化して隣接行列テーブルを作成するステップと、
前記業務プロセスの情報に基づき、前記各タスクに対応する前記隣接行列テーブルの各ノードと、前記アクセス情報との対応関係に係る対応表を作成するステップと、
前記対応表を束構造化して対応表テーブルを作成するステップと、
前記隣接行列テーブルと前記対応表テーブルとに基づいて、前記各ノードのアクセス権を算出するステップと
を含む、ルールテーブル生成方法。 A rule table generation method in a rule table generation device,
Receiving an input of business process information and access information accessed in each task of the business process based on the workflow;
Converting the business process information into an adjacency matrix;
Creating an adjacency matrix table by bundling the adjacency matrix;
Creating a correspondence table related to the correspondence between each node of the adjacency matrix table corresponding to each task and the access information based on the information of the business process;
Creating a correspondence table by bundling the correspondence table;
A rule table generating method, comprising: calculating an access right of each node based on the adjacency matrix table and the correspondence table.
ワークフローに基づき、業務プロセスの情報と、該業務プロセスの各タスクにおいてアクセスするアクセス情報との入力を受け付けるステップと、
前記業務プロセスの情報を隣接行列に変換するステップと、
前記隣接行列を束構造化して隣接行列テーブルを作成するステップと、
前記業務プロセスの情報に基づき、前記各タスクに対応する前記隣接行列テーブルの各ノードと、前記アクセス情報との対応関係に係る対応表を作成するステップと、
前記対応表を束構造化して対応表テーブルを作成するステップと、
前記隣接行列と前記対応表テーブルとに基づいて、前記各ノードのアクセス権を算出するステップと
を実行させるためのルールテーブル生成プログラム。 On the computer,
Receiving an input of business process information and access information accessed in each task of the business process based on the workflow;
Converting the business process information into an adjacency matrix;
Creating an adjacency matrix table by bundling the adjacency matrix;
Creating a correspondence table related to the correspondence between each node of the adjacency matrix table corresponding to each task and the access information based on the information of the business process;
Creating a correspondence table by bundling the correspondence table;
A rule table generation program for executing a step of calculating an access right of each node based on the adjacency matrix and the correspondence table.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title | 
|---|---|---|---|
| JP2014026352A JP6109766B2 (en) | 2014-02-14 | 2014-02-14 | Rule table generation device, generation method, and generation program | 
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title | 
|---|---|---|---|
| JP2014026352A JP6109766B2 (en) | 2014-02-14 | 2014-02-14 | Rule table generation device, generation method, and generation program | 
Publications (2)
| Publication Number | Publication Date | 
|---|---|
| JP2015153139A true JP2015153139A (en) | 2015-08-24 | 
| JP6109766B2 JP6109766B2 (en) | 2017-04-05 | 
Family
ID=53895310
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date | 
|---|---|---|---|
| JP2014026352A Expired - Fee Related JP6109766B2 (en) | 2014-02-14 | 2014-02-14 | Rule table generation device, generation method, and generation program | 
Country Status (1)
| Country | Link | 
|---|---|
| JP (1) | JP6109766B2 (en) | 
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title | 
|---|---|---|---|---|
| JP2023504497A (en) * | 2019-12-03 | 2023-02-03 | キンドリル・インク | Microservice change management and analytics | 
| JP7520735B2 (en) | 2021-01-28 | 2024-07-23 | 株式会社日立製作所 | Access control system, access control method and access control program | 
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title | 
|---|---|---|---|---|
| JP2007299341A (en) * | 2006-05-08 | 2007-11-15 | Hitachi Ltd | Document life cycle management apparatus and program, system, and document life cycle management method in the system | 
| JP2010102561A (en) * | 2008-10-24 | 2010-05-06 | Quality Corp | Electronic circular system and electronic circular program | 
- 
        2014
        
- 2014-02-14 JP JP2014026352A patent/JP6109766B2/en not_active Expired - Fee Related
 
 
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title | 
|---|---|---|---|---|
| JP2007299341A (en) * | 2006-05-08 | 2007-11-15 | Hitachi Ltd | Document life cycle management apparatus and program, system, and document life cycle management method in the system | 
| JP2010102561A (en) * | 2008-10-24 | 2010-05-06 | Quality Corp | Electronic circular system and electronic circular program | 
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title | 
|---|---|---|---|---|
| JP2023504497A (en) * | 2019-12-03 | 2023-02-03 | キンドリル・インク | Microservice change management and analytics | 
| JP7488338B2 (en) | 2019-12-03 | 2024-05-21 | キンドリル・インク | Microservices Change Management and Analytics | 
| JP7520735B2 (en) | 2021-01-28 | 2024-07-23 | 株式会社日立製作所 | Access control system, access control method and access control program | 
Also Published As
| Publication number | Publication date | 
|---|---|
| JP6109766B2 (en) | 2017-04-05 | 
Similar Documents
| Publication | Publication Date | Title | 
|---|---|---|
| US20120066178A1 (en) | Systems and methods for construction field management and operations with building information modeling | |
| CA2957674C (en) | Testing insecure computing environments using random data sets generated from characterizations of real data sets | |
| JP2008083798A (en) | Design change range search method, design change range search device, and design change range search system | |
| CN102831167B (en) | XML (extensive makeup language) processing method and device for graph structure | |
| CN109783065A (en) | Generate the method and system of dialog mode user interface | |
| Gui et al. | IFC-based partial data model retrieval for distributed collaborative design | |
| Raslan et al. | A framework for assembling Asset Information Models (AIMs) through permissioned blockchain | |
| CN115080039A (en) | Front-end code generation method, apparatus, computer equipment, storage medium and product | |
| Lin et al. | A Cost‐Effective Planning Graph Approach for Large‐Scale Web Service Composition | |
| Shirole et al. | Transition sequence exploration of UML activity diagram using evolutionary algorithm | |
| JP6109766B2 (en) | Rule table generation device, generation method, and generation program | |
| JP2018078523A (en) | Network management apparatus, method and program | |
| CN107748747A (en) | A kind of information searching method and device | |
| CN109324856A (en) | Menu processing method, device, computer equipment and storage medium | |
| JP2012123675A (en) | Method and system for extracting system component | |
| Gange et al. | Optimal k-level planarization and crossing minimization | |
| JP2004341623A (en) | Security specification creation support device and security specification creation support method | |
| US8965826B2 (en) | Dynamic backjumping in constraint satisfaction problem solving | |
| Hsu et al. | A functional element-naming approach for BIM elements in building envelope systems | |
| JP5358981B2 (en) | Information processing apparatus, information processing apparatus control method, and information processing apparatus control program | |
| JP6075051B2 (en) | Server apparatus, electronic conference system, and program | |
| CN114741730B (en) | A permission management method, device, electronic device and storage medium | |
| JP2012226697A (en) | Wbs creation system and wbs creation method | |
| Admodisastro et al. | An architecture analysis approach for supporting black-box software development | |
| Kong et al. | Design of tourism marketing management system based on SWOT analysis | 
Legal Events
| Date | Code | Title | Description | 
|---|---|---|---|
| A621 | Written request for application examination | 
             Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160210  | 
        |
| A131 | Notification of reasons for refusal | 
             Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20161206  | 
        |
| A521 | Request for written amendment filed | 
             Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170124  | 
        |
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) | 
             Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20170307  | 
        |
| A61 | First payment of annual fees (during grant procedure) | 
             Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170308  | 
        |
| R150 | Certificate of patent or registration of utility model | 
             Ref document number: 6109766 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150  | 
        |
| LAPS | Cancellation because of no payment of annual fees |