KR100690452B1 - Secure HIS Access Control System with Web-based distributed component technology - Google Patents

Secure HIS Access Control System with Web-based distributed component technology Download PDF

Info

Publication number
KR100690452B1
KR100690452B1 KR1020040059560A KR20040059560A KR100690452B1 KR 100690452 B1 KR100690452 B1 KR 100690452B1 KR 1020040059560 A KR1020040059560 A KR 1020040059560A KR 20040059560 A KR20040059560 A KR 20040059560A KR 100690452 B1 KR100690452 B1 KR 100690452B1
Authority
KR
South Korea
Prior art keywords
access control
control agent
user
request
data
Prior art date
Application number
KR1020040059560A
Other languages
Korean (ko)
Other versions
KR20060010947A (en
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 KR1020040059560A priority Critical patent/KR100690452B1/en
Publication of KR20060010947A publication Critical patent/KR20060010947A/en
Application granted granted Critical
Publication of KR100690452B1 publication Critical patent/KR100690452B1/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/30Authentication, i.e. establishing the identity or authorisation of security principals
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H10/00ICT specially adapted for the handling or processing of patient-related medical or healthcare data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • H04L9/0844Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols with user authentication or key authentication, e.g. ElGamal, MTI, MQV-Menezes-Qu-Vanstone protocol or Diffie-Hellman protocols using implicitly-certified keys

Abstract

본 발명은 웹서비스 기반 의료정보의 보안 접근제어 시스템에 관한 것이다.The present invention relates to a security access control system for web service based medical information.

본 발명은 클라이언트 시스템이 중앙접근제어 에이전트로 사용자 인증을 요청하여 로그인을 하는 제1단계; 중앙접근제어 에이전트가 사용자 인증을 검증하고 그 결과를 클라이언트 시스템과 중앙접근제어 에이전트 간 보안전송을 위한 세션키를 설정하여 클라이언트에 전송하는 제2단계; 인증에 성공한 클라이언트 시스템이 중앙접근제어 에이전트로 데이터 요청 질의를 보내는 제3단계; 중앙접근제어 에이전트가 사용자-역할관계를 이용하여 사용자 요청 적합성을 검증하는 제4단계; 검증에 성공하면 사용자 요청 도메인을 식별하는 제5단계; 사용자 요청 도메인의 해당 병원정보 시스템에 전자의무기록 데이터를 요청하는 제6단계; 해당 병원정보시스템은 전자의무기록 데이터를 중앙접근제어 에이전트으로 보내고 중앙접근제어 에이전트는 그 받은 데이터를 세션키를 이용하여 선택적 암호화한 후 클라이언트 시스템으로 전송하는 제7단계; 클라이언트 시스템은 그 받은 데이터를 복호화한 후 확인하는 제8단계를 구비하는 것을 특징으로 한다.The present invention includes a first step in which the client system requests a user authentication to the central access control agent to log in; A second step of the central access control agent verifying user authentication and transmitting the result to the client by setting a session key for secure transmission between the client system and the central access control agent; A third step of, upon successful authentication, sending a data request query to the central access control agent; A fourth step of the central access control agent verifying user request suitability using a user-role relationship; A fifth step of identifying a user request domain if the verification is successful; A sixth step of requesting electronic medical record data from a corresponding hospital information system of a user request domain; The hospital information system sends the electronic medical record data to the central access control agent, and the central access control agent selectively encrypts the received data using the session key and transmits the received data to the client system; The client system is characterized in that it comprises an eighth step of verifying after decrypting the received data.

다중 병원정보시스템, 접근 제어 에이전트, 접근제어기능(RBAC), XML 보안, 웹 서비스, XML 서명Multiple Hospital Information System, Access Control Agent, Access Control Function (RBAC), XML Security, Web Service, XML Signature

Description

웹서비스 기반 의료정보의 보안 접근제어 시스템{Secure HIS Access Control System with Web-based distributed component technology}Secure HIS Access Control System with Web-based distributed component technology}

도 1은 본 발명의 바람직한 일 실시예에 의한 웹서비스 기반 의료정보의 보안 접근제어 시스템에 대한 개략적인 전체 시스템도이다. 1 is a schematic overall system diagram of a security access control system for web service based medical information according to an embodiment of the present invention.

도 2는 도 1의 보안 접근제어 시스템에 대한 4티어(Tier) 시스템 구조도이다.FIG. 2 is a four-tier system structure diagram of the security access control system of FIG. 1.

도 3은 중앙접근제어 에이전트에서 요청한 역활에 대응하는 병원정보시스템의 사용자로의 매핑과정의 일예이다.Figure 3 is an example of the mapping process to the user of the hospital information system corresponding to the role requested by the central access control agent.

도 4는 중앙접근제어 에이전트 인식 포멧과 병원정보시스템 인식 포멧간의 의미적으로 동등한 구조적 변환 과정의 일예이다.4 is an example of a semantically equivalent structural conversion process between the central access control agent recognition format and the hospital information system recognition format.

도 5는 승인된 요청에 대한 클라이언트 시스템과 중앙접근제어 에이전트 간의 프로세스 순서도이다.5 is a process flow diagram between a client system and a central access control agent for an approved request.

도 6은 도 5에서 클라이언트 요청 튜플(tuple)형식(EBNF Syntax)을 설명하기 위한 설명도이다.FIG. 6 is an explanatory diagram for explaining a client request tuple format (EBNF Syntax) in FIG. 5.

도 7은 도 1의 중앙접근 제어 에이전트의 상태도이다.7 is a state diagram of the central access control agent of FIG.

도 8은 도 7의 요청 데이터, 암호화 트리, 결과 데이터이다.FIG. 8 is the request data, encryption tree, and result data of FIG.

도 9는 도 1의 지역접근제어 에이전트와 병원정보시스템간의 프로세스 순서 도이다.9 is a process flow diagram between the local access control agent and the hospital information system of FIG.

도 10은 도 1의 지역접근제어 에이전트의 상태도이다.10 is a state diagram of the local access control agent of FIG.

본 발명은 웹서비스 기반 의료정보에 대한 보안 접근제어 시스템에 관한 것이다.The present invention relates to a security access control system for web service based medical information.

의료정보는 개인 사생활에 대한 민감한 정보와 기밀이 요구되는 정보들이다. 현재, 중요정보에 대한 데이터 침해사례는 해마다 증가추세에 있으며, 의료에 있어서도 또한 늘고 있다. "어디든지, 언제든지, 어떤것 이든지(Anywhere, anytime, anything)"가 근원이 되는 유비퀴토스(ubiquitous) 환경 지향을 목표로 산업계와 학술계 모두 정진하고 있으며, 웹은 실생활의 유비퀴토스를 이루기 위한 좋은 장이 되고 있다. Medical information is sensitive and confidential information about personal privacy. At present, the number of data breaches for sensitive information is increasing year by year, and also in the medical field. Both the industry and the academic community are devoted to ubiquitous environmental orientation, where "anywhere, anytime, anything" is the source. It is becoming a chapter.

웹을 통한 의료서비스의 수준이 아직은 미약하지만 종이 없는 디지털 병원의 등장 및 가정에서의 제택의료 서비스 등 다양한 시도는 곧 웹을 통한 광범위한 의료서비스가 시작될 것임을 예고한다. 환자는 다양한 병원을 옮겨 다니며, 각 환자의 데이터는 각 병원에 분산되어 저장이 된다. 여러 곳에 분산된 환자데이터에 대한 통합적인 정보 수집을 통해, 환자에 대한 더욱 질 좋은 서비스를 기대할 수 있다. 또한, 병원 간 정보공유는 다양한 의료시술에 대한 간접적 경험의 폭을 넓혀 역시 병원 서비스의 질을 향상시킨다. Although the level of medical services over the web is still weak, various attempts such as the emergence of paperless digital hospitals and home care services at home foretell a broad range of medical services over the web. Patients move from one hospital to another, and each patient's data is distributed and stored in each hospital. By integrating information about patient data distributed in many places, we can expect better quality services for patients. In addition, information sharing between hospitals broadens the indirect experience of various medical procedures and also improves the quality of hospital services.

재택의료 서비스가 활성화 되려면, 웹을 통한 분산된 다양한 병원정보시스템에 접근하여 환자 자신의 진료 정보를 보고자 하는 환자의 욕구를 충족시킬 수 있어야 한다. 이와 더불어 환자데이터가 저장된 병원정보시스템 간의 정보 공유를 통한 안정적인 접근제어 및 보호되지 않는 공용 망(Internet)을 통한 데이터 전송에 있어서 여러 악의적인 공격으로부터의 의료 데이터 보호는 중요한 이슈가 되고 있다. 즉, 병원정보시스템(Hospital Information System)(이하, HIS라 함)을 위한 강력한 보안접근제어 시스템이 요구된다. 또한 접근이 허가된 사용자가 다양한 병원정보 시스템을 어디서든지 장소에 제약 받지 않고 접근할 수 있는 시스템이 요구된다.In order for home care services to be activated, it is necessary to access various hospital information systems distributed through the web to satisfy the patient's desire to view their own medical information. In addition, the protection of medical data from various malicious attacks has become an important issue in stable access control through sharing information between hospital information systems in which patient data is stored and data transmission through unprotected public Internet. That is, a strong security access control system for a hospital information system (hereinafter referred to as HIS) is required. In addition, there is a need for a system that allows an authorized user to access various hospital information systems anywhere without restriction.

본 발명에서는 접근이 허가된 사용자가 다양한 병원정보 시스템을 어디서든지 장소에 제약 받지 않고 접근할 수 있는 시스템을 제안한다.The present invention proposes a system that allows an authorized user to access various hospital information systems anywhere without restriction.

종래의 병원정보시스템(HIS)에 대한 보안 접근제어 시스템은 사용자 기반 접근제어 시스템(User-based Access Control System)인데, 사용자 기반 접근제어시스템은 사용자의 접근제어를 하기위해 각 사용자에게 각 데이터에 대한 접근 제어 리스트(Access Control Lists(ACLs))를 할당하는 것으로, 사용자 기반 접근제어시스템에는 강제적 접근 통제(Mandatory Access Control(MAC))와 임의적 접근 통제(Discretionary Access Control(DAC))가 있다. 종래의 사용자 기반 접근제어 시스템의 강제적 접근 통제(MAC)와 임의적 접근 통제(DAC)는 서로 다른 도메인 간의 유기적인 협력을 이끌어내는 유연한 접근 권한을 주는데 한계가 있으며, 확장성과 관리운용에 문제점이 있다. 특히, 내부에서 자원을 공유할 때 발생하는 보안 문제 및 자료 접금 권한의 부여 없이 의사나 약사, 간호사, 원무과, 일반 행정직, 의료직 봉사자등 내부인에 의한 불법적 사용이 문제점이다.The conventional security access control system for the hospital information system (HIS) is a user-based access control system (User-based Access Control System), the user-based access control system for each user to control the user's access to each data Assigning Access Control Lists (ACLs), user-based access control systems include Mandatory Access Control (MAC) and Discretionary Access Control (DAC). Mandatory access control (MAC) and discretionary access control (DAC) of the conventional user-based access control system is limited in giving flexible access rights that lead to organic cooperation between different domains, and there is a problem in scalability and management operation. In particular, there is a problem of illegal use by insiders such as doctors, pharmacists, nurses, doctors, general administration, medical workers, etc.

본 발명에서는, 이러한 문제점들을 극복하기 위한 대안으로, 병원정보시스템(HIS)에 대한 보안 접근제어 시스템을 역할 기반 접근제어(Role-based Access Control (RBAC)) 시스템으로 하는 것을 제안한다.In order to overcome these problems, the present invention proposes a security access control system for a hospital information system (HIS) as a role-based access control (RBAC) system.

일반적으로 역할 기반 접근제어 시스템을 이용하면 유연한 접근제어를 할 수 있다. 역할 기반 접근제어 시스템은, 사용자가 접근하려는 파일, 디렉터리 등의 객체에 따른 적절한 역할에 소속됨으로써 역할의 수행에 필요한 최소 자원에만 접근 가능한데, 이를 통해 역할 기반 접근제어 시스템은 권한관리를 매우 단순화시켜 주고, 기업의 특정한 보안정책을 구현하는데 있어서 유연성을 제공한다. In general, a role-based access control system allows flexible access control. The role-based access control system can access only the minimum resources necessary to perform the role by belonging to the appropriate role according to the objects such as files and directories that the user wants to access. Through this, the role-based access control system greatly simplifies authority management. This provides flexibility in implementing enterprise specific security policies.

다시말해, 역할 기반 접근제어(RBAC)는 각 사용자에게 역할을 할당하여 접근제어를 하는데, 각 사용자들의 공통되는 접근제어 리스트를 역할로 묶는다. 역할 기반 접근제어(RBAC)는 시스템에 대한 접근리스트와 사용자를 서로 분리시켜 정책 관리자의 접근제어 관리를 단순화 시키며, 또한 단순한 접근리스트가 아닌 의미 있는 역할을 통한 접근제어를 가능케 함으로써 관리를 더욱 정교하게 한다. 이때 여러 병원정보시스템(HIS) 간의 정보공유를 위해서 각 병원정보시스템(HIS)들 간은 서로 신뢰관계여야 한다. 이 경우 새로운 병원정보시스템(HIS)이 기존 병원정보시스템(HIS)과 신뢰관계를 맺기 위한 트랜잭션은 기하급수적으로 증가한다. 따라서 본 발명에서는 이런 제약사항을 해결하기 위해 중앙접근제어시스템과 각 병원정보시스템(HIS) 간의 신뢰관계를 형성 후 각 병원정보시스템(HIS)이 중앙접근제어시스 템을 통해 정보공유를 함으로써 선형적인 신뢰관계를 만든다. In other words, role-based access control (RBAC) assigns a role to each user to perform access control, grouping each user's common access control list into roles. Role-based access control (RBAC) simplifies policy manager access control management by separating access lists and users from the system, and also enables more sophisticated management by enabling access control through meaningful roles rather than simple access lists. do. At this time, in order to share information between several hospital information systems (HIS), each hospital information system (HIS) must be a trust relationship with each other. In this case, transactions for the new hospital information system (HIS) to establish a trust relationship with the existing hospital information system (HIS) increase exponentially. Therefore, in the present invention, in order to solve this limitation, the hospital information system (HIS) forms a trust relationship between the central access control system and each hospital information system (HIS) and then linearly shares information through the central access control system. Create a trust relationship.

종래의 서버-클라이언트 시스템에서는, 서버 시스템에 모든 사용자와 데이터에 암호와 전자서명 등이 주어짐으로 인해, 기능 집중으로, 과도한 역할을 요구한다. 특히, 종래의 서버-클라이언트 시스템에서는 전체 데이터에 대한 암호화 처리로 인한 과부하가 문제이다. 따라서 서버-클라이언트 시스템의 이러한 과부하 제거가 시급히 요망된다. 따라서 본 발명에서는, 상기와 같은 종래의 문제점을 해결하기위해, 병원정보시스템(HIS)에 있어서 보안시스템의 중요구성요소인 접근제어 시스템을 플랫폼 독립적이며 웹기반 분산 컴포넌트 기술인 웹 서비스를 이용한다. In the conventional server-client system, since all users and data are given passwords, digital signatures, and the like, the server system requires excessive roles due to the concentration of functions. In particular, in the conventional server-client system, the overload due to the encryption process for the entire data is a problem. Therefore, such overload elimination of server-client systems is urgently needed. Therefore, in the present invention, in order to solve the above problems, the access control system which is an important component of the security system in the hospital information system (HIS) uses a web service which is a platform independent and web-based distributed component technology.

