KR20220136805A - 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치 및 방법 - Google Patents

가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치 및 방법 Download PDF

Info

Publication number
KR20220136805A
KR20220136805A KR1020210042949A KR20210042949A KR20220136805A KR 20220136805 A KR20220136805 A KR 20220136805A KR 1020210042949 A KR1020210042949 A KR 1020210042949A KR 20210042949 A KR20210042949 A KR 20210042949A KR 20220136805 A KR20220136805 A KR 20220136805A
Authority
KR
South Korea
Prior art keywords
target
virtual
account information
virtual account
client terminal
Prior art date
Application number
KR1020210042949A
Other languages
English (en)
Other versions
KR102486018B1 (ko
Inventor
주형준
문종섭
김종호
전승호
유학제
Original Assignee
주식회사 틸더
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 틸더 filed Critical 주식회사 틸더
Priority to KR1020210042949A priority Critical patent/KR102486018B1/ko
Priority to PCT/KR2022/000812 priority patent/WO2022211233A1/ko
Publication of KR20220136805A publication Critical patent/KR20220136805A/ko
Application granted granted Critical
Publication of KR102486018B1 publication Critical patent/KR102486018B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/256Integrating or interfacing systems involving database management systems in federated or virtual databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • 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/40Network security protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • Multimedia (AREA)
  • Storage Device Security (AREA)

Abstract

가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치 및 방법이 개시되며, 본원의 일 실시예에 따른 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 방법은, 대상 DB의 실제 계정 정보에 기초하여 상기 실제 계정 정보와 매핑되는 가상 계정 정보를 생성하는 단계, 클라이언트 단말로부터 상기 대상 DB에 대한 접속 요청을 수신하는 단계, 상기 접속 요청에 포함된 가상 계정에 매핑된 상기 실제 계정 정보가 존재하는지 여부를 판단하는 단계 및 상기 판단 결과에 따라 상기 실제 계정 정보에 기초하여 상기 클라이언트 단말의 상기 대상 DB에 대한 접속을 중계하는 단계를 포함할 수 있다.

Description

가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치 및 방법{ABSTRACT DATABASE MANAGEMENT APPARATUS AND METHOD BASED ON VIRTUAL ACCOUNT AND ACCESS CONTROL MODEL}
본원은 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치 및 방법에 관한 것이다. 예를 들면, 본원은 가상 계정을 활용한 의료 데이터베이스 관리 시스템(Database Management System, DBMS)의 보안 정책을 통해 클라이언트가 보안 정책에 어긋나는 작업을 수행하는 경우에 선제적으로 클라이언트의 접근을 제어하는 기법에 관한 것이다.
네트워크(Network) 통신의 원리는 ISO/IEC 7498-1:1994에 명세된 ‘The Basic Reference Model for Open Systems Interconnection’에 기초하며, 이를 단순화한 TCP/IP 스택이 대중적으로 사용된다. 여기서, TCP/IP 스택은 물리, 데이터 링크, 네트워크, 전송, 그리고 애플리케이션 계층까지 총 5개의 계층으로 구성되며, TCP와 IP는 각각 전송 계층과 네트워크 계층에 사용되는 대표적인 프로토콜로서 각 계층별로 특정 목적을 위해 설계된 프로토콜이 존재하며, 소프트웨어 개발자는 애플리케이션 계층 수준에서 해당 소프트웨어의 기능을 이용하기 위한 프로토콜을 설계 및 구현할 수 있다는 특징을 가진다.
이와 관련하여, 프록시와 방화벽은 네트워크 통신을 감시하고 보호하기 위한 대표적인 방법으로서, TCP/IP 스택의 각 계층에 해당하는 프록시와 방화벽이 존재하게 된다. 구체적으로, 프록시는 네트워크 기능을 가진 2개 이상의 참여자 사이에 위치하여 서로의 통신을 중계하는 역할을 수행하며, 이러한 프록시를 사용한 클라이언트-서버 통신 모델에서 사용자(클라이언트)는 프록시를 통해 서버와 통신하고, 프록시는 통신 내용을 확인할 수 있다.
또한, 방화벽은 프록시 기능을 기반으로 네트워크 통신에 대해 조직의 보안 정책을 적용할 수 있게 하는 네트워크 장치 혹은 소프트웨어로서 사용자와 조직의 서버 사이의 통신을 확인할 수 있을 뿐만 아니라, 통신 내용이 조직의 자산에 피해를 끼치거나 정책에 위배될 경우 해당 세션을 강제로 차단할 수 있다.
일반적으로 프록시나 방화벽은 서버에서 실행되는 애플리케이션에 관계없이 조직에서 발생하는 모든 통신을 모니터링하고 제어하기 때문에 특정 애플리케이션이나 서비스에 특화된 보안 정책을 적용하기 어렵다는 문제가 있다.
한편, 의료 데이터는 환자의 개인정보 등 개인의 프라이버시와 연관된 민감한 정보를 포함하기 때문에 물리적/논리적으로 제한된 환경에서 운영되어 왔으나, 최근 빅 데이터의 가치가 강조되고 활용 사례가 증가함에 따라, 의료 데이터를 연구 등 2차 활용 목적으로 분석하려는 시도가 이어지고 있다.
종래의 의료 데이터 분석 기법의 경우, 기술적 관점에서 사용자는 지리적/물리적으로 의료원 내에서 데이터베이스에 접근하거나, 엄격하게 제한된 네트워크 환경에서의 원격 접속만 허용하는 등 데이터 활용에 제약이 많았다. 이러한 환경을 개선하고 의료 데이터를 적극적으로 활용하기 위해 2010년 중반부터는 의료 데이터의 양식을 규격화하고, 이를 토대로 데이터베이스 접속 도구나 분석 프로그램 등에 대한 개발이 활발히 이루어졌으나, 이러한 프로그램들은 주로 Java Database Connectivity(JDBC) 혹은 Open Database connectivity(ODBC)를 이용해 데이터베이스에 접속하고, 의료 데이터를 읽고 분석하는 방식을 취하고 있었는데, 전술한 종래의 방식은 사용자가 자신의 PC에서 의료 데이터가 저장된 데이터베이스에 직접 접속해야 하기 때문에, 사용자가 데이터베이스의 정보를 사전에 알고 있어야 하고 적절한 질의를 통해 데이터베이스의 정보가 노출될 수 있으며, 이는 보안상 바람직하지 않다는 문제가 있었다.
이에 따라, 의료 데이터의 분석 및 활용을 위하여 의료용 데이터베이스에 특화되어 사용자와 데이터베이스 사이의 통신을 모니터링하고 통제할 수 있는 보안 조치의 개발이 요구된다.
본원의 배경이 되는 기술은 한국등록특허공보 제10-0916668호에 개시되어 있다.
본원은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 클라이언트와 대상 DB의 데이터베이스 관리 시스템(Database Management System, DBMS) 사이에서 대상 DB의 실제 계정에 매핑되는 가상 계정을 활용하여 클라이언트의 접근을 선제적으로 관리하는 보안 정책을 지원하는 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치 및 방법을 제공하려는 것을 목적으로 한다.
다만, 본원의 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상기한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본원의 일 실시예에 따른 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 방법은, 대상 DB의 실제 계정 정보에 기초하여 상기 실제 계정 정보와 매핑되는 가상 계정 정보를 생성하는 단계, 클라이언트 단말로부터 상기 대상 DB에 대한 접속 요청을 수신하는 단계, 상기 접속 요청에 포함된 가상 계정에 매핑된 상기 실제 계정 정보가 존재하는지 여부를 판단하는 단계 및 상기 판단 결과에 따라 상기 실제 계정 정보에 기초하여 상기 클라이언트 단말의 상기 대상 DB에 대한 접속을 중계하는 단계를 포함할 수 있다.
또한, 상기 중계하는 단계는, 상기 가상 계정을 상기 실제 계정 정보에 따른 실제 계정으로 치환하여 상기 대상 DB로 전달하는 단계, 상기 대상 DB로부터 사용자 인증을 위한 식별 정보를 수신하는 단계, 상기 수신한 식별 정보를 가상 식별 정보로 변환하고, 상기 가상 식별 정보를 상기 클라이언트 단말로 전송하는 단계, 상기 클라이언트 단말로부터 상기 가상 계정, 상기 가상 계정에 대응하는 가상 암호 및 상기 가상 식별 정보를 포함하는 암호 입력 요청을 수신하는 단계, 상기 암호 입력 요청에 포함된 상기 가상 계정 및 상기 가상 암호가 상기 가상 계정 정보에 대응하고, 상기 암호 입력 요청에 포함된 상기 가상 식별 정보가 상기 식별 정보에 대응하면, 상기 실제 계정 정보 및 상기 식별 정보를 포함하는 인증 요청을 상기 대상 DB로 전송하는 단계 및 상기 인증 요청에 따른 인증 처리 결과를 상기 대상 DB로부터 수신하고, 상기 인증 처리 결과를 상기 클라이언트 단말로 전송하는 단계를 포함할 수 있다.
또한, 상기 가상 계정 정보는 상기 클라이언트 단말의 사용자에게 노출되되, 상기 가상 계정 정보에 기초한 상기 대상 DB로의 직접 접속은 불가능한 것일 수 있다.
또한, 상기 생성하는 단계는, 상기 생성된 가상 계정 정보로부터 상기 실제 계정 정보를 도출하는 것이 방지되도록 상기 실제 계정 정보를 난수 처리 방식으로 변환하여 상기 가상 계정 정보를 생성할 수 있다.
또한, 상기 생성하는 단계 이후에 미리 설정된 유효 기간이 도과하면, 상기 가상 계정 정보의 상기 실제 계정 정보에 대한 매핑이 해제될 수 있다.
또한, 본원의 일 실시예에 따른 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 방법은, 상기 중계하는 단계 이후에, 상기 클라이언트 단말로부터 상기 대상 DB와 연계된 질의를 수신하는 단계, 상기 접속 요청에 포함된 가상 계정의 상기 질의에 따른 상기 대상 DB에 대한 처리를 수행할 권한 보유 여부를 판단하는 단계 및 상기 권한 보유 여부에 기초하여 상기 처리를 선택적으로 수행하는 단계를 포함할 수 있다.
또한, 상기 권한 보유 여부를 판단하는 단계는, 상기 대상 DB와 연계하여 미리 설정된 복수의 사용자 역할 중 상기 접속 요청에 포함된 가상 계정에 대하여 부여된 상기 사용자 역할이 상기 권한을 포함하는지 여부를 판단할 수 있다.
또한, 본원의 일 실시예에 따른 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 방법은, 상기 클라이언트 단말로부터 상기 대상 DB에 대한 세션 종료 요청을 수신하는 단계 및 상기 세션 종료 요청을 상기 대상 DB에 전송하고, 상기 클라이언트 단말과 연계된 세션을 종료하는 단계를 포함할 수 있다.
또한, 상기 대상 DB는 의료 데이터를 저장하는 DB일 수 있다.
한편, 본원의 일 실시예에 따른 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치는, 대상 DB의 실제 계정 정보에 기초하여 상기 실제 계정 정보와 매핑되는 가상 계정 정보를 생성하는 매핑부, 클라이언트 단말로부터 상기 대상 DB에 대한 접속 요청을 수신하고, 상기 접속 요청에 포함된 가상 계정에 매핑된 상기 실제 계정 정보가 존재하는지 여부를 판단하는 클라이언트 식별부 및 상기 판단 결과에 따라 상기 실제 계정 정보에 기초하여 상기 클라이언트 단말의 상기 대상 DB에 대한 접속을 중계하는 접속 중계부를 포함할 수 있다.
또한, 상기 접속 중계부는, 상기 가상 계정을 상기 실제 계정 정보에 따른 실제 계정으로 치환하여 상기 대상 DB로 전달하고, 상기 대상 DB로부터 사용자 인증을 위한 식별 정보를 수신하고, 상기 수신한 식별 정보를 가상 식별 정보로 변환하고, 상기 가상 식별 정보를 상기 클라이언트 단말로 전송하는 식별 정보 처리부, 상기 클라이언트 단말로부터 상기 가상 계정, 상기 가상 계정에 대응하는 가상 암호 및 상기 가상 식별 정보를 포함하는 암호 입력 요청을 수신하고, 상기 암호 입력 요청에 포함된 상기 가상 계정 및 상기 가상 암호가 상기 가상 계정 정보에 대응하고, 상기 암호 입력 요청에 포함된 상기 가상 식별 정보가 상기 식별 정보에 대응하는지 여부를 분석하는 암호 분석부 및 상기 분석 결과에 기초하여 상기 실제 계정 정보 및 상기 식별 정보를 포함하는 인증 요청을 상기 대상 DB로 전송하고, 상기 인증 요청에 따른 인증 처리 결과를 상기 대상 DB로부터 수신하고, 상기 인증 처리 결과를 상기 클라이언트 단말로 전송하는 인증 처리부를 포함할 수 있다.
또한, 상기 매핑부는, 상기 생성된 가상 계정 정보로부터 상기 실제 계정 정보를 도출하는 것이 방지되도록 상기 실제 계정 정보를 난수 처리 방식으로 변환하여 상기 가상 계정 정보를 생성할 수 있다.
또한, 상기 매핑부는, 상기 가상 계정 정보가 생성된 후 미리 설정된 유효 기간이 도과하면, 상기 가상 계정 정보의 상기 실제 계정 정보에 대한 매핑을 해제할 수 있다.
또한, 본원의 일 실시예에 따른 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치는, 상기 클라이언트 단말로부터 상기 대상 DB와 연계된 질의를 수신하고, 상기 접속 요청에 포함된 가상 계정의 상기 질의에 따른 상기 대상 DB에 대한 처리를 수행할 권한 보유 여부를 판단하고, 상기 권한 보유 여부에 기초하여 상기 처리를 선택적으로 수행하는 질의 처리부를 포함할 수 있다.
또한, 본원의 일 실시예에 따른 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치는, 상기 클라이언트 단말로부터 상기 대상 DB에 대한 세션 종료 요청을 수신하고, 상기 세션 종료 요청을 상기 대상 DB에 전송하고, 상기 클라이언트 단말과 연계된 세션을 종료하는 세션 종료부를 포함할 수 있다.
상술한 과제 해결 수단은 단지 예시적인 것으로서, 본원을 제한하려는 의도로 해석되지 않아야 한다. 상술한 예시적인 실시예 외에도, 도면 및 발명의 상세한 설명에 추가적인 실시예가 존재할 수 있다.
전술한 본원의 과제 해결 수단에 의하면, 클라이언트와 대상 DB의 데이터베이스 관리 시스템(Database Management System, DBMS) 사이에서 대상 DB의 실제 계정에 매핑되는 가상 계정을 활용하여 클라이언트의 접근을 선제적으로 관리하는 보안 정책을 지원하는 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치 및 방법을 제공할 수 있다.
전술한 본원의 과제 해결 수단에 의하면, 의료 데이터와 관련한 애플리케이션에 특화된 보안 정책을 용이하게 적용할 수 있다.
전술한 본원의 과제 해결 수단에 의하면, 악의의 공격자가 네트워크를 통해 의료 데이터베이스 등의 대상 DB에 접근하더라도 공격자가 실제 계정이 치환된 가상 계정만을 보유하기 때문에 대상 DB의 기능을 이용하는 것을 효과적으로 방지할 수 있다.
전술한 본원의 과제 해결 수단에 의하면, 가상 계정 및 역할 기반 접근제어(Role-based Access Control, RBAC)를 통해 클라이언트가 작성하는 질의에 따라 선택적으로 대상 DB 관련 처리를 수행하거나 선택적으로 대상 DB 내 데이터를 제공함으로써 효율적으로 클라이언트를 통제할 수 있다.
전술한 본원의 과제 해결 수단에 의하면, 사용자에게 노출되는 가상 계정을 유효 기간 도과에 따라 실제 계정과 매핑 해제함으로써 클라이언트에 대한 엄격한 보안 정책을 제공할 수 있다.
다만, 본원에서 얻을 수 있는 효과는 상기된 바와 같은 효과들로 한정되지 않으며, 또 다른 효과들이 존재할 수 있다.
도 1은 본원의 일 실시예에 따른 가상 계정 및 접근 제어 모델 기반 데이터베이스 관리 시스템의 개략적인 구성도이다.
도 2는 실제 계정 정보와 가상 계정 정보의 매핑을 설명하기 위한 개념도이다.
도 3은 실제 계정 정보 및 이에 매핑되는 가상 계정 정보를 생성/등록하기 위한 인터페이스를 예시적으로 나타낸 도면이다.
도 4는 질의에 따른 대상 DB 처리를 선택적으로 수행하기 위한 접근 제어 모델을 설명하기 위한 개념도이다.
도 5는 접근 제어 모델에 기초한 사용자 역할 및 이에 대응하는 권한에 따른 질의 유형을 나타낸 도표이다.
도 6은 본원의 일 실시예에 따른 가상 계정 및 접근 제어 모델 기반 데이터베이스 관리 시스템과 연계된 보안 정책을 통합 제공하는 인터페이스를 예시적으로 나타낸 도면이다.
도 7은 본원의 일 실시예에 따른 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치의 개략적인 구성도이다.
도 8은 본원의 일 실시예에 따른 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치의 접속 중계부의 세부 구성도이다.
도 9는 본원의 일 실시예에 따른 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 방법에 대한 동작 흐름도이다.
도 10은 가상 계정 정보 및 실제 계정 정보에 기초하여 클라이언트 단말의 대상 DB에 대한 접속을 중계하는 프로세스에 대한 세부 동작 흐름도이다.
아래에서는 첨부한 도면을 참조하여 본원이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본원의 실시예를 상세히 설명한다. 그러나 본원은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본원을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본원 명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결" 또는 "간접적으로 연결"되어 있는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부재가 다른 부재 "상에", "상부에", "상단에", "하에", "하부에", "하단에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부분이 어떤 구성 요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다.
본원은 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치 및 방법에 관한 것이다.
도 1은 본원의 일 실시예에 따른 가상 계정 및 접근 제어 모델 기반 데이터베이스 관리 시스템의 개략적인 구성도이다.
도 1을 참조하면, 본원의 일 실시예에 따른 가상 계정 및 접근 제어 모델 기반 데이터베이스 관리 시스템(10)은, 본원의 일 실시예에 따른 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치(100)(이하, '추상 데이터베이스 관리 장치(100)'라 한다.), 클라이언트 단말(200) 및 대상 DB(300)를 포함할 수 있다.
추상 데이터베이스 관리 장치(100), 클라이언트 단말(200) 및 대상 DB(300) 상호간은 네트워크(미도시)를 통해 통신할 수 있다. 네트워크(미도시)는 단말들 및 서버들과 같은 각각의 노드 상호간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 이러한 네트워크(미도시)의 일 예에는, 3GPP(3rd Generation Partnership Project) 네트워크, LTE(Long Term Evolution) 네트워크, 5G 네트워크, WIMAX(World Interoperability for Microwave Access) 네트워크, 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), wifi 네트워크, 블루투스(Bluetooth) 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크, DMB(Digital Multimedia Broadcasting) 네트워크 등이 포함되나 이에 한정되지는 않는다. 또한, 예시적으로, 네트워크(미도시)는 대상 DB(300)를 포함하는 복수의 데이터베이스를 활용한 공통데이터모델(Common Data Model, CDM) 기반의 분산 연구망을 지칭하는 것일 수 있다.
클라이언트 단말(200)은 예를 들면, 스마트폰(Smartphone), 스마트패드(SmartPad), 태블릿 PC등과 PCS(Personal Communication System), GSM(Global System for Mobile communication), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말기 같은 모든 종류의 무선 통신 장치일 수 있다.
또한, 본원의 실시예에 관한 설명에서 대상 DB(300)는 클라이언트 단말(200)의 사용자가 접속하고자 하는 데이터베이스로서, 클라이언트 단말(200)은 직접 대상 DB(300)로 접속하는 것이 아니라, 본원에서 개시하는 추상 데이터베이스 관리 장치(100)의 중계를 통해 대상 DB(300)로 접근할 수 있다.
본원의 일 실시예에 따르면, 대상 DB(300)는 의료 데이터를 저장하는 DB일 수 있으나, 이에만 한정되는 것은 아니고, 본원의 구현예에 따라 대상 DB(300)는 금융 기관, 행정 기관, 교육 기관 등의 다양한 기관이나 기업과 연계하여 해당 기관이나 기업과 관련한 정보를 저장하기 위한 각종 데이터베이스를 폭넓게 지칭하는 것일 수 있다. 이하에서는, 설명의 편의를 위하여 대상 DB(300)가 대학 병원, 병의원, 보건소 등 다양한 의료 기관에 대하여 마련되어 의료 기관 내 각종 의료 데이터(환자 정보, 수술/시술 정보, 의약 데이터, 임상 데이터, 영상 데이터 등)를 저장/관리하도록 구비되는 의료용 데이터베이스인 것으로 본원의 실시예를 설명하도록 한다. 예시적으로, 의료용 데이터베이스인 대상 DB(300)는 국내 또는 국제적인 의료 분야 공동연구를 위해 용어/구조 등이 표준화된 공통데이터모델(Common Data Model, CDM)과 연계된 것일 수 있다.
한편, 본원의 실시예에 관한 설명에서 추상 데이터베이스 관리 장치(100)가 대상 DB(300)에 대하여 각종 정보(데이터)를 송수신하거나 클라이언트의 질의에 대응하는 처리를 요청하고 처리 결과를 수신하는 동작은 대상 DB(300)의 데이터베이스 관리 시스템(Database Management System, DBMS)에 대하여 이루어지는 프로세스를 구체적으로 의미하는 것일 수 있다.
또한, 도 1을 참조하면, 추상 데이터베이스 관리 장치(100)는 복수의 클라이언트 단말(200a, ···, 200n)과 복수의 대상 DB(300a, ···, 300n)를 통합적으로 중계하도록 구비되는 것일 수 있다. 달리 말해, 추상 데이터베이스 관리 장치(100)는 복수의 클라이언트 단말(200a, ···, 200n) 중 적어도 하나의 클라이언트 단말(200)의 대상 DB(300)로의 접속/처리 등을 중계할 수 있으며, 나아가, 특정 클라이언트 단말(200)의 복수의 대상 DB(300a, ···, 300n) 중 적어도 하나의 대상 DB(300)에 대한 접속/처리 등을 중계하는 것일 수 있다.
도 2는 실제 계정 정보와 가상 계정 정보의 매핑을 설명하기 위한 개념도이다.
도 2를 참조하면, 추상 데이터베이스 관리 장치(100)는 대상 DB(300)의 실제 계정 정보에 기초하여 대상 DB(300)의 실제 계정 정보와 매핑되는 가상 계정 정보를 생성할 수 있다.
또한, 도 2를 참조하면, 추상 데이터베이스 관리 장치(100)는 대상 DB(300)의 실제 계정 정보에 기초하여 매핑되는 가상 계정 정보에 대한 사용자 역할(Role)을 결정(정의)할 수 있다. 예를 들어, 가상 계정 정보는 해당 가상 계정 정보와 매핑되는 실제 계정 정보에 대하여 기 부여된 사용자 역할(Role)에 대응하도록 결정될 수 있다.
달리 말해, 매핑된 가상 계정 정보와 실제 계정 정보는 대상 DB(300) 내에서의 질의 및 질의에 대응하는 처리와 관련한 사용자 역할을 공유하는 것일 수 있다. 다만, 이에만 한정되는 것은 아니고, 본원의 구현예에 따라 필요에 따라서는 가상 계정 정보에 대하여 부여되는 사용자 역할과 실제 계정 정보에 대하여 기 부여된 사용자 역할이 서로 상이하도록 결정되는 것일 수 있다.
한편, 실제 계정 정보에 대한 가상 계정 정보의 매핑은 1 대 1 로 이루어지거나 필요에 따라서는 1 대 다 관계로 이루어질 수 있다. 예시적으로, 도 2를 참조하면, 서로 다른 두 가상 계정인 제1가상 계정(Fake 1) 및 제2가상 계정(Fake 2)에 대한 가상 계정 정보는 동일한 실제 계정인 제1실제 계정(Real 1)의 실제 계정 정보로부터 생성되는 것일 수 있다.
또한, 본원의 일 실시예에 따르면, 추상 데이터베이스 관리 장치(100)는 복수의 대상 DB(300a, ···, 300n) 각각의 실제 계정 정보에 대하여 가상 계정 정보를 매핑할 수 있다. 예를 들어, 추상 데이터베이스 관리 장치(100)는 복수의 대상 DB(300a, ···, 300n) 각각의 실제 계정 정보에 대응하는 복수의 가상 계정 정보를 개별적으로 매핑하는 것일 수 있다. 다른 예로, 추상 데이터베이스 관리 장치(100)는 복수의 대상 DB(300a, ···, 300n) 중 적어도 둘 이상의 대상 DB(300)의 실제 계정 정보에 대응하는 단일의 가상 계정 정보를 통합적으로 매핑하는 것일 수 있다.
도 3은 실제 계정 정보 및 이에 매핑되는 가상 계정 정보를 생성/등록하기 위한 인터페이스를 예시적으로 나타낸 도면이다.
도 3을 참조하면, 추상 데이터베이스 관리 장치(100)는 사용자(관리자)에 대하여 대상 DB(300)의 실제 계정 정보 및 해당 실제 계정 정보에 매핑되는 가상 계정 정보를 생성/등록하는 계정 등록 인터페이스를 제공할 수 있다.
보다 구체적으로, 추상 데이터베이스 관리 장치(100)가 제공하는 계정 등록 인터페이스의 실계 계정 등록 영역(도 3의 A)를 통해 사용자(관리자)는 실제 계정(Real User), 실제 계정 암호(Real Password), 실제 데이터베이스(Real Database), 실제 호스트(Real Host), 실제 포트(Real Port)를 포함하는 대상 DB(300)의 실제 계정 정보를 사용자 입력을 통해 직접 기입하거나 대상 DB(300)의 DBMS로부터 수신하여 등록할 수 있다.
또한, 추상 데이터베이스 관리 장치(100)가 제공하는 계정 등록 인터페이스의 가상 계정 등록 영역(도 3의 B)를 통해 사용자(관리자)는 가상 계정(Fake User), 가상 계정 암호(Fake Password), 가상 데이터베이스(Fake Database), 가상 호스트(Fake Host), 가상 포트(Fake Port)를 포함하는 가상 계정 정보를 실제 계정 정보로부터 치환하여 생성할 수 있다.
본원에서 개시하는 가상 계정 정보는 클라이언트 단말(200)의 사용자에게 노출되되, 노출된 가상 계정 정보에 기초한 대상 DB(300)로의 직접 접속은 불가능하도록 실제 계정 정보로부터 치환 생성될 수 있다.
이와 관련하여 본원의 일 실시예에 따르면, 추상 데이터베이스 관리 장치(100)는 클라이언트 단말(200)의 사용자에게 제공(노출)되는 가상 계정 정보로부터 매핑된 실제 계정 정보를 도출하는 것이 방지되도록 실제 계정 정보를 난수 처리 방식으로 변환하여 가상 계정 정보를 생성할 수 있으나, 이에만 한정되는 것은 아니다.
한편, 본원의 일 실시예에 따르면 가상 계정 정보가 생성된 후 미리 설정된 유효 기간이 도과하면, 가상 계정 정보의 실제 계정 정보에 대한 매핑은 해제되는 것일 수 있다. 달리 말해, 추상 데이터베이스 관리 장치(100)는 가상 계정 정보가 실제 계정 정보로부터 치환되어 생성된 후 미리 설정된 유효 기간 동안에만 대상 DB(300)로의 접속 프로세스에 활용될 수 있도록 가상 계정 정보에 대응하는 유효 기간을 설정할 수 있다.
본원의 일 실시예에 따르면, 추상 데이터베이스 관리 장치(100)는 가상 계정 정보를 생성하는데 활용되는 실제 계정 정보에 대하여 기 부여된 사용자 역할의 유형에 기초하여 생성되는 가상 계정 정보와 연계된 유효 기간을 설정하는 것일 수 있다. 예를 들어, 도 2를 참조하면, 상대적으로 대상 DB(300)에 대한 다양한 처리 권한을 포함하는 'Role_admin' 사용자 역할이 부여된 실제 계정 정보(예를 들면, 도 2의 Real 2)로부터 치환되어 생성되는 가상 계정 정보에 대한 유효 기간은 대상 DB(300)에 대하여 상대적으로 제한적인 처리 권한을 포함하는 'Role_guest' 사용자 역할이 부여된 실제 계정 정보(예를 들면, 도 2의 Real 1)로부터 치환되어 생성되는 가상 계정 정보에 대한 유효 기간 대비 길게 설정될 수 있다. 다만, 이에만 한정되는 것은 아니며, 본원의 구현예에 따라 가상 계정 별 유효 기간은 추상 데이터베이스 관리 장치(100)로 인가된 사용자(관리자) 입력 등에 기초하여 가상 계정마다 개별적으로 설정되는 것일 수 있다.
또한, 본원의 일 실시예에 따르면, 가상 계정 정보는 클라이언트 단말(200) 또는 추상 데이터베이스 관리 장치(100)의 인-메모리에 저장되는 것일 수 있다. 이와 관련하여, 인-메모리 데이터베이스는 디바이스의 메모리에만 정보가 유지되고, 디바이스의 디스크에는 정보가 유지되지 않는 기능을 수행하며, 인-메모리 데이터베이스를 사용하는 프로그램이 종료되면 인-메모리 데이터베이스 내의 모든 정보가 자동으로 삭제되는 특성을 가진다.
따라서, 본원에서 개시하는 추상 데이터베이스 관리 장치(100)는 클라이언트 단말(200)의 대상 DB(300)로의 접속을 1회성으로 중계하기 위한 가상 계정 정보가 프로그램의 메모리 공간 내에만 존재하여 다른 프로그램이 접근하여 정보를 조회할 수 없도록 하여 가상 계정을 효율적으로 관리하도록 구현될 수 있다. 이렇듯, 가상 계정 정보는 임시로 사용되는 데이터로서 파일과 같이 영구적으로 저장되는 형태로 디바이스(예를 들면, 클라이언트 단말(200) 등) 내에 남겨둘 필요가 없는 것이다.
참고로, 본원에서의 클라이언트 단말(200)의 사용자에게는 가상 계정 정보에 대응하는 실제 계정 정보의 구체적인 내용뿐만 아니라, 클라이언트 단말(200)의 사용자가 대상 DB(300)로의 접속을 위하여 사용하는 가상 계정 정보가 실제로는 대상 DB(300)의 실제 계정 정보로부터 치환된 가상의 계정에 대한 것이라는 사실 자체가 인식되지 않는 것일 수 있다. 달리 말해, 추상 데이터베이스 관리 장치(100)의 존재 자체가 클라이언트 단말(200)의 사용자에게 인식되지 않는 것일 수 있다.
추상 데이터베이스 관리 장치(100)는 클라이언트 단말(200)로부터 대상 DB(300)에 대한 접속 요청을 수신할 수 있다. 구체적으로, 클라이언트 단말(200)로부터 추상 데이터베이스 관리 장치(100)로 전송되는 접속 요청(Startup Message)에는 가상 계정(ID), 클라이언트 단말(200)의 사용자가 접속한 가상 데이터베이스(Fake Database)의 스킴(Scheme) 정보가 포함될 수 있다.
또한, 추상 데이터베이스 관리 장치(100)는 접속 요청에 포함된 가상 계정에 매핑된 실제 계정 정보가 존재하는지 여부를 판단할 수 있다.
추상 데이터베이스 관리 장치(100)는 판단 결과, 접속 요청에 포함된 가상 계정에 매핑 실제 계정 정보가 미존재하는 것으로 판단되면, 클라이언트 단말(200)과의 통신을 해제할 수 있다.
반대로, 추상 데이터베이스 관리 장치(100)의 판단 결과, 접속 요청에 포함된 가상 계정에 매핑된 실제 계정 정보가 존재하는 것으로 판단되면, 추상 데이터베이스 관리 장치(100)는 해당 가상 계정에 매핑된 실제 계정 정보에 기초하여 클라이언트 단말(200)의 대상 DB(300)에 대한 접속을 중계할 수 있다.
이하에서는, 추상 데이터베이스 관리 장치(100)가 클라이언트 단말(200)의 대상 DB(300)에 대한 접속을 중계하는 프로세스(인증 시퀀스)에 대하여 상세히 설명하도록 한다.
먼저, 추상 데이터베이스 관리 장치(100)는, 접속 요청에 포함된 가상 계정(Fake User)을 실제 계정 정보에 따른 실제 계정(Real User)으로 치환하여 대상 DB로 전달할 수 있다.
또한, 추상 데이터베이스 관리 장치(100)는, 대상 DB(300)로부터 사용자 인증을 위한 식별 정보(real salt)를 수신할 수 있다. 예시적으로, 사용자 인증을 위한 식별 정보란 클라이언트 단말(200)의 사용자를 확인(식별)하기 위한 암호화 값인 4바이트의 Salt를 포함할 수 있다.
또한, 추상 데이터베이스 관리 장치(100)는, 대상 DB(300)로부터 수신한 식별 정보(real salt)를 가상 식별 정보(fake salt)로 변환하고, 변환된 가상 식별 정보(fake salt)를 클라이언트 단말(200)로 전송할 수 있다.
또한, 추상 데이터베이스 관리 장치(100)는, 클라이언트 단말(200)로부터 가상 계정(fake user), 가상 계정에 대응하는 가상 암호(fake password) 및 가상 식별 정보(fake salt)를 포함하는 암호 입력 요청(password message)을 수신할 수 있다. 즉, 클라이언트 단말(200)의 사용자는 가상 계정(fake user, ID), 가상 암호(fake password), 가상 식별 정보(fake salt)를 이용해 해시 값(예를 들면, MD5, SHA 등)을 계산하여 추상 데이터베이스 관리 장치(100)로 전달할 수 있다.
또한, 추상 데이터베이스 관리 장치(100)는, 암호 입력 요청(password message)에 포함된 가상 계정(fake user) 및 가상 암호(fake password)가 가상 계정 정보에 대응하고, 암호 입력 요청(password message)에 포함된 가상 식별 정보(fake salt)가 식별 정보(real salt)에 대응하면, 해당 가상 계정에 매핑된 실제 계정 정보 및 식별 정보(real salt)를 포함하는 인증 요청(password message)을 대상 DB(300)로 전송할 수 있다.
또한, 추상 데이터베이스 관리 장치(100)는 인증 요청(password message)에 따른 인증 처리 결과(authenticationOk)를 대상 DB(300)로부터 수신하고, 수신한 인증 처리 결과(authenticationOk)를 클라이언트 단말(200)로 전송할 수 있다.
전술한 과정을 통해 클라이언트 단말(200)이 대상 DB(300)에 대한 접속 중계 프로세스(인증 시퀀스)를 완결하면, 클라이언트 단말(200)의 사용자는 대상 DB(300)의 추상 데이터베이스 관리 장치(100)의 중계 하에서 정상적으로 로그인에 성공한 상태로서, 이러한 상태는 클라이언트 단말(200)이 SQL 질의 등을 통해 대상 DB(300)에 대한 처리를 요청할 수 있는 네트워크 세션이 수립된 상태인 것으로 이해될 수 있다.
추상 데이터베이스 관리 장치(100)는 클라이언트 단말(200)로부터 대상 DB(300)와 연계된 질의를 수신할 수 있다.
또한, 추상 데이터베이스 관리 장치(100)는 접속 요청에 포함된 가상 계정(달리 말해, 대상 DB(300)로의 접속을 위한 인증 시퀀스에 활용된 가상 계정)의 질의에 따른 대상 DB(300)에 대한 처리를 수행할 권한 보유 여부를 판단할 수 있다.
구체적으로, 추상 데이터베이스 관리 장치(100)는 대상 DB(300)와 연계하여 미리 설정된 복수의 사용자 역할 중 접속 요청에 포함된 가상 계정에 대하여 부여된 사용자 역할이 수신된 질의에 따른 권한을 포함하는지 여부를 판단할 수 있다.
도 4는 질의에 따른 대상 DB 처리를 선택적으로 수행하기 위한 접근 제어 모델을 설명하기 위한 개념도이다.
도 4를 참조하면, 추상 데이터베이스 관리 장치(100)는 전술한 RBAC 접근 모델을 통해 사용자 역할(Role)을 계정마다 부여하고, 사용자가 대상 DB(300)에 대하여 수행할 수 있는 처리 및 상기 처리에 대응하는 질의의 유형과 연계된 권한(Right)은 계정마다 부여된 사용자 역할(Role)에 기초하여 설정될 수 있다.
이렇듯, 본원에서 개시하는 추상 데이터베이스 관리 장치(100)는 사용자 역할마다의 권한을 정의하고, 가상 계정 정보를 활용하되, 실제 계정 정보의 사용자 역할 및 권한에 연동하여 가상 계정 정보의 사용자 역할 및 권한을 결정함으로써 대상 DB(300)에 사용자가 새롭게 접근할 때 마다 해당 사용자 권한을 새로이 부여하는 번거로움을 해소할 수 있다.
보다 구체적으로, 도 4를 참조하면, 복수의 사용자 역할 중 '시스템 관리자(System admin)'는 시스템 파일 편집 권한, 네트워크 접속 권한, 사용자 파일 편집 권한 및 /foo /bar 파일 읽기 권한을 모두 보유하는 반면, 복수의 사용자 역할 중 '학습자(Student)'는 네트워크 접속 권한 및 /foo /bar 파일 읽기 권한만을 선별적으로 보유하는 것일 수 있다. 다만, 이에만 한정되는 것은 아니고, 본원의 구현예에 따라 다양한 사용자 역할 및 이에 대응하는 권한이 정의될 수 있다. 한편, 본원의 일 실시예에 따라 대상 DB(300)의 유형 등에 따라 사용자 역할은 사용자(관리자)에 의해 커스터마이징 가능하도록 구현되되, 관리자 역할(role_admin) 및 게스트 역할(role_guest)은 기본적으로 설정 가능한 옵션으로 제공되는 것일 수 있다.
도 5는 접근 제어 모델에 기초한 사용자 역할 및 이에 대응하는 권한에 따른 질의 유형을 나타낸 도표이다.
도 5를 참조하면, 사용자 역할에 기초하여 결정된 권한에 따라 사용자가 제공할 수 있는 질의의 유형이 다르게 설정되는 것일 수 있으며, 이러한 질의 유형으로서 대상 DB(300) 내의 데이터 구조와 연계된 테이블/뷰/인덱스/매개변수 등에 대한 생성/수정/삭제/검색/변경 등의 권한과 연계되는 다양한 질의 유형이 고려될 수 있다. 달리 말해, 질의 유형(종류)은 추상 데이터베이스 관리 장치(100)가 적용되는 소프트웨어 플랫폼의 목적 등에 따라 다양하게 결정될 수 있다.
보다 구체적으로, 예시하면, 게스트 역할(role_guest)에 해당하는 계정을 통한 대상 DB(300) 처리와 관련하여, 해당 계정(가상 계정)을 통한 테이블의 생성/삭제/갱신은 불가하되, 테이블의 선택/삽입은 가능하도록 권한이 결정되는 것일 수 있으나, 이에만 한정되는 것은 아니다.
또한, 추상 데이터베이스 관리 장치(100)는 가상 계정의 권한 보유 여부에 기초하여 수신된 질의에 대응하는 대상 DB(300)에 대한 처리를 선택적으로 수행하고, 대상 DB(300)에 대한 처리 결과를 클라이언트 단말(200)로 반환할 수 있다.
또한, 추상 데이터베이스 관리 장치(100)는 클라이언트 단말(200)로부터 대상 DB(300)에 대한 세션 종료 요청을 수신할 수 있다. 또한, 추상 데이터베이스 관리 장치(100)는 세션 종료 요청을 대상 DB(300)에 전송하고, 클라이언트 단말(200)과 연계된 대상 DB(300)에의 세션을 종료시킬 수 있다.
달리 말해, 클라이언트 단말(200)의 사용자는 하나의 세션을 통해 1개 이상의 질의(SQL 질의)를 수행하고, 모든 질의(SQL 질의)를 실행한 후 추상 데이터베이스 관리 장치(100)에 세션 종료 요청(terminate message)를 전달할 수 있다.
도 6은 본원의 일 실시예에 따른 가상 계정 및 접근 제어 모델 기반 데이터베이스 관리 시스템과 연계된 보안 정책을 통합 제공하는 인터페이스를 예시적으로 나타낸 도면이다.
도 6을 참조하면, 추상 데이터베이스 관리 장치(100)는 도 6에 도시된 보안 정책 통합 관리 인터페이스를 통해 실제 계정 정보(도 6의 B), 가상 계정 정보(도 6의 C), 계정 별 사용자 역할(도 6의 A) 및 권한(도 6의 D)을 포함하는 정책(Policy) 정보의 리스트를 사용자(관리자)에게 표시할 수 있다. 특히, 정책 정보의 리스트와 관련하여 추상 데이터베이스 관리 장치(100)의 사용자(관리자)는 보안 정책 통합 관리 인터페이스를 통해 가상 계정에 매핑된 실제 계정과 역할에 따라 사용 가능한 질의(SQL 질의)의 유형을 조회할 수 있다.
도 7은 본원의 일 실시예에 따른 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치의 개략적인 구성도이다.
도 7을 참조하면, 추상 데이터베이스 관리 장치(100)는, 매핑부(110), 클라이언트 식별부(120), 접속 중계부(130), 질의 처리부(140) 및 세션 종료부(150)를 포함할 수 있다.
매핑부(110)는 대상 DB(300)의 실제 계정 정보에 기초하여 실제 계정 정보와 매핑되는 가상 계정 정보를 생성할 수 있다.
클라이언트 식별부(120)는 클라이언트 단말(200)로부터 대상 DB(300)에 대한 접속 요청을 수신하고, 접속 요청에 포함된 가상 계정에 매핑된 실제 계정 정보가 존재하는지 여부를 판단할 수 있다.
접속 중계부(130)는 판단 결과에 따라 실제 계정 정보에 기초하여 클라이언트 단말(200)의 대상 DB에 대한 접속을 중계할 수 있다.
도 8은 본원의 일 실시예에 따른 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치의 접속 중계부의 세부 구성도이다.
도 8을 참조하면, 접속 중계부(130)는 식별 정보 처리부(131), 암호 분석부(132) 및 인증 처리부(133)를 포함할 수 있다.
식별 정보 처리부(131)는 접속 요청에 포함된 가상 계정을 매핑된 실제 계정 정보에 따른 실제 계정으로 치환하여 대상 DB(300)로 전달할 수 있다. 또한, 식별 정보 처리부(131)는 대상 DB(300)로부터 사용자 인증을 위한 식별 정보를 수신하고, 수신한 식별 정보를 가상 식별 정보로 변환하여 클라이언트 단말(200)로 전송할 수 있다.
암호 분석부(132)는 클라이언트 단말(200)로부터 가상 계정, 가상 계정에 대응하는 가상 암호 및 가상 식별 정보를 포함하는 암호 입력 요청을 수신할 수 있다. 또한, 암호 분석부(132)는 암호 입력 요청에 포함된 가상 계정 및 가상 암호가 가상 계정 정보에 대응(일치)하고, 암호 입력 요청에 포함된 가상 식별 정보가 식별 정보에 대응하는지 여부를 분석할 수 있다.
인증 처리부(133)는 암호 분석부(132)의 분석 결과에 기초하여 실제 계정 정보 및 식별 정보를 포함하는 인증 요청을 대상 DB(300)로 전송할 수 있다. 또한, 인증 처리부(133)는 인증 요청에 따른 인증 처리 결과를 대상 DB(300)로부터 수신하여 클라이언트 단말(200)로 전송할 수 있다.
질의 처리부(140)는 클라이언트 단말(200)로부터 대상 DB(300)와 연계된 질의를 수신하고, 접속 요청에 포함된 가상 계정의 질의에 따른 대상 DB(300)에 대한 처리를 수행할 권한 보유 여부를 판단할 수 있다. 또한, 질의 처리부(140)는 판단된 권한 보유 여부에 기초하여 수신한 질의에 따른 대상 DB(300)에 대한 처리를 선택적으로 수행할 수 있다.
세션 종료부(150)는 클라이언트 단말(200)로부터 대상 DB(300)에 대한 세션 종료 요청을 수신하여 대상 DB(300)에 전송하고, 클라이언트 단말(200)과 연계된 세션을 종료할 수 있다.
도 9는 본원의 일 실시예에 따른 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 방법에 대한 동작 흐름도이다.
도 9를 참조하면, 단계 S11에서 매핑부(110)는 대상 DB(300)의 실제 계정 정보에 기초하여 실제 계정 정보와 매핑되는 가상 계정 정보를 생성할 수 있다.
다음으로, 단계 S12에서 클라이언트 식별부(120)는 클라이언트 단말(200)로부터 대상 DB(300)에 대한 접속 요청(startup message; fake user, fake database)을 수신할 수 있다.
다음으로, 단계 S13에서 클라이언트 식별부(120)는 접속 요청에 포함된 가상 계정에 매핑된 실제 계정 정보가 존재하는지 여부를 판단할 수 있다.
다음으로, 단계 S14에서 접속 중계부(130)는 단계 S13의 판단 결과에 따라 실제 계정 정보에 기초하여 클라이언트 단말(200)의 대상 DB에 대한 접속을 중계할 수 있다.
다음으로, 단계 S15에서 질의 처리부(140)는 클라이언트 단말(200)로부터 대상 DB(300)와 연계된 질의를 수신할 수 있다.
다음으로, 단계 S16에서 질의 처리부(140)는 접속 요청에 포함된 가상 계정의 질의에 따른 대상 DB(300)에 대한 처리를 수행할 권한 보유 여부를 판단할 수 있다.
구체적으로, 단계 S16에서 질의 처리부(140)는 대상 DB(300)와 연계하여 미리 설정된 복수의 사용자 역할 중 접속 요청에 포함된 가상 계정에 대하여 부여된 사용자 역할이 해당 권한을 포함하는지 여부를 판단할 수 있다.
다음으로, 단계 S17에서 질의 처리부(140)는 단계 S16에서 판단된 권한 보유 여부에 기초하여 질의에 따른 대상 DB(300)에 대한 처리를 선택적으로 수행할 수 있다.
다음으로, 단계 S18에서 세션 종료부(150)는 클라이언트 단말(200)로부터 대상 DB(300)에 대한 세션 종료 요청을 수신할 수 있다.
다음으로, 단계 S19에서 세션 종료부(150)는 수신한 세션 종료 요청을 대상 DB(300)에 전송하고, 클라이언트 단말(200)과 연계된 세션을 종료할 수 있다.
도 10은 가상 계정 정보 및 실제 계정 정보에 기초하여 클라이언트 단말의 대상 DB에 대한 접속을 중계하는 프로세스에 대한 세부 동작 흐름도이다.
도 10에 도시된 가상 계정 정보 및 실제 계정 정보에 기초하여 클라이언트 단말의 대상 DB에 대한 접속을 중계하는 프로세스는 앞서 설명된 추상 데이터베이스 관리 장치(100)에 의하여 수행될 수 있다. 따라서, 이하 생략된 내용이라고 하더라도 추상 데이터베이스 관리 장치(100)에 대하여 설명된 내용은 도 10에 대한 설명에도 동일하게 적용될 수 있다.
도 10을 참조하면, 단계 S141에서 식별 정보 처리부(131)는 가상 계정을 실제 계정 정보에 따른 실제 계정으로 치환하여 대상 DB(300)로 전달할 수 있다(startup message; real user, real database).
다음으로, 단계 S142에서 식별 정보 처리부(131)는 대상 DB(300)로부터 사용자 인증을 위한 식별 정보(real salt)를 수신
다음으로, 단계 S143에서 식별 정보 처리부(131)는 수신한 식별 정보(real salt)를 가상 식별 정보(fake salt)로 변환할 수 있다.
다음으로, 단계 S144에서 식별 정보 처리부(131)는 변환된 가상 식별 정보(fake salt)를 클라이언트 단말(200)로 전송할 수 있다.
다음으로, 단계 S145에서 식별 정보 처리부(131)는 클라이언트 단말(200)로부터 가상 계정(fake user), 가상 계정에 대응하는 가상 암호(fake password) 및 가상 식별 정보(fake salt)를 포함하는 암호 입력 요청(password message)을 수신할 수 있다.
다음으로, 단계 S146에서 암호 분석부(132)는 암호 입력 요청(password message)에 포함된 가상 계정 및 가상 암호가 가상 계정 정보에 대응(일치)하고, 암호 입력 요청(password message)에 포함된 가상 식별 정보가 식별 정보에 대응하면, 실제 계정 정보 및 식별 정보(real salt)를 포함하는 인증 요청(password message)을 대상 DB(300)로 전송할 수 있다.
다음으로, 단계 S147에서 인증 처리부(133)는 인증 요청에 따른 인증 처리 결과(authenticationOk)를 대상 DB(300)로부터 수신할 수 있다.
다음으로, 단계 S148에서 인증 처리부(133)는 수신한 인증 처리 결과(authenticationOk)를 클라이언트 단말(200)로 전송할 수 있다.
상술한 설명에서, 단계 S141 내지 S148은 본원의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다.
본원의 일 실시예에 따른 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
또한, 전술한 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 방법은 기록 매체에 저장되는 컴퓨터에 의해 실행되는 컴퓨터 프로그램 또는 애플리케이션의 형태로도 구현될 수 있다.
전술한 본원의 설명은 예시를 위한 것이며, 본원이 속하는 기술분야의 통상의 지식을 가진 자는 본원의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본원의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본원의 범위에 포함되는 것으로 해석되어야 한다.
10: 가상 계정 및 접근 제어 모델 기반 데이터베이스 관리 시스템
100: 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치
110: 매핑부
120: 클라이언트 식별부
130: 접속 중계부
131: 식별 정보 처리부
132: 암호 분석부
133: 인증 처리부
140: 질의 처리부
150: 세션 종료부
200: 클라이언트 단말
300: 대상 DB

Claims (15)

  1. 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 방법에 있어서,
    대상 DB의 실제 계정 정보에 기초하여 상기 실제 계정 정보와 매핑되는 가상 계정 정보를 생성하는 단계;
    클라이언트 단말로부터 상기 대상 DB에 대한 접속 요청을 수신하는 단계;
    상기 접속 요청에 포함된 가상 계정에 매핑된 상기 실제 계정 정보가 존재하는지 여부를 판단하는 단계; 및
    상기 판단 결과에 따라 상기 실제 계정 정보에 기초하여 상기 클라이언트 단말의 상기 대상 DB에 대한 접속을 중계하는 단계,
    를 포함하는 것인, 추상 데이터베이스 관리 방법.
  2. 제1항에 있어서,
    상기 중계하는 단계는,
    상기 가상 계정을 상기 실제 계정 정보에 따른 실제 계정으로 치환하여 상기 대상 DB로 전달하는 단계;
    상기 대상 DB로부터 사용자 인증을 위한 식별 정보를 수신하는 단계;
    상기 수신한 식별 정보를 가상 식별 정보로 변환하고, 상기 가상 식별 정보를 상기 클라이언트 단말로 전송하는 단계;
    상기 클라이언트 단말로부터 상기 가상 계정, 상기 가상 계정에 대응하는 가상 암호 및 상기 가상 식별 정보를 포함하는 암호 입력 요청을 수신하는 단계;
    상기 암호 입력 요청에 포함된 상기 가상 계정 및 상기 가상 암호가 상기 가상 계정 정보에 대응하고, 상기 암호 입력 요청에 포함된 상기 가상 식별 정보가 상기 식별 정보에 대응하면, 상기 실제 계정 정보 및 상기 식별 정보를 포함하는 인증 요청을 상기 대상 DB로 전송하는 단계; 및
    상기 인증 요청에 따른 인증 처리 결과를 상기 대상 DB로부터 수신하고, 상기 인증 처리 결과를 상기 클라이언트 단말로 전송하는 단계,
    를 포함하는 것인, 추상 데이터베이스 관리 방법.
  3. 제1항에 있어서,
    상기 가상 계정 정보는 상기 클라이언트 단말의 사용자에게 노출되되, 상기 가상 계정 정보에 기초한 상기 대상 DB로의 직접 접속은 불가능한 것을 특징으로 하는, 추상 데이터베이스 관리 방법.
  4. 제3항에 있어서,
    상기 생성하는 단계는,
    상기 생성된 가상 계정 정보로부터 상기 실제 계정 정보를 도출하는 것이 방지되도록 상기 실제 계정 정보를 난수 처리 방식으로 변환하여 상기 가상 계정 정보를 생성하는 것인, 추상 데이터베이스 관리 방법.
  5. 제3항에 있어서,
    상기 생성하는 단계 이후에,
    미리 설정된 유효 기간이 도과하면, 상기 가상 계정 정보의 상기 실제 계정 정보에 대한 매핑이 해제되는 것인, 추상 데이터베이스 관리 방법.
  6. 제1항에 있어서,
    상기 중계하는 단계 이후에,
    상기 클라이언트 단말로부터 상기 대상 DB와 연계된 질의를 수신하는 단계;
    상기 접속 요청에 포함된 가상 계정의 상기 질의에 따른 상기 대상 DB에 대한 처리를 수행할 권한 보유 여부를 판단하는 단계; 및
    상기 권한 보유 여부에 기초하여 상기 처리를 선택적으로 수행하는 단계,
    를 더 포함하는 것인, 추상 데이터베이스 관리 방법.
  7. 제6항에 있어서,
    상기 권한 보유 여부를 판단하는 단계는,
    상기 대상 DB와 연계하여 미리 설정된 복수의 사용자 역할 중 상기 접속 요청에 포함된 가상 계정에 대하여 부여된 상기 사용자 역할이 상기 권한을 포함하는지 여부를 판단하는 것인, 추상 데이터베이스 관리 방법.
  8. 제6항에 있어서,
    상기 클라이언트 단말로부터 상기 대상 DB에 대한 세션 종료 요청을 수신하는 단계; 및
    상기 세션 종료 요청을 상기 대상 DB에 전송하고, 상기 클라이언트 단말과 연계된 세션을 종료하는 단계,
    를 더 포함하는 것인, 추상 데이터베이스 관리 방법.
  9. 제1항에 있어서,
    상기 대상 DB는 의료 데이터를 저장하는 DB인 것을 특징으로 하는, 추상 데이터베이스 관리 방법.
  10. 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치에 있어서,
    대상 DB의 실제 계정 정보에 기초하여 상기 실제 계정 정보와 매핑되는 가상 계정 정보를 생성하는 매핑부;
    클라이언트 단말로부터 상기 대상 DB에 대한 접속 요청을 수신하고, 상기 접속 요청에 포함된 가상 계정에 매핑된 상기 실제 계정 정보가 존재하는지 여부를 판단하는 클라이언트 식별부; 및
    상기 판단 결과에 따라 상기 실제 계정 정보에 기초하여 상기 클라이언트 단말의 상기 대상 DB에 대한 접속을 중계하는 접속 중계부,
    를 포함하는, 추상 데이터베이스 관리 장치.
  11. 제10항에 있어서,
    상기 접속 중계부는,
    상기 가상 계정을 상기 실제 계정 정보에 따른 실제 계정으로 치환하여 상기 대상 DB로 전달하고, 상기 대상 DB로부터 사용자 인증을 위한 식별 정보를 수신하고, 상기 수신한 식별 정보를 가상 식별 정보로 변환하고, 상기 가상 식별 정보를 상기 클라이언트 단말로 전송하는 식별 정보 처리부;
    상기 클라이언트 단말로부터 상기 가상 계정, 상기 가상 계정에 대응하는 가상 암호 및 상기 가상 식별 정보를 포함하는 암호 입력 요청을 수신하고, 상기 암호 입력 요청에 포함된 상기 가상 계정 및 상기 가상 암호가 상기 가상 계정 정보에 대응하고, 상기 암호 입력 요청에 포함된 상기 가상 식별 정보가 상기 식별 정보에 대응하는지 여부를 분석하는 암호 분석부; 및
    상기 분석 결과에 기초하여 상기 실제 계정 정보 및 상기 식별 정보를 포함하는 인증 요청을 상기 대상 DB로 전송하고, 상기 인증 요청에 따른 인증 처리 결과를 상기 대상 DB로부터 수신하고, 상기 인증 처리 결과를 상기 클라이언트 단말로 전송하는 인증 처리부,
    를 포함하는 것인, 추상 데이터베이스 관리 장치.
  12. 제10항에 있어서,
    상기 가상 계정 정보는 상기 클라이언트 단말의 사용자에게 노출되되, 상기 가상 계정 정보에 기초한 상기 대상 DB로의 직접 접속은 불가능한 것을 특징으로 하고,
    상기 매핑부는,
    상기 생성된 가상 계정 정보로부터 상기 실제 계정 정보를 도출하는 것이 방지되도록 상기 실제 계정 정보를 난수 처리 방식으로 변환하여 상기 가상 계정 정보를 생성하는 것인, 추상 데이터베이스 관리 장치.
  13. 제12항에 있어서,
    상기 매핑부는,
    상기 가상 계정 정보가 생성된 후 미리 설정된 유효 기간이 도과하면, 상기 가상 계정 정보의 상기 실제 계정 정보에 대한 매핑을 해제하는 것인, 추상 데이터베이스 관리 장치.
  14. 제10항에 있어서,
    상기 클라이언트 단말로부터 상기 대상 DB와 연계된 질의를 수신하고, 상기 접속 요청에 포함된 가상 계정의 상기 질의에 따른 상기 대상 DB에 대한 처리를 수행할 권한 보유 여부를 판단하고, 상기 권한 보유 여부에 기초하여 상기 처리를 선택적으로 수행하는 질의 처리부,
    를 더 포함하는 것인, 추상 데이터베이스 관리 장치.
  15. 제14항에 있어서,
    상기 클라이언트 단말로부터 상기 대상 DB에 대한 세션 종료 요청을 수신하고, 상기 세션 종료 요청을 상기 대상 DB에 전송하고, 상기 클라이언트 단말과 연계된 세션을 종료하는 세션 종료부,
    를 더 포함하는 것인, 추상 데이터베이스 관리 장치.
KR1020210042949A 2021-04-01 2021-04-01 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치 및 방법 KR102486018B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020210042949A KR102486018B1 (ko) 2021-04-01 2021-04-01 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치 및 방법
PCT/KR2022/000812 WO2022211233A1 (ko) 2021-04-01 2022-01-17 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210042949A KR102486018B1 (ko) 2021-04-01 2021-04-01 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20220136805A true KR20220136805A (ko) 2022-10-11
KR102486018B1 KR102486018B1 (ko) 2023-01-09

Family

ID=83455327

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210042949A KR102486018B1 (ko) 2021-04-01 2021-04-01 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치 및 방법

Country Status (2)

Country Link
KR (1) KR102486018B1 (ko)
WO (1) WO2022211233A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116522308A (zh) * 2023-06-29 2023-08-01 杭州美创科技股份有限公司 数据库账号托管方法、装置、计算机设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050073349A (ko) * 2004-01-09 2005-07-13 주식회사 바넷정보기술 3-Tier 구조 기반의 데이터베이스 접근 통제 시스템및 방법
JP2005275999A (ja) * 2004-03-26 2005-10-06 Fuji Photo Film Co Ltd 医療情報提供方法並びにそれに用いる端末及びサーバ
KR101139678B1 (ko) * 2011-04-15 2012-05-02 주식회사 인피니트헬스케어 의료 정보 중계 시스템, 제공 장치 및 중계 방법
KR20160014518A (ko) * 2014-07-29 2016-02-11 삼성전자주식회사 데이터 공유 방법 및 이를 위한 장치
KR20170066987A (ko) * 2015-12-07 2017-06-15 삼성전자주식회사 임시 계정 정보를 제공하는 방법, 장치 및 시스템

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050073349A (ko) * 2004-01-09 2005-07-13 주식회사 바넷정보기술 3-Tier 구조 기반의 데이터베이스 접근 통제 시스템및 방법
JP2005275999A (ja) * 2004-03-26 2005-10-06 Fuji Photo Film Co Ltd 医療情報提供方法並びにそれに用いる端末及びサーバ
KR101139678B1 (ko) * 2011-04-15 2012-05-02 주식회사 인피니트헬스케어 의료 정보 중계 시스템, 제공 장치 및 중계 방법
KR20160014518A (ko) * 2014-07-29 2016-02-11 삼성전자주식회사 데이터 공유 방법 및 이를 위한 장치
KR20170066987A (ko) * 2015-12-07 2017-06-15 삼성전자주식회사 임시 계정 정보를 제공하는 방법, 장치 및 시스템

Also Published As

Publication number Publication date
KR102486018B1 (ko) 2023-01-09
WO2022211233A1 (ko) 2022-10-06

Similar Documents

Publication Publication Date Title
US11334562B2 (en) Blockchain based data management system and method thereof
US20210329453A1 (en) Blockchain based wireless access point password management
EP3704621B1 (en) Secure identity and profiling system
US8892872B2 (en) Secure redacted document access
US20200175197A1 (en) System and method for enabling a multi-location data storage and retrieval system
US8868905B2 (en) Adaptive document redaction
US6457007B1 (en) Distributed database management system including logical database constituted by a group of physical databases
US8549326B2 (en) Method and system for extending encrypting file system
CN102299914B (zh) 用于启用网络层声明的访问控制的可信中介
US7565683B1 (en) Method and system for implementing changes to security policies in a distributed security system
US20120036370A1 (en) Protecting Documents Using Policies and Encryption
US10148637B2 (en) Secure authentication to provide mobile access to shared network resources
US20110161370A1 (en) Apparatus, program, and method for file management
JP2011522315A (ja) 無人のアプリケーションのための認証されたデータベース接続
JP2003228520A (ja) 保護電子データにオフラインでアクセスする方法及び装置
US20160180107A1 (en) Method and system for policy based data access control
US20170039390A1 (en) Methods and systems for privacy preserving third party extension
US11363018B2 (en) Verifying user device access rights for application data requests
US9984245B2 (en) Methods, systems, and computer readable media for providing a secure virtual research space
KR102486018B1 (ko) 가상 계정 및 접근 제어 모델 기반의 추상 데이터베이스 관리 장치 및 방법
AU2021347175A1 (en) Encrypted file control
US11178537B2 (en) Data item transfer between mobile devices
US7865600B2 (en) Transparent resource administration using a read-only domain controller
CN110414267A (zh) Bim设计软件安全存储和流转追溯监控技术、系统及装置
JP2014149806A (ja) 鍵管理システム、鍵管理方法、ユーザ端末、鍵生成管理装置、及びプログラム

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant