[go: up one dir, main page]

CN106713313B - An Access Control Method Based on Origin Graph Abstraction - Google Patents

An Access Control Method Based on Origin Graph Abstraction Download PDF

Info

Publication number
CN106713313B
CN106713313B CN201611197934.4A CN201611197934A CN106713313B CN 106713313 B CN106713313 B CN 106713313B CN 201611197934 A CN201611197934 A CN 201611197934A CN 106713313 B CN106713313 B CN 106713313B
Authority
CN
China
Prior art keywords
graph
access
node
nodes
abstract
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201611197934.4A
Other languages
Chinese (zh)
Other versions
CN106713313A (en
Inventor
许国艳
杨少松
王诗玉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hohai University HHU
Original Assignee
Hohai University HHU
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 Hohai University HHU filed Critical Hohai University HHU
Priority to CN201611197934.4A priority Critical patent/CN106713313B/en
Publication of CN106713313A publication Critical patent/CN106713313A/en
Application granted granted Critical
Publication of CN106713313B publication Critical patent/CN106713313B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于起源图抽象的访问控制方法,1、定义PROV模型,利用PROV模型使用户对各类系统中数据的起源信息进行标准化描述,然后根据PROV模型建立起源图;2、在步骤一得到的起源图的基础上利用节点分组的概念,提出闭包、扩展、替换、删除四种抽象化操作,并进行形式化定义和完善,得到符合PROV约束条件的抽象图;3、定义一系列的访问规则,利用访问规则对步骤二中得到的抽象图进行标记并提出评估策略;4、将步骤三中得出的标记后的节点的集合经过最优分区算法和图转换算法最终得到对应用户对应权限访问的访问视图。本发明解决了数据隐私中访问控制的问题,根据用户的权限对应不同的访问视图,从而使得访问结果既保证安全性又保证完全性。

Figure 201611197934

The invention discloses an access control method based on the abstraction of the origin graph. 1. Define a PROV model, use the PROV model to enable users to standardize the description of the origin information of data in various systems, and then build the origin graph according to the PROV model; 2. In On the basis of the origin graph obtained in step 1, using the concept of node grouping, four abstract operations of closure, extension, replacement and deletion are proposed, and formal definition and improvement are carried out to obtain an abstract graph that meets the PROV constraints; 3. Definition A series of access rules, use the access rules to mark the abstract graph obtained in step 2 and propose an evaluation strategy; 4. The set of marked nodes obtained in step 3 is finally obtained through the optimal partition algorithm and graph transformation algorithm. The access view corresponding to the user's corresponding permission access. The invention solves the problem of access control in data privacy, and corresponds to different access views according to the user's authority, so that the access result can ensure both security and completeness.

Figure 201611197934

Description

Access control method based on origin graph abstraction
Technical Field
The invention belongs to the technical field of data privacy protection management, and particularly relates to an access control method based on origin graph abstraction.
Background
With the continuous development of large data, the process of querying origin information may face the risk of inadvertently revealing sensitive information, and therefore data security and privacy protection are important. Sensitive information can be abstracted by abstracting the origin graph to generate a user access view, so that an access control mechanism of a user is realized, data security and privacy data are guaranteed, and the integrity of the information is guaranteed.
Disclosure of Invention
The purpose of the invention is as follows: aiming at the problems in the prior art, the invention provides an access control method based on origin graph abstraction, which is used for solving the problems of data security and private data leakage and incapability of ensuring information integrity in user access control.
The invention discloses an access control method based on origin graph abstraction,
the method comprises the following steps: defining a data model, namely a PROV model, according to a W3C origin working group, utilizing the PROV model to enable a user to carry out standardized description on origin information of data in various systems, and extracting the relationship among the entity En, the activity Act, the used and wasGeneratedBy from the PROV model to establish an origin map based on the PROV model;
step two: on the basis of the origin graph obtained in the step one, four kinds of abstract operation operations of closing, expanding, replacing and deleting are proposed, formal definition and perfection are carried out, and an abstract graph meeting PROV constraint conditions is obtained;
step three: defining a series of access rules, including an access target, an access result and access elements, and formally defining the elements, marking the abstract graph obtained in the step two by using the access rules, and proposing two evaluation strategies of refusing priority and allowing priority;
step four: and finally obtaining an access view of the access of the corresponding user corresponding authority by the marked node set obtained in the third step through an optimal partitioning algorithm and a graph conversion algorithm.
Further, the node grouping in the second step is an editing operation for defining a graph, namely how to remove the specified node from the original source graph to generate a new effective source graph; the abstract graph refers to a series of nodes specified by a user are regarded as a group and then replaced by a new abstract node, and meanwhile, a new graph is obtained by modifying the relationship between the nodes and the new abstract node.
Further, the step of constructing the abstract map conforming to the PROV constraint condition in the step two is specifically as follows:
step 1.1: the PROV provenance graph research only comprises the relationships between an entity En and an active Act and between a used and a wasGeneratedBy, the operation is carried out as a homogeneous group aiming at the fact that abstract nodes are all of the same type, and the operation is carried out as a heterogeneous group aiming at the fact that the abstract nodes are not of the same type;
wherein, the homogeneous grouping replaces the new abstract node and the original node through four operations of closure, expansion, replacement and deletion, and forms the mutual relation between the new nodes;
step 1.2: the agent nodes at the periphery of the origin graph are analyzed and processed, and the packet operation related to the agent nodes is divided into three cases:
A) homogeneous packets containing only Ag proxy types: replacing the new abstract node and the original node through four operations of closure, expansion, replacement and deletion, and forming the interrelation between the new nodes;
B) heterogeneous packets containing two types, entity En and active Act: when the new abstract node type is an entity En, modifying the proxy node to ensure that the relationship between proxy nodes adjacent to the abstract node is wat; when the new abstract node type is the active Act, modifying the proxy node to ensure that the relationship between the proxy nodes adjacent to the abstract node is waw;
C) the heterogeneous packet contains three types of entity En, active Act and agent Ag: when the new abstract node type is an entity En, modifying the proxy node to ensure that the relationship between proxy nodes adjacent to the abstract node is wat; when the new abstract node type is the active Act, modifying the proxy node to ensure that the relationship between the proxy nodes adjacent to the abstract node is waw; when the new abstract node type is the proxy Ag, mapping the proxy relation to the abstract graph;
step 1.3: deleting some isolated proxy nodes which are generated in the step and are isolated from other nodes;
step 1.4: further modifying the abstract diagram through the following four constraint conditions to obtain a final correct abstract diagram;
the four constraints are:
1) if an entity is generated by two or more activities, then these activities need to occur simultaneously;
2) the entity must be generated before it can be used;
3) the activity using entity must occur in the process of the activity;
4) the activity generation entity must occur in the course of the activity occurring.
The access rule in the third step is further composed of an access target, an access result, and a conversion element:
a) accessing a target: the access target element is used for defining which resources a specific user can access under which conditions, and consists of a theme matching the rule, a record and a limiting condition and a use range for accessing the element;
wherein Subject refers to a set of accessing users;
recording Record refers to accessing the resource;
the constraint restiction is used for defining a series of conditions allowed to be used by the rule;
the use Scope defines whether the rule is convertible or not; the convertible representation indicates that the rule applies to all matching nodes and their ancestor nodes in the graph, and the non-convertible representation indicates that the rule applies only to matching nodes in the graph.
b) Accessing a result: the access result element is used to specify an expected result when the policy applies and the rule matches part of the information in the origin graph; the results are divided into four categories:
absolute allowed limits means that the user can access all information in the graph without being influenced by other rules;
deny access means that part of the information in the map cannot be accessed by the user of the subject;
allowing the Necessary permission if Necessary means that a certain constraint condition is required for the user of the subject to access partial information, so that an explicit access permission policy is required;
the permission access Permit is used for describing that when no other rule refuses to access the element, the user of the subject can access partial information in the graph;
c) conversion element
The conversion element allows a data manager to specify the manner in which the origin graph is converted, specifies which nodes need to be hidden and the specific operation applied to the nodes, generates a conversion graph according to the authority of the user, and obtains a query result according to the graph; wherein the conversion element is composed of three parts: a conversion type, a conversion level, and a converted element tag.
Further, the optimal partition algorithm in the fourth step includes the following specific steps: firstly, calculating an external reason set and an external influence set of each element in a set of abstract nodes to obtain an empty reason set and an empty influence set, and then arranging the elements in a descending order according to the sum of the external reason and the number of the external influence elements of each element; and traversing the sorted set, selecting a node as a seed node, traversing elements behind the set, judging whether the two nodes can meet the condition of the same partition, if so, adding the node into the set as the element of the same partition, and deleting the element in the set.
Further, the specific steps of the step four middle map conversion algorithm are as follows: if one element abstraction level in the partition is hidden, or all elements of the partition are marked to be empty, or the partition is an empty reason set or an empty result set, deleting the partition, otherwise, carrying out replacement operation, namely taking marks of all nodes of the partition as marks of a new abstraction node to obtain a required access view.
Aiming at the problem of access control in data privacy protection, the invention introduces an access control method which is analyzed respectively from three aspects of origin graph abstraction, access control model establishment and access view generation, and the feasible and effective verification of the method is carried out.
Compared with the prior art, the invention has the advantages that: the problem of access control in data privacy is solved, and different access views are corresponding to the authority of the user, so that the access result not only ensures safety, but also ensures completeness.
Drawings
FIG. 1 is a flow chart of the present invention;
FIG. 2 is a framework of an access control method based on an origin graph in an embodiment;
FIG. 3 is an origination diagram in an embodiment;
FIG. 4 is a modified diagram of a proxy node in a heterogeneous packet including two types, namely, an entity En and an active Act, in an embodiment;
FIG. 5 is a modified diagram of a proxy node in a heterogeneous packet including three types of entity En, active Act, and proxy Ag in the embodiment;
FIG. 6 is a comparison graph of evaluation strategies;
FIG. 7 is a patient diagnostic record provenance diagram of an embodiment;
FIG. 8 is a graph of the results of marking and partitioning in an embodiment;
fig. 9 is an access control view in the embodiment.
Detailed Description
The invention is further elucidated with reference to the drawings and the detailed description, the flow being shown in fig. 1.
An access control method based on an origin graph abstract model comprises the following steps: firstly, establishing an origin abstract model based on node grouping based on an origin graph constructed by a PROV model; secondly, on the basis of a PGgu/ea original graph, four operations of closure, expansion, replacement and deletion are provided, formal definition and perfection are carried out, and an abstract graph meeting PROV constraint conditions is obtained; then, an access control model based on abstraction of a PROV (provider oriented programming) provenance graph is provided, a frame graph is shown in FIG. 2, access rules and elements thereof are formally defined, two evaluation strategies of priority rejection and priority permission are provided, and implementation schemes thereof are discussed in detail; finally, the view of the access of the corresponding authority of the corresponding user is obtained according to the graph abstraction algorithm.
The origin graph abstraction refers to a series of nodes specified by a user as a group and then replaced by a new abstract node, and a new graph is obtained by modifying the relationship between the nodes (including the new abstract node).
The role of origin graph abstraction can be roughly divided into two categories: firstly, ensuring the safety of origin information in the data exchange or data access process, and abstracting sensitive information or private data to generate an access view corresponding to a corresponding authority user; and secondly, the requirements of different users on different attention degrees of origin information are met, some users need to know complete origin information, some users only need to know partial important information, the importance definitions of different users on the information are different, and different access views can be generated according to the attention degrees of the users through the criticality of the nodes and the origin graph abstraction technology.
The simplest abstraction is to delete a node and the edges associated with the node directly. However, abstracting in this way does not generally guarantee the validity of the generated graph. Therefore, a series of operations need to be defined to convert the origin graph so as to ensure the effectiveness of generating the graph, and therefore the invention provides an origin abstract model based on node grouping.
1. PGgu/ea origin map abstraction
(1) Homogeneous grouping
The main task of the node grouping is to define the editing operation of the graph, i.e. how to get a given node from the graph G e PGgu/eaRemoving to generate a new effective PROV graph G' E PGgu/ea
The main idea of the grouping operation is: using (V, E) E PGgu/ea(V represents a set of nodes and E represents a set of edges between nodes) and a subset of the set of nodes V
Figure BDA0001188442180000051
Rewriting the graph to generate a new graph G' E PGgu/ea. The rewriting is VgrAs a group, is replaced by a new node, simultaneously with VgrThe associated relationship is also replaced with a new relationship.
Closing operation: suppose the origin graph G ═ V, E ∈ PGgu/eaAnd has a set
Figure BDA0001188442180000052
For any two vertex pairs v in the seti,vj∈VgrIf there is a v in graph GiTo vjConnected directed edges, then the set will be
Figure BDA0001188442180000063
Defined as all points on the path. VgrThe path closure operation in graph G is defined as:
Figure BDA0001188442180000061
and (3) expanding operation: suppose that graph G ∈ PG ═ V, E ∈gu/eaAnd the set t belongs to { En, Act }.
Figure BDA0001188442180000062
In the process of generating the abstract graph, nodes in the abstract set in the original graph are replaced by a new node, the relationship among partial nodes in the graph needs to be deleted, and meanwhile, a series of relationships need to be introduced to connect the abstract nodes with the nodes related to the abstract nodes in the graph.
Let graph G be (V, E),
Figure BDA0001188442180000064
is a set of nodes requiring abstraction, v, obtained by an extension operationnewRepresenting the replaced abstract node. The replace function is to V'grSubstitution to vnewAnd v isnewThe nodes are connected to their associated nodes in the graph according to a certain pattern.
Due to V'grIs replaced by a new node, therefore V 'in graph G needs to be deleted'grAnd V \ V'grThe following classifications define these relationships.
1) V is to beout(V'gr) Is defined as V 'to be deleted in graph G'grOf (2), i.e. from V'grIs led out to V \ V'grThe set of middle edges is defined as:
vout(V′gr)={(v,v′)|v∈V′gr,v′∈V\V′gr} (3)
2) v is to bein(V'gr) Is defined as V 'to be deleted in graph G'grI.e. from V \ V'grIs introduced to V'grA set of edges defined as:
vin(V′gr)={(v,v')|v'∈V′gr,v∈V\V′gr} (4)
3) v is to beint(V'gr) Is defined as V 'to be deleted in graph G'grInner side of (2), V'grEdges between internal nodes, defined as:
vint(V′gr)={(v,v')|v,v'∈V′gr} (5)
due to the addition of new nodes v in the generated abstract graphnewIn order to ensure the connectivity and validity of the graph, v is requirednewAnd V \ V'grAdd edges of appropriate relationships between them.
1) V'out(V′gr) Defined as requiring an added leading edge, i.e. from vnewIs led out to V \ V'grThe set of middle edges is defined as:
Figure BDA0001188442180000071
2) v'in(V′gr) Defined as requiring an added lead-in edge, i.e. from V \ V'grIntroduction into vnewA set of edges defined as:
Figure BDA0001188442180000072
the replace function assigns each to vout(V'gr) Is replaced with the same type of edge arc (v)newV) while each belonging to vin(V'gr) Is replaced by an edge arc (v, v) of the same typenew) Those belonging to vintIs followed by node V'grAre deleted altogether.
We can easily prove that the relationship types of the nodes and edges in the new abstract graph obtained by the replacement operation are correct. From the above, it is clear that V 'is obtained by the expanding operation'grAll end points in the set are of type t ∈ { En, Act }, and the newly constructed node vnewIs also of type t e { En, Act }, and is therefore defined by vnewFrom V'grWithout generating node type inconsistency(ii) a condition; meanwhile, because the newly introduced edges are all replaced by the same type of edges, the edges with inconsistent types cannot be introduced. It can be seen that the substitution operation ensures the correctness of the type. The following formally defines the replacement operation:
and (3) replacement operation: in the graph G, V isgrSubstitution to vnewIs given by the formula
Figure BDA0001188442180000073
vout(Vgr)、vin(Vgr)、vint(Vgr) For edges to be deleted in the figure
v'out(Vgr)、v'in(Vgr) For newly introduced edges in the figure
And (3) deleting operation: let graph G be (V, E),
Figure BDA0001188442180000074
is the set of points to be deleted. Generating a new origin graph G ' ═ (V ', E ') by the delete operation, where:
Figure BDA0001188442180000081
by the above definitions, we can define PGgu/eaHomogeneous grouping operation in the model:
homogeneous grouping operation: let graph G ═ V, E ∈ PGgu/ea,VgrE.g. V is a set of nodes of the same type, VnewIs a VgrType of new node (v)new=type(Vgr) Homogenous grouping is defined as:
Grouphom(G,Vgr,vnew)=replace(extend(pclos(Vgr,V),V,type(Vgr)),vnew,G) (10)
(2) heterogeneous grouping
The heterogeneous packet is VgrGrouping operation when nodes of different types are contained in the network, because type (V) cannot be passedgr) The function is obtainedThe type of the node, and therefore the type of the replacement node, needs to be specified, and the abstract graph generated by the specified type will be different. We call the heterogeneous grouping operation t-grouping, where t ∈ { En, Act }. When the specified type is En, the system is called e-grouping, and when the specified type is Act, the system is called a-grouping.
Heterogeneous grouping operation: let graph G ═ V, E ∈ PGgu/ea,Vgr∈V,t∈{En,Act},vnewIf the node is a newly designated node of t type, the heterogeneous group is defined as:
Group(G,Vgr,vnew,t)=replace(extend(pclos(Vgr,V),V,t),vnew,G) (11)
2、PGgu+/eaAgorigin graph abstraction
We add proxy (Ag) type nodes and relationships related thereto to PGgu/eaThe study is carried out in the figure. The proxy node is an important component of the PROV model, which can be a human or a software system, that is responsible for the execution of activities. The relationship between the entity and the agent is wasAttributedto (wat), denoted as
Figure BDA0001188442180000082
Figure BDA0001188442180000083
The relationship between the activity and the agent is wasAssociatedwith (waw), denoted as
Figure BDA0001188442180000084
Figure BDA0001188442180000091
The relationship between the agents is actideOnBehalfOf (abo), which is expressed as
Figure BDA0001188442180000092
It follows that these new relationships are all binary relationships (the PROV model allows abo relationships to contain an additional optional activity, which we have temporarily left out for simplicity), so that the new origin graph can still be represented as a directed graph G (V, E), where V (En ∪) isAct ∪ Ag, E is set of edges, we use the notation PGgu+/eaAgRepresenting a graph containing all node types and relationships. In the same way, PGgu+/eaAgThe graph formed by the model is called PGgu+/eaAgFigure (a).
It can be seen from the visual observation of fig. 3 that all edges associated with a proxy node always serve as the end point of a directed edge, and the proxy nodes (shaded) are all on the outer layer of the directed graph, so the proxy nodes can be regarded as part of the periphery of the origin graph. Therefore, we break the packet operations associated with the proxy into the following three parts:
1)
Figure BDA0001188442180000093
this is the case for homogeneous packets. At this time, it is necessary to increase
Figure BDA0001188442180000094
Grouping operation, ag-grouping operation and PG, because the agents are only related by a delegation relationshipgu/eaHomogeneous grouping operation in the model is similar, and PG can be obtained through analysisgu/eaDefinition of homogeneous grouping operations in model for PGsgu+/eaAgThe ag-grouping operation in the model is fully applicable.
2)
Figure BDA0001188442180000095
This is the case for heterogeneous packets. Nodes involved in abstraction are all inside the origin graph, and these nodes may be related to proxy nodes through waw or wat relations, so that the PG needs to be pairedgu/eaHeterogeneous grouping operations in the model are modified appropriately.
In order to ensure that no relationship is introduced in error, partial relationships need to be deleted when a replacement operation is performed. As shown in fig. 4 (a), to avoid introducing a wrong waw relationship, we delete it in the process of performing an e-grouping operation; similarly, in (b) of FIG. 4, we delete the wat relation during the execution of the a-grouping operation. In (c1) and c (2) in fig. 4, the illegal waw relationship is deleted after the e-grouping operation is performed.
In summary, when the new node type is En, that is, after the e-grouping operation is performed, the relationship between the proxy nodes adjacent to the abstract node can only be wat; when the new node type is Act, i.e. after performing an a-grouping operation, the relationship between the agent nodes adjacent to the abstract node can only be waw. The replacement operation is redefined as follows:
Figure BDA0001188442180000101
3)
Figure BDA0001188442180000103
this is the case for heterogeneous packets. All types of nodes are involved at this time. However, since the proxy nodes are all at the outer layer of the graph, this situation can be considered as an e-grouping or a-grouping operation that may involve a combined node type of proxy nodes, but the new abstract node cannot be a proxy type.
When V isgrWhen { e, ag3}, performing an e-grouping operation results in the result shown in fig. 5. Pclos (V) by closure operationgr) Get intermediate results (b) in fig. 5, and the final abstract results are shown in fig. 5 (c). Obviously, the abo (ag4, ag3) relationship should not be mapped onto the final graph. Analysis shows that the main reason causing the result is to replace theta 'in the function'in(V′gr) Introduces an erroneous relationship.
Next, we modify the replace operation to ensure that no false relationships are introduced. To avoid introducing false dependencies we are on θ'in(V′gr) The function is modified and the new definition is as follows:
Figure BDA0001188442180000102
i.e. mapping proxy relationships into abstract graphs only if the abstract node is of the proxy type.
Through the two new replacement operations defined above, it is ensured that no error relationship is introduced into the generated origin graph, but some relationships are simply deleted, so that some nodes in the graph G' are isolated from other nodes in the graph, isolated nodes are generated, and a simple function is provided to delete isolated proxy nodes.
Removing isolated nodes: let graph G ═ V, E ∈ PGgu+/eaAgThe isolated nodes in the graph can be represented as: isolated (g) { V ∈ V | type (V) ═ Ag ^ Lo ∈ V. ((V', V)) ∈ E ∈ V ∈ E }, the definition of removing the orphaned proxy node is as follows:
remIsolated(V,E)=(V\isolated(G),E) (14)
3. source graph abstraction satisfying timing constraints
A legal PROV graph needs to satisfy two types of constraints simultaneously: type constraints and timing constraints. In the process of defining the node grouping operation, only formal type constraints are considered, and timing constraints are not considered.
Briefly, timing constraints include the following conditions:
(1) if an entity is generated by two or more activities, then these activities need to occur simultaneously;
(2) the entity must be generated before it can be used;
(3) the activity using entity must occur in the process of the activity;
(4) the activity generation entity must occur in the course of the activity occurring.
In order to ensure that the generated abstract graph meets the time sequence constraint condition (1), the time sequence condition of the graph generated by the e-grouping operation needs to be verified, if an abstract node in the generated abstract graph is related to a plurality of active nodes, the active nodes related to the abstract node need to be grouped, then a-grouping operation is carried out, and the nodes are abstracted into one active node. The specific definition is as follows:
strict grouping operation: let graph G ═ V, E ∈ PGgu+/eaAg,Vgr∈V,vnewIs a new node of En type, G ' (V ', E ') -Group (G, V)gr,vnew,t),
Figure BDA0001188442180000111
Is node v on graph G' and newly generatednewA set of associated active nodes, then
Figure BDA0001188442180000112
When the grouping operation is a homogenous a-grouping operation, strict t-grouping coincides with t-grouping.
Loops may be introduced in the process of abstracting the origin graph, which will have a great influence on the origin graph. To better address this problem, we redefine the usage events and generation events of the abstract nodes.
The abstract node generates an event: let VgrE.g. V and VnewIs replacing VgrGenerates activity a, then:
Figure BDA0001188442180000113
next, we define an abstract node vnewOf use event, i.e. VgrThe event used first in the node is specifically defined as follows:
the abstract node uses events: let Vgre.V, G ═ V ', E' is a new abstract graph, VnewE.V' is a new abstract node. If there is an activity a ∈ V', cause used (a, V)new) If true, then:
Figure BDA0001188442180000121
although the validity of the relationship in the generated graph can be ensured well by the above definitions, it is understood from both definitions that the original graph V is required if the use of the abstract node and the generation relationship are established at the same timegrAll entities in (a) can be used after being generated, and therefore, additional constraint relations need to be added.
An access control model: 1. an access rule is composed of an access target, an access result and a conversion element:
(1) accessing a target
The access target element is used to define which resources a particular user can access under what circumstances, and consists of the subject of the matching rule, the record, and the restrictions (optional) and scope of use (optional) to access the element.
Topic refers to a collection of accessing users.
Record (Record) refers to an access resource.
Constraints (constraints) are used to define a series of conditions that the rule allows to be used.
The usage Scope (Scope) defines whether the rule is convertible or not. The convertible representation indicates that the rule applies to all matching nodes and their ancestor nodes in the graph, and the non-convertible representation indicates that the rule applies only to matching nodes in the graph.
(2) Accessing results
The access result element is used to specify the expected result that is obtained when the policy applies and the rule matches part of the information in the provenance graph. The results are divided into four categories:
absolute permission (Absolute permit) means that the user can access all the information in the graph without being affected by other rules.
Denial of access (Deny) means that some of the information in the graph cannot be accessed by the user of the topic.
Allowing (recessary permission) when Necessary means that the user of the subject needs certain constraints to access part of the information, and therefore needs an explicit access permission policy.
The allowed access (Permit) is used to describe that the user of the topic may access part of the information in the graph when no other rule denies access to the element.
(3) Conversion element
The transformation element allows the data manager to specify in what manner the origin graph is to be transformed, and specifies which nodes need to be hidden and the specific operations to apply to those nodes. And generating a conversion graph according to the authority of the user, and obtaining a query result according to the graph.
The conversion element consists of three parts: a conversion type, a conversion level, and a converted element tag.
2. The evaluation policy algorithm is not only used to determine whether a resource is accessible, but also to construct a view that satisfies the user's security constraints. During the evaluation of the rules, a set of nodes associated with the policy are generated, and then the nodes are used to generate the security access view. The evaluation strategy is to mark the origin graph by using a series of access rules, the order of the access rules is different, and the processing mode is different, so that a denial priority evaluation strategy and an allowance priority evaluation strategy are proposed:
(1) denial of priority evaluation policy
The main idea of the rejection priority evaluation strategy is as follows: firstly, marking nodes which accord with rules in an original graph G according to absolute access permission, access rejection, access permission if necessary and access permission rules, then marking uncovered nodes, and finally generating an access view, wherein the specific steps are shown in (a) in an algorithm flow chart 6 and are as follows; a) using an absoutePermit function to mark nodes in the original graph G which accord with the fully-allowed access rule;
b) because the processes of rejecting the access rule and allowing the access rule if necessary are the same, the marking of the nodes matching the two rules can be completed by using the same function denynecePermit ();
c) function updateForDeny) is used to implement the extension of the matching nodes and the permit () function is used to label the nodes in the graph that meet the allowed access rules.
d) For the deny-first access control policy, all uncovered nodes deny access, so all uncovered nodes are added to the set R and the abstraction level is defined as hidden, while the node information is marked as empty, which is done by the completeR (G, dlevs, dlabels, R, covered) function.
e) And generating an accessible view according to the marking information and the set of the disallowed access nodes by using a viewGeneration function.
(2) Enabling prioritized evaluation of policies
The allow priority assessment policy is about the same idea as the deny priority assessment policy, but the order of rule matching is different. And allowing the priority evaluation policy to mark nodes in the graph which accord with the rules according to the sequence of absolutely allowing access, allowing access if necessary, allowing access and denying access rules, and finally generating an access view. Since the uncovered nodes in the permission preference policy are allowed to access, the marking is not required to be carried out again.
The algorithm flowchart is shown in fig. 6 (b), and includes the following specific steps:
a) using an absoutePermit function to mark nodes in the original graph G which accord with the fully-allowed access rule;
b) the necPermit () function is to record the abstraction level and the label simultaneously according to the node which allows the rule to mark the graph and does not allow the access when necessary;
c) the function permit () and the deny () are respectively used for marking the node which allows the access rule to be matched and marking the node which does not allow the access rule to be matched;
d) since the uncovered nodes in the permission preference evaluation strategy are allowed to be accessed, the marking does not need to be carried out again, namely, the viewGeneration function only needs to generate the accessible view according to the marking information and the set of nodes which are not allowed to be accessed
And (3) generating an access view: reasonably partitioning a set R of nodes needing abstraction to ensure that the generated abstract view maintains the relationship among the nodes, and providing three algorithms:
(1) optimal partitioning algorithm
First, several concepts are involved in the partitioning process:
external causes (external causes), i.e. the reason the current node is the external node.
External effects (external effects) that the current node is generated by an external node.
The constraint is a boolean expression that is satisfied by all elements of the partition defined for computing the optimal partition. The following are two constraints:
RESTR.1: nodes in a set are not allowed to have soft dependencies.
RESTR.2: all nodes in a partition have the same evaluation attributes.
The method comprises the steps of obtaining a set of nodes needing abstraction according to an evaluation strategy, carrying out appropriate partition simplified abstraction processes on the nodes, and providing an optimal partition algorithm. The main idea of the algorithm is divided into two stages:
in the first stage, an external reason set and an external influence set of each element in the R are calculated firstly, so that an empty reason set and an empty influence set are obtained, and then the elements are arranged in a descending order according to the sum of the external reason and the number of the external influence elements of each element.
And in the second stage, traversing the sorted set, selecting a node as a seed node, traversing elements behind the set, judging whether the two nodes can meet the condition of the same partition, if so, adding the node into the set as the element of the same partition, and deleting the element in the set.
(2) Graph transformation algorithm
The graph transformation algorithm refers to a process of abstracting or hiding all the partitions according to the marking information to generate an abstract graph. The main idea of the algorithm is that if one element abstraction level in a partition is hidden, or all elements of the partition are marked to be empty, or the partition is an empty reason set or an empty result set, the partition is deleted, otherwise, a replacement operation is performed, that is, the marks of all nodes of the partition are used as the marks of a new abstraction node, and a required access view is obtained.
(3) Graph generation algorithm
Calculating the optimal partition condition of a user, obtaining two limit conditions according to limit rules 1 and 2 provided in the optimal partition algorithm, and calling an optimal partition function optimalPartition () and a graph transformation function () to obtain an access view.
And (3) experimental verification: the experiment is mainly divided into three steps:
(1) description of origin map
(2) Marking and partitioning a graph according to access rules and evaluation policies
(3) Generating abstract drawings
The origin graph is described first. As shown in fig. 7, the evolution process of the electronic medical record of the two-visit experience of a patient is described.
The first visit was made by a general practitioner (ag3) for the patient (ag1) and the diagnosis was recorded in detail by the EHR system (ag 2). First, a new project creation process (a1) is performed based on the patient's previous electronic medical records (v19-e1), resulting in a new electronic medical record (v20-e 2). After the patient is diagnosed in detail, the doctor prescribes the patient (e3) and a blood test chart (e4), and updates the electronic medical record to generate a new version of the record (v21-e 5). The laboratory technician (ag5) prepares the instrument according to the blood test table while taking measurements with the laboratory system (ag4) (a3), finally generates a laboratory condition report (e6), while notifying the blood test report creation activity (a 5). The blood test report creation activity is used to generate a blood test report (e7) and a new electronic medical record (v 22-e 9). Clinical trial investigators (ag6) generated electronic case report forms (e8) using laboratory condition reports (e6) and blood test reports (e 7).
The second visit was treated by the general practitioner (ag7) for the patient (ag7) and the diagnostic procedure was recorded in detail by the EHR system (ag 8). First, a new project creation process (a6) is performed based on the patient's previous electronic medical records (v 12-e 9), resulting in a new electronic medical record (v 23-e 10). Subsequently, the physician uses a decision support system (DSS Tool ag10) to obtain a series of diagnostic cues (e11) through the new medical record (v 23-e 10), and then uses these cues to compare (a8) with the clinical outcome database (e12) in the system, thereby providing the physician with a diagnostic recommendation (e13) through which the physician can obtain the final diagnostic outcome (e 15). The doctor generates a new prescription according to the diagnosis result (e16) and updates the electronic medical record system to generate a new electronic medical record (v 24-e 17).
Next, when the user is a patient, the upper graph is marked and partitioned according to the defined access rules and evaluation strategies, and the result of partitioning is shown in FIG. 8.
And obtaining a set R of points needing abstraction according to the access rules and the rejection priority evaluation strategy, wherein the set R is { a3, a4, a7, a8, e6, e8, e11, e12, e13, ag4, ag5, ag6 and ag10 }. And obtaining the external reasons and the external influence sets of the R sets according to the default causal relationship, as shown in the table 1. The partitioning result is { { e11, e12, e13, a7, a8, ag10}, { a4, e8, ag6}, { a3, e6, ag4, ag5} } obtained according to the partitioning algorithm.
TABLE 1 set of external causes and external influences for partitioning elements
Figure BDA0001188442180000161
Finally, a user access view is obtained according to the result obtained by partitioning and the marking information thereof, as shown in fig. 9.
According to the access rule, the patient has no right to access any information related to the automatic recommendation, so the parts of the automatic recommendation are marked in the marking stage, the abstraction level is set as hidden, the contents are deleted in the finally generated access view, the a9 and the a6 are directly connected, and the relation is defined as c, namely the causal relation exists between the two nodes.
According to the access rule, the patient does not have the right to access origin information in the experimental process, but the patient knows the process, so that the information of the experimental part is marked in the marking stage, the abstraction level is set as abstraction, the node is divided into two parts of contents of a clinical experiment and a Laboratory through partitioning, the contents are respectively abstracted into a clinical Trial node and a Laboratory node, the nodes are connected through a causal relationship, according to the abstraction model, the clinical Trial node and the e7 node are still in a used relationship, and the clinical Trial node and the e4 node are still in a used relationship.
The above description is only an example of the present invention and is not intended to limit the present invention. All equivalents which come within the spirit of the invention are therefore intended to be embraced therein. Details not described herein are well within the skill of those in the art.

Claims (6)

1. An access control method based on origin graph abstraction,
the method comprises the following steps: defining a data model, namely a PROV model, according to a W3C origin working group, utilizing the PROV model to enable a user to carry out standardized description on origin information of data in various systems, and extracting the relationship among an entity En, an activity Act, an Agent, used and wasGeneratedBy from the PROV model to establish an origin map based on the PROV model;
step two: on the basis of the initial diagram obtained in the step one, four kinds of abstract operations of closure, expansion, replacement and deletion are provided by using the concept of node grouping, formal definition and perfection are carried out, and an abstract diagram which accords with the PROV constraint condition is obtained;
step three: defining a series of access rules, wherein the access rules consist of an access target, an access result and a conversion element, marking the abstract graph obtained in the step two by using the access rules, and proposing two evaluation strategies of refusing priority and allowing priority;
step four: and finally obtaining an access view of the access of the corresponding user corresponding authority by the marked node set obtained in the third step through an optimal partitioning algorithm and a graph conversion algorithm.
2. The method of claim 1, wherein the method comprises: the node grouping in the step two is an editing operation for defining the graph, namely how to remove the designated node from the original source graph to generate a new effective source graph; the abstract graph refers to a series of nodes specified by a user are regarded as a group and then replaced by a new abstract node, and meanwhile, a new graph is obtained by modifying the relationship between the nodes and the new abstract node.
3. The method of claim 1, wherein the method comprises: the construction steps of the abstract graph conforming to the PROV constraint condition in the step two are specifically as follows:
step 1.1: the PROV provenance graph research only comprises the relationships between an entity En and an active Act and between a used and a wasGeneratedBy, the operation is carried out as a homogeneous group aiming at the fact that abstract nodes are all of the same type, and the operation is carried out as a heterogeneous group aiming at the fact that the abstract nodes are not of the same type;
wherein, the homogeneous grouping replaces the new abstract node and the original node through four operations of closure, expansion, replacement and deletion, and forms the mutual relation between the new nodes;
step 1.2: the agent nodes at the periphery of the origin graph are analyzed and processed, and the packet operation related to the agent nodes is divided into three cases:
A) homogeneous packets containing only Ag proxy types: replacing the new abstract node and the original node through four operations of closure, expansion, replacement and deletion, and forming the interrelation between the new nodes;
B) heterogeneous packets containing two types, entity En and active Act: when the new abstract node type is an entity En, modifying the proxy node to ensure that the relationship between proxy nodes adjacent to the abstract node is wat; when the new abstract node type is the active Act, modifying the proxy node to ensure that the relationship between the proxy nodes adjacent to the abstract node is waw;
C) the heterogeneous packet contains three types of entity En, active Act and agent Ag: when the new abstract node type is an entity En, modifying the proxy node to ensure that the relationship between proxy nodes adjacent to the abstract node is wat; when the new abstract node type is the active Act, modifying the proxy node to ensure that the relationship between the proxy nodes adjacent to the abstract node is waw; when the new abstract node type is the proxy Ag, mapping the proxy relation to the abstract graph;
step 1.3: deleting some isolated proxy nodes which are generated in the step and are isolated from other nodes;
step 1.4: further modifying the abstract diagram through the following four constraint conditions to obtain a final correct abstract diagram;
the four constraints are:
1) if an entity is generated by two or more activities, then these activities need to occur simultaneously;
2) the entity must be generated before it can be used;
3) the activity using entity must occur in the process of the activity;
4) the activity generation entity must occur in the course of the activity occurring.
4. An access control method based on origin graph abstraction according to one of claims 1 to 3, characterized by: the access rule in the third step is composed of an access target, an access result and a conversion element:
a) accessing a target: the access target element is used for defining which resources a specific user can access under which conditions, and consists of a theme matching the rule, a record and a limiting condition and a use range for accessing the element;
wherein Subject refers to a set of accessing users;
recording Record refers to accessing the resource;
the constraint restiction is used for defining a series of conditions allowed to be used by the rule;
the use Scope defines whether the rule is convertible or not; the rule is applicable to all matching nodes and ancestor nodes thereof in the graph in a convertible way, and the rule is applicable to only the matching nodes in the graph in an untransformable way;
b) accessing a result: the access result element is used to specify an expected result when the policy applies and the rule matches part of the information in the origin graph; the results are divided into four categories:
absolute allowed limits means that the user can access all information in the graph without being influenced by other rules;
deny access means that part of the information in the map cannot be accessed by the user of the subject;
allowing the Necessary permission if Necessary means that a certain constraint condition is required for the user of the subject to access partial information, so that an explicit access permission policy is required;
the permission access Permit is used for describing that when no other rule refuses to access the element, the user of the subject can access partial information in the graph;
c) conversion element
The conversion element allows a data manager to specify the manner in which the origin graph is converted, specifies which nodes need to be hidden and the specific operation applied to the nodes, generates a conversion graph according to the authority of the user, and obtains a query result according to the graph; wherein the conversion element is composed of three parts: a conversion type, a conversion level, and a converted element tag.
5. The method of claim 4, wherein the method comprises: the optimal partition algorithm in the fourth step comprises the following specific steps: firstly, calculating an external reason set and an external influence set of each element in a set of abstract nodes to obtain an empty reason set and an empty influence set, and then arranging the elements in a descending order according to the sum of the external reason and the number of the external influence elements of each element; and traversing the sorted set, selecting a node as a seed node, traversing elements behind the set, judging whether the two nodes can meet the condition of the same partition, if so, adding the node into the set as the element of the same partition, and deleting the element in the set.
6. The method of claim 1, wherein the method comprises: the image conversion algorithm in the fourth step comprises the following specific steps: if one element abstraction level in the partition is hidden, or all elements of the partition are marked to be empty, or the partition is an empty reason set or an empty result set, deleting the partition, otherwise, carrying out replacement operation, namely taking marks of all nodes of the partition as marks of a new abstraction node to obtain a required access view.
CN201611197934.4A 2016-12-22 2016-12-22 An Access Control Method Based on Origin Graph Abstraction Expired - Fee Related CN106713313B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611197934.4A CN106713313B (en) 2016-12-22 2016-12-22 An Access Control Method Based on Origin Graph Abstraction

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611197934.4A CN106713313B (en) 2016-12-22 2016-12-22 An Access Control Method Based on Origin Graph Abstraction

Publications (2)

Publication Number Publication Date
CN106713313A CN106713313A (en) 2017-05-24
CN106713313B true CN106713313B (en) 2020-05-05

Family

ID=58938749

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611197934.4A Expired - Fee Related CN106713313B (en) 2016-12-22 2016-12-22 An Access Control Method Based on Origin Graph Abstraction

Country Status (1)

Country Link
CN (1) CN106713313B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107679099B (en) * 2017-09-12 2021-07-30 中国科学院软件研究所 Access control element graph construction method, policy description method, access control determination method and framework
CN111125375B (en) * 2019-12-21 2023-04-07 复旦大学 Lineage graph summarization method based on node structure similarity and semantic proximity
CN111291405A (en) * 2020-01-17 2020-06-16 北京工业大学 A data traceability method for personal privacy data leakage
CN111597665B (en) * 2020-05-15 2023-05-23 天津科技大学 Hierarchical network embedding method based on network partition

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102378974A (en) * 2009-04-01 2012-03-14 微软公司 Providing access to a data item using access graphs
CN103823885A (en) * 2014-03-07 2014-05-28 河海大学 Data provenance dependence relation analysis model-based data dependence analysis method

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8786597B2 (en) * 2010-06-30 2014-07-22 International Business Machines Corporation Management of a history of a meeting
US20160048542A1 (en) * 2014-08-14 2016-02-18 Tamr, Inc. Data curation system with version control for workflow states and provenance

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102378974A (en) * 2009-04-01 2012-03-14 微软公司 Providing access to a data item using access graphs
CN103823885A (en) * 2014-03-07 2014-05-28 河海大学 Data provenance dependence relation analysis model-based data dependence analysis method

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
PRBAC:一种基于角色的起源访问控制模型;马晓 等;《山东理工大学学报(自然科学版)》;20160331;全文 *
Research of Provenance Storage in Cloud Computing Environment;ZhangxuanLuo、GuoyanXu;《2014 IEEE 13th International Conference on Trust, Security and Privacy in Computing and Communications》;20141231;全文 *
Storing, Indexing and Querying Large Provenance Data Sets as RDF Graphs in Apache HBase;Artem Chebotko 等;《2013 IEEE Ninth World Congress on Services》;20131231;全文 *

Also Published As

Publication number Publication date
CN106713313A (en) 2017-05-24

Similar Documents

Publication Publication Date Title
Sion et al. An architectural view for data protection by design
Mouratidis et al. When security meets software engineering: a case of modelling secure information systems
Giorgini et al. Requirements engineering for trust management: model, methodology, and reasoning
CN106713313B (en) An Access Control Method Based on Origin Graph Abstraction
Liu et al. Cross-department collaborative healthcare process model discovery from event logs
de Oliveira et al. AC-ABAC: Attribute-based access control for electronic medical records during acute care
US12182004B2 (en) Debugging data privacy pipelines using sample data
US20230281342A1 (en) Granting entitlements to log data generated by a data privacy pipeline to facilitate debugging
Vivas et al. A methodology for security assurance-driven system development
US12072999B2 (en) Correctness-preserving security for graph databases
Amato et al. A security and privacy validation methodology for e-health systems
US20240184542A1 (en) Initiating data privacy pipelines using reusable templates
Sun et al. A blockchain-based E-healthcare system with provenance awareness
Kouzapas et al. Privacy by typing in the $\pi $-calculus
Breaux et al. Mapping legal requirements to IT controls
Beckers et al. Combining goal-oriented and problem-oriented requirements engineering methods
Schlegel et al. The Missing Piece of the ABAC Puzzle: A Modeling Scheme for Dynamic Analysis.
Faßbender et al. A problem-, quality-, and aspect-oriented requirements engineering method
Laan Incremental verification of physical access control systems
Vanezi et al. Towards GDPR compliant software design: A formal framework for analyzing system models
Bertino et al. Generative policies for coalition systems-a symbolic learning framework
He et al. Ensuring compliance between policies, requirements and software design: A case study
Aziz et al. Model-based refinement of security policies in collaborative virtual organisations
Thion et al. Representation and reasoning on role-based access control policies with conceptual graphs
Hussain et al. Guideline-enabled data driven clinical knowledge model for the treatment of oral cavity cancer acquired through a refined knowledge acquisition method

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20200505