일반적으로 표준화 또는 동일 포맷을 갖지 않는 시스템 간의 정보공유는 정보변환을 위해 기하급수적인 비용문제를 만든다. 따라서 본 발명의 보안 접근제어 시스템에서는 표준화 또는 단일화되지 않은 각 병원정보시스템(HIS)의 다양한 형식의 데이터를 확장 마크업 언어(eXtensible Markup Language)(이하, XML이라 함) 기술을 이용한 공통 포맷으로 변환한다. 본 발명에서 XML기술을 이용한 공통 포맷으로 변환함으로써, 본 발명의 보안 접근제어 시스템을 이용하는 사용자에게는 동일한 포맷의 사용자 인터페이스를 제공하여 혼동되지 않게 하며, 또한 시스템 간의 지수적인 정보변환 비용문제를 선형적으로 만들게 되어 비용절감을 가져온다.In general, sharing information between systems that do not have standardization or the same format creates exponential cost problems for information conversion. Therefore, in the security access control system of the present invention, data of various formats of each hospital information system (HIS) that are not standardized or unified are converted into a common format using eXtensible Markup Language (hereinafter referred to as XML) technology. do. In the present invention, by converting to a common format using XML technology, the user using the security access control system of the present invention is provided with a user interface of the same format so as not to be confused, and linearly solves the problem of exponential information conversion between systems. The cost is reduced.

본 발명에서는 강력한 텍스트 변환을 지원하는 XML 기술인 XML 스타일시트 언어 변환(XML Stylesheet Language Transformation)(이하, XSLT라 함)을 이용한 사용자가 원하는 다양한 뷰를 제공한다. 따라서 본 발명의 보안 접근제어 시스템을 이용한 병원정보시스템(HIS)은, 향후 병원정보시스템(HIS)의 표준화가 진행이 될 때, 병원정보의 표준화된 시스템으로의 이전이 용이하다.The present invention provides various views desired by a user using XML Stylesheet Language Transformation (hereinafter referred to as XSLT), which is an XML technology supporting powerful text transformation. Therefore, the hospital information system (HIS) using the security access control system of the present invention, when the standardization of the hospital information system (HIS) in the future, it is easy to transfer the hospital information to the standardized system.

본 발명에서는 종래의 병원정보시스템(HIS)을 이용하던 사용자에게는 동일한 접근권한을 유지하며, 다른 병원정보시스템(HIS)을 이용하는 사람에게는 전역 접근 정책권한을 할당하여 분리된 이중 구조로 정책관리를 한다.In the present invention, the user who used the conventional hospital information system (HIS) maintains the same access authority, and the person using the other hospital information system (HIS) assigns global access policy authority to manage the policy in a separate dual structure. .

본 발명에서는 병원정보시스템(HIS) 간 환자데이터 공유 시, 민감한 또는 기밀 데이터에 대한 보호를 위해, 월드와이드웹 컨소시엄(World Wide Web Consortium)(W3C)에서 제안된 XML 기술을 이용한 XML 암호화(Encryption)와 XML 서명(Signature)을 이용하여 선택적 암호화 /서명 기법을 통한 효과적 데이터 보호를 한다. 즉, 본 발명은 부분적인 암호화 및 전자 서명이 가능한 XML 보안(Security)을 이용하여 민감한 데이터에 대한 선택적 암호화와 전자 서명을 제공하여 종래의 전체 데이터에 대한 암호화 처리로 인한 과부하를 제거한다.In the present invention, in order to protect sensitive or confidential data when sharing patient data between hospital information systems (HIS), XML encryption using XML technology proposed by the World Wide Web Consortium (W3C) And XML Signature to effectively protect data through selective encryption / signature technique. That is, the present invention eliminates the overload caused by the conventional encryption process for the entire data by providing selective encryption and digital signature for sensitive data using XML security that enables partial encryption and digital signature.

본 발명이 이루고자 하는 기술적 과제는 접근이 허가된 사용자가 다양한 병원정보 시스템을 어디서든지 장소에 제약 받지 않고 접근할 수 있게 하는 의료정보의 보안 접근 제어 시스템을 제공하는 데 있다.An object of the present invention is to provide a security access control system for medical information that allows an authorized user to access various hospital information systems anywhere without restriction.

본 발명이 이루고자 하는 또 다른 기술적 과제는, 여러 병원 접근 시스템에 대한 동일한 접근 사용자 인터페이스를 보장하고, 각 병원의 고유 병원정보시스템을 유지하여 별다른 수정 없이 그대로 이용할 수 있는 웹서비스 기반 의료정보의 보안 접근 제어 시스템을 제공하는 데 있다. Another technical problem to be achieved by the present invention is to ensure the same access user interface for multiple hospital access systems, to maintain a unique hospital information system of each hospital, security access of web service-based medical information that can be used as it is without any modification To provide a control system.

본 발명이 이루고자 하는 또 다른 기술적 과제는, 기존 병원정보시스템을 사 용하는 사용자의 접근권한을 유지함과 동시에, 다른 병원정보시스템을 이용하는 사람에게는 전역 접근 정책권한을 할당하여 분리된 이중 구조로 정책관리를 하는 웹서비스 기반 의료정보의 보안 접근 제어 시스템을 제공하는 데 있다.Another technical problem to be achieved by the present invention, while maintaining the access rights of the user using the existing hospital information system, while assigning global access policy authority to people using other hospital information system policy management in a separate dual structure The present invention provides a security access control system for web services based medical information.

본 발명이 이루고자 하는 또 다른 기술적 과제는 민감한 또는 기밀 데이터에 대한 보호를 위해, XML 암호화와 XML 서명을 이용하여 선택적 암호화 /서명 기법을 이용하는 웹서비스 기반 의료정보의 보안 접근 제어 시스템을 제공하는 데 있다.Another technical problem to be achieved by the present invention is to provide a security access control system for web services based medical information using selective encryption / signature technique using XML encryption and XML signature to protect sensitive or confidential data. .

이하 본 발명의 일 실시예에 의한 웹서비스 기반 의료정보의 보안 접근제어 시스템의 구성 및 동작을 첨부한 도면을 참조하여 상세히 설명한다. 우선 시스템의 구성에 대해 설명하고, 다음은 보안서비스 구성에 대해서 설명한다.Hereinafter, a configuration and operation of a security access control system for a web service based medical information according to an embodiment of the present invention will be described in detail with reference to the accompanying drawings. First, the configuration of the system will be described, and then the security service configuration will be described.

1. 시스템구성1. System Configuration

도 1은 본 발명의 바람직한 일 실시예에 의한 웹서비스 기반 의료정보의 보안 접근제어 시스템에 대한 개략적인 전체 시스템도이다. 도 1의 시스템 구성은 클라이언트 시스템(100), 중앙접근제어 에이전트(Acccess Control Central Agent)(이하, ACC라 함)(200), 로컬 인트라넷(local intranet)(300)으로 크게 나누어지며, 로컬 인트라넷(300)는 지역접근제어 에이전트(Local Acccess Control Agent)(이하, LAC라 함)(400)와 기존의 병원정보시스템(HIS)(500)로 이루어진다. 지역접근제어 에이전트(LAC)(400)는 프록시 서버(proxy server)(450)을 구비하며, 기존의 병원정보시스템(HIS)(500)은 레거시 서버(legacy server)(530), 전자의무기록(Electronic Medical Record)(이하, EMR이라 함) 데이터베이스(560)를 구비한다.1 is a schematic overall system diagram of a security access control system for web service based medical information according to an embodiment of the present invention. The system configuration of FIG. 1 is largely divided into a client system 100, an access control central agent (hereinafter referred to as an ACC) 200, a local intranet 300, and a local intranet ( 300 consists of a Local Access Control Agent (hereinafter referred to as LAC) 400 and an existing Hospital Information System (HIS) 500. The local access control agent (LAC) 400 includes a proxy server 450, and the existing hospital information system (HIS) 500 includes a legacy server 530, an electronic medical record ( Electronic Medical Record (hereinafter referred to as EMR) database 560.

클라이언트 시스템(100)은, 사용자가 이를 통해 중앙접근제어 에이전트(ACC)(200)에 접근하게 하는 시스템이다. 즉, 클라이언트 시스템(100)은 사용자가 중앙접근제어 에이전트(ACC)(200)를 통해 로컬 인트라넷(400)으로 자료룔 요청하고 이로 부터 수신된 자료를 받기위한 시스템이다. 클라이언트 시스템(100)은 의사, 약사, 간호사, 원무과직원, 의료 기술직 등의 컴퓨터 시스템에 해당한다. 클라이언트 시스템(100)은 중앙접근제어 에이전트(ACC)(200)를 통해 로컬 인트라넷(400)에 자료를 요청할 때에는 클라이언트의 개인키를 이용하여 서명을 첨부하며, 그 요청 결과로 로컬 인트라넷(400)에서 반환된 결과 데이타를 복호화한다. 즉, 클라이언트 시스템(100)은 사용자의 인증(로그인), 중앙접근제어 에이전트(ACC)(200)에서의 암호화 된 데이터에 대한 복호화, 사용자의 전자서명 첨가, 전송 데이터의 무결성 검증 및 편리한 사용자 인터페이스를 제공한다.Client system 100 is a system that allows a user to access central access control agent (ACC) 200 through it. That is, the client system 100 is a system for a user to request data from the local intranet 400 through the central access control agent (ACC) 200 and receive data received therefrom. The client system 100 corresponds to a computer system such as a doctor, a pharmacist, a nurse, a practitioner, a medical technician, or the like. When the client system 100 requests data to the local intranet 400 through the central access control agent (ACC) 200, the client system 100 attaches a signature using the private key of the client, and as a result of the request, the local intranet 400 Decrypt the returned result data. In other words, the client system 100 provides the user's authentication (login), decryption of the encrypted data in the central access control agent (ACC) 200, addition of the user's digital signature, verification of the integrity of the transmitted data, and a convenient user interface. to provide.

중앙접근제어 에이전트(ACC)(200)는 사용자에게 이를 통해 여러 상이한 플랫폼의 병원정보시스템에 접근할 수 있게 해주는 시스템이다. 따라서, 중앙접근제어 에이전트(ACC)(200)는 사용자의 인증(User authentication), 감사(Audit) 및 병원정보시스템(HIS)(500)의 전자의무기록(EMR) 데이터 요청에 대한 낮은 수준의 접근제어 유효성(User-Role 관계)을 검사한다. The central access control agent (ACC) 200 is a system that allows users to access hospital information systems of various different platforms through this. Accordingly, the Central Access Control Agent (ACC) 200 provides a low level access to User Authentication, Audit and Hospital Medical System (HIS) 500 requests for Electronic Medical Records (EMR) data. Check control validity (User-Role relationship).

중앙 접근제어 에이전트(200)는 다중 병원정보시스템 데이터에 접근 요청하는 사용자의 인증 및 요청 정보에 대한 접근제어 적합성 여부를 검증하며, 승인된 요청에 대해 병원정보시스템(HIS)(500)의 지역접근제어 에이전트(LAC)(400)로 사용 자의 요청정보를 전달한다. 중앙접근제어 에이전트(ACC)(200)와 지역접근제어 에이전트(LAC) 간은 상호 신뢰관계에 있으며, 따라서 중앙접근제어 에이전트(ACC)(200)를 통한 사용자의 적합한 요청을 병원정보시스템(HIS)(500)은 승인한다. 지역접근제어 에이전트(LCC)(400)를 통해 중앙접근제어 에이전트(ACC)(200)로 반환된 데이터에 대해 해당 객체(object) 타입의 기밀/민감 정보에 따른 선택적 암호화를 통해 클라이언트 시스템(100)에 반환하여 선택적 데이터 보호를 제공한다. 특정 병원정보시스템(HIS)(500)에 접근요청을 하는 사용자의 접근제어 검증을 위해 사용되는, 정책 정보는 사용자(User), 역할(Role), 사용자-역할 할당(User-Role Assignment)으로 이루어지며 이 정책정보는 해당 병원정보시스템(HIS)(500)의 지역접근제어 에이전트(LAC)(400)와 동기화 되어있다. 다시말해, 중앙접근제어 에이전트(200)는 사용자 인증, 감사(Audit), 정책 관리, 접근제어를 한다. The central access control agent 200 verifies the access control suitability for the authentication and request information of the user requesting access to the multiple hospital information system data, and the local access of the hospital information system (HIS) 500 for the approved request. Delivers the user's request information to the control agent (LAC) (400). The Central Access Control Agent (ACC) 200 and the Local Access Control Agent (LAC) are in a mutual trust relationship, and therefore a user's appropriate request through the Central Access Control Agent (ACC) 200 is transmitted to the hospital information system (HIS). 500 is approved. Client system 100 via selective encryption based on confidential / sensitive information of the object type for data returned to Local Access Control Agent (ACC) 200 through Local Access Control Agent (LCC) 400. Return to provide optional data protection. Policy information, which is used to verify access control of a user requesting access to a specific hospital information system (HIS) 500, consists of a user, a role, and a user-role assignment. This policy information is synchronized with the Local Access Control Agent (LAC) 400 of the Hospital Information System (HIS) 500. In other words, the central access control agent 200 performs user authentication, audit, policy management, and access control.

중앙접근제어 에이전트(200)의 저장소(Repository)는 클라이언트와 지역접근제어 에이전트(400)의 공개키 정보를 갖는 인증키 데이터베이스와 접근 정책 정보를 갖는 정책 데이터베이스, 사용자의 접근 로그정보를 저장하는 로그 데이터베이스로 이루어진다. 정책 데이터베이스는 사용자(User), 역할(Role), 사용자-역할 할당(U-R Assignment) 정보와 요청 데이터의 객체 타입별 암호화 되어야 하는 노드에 대한 정보를 갖고 있다.The repository of the central access control agent 200 includes an authentication key database having public key information of the client and the local access control agent 400, a policy database having access policy information, and a log database storing user access log information. Is done. The policy database contains user, role, user-role assignment information, and information on nodes that should be encrypted by object type of request data.

로컬 인트라넷(300)는 다중 병원시스템들 각각이 소속되어 있는 인트라넷으로, 크게보아 지역접근제어 에이전트(LAC)(400)와 기존의 병원정보시스템(HIS)(500)로 이루어진다.The local intranet 300 is an intranet to which each of the multiple hospital systems belongs, and is largely comprised of a local access control agent (LAC) 400 and an existing hospital information system (HIS) 500.

지역접근제어 에이전트(LAC)(400)는 감사 및 사용자 요청에 대한 높은 수준의 접근제어 유효성을 검사하며, 지역접근제어 에이전트(LAC)(400)는 프록시 서버(proxy server)(450)를 구비한다. 지역접근제어 에이전트(LAC)(400)는 사용자 요청의 사용자-역할(User-Role) 관계 및 병원정보시스템(HIS)(500)의 접근제어 시스템에 의한 역할-허가(Role-Permission) 관계를 검증한다. 병원정보시스템(HIS)(500)의 데이터에 대한 인가된 사용자의 적합한 요청은, 사용자가 기존 사용자인지 또는 외부 사용자인지 여부를 우선적으로 판별한다. 판별된 사용자는 이중정책 권한관리에 의해 구분되어 접근제어가 이루어 진다. 해당 병원정보시스템(HIS)(500)의 기존 사용자에 대한 접근제어를 위한 내부사용자 정책과 속하지 않는 외부 사용자에 대한 접근제어를 위한 외부사용자 정책이 있다. 지역접근제어 에이전트(LAC)(400)는 중앙접근제어 에이전트(ACC)(200)와 병원정보시스템(HIS)(500) 간의 데이터 변환을 담당한다. 중앙접근제어 에이전트(ACC)(200)의 XML 형식의 데이터와 각 병원정보시스템(HIS)(500)의 상이한 형식의 데이터 간의 대응되는 변환을 통해, 클라이언트 시스템(100)은 특정 병원정보시스템(HIS)(500)에 독립된 의미적으로 동등한 XML 형식의 데이터를 얻는다. The Local Access Control Agent (LAC) 400 checks the high level of access control validity for auditing and user requests, and the Local Access Control Agent (LAC) 400 includes a proxy server 450. . The local access control agent (LAC) 400 verifies the user-role relationship of user requests and the role-permission relationship by the access control system of the hospital information system (HIS) 500. do. The appropriate request of the authorized user for the data of the hospital information system (HIS) 500 primarily determines whether the user is an existing user or an external user. The identified users are classified by dual policy authorization and access control is performed. There is an internal user policy for access control for an existing user of the hospital information system (HIS) 500 and an external user policy for access control for an external user that does not belong. The Local Access Control Agent (LAC) 400 is responsible for data conversion between the Central Access Control Agent (ACC) 200 and the Hospital Information System (HIS) 500. Through the corresponding conversion between the XML format data of the central access control agent (ACC) 200 and the data of the different formats of each hospital information system (HIS) 500, the client system 100 is capable of providing a specific hospital information system (HIS). Get the data in semantically equivalent XML format independent of).

지역접근제어 에이전트(LAC)(400)는, 중앙접근제어 에이전트(ACC)(200)의 요청의 역할(Role)을 그 역할(Role)에 대응되는 병원정보시스템(HIS)(500)의 사용자, 즉 사용자′(Role-Mapped User)로 매핑 변환 후, 이렇게 변환된 사용자의 요청을 병원정보시스템(HIS)(500)에 전달한다. 병원정보시스템(HIS)(500)에 의해 반환된 병원정보시스템 인식 포멧(HIS aware-format) 데이터에 대해 중앙접근제어 에이전 트 인식 포멧(ACC aware-format)(XML)으로 의미적으로 동등한 구조적 변환 수행 후 중앙접근제어 에이전트(ACC)(200)로 반환한다. 각 병원정보시스템(HIS)(500)의 관리자는 중앙접근제어 에이전트(ACC)(200)와 병원정보시스템(HIS)(500) 간의 데이터 변환을 담당하는 해당 병원정보시스템(HIS)(500)에 속한 지역접근제어 에이전트(LAC)(400)를 관리한다.Local access control agent (LAC) 400, the role of the request of the central access control agent (ACC) 200 (Role) of the user of the hospital information system (HIS) 500 corresponding to the role (Role), That is, after mapping conversion to 'Role-Mapped User', the converted user's request is transmitted to the hospital information system (HIS) 500. Structurally semantically equivalent to ACC aware-format (XML) for HIS aware-format data returned by HIS 500. After performing the conversion, it returns to the central access control agent (ACC) 200. The manager of each hospital information system (HIS) 500 is assigned to the corresponding hospital information system (HIS) 500 in charge of data conversion between the central access control agent (ACC) 200 and the hospital information system (HIS) 500. Manage the local access control agent (LAC) (400).

또한, 지역접근제어 에이전트(400)는 클라이언트의 병원정보시스템(500)에 대한 접근제어를 위해 사용자(User), 역할(Role), 사용자-역할 할당(U-R Assignment) 정보를 갖는 정책 데이터베이스(Policy Database)를 갖는다. 매핑변환을 위해 역할-사용자′할당 데이터베이스(R-U′Assignment Database) 및 관련된 매핑 테이블을 갖는다.In addition, the local access control agent 400 has a policy database having User, Role, and User-Role Assignment information for controlling access to the hospital information system 500 of the client. Has It has a role-user assignment database and an associated mapping table for mapping conversion.

병원정보시스템(HIS)(500)은 지역접근제어 에이전트(LAC)(400)의 요청에 대한 응답을 한다. 개별적인 전자의무기록 데이터베이스(560)를 갖으며 해당 정책에 따른 사용자 접근제어 즉, 사용자-허가(R-P) 관계 검증을 한다. 기존 내부 사용자에 대한 접근제어와 외부 사용자에 대한 중앙접근제어 에이전트(ACC)(200)의 정책의 역할에 대응되는 추가적인 사용자, 즉, 사용자′(Role-Mapped User)의 리스트를 갖는다. 병원정보시스템(HIS)(500)은 레거시 서버(530), 전자의무기록(EMR)데이터베이스를 구비한다.The hospital information system (HIS) 500 responds to the request of the Local Access Control Agent (LAC) 400. It has a separate electronic medical records database 560 and verifies user access control, ie user-permission (R-P) relationship, according to the policy. It has a list of additional users corresponding to the role of the policy of the central access control agent (ACC) 200 for access control to the existing internal user and the external user, that is, a user 'Role-Mapped User'. The hospital information system (HIS) 500 includes a legacy server 530 and an electronic medical record (EMR) database.

레거시 서버(530)는 교체하기 어렵거나 비용이 많이드는 오래된 기존 병원정보시스템의 서버이다.The legacy server 530 is a server of an old existing hospital information system that is difficult or expensive to replace.

전자의무기록 데이터베이스(560)는 병원에서 사용되는 종래의 종이 문서를 없애고 모든 데이터를 전산매체에 저장한 데이터베이스이다.The electronic medical record database 560 is a database in which all the data are stored in a computer medium without the conventional paper document used in the hospital.

다음은 본 발명의 시스템요구 사항에 대해 간략히 설명한다.The following briefly describes the system requirements of the present invention.

본 발명에서는 각 병원정보시스템(HIS)(500)이 객체 타입(진단서, PACS 영상, 처방서 등 구조적 분류) 별 개념적으로 동일한 환자데이터 포맷을 가지며 단일 포맷을 갖는 데이터로 변환이 가능하다고 가정한다. 이를 통해 데이터 전송 간 XML로 표기된 공통 데이터 포맷을 사용하며 이를 통해 전송 데이터는 각 병원정보시스템(HIS)(500)의 플랫폼에 독립적이 된다. 사용자는 플랫폼에 상관없이 각 병원정보시스템(HIS)(500)을 동일한 접근 인터페이스를 통해 이용하며 상호운용성을 만족한다. In the present invention, it is assumed that each hospital information system (HIS) 500 has a conceptually identical patient data format for each object type (structural classification such as diagnosis, PACS image, prescription, etc.) and can be converted into data having a single format. This uses a common data format, expressed in XML between data transmissions, through which the transmission data becomes platform independent of each hospital information system (HIS) 500. The user uses each hospital information system (HIS) 500 through the same access interface regardless of the platform and satisfies interoperability.

본 발명의 보안 접근제어 시스템은 장소에 상관없이 항상 병원정보시스템(HIS)(500)의 접근성을 보장한다. 각 병원정보시스템(HIS)(500)들은 서로 배타, 독립적이며 오직 중앙접근제어 에이전트(200)를 통해 접근이 가능하다. 중앙접근제어 에이전트(200)를 통한 중앙 관리는 신규 병원정보시스템(500)의 추가, 삭제를 단순화하며, 확장성을 보장한다. 본 발명의 보안 접근제어 시스템을 구성하는 컴포넌트들 간은 서로 독립적(종속성 제거)이어서 개별 컴포넌트의 변경이 다른 컴포넌트에 영향을 미치지 않는다. 즉 개별 컴포넌트의 변경에 유연한 구조를 통해 유연성을 만족한다. 접근제어를 위한 정책관리는 병원정보시스템을 이용하는 기존 내부사용자와 그렇지 않은 외부사용자로 구분된 이중정책을 통해 이뤄진다.The security access control system of the present invention always ensures the accessibility of the hospital information system (HIS) 500 regardless of the place. Each hospital information system (HIS) 500 is mutually exclusive, independent and accessible only through the central access control agent 200. Central management through the central access control agent 200 simplifies the addition and deletion of the new hospital information system 500, and ensures scalability. The components constituting the security access control system of the present invention are independent of each other (dependency removal) so that changes of individual components do not affect other components. That is, the flexibility is satisfied through a flexible structure for changing individual components. Policy management for access control is achieved through the dual policy divided into existing internal users who do not use the hospital information system and external users who do not.

본 발명은 네트워크 전송, 사용자의 데이터 유출 등 데이터의 보호를 위해 암호화, 전자서명을 통한 기밀성, 무결성 등 보안 서비스를 제공하며, 사용자의 공 개키 기반 공인인증서(X.509v3)를 통해 사용자 인증을 하고, 보호가 필요한 민감/기밀 데이터에 대한 선택적 암호화를 통해 기밀성을 제공한다. 본 발명에서는 민감 또는 기밀이 요구되는 중요 데이터에 대한 각 병원정보시스템(500)의 정의가 일치할 때, 그에 따른 각 병원정보시스템(500)의 데이터의 객체 타입별 보호가 필요한 세부정보에 대한 메타데이터(암호화 트리)를 갖는다. 본 발명에서는 전송되는 데이터에 전자서명을 첨부하여 서명된 데이터의 무결성을 보장하며, 기존 병원정보시스템은 자체 방화벽 등에 의해 외부로부터 안전하게 보호되어있다고 가정한다. 본 발명에서는 사용자와 병원정보시스템간의 모든 트랜잭션은 로그 정보를 남겨 감사를 지원한다.The present invention provides security services such as encryption, confidentiality through digital signature, and integrity to protect data such as network transmission and user's data leakage, and performs user authentication through a public key-based public certificate (X.509v3). It provides confidentiality through selective encryption of sensitive / confidential data that needs to be protected. In the present invention, when the definition of each hospital information system 500 for sensitive data that requires sensitivity or confidentiality is matched, the meta-data for the detailed information that needs to be protected according to the object type of the data of each hospital information system 500 accordingly. It has data (encryption tree). In the present invention, by attaching an electronic signature to the transmitted data to ensure the integrity of the signed data, it is assumed that the existing hospital information system is securely protected from the outside by its own firewall or the like. In the present invention, all transactions between the user and the hospital information system leave audit log information to support auditing.

도 2는 도 1의 보안 접근제어 시스템에 대한 4티어(Tier) 시스템 구조도이다. 도2는 도 1의 보안 접근제어 시스템에 대한 이해를 돕고자, 4티어 구조로 나타낸 것이다. 도 2의 보안 접근제어 시스템은, 크게 보아, 클라이언트 시스템(100), 중앙접근제어 에이전트(ACC)(200), 지역접근제어 에이전트(LAC)(400), 기존 병원정보시스템(HIS)(500)의 4티어의 구조로 이루어진다.FIG. 2 is a four-tier system structure diagram of the security access control system of FIG. 1. FIG. 2 is a four-tier structure to help understand the security access control system of FIG. 1. The security access control system of FIG. 2 is, to a large extent, a client system 100, a central access control agent (ACC) 200, a local access control agent (LAC) 400, an existing hospital information system (HIS) 500. Consists of four tiers.

도 2의 4티어구조 시스템의 대략적인 동작 프로세스는 다음과 같다. 사용자는 클라이언트 시스템(100)을 통해 중앙접근제어 에이전트(ACC)(200)에 접근한다. 중앙접근제어 에이전트(ACC)(200)는 사용자를 인증하며, 데이터의 선택적 암호화를 위한 세션키를 전송한다. 사용자의 요청은 중앙접근제어 에이전트(ACC)(200)에 의해 낮은 수준의 요청 적합성 즉 사용자-역할관계(U-R 관계) 검증 후 요청 데이터가 있는 해당 병원정보시스템(HIS)(500)의 지역접근제어 에이전트(LAC)(400)으로 요청 을 전달한다. 전달된 요청은 지역접근제어 에이전트(LAC)(400)에 의해 요청 적합성 즉 사용자-역할관계(U-R 관계)를 재검증한다. 승인된 요청에 대해 병원정보시스템(HIS)(500)가 이해하는 요청 포맷으로 변환한 후 요청을 전달한다. 병원정보시스템(HIS)(500)는 전달된 요청에 대해 사용자에게 인가된 권한인지를 역할-허가 관계(R-P 관계) 검증 후, 승인된 요청에 대해 결과 데이터를 지역접근제어 에이전트(LAC)(400)로 반환한다. 지역접근제어 에이전트(LAC)(400)는 반환된 데이터에 대해 중앙접근제어 에이전트(ACC)(200)가 이해하는 데이터 공통 포맷으로 변환하여 전달하며, 중앙접근제어 에이전트(ACC)(200)는 받은 데이터의 객체 타입에 따른 민감/기밀 정보에 따라 세션키를 이용한 선택적 암호화를 하여 클라이언트 시스템(100)에게 전달한다. 클라이언트 시스템(100)과 중앙접근제어 에이전트(ACC)(200) 간은 세션키를 통한 전송 간 보안을 제공하며, 중앙접근제어 에이전트(ACC)(200)와 지역접근제어 에이전트(LAC)(400)는 공개키 기반 공인인증서를 이용한 암호화를 통해 기밀성을 유지한다. 병원정보시스템(HIS)(500)과 지역접근제어 에이전트(LAC)(400) 간의 전송은 병원 내부의 방화벽에 의해 보안 유지되어 있다고 가정한다. 모든 요청, 응답에 대한 트랜잭션은 로그정보를 남겨 감사를 지원한다. 도 2의 4티어(4-Tier)구조 시스템의 각 구성요소별 역할을 정리하면 다음과 같다.An approximate operational process of the four tier structure system of FIG. 2 is as follows. The user accesses the central access control agent (ACC) 200 through the client system 100. The central access control agent (ACC) 200 authenticates the user and transmits a session key for selective encryption of data. The user's request is controlled by the Central Access Control Agent (ACC) 200 for local access control of the corresponding hospital information system (HIS) 500 with the requested data after verification of the low level of request suitability, ie user-role relationship (UR relationship). The request is forwarded to the agent (LAC) 400. The forwarded request is revalidated by the Local Access Control Agent (LAC) 400 to verify the request conformance, ie user-role relationship (U-R relationship). The approved request is converted into a request format understood by the hospital information system (HIS) 500 and then forwarded. The hospital information system (HIS) 500 verifies whether the authority is authorized to the user for the forwarded request, and then verifies the result data for the approved request to the local access control agent (LAC) 400. Return). The Local Access Control Agent (LAC) 400 converts the returned data into a data common format understood by the Central Access Control Agent (ACC) 200, and delivers the data. The Central Access Control Agent (ACC) 200 receives the received data. Selective encryption using a session key is transmitted to the client system 100 according to sensitive / confidential information according to the object type of data. The client system 100 and the central access control agent (ACC) 200 provide security between transmissions through the session key, and the central access control agent (ACC) 200 and the local access control agent (LAC) 400 Maintains confidentiality through encryption using public key-based accredited certificates. It is assumed that the transmission between the hospital information system (HIS) 500 and the local access control agent (LAC) 400 is secured by a firewall inside the hospital. All request and response transactions leave log information to support auditing. The role of each component of the 4-tier structure system of FIG. 2 is summarized as follows.

클라이언트 시스템(100)은 사용자가 중앙접근제어 에이전트(200)를 통해 다중 병원정보시스템(500)에 접근 할 수 있는 단말 노드에 해당하며, 사용자의 인증(로그인) 및 접근제어 에이전트 간의 암호화 된 데이터의 복호화와 사용자의 전자서명 첨가, 전송 데이터의 무결성 검증 및 편리한 사용자 인터페이스를 제공한다. 모 든 사용자는 고유 인증서(X.509v3)를 갖으며, 인증서 기반 사용자의 인증을 한다.The client system 100 corresponds to a terminal node where a user can access the multi-clinic information system 500 through the central access control agent 200, and the user's authentication (login) and the encrypted data between the access control agent It provides decryption, adding digital signature of user, verifying integrity of transmitted data and convenient user interface. Every user has a unique certificate (X.509v3) and authenticates a certificate-based user.

중앙접근제어 에이전트(ACC)(200)는 사용자의 인증(User authentication), 감사(Audit) 및 병원정보시스템(HIS)(500)의 전자의무기록(EMR) 데이터 요청에 대한 낮은 수준의 접근제어 유효성 사용자-역할 관계(User-Role 관계)을 검사한다. 승인된 요청에 대해 병원정보시스템(HIS)(500)의 지역접근제어 에이전트(LAC)(400)로 사용자의 요청정보를 전달한다. 중앙접근제어 에이전트(ACC)(200)와 지역접근제어 에이전트(LAC)(400) 간은 상호 신뢰관계에 있어, 중앙접근제어 에이전트(200)를 통한 사용자의 적합한 요청을 병원정보시스템(500)은 승인한다. 지역접근제어 에이전트(LAC)(400)를 통해 중앙접근제어 에이전트(ACC)(200)로 반환된 데이터에 대해 해당 오브젝트 타입의 기밀/민감 정보에 따른 선택적 암호화를 통해 클라이언트 시스템(100)에 반환하여 선택적 데이터 보호를 제공한다. 특정 병원정보시스템(HIS)(500)에 접근요청을 하는 사용자의 접근제어 검증을 위해 사용되는, 정책 정보(사용자(User), 역할(Role), 사용자-역할 관계(User-Role Assignment))는 해당 병원정보시스템(HIS)(500)의 지역접근제어 에이전트(LAC)(400)와 동기화 되어있다.The Central Access Control Agent (ACC) 200 provides a low level of access control effectiveness for User Authentication, Audit and Hospital Medical System (HIS) 500 requests for Electronic Medical Record (EMR) data. Examine the user-role relationship. The user's request information is transmitted to the local access control agent (LAC) 400 of the hospital information system (HIS) 500 for the approved request. Since the central access control agent (ACC) 200 and the local access control agent (LAC) 400 have a mutual trust relationship, the hospital information system 500 may request a user's appropriate request through the central access control agent 200. I approve. Data returned to the Central Access Control Agent (ACC) 200 through the Local Access Control Agent (LAC) 400 is returned to the client system 100 through selective encryption according to the confidentiality / sensitive information of the object type. Provides optional data protection. Policy information (User, Role, User-Role Assignment) used to verify the access control of a user requesting access to a specific hospital information system (HIS) 500 is It is synchronized with the Local Access Control Agent (LAC) 400 of the Hospital Information System (HIS) 500.

지역접근제어 에이전트(LAC)(400)는 감사 및 사용자 요청에 대한 높은 수준의 접근제어 유효성을 검사한다. 지역접근제어 에이전트(LAC)(400)는 사용자의 요청의 사용자-역할(User-Role) 관계 및 병원정보시스템(HIS)(500)의 접근제어 시스템에 의한 역할-허가(Role-Permission) 관계를 검증한다. 병원정보시스템(HIS)(500)의 데이터에 대한 인가된 사용자의 적합한 요청은, 사용자가 기존 사용자인지 또는 외부 사용자인지 여부를 우선적으로 판별한다. 판별된 사용자는 이중 정책 권한관리에 의해 구분되어 접근제어가 이루어 진다. 해당 병원정보시스템(HIS)(500)의 기존 사용자에 대한 접근제어를 위한 내부 사용자 정책과 속하지 않는 외부 사용자에 대한 접근제어를 위한 외부 사용자 정책이 있다. 지역접근제어 에이전트(LAC)(400)는 중앙접근제어 에이전트(ACC)(200)와 병원정보시스템(HIS)(500) 간의 데이터 변환을 담당한다. 중앙접근제어 에이전트(ACC)(200)의 XML 형식의 데이터와 각 병원정보시스템(HIS)(500)의 상이한 형식의 데이터 간의 대응되는 변환을 통해, 클라이언트는 특정 병원정보시스템(HIS)(500)에 독립된 의미적으로 동등한 XML 형식의 데이터를 얻는다. 중앙접근제어 에이전트(ACC)(200)의 요청의 역할(Role)을 그 역할(Role)에 대응되는 병원정보시스템(HIS)(500)의 사용자, 즉, 사용자′(Role-Mapped User)로 매핑 변환후, 병원정보시스템(HIS)(500)에 사용자의 요청을 전달한다. 병원정보시스템(HIS)(500)에 의해 반환된 병원정보시스템(HIS)(500) 인식 포맷(aware-format) 데이터에 대해 중앙접근제어 에이전트(ACC)(200) 인식 포맷(XML)으로 의미적으로 동등한 구조적 변환 수행 후 중앙접근제어 에이전트(ACC)(200)로 반환한다. 각 병원정보시스템(HIS)(500)의 관리자는 (중앙접근제어 에이전트(ACC)(200)와 병원정보시스템(HIS)(500) 간의 데이터 변환을 담당하는) 해당 병원정보시스템(HIS)(500)에 속한 지역접근제어 에이전트(LAC)(400)를 관리한다.The Local Access Control Agent (LAC) 400 checks the high level of access control effectiveness for auditing and user requests. The local access control agent (LAC) 400 manages a user-role relationship of a user's request and a role-permission relationship by an access control system of the hospital information system (HIS) 500. Verify. The appropriate request of the authorized user for the data of the hospital information system (HIS) 500 primarily determines whether the user is an existing user or an external user. The identified users are divided by dual policy authority management to control access. There is an internal user policy for access control for an existing user of the hospital information system (HIS) 500 and an external user policy for access control for an external user that does not belong. The Local Access Control Agent (LAC) 400 is responsible for data conversion between the Central Access Control Agent (ACC) 200 and the Hospital Information System (HIS) 500. Through the corresponding conversion between the XML format data of the central access control agent (ACC) 200 and the data of the different formats of each hospital information system (HIS) 500, the client may be able to view the specific hospital information system (HIS) 500. Get data in semantically equivalent XML format independent of Mapping the role of the request of the central access control agent (ACC) 200 to the user of the hospital information system (HIS) 500 corresponding to the role, that is, the user 'Role-Mapped User' After the conversion, the user's request is forwarded to the hospital information system (HIS) (500). Meaning in the Central Access Control Agent (ACC) 200 Aware Format (XML) for the AIS 500 Aware-format data returned by the HIS 500. After performing the structural conversion equivalent to the return to the central access control agent (ACC) (200). The manager of each hospital information system (HIS) 500 is the corresponding hospital information system (HIS) 500 (which is responsible for data conversion between the central access control agent (ACC) 200 and the hospital information system (HIS) 500). Manage Local Access Control Agent (LAC) 400 belonging to).

병원정보시스템(HIS)(500)은 지역접근제어 에이전트(LAC)(400)의 요청에 대한 응답을 한다. 개별적인 전자의무기록 저장소를 갖으며 해당 정책에 따른 사용자 접근제어 즉 역할-허가 관계(R-P 관계) 검증을 한다. 기존 내부 사용자에 대한 접 근제어와 외부 사용자에 대한 중앙접근제어 에이전트(ACC)(200)의 정책의 역할에 대응되는 추가적인 사용자, 즉, 역할에 따라 맵핑된 사용자(Role-Mapped User)인 사용자′ 리스트를 갖는다.The hospital information system (HIS) 500 responds to the request of the Local Access Control Agent (LAC) 400. It has a separate repository of electronic medical records and verifies user access control, ie role-permission relationship (R-P relationship), according to the policy. Additional users that correspond to the role of the policy of the central access control agent (ACC) 200 for access control for existing internal users and for external users, that is, users who are role-mapped users. Has a list

또한 도 2에 있어서, 사용자 인증(User Authentication)은 사용자의 아이디와 개인 인증서를 통해 검증한다. 접근 제어는 역할기반 접근제어를 통해 사용자의 역할에 따른 병원정보시스템(500)의 전자의무기록 데이터베이스(560)에 대한 접근을 제어한다. 데이터 보호를 위해 요청 객체 타입의 민감/기밀 정보에 따른, XML 보안를 이용한 선택적 암호화를 통해 중요 데이터에 대한 보호를 제공한다. 네트워크 전송 간 송신자의 개인키를 이용한 전자서명을 첨부하여 전송데이터의 무결성을 보장한다. 또한 로그정보를 유지하여 모든 합법 / 불법적인 접근, 관리에 대한 감사를 지원한다. 중앙접근제어 에이전트(ACC)(200)의 사용자인증 프로세스, 중앙접근제어 에이전트(ACC)(200)와 지역접근제어 에이전트(LAC)(400)의 접근제어 검증 프로세스 / 정책 관리 트랜잭션에 대해 로그정보를 남긴다.In addition, in Figure 2, user authentication (User Authentication) is verified through the user's ID and personal certificate. The access control controls access to the electronic medical record database 560 of the hospital information system 500 according to the role of the user through role-based access control. For data protection, it provides protection for sensitive data through selective encryption using XML security based on sensitive / confidential information of the request object type. Attach the digital signature using the sender's private key between network transmissions to ensure the integrity of the transmitted data. It also maintains log information to support auditing of all legal and illegal access and management. Log information about the user authentication process of the central access control agent (ACC) 200, the access control verification process of the central access control agent (ACC) 200 and the local access control agent (LAC) 400 / policy management transaction Leave

도 3은 도 1의 중앙접근제어 에이전트에서 요청한 역활에 대응하는 병원정보시스템의 사용자로의 매핑과정의 일예이다. 중앙접근제어 에이전트(ACC)(200)는 역할기반 접근제어방식(RBAC)을 사용한다. 병원정보시스템(HIS)(500)에는 기존 사용자기반 접근제어방식을 사용하는 병원정보시스템(HIS-1)도, 그리고 역할기반 접근제어방식(RBAC)을 사용하는 병원정보시스템(HIS-2)도 있다. 기존 사용자기반 접근제어방식을 사용하는 병원정보시스템(HIS-1)은 기존 사용자기반 접근제어방식중 강제적 접근 통제(MAC) 방식을 사용한다. 3 is an example of mapping to a user of a hospital information system corresponding to a role requested by the central access control agent of FIG. 1. The central access control agent (ACC) 200 uses a role based access control method (RBAC). In the hospital information system (HIS) 500, the hospital information system (HIS-1) using the existing user-based access control method and the hospital information system (HIS-2) using the role-based access control method (RBAC) are also shown. have. The hospital information system (HIS-1) using the existing user-based access control method uses the mandatory access control (MAC) method among the existing user-based access control methods.

역할기반 접근제어방식(RBAC)을 사용하는 중앙접근제어 에이전트(ACC)(200)는 각 사용자에 따라 역할(Role)이 할당되어 있다. 지역접근제어 에이전트(LAC)(400)는, 중앙접근제어 에이전트(ACC)(200)의 요청의 역할(Role)을, 그 역할(Role)에 대응되는 병원정보시스템(HIS)(500)의 사용자, 즉, 역할에 맵핑된 사용자(Role-Mapped User)인 사용자′(User′)로 매핑 변환후, 병원정보시스템(HIS)(500)에 사용자의 요청을 전달한다. 그리고 지역접근제어 에이전트(LAC)(400)는, 병원정보시스템(HIS)(500)에 의해 반환된 병원정보시스템(HIS)(500) 인식 포맷(aware-format) 데이터에 대해, 중앙접근제어 에이전트(ACC)(200) 인식 포맷(XML)으로 의미적으로 동등한 구조적 변환 수행 후, 중앙접근제어 에이전트(ACC)(200)로 반환한다. 각 병원정보시스템(HIS)(500)의 관리자는, 즉, 중앙접근제어 에이전트(ACC)(200)와 병원정보시스템(HIS)(500) 간의 데이터 변환을 담당하는 병원정보시스템(HIS)(500)의 관리자는, 해당 병원정보시스템(HIS)(500)에 속한 지역접근제어 에이전트(LAC)(400)를 관리한다.A central access control agent (ACC) 200 using a role based access control method (RBAC) is assigned a role according to each user. Local access control agent (LAC) 400, the role of the request of the central access control agent (ACC) 200 (Role), the user of the hospital information system (HIS) 500 corresponding to the role (Role) That is, after mapping conversion to a user '(User') that is a role-mapped user mapped to a role, the user's request is transmitted to the hospital information system (HIS) 500. The Local Access Control Agent (LAC) 400 is a central access control agent for the hospital information system (HIS) 500 recognition format (aware-format) data returned by the hospital information system (HIS) 500. (ACC) 200 After performing a semantically equivalent structural conversion into a recognized format (XML), the method returns to the central access control agent (ACC) 200. The manager of each hospital information system (HIS) 500 is, for example, a hospital information system (HIS) 500 that is responsible for data conversion between the central access control agent (ACC) 200 and the hospital information system (HIS) 500. ), The administrator manages a local access control agent (LAC) 400 belonging to the hospital information system (HIS) (500).

도 4는 중앙접근제어 에이전트 인식 포멧과 병원정보시스템 인식 포멧간의 의미적으로 동등(semantically equivalent)한 구조적 변환 과정의 일예이다. 도 4에서는 중앙접근제어 에이전트(ACC)(200)의 환자정보, 병원정보, 진단정보 등의 데이터는 중앙접근제어 에이전트 인식 포멧으로 되어 있으며, 각 병원시스템(500)의 환자정보, 병원정보, 진단정보 등의 데이터는 각 병원정보시스템(500)에 따라 각기 다른 인식 포멧의 형태로 되어 있다. 따라서, 각 병원정보시스템(500)의 지역접근제어 에이전트(LAC)(400)는 중앙접근제어 에이전트(ACC)(200)와 각 병원정보시스템 (HIS)(500) 간의 데이터 변환을 담당한다. 예를들어, 병원정보시스템(HIS)(500)에 의해 반환된 병원정보시스템(HIS)(500) 인식 포맷(aware-format) 데이터에 대해, 지역접근제어 에이전트(LAC)(400)는 중앙접근제어 에이전트(ACC)(200) 인식 포맷(XML)으로 의미적으로 동등한 구조적 변환 수행 한 후, 중앙접근제어 에이전트(ACC)(200)로 반환한다. 각 병원정보시스템(HIS)(500)의 지역접근제어 에이전트(LAC)(400)는 각 병원정보시스템(HIS)(500)의 관리자에 의해 관리된다.4 is an example of a semantically equivalent structural conversion process between the central access control agent recognition format and the hospital information system recognition format. In FIG. 4, data such as patient information, hospital information, and diagnostic information of the central access control agent (ACC) 200 is in a central access control agent recognition format, and includes patient information, hospital information, and diagnosis of each hospital system 500. Data such as information is in the form of different recognition formats according to each hospital information system 500. Accordingly, the local access control agent (LAC) 400 of each hospital information system 500 is responsible for data conversion between the central access control agent (ACC) 200 and each hospital information system (HIS) 500. For example, for a hospital information system (HIS) 500 aware-format data returned by the hospital information system (HIS) 500, the local access control agent (LAC) 400 has a central access. The control agent (ACC) 200 performs a semantically equivalent structural conversion into a recognized format (XML), and then returns to the central access control agent (ACC) 200. A local access control agent (LAC) 400 of each hospital information system (HIS) 500 is managed by an administrator of each hospital information system (HIS) 500.

도 5는 승인된 요청에 대한 클라이언트 시스템과 중앙접근제어 에이전트 간의 프로세스 순서도이다. 즉, 도 5는 클라이언트 요청에 대해 접근제어가 승인되는 프로세스의 순서도로서, 크게 인증 프로세스와 접근제어 인증 프로세스로 나눌 수 있다.5 is a process flow diagram between a client system and a central access control agent for an approved request. That is, FIG. 5 is a flowchart of a process in which access control is approved for a client request, and may be roughly divided into an authentication process and an access control authentication process.

클라이언트 시스템(100)에서 사용자 로그인 요청이 발생하면, 클라이언트 시스템(100)은 요청하는 질의에 대해 사용자의 개인키를 이용하여 사용자 전자서명을 첨부하며, 이를 중앙접근제어 에이전트(200)로 보내어 사용자 로그인 인증을 요청 한다(s110). 중앙접근제어 에이전트(200)는 클라이언트 시스템(100)에서 수신된 전자서명과 질의(query)의 사용자 아이디를 통해 사용자 인증을 검증하며(s210), 사용자 인증의 검증 결과를 보안전송을 위해 세선키(session-key)를 설정하여 응답신호를 클라이언트 시스템(100)으로 보낸다(s130). 이로써 사용자 인증 프로세스가 완료된다. When a user login request occurs in the client system 100, the client system 100 attaches a user electronic signature using the user's private key to the requested query, and sends it to the central access control agent 200 to log in the user. Request for authentication (s110). The central access control agent 200 verifies the user authentication through the electronic signature received from the client system 100 and the user ID of the query (s210), and the thin line key for secure transmission of the verification result of the user authentication (s210). session-key) to send a response signal to the client system 100 (s130). This completes the user authentication process.

다음은 접근제어 인증 프로세스에 관한 것으로, 접근제어가 승인된 클라이언트 시스템(100)은 중앙접근제어 에이전트(200)로 전자의무기록 데이터 요청을 전송 하고(s150), 중앙접근제어 에이전트(200)는 이로부터 접근 권한부여를 위해 사용자-역할 관계를 이용하여 사용자 요청 적합성을 검증하는 권한부여 검증을 한다(s230). 사용자 요청 적합성에 대해 검증되면, 중앙접근제어 에이전트(200)는 클라이언트 데이터 요청 도메인을 식별하여 해당 병원정보시스템(500)에 전자의무기록 데이터를 요청하고(s250), 해당 병원정보시스템(500)은 검증된 요청에 대해 다수의 프로세스을 통해 해당 병원정보시스템(500)의 전자의무기록 데이터베이스로 부터 요청한 데이터를 검색해(s410), 중앙 접근제어 에이전트(200)로 검색된 전자의무기록 데이터를 반환한다(s270). 중앙접근제어 에이전트(200)는 이 수신된 결과 데이터를 세션키를 이용하여 선택적 암호화하여(s290), 이를 클라이언트 시스템(100)에게 반환한다(s170). 그후, 클라이언트 시스템(100)은 반환된 데이터에 대한 무결성을 확인하고, 세션키를 이용한 보안데이터를 해독하여 확인한 후, 사용자 로그아웃을 수행한다.Next, the access control authentication process, the client system 100 has been approved for access control transmits the electronic medical record data request to the central access control agent 200 (s150), the central access control agent 200 is Authorization verification for verifying the suitability of the user request using the user-role relationship for access authorization from (s230). When the user request conformity is verified, the central access control agent 200 identifies the client data request domain and requests electronic medical record data from the hospital information system 500 (s250), and the hospital information system 500 The requested data is retrieved from the electronic medical records database of the hospital information system 500 through a plurality of processes for the verified request (s410), and the electronic medical records data retrieved by the central access control agent 200 are returned (s270). . The central access control agent 200 selectively encrypts the received result data using the session key (s290), and returns it to the client system 100 (s170). Thereafter, the client system 100 checks the integrity of the returned data, decrypts and confirms the security data using the session key, and performs a user logout.

도 5에 대해 간략하게 부연 설명하면, 클라이언트 시스템(100)의 사용자 인증 후 중앙접근제어 에이전트(200)에 자료를 요청하면, 중앙접근제어 에이전트(200)는 사용자 요청의 적합성을 검증 후, 승인된 요청에 대해 그에 따른 적절한 결과 데이터를 반환한다는 것이다. 중앙접근제어 에이전트(200)는 사용자 인증이 실패한 경우와 접근이 거부된 요청에 대해 각각 에러메시지를 클라이언트 시스템(100)에게 반환한다. 본 발명에서는 공개키 기반 X.509v3 인증서를 이용하여 전송 데이터에 대한 전송자의 전자서명을 첨부하여 무결성을 보장하며, 세션키를 이용한 선택적 암호화를 하여 기밀성을 제공한다.Referring to FIG. 5 briefly, when requesting data to the central access control agent 200 after user authentication of the client system 100, the central access control agent 200 after verifying the suitability of the user request, the approved It returns the appropriate result data for the request. The central access control agent 200 returns an error message to the client system 100 for a case where user authentication fails and a request for which access is denied. In the present invention, the public key-based X.509v3 certificate is used to attach the sender's digital signature to the transmitted data to ensure its integrity, and to provide confidentiality by selectively encrypting the session key.

즉, 본 발명에서 클라이언트 시스템(100)이 병원정보시스템(500)에 자료를 요청하는 순서를 정리해보면 다음과 같다.That is, in the present invention, the client system 100 summarizes the order of requesting data to the hospital information system 500 as follows.

첫번째, 클라이언트 시스템(100)은 중앙접근제어 에이전트(200)에 사용자 인증을 요청하여 로그인을 한다.First, the client system 100 requests user authentication from the central access control agent 200 to log in.

두번째, 중앙접근제어 에이전트(200)는 사용자 인증을 검증하고 그 결과를 클라이언트 시스템(100)과 중앙접근제어 에이전트(200) 간 보안전송을 위한 세션키를 설정하여 클라이언트(100)에 전송한다.Second, the central access control agent 200 verifies user authentication and sets the session key for secure transmission between the client system 100 and the central access control agent 200 and transmits the result to the client 100.

세번째, 인증에 성공한 클라이언트 시스템(100)은 중앙접근제어 에이전트(200)에게 데이터 요청 질의를 보낸다. Third, the successful client system 100 sends a data request query to the central access control agent (200).

네번째, 중앙접근제어 에이전트(200)는 사용자-역할관계를 이용하여 사용자 요청 적합성을 검증한다.Fourth, the central access control agent 200 verifies the user request suitability using the user-role relationship.

다섯번째, 검증에 성공하면 사용자 요청 도메인을 식별한다.Fifth, if the verification is successful, the user request domain is identified.

여섯번째, 사용자 요청 도메인의 해당 병원정보 시스템(500)에 전자의무기록 데이터를 요청한다.Sixth, the electronic medical record data is requested to the corresponding hospital information system 500 of the user request domain.

일곱번째, 해당 병원정보시스템(500)은 전자의무기록 데이터를 중앙접근제어 에이전트(200)로 보내고 중앙접근제어 에이전트(200)는 그 받은 데이터를 세션키를 이용하여 선택적 암호화한 후 클라이언트 시스템(100)으로 전송한다.Seventh, the hospital information system 500 sends the electronic medical record data to the central access control agent 200, the central access control agent 200 selectively encrypts the received data using the session key and then the client system 100 ).

여덟번째, 클라이언트 시스템(100)은 그 받은 데이터를 복호화한 후 확인한다.Eighth, the client system 100 decrypts the received data and confirms it.

도 6은 도 5에서 클라이언트 요청 튜플(tuple)형식(EBNF Syntax)을 설명하기 위한 설명도이다.FIG. 6 is an explanatory diagram for explaining a client request tuple format (EBNF Syntax) in FIG. 5.

클라이언트 시스템(100)에서 사용자 아이디와 서명정보를 통해 사용자인증을 하며, 승인된 사용자의 데이터 요청은 다음 튜플로 구성된다.The client system 100 authenticates the user through the user ID and the signature information, and the data request of the approved user is configured as the following tuple.

request := (subject,object,operation)request: = (subject, object, operation)

이 튜플의 각 원소에 대한 설명을 도 6에 나타내었다. The description of each element of this tuple is shown in FIG.

주체(Subject)는 사용자 아이디(User Id), 도메인(Domain), 역할(Role)로 이루어지며, 사용자가 담당의, 전문의, 간호사, 환자, 직원 인지 그 각각의 역할을 지정해 주는 매개변수이다. 사용자 아이디(User Id)는 사용자의 식별자이고, 도메인(Domain)은 병원정보시스템의 식별자이며, 역할(Role)은 사용자의 역할을 나타낸다. 객체(object)는 객체 타입(Object type), 객체 아이디(Object ID), 범위(Range)로 이루어지며, 여기서 객체 타입은 사용자 요청자료의 타입이며, 객체아이디는 사용자 요청자료의 식별자이고, 범위는 사용자 요청자료에 대한 XML XPath 표현식을 따르는 위치지정자이다. 이는 사용자가 요청한 자료의 식별 및 위치를 알아내기 위한 매개변수이다. 동작(operation)은 읽기(Read), 쓰기(Write), 생성(Create), 삭제(Delete)로 나누어진다.Subject consists of User ID, Domain, and Role. It is a parameter that specifies each role of the user as a doctor, specialist, nurse, patient, and employee. User ID is an identifier of a user, a domain is an identifier of a hospital information system, and a role represents a role of a user. An object consists of an object type, an object ID, and a range, where the object type is the type of user request data, the object ID is the identifier of the user request data, and the range is Placeholder that follows an XML XPath expression for user request data. This parameter is used to identify and locate the data requested by the user. Operation is divided into Read, Write, Create, and Delete.

요청 정보는 사용자의 전자서명 정보를 첨부하여 중앙접근제어 에이전트(200)로 전송하여 요청문에 대한 무결성을 제공한다. 중앙접근제어 에이전트(200)에 대한 요청 응답은 다음과 같다.The request information is sent to the central access control agent 200 by attaching the electronic signature information of the user to provide the integrity of the request. The request response to the central access control agent 200 is as follows.

respond := (valid_response | invalid_response)   respond: = (valid_response | invalid_response)

valid_response := (request, selective_encrypted_data)   valid_response: = (request, selective_encrypted_data)

invalid_response := (request, error_message)   invalid_response: = (request, error_message)

selective_encrypted_data : 선택적 암호화된 EMR data   selective_encrypted_data: Selective encrypted EMR data

error_message : 거부된 요청에 대한 에러 메시지   error_message: Error message for the rejected request

위 응답에 중앙접근제어 에이전트(200)의 전자서명을 덧붙여 데이터에 무결성을 제공한다. The digital signature of the central access control agent 200 is added to the response to provide integrity to the data.

즉, 위 응답에서, 적합한 인증서일때 중앙접근제어 에이전트(200)의 응답은 선택적 암호화된 전자의무기록 데이터에 중앙접근제어 에이전트(200)의 전자서명을 첨부하여 클라이언트 시스템(100)으로 반환하고, 적합하지 않은 인증서일때는 중앙접근제어 에이전트(200)의 응답은 에러메시지와 함께 전자서명을 첨부하여 클라이언트 시스템(100)으로 반환한다.That is, in the above response, when the appropriate certificate is the response of the central access control agent 200 is returned to the client system 100 by attaching the electronic signature of the central access control agent 200 to the optional encrypted electronic medical record data, and If the certificate is not received, the central access control agent 200 returns the response to the client system 100 by attaching an electronic signature with an error message.

도 7은 도 1의 중앙접근 제어 에이전트의 상태도이고, 도 8은 도 7의 요청 데이터, 암호화 트리, 결과 데이터이다.FIG. 7 is a state diagram of the central access control agent of FIG. 1, and FIG. 8 is a request data, an encryption tree, and result data of FIG. 7.

중앙접근제어 에이전트(200)는 클라이언트의 사용자 인증 후 전송된 클라이언트의 요청의 적합성을 검증한다(s220). 사용자-역할(U-R) 관계 검증에 대한 사용자 요청 검증이 승인되면(s240), 요청 데이타가 있는 해당 병원정보 시스템의 지역접근제어 에이전트(400)로 요청을 전달한다(s250). 지역접근제어 에이전트(400)는 관련 요청에 대한 응답 결과를 다시 중앙접근제어 에이전트(200)로 반환하며, 반환된 데이터와 데이터의 객체 타입에 따른 암호화 트리(getEncryptionTree)의 민감/기밀성 정보(s290)에 따라 선택적 암호화된 최종 결과 데이터를 생성한다(getEncryptionTree)(s295). 생성된 결과 데이터에 중앙접근제어 에이전트(200)의 전자서명을 첨부하여 클라이언트 시스템(100)으로 전송한다. The central access control agent 200 verifies the suitability of the request of the client transmitted after user authentication of the client (S220). If the user request verification for user-role (U-R) relationship verification is approved (s240), the request is forwarded to the local access control agent 400 of the corresponding hospital information system having the request data (s250). The local access control agent 400 returns the response result of the related request back to the central access control agent 200, the sensitivity / confidentiality information (s290) of the encryption tree (getEncryptionTree) according to the returned data and the object type of the data (s290). In accordance with the present invention, the final encrypted result data is generated (getEncryptionTree) (s295). The digital signature of the central access control agent 200 is attached to the generated result data and transmitted to the client system 100.

중앙접근제어 에이전트(200)의 저장소(Repository)는 클라이언트와 지역접근제어 에이전트(400)의 공개키 정보를 갖는 키 데이터베이스와 접근 정책 정보를 갖는 정책 데이터베이스, 사용자의 접근 로그정보를 저장하는 로그 데이터베이스로 구성된다. 정책 데이터베이스는 사용자(User), 역할(Role), 사용자-역할 할당(U-R Assignment) 정보와 요청 데이터의 객체 타입별 암호화 되어야 하는 노드에 대한 정보를 갖는다.The repository of the central access control agent 200 is a key database having public key information of the client and the local access control agent 400, a policy database having access policy information, and a log database storing access log information of the user. It is composed. The policy database has user, role, user-role assignment information, and information on nodes that should be encrypted for each object type of request data.

도 8은 도 7의 요청 데이터, 암호화 트리, 결과 데이터이다.FIG. 8 is the request data, encryption tree, and result data of FIG.

즉, 중앙접근제어 에이전트(200)가 도 8의 (a)와 같은 요청 데이타를 해당 병원정보 시스템의 지역접근제어 에이전트(400)로 요청을 전달하면, 지역접근제어 에이전트(400)는 관련 요청에 대한 응답 결과를 다시 중앙접근제어 에이전트(200)로 반환하며, 중앙접근제어 에이전트(200는 반환된 데이터의 데이터의 객체 타입에 따른 암호화 트리(도 8의 (b))에 따라 선택적 암호화된 최종 결과 데이터(도 8의(c))를 생성한다). That is, when the central access control agent 200 transfers the request data as shown in FIG. 8 (a) to the local access control agent 400 of the corresponding hospital information system, the local access control agent 400 sends a request to the related request. The result of the response is returned to the central access control agent 200, and the central access control agent 200 is finally encrypted according to the encryption tree (Fig. 8 (b)) according to the object type of the data of the returned data. Data (produces FIG. 8 (c)).

도 9는 도 1의 지역접근제어 에이전트와 병원정보시스템간의 프로세스 순서도이다.9 is a process flow diagram between the local access control agent and the hospital information system of FIG.

중앙접근제어 에이전트(200)은 지역접근제어 에이전트(400)로 전자의무기록 데이터를 요청한다(s250). 지역접근제어 에이전트(400)는 중앙접근제어 에이전트(200)에서 전달된 요청의 적합성을 정책데이터베이스에서 사용자-역할(U-R) 관계를 이용하여 검증한다(s420). 사용자-역할(U-R) 관계 검증이 승인되면, 지역접근제어 에이전트(400)은 중앙접근제어 에이전트(200)의 인식포맷으로 되어있는 사용자 요청을 각 병원정보시스템(500)에 종속된 요청 형식으로 변환한다(s430). 변환된 요청, 즉 병원정보시스템(500)이 가지고 있는 원초적 전자의무기록 데이터에 대한 요청을 병원정보시스템(500)의 레거시 서버(530)로 전달한다(s440). 병원정보시스템(500)의 레거시 서버(530)는 중앙접근제어 에이전트(200)로부터의 요청의 적합성을 검사하며(s510), 그 적합성이 승인되면 해당 전자의무기록 데이터베이스로 상기 원초적 전자의무기록 데이터의 질의를 보내며(s520), 해당 전자의무기록 데이터베이스로부터 그 결과인 해당 원초적 전자의무기록 데이터를 전달 받으며(s530), 이를 직역접근제어 에이전트(400)로 전달한다(s450). 지역접근제어 에이전트(400)는 병원정보시스템(500)의 종속된 응답 형식에서 중앙접근제어 에이전트(400)의 인식 포맷으로 변환하고(s460), 그 결과의 전자의무기록 데이터를 중앙접근제어 에이전트(200)으로 전달한다(s270).The central access control agent 200 requests the electronic medical record data to the regional access control agent 400 (s250). The local access control agent 400 verifies the suitability of the request transmitted from the central access control agent 200 using the user-role (U-R) relationship in the policy database (S420). When the user-role (UR) relationship verification is approved, the local access control agent 400 converts a user request in the recognition format of the central access control agent 200 into a request form dependent on each hospital information system 500. (S430). The converted request, that is, the request for the basic electronic medical record data of the hospital information system 500 is transferred to the legacy server 530 of the hospital information system 500 (S440). The legacy server 530 of the hospital information system 500 checks the suitability of the request from the central access control agent 200 (s510), and if the suitability is approved, the original electronic medical record data is transferred to the corresponding electronic medical record database. Send a query (s520), and receives the result of the original electronic medical record data as a result from the electronic medical records database (s530), and delivers it to the direct access control agent (400) (s450). The regional access control agent 400 converts the dependent response format of the hospital information system 500 into the recognition format of the central access control agent 400 (s460), and converts the electronic medical record data of the result into a central access control agent ( 200) (s270).

도 10은 도 1의 지역접근제어 에이전트의 상태도이다.10 is a state diagram of the local access control agent of FIG.

지역접근제어 에이전트(400)는 중앙접근제어 에이전트(400)에서 요청을 수신하면(receiveRequest)(s250), 그 요청의 적합성을 검증(verifyRequest)한다(s420). 사용자-역할(U-R) 관계 검증이 승인되면, 중앙접근제어 에이전트(400)는 중앙접근제어 에이전트(400)의 역할(Role)에 해당하는 병원정보시스템(500)의 사용자′(Role-Mapped User)와의 매핑 변환하고 사용자의 요청을 각 병원정보시스템(500)에 종속된 요청 형식으로 변환(transformRequest)한다(s430). 변환된 요청을 병원정보시스템(500)으로 전달(getData)한다(s535). 병원정보시스템(500)에 의해 반환된 요 청에 대해 중앙접근제어 에이전트(200)가 이해하는 포맷으로 변환을 수행(transformData)한다(s450). 변환된 데이터는 중앙접근제어 에이전트(200)에게 반환된다(sendData)(s270). 본 발명에 있어서, 지역접근제어 에이전트(400)은 중앙접근제어 에이전트(200)에게는 병원정보시스템(500)에 해당한다고 할 수 있으며, 또한 병원정보시스템(500)에게는 기존 병원정보시스템(500)을 이용하는 클라이언트와 같다고 할 수 있다. 또한, 본 발명에 있어서, 지역접근제어 에이전트(400)는 클라이언트의 병원정보시스템(500)에 대한 접근제어를 위해 사용자(User), 역할(Role), 사용자-역할 할당(U-R Assignment) 정보를 갖는 정책 데이터베이스(Policy Database)를 갖는다. 매핑변환을 위해 역할-사용자′할당 데이터베이스(R-U' Assignment Database) 및 관련된 매핑 테이블을 갖는다.When the local access control agent 400 receives the request from the central access control agent 400 (receiveRequest) (s250), verifies the suitability of the request (verifyRequest) (s420). If the user-role (UR) relationship verification is approved, the central access control agent 400 is a user of the hospital information system 500 corresponding to the role of the central access control agent 400 (Role-Mapped User). Mapping conversion and transforms the user's request into a request form dependent on each hospital information system 500 (transformRequest) (S430). The converted request is transferred to the hospital information system 500 (getData) (s535). In response to the request returned by the hospital information system 500, the central access control agent 200 converts the data into a format understood (transformData) (S450). The converted data is returned to the central access control agent 200 (sendData) (s270). In the present invention, the regional access control agent 400 may be said to correspond to the hospital information system 500 to the central access control agent 200, and the hospital information system 500 to the existing hospital information system 500. It is the same as the client you use. In addition, in the present invention, the local access control agent 400 has a user (User), Role (Role), user-Role Assignment (UR Assignment) information for access control to the hospital information system 500 of the client It has a policy database. It has a role-user assignment database and an associated mapping table for mapping conversion.

이하는 본 발명의 보안 서비스 구성에 대해서 설명한다.The following describes the security service configuration of the present invention.

2. 보안 서비스 구성2. Configure Security Services

우선 본 발명의 암호화 서비스에 대해서는 다음과 같다.First, the encryption service of the present invention is as follows.

월드와이드웹 컨소시엄(W3C) 권고안인 XML 기술을 이용한 XML 서명과 XML 암호화 는 XML로 기술된 데이터의 선택적인 암호화와 전자서명에 유용하므로, 본 발명에서는 암/복호화 및 전자서명을 위한 키로 (공개키 방식의 공인인증서 규격인) X.509v3 인증서를 이용하였다. 전자서명 해쉬(hash) 알고리즘으로는 SHA-1(Secure Hash Algorithm-1)을 사용하였고, 암호화 알고리즘으로 비대칭키 알고리즘인 RSA(Rivest-Shamir-Adleman), 대칭키 알고리즘인 3-DES(Data Encryption Standard) 를 이용하였다. RSA를 이용한 암호화는 강력한 보안을 제공하지만 매우 커다란 숫자들에 대한 지수 연산을 수행하기 때문에 시스템 부하가 높은 단점이 있다. 따라서 비교적 강력한 3-DES 암호화 알고리즘을 사용하는 세션키를 이용하여 데이터를 암호화한다. 데이터 암호화에 사용된 세션키는 RSA 알고리즘으로 암호화하여 키를 보호한다. 기밀 데이터에 대한 암/복호화로 인한 전체 시스템 처리시간을 줄였다.XML signature and XML encryption using XML technology, the World Wide Web Consortium (W3C) recommendation, is useful for selective encryption and digital signatures of data described in XML. X.509v3 certificate, which is the standard certificate type, is used. Secure Hash Algorithm-1 (SHA-1) is used as the digital signature hash algorithm.Risst-Shamir-Adleman (RSA), an asymmetric key algorithm, and 3-DES (Data Encryption Standard), a symmetric key algorithm, are encryption algorithms. ) Was used. Encryption with RSA provides strong security, but the system load is high because it performs exponential operations on very large numbers. Therefore, the data is encrypted using the session key using the relatively strong 3-DES encryption algorithm. The session key used for data encryption is encrypted by the RSA algorithm to protect the key. Reduced overall system processing time due to encryption / decryption of confidential data.

본 발명의 접근제어 서비스에 대해서는 다음과 같다.The access control service of the present invention is as follows.

중앙접근제어 에이전트(200)의 접근제어는 도 5에서와 같이 사용자-역할 관계를 검증하여 접근제어 한다. 접근제어를 위한 정책은 다음 튜플로 구성된다.The access control of the central access control agent 200 performs access control by verifying a user-role relationship as shown in FIG. 5. The policy for access control consists of the following tuples:

policy := (access_policy, encryption_policy)   policy: = (access_policy, encryption_policy)

access_policy := (user*, role*, user_role_assignment*)   access_policy: = (user *, role *, user_role_assignment *)

encryption_policy := (object_type, encryption_tree_info)*   encryption_policy: = (object_type, encryption_tree_info) *

user_role_assignment := (ref_user, ref_role)   user_role_assignment: = (ref_user, ref_role)

user : 사용자 식별자 role : 역할 식별자   user: user identifier role: role identifier

ref_user : user 참조 식별자 ref_role : role 참조 식별자   ref_user: user reference identifier ref_role: role reference identifier

object_type : 객체 타입 (예) 진단서, 청구서, PACS 이미지 등)   object_type: object type (e.g. certificate, invoice, PACS image, etc.)

encryption_tree_info : 객체 타입의 암호화 여부에 대한 상세정보를 갖는 자료구조   encryption_tree_info: A data structure containing detailed information about whether an object type is encrypted

중앙접근제어 에이전트(200)의 접근제어 정책은 접근제어를 위한 access_policy와 데이터의 민감/기밀 정보를 갖는 encryption_policy로 구성된다. access_policy는 역할기반 접근제어(RBAC) 시스템을 구성하는 사용자(user), 역할 (role) 정보와 사용자-역할(U-R) 관계 정보를 정의한다. encryption_policy는 사용자가 요청하는 객체 타입(object type)에 따른 민감/기밀 정보를 정의한다. 지역접근제어 에이전트(400)의 접근제어는 도 9의 요청 검증 단계에서 제어가 이루어지며 접근제어를 위한 정책은 다음 튜플로 구성된다.The access control policy of the central access control agent 200 is composed of access_policy for access control and encryption_policy having sensitive / confidential information of the data. access_policy defines user, role information and user-role (U-R) relationship information that constitutes a role-based access control (RBAC) system. encryption_policy defines sensitive / confidential information according to the object type requested by the user. The access control of the local access control agent 400 is controlled in the request verification step of FIG. 9, and the policy for access control is composed of the following tuples.

policy := (access_policy, role_mapping)   policy: = (access_policy, role_mapping)

role_mapping := (role, role_mapped_user)   role_mapping: = (role, role_mapped_user)

role_mapped_user : ACC의 역할에 대응되는 HIS의 Role-Mapped User   role_mapped_user: Role-Mapped User of HIS corresponding to ACC role

지역접근제어 에이전트(400)의 접근제어 정책은 접근제어를 위한 access_policy와 데이터 요청의 변환 매핑정보를 갖는 role_mapping으로 구성된다.The access control policy of the local access control agent 400 is composed of access_policy for access control and role_mapping having translation mapping information of a data request.

본 발명에서는 사용자 인증 및 허가된 역할 기반 접근제어를 통한 다중 병원정보 시스템(500)에 접근하는 사용자의 요청은 중앙접근제어 에이전트(200)가 중앙에서 제어한다. 기존 병원정보시스템(500)을 이용하는 사용자에게는 동일 접근권한을 갖는 내부정책으로 해당 병원정보시스템(500)을 이용할 수 있으며, 외부의 사용자에 대해서는 외부정책을 통해 구분된 이중 권한관리를 한다. 사용자의 요청 데이터는 데이터를 받아오는 해당 병원정보시스템(500)과 상관없이 XML 로 기술된 동일한 형식을 사용자에게 제공하며, XSLT를 이용한 사용자 친화적인 뷰를 제공한다. 클라이언트에게는 중앙접근제어 에이전트(200)가 병원정보시스템(500)으로 보인다. 클라이언트 시스템(100)은 여러 병원정보시스템(500)에 대한 동일한 사용자 인터페이스를 제공한다.In the present invention, the central access control agent 200 centrally controls the user's request to access the multiple hospital information system 500 through user authentication and authorized role-based access control. Users using the existing hospital information system 500 may use the hospital information system 500 as an internal policy having the same access rights, and the dual authority management divided through an external policy for external users. The user's request data provides the user with the same format described in XML, regardless of the hospital information system 500 that receives the data, and provides a user-friendly view using XSLT. To the client, the central access control agent 200 is seen as the hospital information system 500. The client system 100 provides the same user interface for several hospital information systems 500.

또한, 본 발명의 접근제어시스템은 클라이언트 시스템과 다중 병원정보시스 템을 접근제어 하는 중앙접근제어 에이전트(ACC), 각 병원정보시스템과 중앙접근제어 에이전트 간의 통신을 가능케 하는 지역접근제어 에이전트 즉, 변환 프록시 서버, 기존 병원정보 시스템(HIS)의 4-티어 구조로 되어있다. 이를 통해 여러 상이한 플랫폼의 병원정보시스템에 대한 동일한 접근 인터페이스와 유연한 중앙접근제어 및 병원 간 협력적 진료 모델을 제시한다. 중앙접근제어 에이전트(200)와 지역접근제어 에이전트는 웹서비스로 구현이 되었다. 웹서비스는 XML 기반의 SOAP 메시지를 사용하며, HTTP 프로토콜을 사용하여 기존의 방화벽을 건드리지 않는다. 또한 서비스 지향 컴포넌트 기술로, 모듈화 되어 재사용성이 높다. 웹기반의 플랫폼 독립적인 기술로 기존 병원정보시스템의 플랫폼에 상관없이 구현, 사용할 수 있다. 지역접근제어 에이전트의 모듈화는 중앙접근제어 에이전트에 신규 병원정보시스템의 추가 / 삭제를 용이하게 한다. 민감/기밀이 요구되는 전자의무기록 데이터에 대해 XML 암호화 기술을 이용한 선택적 암호화로 암호화 효율을 높인다. In addition, the access control system of the present invention is a central access control agent (ACC) for access control of the client system and multiple hospital information systems, local access control agent that enables communication between each hospital information system and the central access control agent, that is, conversion It is a four-tier structure of proxy server and existing hospital information system (HIS). Through this, we propose the same access interface, flexible central access control, and cooperative care model between hospitals. The central access control agent 200 and the local access control agent are implemented as web services. Web services use XML-based SOAP messages and do not touch existing firewalls using the HTTP protocol. It is also a service-oriented component technology, modularized and highly reusable. Web-based platform-independent technology can be implemented and used regardless of the existing hospital information system platform. Modularization of local access control agents facilitates the addition / deletion of new hospital information systems to central access control agents. Selective encryption using XML encryption technology improves the encryption efficiency for sensitive medical records requiring sensitive and confidential data.

본 발명은 이상에서 설명되고 도면에 예시된 것에 의해 한정되는 것은 아니며, 당업자라면 다음에 기재되는 청구범위 내에서 더 많은 변형 및 변용예가 가능한 것임은 물론이다.The present invention is not limited to the above described and illustrated in the drawings, and of course, more modifications and variations are possible to those skilled in the art within the scope of the following claims.

이상에서 설명한 바와 같이, 본 발명의 의료정보의 보안 접근 제어 시스템은 접근이 허가된 사용자가 다양한 병원정보 시스템을 어디서든지 장소에 제약 받지 않고 접근할 수 있게 하며, 여러 병원 접근 시스템에 대한 동일한 접근 사용자 인터페이스를 보장하고, 각 병원의 고유 병원정보시스템을 유지하여 별다른 수정 없 이 그대로 이용할 수 있다. 또한, 본 발명의 의료정보의 보안 접근 제어 시스템은 기존 병원정보시스템을 사용하는 사용자의 접근권한을 유지함과 동시에, 다른 병원정보시스템을 이용하는 사람에게는 전역 접근 정책권한을 할당하여 분리된 이중 구조로 정책관리를 하는 웹서비스 기반 의료정보의 보안 접근 제어 시스템을 제공하며, 민감한 또는 기밀 데이터에 대한 보호를 위해, XML 암호화와 XML 서명을 이용하여 선택적 암호화 /서명 기법을 이용하는 웹서비스 기반 의료정보의 보안 접근 제어 시스템을 제공한다.As described above, the security access control system of the medical information of the present invention allows an authorized user to access various hospital information systems anywhere without restriction, and the same access user for multiple hospital access systems. The interface is guaranteed and each hospital's own hospital information system can be maintained and used without modification. In addition, the security access control system of the medical information of the present invention maintains the access rights of the user using the existing hospital information system, while assigning the global access policy authority to people using other hospital information system policy in a separate dual structure Provides security access control system of web service based medical information to manage and secure access of web service based medical information using selective encryption / signature technique using XML encryption and XML signature to protect sensitive or confidential data. Provide a control system.

Claims (19)

사용자 요청이 발생하는 클라이언트 시스템; A client system in which a user request occurs; 상기 클라이언트 시스템에서 발생된 요청에 대해 사용자 인증을 하여 승인된 요청정보를 지역접근제어 에이전트로 전달하는 중앙접근제어 에이전트;A central access control agent for authenticating a request generated by the client system and transferring the approved request information to a local access control agent; 상기 중앙접근제어 에이전트로부터 수신한 사용자 요청에 대한 사용자-역할(User-Role) 관계 및 역할-허가(Role-Permission) 관계를 검증하고, 사용자 요청정보를 병원정보시스템으로 전달하는 지역접근제어 에이전트;A local access control agent verifying a user-role relationship and a role-permission relationship with respect to a user request received from the central access control agent, and transferring user request information to a hospital information system; 상기 지역접근제어 에이전트의 요청에 대한 결과 데이터를 지역접근제어 에이전트로 전송하는 병원정보 시스템;을 구비하는 의료정보의 보안 접근제어 시스템에 있어서,In the hospital information system for transmitting the result data for the request of the local access control agent to the local access control agent; security access control system of medical information comprising: 상기 중앙접근제어 에이전트는, 상기 클라이언트 시스템으로 전달하는 데이터에 대해 해당 객체(object) 타입의 기밀/민감 정보에 따른 선택적 암호화를 행하는 수단을 구비하며,The central access control agent includes means for performing selective encryption on data transmitted to the client system according to confidential / sensitive information of a corresponding object type, 상기 지역접근제어 에이전트는, 병원정보시스템 인식포멧 데이터를 중앙접근제어 에이전트 인식포멧(XML)으로 의미적으로 동등한 구조적 변환을 하며, 중앙접근제어 에이전트 인식포멧 데이터를 병원정보시스템 인식포멧으로 의미적으로 동등한 구조적 변환을 하는 수단을 구비한 것을 특징으로 하는 의료정보의 보안 접근제어 시스템.The local access control agent converts the hospital information system recognition format data semantically to the central access control agent recognition format (XML) and semantically converts the central access control agent recognition format data to the hospital information system recognition format. Security access control system for medical information, characterized in that it comprises a means for equivalent structural transformation. 사용자 인증을 요청하여 로그인을 하는 클라이언트 시스템; 상기 클라이언트 시스템으로부터 요청된 사용자 인증을 검증하고 그 결과를 세션키를 설정하여 클라이언트 시스템으로 전송하며, 사용자 인증에서 승인된 요청정보를 지역접근제어 에이전트로 전달하며, 지역접근제어 에이전트로부터 반환되는 데이터를 클라이언트시스템으로 반환하는 중앙접근제어 에이전트; 상기 중앙접근제어 에이전트로부터 수신한 사용자 요청에 대한 사용자-역할(User-Role) 관계를 검증하고, 사용자 요청정보를 병원정보시스템으로 전달하며, 병원정보시스템에서 반환되는 데이터를 중앙접근제어 에이전트로 반환하는 지역접근제어 에이전트; 상기 지역접근제어 에이전트의 요청에 대한 결과 데이터를 지역접근제어 에이전트로 전송 하는 병원정보 시스템;을 구비하는 의료정보의 보안 접근제어 시스템에 있어서,A client system requesting user authentication to log in; Verify the user authentication requested from the client system and transmit the result to the client system by setting the session key, transfer the request information approved in the user authentication to the local access control agent, and return the data returned from the local access control agent A central access control agent returning to the client system; Verifies the user-role relationship for the user request received from the central access control agent, passes the user request information to the hospital information system, and returns the data returned from the hospital information system to the central access control agent. Local access control agent; In the hospital information system for transmitting the result data for the request of the local access control agent to the local access control agent; security access control system of medical information comprising: 상기 중앙접근제어 에이전트는 정책 데이터베이스, 로그 데이터베이스, 인증키 데이터베이스를 구비하고,The central access control agent has a policy database, a log database, an authentication key database, 상기 병원정보시스템은 전자의무기록 데이터베이스를 구비하고,The hospital information system has an electronic medical record database, 상기 지역접근제어 에이전트는 프록시 서버를 구비하고, 병원정보시스템 인식포멧 데이터를 중앙접근제어 에이전트 인식포멧(XML)으로 의미적으로 동등한 구조적 변환을 하며 중앙접근제어 에이전트 인식포멧 데이터를 병원정보시스템 인식포멧으로 의미적으로 동등한 구조적 변환을 하는 수단을 구비하는 것을 특징으로 하는 의료정보의 보안 접근제어 시스템.The local access control agent includes a proxy server, and semantically equivalent structural conversion of the hospital information system recognition format data into the central access control agent recognition format (XML) and the central access control agent recognition format data into the hospital information system recognition format. Security access control system for medical information, characterized in that it comprises a means for structurally equivalent structural conversion. 사용자가 자료를 요청하거나 수신된 자료를 받기위해 사용자인터페이스 제공하는 클라이언트 시스템; 상기 클라이언트 시스템을 여러 상이한 플랫폼의 병원정보시스템에 연결할 수 있게 해주는 시스템인 중앙접근제어 에이전트; 상기 중앙접근제어 에이전트와 병원정보시스템 간의 데이터 변환을 담당하는 지역접근제어 에이전트; 지역접근제어 에이전트의 요청에 대한 응답을 하는 병원정보시스템;으로 이루어진 의료정보의 보안 접근제어 시스템에 있어서,A client system that provides a user interface for a user to request data or to receive received data; A central access control agent, a system that enables the client system to connect to hospital information systems of several different platforms; A regional access control agent in charge of data conversion between the central access control agent and a hospital information system; In the security access control system of medical information consisting of; Hospital information system for responding to the request of the local access control agent, 상기 클라이언트 시스템은 클라이언트의 개인키를 이용하여 전자서명을 하는 수단을 구비하며,The client system includes a means for digitally signing using a private key of the client, 상기 중앙 접근제어 에이전트는 요청하는 사용자의 인증 및 요청 정보에 대한 접근제어 적합성 여부를 검증하는 수단을 구비하며,The central access control agent has a means for verifying the access control suitability of the requesting user authentication and request information, 상기 지역접근제어 에이전트는 상기 중앙접근제어 에이전트를 통한 사용자의 적합한 요청에 대해, 사용자-역할(User-Role) 관계를 검증하는 수단을 구비하며, 병원정보시스템 인식포멧 데이터를 중앙접근제어 에이전트 인식포멧(XML)으로 의미적으로 동등한 구조적 변환을 하며 중앙접근제어 에이전트 인식포멧 데이터를 병원정보시스템 인식포멧으로 의미적으로 동등한 구조적 변환을 하는 수단을 구비한 것을 특징으로 하는 의료정보의 보안 접근제어 시스템.The local access control agent includes means for verifying a user-role relationship for a user's appropriate request through the central access control agent, and converts the hospital information system recognition format data into a central access control agent recognition format. And a means for performing semantically equivalent structural transformation in XML and for semantically equivalent structural transformation of the central access control agent recognition format data into a hospital information system recognition format. 제 2항 또는 제 3항 중 어느 한 항에 있어서,The method according to claim 2 or 3, 상기 중앙접근제어 에이전트는, 상기 클라이언트 시스템으로 전달하는 데이터에 대해 해당 객체(object) 타입의 기밀/민감 정보에 따른 선택적 암호화를 행하는 수단을 구비하는 것을 특징으로 하는 의료정보의 보안 접근제어 시스템.And the central access control agent comprises means for selectively encrypting data transmitted to the client system according to confidential / sensitive information of a corresponding object type. 제 1항 또는 제 2항 또는 제 3항 중 어느 한 항에 있어서,The method according to claim 1 or 2 or 3, 상기 지역접근제어 에이전트는 사용자(User), 역할(Role), 사용자-역할 할당(User-Role Assignment)으로 이루어진 정책정보를 구비하며, 상기 정책정보를 이용하여 특정 병원정보시스템에 접근요청을 하는 사용자의 접근제어 검증을 하는 수단을 구비하는 것을 특징으로하는 의료정보의 보안 접근제어 시스템.The local access control agent has a policy information consisting of a user (User), role (Role), user-role assignment (User-Role Assignment), the user making a request for access to a specific hospital information system using the policy information And a means for verifying access control of the medical information security access control system. 제 1항 또는 제 2항 또는 제 3항 중 어느 한 항에 있어서,The method according to claim 1 or 2 or 3, 상기 지역접근제어 에이전트는, 병원정보시스템의 기존 사용자에 대한 접근제어를 위한 내부사용자 정책과, 속하지 않는 외부 사용자에 대한 접근제어를 위한 외부사용자 정책을 구비하는 것을 특징으로 하는 의료정보의 보안 접근제어 시스템.The local access control agent, the internal user policy for access control for the existing user of the hospital information system, and the external user policy for access control for external users that do not belong to security access control of medical information system. 제 1항 또는 제 2항 또는 제 3항 중 어느 한 항에 있어서,The method according to claim 1 or 2 or 3, 상기 중앙접근제어 에이전트의 데이터는 XML 형식으로 이루어진 것을 특징으로 하는 의료정보의 보안 접근제어 시스템.Data of the central access control agent is a security access control system for medical information, characterized in that the XML format. 삭제delete 제 1항 또는 제 2항 또는 제3항 중 어느 한 항에 있어서, The method according to claim 1 or 2 or 3, 상기 지역접근제어 에이전트는, The local access control agent, 상기 중앙접근제어 에이전트의 요청의 역할을, 그 역할에 대응되는 병원정보시스템의 사용자(Role-Mapped User)로 매핑하여 변환하는 수단을 구비한 것을 특징으로하는 의료정보의 보안 접근제어 시스템.And a means for mapping and converting a role of a request of the central access control agent to a role-mapped user of a hospital information system corresponding to the role. 제 1항 또는 제 2항 또는 제3항 중 어느 한 항에 있어서, The method according to claim 1 or 2 or 3, 상기 클라이언트 시스템은 사용자 요청시 사용자의 전자서명 첨가하며, 모든 사용자는 고유 인증서 X.509v3을 구비하는 것을 특징으로하는 의료정보의 보안 접근제어 시스템.The client system adds the user's digital signature at the request of the user, and all users have a unique certificate X.509v3. 제 1항 또는 제 2항 또는 제3항 중 어느 한 항에 있어서, The method according to claim 1 or 2 or 3, 상기 중앙접근제어 에이전트는 역할기반 접근제어방식(RBAC)을 사용하며,The central access control agent uses a role based access control method (RBAC), 상기 병원정보시스템은 사용자기반 접근제어방식중 강제적 접근 통제(MAC)를 사용하거나 역할기반 접근제어방식을 사용하는 것을 특징으로하는 의료정보의 보안 접근제어 시스템.The hospital information system is a security access control system for medical information, characterized in that it uses a mandatory access control (MAC) of the user-based access control method or a role-based access control method. 클라이언트 시스템을 통해 사용자 요청이 발생하는 요청발생단계;A request generation step of generating a user request through the client system; 상기 요청발생단계에서 발생한 사용자 요청에 대해 중앙접근제어 에이전트는 사용자 인증을 하는 사용자 인증단계;A user authentication step in which the central access control agent authenticates a user for the user request generated in the request generation step; 상기 사용자 인증단계에서 승인되면, 상기 지역접근제어 에이전트에 의해 사용자-역할관계(U-R 관계)를 재검증하는 인증검증단계;An authentication verification step of re-validating a user-role relationship (U-R relationship) by the local access control agent, if approved in the user authentication step; 상기 인증검증단계에서 승인된 요청에 대해 병원정보시스템은 결과 데이터를 지역접근제어 에이전트를 통해 중앙접근제어 에이전트로 반환하는 데이터 반환단계;A data return step of returning the result data to the central access control agent through the local access control agent in response to the request approved in the authentication verification step; 상기 데이터 반환단계로부터 중앙접근제어 에이전트로 반환된 데이터는, 상기 데이터의 객체 타입에 따른 민감/기밀 정보에 따라 선택적 암호화를 하여 클라이언트 시스템으로 전달하는 암호화 데이터 전송단계;를 구비하는 의료정보의 보안 접근제어 방법.The data returned to the central access control agent from the data return step, encrypted data transmission step of selectively encrypting according to the sensitive / confidential information according to the object type of the data transmitted to the client system; secure access to medical information Control method. 제 12항에 있어서,The method of claim 12, 상기 사용자 인증단계는 세션키를 상기 클라이언트 시스템으로 전송하는 것을 더 포함하며;The user authentication step further comprises sending a session key to the client system; 상기 암호화 데이터 전송단계는 상기 세션키를 이용하여 선택적 암호화를 하는 것을 특징으로하는 의료정보의 보안 접근제어 방법.The encryption data transmission step is a security access control method for medical information, characterized in that for selectively encrypting using the session key. 제 12항에 있어서,The method of claim 12, 상기 데이터 반환단계는The data return step 상기 지역접근제어 에이전트에서의 사용자-역할관계 재검증 단계에서 승인된 요청에 대해 병원정보시스템 인식 포맷으로 변환하는 병원정보시스템 인식포맷으로의 변환단계;A conversion step into a hospital information system recognition format for converting a request approved in the user-role relationship revalidation step from the local access control agent into a hospital information system recognition format; 상기 병원정보시스템 인식 포맷으로의 변환단계에서 변환된 요청이 상기 병원정보시스템으로 전달되는 병원정보시스템 요청 전달단계;A hospital information system request delivery step of transferring the converted request in the hospital information system recognition format to the hospital information system; 상기 병원정보시스템 요청 전달단계로부터 전달 받은 요청에 대해 병원정보시스템은 역할-허가 관계(R-P 관계) 검증을 하는 역할-허가 관계 검증단계;A role-permission relationship verification step of the hospital information system verifying a role-permission relationship (R-P relationship) for the request received from the hospital information system request delivery step; 상기 병원정보시스템은, 상기 역할-허가 관계 검증 단계에서 승인된 요청에 대해 결과 데이터를 지역접근제어 에이전트로 반환하는 지역접근제어 에이전트로의 데이터 반환 단계;The hospital information system may include: returning data to a regional access control agent for returning result data to the regional access control agent in response to the request approved in the role-permission relationship verification step; 상기 지역접근제어 에이전트로의 데이터 반환 단계에서 반환된 데이터에 대 해, 상기 지역접근제어 에이전트는 중앙접근제어 에이전트 인식 포맷으로 변환하는 중앙접근제어 에이전트 인식 포맷으로의 변환단계;를 구비한 것을 특징으로하는 의료정보의 보안 접근제어 방법.And converting the local access control agent into a central access control agent recognition format for converting the local access control agent into a central access control agent recognition format for the data returned in the data returning step to the local access control agent. Security access control method of medical information. 클라이언트 시스템이 중앙접근제어 에이전트로 사용자 인증을 요청하여 로그인을 하는 제1단계;A first step of the client system requesting user authentication with the central access control agent to log in; 중앙접근제어 에이전트가 사용자 인증을 검증하고 그 결과를 클라이언트 시스템과 중앙접근제어 에이전트 간 보안전송을 위한 세션키를 설정하여 클라이언트시스템으로 전송하는 제2단계;A second step of the central access control agent verifying user authentication and setting the session key for secure transmission between the client system and the central access control agent and transmitting the result to the client system; 인증에 성공한 클라이언트 시스템이 중앙접근제어 에이전트로 데이터 요청 질의를 보내는 제3단계; A third step of, upon successful authentication, sending a data request query to the central access control agent; 중앙접근제어 에이전트가 사용자-역할관계를 이용하여 사용자 요청 적합성을 검증하는 제4단계;A fourth step of the central access control agent verifying user request suitability using a user-role relationship; 검증에 성공하면 사용자 요청 도메인을 식별하는 제5단계;A fifth step of identifying a user request domain if the verification is successful; 사용자 요청 도메인의 해당 병원정보 시스템에 전자의무기록 데이터를 요청하는 제6단계;A sixth step of requesting electronic medical record data from a corresponding hospital information system of a user request domain; 해당 병원정보시스템은 전자의무기록 데이터를 중앙접근제어 에이전트로 보내고 중앙접근제어 에이전트는 그 받은 데이터를 세션키를 이용하여 선택적 암호화한 후 클라이언트 시스템으로 전송하는 제7단계;The hospital information system sends the electronic medical record data to the central access control agent, and the central access control agent selectively encrypts the received data using the session key and transmits the received data to the client system; 클라이언트 시스템은 그 받은 데이터를 복호화한 후 확인하는 제8단계를 구 비하는 의료정보의 보안 접근제어 방법.The client system has an eighth step of verifying after decrypting the received data, the security access control method of medical information. 중앙접근제어 에이전트가 클라이언트의 사용자 인증 후 전송된 클라이언트의 요청의 적합성을 검증하는 클라이언트 적합성 검증 단계;A client suitability verifying step of the central access control agent verifying suitability of the request of the client transmitted after user authentication of the client; 사용자-역할(U-R) 관계 검증에 대한 사용자 요청 검증이 승인되면, 요청 데이타가 있는 해당 병원정보 시스템의 지역접근제어 에이전트로 요청을 전달하는 지역접근제어 에이전트로 요청 전달 단계; If the user request verification for user-role (U-R) relationship verification is approved, forwarding the request to the regional access control agent that forwards the request to the local access control agent of the corresponding hospital information system having the request data; 지역접근제어 에이전트는 관련 요청에 대한 응답 결과를 다시 중앙접근제어 에이전트로 반환하며, 반환된 데이터와 데이터의 객체 타입에 따른 암호화 트리의 민감/기밀성 정보에 따라 선택적 암호화하여 최종 결과 데이터를 생성하는 최종 결과 데이터 생성단계;The local access control agent returns the response result for the related request back to the central access control agent, and generates the final result data by selectively encrypting the returned data and the sensitive / confidential information of the encryption tree according to the object type of the data. Generating result data; 생성된 결과 데이터에 중앙접근제어 에이전트의 전자서명을 첨부하여 클라이언트 시스템으로 전송하는 클라이언트로 전송단계;를 적어도 구비하는 의료정보의 보안 접근제어 방법.And attaching the digital signature of the central access control agent to the client system and transmitting the electronic signature to the client system to the generated result data. 클라이언트 시스템으로 전달하는 데이터에 대해 해당 객체(object) 타입의 기밀/민감 정보에 따른 선택적 암호화를 행하는 중앙접근제어 에이전트를 적어도 구비하는 의료정보 보안 접근제어 시스템의 의료정보의 보안 접근제어 방법에 있어서,A security access control method for medical information of a medical information security access control system, comprising at least a central access control agent for selectively encrypting data transmitted to a client system according to confidential / sensitive information of an object type. 지역접근제어 에이전트가 중앙접근제어 에이전트에서 요청을 수신하면, 그 요청의 적합성을 검증하는 요청 적합성 검증단계;A request conformance verifying step, when the local access control agent receives the request from the central access control agent, verifying the suitability of the request; 사용자-역할(U-R) 관계 검증이 승인되면, 중앙접근제어 에이전트는 중앙접근제어 에이전트의 역할에 해당하는 병원정보시스템의 사용자와의 매핑 변환하고 사용자의 요청을 각 병원정보시스템 인식 형식으로 변환하여 병원정보시스템로 전달하는 병원정보시스템 인식포맷 변환단계;If the verification of the user-role (UR) relationship is approved, the central access control agent converts the mapping with the user of the hospital information system corresponding to the role of the central access control agent and converts the user's request into each hospital information system recognition format. Hospital information system recognition format conversion step of transmitting to the information system; 병원정보시스템에 의해 반환된 요청에 대해 중앙접근제어 에이전트 인식 포맷으로 변환된 데이터는 중앙접근제어 에이전트로 반환되는 중앙접근제어 에이전트 인식 포맷 변환단계;를 적어도 구비하는 의료정보의 보안 접근제어 방법.And a central access control agent recognition format conversion step of converting the data converted into the central access control agent recognition format for the request returned by the hospital information system to the central access control agent. 제 1항 또는 제2항 또는 제3항 중 어느 한 항에 있어서,The method according to claim 1 or 2 or 3, 월드와이드웹 컨소시엄(W3C) 권고안인 XML 기술을 이용한 XML 서명과 XML 암호화 수단을 구비하는 것을 특징으로하는 의료정보의 보안접근제어 시스템. A security access control system for medical information comprising an XML signature and XML encryption means using XML technology, which is a World Wide Web Consortium (W3C) recommendation. 제 1항 또는 제2항 또는 제3항 중 어느 한 항에 있어서,The method according to claim 1 or 2 or 3, 전자서명 알고리즘으로는 SHA-1(Secure Hash Algorithm-1)을 사용하며, 암호화 알고리즘으로 비대칭키 알고리즘인 RSA(Rivest-Shamir-Adleman), 대칭키 알고리즘인 3-DES(Data Encryption Standard)을 이용하는 것을 특징으로하는 의료정보의 보안접근제어 시스템.Secure Hash Algorithm-1 (SHA-1) is used as the digital signature algorithm, and asymmetric key algorithm RST (Rivest-Shamir-Adleman) (RSA) and symmetric key algorithm 3-DES (Data Encryption Standard) are used. Security access control system for medical information, characterized by.
KR1020040059560A 2004-07-29 2004-07-29 Secure HIS Access Control System with Web-based distributed component technology KR100690452B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040059560A KR100690452B1 (en) 2004-07-29 2004-07-29 Secure HIS Access Control System with Web-based distributed component technology

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040059560A KR100690452B1 (en) 2004-07-29 2004-07-29 Secure HIS Access Control System with Web-based distributed component technology

Publications (2)

Publication Number Publication Date
KR20060010947A KR20060010947A (en) 2006-02-03
KR100690452B1 true KR100690452B1 (en) 2007-03-09

Family

ID=37121061

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040059560A KR100690452B1 (en) 2004-07-29 2004-07-29 Secure HIS Access Control System with Web-based distributed component technology

Country Status (1)

Country Link
KR (1) KR100690452B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101263303B1 (en) * 2010-08-11 2013-05-10 한국과학기술원 Data publishing method and apparatus, and method and apparatus for decrypting a published data, and data publishing system
KR20230085314A (en) 2021-12-07 2023-06-14 주식회사에이테크 Storage and protection system for genomic data based on blockchain

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101467636B1 (en) * 2012-11-27 2014-12-04 가천대학교 산학협력단 Medical information exchange system, authentication proxy server and medical information exchange method
KR101688736B1 (en) * 2015-07-02 2016-12-22 주식회사 유비케어 Electronic chart security apparatus and method
KR102120942B1 (en) 2018-07-27 2020-06-10 (주)가나엔터프라이즈 Medical Block Chain System
KR102605087B1 (en) * 2021-03-05 2023-11-23 순천향대학교 산학협력단 System and method for sharing patient's medical data in medical cloud environment

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10111897A (en) 1996-10-07 1998-04-28 Hitachi Ltd Clinical consultation information sharing method
KR20010093986A (en) * 2000-04-03 2001-10-31 김진태 An integrated administration system for health information using network
KR20010096000A (en) * 2000-04-14 2001-11-07 이종훈 System and method for possessing medical information in common
KR20010106907A (en) * 2000-05-24 2001-12-07 황욱배 Medical record management system and method thereof
KR20030054657A (en) * 2001-12-26 2003-07-02 한국전자통신연구원 Job-based Access Control Method
KR20040039845A (en) * 2002-11-05 2004-05-12 한국전자통신연구원 Apparatus and method for encrypted information and data of user authentication based on mac and rbac

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10111897A (en) 1996-10-07 1998-04-28 Hitachi Ltd Clinical consultation information sharing method
KR20010093986A (en) * 2000-04-03 2001-10-31 김진태 An integrated administration system for health information using network
KR20010096000A (en) * 2000-04-14 2001-11-07 이종훈 System and method for possessing medical information in common
KR20010106907A (en) * 2000-05-24 2001-12-07 황욱배 Medical record management system and method thereof
KR20030054657A (en) * 2001-12-26 2003-07-02 한국전자통신연구원 Job-based Access Control Method
KR20040039845A (en) * 2002-11-05 2004-05-12 한국전자통신연구원 Apparatus and method for encrypted information and data of user authentication based on mac and rbac

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
1020010096000
1020030054657
1020040039845

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101263303B1 (en) * 2010-08-11 2013-05-10 한국과학기술원 Data publishing method and apparatus, and method and apparatus for decrypting a published data, and data publishing system
KR20230085314A (en) 2021-12-07 2023-06-14 주식회사에이테크 Storage and protection system for genomic data based on blockchain

Also Published As

Publication number Publication date
KR20060010947A (en) 2006-02-03

Similar Documents

Publication Publication Date Title
Zhang et al. Security models and requirements for healthcare application clouds
Narayan et al. Privacy preserving EHR system using attribute-based infrastructure
Akinyele et al. Securing electronic medical records using attribute-based encryption on mobile devices
Sicari et al. A policy enforcement framework for Internet of Things applications in the smart health
US8627077B2 (en) Transparent authentication process integration
Sameshima et al. Authorization with security attributes and privilege delegation: Access control beyond the ACL
US20060041743A1 (en) Virtual distributed security system
Woo et al. A framework for distributed authorization
Minami et al. Secure context-sensitive authorization
KR101220160B1 (en) Secure data management method based on proxy re-encryption in mobile cloud environment
Khan et al. Fine-grained access control to medical records in digital healthcare enterprises
KR20050054081A (en) Integrated security information management system and its method
Steele et al. HealthPass: Fine-grained access control to portable personal health records
Choe et al. Web-based secure access from multiple patient repositories
Zhou et al. A secure role-based cloud storage system for encrypted patient-centric health records
JP5711117B2 (en) Access to medical data
Choudhri et al. PatientService: electronic patient record redaction and delivery in pervasive environments
KR100690452B1 (en) Secure HIS Access Control System with Web-based distributed component technology
Seitz et al. Semantic access control for medical applications in grid environments
Chandersekaran et al. Claims-based enterprise-wide access control
Khan et al. Toward a synergy among discretionary, role-based and context-aware access control models in healthcare information technology
Petkovic et al. Privacy and security in e-Health applications
Ardagna et al. XML security
Tambe et al. A review paper on privacy based secure sharing of PHR in the cloud using encryption
Rezaeibagha et al. Multi-authority security framework for scalable EHR systems

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
N231 Notification of change of applicant
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120302

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130228

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee