일반적으로, 의료기관에 도입된 의료정보 시스템은 전자의무기록(EMR, electronic medical record), 처방전달시스템(OCS, order communication system), 의료영상저장전송시스템(PACS, picture archiving communication system) 등이 있다. 이들 의료정보 시스템은 병원 등 의료기관에 전산시스템에 도입되면서, 의료기관에서 작성되고 전달되던 의료기록들이 디지털화된 것이다. 즉, 예전에 의사 등 의료진에 의해 수기로 작성 보관되던 의무기록들이 전자문서로 디지털화 되고, 의료정보 시스템에서 기록되어 영구 보관되고 있다.
전자의무기록(EMR)은 과거에 의사 등 의료진이 환자의 진료내용을 수기로 기록한 종이문서의 차트를 디지털화한 것이고, 처방전달시스템(OCS)는 과거에 의사가 수기로 작성한 종이문서의 처방전을 디지털화한 것이다. 또한, 의료영상저장전송시스템(PACS)은 과거에 CT나 MRI 등 의료영상 장비에 의해 촬영된 영상 필름을 디지털화한 것이다. 따라서 이들 환자의 진료내용, 의사의 처방전, 의료영상 자료들은 모두 디지털화되어, 의료기관 내 의료정보시스템에 저장되어 영구 보존되고, 네트워크를 통해 필요한 곳으로 전달된다.
따라서 의사나 환자는 PC 나 스마트폰 등 인터넷과 연결된 컴퓨팅 단말에서 필요할 때마다 해당 의료기관의 서버에 접속하여 환자의 의료기록을 쉽게 열람할 수 있게 되었다. 예를 들어, 건진관리 서버가 EMR 서버와 연동하여, 환자(사용자), 상담원, 관리자, 의료진, 외부기관(국민건강보험공단 등) 등의 단말을 인증하면 해당 단말로 EMR 건강기록을 열람할 수 있게 하는 기술이 제시되고 있다[특허문헌 1,2,3].
그러나 상기와 같은 의료정보시스템은 대부분 하나의 병원 등 단일한 의료기관 내에서 폐쇄적으로 구축되었기 때문에, 타 의료기관과 상호 호환성이 떨어진다. 그래서 의료기관들 사이에서 의료기록들이 원활하게 전송하기 위한 표준화 작업들이 활발하게 진행되고 있다.
또한, 타 의료기관 간의 의료데이터를 전송하거나 서로 교환하기 위하여, 중간에 중계서버, 통합서버, 공유서버 등을 두어 양 의료기관 간을 중계하는 기술들도 제시되고 있다[특허문헌 4,5]. 상기 선행기술들은 제1 의료기관에서 제2 의료기관 간에 의료데이터를 암호화 하여 단순히 전송 중계하거나, 통합서버와 공유서버 등에서 각 의료기관들로부터 의료 데이터를 수신하여 보관하다가 요청이 있으면 보관된 의료 데이터를 요청 기관에 전송하는 기술들이 제시되고 있다.
그러나 상기 선행기술들은 의료 데이터를 제3 기관에서 보관하거나 관리한다는 문제점이 있다. 즉, 병원 등 의료기관에서 생성된 의료기록은 매우 중요한 개인정보에 해당되기 때문에, 환자가 원하지 않는 방식으로 제3자에게 공개될 경우 프라이버시를 심각하게 침해할 우려가 크다. 따라서 환자의 명시적인 동의가 없이는 제3자의 열람을 금지하거나 해당 병원 이외의 장소로는 반출을 제한하는 등 법적으로 엄격하게 보호되고 있다. 즉, 엄격한 신분확인이나 위임장, 정보제공 동의서 제출 등 복잡한 절차를 거치는 경우에만 환자의 의료기록을 타 기관이나 제3자에게 반출할 수 있다.
따라서 인터넷 등 온라인을 통해 환자가 다른 병원이나 건강의료 관련 어플리케이션 등 공인기관 시스템에 자신의 의료기록을 제공하는 것을 실제로 구현한다는 것은 용이하지 않다. 특히, 스마트폰 등 이동 단말(모바일 앱 등)에서 자신의 의료기록을 열람하는 것조차 쉽지 않다.
국내의 경우, 최근 규제가 완화되고 있지만, 학술적인 목적의 연구 외 상업적 이용은 여전히 법적 제한이 많다. 즉, 민간기업이 의료 서비스 품질 개선, 환자의 요구(needs) 분석, 신제품 개발, 건강관리 서비스 제공 등 상업적 목적으로, 의료기관에 누적되어 있는 방대한 의료 데이터를 제3자의 서버에서 체계적으로 수집/분석하는 것은 여전히 법적으로 제한이 많다.
반면, 미국이나 영국을 비롯한 선진국들은 최근 급증하는 의료비 절감과 디지털 헬스케어 산업의 육성을 위해 의료정보에 대한 각종 법적인 규제를 크게 완화하고 있다. 예를 들어, 미국의 경우 정부 주도로 블루버튼 플러스(Blue Button +) 표준을 채택하여, 인터넷을 통한 환자 자신의 의료정보 열람 및 다른 의료기관이나 서비스 사업자를 비롯한 제3자에 대한 전송(Transition)을 법적으로 보장하고 있다. 즉, 환자가 병원의 병원 홈페이지(Patient Portal)에 접속하여 블루버튼 플러스(Blue Button +) 버튼을 누르면, HL7(Health Level 7)의 C-CDA(Consolidated Clinical Document Architecture) 표준으로 포맷팅된 의료정보를 열람(View)하거나, 다운로드(Download)하거나, 제3자에게 SMTP 방식으로 전송(Transfer)할 수 있다.
도 1은 미국 의료체계의 블루버튼 시스템에 의한 의료정보 전달 방법을 나타낸 흐름도이다.
도 1에서 보는 바와 같이, 푸쉬(push) 방식의 블루버튼 시스템은 미국의 의료정보 교류 표준 방법으로서, 다이렉트 프로토콜(Direct Protocol)을 활용하여, 환자포탈(Patient Portal)에서 병원정보 시스템에 저장된 환자의 의료기록을 제3자의 앱(또는 제3자 시스템)으로 전송한다.
도 1과 같이, 의료기록을 안전하게 전송하기 위하여, 병원 및 제3자 시스템에는 보안 에이전트(STA, Security/Trust Agent)가 설치되고, 공인인증기관의 시스템은 인증서 저장 서버(Certificate Store)와, 주소관리 서버(DNS/LDAP)로 구성된다.
인증서 저장 서버(Certificate Store)는 정부, 공공기관, 또는 블루버튼을 지원하는 사업자 커뮤니티 등에서 신뢰성있게 상호 정보를 주고 받기 위해 인증서 발급, 발급된 인증서 보관, 유효성 검증 등을 수행하는 서버이다.
또한, 주소관리 서버(DNS/LDAP)는 사용자들이 병원 등 데이터 보유자(Data Holder)들로부터 의료기록을 수신하기 위해 입력한 다이렉트 액세스(Direct Access) 주소 관리시스템으로서, 웹의 도메인 관리체계 또는 이메일 주소 관리 체계와 유사하며, 등록된 주소에 해당하는 인증서도 발급한다.
또한, 보안 에이전트(STA, Security/Trust Agent)는 의료기록을 암호화하고 서명하여 전송하기 위한 에이전트 프로그램으로서, 병원정보 시스템 및 제3자 시스템에 모두 사전에 설치된다. 특히, 보안 에이전트(STA, Security/Trust Agent)는 xml이나 pdf 파일 형태로 생성된 개인의 의료/건강정보를 인증서 저장 서버(Certificate Store)에서 수신받은 인증서로 암호화/싸인 처리해서 SMTP로 송신하거나 암호화 파일을 수신한 후 복호화해서 해독하는 역할을 수행한다.
도 1의 의료정보 전달 방법을 보다 구체적으로 설명하면 다음과 같다.
먼저, 환자가 환자포탈 서버(Patient Portal)(또는 병원의 홈페이지)에 접속하여 인증(Authentication)을 받는다(①). 이때, 환자포탈 서버는 의료정보 인증서버의 인증 API를 호출하여 사용자 인증을 수행한다.
다음으로, 사용자 인증을 받은 후, 환자는 환자포탈(또는 병원 홈페이지)에서 블루버튼을 클릭하여 의료기록 전송 서비스를 시작한다(②). 먼저, 정보제공 주기를 설정하고(③), 환자의 의료기록의 조회를 요청한다(④).
다음으로, 환자는 의료기록을 수신받을 목적지(destination)로 자신의 다이렉트 주소(Direct Address)를 입력한다(⑤). 다이렉트 주소는 통상의 이메일 주소와 유사한 메일 주소로서, 의료정보를 전용으로 수신하는 메일 체계이다.
다음으로, 병원의 보안 에이전트(STA, Security/Trust Agent)가 공인인증기관의 주소관리 서버(DNS/LDAP)에서 자신의 인증서를 발행받고(⑥), 인증서저장 서버(Certificate Store)에서 그 인증서의 유효성(validity)을 확인받는다(⑦).
다음으로, 유효성이 확인된 이 인증서로 환자의 의료기록(Clinical Data)을 암호화 하고 싸인 처리한 후(⑧), 의료기록을 보안 메일(S/MIME) 포맷으로 암호화해서 메일 프로토콜(SMTP)로 전송한다(⑨).
다음으로, 의료기록을 수신한 제3자 시스템의 보안 에이전트(STA)가 수신한 메시지의 유효성 및, 싸인처리의 적절성을 체크하고(⑩), 암호화된 의료기록을 개인키(Private Key)로 복호화 한다. 그리고 데이터를 파싱한 후, 제3자 시스템의 데이터베이스(DB)에 저장한다(⑫).
상기와 같은 의료기록 전송 방법은 정보를 제공하는 요양기관과 정보를 수신하는 제3자의 시스템 사이에 일종의 공인인증기관이 개입하여 의료정보의 안전한 전송을 중개해 준다. 상기 공인인증기관은 블루버튼(Blue Button)을 통해 의료정보 교환에 참여하고자 하는 기관들이 블루버튼 서비스의 사용자격을 승인받기 위해 인증서 저장 서버(Certificate Store)에 트러스트 앵커(Trust Anchor)를 사전에 등록한다. 그리고 공인인증기관이 인증서를 발행하고 유효성을 체크하고 암호화 키를 발행하는 등의 역할을 수행한다. 즉 의료정보 제공자와 수요자 사이에서 공인인증기관이 개입하여 의료정보의 안전한 교환을 보증해 주기 때문에 환자는 안심하고 요양기관이나 보험사의 환자 포탈(Patient Portal)에 접속하여 자신이 원하는 다른 병원이나 보험사 등 제3자의 시스템에 자신의 의무기록을 제공할 수 있다.
그러나 상기와 같은 의료전송 방법은 기술표준과 의료정보 교환절차가 병원, 보험사, 요양원 등 모든 참여 기관들에게 제도적으로 강제해야 하고, 공신력 있는 공인인증기관이 의료정보 교환절차에 개입해야 한다. 따라서 몇 개의 정보제공자와 수요기관이 기술적으로 구현하는 것만으로는 큰 의미가 없다. 즉 상기와 같은 종래 의료전송 시스템은 사회적 합의를 바탕으로 정부나 국회 등 국가기관의 강력한 의지를 통해 법적인 제도가 먼저 마련되어야만 도입이 가능하다.
즉, 공인인증기관과 같이 사회적 합의나 법적 기반 없이도, 참여 기관들 간에는 의료기록을 직접 전송할 수 있는 기술이 필요하다. 즉, 병원을 비롯한 요양기관 등 의무기록의 제공자와 수신자를 직접 연결해서 안전하게 의무기록을 바로 전송할 수 있는 기술이 필요하다.
이하, 본 발명의 실시를 위한 구체적인 내용을 도면에 따라서 설명한다.
또한, 본 발명을 설명하는데 있어서 동일 부분은 동일 부호를 붙이고, 그 반복 설명은 생략한다.
먼저, 본 발명을 실시하기 위한 전체 시스템의 구성을 도 2를 참조하여 설명한다.
도 2에서 보는 바와 같이, 본 발명을 실시하기 위한 전체 시스템은 의료기록을 수신 또는 수집하는 공인기관 시스템(30), 및 의료기록을 관리하고 전송하는 의료기관 시스템(40)으로 구성된다. 추가적으로, 사용자 본인 또는 실명을 인증하는 본인인증 서버(60)을 더 구비할 수 있다. 또한, 의료기관 시스템(40), 공인기관 시스템(30), 및, 본인인증 서버(60)는 인터넷, 무선이동통신망 등 네트워크(20)에 연결되어, 서로 데이터 통신을 수행한다.
먼저, 공인기관 시스템(30)은 의료기관으로부터 의료기록을 수신하여 수집하는 서버로서, 의료기관과는 별도의 서비스 업체 또는 기관에서 관리되는 서버이다.
공인기관 시스템(30)은 사용자 인증을 위한 공개된 인터페이스(또는 공개 프로토콜)를 제공하고, 상기 공개된 프로토콜을 통해 사용자 인증이 성공하면, 이에 대한 액세스 토큰을 발행한다. 사용자 인증은 사용자 계정에 대한 인증으로서, 바람직하게는, 사용자 아이디와 패스워드에 의한 인증이다.
이를 위해, 공인기관 시스템(30)은 사용자 또는 환자를 회원으로 등록하고, 사용자 계정을 생성한다. 사용자 계정은 사용자 아이디에 의해 식별되고, 사용자 계정을 접속하기 위하여 아이디와 패스워드를 설정한다. 그리고 공인기관 시스템(30)은 상기 아이디와 패스워드가 일치하면 사용자 인증이 된 것으로 판단한다.
또한, 공인기관 시스템(30)는 발급된 액세스 토큰으로 인증된(또는 유효성이 체크된) 사용자 또는 시스템에 대하여, 해당 사용자 계정에 의료기록 또는 의료 데이터를 업로드할 수 있는 공개된 인터페이스를 제공한다. 즉, 공인기관 시스템(30)은 의료기관 등이 액세스 토큰으로 인증(또는 유효성 체크)을 요청받으면, 상기 액세스 토큰이 발급된 액세스토큰이 맞는지 확인하여, 상기 액세스토큰에 대한 유효성 체크를 수행한다. 이때 유효성 체크는 사용자 계정에 인증과 기간 만료 여부 등을 체크하는 것이다.
그리고 액세스토큰에 의한 인증(또는 유효성 체크)이 성공되면, 공개된 의료기록 업로드 인터페이스를 통해, 의료기록 또는 의료데이터를 상기 액세스토큰에 대응되는 사용자 계정에 업로드 하도록 허용한다.
특히, 공인기관 시스템(30)는 의료기관 등이 의료기록 또는 의료 데이터를 업로드할 수 있도록, 의료기록 업로드 인터페이스를 공개하여 제공한다. 따라서 의료기관 등은 상기 공개된 인터페이스에 맞도록 인터넷 상(또는 웹 상)에서 의료기록 업로드를 요청하면, 해당 사용자 계정으로 의료기록을 업로드할 수 있다.
다음으로, 의료기관 시스템(40)은 의료기록 또는 의료데이터를 보유한 병원, 요양원, 검진센터, 헬스케어 업체 등에서 운영하는 시스템으로서, 네트워크(20) 상에 연결되어, 자신이 보유한 의료기록을 공인기관 시스템(30)으로 전송 또는 업로드 한다.
의료기관 시스템(40)은 사용자 인증, 본인 인증, 정보제공 설정 등 의료기록 제공을 위한 인증 수단을 제공한다. 즉, 의료기관 시스템(40)은 사용자 또는 환자의 환자 계정을 확인하기 위한 사용자 인증, 환자 본인이 맞는지(또는 환자의 실명이 맞는지)를 확인하는 본인인증, 및, 제3자에게 의료기록을 제공할 것인가 또는 어느 범위까지 제공할 것인가를 결정하는 확인한다.
한편, 의료기관 시스템(40)은 본인인증을 위하여, 외부 기관에서 운영되는 본인인증 서버(60)를 통해 본인인증을 수행하게 할 수 있다.
그리고 의료기관 시스템(40)은 모든 인증 및 정보제공 범위가 설정되면, 대상이 되는 의료기록을 공인기관 시스템(30)의 사용자 계정으로 접속하여, 직접 의료기록을 업로드 한다.
또한, 의료기관 시스템(40)은 공인기관 시스템(30)의 사용자 계정으로 접속하기 위하여, 공인기관 시스템(30)에서 제공하는 공개된 사용자 인증의 인터페이스를 통해, 사용자 인증을 수행하고, 그 결과로서 액세스토큰을 수신하여 저장한다. 그리고 의료기관 시스템(40)은 저장된 액세스토큰으로 공인기관 시스템(30)의 인증을 수행하고, 공인기관 시스템(30)의 해당 사용자 계정으로 접속하여, 해당 사용자 계정으로 의료기록을 업로드 한다.
이때, 의료기관 시스템(40)은 액세스토큰의 허용 기간(또는 만료기간, 사용기간) 내에 주기적으로 또는 원하는 시기에, 공인기관 시스템(30)에 접속하여, 의료기록을 지속적으로 업로드 할 수 있다.
다음으로, 본인인증 서버(60)는 환자 또는 사용자의 본인 인증(또는 실명 인증)을 수행하는 서버로서, 공인기관 시스템(30)이나 의료기관 시스템(40)과는 별도의 외부 기관에서 운영하는 서버이다. 본인인증 서버(60)는 휴대폰 인증을 수행하는 이동통신사, 아이핀(i-PIN, 인터넷 개인식별번호) 인증을 수행하는 본인확인기관, 공인인증서 인증을 처리하는 공인인증기관 등의 서버이다. 또한, 그 외에도 본인 인증 또는 실명 인증을 수행하는 서버는 어느 서버나 적용이 가능하다.
다음으로, 본 발명의 일실시예에 따른 공인기관 시스템(30)의 구성을 도 2을 참조하여, 보다 구체적으로 설명한다.
도 2에서 보는 바와 같이, 본 발명에 따른 공인기관 시스템(30)은 제3자 시스템의 사용자 계정으로 접속하기 위한 사용자 인증을 공개된 프로토콜에 의해 수행하는 공인 공개인증 서버(31), 사용자 계정으로 의료기록을 업로드 하도록 하는 공개된 인터페이스를 제공하는 공인기관 업로드 서버(32)로 구성된다. 또한, 추가적으로, 공인기관 업로드 서버(32)에 접속하여 사용자 계정에 업로드된 의료기록을 열람하거나 가져오는 제3자 서비스 앱(33)을 더 포함하여 구성될 수 있다.
공인 공개인증 서버(31)는 사용자 인증을 위한 공개된 인터페이스(또는 공개 프로토콜)를 제공하고, 상기 공개된 프로토콜을 통해 사용자 인증이 성공하면, 이에 대한 액세스 토큰을 발행한다. 사용자 인증은 사용자 계정에 대한 인증으로서, 바람직하게는, 사용자 아이디와 패스워드에 의한 인증이다. 그리고 공개인증 서버(42)는 발행된 액세스토큰으로 접속하는 시스템에게 사용자와 동일한 수준에서 그 요청을 처리해준다.
액세스토큰은 사용기간이 한정된 임시로 발급된 접근권한이다. 따라서 해당 사용기간이 경과되면, 발급된 액세스토큰은 그 권한이 소멸된다. 또한, 의료기관 시스템(40)에서 사용자 인증 등이 수행되지만 공인 공개인증 서버(31)의 공개된 인터페이스를 통해 진행되므로, 의료기관 시스템(40)은 사용자 인증 등의 인증정보를 전혀 알지 못한다.
이후, 액세스토큰의 사용기간 내에서, 의료기관 시스템(40)이 액세스토큰을 통해 공인 공개인증 서버(31)에 접속하면, 공개인증 서버(42)는 인증된 사용자와 같은 수준으로, 의료기관 시스템(40)에게 서비스를 제공한다. 특히, 공인 공개인증 서버(31)는 의료기관 시스템(40)이 공인기관 업로드 서버(32)의 사용자 계정에 접속하여, 의료기록 또는 의료 데이터를 업로드 하는 것을 허용한다.
다음으로, 공인기관 업로드 서버(32)는 사용자 또는 환자를 회원으로 등록하고, 사용자 계정을 생성하고, 생성된 사용자 계정으로 의료기록을 업로드 하도록 공개된 인터페이스를 제공하는 서버이다.
앞서 설명한 바와 같이, 사용자 계정은 사용자 아이디에 의해 식별되고, 사용자 계정을 접속하기 위하여 아이디와 패스워드를 설정한다. 그리고 상기 아이디와 패스워드가 일치하면 사용자 인증이 된 것으로 판단한다.
또한, 공인기관 업로드 서버(32)는 사용자 계정의 사용자 인증 정보를 공인 공개인증 서버(31)로 전송할 수 있다. 또는, 공인 공개인증 서버(31)가 공개된 인터페이스를 통해 사용자 인증을 수행할 때, 공인기관 업로드 서버(32)는 공인 공개인증 서버(31)의 요청에 의하여, 사용자 아이디와 패스워드 등 사용자 인증 입력 정보를, 저장된 사용자 계정의 사용자 인증 정보와 대비하여, 인증 여부를 확인해줄 수 있다.
또한, 공인기관 업로드 서버(32)는 발급된 액세스 토큰으로 인증된 의료기관 시스템(40)에 대하여, 해당 사용자 계정에 의료기록 또는 의료 데이터를 업로드할 수 있는 공개된 인터페이스를 제공한다. 즉, 공인기관 업로드 서버(32)는 의료기관 시스템(40)이 액세스 토큰으로 인증(또는 유효성 체크)을 요청받으면, 상기 액세스토큰에 대한 유효성 체크를 수행한다. 이때, 공인기관 업로드 서버(32)는 액세스토큰에 대한 유효성 체크 또는 인증을 공인 공개인증 서버(31)를 통해 수행하게 할 수 있다.
그리고 액세스토큰에 의한 유효성 체크가 성공되면, 공인기관 업로드 서버(32)는 공개된 의료기록 업로드 인터페이스를 통해, 의료기록 또는 의료데이터를 상기 액세스토큰에 대응되는 사용자 계정에 업로드 하도록 허용한다. 특히, 공인기관 업로드 서버(32)는 의료기관 등이 의료기록 또는 의료 데이터를 업로드할 수 있도록, 의료기록 업로드 인터페이스를 공개하여 제공한다.
특히, 공인기관 업로드 서버(32)는 액세스토큰의 사용기간 내에서, 의료기관 시스템(40)이 액세스토큰을 통해 접속하면, 언제라도 의료기록의 업로드를 허용하나, 그 사용기간이 경과되면, 사용자 계정의 접속 또는 의료기록 업로드를 차단한다.
또한, 제3자 서비스 앱(33)은 제3자 서비스 단말(10)에 설치되어 수행되는 어플리케이션 또는 모바일용 어플리케이션(또는 앱, 어플)으로서, 의료기관과는 별도의 서비스 업체 또는 기관에서 관리되는 어플리케이션이다.
제3자 서비스 단말(10)은 사용자 또는 환자가 이용하는 단말로서, PC, 스마트폰, 태블릿PC, 패블릿 등 통상의 컴퓨팅 기능을 구비한 단말이다. 또한, 셋탑박스, 스마트 TV 등 컴퓨팅 기능을 구비한 임베디드 기기(임베디드 시스템을 구비한 단말) 등도 해당될 수 있다. 특히, 제3자 서비스 단말(10)은 어플리케이션 또는, 모바일용 어플리케이션(또는 앱, 어플) 등이 설치되어 실행될 수 있는 단말이다.
또한, 제3자 서비스 앱(33)은 공인기관 업로드 서버(32)에 접속하여 사용자 계정에 업로드된 의료기록을 열람하거나 가져온다. 제3자 서비스 앱(33)은 열람한 의료기록을 이용하여, 제3자 서비스 단말(10)에서 의료기록 제공 서비스를 제공한다.
다음으로, 본 발명의 일실시예에 따른 의료기관 시스템(40)의 구성을 도 2을 참조하여 보다 구체적으로 설명한다.
도 2에서 보는 바와 같이, 본 발명에 따른 의료기관 시스템(40)은 사용자 또는 환자를 회원으로 등록하는 환자포탈 서버(41), 의료기록 전송을 위한 인증을 공개된 프로토콜에 의해 수행하는 공개인증 서버(42), 의료기록을 저장하고 이를 전송하는 의료기록 서버(43)로 구성된다.
환자포탈 서버(41)는 해당 의료기관의 환자 또는 사용자를 회원으로 등록하는 기능을 수행하는 서버이다. 바람직하게는, 환자포탈 서버(41)는 의료기관의 통상의 웹 서버로서, 인터넷의 웹 상에서 의료기관의 관문으로의 포탈 서비스를 제공한다. 또한, 환자포탈 서버(41)는 스마트폰 등 모바일 플랫폼에 맞는 동일한 웹 기능을 제공할 수 있고, 별도의 포탈 서비스 앱을 위한 인터페이스를 제공할 수 있다.
환자포탈 서버(41)는 환자 또는 사용자를 회원으로 가입시켜 등록시키고, 환자 계정을 생성한다. 이때, 사용자 아이디와 비밀번호 등 사용자 인증정보가 등록된다. 즉, 환자포탈 서버(41)는 사용자 인증정보로 인증되면 웹 로그인을 허용한다. 또한, 환자포탈 서버(41)는 사용자의 이름, 생년월일 등 추가적인 개인정보를 등록시킨다.
참고로, 환자포탈 서버(41)에서의 환자 계정(또는 사용자 계정)은 환자포탈의 웹 로그인을 위한 계정으로서, 공인기관 업로드 서버(32)의 사용자 계정과는 서로 다르다. 따라서 동일한 사용자 또는 환자의 계정이라도, 양 계정의 아이디는 서로 다를 수 있다.
또한, 사용자 아이디 등이 등록되면, 이들 정보, 즉, 사용자 정보를 의료기록 서버(43)에 전송한다. 의료기록 서버(43)는 자신이 사용하는 병록 아이디(또는 병록 식별정보)와, 사용자 아이디를 매핑시켜 저장한다. 즉, 환자포탈 서버(41)에서 환자 또는 사용자를 식별하기 위한 사용자 아이디와, 의료기록 서버(43)에서 의료기록의 환자를 식별하기 위한 병록 아이디는 서로 다를 수 있다. 따라서 이들 2가지의 아이디(또는 식별정보)를 매핑시켜야 한다. 따라서 의료기록 서버(43)는 환자포탈 서버(41)로부터 사용자 아이디를 포함한 사용자 정보를 수신하고, 사용자의 이름이나 생년월일 등 사용자 정보를 비교하여 앞서 병록 아이디와 사용자 아이디를 매핑시킨다.
또 다른 실시예로서, 환자포탈 서버(41) 또는 공개인증 서버(42)가 사용자 정보를 의료기록 서버(43)에 전송하고, 해당 사용자 정보에 대응되는 병록 아이디를 요청할 수 있다. 이 경우, 환자포탈 서버(41) 또는 공개인증 서버(42)가 병록 아이디 및 사용자 아이디를 매핑시켜 저장한다.
또한, 환자포탈 서버(41)는 사용자 인증, 본인 인증, 정보제공 설정 등 의료기록 제공을 위한 인증 수단을 제공한다. 즉, 환자포탈 서버(41)는 사용자 또는 환자의 환자 계정을 확인하기 위한 사용자 인증, 환자 본인이 맞는지(또는 환자의 실명이 맞는지)를 확인하는 본인인증, 및, 제3자에게 의료기록을 제공할 것인가 또는 어느 범위까지 제공할 것인가를 결정하는 확인한다.
특히, 환자포탈 서버(41)는 사용자 인증을 병원인증 서버(42)를 통해 수행될 수 있다. 병원인증 서버(42)는 저장된 사용자 아이디와 패스워드를 입력받은 사용자 정보와 대비하여 인증을 수행한다.
또한, 환자포탈 서버(41)는 본인인증을 위하여, 외부 기관에서 운영되는 본인인증 서버(60)를 통해 본인인증을 수행하게 할 수 있다. 환자포탈 서버(41)는 본인인증 서버(60)에게 본인 인증을 요청하면, 본인인증 서버(60)는 본인인증 페이지 또는 화면을 제공하고, 해당 페이지는 환자포탈 서버(41) 상에서 표시된다. 그리고 본인인증 페이지에 사용자 또는 환자가 본인 정보(또는 실명 정보)를 입력하면, 본인인증 서버(60)는 이를 검증하여, 본인 인증 결과를 환자포탈 서버(41)로 전송한다. 이때, 사용자 또는 환자가 본인 정보를 입력하는 화면 또는 페이지는 본인인증 서버(60)에서 제공된 것이므로, 입력되는 본인인증 데이터는 환자포탈 서버(41)에서 접근하지 못한다. 반면, 환자포탈 서버(41)는 본인 인증 결과를 본인인증 서버(60)로부터 직접 수신하기 때문에, 본인인증의 결과를 신뢰할 수 있다. 특히, 환자포탈 서버(41)는 본인인증 서버(41)로부터 수신한 결과를 자신이 저장한 환자의 개인정보와 대비하여, 해당 환자가 본인인증한 사용자와 동일인 인지를 검증한다.
또한, 환자포탈 서버(41)는 제3자에게 의료기록을 제공할 것인가 또는 어느 범위까지 제공할 것인가를 웹 상에서 사용자 또는 환자로부터 입력받는다. 그래서 환자포탈 서버(41)는 제3자에게 전송할 의료기록의 제공 범위와 그 여부를 확인받는다. 또한, 환자포탈 서버(41)는 환자의 의료기록에 대한 제3자로의 전송 여부, 및, 그 제공 범위를 의료기록 서버(43)에 전송한다.
또한, 환자포탈 서버(41)는 의료기록을 전송할 제3자를 선택하고, 제3자의 공개인증 서버(31)에 접속하여, 공인기관 시스템의 사용자 인증을 수행하게 하고, 공인기관 업로드 서버(32)에 접속할 수 있는 액세스토큰을 발급받는다.
이때, 환자포탈 서버(41)는 제3자의 공개인증 서버(31)의 공개된 인터페이스를 통해 사용자 인증이 수행된다. 환자포탈 서버(41)가 공개된 인터페이스로 사용자 인증을 요청하면, 공개인증을 위한 페이지를 수신하여 표시하고, 사용자 또는 환자로 하여금 표시된 페이지에 아이디 패스워드(사용자 인증정보)를 입력하게 한다. 따라서 환자포탈 서버(41)는 입력되는 사용자 인증정보에 접근할 수 없고, 보유하지 않는다.
환자포탈 서버(41)는 공개인증이 성공하면, 제3자의 공개인증 서버(31)로부터 액세스토큰을 발급받고, 상기 액세스토큰을 의료기록 서버(43)에 전송한다.
한편, 제3자의 공개인증 서버(31)는 사용자 인증을 공개인증 방식으로 제공하는 서버이다. 의료기관 또는 환자포탈 서버(41) 입장에서, 의료기록의 업로드(push) 대상인 공인 공개인증 서버(31)는 공개인증(open authorization) 메커니즘을 통해 자신의 리소스를 외부의 시스템에 제공하거나 또는 입력받을 수 있게 하는 시스템이다. 따라서 환자포탈 서버(41)는 사전에 공인 공개인증 서버(31)에 접속하여, 의료기관 이름, 환자포탈 주소(Patient Portal URI), 재접속 주소(Redirect URI) 등 공개인증 소비자(또는 클라이언트)에 대한 정보를 등록한다. 즉, 환자포탈 서버(41)는 공인 공개인증 서버(31)에 자신을 공개인증 클라이언트로서 등록한다. 이때, 환자포탈 서버(41)는 공개인증 서버(31)로부터 공개인증을 위한 클라이언트 아이디나 보안을 위한 인증 정보 등을 발급받고, 발급받은 정보로 공개인증을 요청하고 액세스토큰을 발급받는 등 공개인증을 수행한다. 재접속 주소(Redirect URI)는 공개인증 시 환자포탈 서버(41)에서 화면 제어(control)가 공인 공개인증 서버(31)로 전달되는데, 사용자 인증이 완료된 후, 화면 제어권(control)을 가진 공개인증 서버(31)가 액세스토큰을 전달하기 위하여 다시 환자포탈 서버(41)에 재접속하는 위치를 나타낸다. 즉, 환자포탈 서버(41)는 그 이전에 부여받은 인가코드(authorization code)와 액세스토큰을 교환하여, 액세스토큰을 발급받는다.
다음으로, 병원인증 서버(42)는 사용자 인증을 수행하는 서버이다. 특히, 병원인증 서버(42)는 환자포탈 서버(41)에서 사용자 또는 환자가 로그인을 하여, 사용자 계정으로 접속하려고 할 때, 사용자 인증을 수행해준다. 사용자 인증은 사용자 계정에 대한 인증로서, 웹 로그인의 입력된 아이디 패스워드를 저장된 아이디 패스워드와 대비하여, 인증 통과 여부를 결정한다.
다음으로, 의료기록 서버(43)는 의료기록을 저장하고 관리하는 서버로서, 바람직하게는, 전자의무기록(EMR, electronic medical record) 시스템이다. 그 외에 의료영상저장전송시스템(PACS, picture archiving communication system) 등 각종 환자의 의료정보를 저장하는 시스템이 적용될 수 있다.
의료기록 서버(43)는 의료기관의 대상자인 환자의 식별번호로서 병록 아이디(ID)를 사용한다. 병록 아이디는 앞서 환자포탈 서버(41)에서 사용하는 사용자 아이디와 서로 다를 수 있다. 따라서 의료기록 서버(43)는 병록 아이디와 사용자 아이디의 매핑을 위하여, 환자포탈 서버(41) 또는 공개인증 서버(42)로부터 사용자 아이디 및 사용자 정보를 수신하여, 수신한 사용자 정보를 이용하여 동일한 사용자 정보의 병록 아이디를 해당 사용자 아이디와 매핑시킬 수 있다.
또한, 의료기록 서버(43)는 환자포탈 서버(41)로부터 환자의 의료기록의 전송 여부와 제공범위(또는 제공 주기), 그리고 공인기관 업로드 서버(32)의 접속정보 및, 공인기관 업로드 서버(32)의 사용자 계정 접속을 위한 액세스토큰을 수신한다.
그리고 의료기록 서버(43)는 액세스토큰을 이용하여 공인기관 업로드 서버(32)의 사용자 계정에 접속하고, 사용자 계정에 의료기록을 업로드한다. 이때, 업로드 하는 의료기록의 범위 및 주기는 환자포탈 서버(41)에서 사용자 또는 환자에 의해 설정된 범위 및 주기에 의한다.
다음으로, 본 발명의 제1 실시예에 따른 공인기관에 의한 의료기록 관리 및 전송 방법을 도 3을 참조하여 설명한다.
도 3에서 보는 바와 같이, 먼저, 사용자 또는 환자는 환자포탈 서버(41)에 웹 로그인을 수행한다(S11). 이때, 환자포탈 서버(41)는 사용자의 아이디 및 비밀번호로 사용자 인증을 수행하고, 환자포탈에서 생성된 환자 계정으로 접속을 허용한다. 환자포탈의 환자 계정 또는 사용자 계정는 사용자 또는 환자를 회원으로 등록시 생성되는 것으로서, 사용자 계정에는 등록시 입력받은 환자의 개인정보도 등록된다. 개인정보는 이름, 생년월일, 성별, 연락처(전화번호, 주소) 등이다. 이때, 등록되는 사용자 아이디는 사용자가 환자포탈 서버(41)에 접속하기 위한 식별정보로서, 의료기록 서버(43)에서 환자를 식별하기 위한 병록 아이디와는 다를 수 있다.
다음으로, 환자포탈 서버(41)는 사용자 아이디 및, 환자의 개인정보를 의료기록 서버(43)에 전송할 수 있다(S12). 의료기록 서버(43)는 병록 아이디와 사용자 아이디의 매핑을 위하여, 환자포탈 서버(41) 또는 공개인증 서버(42)로부터 사용자 아이디 및 사용자 정보를 수신하여, 수신한 사용자 정보를 이용하여 동일한 사용자 정보의 병록 아이디를 해당 사용자 아이디와 매핑시킬 수 있다. 또는 다른 예로서, 의료기록 서버(43)에서 매핑된 환자의 병록 아이디를 환자포탈 서버(41)에 전송하여, 환자포탈 서버(41)의 해당 사용자 아이디의 사용자 정보로서, 병록 아이디를 보관할 수도 있다.
다음으로, 병원인증 서버(42)는 의료기록을 전송할 제3자 목록을 환자포탈 서버(41)로 전송하고(S21), 환자포탈 서버(41)는 제3자 목록을 웹 상에 표시하고, 사용자의 입력에 따라 그 중에서 의료기록을 전송할 제3자를 선택하게 한다(S22). 환자포탈 서버(41)는 공인 공개인증 서버(31)에 공개인증 클라이언트로서 등록하게 되므로, 사전에 공개인증이 가능한 공인기관 시스템(30)들을 알 수 있다. 따라서 환자포탈 서버(41)는 공개인증이 가능한 제3자들의 목록을 작성할 수 있고, 이를 사전에 목록 데이터로 저장하여 보유한다.
다음으로, 환자포탈 서버(41)는 의료기록의 외부 전송(또는 업로드)을 위하여, 본인인증 및 정보제공 동의를 사용자 또는 환자로부터 입력받는다. 즉, 의료기록은 매우 중요한 개인정보이므로, 웹 상에 로그인한 사용자/환자가 본인인지 실명 인증을 해야 하고, 제3자에게 자신의 의료기록을 제공할 것인지를 동의 받아야 한다.
이를 위해, 환자포탈 서버(41)는 본인인증 서버(60)에 본인인증을 요청하여(S41), 환자 자신의 본인인증을 위한 절차를 수행시킨다(S42). 즉, 환자포탈 서버(41)는 본인인증 서버(60)의 본인인증을 위한 접속 페이지를 환자포탈에서 표시하게 하고, 이후 본인인증 서버(60)가 사용자 또는 환자와 직접 연결하여 본인인증을 수행하게 한다. 즉, 본인인증 페이지는 본인인증 서버(60)가 관리하는 화면이고, 환자포탈 서버(41)는 접근하지 못한다.
본인인증은 핸드폰 인증, 아이핀 인증, 공인인증서 인증 등 본인 또는 실명을 확인하는 인증 방법이다. 또한, 환자포탈 서버(41)는 사용자 또는 환자로 하여금 다수의 본인인증 방식 중에서 1개를 선택하게 할 수 있다.
다음으로, 본인인증 서버(60)는 환자포탈 상에서 입력되는 사용자 또는 환자의 본인정보를 직접 입력받는다(S43). 앞서 설명한 바와 같이, 환자 등 사용자는 환자포탈의 사용자 인터페이스(UI) 상에서 본인 인증을 수행하나, 본인인증 작업은 본인인증 서버(60)에서 직접 수행된다.
그리고 본인인증 서버(60)는 본인인증에 대한 결과를 환자포탈 서버(41)로 전송한다(S44). 즉, 환자포탈 서버(41)는 본인인증 서버(60)로부터 본인인증에 대한 결과를 직접 수신한다.
그리고 환자포탈 서버(41)는 본인인증 서버(60)로부터 수신한 본인인증 결과(또는 실명정보)를 자신이 보유한 해당 사용자 또는 환자 계정의 개인정보와 대비하여, 본인인증한 사용자가 회원으로 등록한 환자(또는 사용자)인지를 확인한다(S45). 본인인증 결과는 사용자의 실명정보로서, 이름, 생년월일, 성별 등 개인 실명정보이다. 따라서 환자포탈 서버(41)는 자신이 저장한 개인정보와, 본인인증 결과로서 수신한 실명정보를 비교하여, 해당 사용자가 본인인증한 것임을 추가로 확인한다. 양 실명정보가 동일하지 않으면, 동일인이 아닌 것으로 판단한다. 동일인이 아니면 환자포탈 서버(41)의 화면에 "동일인이 아니므로 진료정보를 제공할 수 없습니다."는 안내 메시지를 출력한다.
도 4는 본인 인증의 화면을 예시하고 있다.
다음으로, 사용자에 대한 본인인증이 성공하면, 환자포탈 서버(41)는 사용자 또는 환자에게 정보제공 동의를 요청한다(S51). 환자포탈 서버(41)는 정보제공 동의 페이지(또는 화면)를 제공하여, 웹 상에서 의료기록이 제3자에게 전송된다는 것에 대한 환자의 동의를 제출받는다(S52). 또한, 환자포탈 서버(41)는 해당 환자의 의료기록에 대하여 제3자에게 제공하는 동의 및 그 범위를 의료기록 서버(43)에 전송한다(S53).
바람직하게는, 정보제공 동의는 정보제공 범위, 및 그 범위 내에서 정보제공을 할 수 있다는 동의를 포함한다. 정보제공 범위는 환자 자신의 의료기록을 외부로 전송하고자 하는 범위이다. 의료기록 데이터의 범위는 진료 내용, 기간 등에 따라 범위가 설정될 수 있다. 예를 들어, 진료 내용은 수진 데이터, 처방 제이터, 검사결과 데이터, 건강검진 데이터, 수술 내역 등의 카테고리로 분류되고, 해당 카테고리 별로 설정될 수 있다. 또한, 의료기록 데이터의 열람/전송 범위를 6개월, 1년, 3년, 5년 등 정해진 기간이나 사용자가 정해진 기간으로 설정될 수 있다.
또한, 바람직하게는, 정보제공 범위는 정보를 제공할 주기를 더 포함할 수 있다. 주기가 설정되면, 설정된 주기에 따라 주기적으로 의료기록을 전송해야 한다.
도 5는 정보제공 동의 화면을 예시하고 있다. 도 5와 같이, 환자의 의료기록 데이터를 종류 별로 선택하여, 제3자로의 정보제공 범위를 설정하고, 이에 대한 동의를 설정한다.
다음으로, 환자포탈 서버(41)는 앞서 선택한 제3자의 공개인증 서버(31)에 사용자 인증을 요청한다(S61). 이때, 공인 공개인증 서버(31)의 공개된 인터페이스를 통해 사용자 인증이 수행된다.
공인 공개인증 서버(31)는 환자포탈 서버(41)로부터 공개된 인터페이스로 사용자 인증 요청을 수신하면, 사용자 인증을 수행한다(S62). 즉, 공인 공개인증 서버(31)는 사용자 인증용 페이지를 환자포탈 서버(41)로 전송하여, 환자포탈 화면에서 공개인증을 위한 페이지를 수신하여 표시한다. 그리고 해당 인증용 페이지에 사용자 인증정보, 즉, 아이디와 패스워드를 입력받는다(S63). 따라서 환자포탈 서버(41)는 입력되는 사용자 인증정보에 접근할 수 없고, 보유하지 않는다.
다음으로, 공인 공개인증 서버(31)는 사용자 인증이 통과되면, 해당 사용자의 사용자 계정으로 접근할 수 있는 권한인 액세스토큰을 발급한다(S64). 그리고 공인 공개인증 서버(31)는 발급된 액세스토큰을 환자포탈 서버(41)로 전송한다(S65). 이때, 환자포탈 상에 인증용 페이지가 표시되지만, 인증용 페이지는 공인 공개인증 서버(31)가 제어하는 화면이므로, 인증이 완료된 시점에서 화면 제어권은 공인 공개인증 서버(31)에 있다. 따라서 공인 공개인증 서버(31)는 재접속 주소(redirect URL)를 통해, 환자포탈 서버(41)로 접속하여 액세스토큰을 전송한다. 그리고 환자포탈 서버(41)는 액세스토큰을 의료기록 서버(43)로 전달한다(S66). 바람직하게는, 액세스토큰으로 접속할 공인기관 업로드 서버(32)의 주소 정보도 함께 전송한다.
앞서 단계들에서, 의료기록 서버(43)는 환자포탈 서버(41)로부터 환자의 의료기록의 전송 여부와 제공범위(또는 제공 주기), 그리고 공인기관 업로드 서버(32)의 접속정보 및, 공인기관 업로드 서버(32)의 사용자 계정 접속을 위한 액세스토큰을 수신하였다.
의료기록 서버(43)는 액세스토큰을 이용하여 공인기관 업로드 서버(32)의 사용자 계정에 접속하고, 의료기록 업로드를 요청한다(S81). 공인기관 업로드 서버(32)는 액세스토큰의 유효성을 체크한다(S82). 이때, 공인기관 업로드 서버(32)는 액세스토큰의 유효성 체크를 공인 공개인증 서버(31)를 통해 수행할 수 있다.
공인기관 업로드 서버(32)는 액세스토큰의 유효성이 체크되면, 의료기록 서버(43)에게 의료기록을 업로드할 것으로 허용하고(S83), 의료기록은 의료기록 서버(43)에 의해 업로드 된다(S84). 업로드된 의료기록은 공인기관 업로드 서버(32)에 저장된다(S85).
이때, 공인기관 업로드 서버(32)는 의료기록 업로드를 위한 웹 상에서의 API(Application Program Interface)를 제공하고, 의료기록 서버(43)는 웹 상의 API를 호출하여 의료기록 또는 의료 데이터를 업로드(또는 write) 한다. 특히, 웹상의 API를 호출시 액세스토큰으로 인증정보를 보낸다. 바람직하게는, 웹 상의 API는 RESTful(REpresentational State Transfer) API로 구현된다.
공인기관 업로드 서버(32)에 저장된 의료기록은 제3자 서비스 앱(33)에 의해 요청되어 전달될 수 있다.
한편, 의료기록 서버(43)는 액세스토큰의 사용 기간 내에 언제라도 공인기관 업로드 서버(32)에 의료기록을 업로드할 수 있다. 특히, 정보제공 범위에 전송 주기가 설정된 경우, 의료기록 서버(43)는 주기적으로 의료기록을 업로드할 수 있다. 그러나 액세스토큰의 사용기간이 경과되면, 의료기록 서버(43)는 업로드할 수 없고, 다시 인증을 통해 액세스토큰을 새로 발급받아야 한다.
다음으로, 본 발명의 제2 실시예에 따른 공인기관에 의한 의료기록 관리 및 전송 방법을 도 6을 참조하여 설명한다.
본 발명의 제2 실시예는 상기 제1 실시예에 비하여, 액세스토큰을 먼저 발급받고, 본인인증 및 정보제공 동의를 후에 처리한다. 즉, 상기 제2 실시예는 상기 제1 실시예에 비하여, 일부 단계들의 순서만 변경되었다. 이하에서 생략된 내용은 상기 제1 실시예를 참조한다.
도 6에서 보는 바와 같이, 먼저, 사용자 또는 환자는 환자포탈 서버(41)에 웹 로그인을 수행한다(S11). 이때, 환자포탈 서버(41)는 사용자 아이디 및, 환자의 개인정보를 의료기록 서버(43)에 전송할 수 있다(S12).
다음으로, 병원인증 서버(42)는 의료기록을 전송할 제3자 목록을 환자포탈 서버(41)로 전송하고(S21), 환자포탈 서버(41)는 제3자 목록을 웹 상에 표시하고, 사용자의 입력에 따라 그 중에서 의료기록을 전송할 제3자를 선택하게 한다(S22).
다음으로, 환자포탈 서버(41)는 사용자 또는 환자에게 정보제공 동의를 요청한다(S31). 환자포탈 서버(41)는 정보제공 동의 페이지(또는 화면)를 제공하여, 웹 상에서 의료기록이 제3자에게 전송된다는 것에 대한 환자의 동의를 제출받는다(S32). 또한, 환자포탈 서버(41)는 해당 환자의 의료기록에 대하여 제3자에게 제공하는 동의 및 그 범위를 의료기록 서버(43)에 전송한다(S33).
다음으로, 공인 공개인증 서버(31)는 사용자 인증이 통과되면, 해당 사용자의 사용자 계정으로 접근할 수 있는 권한인 액세스토큰을 발급한다(S34). 그리고 공인 공개인증 서버(31)는 발급된 액세스토큰을 환자포탈 서버(41)로 전송한다(S35). 그리고 환자포탈 서버(41)는 액세스토큰을 의료기록 서버(43)로 전달한다(S36). 바람직하게는, 액세스토큰으로 접속할 공인기관 업로드 서버(32)의 주소 정보도 함께 전송한다.
다음으로, 환자포탈 서버(41)는 본인인증 서버(60)에 본인인증을 요청하여(S41), 환자 자신의 본인인증을 위한 절차를 수행시킨다(S42). 본인인증 서버(60)는 환자포탈 상에서 입력되는 사용자 또는 환자의 본인정보를 직접 입력받는다(S43). 그리고 본인인증 서버(60)는 본인인증에 대한 결과를 환자포탈 서버(41)로 전송한다(S44). 그리고 환자포탈 서버(41)는 본인인증 서버(60)로부터 수신한 본인인증 결과(또는 실명정보)를 자신이 보유한 해당 사용자 또는 환자 계정의 개인정보와 대비하여, 본인인증한 사용자가 회원으로 등록한 환자(또는 사용자)인지를 확인한다(S45).
다음으로, 사용자에 대한 본인인증이 성공하면, 환자포탈 서버(41)는 사용자 또는 환자에게 정보제공 동의를 요청한다(S51). 환자포탈 서버(41)는 정보제공 동의 페이지(또는 화면)를 제공하여, 웹 상에서 의료기록이 제3자에게 전송된다는 것에 대한 환자의 동의를 제출받는다(S52). 또한, 환자포탈 서버(41)는 해당 환자의 의료기록에 대하여 제3자에게 제공하는 동의 및 그 범위를 의료기록 서버(43)에 전송한다(S53).
앞서 단계들에서, 의료기록 서버(43)는 환자포탈 서버(41)로부터 환자의 의료기록의 전송 여부와 제공범위(또는 제공 주기), 그리고 공인기관 업로드 서버(32)의 접속정보 및, 공인기관 업로드 서버(32)의 사용자 계정 접속을 위한 액세스토큰을 수신하였다.
의료기록 서버(43)는 액세스토큰을 이용하여 공인기관 업로드 서버(32)의 사용자 계정에 접속하고, 의료기록 업로드를 요청한다(S81). 공인기관 업로드 서버(32)는 액세스토큰을 인증한다(S82). 공인기관 업로드 서버(32)는 액세스토큰이 인증되면, 의료기록 서버(43)에게 의료기록을 업로드할 것으로 허용하고(S83), 의료기록은 의료기록 서버(43)에 의해 업로드 된다(S84). 업로드된 의료기록은 공인기관 업로드 서버(32)에 저장된다(S85).
이상, 본 발명자에 의해서 이루어진 발명을 상기 실시 예에 따라 구체적으로 설명하였지만, 본 발명은 상기 실시 예에 한정되는 것은 아니고, 그 요지를 이탈하지 않는 범위에서 여러 가지로 변경 가능한 것은 물론이다.