KR100888678B1 - Method and apparatus of formal specification based on xml and recording medium using this - Google Patents

Method and apparatus of formal specification based on xml and recording medium using this Download PDF

Info

Publication number
KR100888678B1
KR100888678B1 KR1020070132657A KR20070132657A KR100888678B1 KR 100888678 B1 KR100888678 B1 KR 100888678B1 KR 1020070132657 A KR1020070132657 A KR 1020070132657A KR 20070132657 A KR20070132657 A KR 20070132657A KR 100888678 B1 KR100888678 B1 KR 100888678B1
Authority
KR
South Korea
Prior art keywords
model
access control
xml
formal
alzebra
Prior art date
Application number
KR1020070132657A
Other languages
Korean (ko)
Inventor
최진영
김일곤
김현석
이지연
Original Assignee
고려대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 고려대학교 산학협력단 filed Critical 고려대학교 산학협력단
Priority to KR1020070132657A priority Critical patent/KR100888678B1/en
Application granted granted Critical
Publication of KR100888678B1 publication Critical patent/KR100888678B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself

Landscapes

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

Abstract

A method and an apparatus of formal specification based on an XML and a recording medium using the same are provided to indicate a hierarchical access control region of an XML document in a formal method and to check over whether or not the access control for the XML document is performed accurately. An approach control model generating unit generates an access control model by using a user access control rule for an XML document, which is configured in hierarchical tree structure format, depending on a scheme of an XML document and a path designation language(310). A process algebra formal model generating unit generates a process algebra formal model by converting an access control model based on am algebra language(320). When a query occurs concerned with an XML document, a query converter converts a user query based on the algebra language, specifies the user query as a request for the access control model and transmits the information corresponding to the query for an XML document to a user(330).

Description

XML 기반의 접근 통제 모델의 정형 명세 방법, 그 장치 및 이를 기록한 기록 매체{Method and Apparatus of formal specification based on XML and Recording medium using this}Method and Apparatus of formal specification based on XML and Recording medium using this method of WML-based access control model

본 발명은 XML 문서의 정보 보안에 관한 것으로서, 특히 XML 문서의 자료 구조 형태를 정형 명세 모델로 명세하여, 주어진 쿼리에 대하여 접근 통제 모델이 의도한 바대로 XML 문서에 대한 접근 통제를 정확히 수행할 수 있도록 XML 기반의 접근 통제 모델을 정형 명세하는 XML 기반의 접근 통제 모델의 정형 명세 방법, 그 장치 및 이를 기록한 기록 매체를 제공하는 것이다.The present invention relates to information security of an XML document. In particular, the data structure of an XML document is specified in a formal specification model, so that a given query can accurately perform access control on the XML document as intended by the access control model. To provide a formal specification method of the XML-based access control model, its apparatus, and a recording medium recording the same.

확장성 표시 언어(eXtensible Markup Language:XML)는 하이퍼 텍스트 마크업 언어(Hyper Text Markup Language:HTML)와 일반화된 표준 마크업 언어(Standard Generalized Markup Language:SGML)의 단점을 개선하여 만들어진 차세대 인터넷 전자 문서 표준이다. XML은 플랫폼에 독립적이며, 문서 정보의 전송과 교환이 쉽고, 문서의 풍부한 의미를 그대로 나타낼 수 있다는 장점이 있다. 또한 XML은1998년 2월에 W3G에서 권고안으로 채택되어, 이후 XML로 이루어진 데이터를 저장하고, 이를 관리 검색하는 XML의 데이터 관리 시스템에 관한 연구가 있어 왔다.EXtensible Markup Language (XML) is the next generation of Internet electronic documents that improves on the shortcomings of Hyper Text Markup Language (HTML) and Standard Generalized Markup Language (SGML). Standard. XML has the advantage of being platform independent, easy to transfer and exchange document information, and express the rich meaning of the document. In addition, XML was adopted as a recommendation by the W3G in February 1998. Since then, there has been a study on the XML data management system that stores and manages the data composed of XML.

XML 기반의 웹 서비스 환경에서는 다양한 상품코드, 온도, 특정 문서 등과 같은 데이터들은 사용자 간에 송수신하게 된다. In an XML-based web service environment, data such as various product codes, temperatures, and specific documents are transmitted and received between users.

이는, 특정 클라이언트가 서버에 쿼리(Query)를 전송한 후, 상기 쿼리에 매핑되는 중요한 XML 문서를 수신하는 형태로 이루어진다.This is done by sending a query to a server and then receiving an important XML document mapped to the query.

이에, 악의적인 사용자가 중요 XML 문서에 접근하는 것을 방지하기 위하여 서버에 위치하며, 문서 접근에 대한 규칙을 정한 접근통제모델을 통해 XML 문서의 중요 데이터 노드에 대한 접근을 통제하게 된다. Therefore, in order to prevent malicious users from accessing important XML documents, they are located on the server, and the access control model that defines the rules for document access controls the access to important data nodes of XML documents.

그러나, 복수의 접근통제규칙이 존재하는 경우, 접근통제규칙의 의미론 및 규칙의 복잡성으로 인하여, 예기치 않게 악의적인 공격자가 접근할 수 있는 오류가 발생할 수 있다.However, when there are a plurality of access control rules, an error that may be unexpectedly accessed by a malicious attacker may occur due to the semantics of the access control rules and the complexity of the rules.

실제로, XML은 트리 자료 구조의 특성상, 계층적 자료 구조의 형태를 취하고 있다. In fact, XML takes the form of a hierarchical data structure due to the nature of the tree data structure.

또한, XML 문서 보안은 기존의 비 계층적 데이터의 보안과는 달리, XML 트리 노드에 대한 개별적인 보안뿐만 아니라, 전체 XML 문서에 대한 보안성을 제공하고 있다.In addition, XML document security, unlike conventional non-hierarchical data security, provides security for the entire XML document as well as individual security for the XML tree nodes.

기존의 데이터들은 비 계층적인 데이터 형태로 명세하고 검증되는 반면에, XML 기반의 문서는 센서로부터 얻어지는 데이터들은 기존 데이터와는 다르게 네트웍을 통하여 연속적으로 생성되고, 전달되는 데이터를 효율적으로 관리 처리하기 위한 시스템에 대한 관심이 증대되고 있다.Existing data is specified and verified as non-hierarchical data type, while XML-based documents are different from the existing data, and data generated from sensors are continuously generated through a network and used to efficiently manage the transmitted data. There is a growing interest in systems.

실제로, XML 기반의 웹 서비스 분야의 활성화와 더불어, 정보를 요청한 사라 용자가 XML 트리로 구성된 정보에서 허가받은 데이터 영역에만 접근하도록 하기 위한 보안 문제점이 대두되고 있다.Indeed, with the activation of the XML-based web services field, security problems are emerging to allow Sarah users who request information to access only the data area authorized in the information composed of XML trees.

즉, XML 트리 정보는 일반 데이터 정보와 달리 트리 형태로 구성되어 있기 때문에 데이터의 접근을 정의하기 위한 보안 규칙이 트리의 데이터 노드들을 표현할 수 있어야 한다.That is, because XML tree information is composed of tree form unlike general data information, security rule to define data access should be able to express data nodes of tree.

이러한 트리의 데이터 노드들의 보안성, 예를 들어 읽기 허가, 읽기 거부 등을 표현하기 위해 데이터 베이스 영역에서는 경로 지정 언어가 새롭게 개발되었다.In order to express the security of the data nodes of the tree, for example, read permission and read rejection, a routing language has been newly developed in the database area.

예를 들어, 비밀 정보 XML 문서

Figure 112007090735993-pat00001
에 대한 쿼리
Figure 112007090735993-pat00002
가 주어졌을 때, 정보 요청자가 접근할 수 있는 계층적인 XML 트리 경로를 표현할 수 있다.For example, a secret XML document
Figure 112007090735993-pat00001
Query for
Figure 112007090735993-pat00002
When given, it can represent a hierarchical XML tree path that information requesters can access.

이는 비계층적인 데이터 구조와 달리 XML 데이터의 계층적 구조로 인하여 비밀성 및 권한허가 문제점을 분석하기 매우 어려운 특성이 있다Unlike non-hierarchical data structures, it is very difficult to analyze confidentiality and authorization problems due to the hierarchical structure of XML data.

예를 들어, XML 데이터 보안은 다음과 같은 이유로 인하여 일반 데이터 보안 문제점 분석에 비해 어려운 특징이 있다.For example, XML data security is difficult compared to general data security problem analysis for the following reasons.

첫 번째로, 접근 통제 규칙은 트리 경로를 표현하기 위해 경로 표현식을 이용하여 표현한다.First, access control rules use path expressions to represent tree paths.

두 번째로, 비계층적 데이터와는 달리, XML 노드는 부모 노드와 자식 노드 간의 구조적인 특성이 있기 때문에 정보 요청자가 허가되어 접근할 수 있는 데이터 영역 또한 구조적인 특성을 가지고 있다.Second, unlike non-hierarchical data, because XML nodes have structural characteristics between parent and child nodes, the data area that information requestors are permitted to access also has structural characteristics.

세 번째로, 유닉스와 같은 일반 파일 시스템에서는 모든 데이터에 대한 접근 통제 규칙이 정의되어야 한다. 그러나, XML 문서에서는 모든 노드에 대한 접근 통제 규칙을 명시할 필요가 없다.Third, in general file systems such as Unix, access control rules for all data must be defined. However, XML documents do not need to specify access control rules for all nodes.

따라서, XML 문서의 접근 통제 규칙을 명시하기 위한 지금까지의 연구 방향은 자연어 형태에 의존하여 왔기 때문에 명세 언어의 모호성으로 인하여 접근 통제 규칙의 명확성 및 데이터 비밀성 문제점을 분석하는데 비효율적인 문제점을 안고 있다.Therefore, the research direction to specify the access control rules of XML documents has been dependent on natural language forms, and therefore, there is an inefficient problem in analyzing the clarity and data confidentiality problems of access control rules due to the ambiguity of the specification language. .

또한, XML 문서에 대한 접근통제규칙의 복잡성과 오류로 인하여 허가받지 않은 사용자가 특정 중요 데이터 노드 영역에 접근할 수 있는 보안 문제점이 야기될 수 있다.In addition, the complexity and errors of access control rules for XML documents can cause security problems that could allow unauthorized users to access certain critical data node areas.

이와 같이, 종래의 XML 기반의 접근 통제 모델에 대한 정형 명세 방법은 XML 문서를 비계층적 데이터 형태로 명세하고 검증함으로써, XML 문서의 계층적 보안 개념을 정확히 반영하지 못하고, XML 문서의 보안성을 분석하지 못하기 때문에 접근 통제 규칙의 명확성 및 데이터 비밀성 문제점을 분석하는데 비효율적이며, XML 문서에 대한 접근통제규칙의 복잡성과 오류로 인하여 허가받지 않은 사용자가 특정 중요 데이터 노드 영역에 접근할 수 있는 보안상의 문제점이 있다.As such, the formal specification method of the conventional XML-based access control model does not accurately reflect the hierarchical security concept of the XML document by specifying and verifying the XML document in the form of non-hierarchical data. Inefficiency in analyzing clarity and data confidentiality issues of access control rules because it cannot be analyzed, and the security that allows unauthorized users to access certain critical data node areas due to the complexity and error of access control rules for XML documents There is a problem.

상기 첫 번째 과제를 해결하기 위하여 본 발명은,The present invention to solve the first problem,

XML 문서의 자료 구조 형태를 프로세스 알제브라 언어를 이용하여 XML 문서의 계층적인 접근통제영역을 정형적으로 표현하고, 주어진 쿼리에 대하여 접근 통제 모델이 의도한 바대로 XML 문서에 대한 접근 통제를 정확히 수행하는지를 검증할 수 있는 XML 기반의 접근 통제 모델의 정형 명세 방법을 제공한다.Processes the structure of XML document data using the Alzebra language formally expresses hierarchical access control areas of XML documents, and performs access control on XML documents exactly as intended by the access control model for a given query. It provides a formal specification method of an XML-based access control model that can verify the application.

한편, 상기 두 번째 과제를 해결하기 위하여 본 발명은,On the other hand, the present invention to solve the second problem,

상기 XML 기반의 접근 통제 모델의 정형 명세 방법을 이용한 XML 기반의 접근 통제 모델의 정형 명세 장치를 제공한다.A formal specification apparatus for an XML based access control model using the formal specification method of the XML based access control model is provided.

그리고, 상기 세 번째 과제를 해결하기 위하여 본 발명은,And, in order to solve the third problem, the present invention,

상기 XML 기반의 접근 통제 모델의 정형 명세 방법을 컴퓨터에서 수행할 수 있도록 프로그램으로 기록된 기록매체를 제공한다. Provides a recording medium recorded by the program to perform a formal specification method of the XML-based access control model on a computer.

상기 첫 번째 과제를 해결하기 위하여 본 발명은,The present invention to solve the first problem,

계층적 트리 구조 형태로 구성된 XML 문서에 대하여 상기 XML 문서의 스키마 및 경로 지정 언어에 따른 사용자별 접근 통제 규칙을 이용하여 접근 통제 모델을 생성하는 단계; 상기 접근 통제 모델을 프로세스 알제브라 언어로 변환하여 상기 XML 문서의 특정 노드의 속성 이름을 대수값을 표현한 프로세스 알제브라 정형 모델을 생성하는 단계; 상기 XML 문서에 대하여 사용자의 쿼리가 발생하면, 상기 사 용자의 쿼리를 프로세스 알제브라 언어로 변환하여 상기 접근 통제 모델에 대한 요구사항으로 명세하고, 상기 사용자에게 상기 프로세스 알제브라 정형 모델에 따라 상기 XML 문서에 대한 쿼리에 대응되는 정보를 전송하는 단계; 및 상기 프로세스 알제브라 정형 모델을 FDR 모델 체킹 도구를 이용하여 상기 XML 문서에 대한 보안 검증을 수행하는 단계를 포함하는 XML 기반의 접근 통제 모델의 정형 명세 방법을 제공한다.Generating an access control model for an XML document having a hierarchical tree structure using a user-specific access control rule according to a schema and a routing language of the XML document; Converting the access control model into a process Alzebra language to generate a process Alzebra formal model representing algebraic values of attribute names of specific nodes of the XML document; When a user's query occurs on the XML document, the user's query is converted into a process Alzebra language and specified as a requirement for the access control model, and the user is provided with the XML according to the process Alzebra formal model. Transmitting information corresponding to a query for a document; And performing a security verification on the XML document using the process Alzebra formal model using an FDR model checking tool.

한편, 상기 경로 지정 언어는 XPath 경로 지정 언어를 포함하는 것을 특징으로 한다.On the other hand, the routing language is characterized in that it comprises an XPath routing language.

그리고, 상기 프로세스 알제브라 정형 모델을 생성하는 단계는, 상기 접근 통제 모델을 상기 경로 지정 언어를 이용하여 오토마타형 스키마 모델로 변환하는 단계; 상기 오토마타형 스키마 모델을 프로세스 알제브라 언어로 정형 명세하여 스키마 정형 모델을 생성하는 단계; 및 상기 스키마 정형 모델을 프로세스 알제브라 언어를 이용하여 프로세스 알제브라 정형 모델을 생성하는 단계를 포함한다.The generating of the process Alzebra formal model may include converting the access control model into an automata schema model using the routing language; Formalizing the automata type schema model in a process Alzebra language to generate a schema typed model; And generating a process Alzebra formal model using the schema formal model using a process Alzebra language.

그리고, 상기 스키마 정형 모델

Figure 112007090735993-pat00003
는 상기 XML 문서를 트리 구조를 가지는 복수 개의 노드로 분할하였을 경우, XML 트리의 루트 노드로 전이하기 위한 입력 알파벳
Figure 112007090735993-pat00004
, 비 말단 노드 집합
Figure 112007090735993-pat00005
, 전이 함수
Figure 112007090735993-pat00006
, 상기 입력 알파벳의 초기 상태
Figure 112007090735993-pat00007
와 상기 비 말단 노드 집합
Figure 112007090735993-pat00008
으로 구성된 상태 집합
Figure 112007090735993-pat00009
, 상기 XML 트리의 엘리번트 이름을 나타내는 입력 알파벳
Figure 112007090735993-pat00010
및 속성 이름의 집합
Figure 112007090735993-pat00011
를 포 함하는 튜플 (
Figure 112007090735993-pat00012
,
Figure 112007090735993-pat00013
,
Figure 112007090735993-pat00014
,
Figure 112007090735993-pat00015
,
Figure 112007090735993-pat00016
,
Figure 112007090735993-pat00017
)로 구성되는 것을 특징으로 한다.And, the schema formal model
Figure 112007090735993-pat00003
Is an input alphabet for transitioning to the root node of the XML tree when the XML document is divided into a plurality of nodes having a tree structure.
Figure 112007090735993-pat00004
, Non-end node set
Figure 112007090735993-pat00005
, Transition function
Figure 112007090735993-pat00006
, Initial state of the input alphabet
Figure 112007090735993-pat00007
And the set of non-terminal nodes
Figure 112007090735993-pat00008
Set of states
Figure 112007090735993-pat00009
An input alphabet representing an element name of the XML tree
Figure 112007090735993-pat00010
And set of attribute names
Figure 112007090735993-pat00011
Tuples containing
Figure 112007090735993-pat00012
,
Figure 112007090735993-pat00013
,
Figure 112007090735993-pat00014
,
Figure 112007090735993-pat00015
,
Figure 112007090735993-pat00016
,
Figure 112007090735993-pat00017
It is characterized by consisting of).

또한, 상기 오토마타형 스키마 모델은, 트리구조를 가지는 상기 XML 문서의 특정 노드의 속성 이름을 대수 표현으로 전환하여, 상기 대수 표현으로 전환된 속성값이 참일 경우에만 다음 하위 노드의 질의를 수행하도록 구성되는 것을 특징으로 한다.In addition, the automata type schema model is configured to convert an attribute name of a specific node of the XML document having a tree structure into an algebraic expression and perform a query of a next lower node only when the attribute value converted to the algebraic expression is true. It is characterized by.

그리고, 상기 사용자별 접근 통제 규칙은 상기 사용자에 대한 상기 XML 문서의 특정 정보에 대하여 허용 또는 거부로 명시되는 것을 특징으로 한다.The access control rule for each user may be specified as allow or deny for specific information of the XML document for the user.

상기 사용자별 접근 통제 규칙은, 상기 접근 통제 규칙 중 특정 규칙에 있어서 충돌이 발생하는 경우, 허용 중복 또는 거부 중복 알고리즘에 따라 상기 사용자별 접근 통제 규칙이 결정되는 것을 특징으로 한다.The access control rule for each user is characterized in that the access control rule for each user is determined according to an allowable duplicate or deny duplicate algorithm when a conflict occurs in a specific rule among the access control rules.

상기 두 번째 과제를 해결하기 위하여 본 발명은,The present invention to solve the second problem,

계층적 트리 구조 형태로 구성된 XML 문서에 대하여 상기 XML 문서의 스키마 및 경로 지정 언어에 따른 사용자별 접근 통제 규칙을 이용하여 접근 통제 모델을 생성하는 접근 통제 모델 생성부; 상기 접근 통제 모델을 프로세스 알제브라 언어로 변환하여 프로세스 알제브라 정형 모델을 생성하는 프로세스 알제브라 정형 모델 생성부; 상기 XML 문서에 대하여 사용자의 쿼리가 발생하면, 상기 사용자의 쿼리를 프로세스 알제브라 언어로 변환하여 상기 접근 통제 모델에 대한 요구사항으로 명세하고, 상기 사용자에게 상기 프로세스 알제브라 정형 모델에 따라 상기 XML 문서에 대한 쿼리에 대응되는 정보를 전송하는 쿼리 변환부; 및 상기 프로세스 알 제브라 정형 모델을 FDR 모델 체킹 도구를 이용하여 상기 XML 문서에 대한 보안 검증을 수행하는 보안 검증부를 포함하는 XML 기반의 접근 통제 모델의 정형 명세 장치를 제공한다.An access control model generation unit for generating an access control model for an XML document having a hierarchical tree structure using a user-specific access control rule according to a schema and a routing language of the XML document; A process Alzebra formal model generation unit for generating a process Alzebra formal model by converting the access control model into a process Alzebra language; When a user's query occurs on the XML document, the user's query is converted into a process Alzebra language and specified as a requirement for the access control model, and the user is provided with the XML document according to the process Alzebra formal model. A query converter for transmitting information corresponding to the query for the query; And a security verification unit configured to perform security verification on the XML document using the process Al-zebra formal model using an FDR model checking tool.

여기서, 상기 경로 지정 언어는 XPath 경로 지정 언어를 포함하는 것을 특징으로 한다.Here, the routing language includes an XPath routing language.

한편, 상기 프로세스 알제브라 정형 모델 생성부는 상기 접근 통제 모델을 상기 경로 지정 언어를 이용하여 오토마타형 스키마 모델로 변환하는 오토마타 스키마 모델 변환 모듈; 상기 오토마타형 스키마 모델을 프로세스 알제브라 언어로 정형 명세하여 스키마 정형 모델을 생성하는 스키마 정형 모델 생성 모듈을 포함하며, 상기 스키마 정형 모델에 프로세스 알제브라 언어를 적용하여 프로세스 알제브라 정형 모델을 생성하는 것을 특징으로 한다.On the other hand, the process Alzebra formal model generation unit Automata schema model conversion module for converting the access control model into an automata schema model using the routing language; And a schema formal model generation module for formalizing the automata type schema model in a process Alzebra language to generate a schema formal model, and generating a process Alzebra formal model by applying the process Alzebra language to the schema formal model. It features.

그리고, 상기 스키마 정형 모델

Figure 112007090735993-pat00018
는 상기 XML 문서를 트리 구조를 가지는 복수 개의 노드로 분할하였을 경우, XML 트리의 루트 노드로 전이하기 위한 입력 알파벳
Figure 112007090735993-pat00019
, 비 말단 노드 집합
Figure 112007090735993-pat00020
, 전이 함수
Figure 112007090735993-pat00021
, 상기 입력 알파벳의 초기 상태
Figure 112007090735993-pat00022
와 상기 비 말단 노드 집합
Figure 112007090735993-pat00023
으로 구성된 상태 집합
Figure 112007090735993-pat00024
, 상기 XML 트리의 엘리번트 이름을 나타내는 입력 알파벳
Figure 112007090735993-pat00025
및 속성 이름의 집합
Figure 112007090735993-pat00026
를 포함하는 튜플 (
Figure 112007090735993-pat00027
,
Figure 112007090735993-pat00028
,
Figure 112007090735993-pat00029
,
Figure 112007090735993-pat00030
,
Figure 112007090735993-pat00031
,
Figure 112007090735993-pat00032
)로 구성되는 것을 특징으로 한다.And, the schema formal model
Figure 112007090735993-pat00018
Is an input alphabet for transitioning to the root node of the XML tree when the XML document is divided into a plurality of nodes having a tree structure.
Figure 112007090735993-pat00019
, Non-end node set
Figure 112007090735993-pat00020
, Transition function
Figure 112007090735993-pat00021
, Initial state of the input alphabet
Figure 112007090735993-pat00022
And the set of non-terminal nodes
Figure 112007090735993-pat00023
Set of states
Figure 112007090735993-pat00024
An input alphabet representing an element name of the XML tree
Figure 112007090735993-pat00025
And set of attribute names
Figure 112007090735993-pat00026
Tuples containing
Figure 112007090735993-pat00027
,
Figure 112007090735993-pat00028
,
Figure 112007090735993-pat00029
,
Figure 112007090735993-pat00030
,
Figure 112007090735993-pat00031
,
Figure 112007090735993-pat00032
It is characterized by consisting of).

아울러, 상기 오토마타형 스키마 모델은 트리구조를 가지는 상기 XML 문서의 특정 노드의 속성 이름을 대수 표현으로 전환하여, 상기 대수 표현으로 전환된 속성값이 참일 경우에만 다음 하위 노드의 질의를 수행하도록 구성되는 것을 특징으로 한다.In addition, the automata schema model is configured to convert an attribute name of a specific node of the XML document having a tree structure into an algebraic expression and to perform a query of the next lower node only when the attribute value converted to the algebraic expression is true. It is characterized by.

한편, 상기 사용자별 접근 통제 규칙은 상기 사용자에 대한 상기 XML 문서의 특정 정보에 대하여 허용 또는 거부로 명시되는 것을 특징으로 한다.On the other hand, the user-specific access control rule is characterized in that specified as allow or deny for the specific information of the XML document for the user.

그리고, 상기 사용자별 접근 통제 규칙 중 특정 규칙에 있어서 충돌이 발생하는 경우, 허용 중복 또는 거부 중복 알고리즘에 따라 상기 사용자별 접근 통제 규칙이 결정되는 것을 특징으로 한다.When a collision occurs in a specific rule among the access control rules for each user, the access control rule for each user is determined according to an allowable overlap or a rejection overlap algorithm.

상기 세 번째 과제를 해결하기 위하여 본 발명은,The present invention to solve the third problem,

상기 XML 기반의 접근 통제 모델의 정형 명세 방법을 컴퓨터에서 수행할 수 있도록 프로그램으로 기록된 기록매체를 제공한다.Provides a recording medium recorded by the program to perform a formal specification method of the XML-based access control model on a computer.

본 발명에 의하면, 국제 공통 평가 기준에서 정의한 고등급의 보안 제품 개발을 위해서 필요한 정형 명세 및 정형 검증에 요구에 맞추어 웹 서비스 환경에서 XML 문서의 비밀성을 보장하기 위해 사용되는 접근 통제 규칙의 보안성을 계층적으로 정형 검증할 수 있도록 XML 문서를 정형 명세할 수 있고, 고등급의 XML 기반의 접근 통제 보안제품의 보안성 향상 및 인허가 획득에 기여하고, 국가 보안 기술력 및 보안 제품의 국제 경쟁력을 향상 시킬 수 있는 효과가 있다.According to the present invention, the security of access control rules used to ensure the confidentiality of XML documents in a web service environment in accordance with the requirements for formal specification and formal verification required for the development of high-level security products defined by the International Common Criteria. XML documents can be formalized for hierarchical formal verification, contributing to improving security and obtaining licenses of high-level XML-based access control security products, and improving national security technology and international competitiveness of security products. It can be effected.

XML 기반의 웹 서비스 환경에서는, 서버에 쿼리를 전송한 후, 해당 쿼리에 맵핑되는 중요 XML 문서를 수신하게 된다.In an XML-based web service environment, you send a query to a server and then receive an important XML document that maps to the query.

이에 악의적인 사용자가 중요 XML 문서에 접근하는 것을 방지하기 위하여 서버에 위치한 접근 통제 모델을 통하여 XML 문서의 중요 데이터 노드에 대한 접근을 통제하게 된다.In order to prevent malicious users from accessing important XML documents, the access control model located on the server controls access to important data nodes of XML documents.

그러나, 복수의 접근 통제 규칙이 존재하는 경우, 접근 통제 규칙의 의미론 및 규칙의 복잡성으로 인하여, 예기치 않게 악의적인 공격자가 접근할 수 있는 오류를 일으킬 수 있다.However, if there are multiple access control rules, the semantics of the access control rules and the complexity of the rules can cause errors that can be unexpectedly accessed by a malicious attacker.

본 발명에서는, XML 문서의 계층적 자료 구조 형태를 정형 명세 모델로 명세하여 주어진 쿼리에 대하여 접근통제 모델이 의도한 대로 XML 문서에 대한 접근 통제를 정확히 수행하는지를 검증하는 XML 기반의 접근 통제 모델의 정형 명세 방법, 그 장치 및 이를 기록한 기록매체를 제공하는 것이다.In the present invention, the structure of the XML-based access control model that specifies the hierarchical data structure of the XML document as a formal specification model and verifies whether the access control model correctly performs the access control for the given query as intended. It is to provide a method of specification, a device and a recording medium recording the same.

본 발명은 계층적 트리 자료 구조 형태로 구성된 XML 문서, 스키마(scheme), 및 접근 통제 규칙으로 구성된 접근 통제 모델과 XPath 경로 지정 언어로 구성된 쿼리를 프로세스 알제브라 정형모델로 변환하는 기술로 구성된다.The present invention consists of an access control model consisting of an XML document, a schema, and access control rules in the form of a hierarchical tree data structure, and a technique for converting a query composed of an XPath routing language into a process Alzebra formal model.

즉, 중요 정보 데이터를 포함하고 있는 XML 문서가 존재하였을 경우, 사용자의 쿼리에 대한 접근통제모델의 보안 규칙 규칙 실행을 통해 중요 보안 데이터의 기밀성이 정확히 보장되고 있는지를 검증하는 기술이다.In other words, when there is an XML document that contains important information data, it is a technology that verifies whether the confidentiality of important security data is guaranteed by executing the security rule rules of the access control model for the user's query.

첫 번째 단계에서는, 주어진 XML 문서, 스키마 및 접근 통제 규칙을 접근 통제 모델에 대한 프로세스 알제브라 언어로 변환한다.In the first step, a given XML document, schema, and access control rules are translated into the process Alzebra language for the access control model.

두 번째 단계에서는, 사용자의 쿼리를 프로세스 알제브라 언어로 변환하여 접근 통제 모델에 대한 요구사항으로 명세한다.In the second step, the user's query is translated into the process Alzebra language and specified as a requirement for the access control model.

세 번째 단계에서는, 기존의 모델 체킹 알고리즘을 이용하여 정형화된 접근통제모델에 주어진 요구사항 모델이 만족되는지를 검증한다.In the third step, the existing model checking algorithm is used to verify that the requirements model given in the formalized access control model is satisfied.

요구사항이 만족되지 않는 경우, 반례(counterexample)를 이용하여 접근통제모델의 보안성을 분석한다.If the requirements are not met, we use a counterexample to analyze the security of the access control model.

즉, 본 발명은 트리 계층 자료구조를 가지는 XML 문서, 쿼리, XML 경로 지정 언어, 접근 통제 규칙을 오토마타 이론을 기반으로 프로세스 알제브라 명세 언어로 정형명세하고, 모델체킹 알고리즘을 이용하여 XML 문서에 주어진 쿼리가 접근통제 보안 규칙을 만족할 수 있도록 정형 명세하는 기법을 제공한다.That is, the present invention formalizes an XML document, a query, an XML routing language, and an access control rule with a tree hierarchical data structure in the process Alzebra specification language based on the automata theory, and uses the model checking algorithm. Provides a mechanism to formally specify the query to satisfy the access control security rules.

XPath (XML Path Language )는 W3C의 표준으로 확장성 생성언어(XML) 문서의 구조를 통해 경로 상에 지정한 구문을 사용하여 항목을 배치하고 처리하는 방법을 기술하는 언어로서. XML 표현보다 더 쉽고 약어로 되어 있으며, XSL 변환(XSLT)과 XML 지시자 언어(XPointer)에 사용되는 언어이다. XPath는 XML 문서의 노드를 정의하기 위하여 경로식을 사용하며, 수학 함수와 기타 확장 가능한 표현들이 있다.XPath (XML Path Language) is a W3C standard that describes how to place and process items using the syntax specified on the path through the structure of an Extensible Generation Language (XML) document. It is easier and abbreviated than the XML representation and is the language used for the XSL Transformation (XSLT) and XML Pointer Language (XPointer). XPath uses path expressions to define the nodes of an XML document, including mathematical functions and other extensible expressions.

그리고, 프로세스 알제브라 명세 언어는 병렬성을 가지는 통신 프로토콜의 동작을 효율적으로 명세하기 위한 언어이다.In addition, the process Alzebra specification language is a language for efficiently specifying the operation of a communication protocol having parallelism.

최초 일반 통신 프로토콜 및 제어 시스템의 명세를 위해 사용되어 졌으나, 점차 보안 프로토콜의 명세를 위한 영역으로 확대되어 가고 있다.Although it was originally used for the specification of general communication protocols and control systems, it is gradually expanding into the area for specification of security protocols.

프로세스 알제브라 명세 언어 중 본 발명은 CSP를 이용하는데, CSP에서 제공하는 순수 동기화(pure synchronization,

Figure 112007090735993-pat00033
), 인터리빙(interleaving) 병렬 연 산(
Figure 112007090735993-pat00034
) 개념을 사용하여 분산 시스템 환경에서 동작하는 클라이언트 서버와 공격자 모델을 정형적으로 표현할 수 있는 장점이 있다.In the process Alzebra specification language, the present invention uses CSP. Pure synchronization,
Figure 112007090735993-pat00033
), Interleaving parallel operation (
Figure 112007090735993-pat00034
) Can be used to formally represent client servers and attacker models operating in a distributed system environment.

예를 들어, 분산 시스템 환경하에서 동작하는 보안 시스템은 하기의 수학식 1과 같이 복수의 클라이언트와 서버 그리고 침입자를 표현하는 언어로 간략히 표현할 수 있다 For example, a security system operating in a distributed system environment may be briefly expressed in a language representing a plurality of clients, servers, and intruders as shown in Equation 1 below.

Figure 112007090735993-pat00035
Figure 112007090735993-pat00035

XML 문서에 대한 접근을 규정하는 대부분의 방법들은 XPath 언어를 이용하여 문서 혹은 문서의 노드에 대한 보안규칙을 명시한다. 이에 본 발명에서는 XPath 언어를 이용하여 기술된 보안규칙을 CSP 프로세스 알제브라 언어로 변환하는 방법을 제시하고자 한다. Most methods for specifying access to XML documents specify the security rules for the document or its nodes using the XPath language. Therefore, the present invention intends to provide a method for converting the security rules described using the XPath language to the CSP process Alzebra language.

XPath는 W3C에 의해 제안되었으며, 매우 잘 정의된 구문과 의미론을 제공한다. 현재 개발된 XML 구문 분석도구와 높은 호환성이 있으며, 이 도구를 통해 XML 문서의 관련 엘리먼트 및 속성을 검색할 수 있도록 지원해 준다. 본 발명에서는 XML 문서의 노드들을 지정하도록 하는 XPath 언어에서 사용되는 '<> : node', '/', '//', '*' 및 '@'과 같은 표현을 사용한다.XPath is proposed by the W3C and provides very well-defined syntax and semantics. It is highly compatible with the XML parser that is currently developed, and allows you to retrieve related elements and attributes from XML documents. In the present invention, expressions such as '<>: node', '/', '//', '*' and '@' used in the XPath language for specifying the nodes of the XML document are used.

여기서 사용되는 노드의 표시인 '<>'는 노드를 지칭하고, 자신의 노드의 모든 자식 노드를 선택하기 위하여 사용된다.'<>', Which is an indication of a node used herein, refers to a node and is used to select all child nodes of its own node.

그리고, '/'는 루트 노드로부터 시작하여 엘리먼트(element) 이름을 구분하 기 위하여 사용되는 표현식이다.'/' Is an expression used to distinguish element names starting from the root node.

또한, '//'는 검색 노드와 일치하는 노드 선택을 위한 표현식이다.Also, '//' is an expression for selecting a node that matches the search node.

한편, '*'는 모든 적용 가능한 노드를 나타내기 위하여 사용한다.Meanwhile, '*' is used to indicate all applicable nodes.

그리고, '@'는 노드 속성 값을 나타내기 위하여 사용한다.'@' Is used to represent node attribute values.

도 1은 XPath 언어로 표현한 XML 문서 예제를 나타내고 있다. 1 shows an example of an XML document expressed in the XPath language.

도 1에서 제시하고 있는 XML 문서의 표현식을 상술하면,

Figure 112007090735993-pat00036
는 Record 노드를 의미하고,
Figure 112007090735993-pat00037
는 Records 노드의 모든 자식 노드를 의미한다.Referring to the expression of the XML document shown in Figure 1,
Figure 112007090735993-pat00036
Means Record node,
Figure 112007090735993-pat00037
Means all child nodes of the Records node.

그리고,

Figure 112007090735993-pat00038
은 Medical 노드의 자식 노드들을 가리키고,
Figure 112007090735993-pat00039
는 'Name' 속성값이 'David'인 Patient 노드를 의미한다.And,
Figure 112007090735993-pat00038
Points to the child nodes of the Medical node,
Figure 112007090735993-pat00039
Means Patient node whose 'Name' property value is 'David'.

도 1의 XML 문서의 표현식을 스키마 레벨에서 트리구조로 명시하면 도 2와 같다. If the expression of the XML document of FIG. 1 is specified in a tree structure at the schema level, it is as shown in FIG. 2.

이는 실질적으로, 전자의료기록카드의 XML 문서의 표현식을 스키마 레벨로 도시한 것으로써, 이와 같이 트리 구조로 명시할 수 있기 때문에, 상기 트리 구조를 기반으로 XML 문서의 접근 통제 규칙을 용이하게 규정할 수 있다.In practice, this is an expression of the XML document of the electronic medical record card at the schema level, and since it can be specified in a tree structure like this, it is easy to define an access control rule of the XML document based on the tree structure. Can be.

도 3은 본 발명에 따른 XML 기반의 접근 통제 모델의 정형 명세 방법의 흐름도이다.3 is a flowchart of a formal specification method of an XML-based access control model according to the present invention.

도 3을 참조하면, 우선 계층적 트리 구조 형태로 구성된 XML 문서에 대하여 상기 XML 문서의 스키마 및 경로 지정 언어에 따른 사용자별 접근 통제 규칙을 이용하여 접근 통제 모델을 생성한다(310 과정).Referring to FIG. 3, first, an access control model is generated for an XML document having a hierarchical tree structure using user-specific access control rules according to the schema and routing language of the XML document (step 310).

XML 문서에 대한 접근 통제 규칙은 일반적으로 주체, 객체, 행동, 효과, 범위의 4개의 튜플로 되어 있다.Access control rules for XML documents are generally made up of four tuples: subject, object, behavior, effect, and scope.

주체는 객체에 대한 접근을 요청한 사용자, 그룹 또는 프로세스를 의미하고, 객체는 주체가 접근하고자 하는 대상으로 XPath 언어로 표현된 것을 의미하며, 행동은 주체가 객체에 대해 수행하는 읽기, 쓰기 및 삭제와 같은 행동들을 나타내고, 효과는 '+'와 '-' 기호로 구성되며, 전자는 객체에 대한 접근 허용을 의미하고, 후자는 객체에 대한 접근 거부를 의미한다.A subject is a user, group, or process that has requested access to an object, and an object is expressed in the XPath language as the subject to which the subject wishes to access, and actions are the read, write, and delete operations that the subject performs on the object. The same behavior is shown, and the effect consists of the '+' and '-' symbols, the former means granting access to the object and the latter means denying access to the object.

범위는 규칙을 명시하는 'PL', 'PR', 'NL' 및 'NR' 요소로 이루어질 수 있다.The range may consist of 'PL', 'PR', 'NL' and 'NR' elements specifying the rules.

접근 통제 규칙은 단일 XML 문서상에서 혹은 스키마 레벨에서 명시할 수 있다. 스키마 레벨의 접근 통제 규칙의 경우에는 스키마에 일맥 상통하는 모든 XML 문서에 접근 통제 규칙을 적용할 수 있기 때문에, 객체에 대한 접근권한을 명시하는데 매우 효율적인 방법이므로, 본 발명에서는 스키마 레벨에서 접근 통제 규칙을 규정하는 방법을 적용한다.Access control rules can be specified on a single XML document or at the schema level. In the case of the schema-level access control rules, since the access control rules can be applied to all XML documents that are in common with the schema, the access control rules at the schema level are provided in the present invention. The method of prescribing this shall apply.

XML 기반의 웹 서비스에서 사용되는 접근 통제 모델은 규칙을 명시하는 'PL', 'PR', 'NL' 및 'NR' 요소를 기준으로 접근통제규칙의 의미론을 규정한다.The access control model used in XML-based web services defines the semantics of the access control rules based on the 'PL', 'PR', 'NL' and 'NR' elements that specify the rules.

XML 문서의 계층적 특징으로 인하여, 규칙의 적용 범위는 웹서비스 기반의 접근통제시스템을 구축하는데 매우 중요한 요인이 된다.Due to the hierarchical nature of XML documents, the scope of application of rules is a very important factor in constructing a web services based access control system.

본 발명은 'PL', 'PR', 'NL' 및 'NR'의 4개의 집합 요소를 이용하여 규칙의 적용 범위를 규정한다.The present invention defines the scope of application of the rule using four aggregate elements: 'PL', 'PR', 'NL' and 'NR'.

PL(Positive Local)은 허용 규칙의 적용범위를 단지 특정 로컬 노드로만 한정하고, PR(Positive Recursive)은 그 특정 노드와 그 자식 노드까지 허용 규칙의 적용 범위를 적용하는 것으로 규정하고, NL(Negative Local) 은 거부(deny) 규칙의 적용 범위를 단지 특정 노드에만 한정하고, NR(Negative Recursive)은 거부 규칙의 적용 범위를 그 특정 노드와 그 자식 노드까지 적용하는 것으로 규정한다.Positive Local (PL) limits the scope of an allowable rule to only a specific local node, Positive Recursive (PR) specifies that the scope of an allowable rule applies to that particular node and its child nodes, and NL (Negative Local) ) Restricts the coverage of the deny rule to only a specific node, and NR (Negative Recursive) specifies that the coverage of the deny rule applies to that particular node and its child nodes.

예를 들어, 'Bob 이라는 이름을 가진 주체는 객체 Medical 노드에 대해 읽기 권한을 가지고 있다'는 보안 규칙을 명시하고자 할 경우, 하기의 수학식 2와 같은 접근 통제 규칙을 명시할 수 있다.For example, in order to specify a security rule that a subject named Bob has read permission on an object Medical node, an access control rule such as Equation 2 below may be specified.

Figure 112007090735993-pat00040
Figure 112007090735993-pat00040

상기 수학식 2에서 규칙의 적용 범위가 PR로 명시되어 있기 때문에, Bob은 Medical 노드의 자식 노드들에까지 읽기 권한을 가지게 된다.Since the scope of application of the rule is expressed as PR in Equation 2, Bob has read rights to child nodes of the Medical node.

Figure 112007090735993-pat00041
Figure 112007090735993-pat00041

만일, 상기 수학식 3과 같이 접근 통제 규칙이 명시되어 있다면, 이 접근 통제 규칙은 '사용자 Bob은 단지 Medical 노드 영역(자식 노드 제외)에 대해서만 읽기 권한을 갖는다'라는 의미이다.If the access control rule is specified as shown in Equation 3, this access control rule means that the user Bob has read permission only for the medical node area (excluding the child node).

이와 같이 접근 통제 규칙은 '+'로 표시된 허용 규칙 또는 '-'로 표시된 거부 규칙을 가질 수 있다.As such, the access control rule may have an allow rule indicated by '+' or a deny rule indicated by '-'.

따라서, 만일 어떤 한 노드에 대한 접근 규칙이 허용 또는 거부로 명시될 수 있다.Thus, if an access rule for any one node can be specified as allow or deny.

이런 경우, 두 가지 규칙에 충돌이 발생할 경우, 이 충돌에 대한 해석이 필요하며, 이 규칙 충돌에 대하여 두 가지 알고리즘이 사용될 수 있다.In this case, if a conflict occurs between two rules, an interpretation of this conflict is required, and two algorithms can be used for this rule conflict.

첫째는, 허용 중복(grant overwrites) 알고리즘으로 동일한 노드에 대해 허용규칙이 거부규칙에 선행하는 방식이다.The first is the grant overwrites algorithm, where the grant rule precedes the reject rule for the same node.

둘째는, 거부 중복(deny overwrites) 알고리즘으로 이 경우는 동일한 노드에 대하여 거부규칙이 허용규칙에 선행하는 방식이다.The second is the deny overwrites algorithm, in which case the deny rule precedes the allow rule for the same node.

예를 들어, 하기의 수학식 4와 같이 주체 Bob에 두 가지 규칙이 동시에 적용되어 있다고 가정한다.For example, assume that two rules are simultaneously applied to the subject Bob as shown in Equation 4 below.

Figure 112007090735993-pat00042
Figure 112007090735993-pat00042

여기서, 규칙 충돌에 대하여 거부 중복 알고리즘을 선택할 경우, 거부 규칙이 허용 규칙에 선행하기 때문에, 사용자 Bob은 Medical 노드에 대한 읽기 권한을 가지지 못하게 된다.Here, if the reject duplicate algorithm is selected for the rule conflict, the user Bob does not have read permission on the Medical node because the reject rule precedes the allow rule.

그러나, 이와 반대로 규칙 충돌에 대하여 허용 중복 알고리즘을 선택할 경우, 허용 규칙이 거부 규칙에 선행하기 때문에, 사용자 Bob은 Medical 노드에 대 한 읽기 권한을 가지게 된다.On the contrary, however, if the allow duplicate algorithm is selected for rule conflict, the user Bob has read access to the Medical node because the allow rule precedes the deny rule.

따라서, 본 발명은 상기와 같은 사용자에 대한 접근 통제 규칙을 이용하여 XML 문서에 대하여 사용자별 접근 통제 규칙을 정의한 접근 통제 모델을 생성하게 된다.Accordingly, the present invention generates an access control model that defines a user-specific access control rule for an XML document using the access control rule for the user as described above.

그 다음, 본 발명에서는, 상술한 XML 문서에 대하여 상기 접근 통제 모델을 프로세스 알제브라 언어로 변환하여 상기 XML 문서의 특정 노드의 속성 이름을 대수값을 표현한 프로세스 알제브라 정형 모델을 생성한다(320 과정).Next, the present invention converts the access control model to the process Alzebra language for the above-described XML document to generate a process Alzebra formal model expressing algebraic values of attribute names of specific nodes of the XML document (step 320). ).

이를 위해 본 발명에서는, 우선적으로 XML 문서에 대한 접근통제규칙을 명시한 경로 지정 언어인 XPath 표현식을 이용하여 상기 접근 통제 모델을 오토마타(Automata) 형 스키마 모델로 변환한다.To this end, in the present invention, the access control model is first converted into an Automata type schema model using an XPath expression, which is a routing language that specifies an access control rule for an XML document.

한편, 오토마타형 스키마 모델을 CSP 프로세스 알제브라 언어로 정형명세하여 스키마 정형 모델을 생성한다.On the other hand, the schema model is generated by specifying the automata type schema model in CSP process Alzebra language.

그런 다음, 스키마 정형 모델

Figure 112007090735993-pat00043
를 CSP 프로세스 알제브라 문법에 맞게 변환하여 프로세스 알제브라 정형 모델을 생성한다.Then, the schema formal model
Figure 112007090735993-pat00043
To conform to the CSP process Alzebra grammar to create a process Alzebra formal model.

이와 같이, 오토마타 이론에 근거하여 스키마에 대한 정형 모델 즉, 스키마 정형 모델을 생성할 수 있는데, 스키마 정형 모델은 스키마

Figure 112007090735993-pat00044
가 주어졌을 때, XML 문서에 대한 수학적인 스키마 정형모델
Figure 112007090735993-pat00045
는 6개의 튜플로 구성되어 있다.In this way, a formal model for the schema, that is, a schema formal model can be generated based on the automata theory.
Figure 112007090735993-pat00044
Given is a mathematical schema formal model for an XML document.
Figure 112007090735993-pat00045
Consists of six tuples.

이는 하기의 수학식 5와 표 1에 개시된 바와 같다.This is as shown in Equation 5 and Table 1 below.

Figure 112007090735993-pat00046
Figure 112007090735993-pat00046

Figure 112007090735993-pat00047
Figure 112007090735993-pat00047

상기 수학식 5와 표 1에 따라, 상기 도 1에 개시된 XML 문서에 대하여 도 2의 트리 구조로 도시한 스키마 문서의 경우, 하기의 표 2와 같은 스키마 정형모델

Figure 112007090735993-pat00048
를 구성할 수 있다.According to Equation 5 and Table 1, in the case of the schema document shown in the tree structure of FIG. 2 with respect to the XML document disclosed in FIG. 1, the schema formal model shown in Table 2 below
Figure 112007090735993-pat00048
Can be configured.

Figure 112007090735993-pat00049
Figure 112007090735993-pat00049

상기 표 2에서 볼 수 있는 바와 같이 도 2의 트리 구조로 도시한 스키마 문서의 경우, 상기 수학식 5와 표 1에 따라 스키마 정형 모델을 구성할 수 있다.As shown in Table 2, in the case of the schema document illustrated in the tree structure of FIG. 2, the schema formal model may be configured according to Equation 5 and Table 1 above.

상기 표 2에 개시된 스키마 정형 모델은 도 4와 같이 표현할 수 있다.The schema formal model disclosed in Table 2 may be expressed as shown in FIG.

이와 같이 도 1의 전자의료카드 XML 문서를 스키마 정형모델로 변환하면, 오토마타와 유사한 정형모델을 구할 수 있다.As described above, when the electronic medical card XML document of FIG. 1 is converted into a schema formal model, a formal model similar to an automata can be obtained.

단지, 기존의 오토마타와의 구별점은 XML 문서의 속성 이름을 대수 표현으로 전환하여, 속성값이 참일 경우에만 다음 상태로 전이하도록 구성하였다는 점이다.The only difference from the existing automata is that the attribute name of the XML document is converted to an algebraic representation so that the transition to the next state only occurs if the attribute value is true.

예를 들어, 도 4의 Patient 상태에서는 name의 속성이 True일 경우, medical 이라는 알파벳 입력에 따라 다음 상태로써 하위 노드인 Medical에 대한 질의를 수행할 수 있다.For example, in the Patient state of FIG. 4, if the attribute of name is True, a query may be performed for the lower node Medical as the next state according to an alphabetic input of medical.

그 다음, 상기 XML 문서에 대하여 사용자의 쿼리가 발생하면, 상기 사용자의 쿼리를 프로세스 알제브라 언어로 변환하여 상기 접근 통제 모델에 대한 요구사항으로 명세하고, 상기 사용자에게 상기 프로세스 알제브라 정형 모델에 따라 상기 XML 문서에 대한 쿼리에 대응되는 정보를 전송한다(330 과정).Then, when a user's query occurs on the XML document, the user's query is converted into a process Alzebra language and specified as a requirement for the access control model, and the user is informed according to the process Alzebra formal model. Information corresponding to the query for the XML document is transmitted (step 330).

상술한 바와 같이, 사용자별 접근 통제 규칙을 이용하여 접근 통제 모델을 생성한 후, 상기 XML 문서에 대하여 사용자의 쿼리가 발생하면, 사용자의 쿼리를 프로세스 알제브라 언어로 변환하여 상기 생성된 접근 통제 모델에 대한 요구사항으로 명세하고, 상기 프로세스 알제브라 정형 모델에 따라 사용자에게 XML 문서에 대한 쿼리에 대응되는 정보를 전송하게 된다.As described above, after generating an access control model using a user-specific access control rule, when a user's query is generated for the XML document, the user's query is converted into a process Alzebra language to generate the access control model. It specifies the requirements for, and transmits the information corresponding to the query for the XML document to the user according to the process Alzebra formal model.

마지막으로, 상기 프로세스 알제브라 정형 모델을 FDR 모델 체킹 도구를 이용하여 상기 XML 문서에 대한 보안 검증을 수행한다(340 과정).Finally, the process Alzebra formal model performs security verification on the XML document using the FDR model checking tool (step 340).

이는, 생성된 프로세스 알제브라 정형 모델의 보안 적합성을 평가하는 것으로 하기에 자세히 상술하기로 한다.This evaluates the security suitability of the generated process Alzebra formal model, which will be described in detail below.

상술한, 스키마 정형 모델

Figure 112007090735993-pat00050
를 CSP 프로세스 알제브라 문법에 맞게 변환하면, 하기의 표 3와 같이 표현할 수 있다.Schema formal model described above
Figure 112007090735993-pat00050
When converted according to the CSP process Alzebra grammar, it can be expressed as shown in Table 3 below.

Figure 112007090735993-pat00051
Figure 112007090735993-pat00051

상기 표 3에서 개시된 바와 같이, CSP 코드에서 NAME은 스키마 정형 모델에서 기술한

Figure 112007090735993-pat00052
집합에 대한 데이터 타입을 정의하고 있다. channel은 입력 알파벳 집합
Figure 112007090735993-pat00053
를 표현하며, 프로세스 간의 통신 채널로 사용되게 된다.As disclosed in Table 3 above, in the CSP code, the NAME is described in the schema formal model.
Figure 112007090735993-pat00052
Defines the data type for a set. channel is the input alphabet set
Figure 112007090735993-pat00053
It is used as a communication channel between processes.

스키마 정형모델

Figure 112007090735993-pat00054
에 대한 CSP 정형모델은
Figure 112007090735993-pat00055
으로 기술되며, IF-THEN-ELSE 구문은 프로그래밍 언어와 같이 조건문 표현을 위해 사용되어 진다.Schema formal model
Figure 112007090735993-pat00054
CSP Orthopedic Models for
Figure 112007090735993-pat00055
IF-THEN-ELSE syntax is used for conditional expressions like programming languages.

따라서, 상기 표 3에 개시된

Figure 112007090735993-pat00056
프로세스에서 record와 patient 이벤트가 차례로 발생한 다음, if 구문에서 NAME 값이 참이 되면, doctor, diagnosis 또는 prescription 이벤트가 발생한 후, STOP 상태 즉, 종료 상태로 전이하게 되며, 그렇지 않으면,
Figure 112007090735993-pat00057
프로세스로 머물게 된다.Thus, disclosed in Table 3 above
Figure 112007090735993-pat00056
After the record and patient events occur in the process in turn, and the NAME value in the if statement is true, the doctor, diagnosis, or prescription event occurs and then transitions to the STOP state, or exit state.
Figure 112007090735993-pat00057
Stay in the process.

CSP 코드를 간략하게 표현하기 위하여, 스키마 정형 모델에서 상태집합 Tdp 대응되는 명시적인 프로세스 표현은 생략하기로 한다. To simplify the representation of the CSP code, the explicit process representation of the state set Tdp corresponding to the schema formal model is omitted.

또한, CSP 코드에서 대수 표현은 항상 참이라고 가정하기로 한다.It is also assumed that algebraic expressions in CSP code are always true.

한편, XPath 경로 지정 언어로 명세된 접근 통제 규칙을 프로세스 알제브라로 변환하는 방법은 하기와 같다.Meanwhile, a method of converting an access control rule specified in the XPath routing language into a process Alzebra is as follows.

XML 문서

Figure 112007090735993-pat00058
와 XPath 경로 지정 표현
Figure 112007090735993-pat00059
가 존재할 때,
Figure 112007090735993-pat00060
표현은 문서
Figure 112007090735993-pat00061
에 있는 XML 트리 노드에 대한 접근 통제 규칙의 표현이라고 할 수 있다.XML document
Figure 112007090735993-pat00058
And XPath routing expressions
Figure 112007090735993-pat00059
Is present,
Figure 112007090735993-pat00060
Expression document
Figure 112007090735993-pat00061
This is the representation of an access control rule for an XML tree node in.

예를 들어, 상기 도 1에 개시된 XML 문서에 대해 하기의 수학식 6과 같은

Figure 112007090735993-pat00062
표현이 있다고 가정한다.For example, with respect to the XML document disclosed in FIG.
Figure 112007090735993-pat00062
Assume there is an expression.

Figure 112007090735993-pat00063
Figure 112007090735993-pat00063

그러면, 상기 수학식 6에 따른

Figure 112007090735993-pat00064
의 반환값은 Doctor 노드가 된다.Then, according to Equation 6
Figure 112007090735993-pat00064
The return value of becomes a Doctor node.

스키마 정형 모델

Figure 112007090735993-pat00065
를 CSP 프로세스 알제브라 문법에 맞게 변환하여 프로세스 알제브라 정형 모델을 생성하는 방법은 하기와 같다.Schema formal model
Figure 112007090735993-pat00065
To convert the CSP process according to the Alzebra grammar to generate a process Alzebra formal model is as follows.

우선, 전술한 PL 및 PR 규칙을 CSP 표현으로 바꾸기 위하여 하기의 수학식 7과 같은 Rule 1과 Rule 2가 있다고 하자.First, suppose that there are Rule 1 and Rule 2 shown in Equation 7 below to convert the above-described PL and PR rules into CSP expression.

Figure 112007090735993-pat00066
Figure 112007090735993-pat00066

상기 수학식 7에서 Rule 1과 Rule 2는 각각 PL과 PR의 적용규칙의 예를 보여주고 있고, 이 두 가지 규칙들은 전술한 바와 같이 하기의 수학식 8에 따라 CSP 코드로 변환할 수 있다.Rule 1 and Rule 2 in Equation 7 show examples of application rules of PL and PR, respectively, and these two rules may be converted into CSP codes according to Equation 8 as described above.

Figure 112007090735993-pat00067
Figure 112007090735993-pat00067

한편, NL 및 NR 적용 규칙 또한 상기 수학식 8과 유사하나, 마찬가지로 CSP 코드로 변환할 수 있다. 하기 수학식 9에서 Rule 3 과 Rule 4는 각각 NL과 NR의 적용규칙의 예를 보여주고 있다.On the other hand, NL and NR application rules are also similar to Equation 8, but can be converted to CSP code as well. In Equation 9, Rule 3 and Rule 4 show examples of application rules of NL and NR, respectively.

Figure 112007090735993-pat00068
Figure 112007090735993-pat00068

상기 수학식 9에서의 Rule 3 과 Rule 4는 각각 NL과 NR의 적용규칙의 예를 보여주고 있고, 이를 CSP 코드로 변환하면, 하기의 수학식 10과 같다.Rule 3 and Rule 4 in Equation 9 show an example of an application rule of NL and NR, respectively, and when converted to CSP code, Equation 10 below.

Figure 112007090735993-pat00069
Figure 112007090735993-pat00069

상기 수학식 10의 Rule 3 과 Rule 4에서의

Figure 112007090735993-pat00070
는 스키마를 나타내며, '-' 기호는 차집합을 표현하기 위하여 사용된다.In Rule 3 and Rule 4 of Equation 10
Figure 112007090735993-pat00070
Represents the schema, and the '-' symbol is used to represent the difference.

따라서, 스키마

Figure 112007090735993-pat00071
에서
Figure 112007090735993-pat00072
에 의해 지정 노드까지 표현된 허용 가능한 경로를 제외한 경로들만이 접근 가능하다는 의미를 가지게 된다.Thus, the schema
Figure 112007090735993-pat00071
in
Figure 112007090735993-pat00072
This means that only paths except the allowable paths represented by the node are accessible.

예를 들어, Rule 3에서는 Diagnosis 노드를 제외한 doctor 노드 또는 prescription 노드에 접근 가능한 경로를 보여주고 있다.For example, Rule 3 shows the paths accessible to doctor or prescription nodes except for the Diagnosis node.

한편, Rule 4에서는 Medical 이하의 노드는 모두 접근 불가능하므로, patient 노드까지 접근 가능함을 보여주고 있다.On the other hand, Rule 4 shows that all nodes below Medical are inaccessible, so they can be accessed up to the patient node.

그 다음은, 상기 스키마 정형 모델

Figure 112007090735993-pat00073
를 CSP 프로세스 알제브라 문법에 맞게 변환하는 방법의 타당성을 증명하기 위하여 도 1에 따른 XML 문서에 대해 하기의 수학식 11과 같은 접근 통제 규칙이 존재할 경우, CSP 코드로 명세하는 것을 개시하고자 한다.Next, the schema formal model
Figure 112007090735993-pat00073
In order to prove the validity of the method for converting the CSP process according to the Alzebra grammar, an access control rule as shown in Equation 11 below exists for the XML document according to FIG. 1.

Figure 112007090735993-pat00074
Figure 112007090735993-pat00074

상기 수학식 11에서 규칙 충돌 현상을 해결하기 위하여 거부 중복(deny overwrites) 알고리즘인

Figure 112007090735993-pat00075
을 적용할 경우, 이에 대한 CSP 코드는 하기의 수학식 12와 같다.In order to solve the rule conflict in Equation 11, a deny overwrite algorithm
Figure 112007090735993-pat00075
In this case, the CSP code for this is given by Equation 12 below.

Figure 112007090735993-pat00076
Figure 112007090735993-pat00076

상기 수학식 12에서,

Figure 112007090735993-pat00077
는 도 1의 XML 문서에 대한 스키마
Figure 112007090735993-pat00078
에 대한 프로세스 표현이며,
Figure 112007090735993-pat00079
라고 할 때, 이는
Figure 112007090735993-pat00080
프로세스와
Figure 112007090735993-pat00081
프로세스의 합집합을 나타내고 있다.In Equation 12,
Figure 112007090735993-pat00077
Is the schema for the XML document of FIG.
Figure 112007090735993-pat00078
Is the process representation for
Figure 112007090735993-pat00079
Is called,
Figure 112007090735993-pat00080
Process and
Figure 112007090735993-pat00081
Represents a union of processes.

한편, 상기 스키마

Figure 112007090735993-pat00082
에 대한 거부 중복 알고리즘이 적용된 프로세스를
Figure 112007090735993-pat00083
라고 할 때, 거부 중복 알고리즘은 도 5와 같이 프로세스 전이 다이어그램으로 표현할 수 있다.Meanwhile, the schema
Figure 112007090735993-pat00082
Deny duplicate process for the process
Figure 112007090735993-pat00083
In this case, the rejection redundancy algorithm may be represented by a process transition diagram as shown in FIG. 5.

Figure 112007090735993-pat00084
는 프로세스의 최상위 노드에서 출발하여,
Figure 112007090735993-pat00085
,
Figure 112007090735993-pat00086
, 및
Figure 112007090735993-pat00087
규칙들의 상태 전이도를 각각 포함하게 된다. 예를 들어,
Figure 112007090735993-pat00088
의 규칙에 의해 <
Figure 112007090735993-pat00089
,
Figure 112007090735993-pat00090
,
Figure 112007090735993-pat00091
,
Figure 112007090735993-pat00092
,
Figure 112007090735993-pat00093
>의 상태전이 순서를 갖고,
Figure 112007090735993-pat00094
규칙에 의해 <
Figure 112007090735993-pat00095
,
Figure 112007090735993-pat00096
,
Figure 112007090735993-pat00097
,
Figure 112007090735993-pat00098
,
Figure 112007090735993-pat00099
>의 상태전이 순서를 갖고,
Figure 112007090735993-pat00100
규칙에 의해 <
Figure 112007090735993-pat00101
,
Figure 112007090735993-pat00102
,
Figure 112007090735993-pat00103
,
Figure 112007090735993-pat00104
>의 상태전이 순서를 갖게 된다. 또한,
Figure 112007090735993-pat00105
는 프로세스의 초기상태를 나타내고,
Figure 112007090735993-pat00106
,
Figure 112007090735993-pat00107
,
Figure 112007090735993-pat00108
은 더 이상 전이하지 않는 STOP 상태를 의미한다.
Figure 112007090735993-pat00084
Starts at the top node of the process,
Figure 112007090735993-pat00085
,
Figure 112007090735993-pat00086
, And
Figure 112007090735993-pat00087
Each state transition diagram of the rules will be included. E.g,
Figure 112007090735993-pat00088
By the rules of <
Figure 112007090735993-pat00089
,
Figure 112007090735993-pat00090
,
Figure 112007090735993-pat00091
,
Figure 112007090735993-pat00092
,
Figure 112007090735993-pat00093
Has a state transition order of>,
Figure 112007090735993-pat00094
By rule <
Figure 112007090735993-pat00095
,
Figure 112007090735993-pat00096
,
Figure 112007090735993-pat00097
,
Figure 112007090735993-pat00098
,
Figure 112007090735993-pat00099
Has a state transition order of>,
Figure 112007090735993-pat00100
By rule <
Figure 112007090735993-pat00101
,
Figure 112007090735993-pat00102
,
Figure 112007090735993-pat00103
,
Figure 112007090735993-pat00104
The state transitions of> are in order. Also,
Figure 112007090735993-pat00105
Indicates the initial state of the process,
Figure 112007090735993-pat00106
,
Figure 112007090735993-pat00107
,
Figure 112007090735993-pat00108
Means a STOP state that no longer transitions.

한편, 상기와 같은 접근 통제 규칙에 대한 검증은 쿼리

Figure 112007090735993-pat00109
프로세스의 추적 이벤트(trace event)의 집합이 스키마 프로세스
Figure 112007090735993-pat00110
와 ACP 프로세스의 추적 이벤트(trace event)의 부분집합이 되면, 접근 통제 규칙에 대한 요청자의 쿼리
Figure 112007090735993-pat00111
는 항상 허용(always grant)이 된다.On the other hand, to verify the access control rules as described above
Figure 112007090735993-pat00109
The set of trace events for a process is a schema process
Figure 112007090735993-pat00110
The requestor's query for access control rules, when a subset of the TCP and ACP process's trace events
Figure 112007090735993-pat00111
Is always an grant.

이는 하기의 수학식 13으로 표현할 수 있다.This can be expressed by Equation 13 below.

Figure 112007090735993-pat00112
Figure 112007090735993-pat00112

여기서,

Figure 112007090735993-pat00113
는 전술한 바와 같이,
Figure 112007090735993-pat00114
프로세스와
Figure 112007090735993-pat00115
프로세스의 합집합이며,
Figure 112007090735993-pat00116
는 접근 통제 규칙에 대한 정형검증도구인 FDR 도구에서 등가 체킹(equivalence checking) 예약어로 사용된다.here,
Figure 112007090735993-pat00113
As described above,
Figure 112007090735993-pat00114
Process and
Figure 112007090735993-pat00115
Is the union of processes,
Figure 112007090735993-pat00116
Is used as an equivalence checking reserved word in the FDR tool, a formal validation tool for access control rules.

Figure 112007090735993-pat00117
병렬 프로세스는 XML 문서에 대한 스키마 레벨 접근통제모델을 나타낸다.
Figure 112007090735993-pat00117
The parallel process represents a schema-level access control model for XML documents.

예를 들어, Dr. Kim으로부터 온 쿼리

Figure 112007090735993-pat00118
Figure 112007090735993-pat00119
이라고 가정하기로 한다.For example, Dr. Query from Kim
Figure 112007090735993-pat00118
end
Figure 112007090735993-pat00119
Assume that

그러면, FDR 도구를 이용하여 시스템 모델이 상기 수학식 13의 속성을 만족하는지의 여부를 확인할 수 있다.Then, it is possible to check whether the system model satisfies the attribute of Equation 13 using the FDR tool.

그러나,, 만약 쿼리

Figure 112007090735993-pat00120
Figure 112007090735993-pat00121
이라면, CSP 모델
Figure 112007090735993-pat00122
는 전술한 바와 같이 하기의 수학식 14에 따른 프로세스 모델로 변환되게 된다.However, if the query
Figure 112007090735993-pat00120
end
Figure 112007090735993-pat00121
Is the CSP model
Figure 112007090735993-pat00122
Is converted into a process model according to Equation 14 as described above.

Figure 112007090735993-pat00123
Figure 112007090735993-pat00123

이 경우, FDR 모델 체킹 도구는 CSP 모델

Figure 112007090735993-pat00124
에서 <records, patient, medical, diagnosis>에 대한 반례를 보여준다.In this case, the FDR model checking tool is a CSP model
Figure 112007090735993-pat00124
Shows an inverse of <records, patient, medical, diagnosis>.

이 결과는 쿼리

Figure 112007090735993-pat00125
에 대해 Diagnosis 노드에 대한 접근이 허용되지 않음을 의미한다.This result is a query
Figure 112007090735993-pat00125
Means that access to the Diagnosis node is not allowed.

그 결과로 접근 통제 규칙은 모든 관련 규칙들을 실행하여 비밀정보 Diagnosis 데이터를 보호하기 위하여 쿼리

Figure 112007090735993-pat00126
Figure 112007090735993-pat00127
로 변환한다. 필터링된 쿼리
Figure 112007090735993-pat00128
는 하기의 수학식 15와 같다.As a result, the access control rule executes all relevant rules to query the confidential Diagnosis data.
Figure 112007090735993-pat00126
To
Figure 112007090735993-pat00127
Convert to Filtered query
Figure 112007090735993-pat00128
Is as shown in Equation 15 below.

Figure 112007090735993-pat00129
Figure 112007090735993-pat00129

본 발명에서는 트리 구조의 쿼리, 스키마 및 접근 통제 규칙을 CSP 언어로 모델링하여, XML 문서에 대한 쿼리 접근을 제한하기 위한 접근 통제 모델을 분석하기 위한 검증 방법을 제시하고 있다.The present invention proposes a verification method for analyzing an access control model for restricting query access to an XML document by modeling a tree structured query, schema, and access control rule in a CSP language.

또한, 본 발명에 따른 접근 통제 규칙 및 쿼리 필터링 서비스에 의한 쿼리 재생성의 의미론을 CSP 언어로 변환하는 방법을 기술한다.Also, a method for converting semantics of query regeneration by an access control rule and a query filtering service according to the present invention into a CSP language is described.

따라서, XML 문서에 대한 쿼리, 접근 통제 규칙 및 스키마에 대한 CSP 모델이 주어졌을 때, 본 발명에서 제시한 정적 검증 방법은 요청 쿼리가 스키마 레베 접근 통제 규칙에서 허용되는지 뿐만 아니라, 허용 및 거부되는 트리 구조의 계층형 정보를 보여줄 수 있다.Thus, given the CSP model for the query, access control rules, and schema for XML documents, the static validation method presented in the present invention not only allows the request query to be allowed in the schema rev access control rules, but also allows the tree to be allowed and denied. Can show hierarchical information of structure.

도 6은 본 발명에 따른 XML 기반의 접근 통제 모델의 정형 명세 장치의 블록도를 도시한 것이다.6 is a block diagram of a formal specification apparatus of an XML-based access control model according to the present invention.

도 6을 참조하면, 본 발명에 따른 XML 기반의 접근 통제 모델의 정형 명세 장치는 접근 통제 모델 생성부(610), 프로세스 알제브라 모델 생성부(620), 쿼리 변환부(630) 및 보안 검증부(640)로 이루어질 수 있다.Referring to FIG. 6, the formal specification apparatus of the XML-based access control model according to the present invention includes an access control model generator 610, a process Alzebra model generator 620, a query converter 630, and a security verifier. 640.

접근 통제 모델 생성부(610)는 계층적 트리 구조 형태로 구성된 XML 문서에 대하여 상기 XML 문서의 스키마 및 경로 지정 언어에 따른 사용자별 접근 통제 규칙을 이용하여 접근 통제 모델을 생성한다.The access control model generation unit 610 generates an access control model for an XML document having a hierarchical tree structure using a user-specific access control rule according to the schema and the routing language of the XML document.

XML 문서에 대한 접근 통제 규칙은 일반적으로 주체, 객체, 행동, 효과, 범위의 4개의 튜플로 되어 있다.Access control rules for XML documents are generally made up of four tuples: subject, object, behavior, effect, and scope.

주체는 객체에 대한 접근을 요청한 사용자, 그룹 또는 프로세스를 의미하고, 객체는 주체가 접근하고자 하는 대상으로 XPath 언어로 표현된 것을 의미하며, 행동은 주체가 객체에 대해 수행하는 읽기, 쓰기 및 삭제와 같은 행동들을 나타내고, 효과는 '+'와 '-' 기호로 구성되며, 전자는 객체에 대한 접근 허용을 의미하고, 후자는 객체에 대한 접근 거부를 의미한다.A subject is a user, group, or process that has requested access to an object, and an object is something expressed in the XPath language that the subject wants to access. The same behavior is shown, and the effect consists of the '+' and '-' symbols, the former means granting access to the object and the latter means denying access to the object.

범위는 규칙을 명시하는 'PL', 'PR', 'NL' 및 'NR' 요소로 이루어질 수 있다.The range may consist of 'PL', 'PR', 'NL' and 'NR' elements specifying the rules.

접근 통제 규칙은 단일 XML 문서상에서 혹은 스키마 레벨에서 명시할 수 있다. 스키마 레벨의 접근 통제 규칙의 경우에는 스키마에 일맥 상통하는 모든 XML 문서에 접근 통제 규칙을 적용할 수 있기 때문에, 객체에 대한 접근권한을 명시하는데 매우 효율적인 방법이므로, 본 발명에서는 상술한 바와 같이 스키마 레벨에서 접근 통제 규칙을 규정하는 방법을 적용한다.Access control rules can be specified on a single XML document or at the schema level. In the case of the schema level access control rule, since the access control rule can be applied to all XML documents that are in common with the schema, the schema level is described in the present invention as it is a very efficient method for specifying the access rights to the object. The method of prescribing access control rules is applied.

프로세스 알제브라 모델 생성부(620)는 상술한 XML 문서에 대하여 생성된 접근 통제 모델을 프로세스 알제브라 언어인 CSP 언어로 정형 명세하여 상기 XML 문 서의 특정 노드의 속성 이름을 대수 값으로 표현한 프로세스 알제브라 정형 모델을 생성한다.The process Alzebra model generating unit 620 formally specifies the access control model generated for the above-described XML document in the CSP language, which is a process Alzebra language, and expresses the attribute name of a specific node of the XML document as an algebraic value. Create a zebra model.

상기 XML 문서의 특정 노드의 속성 이름을 대수값을 표현한 프로세스 알제브라 정형 모델을 생성하는 프로세스 알제브라 정형 모델 생성부Process Alzebra formal model generation unit for generating a process Alzebra formal model representing the algebraic value of the attribute name of the specific node of the XML document

이를 위해 본 발명에서는, 오토마타 스키마 모델 변환 모듈을 이용하여 XML 문서에 대한 접근통제규칙을 명시한 경로 지정 언어인 XPath 표현식에 따라 상기 접근 통제 모델을 오토마타(Automata) 형 스키마 모델로 변환한다.To this end, in the present invention, the access control model is converted into an Automata type schema model according to an XPath expression, which is a routing language that specifies an access control rule for an XML document using an automata schema model conversion module.

그리고, 스키마 정형 모델 생성 모듈은 오토마타형 스키마 모델을 CSP 프로세스 알제브라 언어로 정형명세하여 스키마 정형 모델을 생성한다.The schema formal model generation module formalizes the automata schema model in the CSP process Alzebra language to generate the schema formal model.

이와 같이 생성된 스키마 정형 모델

Figure 112007090735993-pat00130
은 CSP 프로세스 알제브라 문법에 맞게 변환되어 프로세스 알제브라 정형 모델이 생성된다.Schema formal model generated in this way
Figure 112007090735993-pat00130
Is converted to conform to the CSP process Alzebra grammar to produce a process Alzebra formal model.

오토마타 이론에 근거하여 스키마에 대한 정형 모델 즉, 스키마 정형 모델을 생성할 수 있는데, 스키마 정형 모델은 스키마

Figure 112007090735993-pat00131
가 주어졌을 때, XML 문서에 대한 수학적인 스키마 정형모델
Figure 112007090735993-pat00132
는 6개의 튜플로 구성되어 있다.Based on the automata theory, you can create a formal model for a schema, that is, a schema formal model.
Figure 112007090735993-pat00131
Given is a mathematical schema formal model for an XML document.
Figure 112007090735993-pat00132
Consists of six tuples.

이는 상기의 수학식 5와 표 1에 개시된 바와 같다.This is as described in Equation 5 and Table 1 above.

즉, 상기 스키마 정형 모델

Figure 112007090735993-pat00133
는 상기 XML 문서를 트리 구조를 가지는 복수 개의 노드로 분할하였을 경우, XML 트리의 루트 노드로 전이하기 위한 입력 알파벳
Figure 112007090735993-pat00134
, 비 말단 노드 집합
Figure 112007090735993-pat00135
, 전이 함수
Figure 112007090735993-pat00136
, 상기 입력 알파벳의 초기 상태
Figure 112007090735993-pat00137
와 상기 비 말단 노드 집합
Figure 112007090735993-pat00138
으로 구성된 상태 집합
Figure 112007090735993-pat00139
, 상기 XML 트리의 엘리번트 이름을 나타내는 입력 알파벳
Figure 112007090735993-pat00140
및 속성 이름의 집합
Figure 112007090735993-pat00141
를 포함하는 튜플 (
Figure 112007090735993-pat00142
,
Figure 112007090735993-pat00143
,
Figure 112007090735993-pat00144
,
Figure 112007090735993-pat00145
,
Figure 112007090735993-pat00146
,
Figure 112007090735993-pat00147
)로 구성될 수 있다.That is, the schema formal model
Figure 112007090735993-pat00133
Is an input alphabet for transitioning to the root node of the XML tree when the XML document is divided into a plurality of nodes having a tree structure.
Figure 112007090735993-pat00134
, Non-end node set
Figure 112007090735993-pat00135
, Transition function
Figure 112007090735993-pat00136
, Initial state of the input alphabet
Figure 112007090735993-pat00137
And the set of non-terminal nodes
Figure 112007090735993-pat00138
Set of states
Figure 112007090735993-pat00139
An input alphabet representing an element name of the XML tree
Figure 112007090735993-pat00140
And set of attribute names
Figure 112007090735993-pat00141
Tuples containing
Figure 112007090735993-pat00142
,
Figure 112007090735993-pat00143
,
Figure 112007090735993-pat00144
,
Figure 112007090735993-pat00145
,
Figure 112007090735993-pat00146
,
Figure 112007090735993-pat00147
It can be composed of).

이와 같이 도 1의 전자의료카드 XML 문서를 스키마 정형모델로 변환하면, 오토마타와 유사한 정형모델을 구할 수 있다.As described above, when the electronic medical card XML document of FIG. 1 is converted into a schema formal model, a formal model similar to an automata can be obtained.

그리고, 기존의 오토마타와의 구별점은 트리구조를 가지는 XML 문서의 특정 노드의 속성 이름을 대수 표현으로 전환하여, 상기 대수 표현으로 전환된 속성값이 참일 경우에만 다음 하위 노드로의 질의를 수행할 수 있도록 구성하였다는 점에 있다.In addition, the distinguishing point from the existing automata is that the attribute name of a specific node of an XML document having a tree structure is converted to an algebraic expression, and the query to the next lower node is executed only when the attribute value converted to the algebraic expression is true. It is configured to be possible.

한편, 쿼리 변환부(630)는 상기 XML 문서에 대하여 사용자의 쿼리가 발생하면, 상기 사용자의 쿼리를 프로세스 알제브라 언어로 변환하여 상기 접근 통제 모델에 대한 요구사항으로 명세하고, 상기 사용자에게 상기 프로세스 알제브라 모델 생성부(620)에서 생성된 프로세스 알제브라 정형 모델에 따라 상기 XML 문서에 대한 쿼리에 대응되는 정보를 전송한다.On the other hand, the query conversion unit 630, when a user's query is generated for the XML document, converts the user's query into the process Alzebra language and specifies as a requirement for the access control model, the process to the user The information corresponding to the query for the XML document is transmitted according to the process Alzebra formal model generated by the Alzebra model generation unit 620.

이는 상술한 바와 같이, 접근 통제 모델 생성부(610)에서 사용자별 접근 통제 규칙을 이용하여 접근 통제 모델을 생성하고, 프로세스 알제브라 모델 생성부(620)에서 접근 통제 모델을 프로세스 알제브라 언어로 변환하여 프로세스 알제부라 모델을 생성한 후, 상기 XML 문서에 대하여 사용자의 쿼리가 발생하면, 사용 자의 쿼리를 프로세스 알제브라 언어로 변환하여 상기 생성된 접근 통제 모델에 대한 요구사항으로 명세하고, 상기 프로세스 알제브라 정형 모델에 따라 사용자에게 XML 문서에 대한 쿼리에 대응되는 정보를 전송하게 된다.As described above, the access control model generation unit 610 generates an access control model using user-specific access control rules, and the process Alzebra model generation unit 620 converts the access control model into the process Alzebra language. After the process Algebra model is generated, if a user's query is generated on the XML document, the user's query is converted into the process Alzebra language and specified as a requirement for the generated access control model. According to the zebra formal model, information corresponding to a query for an XML document is transmitted to a user.

여기서 사용자별 접근 통제 규칙은 상기 사용자에 대한 상기 XML 문서의 특정 정보에 대하여 허용 또는 거부로 명시되는 것을 특징으로 할 수 있다.The access control rule for each user may be characterized as being allowed or denied for specific information of the XML document for the user.

그리고, 상기 사용자별 접근 통제 규칙은 전술한 바와 같이 특정 규칙에 있어서 충돌이 발생하는 경우, 허용 중복 또는 거부 중복 알고리즘에 따라 사용자별 접근 통제 규칙이 결정될 수 있다.As described above, when a conflict occurs in a specific rule as described above, the access control rule for each user may be determined according to an allowable overlap or a deny overlap algorithm.

마지막으로, 보안 검증부(640)는 상기 프로세스 알제브라 정형 모델을 FDR 모델 체킹 도구를 이용하여 상기 XML 문서에 대한 보안 검증을 수행한다.Finally, the security verification unit 640 performs security verification on the XML document using the process Alzebra formal model using an FDR model checking tool.

이는, 생성된 프로세스 알제브라 정형 모델의 보안 적합성을 평가하는 것으로 전술한 바와 동일하므로 중복된 상술은 생략하기로 한다.This is to evaluate the security suitability of the generated process Alzebra formal model, which is the same as described above, and thus redundant description will be omitted.

한편, 본 발명은 XML 기반의 접근 통제 모델의 정형 명세 방법은 소프트웨어를 통해 실행될 수 있다. 소프트웨어로 실행될 때, 본 발명의 구성 수단들은 필요한 작업을 실행하는 코드 세그먼트들이다. 프로그램 또는 코드 세그먼트들은 프로세서 판독 가능 매체에 저장되거나 전송 매체 또는 통신망에서 반송파와 결합된 컴퓨터 데이터 신호에 의하여 전송될 수 있다.In the meantime, the formal specification method of the XML-based access control model may be executed through software. When implemented in software, the constituent means of the present invention are code segments that perform the necessary work. The program or code segments may be stored on a processor readable medium or transmitted by a computer data signal coupled with a carrier on a transmission medium or network.

컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 테이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 장치의 예로는 ROM, RAM, CD-ROM, DVD±ROM, DVD-RAM, 자기 테이프, 플로피 디 스크, 하드 디스크(hard disk), 광데이터 저장장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 장치에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The computer-readable recording medium includes all kinds of recording devices in which data is stored which can be read by a computer system. Examples of computer-readable recording devices include ROM, RAM, CD-ROM, DVD ± ROM, DVD-RAM, magnetic tape, floppy disks, hard disks, and optical data storage devices. The computer readable recording medium can also be distributed over network coupled computer devices so that the computer readable code is stored and executed in a distributed fashion.

본 발명은 도면에 도시된 일 실시예를 참고로 하여 설명하였으나 이는 예시적인 것에 불과하며 당해 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 실시예의 변형이 가능하다는 점을 이해할 것이다. 그러나, 이와 같은 변형은 본 발명의 기술적 보호범위내에 있다고 보아야 한다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해서 정해져야 할 것이다.Although the present invention has been described with reference to one embodiment shown in the drawings, this is merely exemplary and will be understood by those of ordinary skill in the art that various modifications and variations can be made therefrom. However, such modifications should be considered to be within the technical protection scope of the present invention. Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.

도 1은 XPath 언어로 표현한 XML 문서의 일 례를 도시한 것이다.1 illustrates an example of an XML document expressed in the XPath language.

도 2는 도 1의 XML 문서를 스키마 레벨에서 트리구조로 명시한 것이다.FIG. 2 specifies the XML document of FIG. 1 in a tree structure at the schema level.

도 3은 본 발명에 따른 XML 기반의 접근 통제 모델의 정형 명세 방법의 흐름도이다.3 is a flowchart of a formal specification method of an XML-based access control model according to the present invention.

도 4는 본 발명의 XML 기반의 접근 통제 모델의 정형 명세 방법에 적용되는 스키마 정형 모델을 도시한 것이다.Figure 4 illustrates a schema formal model applied to the formal specification method of the XML-based access control model of the present invention.

도 5는 본 발명에 적용되는 거부 중복 알고리즘을 도시한 것이다 .5 illustrates a rejection redundancy algorithm applied to the present invention.

도 6은 본 발명에 따른 XML 기반의 접근 통제 모델의 정형 명세 장치의 블록도이다.6 is a block diagram of a formal specification apparatus of an XML-based access control model according to the present invention.

Claims (15)

계층적 트리 구조 형태로 구성된 XML 문서에 대하여 상기 XML 문서의 스키마 및 경로 지정 언어에 따른 사용자별 접근 통제 규칙을 이용하여 접근 통제 모델을 생성하는 단계;Generating an access control model for an XML document having a hierarchical tree structure using a user-specific access control rule according to a schema and a routing language of the XML document; 상기 접근 통제 모델을 프로세스 알제브라 언어로 변환하여 상기 XML 문서의 특정 노드의 속성 이름을 대수값을 표현한 프로세스 알제브라 정형 모델을 생성하는 단계; Converting the access control model into a process Alzebra language to generate a process Alzebra formal model representing algebraic values of attribute names of specific nodes of the XML document; 상기 XML 문서에 대하여 사용자의 쿼리가 발생하면, 상기 사용자의 쿼리를 프로세스 알제브라 언어로 변환하여 상기 접근 통제 모델에 대한 요구사항으로 명세하고, 상기 사용자에게 상기 프로세스 알제브라 정형 모델에 따라 상기 XML 문서에 대한 쿼리에 대응되는 정보를 전송하는 단계; 및When a user's query occurs on the XML document, the user's query is converted into a process Alzebra language and specified as a requirement for the access control model, and the user is provided with the XML document according to the process Alzebra formal model. Transmitting information corresponding to a query for; And 상기 프로세스 알제브라 정형 모델을 FDR 모델 체킹 도구를 이용하여 상기 XML 문서에 대한 보안 검증을 수행하는 단계를 포함하는 XML 기반의 접근 통제 모델의 정형 명세 방법.And performing a security verification on the XML document using the process Alzebra formal model using an FDR model checking tool. 제 1 항에 있어서,The method of claim 1, 상기 경로 지정 언어는 XPath 경로 지정 언어를 포함하는 것을 특징으로 하는 XML 기반의 접근 통제 모델의 정형 명세 방법.Wherein the routing language comprises an XPath routing language, the formal specification method of the XML-based access control model. 제 1 항에 있어서,The method of claim 1, 상기 프로세스 알제브라 정형 모델을 생성하는 단계는Generating the process Alzebra formal model 상기 접근 통제 모델을 상기 경로 지정 언어를 이용하여 오토마타형 스키마 모델로 변환하는 단계;Converting the access control model to an automata schema model using the routing language; 상기 오토마타형 스키마 모델을 프로세스 알제브라 언어로 정형 명세하여 스키마 정형 모델을 생성하는 단계; 및Formalizing the automata type schema model in a process Alzebra language to generate a schema typed model; And 상기 스키마 정형 모델을 프로세스 알제브라 언어를 이용하여 프로세스 알제브라 정형 모델을 생성하는 단계를 포함하는 것을 특징으로 하는 XML 기반의 접근 통제 모델의 정형 명세 방법.And generating a process Alzebra formal model using the Schema formal model using a process Alzebra language. 제 3 항에 있어서,The method of claim 3, wherein 상기 스키마 정형 모델
Figure 112007090735993-pat00148
는 상기 XML 문서를 트리 구조를 가지는 복수 개의 노드로 분할하였을 경우, XML 트리의 루트 노드로 전이하기 위한 입력 알파벳
Figure 112007090735993-pat00149
, 비 말단 노드 집합
Figure 112007090735993-pat00150
, 전이 함수
Figure 112007090735993-pat00151
, 상기 입력 알파벳의 초기 상태
Figure 112007090735993-pat00152
와 상기 비 말단 노드 집합
Figure 112007090735993-pat00153
으로 구성된 상태 집합
Figure 112007090735993-pat00154
, 상기 XML 트리의 엘리번트 이름을 나타내는 입력 알파벳
Figure 112007090735993-pat00155
및 속성 이름의 집합
Figure 112007090735993-pat00156
를 포함하는 튜플 (
Figure 112007090735993-pat00157
,
Figure 112007090735993-pat00158
,
Figure 112007090735993-pat00159
,
Figure 112007090735993-pat00160
,
Figure 112007090735993-pat00161
,
Figure 112007090735993-pat00162
)로 구성되는 것을 특징으로 하는 XML 기반의 접근 통제 모델의 정형 명세 방법.
The schema formal model
Figure 112007090735993-pat00148
Is an input alphabet for transitioning to the root node of the XML tree when the XML document is divided into a plurality of nodes having a tree structure.
Figure 112007090735993-pat00149
, Non-end node set
Figure 112007090735993-pat00150
, Transition function
Figure 112007090735993-pat00151
, Initial state of the input alphabet
Figure 112007090735993-pat00152
And the set of non-terminal nodes
Figure 112007090735993-pat00153
Set of states
Figure 112007090735993-pat00154
An input alphabet representing an element name of the XML tree
Figure 112007090735993-pat00155
And set of attribute names
Figure 112007090735993-pat00156
Tuples containing
Figure 112007090735993-pat00157
,
Figure 112007090735993-pat00158
,
Figure 112007090735993-pat00159
,
Figure 112007090735993-pat00160
,
Figure 112007090735993-pat00161
,
Figure 112007090735993-pat00162
The formal specification method of the XML-based access control model, characterized in that consisting of.
제 3 항에 있어서,The method of claim 3, wherein 상기 오토마타형 스키마 모델은 트리구조를 가지는 상기 XML 문서의 특정 노드의 속성 이름을 대수 표현으로 전환하여, 상기 대수 표현으로 전환된 속성값이 참일 경우에만 다음 하위 노드의 질의를 수행하도록 구성되는 것을 특징으로 하는 XML 기반의 접근 통제 모델의 정형 명세 방법.The automata type schema model is configured to convert an attribute name of a specific node of the XML document having a tree structure to an algebraic expression and to perform a query of the next lower node only when the attribute value converted to the algebraic expression is true. A formal specification method of an XML-based access control model. 제 1 항에 있어서,The method of claim 1, 상기 사용자별 접근 통제 규칙은 상기 사용자에 대한 상기 XML 문서의 특정 정보에 대하여 허용 또는 거부로 명시되는 것을 특징으로 하는 XML 기반의 접근 통제 모델의 정형 명세 방법.The access control rule for each user is a formal specification method of the XML-based access control model, characterized in that specified to allow or deny specific information of the XML document for the user. 제 1 항에 있어서,The method of claim 1, 상기 사용자별 접근 통제 규칙 중 특정 접근 통제 규칙에 있어서 충돌이 발생하는 경우, 허용 중복 또는 거부 중복 알고리즘에 따라 상기 사용자별 접근 통제 규칙이 결정되는 것을 특징으로 하는 XML 기반의 접근 통제 모델의 정형 명세 방법.If a conflict occurs in a specific access control rule of the user-specific access control rules, the formal specification method of the XML-based access control model characterized in that the access control rules for each user is determined according to the allowed duplicate or deny duplicate algorithm . 제 1 항 내지 제 7 항 중 어느 한 항의 방법을 컴퓨터에서 수행시킬 수 있도록 프로그램으로 기록된 기록매체.A recording medium recorded by a program for performing the method of any one of claims 1 to 7 on a computer. 계층적 트리 구조 형태로 구성된 XML 문서에 대하여 상기 XML 문서의 스키마 및 경로 지정 언어에 따른 사용자별 접근 통제 규칙을 이용하여 접근 통제 모델을 생성하는 접근 통제 모델 생성부;An access control model generation unit for generating an access control model for an XML document having a hierarchical tree structure using a user-specific access control rule according to a schema and a routing language of the XML document; 상기 접근 통제 모델을 프로세스 알제브라 언어로 변환하여 상기 XML 문서의 특정 노드의 속성 이름을 대수값으로 표현한 프로세스 알제브라 정형 모델을 생성하는 프로세스 알제브라 정형 모델 생성부; A process Alzebra formal model generation unit for converting the access control model into a process Alzebra language and generating a process Alzebra formal model expressing an attribute name of a specific node of the XML document as an algebraic value; 상기 XML 문서에 대하여 사용자의 쿼리가 발생하면, 상기 사용자의 쿼리를 프로세스 알제브라 언어로 변환하여 상기 접근 통제 모델에 대한 요구사항으로 명세하고, 상기 사용자에게 상기 프로세스 알제브라 정형 모델에 따라 상기 XML 문서에 대한 쿼리에 대응되는 정보를 전송하는 쿼리 변환부; 및When a user's query occurs on the XML document, the user's query is converted into a process Alzebra language and specified as a requirement for the access control model, and the user is provided with the XML document according to the process Alzebra formal model. A query converter for transmitting information corresponding to the query for the query; And 상기 프로세스 알제브라 정형 모델을 FDR 모델 체킹 도구를 이용하여 상기 XML 문서에 대한 보안 검증을 수행하는 보안 검증부를 포함하는 XML 기반의 접근 통제 모델의 정형 명세 장치.The formal specification apparatus of the XML-based access control model including a security verification unit for performing a security verification for the XML document using the process Alzebra formal model FDR model checking tool. 제 9 항에 있어서,The method of claim 9, 상기 경로 지정 언어는 XPath 경로 지정 언어를 포함하는 것을 특징으로 하는 XML 기반의 접근 통제 모델의 정형 명세 장치.Wherein the routing language comprises an XPath routing language. 제 9 항에 있어서,The method of claim 9, 상기 프로세스 알제브라 정형 모델 생성부는The process Alzebra structured model generation unit 상기 접근 통제 모델을 상기 경로 지정 언어를 이용하여 오토마타형 스키마 모델로 변환하는 오토마타 스키마 모델 변환 모듈; 및An automata schema model conversion module for converting the access control model into an automata schema model using the routing language; And 상기 오토마타형 스키마 모델을 프로세스 알제브라 언어로 정형 명세하여 스키마 정형 모델을 생성하는 스키마 정형 모델 생성 모듈을 포함하며,A schema formal model generation module for generating a schema formal model by formal specification of the automata type schema model in a process Alzebra language, 상기 스키마 정형 모델에 프로세스 알제브라 언어를 적용하여 프로세스 알제브라 정형 모델을 생성하는 것을 특징으로 하는 XML 기반의 접근 통제 모델의 정형 명세 장치.The formal specification apparatus of the XML-based access control model, characterized in that for generating a process Alzebra formal model by applying the process Alzebra language to the schema formal model. 제 11 항에 있어서,The method of claim 11, wherein 상기 스키마 정형 모델
Figure 112007090735993-pat00163
는 상기 XML 문서를 트리 구조를 가지는 복수 개의 노드로 분할하였을 경우, XML 트리의 루트 노드로 전이하기 위한 입력 알파벳
Figure 112007090735993-pat00164
, 비 말단 노드 집합
Figure 112007090735993-pat00165
, 전이 함수
Figure 112007090735993-pat00166
, 상기 입력 알파벳의 초기 상태
Figure 112007090735993-pat00167
와 상기 비 말단 노드 집합
Figure 112007090735993-pat00168
으로 구성된 상태 집합
Figure 112007090735993-pat00169
, 상기 XML 트리의 엘리번트 이름을 나타내는 입력 알파벳
Figure 112007090735993-pat00170
및 속성 이름의 집합
Figure 112007090735993-pat00171
를 포함하는 튜플 (
Figure 112007090735993-pat00172
,
Figure 112007090735993-pat00173
,
Figure 112007090735993-pat00174
,
Figure 112007090735993-pat00175
,
Figure 112007090735993-pat00176
,
Figure 112007090735993-pat00177
)로 구성되는 것을 특징으로 하는 XML 기반의 접근 통제 모델의 정형 명세 장치.
The schema formal model
Figure 112007090735993-pat00163
Is an input alphabet for transitioning to the root node of the XML tree when the XML document is divided into a plurality of nodes having a tree structure.
Figure 112007090735993-pat00164
, Non-end node set
Figure 112007090735993-pat00165
, Transition function
Figure 112007090735993-pat00166
, Initial state of the input alphabet
Figure 112007090735993-pat00167
And the set of non-terminal nodes
Figure 112007090735993-pat00168
Set of states
Figure 112007090735993-pat00169
An input alphabet representing an element name of the XML tree
Figure 112007090735993-pat00170
And set of attribute names
Figure 112007090735993-pat00171
Tuples containing
Figure 112007090735993-pat00172
,
Figure 112007090735993-pat00173
,
Figure 112007090735993-pat00174
,
Figure 112007090735993-pat00175
,
Figure 112007090735993-pat00176
,
Figure 112007090735993-pat00177
Formal specification device of an access control model based on XML, characterized in that consisting of).
제 11 항에 있어서,The method of claim 11, wherein 상기 오토마타형 스키마 모델은 트리구조를 가지는 상기 XML 문서의 특정 노드의 속성 이름을 대수 표현으로 전환하여, 상기 대수 표현으로 전환된 속성값이 참일 경우에만 다음 하위 노드의 질의를 수행하도록 구성되는 것을 특징으로 하는 XML 기반의 접근 통제 모델의 정형 명세 장치.The automata type schema model is configured to convert an attribute name of a specific node of the XML document having a tree structure to an algebraic expression and to perform a query of the next lower node only when the attribute value converted to the algebraic expression is true. Formal specification device of XML based access control model. 제 9 항에 있어서,The method of claim 9, 상기 사용자별 접근 통제 규칙은 상기 사용자에 대한 상기 XML 문서의 특정 정보에 대하여 허용 또는 거부로 명시되는 것을 특징으로 하는 XML 기반의 접근 통제 모델의 정형 명세 장치.And the access control rule for each user is specified as allow or deny for specific information of the XML document for the user. 제 9 항에 있어서,The method of claim 9, 상기 사용자별 접근 통제 규칙 중 특정 접근 통제 규칙에 있어서 충돌이 발생하는 경우, 허용 중복 또는 거부 중복 알고리즘에 따라 상기 사용자별 접근 통제 규칙이 결정되는 것을 특징으로 하는 XML 기반의 접근 통제 모델의 정형 명세 장치.In the case where a conflict occurs in a specific access control rule among the user-specific access control rules, the formal specification apparatus of the XML-based access control model characterized in that the access control rules for each user is determined according to the allowable duplicate or deny duplicate algorithm .
KR1020070132657A 2007-12-17 2007-12-17 Method and apparatus of formal specification based on xml and recording medium using this KR100888678B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070132657A KR100888678B1 (en) 2007-12-17 2007-12-17 Method and apparatus of formal specification based on xml and recording medium using this

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070132657A KR100888678B1 (en) 2007-12-17 2007-12-17 Method and apparatus of formal specification based on xml and recording medium using this

Publications (1)

Publication Number Publication Date
KR100888678B1 true KR100888678B1 (en) 2009-03-13

Family

ID=40698212

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070132657A KR100888678B1 (en) 2007-12-17 2007-12-17 Method and apparatus of formal specification based on xml and recording medium using this

Country Status (1)

Country Link
KR (1) KR100888678B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030038089A (en) * 2001-11-08 2003-05-16 엘지전자 주식회사 Element management system and data service utilizing a data buffer
KR20040080245A (en) * 2003-03-11 2004-09-18 주식회사 다음기술 Method for storing data and method for verifying falsification of the data using thereof
US20070112851A1 (en) 2005-11-07 2007-05-17 Microsoft Corporation Partial XML validation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030038089A (en) * 2001-11-08 2003-05-16 엘지전자 주식회사 Element management system and data service utilizing a data buffer
KR20040080245A (en) * 2003-03-11 2004-09-18 주식회사 다음기술 Method for storing data and method for verifying falsification of the data using thereof
US20070112851A1 (en) 2005-11-07 2007-05-17 Microsoft Corporation Partial XML validation

Similar Documents

Publication Publication Date Title
Biswas et al. Interoperability and synchronization management of blockchain-based decentralized e-health systems
Damiani et al. A fine-grained access control system for XML documents
JP5690935B2 (en) System and method for secure agent information
Hada et al. XML access control language: Provisional authorization for XML documents
Eyers et al. OASIS role-based access control for electronic health records
Gowadia et al. RDF metadata for XML access control
Jo et al. Design of access control system for telemedicine secure XML documents
KR100808143B1 (en) XML data stream processing system and method for managing the access control using XPath
Stojanov et al. Linked data authorization platform
KR100888678B1 (en) Method and apparatus of formal specification based on xml and recording medium using this
Steele et al. Framework and prototype for a secure XML-based electronic health records system
Leighton et al. Access control policy translation, verification, and minimization within heterogeneous data federations
Sadki et al. Resolving conflicting privacy policies in m-health based on prioritization
Parmar et al. XML access control for semantically related XML documents
Belokosztolszki Role-based access control policy administration
Al-Hamdani XML security in healthcare web systems
KR100953714B1 (en) Method and Apparatus of formal specification based on AXML and Recording medium using this
Scaglioso et al. Modern standard-based access control in network services: XACML in action
Leighton et al. Access control policy translation and verification within heterogeneous data federations
Harnoš et al. Analysis of current trends in the development of DSLs and the possibility of using them in the field of information security
Chandramouli A policy validation framework for enterprise authorization specification
Chandramouli Specification and validation of enterprise access control data for conformance to model and policy constraints
Jo et al. Access control model for secure XML documents
May Privacy APIs: Formal models for analyzing legal privacy requirements
Fu et al. Design and Implementation of a Medical Device Data Dictionary System Based on Software Engineering Theory

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130111

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140228

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee