KR100546045B1 - Device access control device by user account and scheduling and method - Google Patents
Device access control device by user account and scheduling and method Download PDFInfo
- Publication number
- KR100546045B1 KR100546045B1 KR1020040021311A KR20040021311A KR100546045B1 KR 100546045 B1 KR100546045 B1 KR 100546045B1 KR 1020040021311 A KR1020040021311 A KR 1020040021311A KR 20040021311 A KR20040021311 A KR 20040021311A KR 100546045 B1 KR100546045 B1 KR 100546045B1
- Authority
- KR
- South Korea
- Prior art keywords
- user
- list
- scheduling
- access
- client
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/101—Access control lists [ACL]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
1. 청구범위에 기재된 발명이 속하는 기술분야1. TECHNICAL FIELD OF THE INVENTION
본 발명은 사용자 계정 및 스케쥴링에 의한 디바이스 접근권한 제어 장치 및 그 방법과, 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것임.The present invention relates to an apparatus and a method for controlling access to a device by a user account and scheduling, and a computer readable recording medium storing a program for realizing the method.
2. 발명이 해결하려고 하는 기술적 과제2. The technical problem to be solved by the invention
본 발명은 특히 컴퓨터 디바이스(Device)에 대한 사용자별 접근권한을 사용자 계정 및 스케쥴링에 따라 부여함으로써, 컴퓨터 본체의 자료가 외부로 무단 유출되는 것을 방지하기 위한 디바이스 접근권한 제어 장치 및 그 방법과, 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하고자 함.In particular, the present invention provides a device access right control apparatus and method for preventing unauthorized leakage of data of the computer main body by granting user-specific access rights to a computer device according to a user account and scheduling, and To provide a computer readable recording medium having recorded thereon a program for realizing the method.
3. 발명의 해결 방법의 요지3. Summary of the Solution of the Invention
본 발명은, 디바이스 접근권한 제어 장치에 적용되는 디바이스 접근권한 제어 방법에 있어서, 설치되어야 할 파일의 종류 및 사용자 환경을 운영체계별로 분류하여 디바이스 접근권한 제어 프로그램을 설치하는 프로그램 설치 단계; 네트워크 상의 오류를 탐지하여 접속 요청된 클라이언트의 목록을 작성하는 클라이언트 목록 작성 단계; 사용자 계정 및 그룹정보를 수집해 그룹별 사용자의 목록을 작성하는 사용자/그룹 계정 목록 작성 단계; 디바이스 정보를 수집하여, 수집된 디바이스 목록을 유형별로 분류하는 디바이스 목록 작성 단계; 상기 클라이언트 목록, 상 기 사용자/그룹 계정 목록, 상기 디바이스 목록을 이용하여 각각의 디바이스에 접근 가능한 그룹/사용자 계정을 할당하고, 각각의 그룹/사용자가 해당 디바이스에 접근할 수 있는 시간과 접근권한의 정도를 부여하여 목록화(스케쥴링 테이블)하는 스케쥴링 단계; 디바이스 입출력 메시지를 훅킹하여 해당 입출력 행위(디바이스 접근 행위)가 상기 스케쥴링 테이블에 정의되어 있는 인증자료에 위배되는지를 점검하는 메시지 훅킹 및 인증 단계; 및 상기 메시지 훅킹 및 인증 단계의 인증 결과에 따라, 운영체제별로 디바이스의 접근권한을 제어하고, 인증 실패 결과를 기록하는 불법행위 방지 및 기록 단계를 포함함.The present invention provides a device access right control method applied to a device access right control apparatus, comprising: a program installation step of installing a device access right control program by classifying a type of a file to be installed and a user environment for each operating system; A client list making step of detecting an error on a network and creating a list of clients requested to be connected; A user / group account list creation step of collecting user accounts and group information and creating a list of users for each group; A device list making step of collecting device information and classifying the collected device list by type; Allocate a group / user account accessible to each device using the client list, the user / group account list, and the device list, and determine the time and access authority for each group / user to access the device. A scheduling step of assigning and listing a degree (scheduling table); Hooking a device input / output message to check whether a corresponding input / output activity (device access behavior) violates authentication data defined in the scheduling table; And according to the authentication result of the message hooking and authentication step, controlling the access rights of the device for each operating system, and the illegal activity prevention and recording step of recording the authentication failure result.
4. 발명의 중요한 용도4. Important uses of the invention
본 발명은 컴퓨터에 저장된 자료의 보안/인증 등에 이용됨.The present invention is used for security / authentication of data stored in a computer.
접근권한, 사용자 계정, 스케쥴링, 디바이스, 불법행위Access rights, user accounts, scheduling, devices, tort
Description
도 1 은 본 발명이 적용되는 사용자 계정 및 스케쥴링에 의해 디바이스의 접근권한을 제어하기 위한 하드웨어 시스템의 구성 예시도.1 is an exemplary configuration of a hardware system for controlling access rights of a device by a user account and scheduling to which the present invention is applied.
도 2 는 본 발명에 따른 디바이스 접근권한 제어 장치의 일실시예 구성도.2 is a block diagram of an embodiment of a device access right control apparatus according to the present invention.
도 3 은 본 발명에 따른 디바이스 접근권한 제어 방법 중 서비스 등록 과정을 나타낸 일실시예 흐름도.3 is a flowchart illustrating a service registration process in a device access right control method according to the present invention;
도 4 는 본 발명에 따른 디바이스 접근권한 제어 방법 중 서비스 인증 과정을 나타낸 일실시예 흐름도.4 is a flowchart illustrating a service authentication process in a device access right control method according to the present invention;
도 5 는 본 발명에 따른 디바이스 접근권한 제어 방법 중 서비스 변경 과정을 나타낸 일실시예 흐름도.5 is a flowchart illustrating a service change process in a device access right control method according to the present invention;
* 도면의 주요 부분에 대한 부호 설명* Explanation of symbols on the main parts of the drawing
201 : 프로그램 설치부 202 : 네트워크 구성부201: program installation unit 202: network configuration unit
203 : 사용자/그룹계정 정보 수집부 204 : 디바이스 정보 수집부203: user / group account information collecting unit 204: device information collecting unit
205 : 스케쥴링부 206 : 서비스 등록부205: scheduling unit 206: service register
207 : 메시지 훅킹 및 인증부 208 : 불법행위 방지 및 기록부207: message hooking and authentication unit 208: illegal activity prevention and recording
209 : 에러 탐지부209: error detection unit
본 발명은 사용자 계정 및 스케쥴링에 의한 디바이스 접근권한 제어 장치 및 그 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것으로, 특히 컴퓨터 디바이스(Device)에 대한 사용자별 접근권한을 사용자 계정 및 스케쥴링에 따라 부여함으로써, 컴퓨터 본체의 자료가 외부로 무단 유출되는 것을 방지할 수 있는 것이다. The present invention relates to an apparatus for controlling access to a device by a user account and scheduling, and a method and a computer-readable recording medium recording a program for realizing the method. Particularly, a user-specific access right to a computer device. By assigning to the user account and the scheduling, the data of the computer main body can be prevented from being leaked to the outside.
본 발명에서 디바이스(Device)라 함은, USB(USB 메모리 스틱, USB 프린터, USB 하드드라이브 포함), CD-ROM(DVD, CD-RW 포함), IEEE 1394포트, 병렬포트(프린터), 직렬포트(모뎀), 적외선 포트(Infra-Red port), 플로피 디스켓 드라이버, 하드 드라이버 등의 컴퓨터 입출력 주변장치를 의미한다. Device in the present invention, USB (USB memory stick, USB printer, USB hard drive included), CD-ROM (including DVD, CD-RW), IEEE 1394 port, parallel port (printer), serial port Computer I / O peripherals such as modems, Infra-Red ports, floppy diskette drivers, and hard drives.
현재, 기업체, 군부대 등의 업무환경이 컴퓨터와 통신 네트워크 및 인터넷(internet)을 사용하는 환경의 급격한 발달로 인해 각 개인은 필요로 하는 정보를 자유롭게 취득하거나 전송할 수 있게 되었고, 각 기업체, 군부대 등에서도 원거리 상에 위치되어 있다 하더라도 각종 자료의 공유가 가능하게 되었다. At present, due to the rapid development of the environment in which businesses, military units, etc. use computers, communication networks, and the Internet, each individual can freely acquire or transmit necessary information, and in each enterprise, military unit, etc. Even if they are located remotely, various data can be shared.
일반적으로, 컴퓨터에 대한 보안은 바이러스(Virus)나 웜과 같이 외부에서 네트워크 또는 파일의 형태로 전파되는 것을 방어하는데 주력하고 있는데, 최근 각종 기록매체(USB 메모리 스틱, USB 하드드라이브, CD-RW, DVD-RW 등)들의 가격인하 및 초소형화로 인하여 물리적인 보안의 허점을 노리는 데이터 유출 사고가 잇따르고 있다. 여기에는 새로 설치되는 USB 디바이스(Device)에 대해서는 기본적으로 모든 사용자에게 읽기/쓰기 권한이 주어진다는 점과, 운영체계 윈도우즈(Windows)2000 이상에서는 드라이버 설치없이 바로 USB 기기를 사용할 수 있다는 편리성도 한몫하고 있다. In general, the security of the computer is focused on the defense against the spread of the network or files from the outside, such as viruses (viruses) and worms. Recently, various recording media (USB memory stick, USB hard drive, CD-RW, Due to the price reduction and miniaturization of DVD-RWs, data leakage accidents that aim for physical security loopholes continue. In this case, the newly installed USB device is basically given all users read / write permission. Also, in the operating system Windows 2000 and above, it is convenient to use the USB device without installing the driver. have.
통상, 현재까지의 USB 보안기술은 USB에 암호화된 인증키를 설치하여 본체의 데이터를 보호하는 것이었다. 하지만, 이러한 기술은 CD-RW, 프린터(Printer), 모뎀(Modem) 등으로 유출되는 자료를 막을 수 있는 근본적인 대안이 되지 못하였기에 이를 극복할 수 있는 방안이 필수적으로 요구된다. In general, USB security technology to date has been to protect the data of the main body by installing an encrypted authentication key on the USB. However, this technology has not been a fundamental alternative to prevent data leakage to CD-RW, printer, modem, etc., so a method to overcome this is required.
본 발명은, 상기와 같은 문제점을 해결하기 위하여 제안된 것으로, 특히 컴퓨터 디바이스(Device)에 대한 사용자별 접근권한을 사용자 계정 및 스케쥴링에 따라 부여함으로써, 컴퓨터 본체의 자료가 외부로 무단 유출되는 것을 방지하기 위한 디바이스 접근권한 제어 장치 및 그 방법과, 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 그 목적이 있다.
The present invention has been proposed to solve the above problems, and in particular, by granting user-specific access rights for a computer device according to a user account and scheduling, to prevent unauthorized leakage of data of the computer main body to the outside. An object of the present invention is to provide a device access right control apparatus and a method thereof, and a computer-readable recording medium having recorded thereon a program for realizing the method.
상기 목적을 달성하기 위한 본 발명은, 디바이스 접근권한 제어 장치에 있어서, 설치되어야 할 파일의 종류 및 사용자 환경을 운영체계별로 분류하여 설치하기 위한 프로그램 설치수단; 서버/클라이언트를 설정할 수 있는 함수들을 제공하고, 서버와 클라이언트 사이의 메시지 요청 및 응답을 위한 독자적인 메시지 집합/프로토콜을 제공하여, 접속 요청된 클라이언트의 목록을 작성하기 위한 네트워크 구성수단; 사용자 계정 및 그룹정보를 수집해 그룹별 사용자의 목록을 작성하여 데이터베이스화하기 위한 사용자/그룹 계정 정보 수집 수단; 디바이스 정보를 수집하여, 수집된 디바이스 목록을 유형별로 분류하기 위한 디바이스 정보 수집수단; 상기 클라이언트 목록, 상기 사용자/그룹 계정 목록, 상기 디바이스 목록을 이용하여 각각의 디바이스에 접근 가능한 그룹/사용자 계정을 할당하고, 각각의 그룹/사용자가 해당 디바이스에 접근할 수 있는 시간과 접근권한의 정도를 부여하여 목록화(스케쥴링 테이블)하기 위한 스케쥴링수단; 운영체제에 디바이스 접근권한 제어 관련 이벤트를 처리하기 위한 서비스를 등록하고, 스케쥴링 테이블을 지속적으로 점검하여 현재의 시간이 테이블에 설정된 시간범위를 벗어난 경우 디바이스에 접근 가능한 계정 및 접근권한을 원래의 값으로 복원하기 위한 서비스 등록수단; 커널로 전송되는 디바이스 입출력 메시지를 훅킹하여 해당 입출력 행위(디바이스 접근 행위)가 상기 스케쥴링 테이블에 정의되어 있는 인증자료에 위배되는지를 점검하기 위한 메시지 훅킹 및 인증 수단; 상기 메시지 훅킹 및 인증 수단의 인증 결과에 따라, 운영체제별로 디바이스의 접근권한을 제어하고, 인증 실패 결과를 기록하기 위한 불 법행위 방지 및 기록 수단; 및 운영체제에 의해 보고되는 네트워크 상의 오류를 탐지하기 위한 에러탐지수단을 포함하여 이루어진 것을 특징으로 한다. According to an aspect of the present invention, there is provided a device access right control apparatus, comprising: program installation means for classifying and installing a type of a file to be installed and a user environment for each operating system; Network configuration means for providing functions capable of setting a server / client and providing a unique message set / protocol for message requests and responses between the server and the client, so as to create a list of client requests for connection; User / group account information collection means for collecting user accounts and group information to create a list of users for each group and database them; Device information collecting means for collecting device information and classifying the collected device list by type; Assign a group / user account accessible to each device by using the client list, the user / group account list, and the device list, and the time and degree of access authority for each group / user to access the corresponding device. Scheduling means for granting and cataloging (scheduling table); Register a service to handle the device access right control related event in the operating system, and continuously check the scheduling table to restore the account and access right to the device to the original value when the current time is out of the time range set in the table. Service registration means for; Message hooking and authentication means for hooking a device input / output message transmitted to the kernel to check whether the corresponding input / output behavior (device access behavior) violates the authentication data defined in the scheduling table; An illegal act prevention and recording means for controlling access rights of the device for each operating system and recording an authentication failure result according to the message hooking and authentication result of the authentication means; And error detecting means for detecting an error on a network reported by the operating system.
그리고, 본 발명은 디바이스 접근권한 제어 장치에 적용되는 디바이스 접근권한 제어 방법에 있어서, 설치되어야 할 파일의 종류 및 사용자 환경을 운영체계별로 분류하여 디바이스 접근권한 제어 프로그램을 설치하는 프로그램 설치 단계; 네트워크 상의 오류를 탐지하여 접속 요청된 클라이언트의 목록을 작성하는 클라이언트 목록 작성 단계; 사용자 계정 및 그룹정보를 수집해 그룹별 사용자의 목록을 작성하는 사용자/그룹 계정 목록 작성 단계; 디바이스 정보를 수집하여, 수집된 디바이스 목록을 유형별로 분류하는 디바이스 목록 작성 단계; 상기 클라이언트 목록, 상기 사용자/그룹 계정 목록, 상기 디바이스 목록을 이용하여 각각의 디바이스에 접근 가능한 그룹/사용자 계정을 할당하고, 각각의 그룹/사용자가 해당 디바이스에 접근할 수 있는 시간과 접근권한의 정도를 부여하여 목록화(스케쥴링 테이블)하는 스케쥴링 단계; 디바이스 입출력 메시지를 훅킹하여 해당 입출력 행위(디바이스 접근 행위)가 상기 스케쥴링 테이블에 정의되어 있는 인증자료에 위배되는지를 점검하는 메시지 훅킹 및 인증 단계; 및 상기 메시지 훅킹 및 인증 단계의 인증 결과에 따라, 운영체제별로 디바이스의 접근권한을 제어하고, 인증 실패 결과를 기록하는 불법행위 방지 및 기록 단계를 포함하여 이루어진 것을 특징으로 한다. In addition, the present invention provides a device access right control method applied to a device access right control apparatus, comprising: a program installation step of installing a device access right control program by classifying a type of a file to be installed and a user environment for each operating system; A client list making step of detecting an error on a network and creating a list of clients requested to be connected; A user / group account list creation step of collecting user accounts and group information and creating a list of users for each group; A device list making step of collecting device information and classifying the collected device list by type; Assign a group / user account accessible to each device by using the client list, the user / group account list, and the device list, and the time and degree of access authority for each group / user to access the corresponding device. Scheduling by assigning and listing (scheduling table); Hooking a device input / output message to check whether a corresponding input / output activity (device access behavior) violates authentication data defined in the scheduling table; And according to the authentication result of the message hooking and authentication step, controlling the access rights of the device for each operating system, characterized in that it comprises a tort prevention and recording step of recording the authentication failure result.
한편, 본 발명은 사용자 계정 및 스케쥴링에 의한 디바이스 접근권한 제어를 위하여, 프로세서를 구비한 디바이스 접근권한 제어 장치에, 설치되어야 할 파일의 종류 및 사용자 환경을 운영체계별로 분류하여 디바이스 접근권한 제어 프로그램을 설치하는 프로그램 설치 기능; 네트워크 상의 오류를 탐지하여 접속 요청된 클라이언트의 목록을 작성하는 클라이언트 목록 작성 기능; 사용자 계정 및 그룹정보를 수집해 그룹별 사용자의 목록을 작성하는 사용자/그룹 계정 목록 작성 기능; 디바이스 정보를 수집하여, 수집된 디바이스 목록을 유형별로 분류하는 디바이스 목록 작성 기능; 상기 클라이언트 목록, 상기 사용자/그룹 계정 목록, 상기 디바이스 목록을 이용하여 각각의 디바이스에 접근 가능한 그룹/사용자 계정을 할당하고, 각각의 그룹/사용자가 해당 디바이스에 접근할 수 있는 시간과 접근권한의 정도를 부여하여 목록화(스케쥴링 테이블)하는 스케쥴링 기능; 디바이스 입출력 메시지를 훅킹하여 해당 입출력 행위(디바이스 접근 행위)가 상기 스케쥴링 테이블에 정의되어 있는 인증자료에 위배되는지를 점검하는 메시지 훅킹 및 인증 기능; 및 상기 메시지 훅킹 및 인증 단계의 인증 결과에 따라, 운영체제별로 디바이스의 접근권한을 제어하고, 인증 실패 결과를 기록하는 불법행위 방지 및 기록 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.On the other hand, the present invention is to classify the device access rights control program by classifying the types of files and the user environment to be installed in the device access rights control apparatus with a processor for the device access rights control by user account and scheduling by operating system Program installation function to install; A client list making function for detecting an error on a network and creating a list of clients requested to be connected; A user / group account list creation function for collecting user account and group information and creating a list of users by group; A device list making function for collecting device information and classifying the collected device list by type; Assign a group / user account accessible to each device by using the client list, the user / group account list, and the device list, and the time and degree of access authority for each group / user to access the corresponding device. A scheduling function for assigning and listing the scheduling table (scheduling table); A message hooking and authentication function that checks whether a corresponding input / output activity (device access behavior) violates authentication data defined in the scheduling table by hooking a device input / output message; And a computer-readable recording medium recording a program for controlling access rights of devices for each operating system according to the authentication result of the message hooking and authentication step, and realizing an illegal prevention and recording function for recording an authentication failure result. to provide.
본 발명은 USB(USB 메모리 스틱, USB 프린터, USB 하드드라이브 포함), CD-ROM(DVD, CD-RW 포함), IEEE 1394포트, 병렬포트(프린터), 직렬포트(모뎀), 적외선 포트(Infra-Red port), 플로피 디스켓 드라이버, 하드 드라이버 등의 디바이스(Device)에 대해 사용자별 계정 및 스케쥴링(Scheduling)에 따라 접근권한을 부여하고, 각 디바이스에 대한 접근/입출력 기록을 로컬(Local) 또는 원격(Remote) 컴퓨터에 저장 관리함으로써, 컴퓨터 본체의 자료가 외부로 무단 유출되는 것을 방지(보안)하고자 한다. The present invention is USB (USB memory stick, USB printer, USB hard drive included), CD-ROM (including DVD, CD-RW), IEEE 1394 port, parallel port (printer), serial port (modem), infrared port (Infra -Grant access rights for each device such as red port, floppy diskette driver, hard drive, etc. according to user's account and scheduling, and record access / input / output for each device locally or remotely. (Remote) By storing and managing on a computer, we want to prevent (secure) the data of the computer main body from leaking outside.
이를 위해, 본 발명은 컴퓨터에 연결되어 있는 모든 읽기/쓰기가 가능한 디바이스의 접근권한을 사용자 계정별/스케쥴링된 시간별로 제어함으로써, 컴퓨터 소유자의 의지와 무관한 자료의 유출을 방지한다. 이때, 원격으로 클라이언트 컴퓨터의 디바이스를 제어하고 각 클라이언트에서 발생한 이벤트들을 기록할 수 있는 기능을 제공하여, 중앙집중적인 관리가 가능하다. 또한, 이러한 기능들을 운영체계의 서비스로 등록함으로써, 사용자가 최초 1회 설치후에는 컴퓨터 기동시 자동으로 주어진 기능을 시작하게 하여 사용자 편의성을 높일 수 있다. To this end, the present invention controls the access rights of all read / write enabled devices connected to the computer by user account / scheduled time, thereby preventing the leakage of data regardless of the owner of the computer. At this time, by providing a function to remotely control the device of the client computer and to record the events occurring in each client, it is possible to centrally manage. In addition, by registering these functions as a service of the operating system, it is possible to increase the user convenience by allowing the user to automatically start a given function upon computer startup after the first installation.
본 발명에 따르면, 군부대나 대기업 등과 같이 군사기밀/사내기밀이 각종 디바이스를 통해 유출될 경우 막대한 재정적/보안상의 위협을 받는 환경에서 보다 유용하며, 제품들의 다양화에 따른 프로그램의 수정을 최소화함으로써 사용자의 추가적인 비용부담을 줄일 수 있다. According to the present invention, if a military secret / secret secret, such as a military unit or a large company is leaked through various devices, it is more useful in the environment of enormous financial and security threats, by minimizing the modification of the program according to the diversification of products Can reduce the additional cost burden.
상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.The above objects, features and advantages will become more apparent from the following detailed description taken in conjunction with the accompanying drawings. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1 은 본 발명이 적용되는 사용자 계정 및 스케쥴링에 의해 디바이스의 접근권한을 제어하기 위한 하드웨어 시스템의 구성 예시도이다.1 is an exemplary configuration diagram of a hardware system for controlling access rights of a device by a user account and scheduling to which the present invention is applied.
도면에 도시된 바와 같이, 본 발명이 적용되는 하드웨어 시스템은, 사용자 정합을 위한 클라이언트 단말기(10)와, 사용자가 클라이언트 컴퓨터(10)로 네트워크를 통해 접속하면 데이터베이스(30)에 저장된 디바이스 접근권한 제어 프로그램을 바탕으로 사용자 계정 및 스케쥴링에 따라 해당 사용자의 접근권한을 제어하는 서버 단말기(20)로 구성된다. As shown in the figure, the hardware system to which the present invention is applied, the device access rights control stored in the
여기서, 네트워크는 클라이언트(10)와 서버(20) 간의 통신회선을 연결하여 상호간에 디바이스 접근권한 제어 서비스와 관련된 데이터 통신이 이루어지도록 연결 설정한다.Here, the network connects the communication line between the
물론, 클라이언트(10)는 전용선로 혹은 랜(LAN), 무선랜(Wireless LAN), 유무선 인터넷 등을 통해서 서버(20)에 접속할 수 있고, 통신중재장치(예를 들면, 모뎀 등), 모니터, 키보드(혹은 키패드) 등이 포함되어진 개인용컴퓨터(PC), 노트북 등이 될 수 있다. Of course, the
상기 디바이스 접근권한 제어 프로그램은 클라이언트(10) 및 서버(20)의 상호 연동 형태(이러한 경우, 디바이스 접근권한 제어 프로그램이 클라이언트(10) 및 서버(20) 각각에 설치되어 상호 연동됨)에 한정되지 않고, 클라이언트(10)의 독립적인 수행이 가능함을 미리 밝혀둔다. The device access right control program is not limited to the form of interworking of the
즉, 디바이스 접근권한 제어 프로그램은 클라이언트(10) 및 서버(20)의 상호 연동 형태(클라이언트 디바이스 접근권한 제어 프로그램(이하, "클라이언트 프로그램"이라 함) - 서버 디바이스 접근권한 제어 프로그램(이하, "서버 프로그램"이라 함))가 가능할 뿐만 아니라, 클라이언트(10)에서의 독립적인 수행이 가능하다. 물론, 클라이언트(10)에서 디바이스 접근권한 제어 프로그램의 독립적인 수행시, 서버(20) 역시 하나의 독립적인 클라이언트(10)로 볼 수 있음은 자명하다. 이러한 경우에는 로컬 데이터베이스(30)가 클라이언트(10)측에 탑재 혹은 연동되어야 한다. That is, the device access right control program is an interworking type of the
상호 연동 혹은 독립적인 수행이 가능한 디바이스 접근권한 제어 프로그램 은, 클라이언트(10)에 연결되어 있는 모든 읽기/쓰기가 가능한 디바이스(USB(USB 메모리 스틱, USB 프린터, USB 하드드라이브 포함), CD-ROM(DVD, CD-RW 포함), IEEE 1394포트, 병렬포트(프린터), 직렬포트(모뎀), 적외선 포트(Infra-Red port), 플로피 디스켓 드라이버, 하드 드라이버 등)의 접근권한을 사용자 계정별/스케쥴링된 시간별로 관리한다. 이때, 디바이스 접근권한 제어 프로그램은 클라이언트(10)의 디바이스를 제어하고 각 클라이언트(10)에서 발생한 이벤트들을 데이터베이스(네트워크 DB, 계정 정보 DB, 디바이스 유형 DB, 디바이스 DB, 스케쥴링 DB 등)(30)에 기록하고 있다. 또한, 디바이스 접근권한 제어 프로그램은 운영체계의 서비스로 등록되어, 사용자가 최초 1회 설치후에는 컴퓨터 기동시 자동으로 주어진 기능을 수행한다. The device access right control program which can be interoperable or independent can be used for all read / write devices (including USB (USB memory stick, USB printer, USB hard drive), CD-ROM (connected to the client 10). User account / scheduling of access rights of DVD, CD-RW), IEEE 1394 port, parallel port (printer), serial port (modem), infrared port (infra-red port), floppy diskette driver, hard drive, etc.) Manage by time. At this time, the device access control program controls the device of the
상호 연동시, 클라이언트 프로그램과 서버 프로그램이 상호 연동하여 서버(20)는 클라이언트(10)로부터 사용자 계정 정보, 디바이스 정보, 로그(Log) 정보, 생존(Alive) 메시지를 받아, 디바이스별 스케쥴링된 사용자 접근 가능 시간 및 접근권한 정보를 해당 클라이언트(10)로 제공한다. At the time of interworking, the client program and the server program interoperate with each other, so that the
그럼, 상기 디바이스 접근권한 제어 프로그램에 대해 보다 상세하게 살펴보기로 한다. Then, the device access right control program will be described in more detail.
도 2 는 본 발명에 따른 디바이스 접근권한 제어 장치의 일실시예 구성도로서, 상기 디바이스 접근권한 제어 프로그램의 소프트웨어 항목들을 모듈화한 것이다. 2 is a block diagram of an embodiment of a device access right control apparatus according to the present invention, in which software items of the device access right control program are modularized.
도 2에 도시된 바와 같이 본 발명에 따른 디바이스 접근권한 제어 장치는, 설치되어야 할 파일의 종류 및 사용자 환경을 운영체계별로 분류하여 설치하기 위한 프로그램 설치부(201)와, 서버(20)/클라이언트(10)를 설정할 수 있는 함수들을 제공하고, 서버(20)와 클라이언트(10) 사이의 메시지 요청 및 응답을 위한 독자적인 메시지 집합/프로토콜을 제공하여, 접속 요청된 클라이언트의 목록을 작성하기 위한 네트워크 구성부(202)와, 사용자 계정 및 그룹정보를 수집해 그룹별 사용자의 목록을 작성하여 데이터베이스화하기 위한 사용자/그룹 계정 정보 수집부(203)와, 디바이스 정보를 수집하여, 수집된 디바이스 목록을 유형별로 분류하기 위한 디바이스 정보 수집부(204)와, 클라이언트 목록, 사용자/그룹 계정 목록, 디바이스 목록을 이용하여 각각의 디바이스에 접근 가능한 그룹/사용자 계정을 할당하고, 각각의 그룹/사용자가 해당 디바이스에 접근할 수 있는 시간과 접근권한의 정도를 부여하여 목록화(스케쥴링 테이블)하기 위한 스케쥴링부(205)와, 운영체제에 디바이스 접근권한 제어 관련 이벤트를 처리하기 위한 서비스를 등록하고, 스케쥴링 테이블을 지속적으로 점검하여 현재의 시간이 테이블에 설정된 시간범위를 벗어난 경우 디바이스에 접근 가능한 계정 및 접근권한을 원래의 값으로 복원하기 위한 서비스 등록부(206)와, 커널로 전송되는 디바이스 입출력 메시지를 훅킹하여 해당 입출력 행위(디바이스 접근 행위)가 스케쥴링 테이블에 정의되어 있는 인증자료에 위배되는지를 점검하기 위한 메시지 훅킹 및 인증부(207)와, 메시지 훅킹 및 인증부(207)의 인증 결과에 따라, 운영체제별로 디바이스의 접근권한을 제어하고, 인증 실패 결과를 기록하기 위한 불법행위 방지 및 기록부(208)와, 운영체제에 의해 보고되는 네트워크 상의 오류를 탐지하기 위한 에러 탐지부(209)를 포함한다. As shown in FIG. 2, the apparatus for controlling access to a device according to the present invention includes a
운영체제(Windows 9X 계열/Windows NT 계열)의 종류 및 버전에 따라 적용되는 보안 규칙, 사용자 계정의 관리, 디바이스 정보 저장 및 수집의 형태가 틀리므로, 디바이스 접근권한 제어 프로그램이 각 운영체계별로 정상적인 기능을 수행하기 위해서는, 설치되어야 할 파일의 종류 및 사용자 환경을 운영체계별로 분류하여 설치하여야 한다. 이를 위해, 프로그램 설치부(201)는 운영체계의 종류와 버전을 탐지하고, 기 정의된 설치 목록으로부터 설치되어야 할 파일과 환경변수를 읽어 온 후 사용자 정의 또는 기본 설치 디렉토리에 프로그램을 설치하게 된다. Since the security rules that are applied according to the type and version of the operating system (Windows 9X series / Windows NT series), the management of user accounts, the storage and collection of device information, are different, the device access control program may not operate properly. In order to execute, the file types to be installed and the user environment should be classified and installed by operating systems. To this end, the
디바이스 접근권한 제어 프로그램은 하나의 컴퓨터(클라이언트 혹은 서버)에서 독자적으로 수행될 수 있는 기능 뿐만 아니라, 네트워크를 통해 중앙집중적인 처리(클라이언트-서버 연동)를 할 수 있는 기능을 갖는다. 이를 위해, 네트워크 구성부(202)는 기본적으로 클라이언트(10)/서버(20)를 설정할 수 있는 함수들을 제공하고, 서버(20)와 클라이언트(10) 사이의 메시지 요청 및 응답을 위한 독자적인 메시지 집합/프로토콜을 제공한다. The device access right control program has not only a function that can be performed independently on one computer (client or server) but also a function that allows centralized processing (client-server interworking) through a network. To this end, the
네트워크는 다양한 이유로 그 접속상태에 변경이 발생할 수 있으므로, 운영체계에 의해 보고되는 네트워크 상의 오류를 탐지할 수 있는 수동적인 에러 탐지부(209)와, 클라이언트(10)가 그 수행여부를 서버(20)에게 주기적으로 생존 메시지(Alive Message) 형식으로 전송하기 때문에, 만약 전송주기내에 클라이언트(10)로부터 생존 메시지를 수신하지 못하면 자동으로 해당 클라이언트(10)에 관련된 데이터베이스(30)를 삭제/수정할 수 있는 능동적인 에러 탐지부(209)를 제공한다. Since the network may change its connection state for various reasons, the passive
서버(20)의 역할을 하는 프로그램(서버 프로그램)은 그 시작과 동시에 지정된 포트(Port)를 열어, 클라이언트(10)의 접속을 기다린다. 한편, 클라이언트(10)의 역할을 수행하는 프로그램(클라이언트 프로그램)은 그 시작과 동시에 지정된 포트(Port)로 서버 위치 확인 메시지를 브로드캐스팅한 후, 응답을 송신한 서버(20)로 접속을 시도한다. 이때, 만약 일정 기간 동안 클라이언트(10)로부터의 서버 위치 확인 메시지에 응답하는 서버(20)가 없다면, 클라이언트 프로그램은 독립적으로 수행된다.A program (server program) serving as the
서버 위치 확인 메시지에 대해 응답한 서버 프로그램은 접속 요청을 보내온 클라이언트 프로그램에게 응답하며, 클라이언트(10)를 데이터베이스화한다. The server program responding to the server location message responds to the client program that sent the connection request, and database the
운영체계는 사용자 계정 및 그룹정보를 SID(Security Identifier)의 형태로 관리하는데, 사용자/그룹 계정 정보 수집부(203)는 이러한 정보를 수집해 그룹별 사용자의 목록을 작성하여 데이터베이스화한다. The operating system manages user account and group information in the form of security identifier (SID). The user / group account
클라이언트 프로그램은 서버(20)와 연결된 후 자신의 그룹/사용자 목록을 서버 프로그램에게 제공하며, 만일 독립적으로 수행되는 경우에는 로컬(Local) 데이터베이스를 작성한다. 한편, 서버 프로그램은 클라이언트 프로그램이 송신한 그룹/사용자 목록을 클라이언트 목록과 연결하여 이를 데이터베이스화한다. 이렇게 수집된 목록은 리스트 컨트롤의 양식으로 사용자에게 제공된다. After connecting to the
하나의 컴퓨터는 수십(때에 따라서는 수백)가지의 물리적인 디바이스들과 논리적인 디바이스들로 구성된다. 이중 디바이스 접근권한 제어 프로그램이 필요로 하는 것은 USB 포트, Serial 포트, Parellel 포트, 1394 포트, 적외선 포트, CD- ROM, 플로피(Floppy), 하드디스크(Hard Disk)의 디바이스들에 대한 정보이므로, 디바이스 정보 수집부(204)는 디바이스 정보를 수집한 후, 수집된 디바이스 목록을 유형별로 분류하고 위에 해당하는 종류를 제외한 나머지는 목록에서 삭제한다. A computer consists of dozens (sometimes hundreds) of physical and logical devices. The dual device access control program needs information on the devices of USB port, serial port, parellel port, 1394 port, infrared port, CD-ROM, floppy, and hard disk. After collecting the device information, the
클라이언트 프로그램은 서버(20) 접속 이후 로컬 컴퓨터의 디바이스 정보를 수집하여 서버 프로그램으로 전송한다. 그러면, 서버 프로그램은 클라이언트 프로그램으로부터 수집한 디바이스 정보를 클라이언트 컴퓨터 목록과 연결(Join)하여 이를 데이터베이스화한다. 이렇게 수집된 목록은 리스트 컨트롤의 양식으로 사용자에게 제공된다. After connecting to the
스케쥴링부(205)는 수집된 컴퓨터 목록, 그룹/사용자 계정 목록, 디바이스 목록 리스트를 이용하여 각각의 디바이스에 접근 가능한 그룹/사용자 계정을 할당하고, 각각의 그룹/사용자가 해당 디바이스에 접근할 수 있는 시간과 접근권한의 정도를 부여하여 하기의 [표 1]과 같이 목록화한다. 이는 특정 사용자가 디바이스에 입출력 행위를 할 때 인증 자료로 사용된다. 스케쥴링 테이블을 살펴보면 하기의 [표 1]과 같다. The
스케쥴링부(205)는 디바이스의 핸들(Handle)값을 이용하여 디폴트로 설정되어 있는 DACL(Discretionary Access Control List)을 읽어온 후 사용자가 정의한 계정의 SID(Security Identifier) 및 사용자 정의 접근 허락(Access Permission) 정보가 기록된 ACE(Access Control Entry)를 DACL에 기록하여 저장함으로써 디바이스 접근권한을 수정한다. 이에 대한 자세한 내용은 하기의 도 5에서 후술하기로 한다. The
서비스 등록부(206)는 최초로 디바이스 접근권한 제어 프로그램이 설치되면 서비스 등록 과정을 수행한다. 이는 컴퓨터가 종료되고 다시 기동된 이후에도 사용자의 개입없이 본 프로그램을 수행하기 위한 하나의 방편이며, 상기 [표 1]의 스케쥴링 테이블을 지속적으로 점검하여 현재의 시간이 테이블에 설정된 시간범위를 벗어난 경우 디바이스에 접근 가능한 계정 및 접근권한을 원래의 값으로 복원시키기 위한 것이다. 또한, 운영체계 서비스는 관리자 계정에 의해서만 종료될 수 있고 서비스의 시작과 종료가 이벤트 로그로 기록되기 때문에 일반적인 프로그램의 수행보다는 보안적인 측면에서 장점을 가지고 있다. The
메시지 훅킹(Hooking) 및 인증부(207)는 드라이버 형식으로 지원되며, 커널로 전송되는 디바이스 입출력 메시지를 훅킹하여 해당 입출력 행위(디바이스 접근 행위)가 상기 [표 1]의 스케쥴링 테이블에 정의되어 있는 인증자료에 위배되는지를 점검하게 된다. 만약, 위배되지 않는다면 사용자의 입출력 행위는 정상적으로 수행될 것이며, 위배된다면 적절한 방지절차 및 로그절차를 수행하게 될 것이다. The message hooking and
만약, 사용자의 입출력 행위(디바이스 접근 행위)가 스케쥴링 테이블을 이용 한 인증절차를 통과하지 못하였다면, 불법행위 방지 및 기록부(208)에서 적절한 접근권한 제어 절차를 수행하는데, 이는 운영체계별로 구분되어 실행된다. 예를 들면, Windows 9X 계열의 경우 인증받지 못한 입출력 행위(디바이스 접근 행위)가 탐지되면, 화면잠김 절차가 수행되고 사용자의 정의에 의해 키보드 및 마우스 잠김도 가능하다. 이는 Windows 9X 계열이 보안에 있어서 Windows NT 계열보다 취약하기 때문에 최대한의 물리적인 잠금을 통해서 인증받지 못한 입출력 행위(디바이스 접근 행위)를 방지하기 위한 것이다. If the user's input / output behavior (device access behavior) does not pass the authentication process using the scheduling table, the illegal activity prevention and
반면, Windows NT 계열은 사용자 계정 및 디바이스에 대한 보안이 상대적으로 강하며 이에 대한 다수의 API를 제공하기 때문에 인증되지 못한 입출력 행위(디바이스 접근 행위)가 발생한 디바이스에 대한 접근을 방어하는 것만으로도 충분하다. On the other hand, the Windows NT family has relatively strong security for user accounts and devices, and provides a number of APIs for which it is sufficient to defend access to devices that encounter unauthorized I / O behavior (device access behavior). Do.
이러한 인증되지 못한 행위에 대해서는, 불법행위 방지 및 기록부(208)에서 Window 9X 계열 및 Window NT 계열에 상관없이 로그를 남기게 되는데, 이 때에는 행위가 발생한 컴퓨터명, 사용자명, 디바이스 명 및 입출력 대상이 되었던 파일명이 함께 기록되게 된다. For such unauthenticated actions, the illegal activity prevention and
도 3 은 본 발명에 따른 디바이스 접근권한 제어 방법 중 서비스 등록 과정을 나타낸 일실시예 흐름도로서, 최초로 디바이스 접근권한 제어 프로그램이 설치된 후 수행하는 서비스 등록 절차를 나타낸다. 이 과정을 통해 컴퓨터가 종료되고 다시 기동된 이후에도 사용자의 개입없이 디바이스 접근권한 제어 프로그램을 수행할 수 있다. 3 is a flowchart illustrating a service registration process in the device access right control method according to the present invention, and shows a service registration procedure performed after the device access right control program is first installed. Through this process, even after the computer is shut down and restarted, the device access control program can be executed without user intervention.
프로그램이 클라이언트 모드(클라이언트 프로그램)인가 서버 모드(서버 프로그램)인가에 따라(301) 수행되는 절차 및 수집하는 데이터가 다르다. Depending on whether the program is in client mode (client program) or server mode (server program) (301), the procedure to be performed and the data to be collected differ.
클라이언트(10)는 로컬 계정정보, 디바이스 정보를 수집하여 서버(20)로 제공하며, 서버(20)는 자신의 로컬 계정정보 및 디바이스 정보 뿐만 아니라 클라이언트들(10)로부터 수집한 정보들을 시스템 계정정보 및 디바이스 정보 데이터베이스(30)로 관리한다. The
이러한 시스템 계정정보 및 디바이스 정보 데이터베이스(30)를 기초로 하여 운영자는 특정 디바이스에 대해 각각의 계정에 대한 접근권한 및 스케쥴을 부여할 수 있는데, 클라이언트(10)는 입력된 내용을 자신의 스케쥴링 데이터베이스를 갱신할 뿐만 아니라, 서버(20)에 등록하기 위해 스케쥴링 데이터베이스 변경사항을 서버(20)로 전송한다. 그러면, 서버(20)는 자신의 로컬 스케쥴링 데이터베이스(30)와 클라이언트들(10)로부터 수신된 스케쥴링 데이터베이스(30)를 총괄하여 시스템 스케쥴링 데이터베이스(30)를 확립하고 관리하는 기능을 갖는다. Based on the system account information and the
마지막으로, 서버 및 클라이언트 프로그램은 운영체제에 디바이스 입출력(접근 행위) 관련 이벤트를 처리하기 위한 서비스를 등록한다. Finally, the server and client programs register a service for handling device input / output (access behavior) related events with the operating system.
상기의 과정을 구체적으로 살펴보면, 먼저 클라이언트(10)가 지정된 포트로 서버 위치 확인 메시지를 브로드캐스트한 후 응답을 송신한 서버(20)에 접속을 시도한다(302). 이때, 만약 일정 기간 동안 서버 위치 확인 메시지를 응답하는 서버(20)가 없다면 클라이언트(10)는 독립적으로 수행된다. In detail, the
클라이언트(10)가 독립적으로 수행되는 경우, 클라이언트(10)는 로컬/원격 사용자 계정 및 그룹정보를 수집한 후(304,306) 그룹별 사용자의 목록(그룹/사용자 목록)을 작성하여 데이터베이스(계정 정보 데이터베이스)화 한다. When the
그리고, 클라이언트(10)는 디바이스 유형 데이터베이스(30)의 디바이스 유형 자료(USB(USB 메모리 스틱, USB 프린터, USB 하드드라이브 포함), CD-ROM(DVD, CD-RW 포함), IEEE 1394포트, 병렬포트(프린터), 직렬포트(모뎀), 적외선 포트(Infra-Red port), 플로피 디스켓 드라이버, 하드 드라이버 등)을 참조하여(308), 접근권한 제어가 필요한 디바이스들에 대한 디바이스 목록을 수집한 후(310), 수집된 디바이스 목록을 유형별로 분류하여 데이터베이스(디바이스 정보 데이터베이스)화 한다(312). In addition, the
또한, 클라이언트(10)는 수집된 클라이언트 목록, 그룹/사용자 계정 목록, 디바이스 목록을 이용하여 각각의 디바이스에 접근 가능한 그룹/사용자 계정을 할당하고 각각의 그룹/사용자가 해당 디바이스에 접근할 수 있는 시간과 접근권한의 정도를 부여하여 목록화한다(314). 이 스케쥴링 목록은 스케쥴링 데이터베이스(30)에 저장되어, 추후 특정 사용자가 디바이스에 접근 행위(입출력 행위)를 할 때 인증 자료로 활용된다. In addition, the
마지막으로, 클라이언트(10)는 커널로 전송되는 디바이스 입출력 메시지를 훅킹(Hooking)할 수 있도록 훅킹 드라이버를 설치하고(315), 운용체제에 디바이스 입출력(접근) 관련 이벤트를 처리하기 위한 서비스를 등록한다(317). Finally, the
한편, 클라이언트(10)와 서버(20)가 연동하여 수행되는 경우, 클라이언트(10)는 로컬/원격 사용자 계정 및 그룹정보를 수집한 후(304,306) 그룹 별 사용자의 목록(그룹/사용자 목록)을 작성하여 데이터베이스(계정 정보 데이터베이스)화 한다. 이후, 서버(20)와 연결되면, 자신의 그룹/사용자 목록을 서버(20)로 전송하고, 서버(20)는 자신의 로컬 사용자 계정 및 그룹정보를 수집하여(305,307) 수집된 정보들과 클라이언트(10)로부터 전송된 정보들을 시스템 계정 정보 데이터베이스(30)로 관리한다. 즉, 서버(20)에서는 클라이언트(10)가 송신한 그룹/사용자 목록과 클라이언트 목록을 연결(Join)하여 데이터베이스(계정 정보 데이터베이스)화 한다. On the other hand, if the
그리고, 클라이언트(10)는 디바이스 유형 데이터베이스(30)의 디바이스 유형 자료(USB(USB 메모리 스틱, USB 프린터, USB 하드드라이브 포함), CD-ROM(DVD, CD-RW 포함), IEEE 1394포트, 병렬포트(프린터), 직렬포트(모뎀), 적외선 포트(Infra-Red port), 플로피 디스켓 드라이버, 하드 드라이버 등)을 참조하여(308), 접근권한 제어가 필요한 디바이스들에 대한 디바이스 목록을 수집한 후(310), 수집된 디바이스 목록을 유형별로 분류하여 데이터베이스(디바이스 정보 데이터베이스)화 한다(312). 이후, 서버(20)와 연결되면, 자신의 디바이스 목록을 서버(20)로 전송하고, 서버(20)는 자신의 로컬 디바이스 정보를 수집한 후(309,311) 수집된 정보들과 클라이언트(10)로부터 전송된 정보들을 유형별로 분류하여 데이터베이스(디바이스 정보 데이터베이스)화 한다(313). 즉, 서버(20)에서는 클라이언트(10)가 송신한 디바이스 목록과 클라이언트 목록을 연결(Join)하여 데이터베이스(디바이스 정보 데이터베이스)화 한다. 이렇게 수집된 목록은 리스트 컨트롤의 양식으로 사용자에게 제공된다. In addition, the
마지막으로, 서버(20)는 커널로 전송되는 디바이스 입출력 메시지를 훅킹(Hooking)할 수 있도록 훅킹 드라이버를 설치하고(316), 운용체제에 디바이스 입출력(접근) 관련 이벤트를 처리하기 위한 서비스를 등록한다(318).Finally, the
도 4 는 본 발명에 따른 디바이스 접근권한 제어 방법 중 서비스 인증 과정을 나타낸 일실시예 흐름도이다.4 is a flowchart illustrating a service authentication process in a device access right control method according to the present invention.
먼저, 디바이스의 입출력 메시지를 훅킹(Hooking)할 수 있는 드라이버를 적재한다(401). 이 드라이버는 디바이스에 대한 Open/Close/Read/Write 등에 대한 이벤트를 Hooking하여 스케쥴링 DB의 시간/사용자계정/접근권한을 비교하여(402~403) 모든 조건이 만족될 경우에만 해당 행위를 허가할 수 있도록 하며(405), 그렇지 않은 경우에는 행위는 무시되고 경고메시지/경고음(NT 계열) 또는 화면/키보드/마우스 잠금(Windows 95/98 계열)과 같은 물리적인 잠금을 실시한다(406~408). 이렇게 인증받지 못한 행위에 대해서는 물리적인 잠금외에 행위자체에 대한 로그(Log)를 기록함으로써(409,410), 사후 분석이 가능토록 한다. First, a driver capable of hooking an input / output message of a device is loaded (401). This driver can hook the event about Open / Close / Read / Write to the device and compare the time / user account / access authority of the scheduling DB (402 ~ 403) to allow the action only when all conditions are satisfied. Otherwise, the action is ignored and a physical lock such as a warning message / beep (NT series) or screen / keyboard / mouse lock (Windows 95/98 series) is performed (406-408). Such unauthorized actions are recorded by logging logs (409 and 410) of the actions themselves in addition to the physical locks, allowing for post-mortem analysis.
즉, 메시지 훅킹(Hooking) 및 인증부(207)는 디바이스 입출력 메시지 훅킹 드라이버를 로드하여(401), 해당 입출력 행위(디바이스 접근 행위 이벤트)가 상기 [표 1]의 스케쥴링 테이블에 정의되어 있는 인증자료에 위배되는지를 인증한다(403,404). That is, the message hooking and
인증 결과, 위배되지 않으면 사용자의 입출력 행위(디바이스 접근 행위)는 정상적으로 수행되며(405), 적절한 접근권한 제어 절차를 수행하는데, 이는 운영체계별로 구분되어 실행된다. 예를 들면, Windows 9X 계열의 경우(406), 인증받지 못 한 입출력 행위(디바이스 접근 행위)가 탐지되면, 화면잠김 절차가 수행되고 사용자의 정의에 의해 키보드 및 마우스 잠김도 가능하다(408). 이는 Windows 9X 계열이 보안에 있어서 Windows NT 계열보다 취약하기 때문에 최대한의 물리적인 잠금을 통해서 인증받지 못한 입출력 행위(디바이스 접근 행위)를 방지하기 위함이다. If the authentication result is not violated, the user's input / output behavior (device access behavior) is normally performed (405), and an appropriate access right control procedure is performed, which is performed by operating systems. For example, in the case of the Windows 9X series (406), if an unauthorized input / output activity (device access behavior) is detected, a screen lock procedure is performed and the keyboard and mouse can be locked by the user's definition (408). This is because the Windows 9X series is more vulnerable than the Windows NT series in terms of security. This is to prevent unauthorized input / output (device access) through maximum physical locking.
반면, Windows NT 계열의 경우(406), 사용자 계정 및 디바이스에 대한 보안이 상대적으로 강하며 이에 대한 다수의 API를 제공하기 때문에, 인증되지 못한 입출력 행위(디바이스 접근 행위)가 발생한 디바이스에 대한 접근을 방어하는 것만으로도 충분하다(407). On the other hand, in the case of the Windows NT family (406), the security of user accounts and devices is relatively strong and many APIs are provided to prevent access to devices that have an unauthenticated I / O behavior (device access behavior). Defending is enough (407).
이처럼 인증되지 못한 행위에 대해서는(407,408), 불법행위 방지 및 기록부(208)에서 Window 9X 계열 및 Window NT 계열에 상관없이 행위가 발생한 컴퓨터명, 사용자명, 디바이스 명 및 입출력 대상이 되었던 파일명이 함께 기록한다(409,410).For this unauthenticated activity (407, 408), the illegal activity prevention and
그럼, 도 5를 참조하여 디바이스 접근권한을 수정하는 과정을 살펴보기로 한다. Next, a process of modifying the device access right will be described with reference to FIG. 5.
도 5의 과정은 스케쥴링부(205)에서 디바이스의 핸들(Handle)값을 이용하여 디폴트로 설정되어 있는 DACL을 읽어온 후 사용자가 정의한 계정의 SID 및 사용자 정의 접근 허락(Access Permission) 정보가 기록된 ACE를 DACL에 기록하여 저장함으로써 디바이스 접근권한을 수정할 수 있다. In the process of FIG. 5, the
먼저, 사용자에 의한 디바이스 권한 변경사항이 입력되면(501), 지정된 사용자 또는 그룹의 SID 번호를 찾아[함수명: LookupAccountName()](502), 지정된 디바 이스의 SD(SD) 구조체 값을 조회한 후[함수명: GetDeviceSecurity()](503), 새로운 SD 값을 저장할 SD 구조체를 초기화한다[함수명: InitializeSecurityDesc()](504).First, when a device permission change is input by a user (501), the SID number of the specified user or group is found [Function Name: LookupAccountName ()] (502), and then the SD (SD) structure value of the specified device is inquired. [Function Name: GetDeviceSecurity ()] (503), Initialize the SD structure to store the new SD value. [Function Name: InitializeSecurityDesc ()] (504).
그리고, 조회된 SD 구조체 내부의 DACL 포인터를 조회하여[함수명: GetSecurityDescDACL()](505), DACL의 크기정보를 획득하고[함수명: GetAclInformation()](506), DACL의 보다 정확한 크기정보를 획득한다[함수명: GetAclInformation()](507). Then, the DACL pointer in the inquired SD structure is queried [Function Name: GetSecurityDescDACL ()] (505), and the size information of the DACL is obtained. [Function Name: GetAclInformation ()] (507).
또한, 새로운 ACL(Access Control List)을 위한 메모리를 할당한 후[함수명: myheapalloc()](508), 새로운 ACL을 초기화한다[함수명: InitializeAcl()](509). Also, after allocating memory for a new ACL (Access Control List) [function name: myheapalloc ()] (508), the new ACL is initialized (function name: InitializeAcl ()] (509).
이후, 디바이스의 DACL상에 있는 ACE 포인터를 조회한다[함수명: GetACE()](510).The ACE pointer on the DACL of the device is then queried [Function name: GetACE ()] 510.
조회 결과, NonInherited ACE를 새로운 DACL에 복사한다[함수명: CopyNonInheritedACE()](511~513). As a result of the query, copy the NonInherited ACE to a new DACL [Function Name: CopyNonInheritedACE ()] (511-513).
조회 결과, Inherited ACE인 경우, 루프를 종료한 후[함수명: Break()](514), ACL에 사용자가 지정한 Access Mask를 갖는 새로운 ACE를 추가하고[함수명: AddNewACE()](515), Inherited ACE를 새로운 DACL에 복사한다[함수명: CopyInheritedACEs()](516).As a result of the query, if it is an ACE, after the loop ends [Function: Break ()] (514), adds a new ACE with the Access Mask specified by the user to the ACL [Function: AddNewACE ()] (515), Inherited Copies the ACE to the new DACL [function name: CopyInheritedACEs ()] (516).
그리고, 새롭게 생성된 DACL를 SD에 설정하고[함수명: SetSecurityDescDACL()](517), 새롭게 생성된 SD 구조체를 디바이스에 설정한다[함수명: SetDeviceSecurity()](518).Then, the newly created DACL is set in the SD [function name: SetSecurityDescDACL ()] (517), and the newly created SD structure is set in the device (function name: SetDeviceSecurity ()] (518).
이렇게 함으로써, 디바이스 접근권한을 수정할 수 있다. By doing so, it is possible to modify the device access rights.
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다.The method of the present invention as described above may be implemented as a program and stored in a computer-readable recording medium (CD-ROM, RAM, ROM, floppy disk, hard disk, magneto-optical disk, etc.).
이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백할 것이다.The present invention described above is not limited to the above-described embodiments and the accompanying drawings, and various substitutions, modifications, and changes are possible in the art without departing from the technical spirit of the present invention. It will be clear to those of ordinary knowledge.
상기한 바와 같은 본 발명은, 컴퓨터 디바이스에 대한 사용자별 접근권한을 사용자 계정 및 스케쥴링에 따라 부여함으로써, 컴퓨터 본체의 자료가 외부로 무단 유출되는 것을 방지할 수 있어, 군부대나 대기업 등과 같이 군사기밀/사내기밀이 각종 디바이스를 통해 유출될 경우 막대한 재정적/보안상의 위협을 받는 환경에서 보다 유용하며, 제품들의 다양화에 따른 프로그램의 수정을 최소화함으로써 사용자의 추가적인 비용부담을 줄일 수 있는 효과가 있다.According to the present invention as described above, by granting user-specific access rights to a computer device according to a user account and scheduling, it is possible to prevent the leakage of the data of the computer main body to the outside, so that military secret / If the company secret is leaked through various devices, it is more useful in the environment that is subject to enormous financial and security threats, and it can reduce the additional cost burden of the user by minimizing the program modification caused by the diversification of products.
Claims (11)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020040021311A KR100546045B1 (en) | 2004-03-29 | 2004-03-29 | Device access control device by user account and scheduling and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020040021311A KR100546045B1 (en) | 2004-03-29 | 2004-03-29 | Device access control device by user account and scheduling and method |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20050096047A KR20050096047A (en) | 2005-10-05 |
KR100546045B1 true KR100546045B1 (en) | 2006-01-25 |
Family
ID=37276276
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020040021311A KR100546045B1 (en) | 2004-03-29 | 2004-03-29 | Device access control device by user account and scheduling and method |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100546045B1 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100696322B1 (en) * | 2005-10-27 | 2007-03-19 | 닉스테크 주식회사 | Hardware medium access control system and method using the same |
KR100825726B1 (en) * | 2005-12-08 | 2008-04-29 | 한국전자통신연구원 | Apparatus and method for user's privacy ? intellectual property protection of enterprise against denial of information |
TW200731077A (en) * | 2006-02-14 | 2007-08-16 | Harmony Microelectronic Inc | USB storage system and control method thereof |
KR100941320B1 (en) * | 2007-10-08 | 2010-02-11 | 프롬투정보통신(주) | Method for Managing Distribution Duration of Secret Material through Inter-working DRM with Portable Memory and the System |
WO2013022317A2 (en) * | 2011-08-10 | 2013-02-14 | 엘지전자 주식회사 | Method for executing command of server, and apparatus for same |
-
2004
- 2004-03-29 KR KR1020040021311A patent/KR100546045B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR20050096047A (en) | 2005-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7814021B2 (en) | Managed distribution of digital assets | |
JP4667361B2 (en) | Adaptive transparent encryption | |
JP5809084B2 (en) | Network security system and method | |
US7607140B2 (en) | Device management system | |
JP3728536B1 (en) | Network connection control system, network connection target terminal program, and network connection control program | |
US20090282457A1 (en) | Common representation for different protection architectures (crpa) | |
US20070136603A1 (en) | Method and apparatus for providing secure access control for protected information | |
US20060265598A1 (en) | Access to a computing environment by computing devices | |
CN111079091A (en) | Software security management method and device, terminal and server | |
JP2009518762A (en) | A method for verifying the integrity of a component on a trusted platform using an integrity database service | |
EP2575070B1 (en) | Classification-based digital rights management | |
US20080178256A1 (en) | System and method providing policy based control of interaction between client computer users and client computer software programs | |
US20070079364A1 (en) | Directory-secured packages for authentication of software installation | |
JP4044126B1 (en) | Information leakage prevention device, information leakage prevention program, information leakage prevention recording medium, and information leakage prevention system | |
RU2434283C1 (en) | System for protecting information containing state secrets from unauthorised access | |
KR100546045B1 (en) | Device access control device by user account and scheduling and method | |
JP2003330802A (en) | Confidential information access monitoring control method, confidential information access monitoring control system, and record medium storing the confidential information access monitoring control program | |
JP4896656B2 (en) | Security management system | |
RU2443017C1 (en) | System of data protection from unauthorized access to the data that constitutes national security information | |
Miroshnikov | Windows security monitoring: scenarios and patterns | |
KR100706338B1 (en) | Virtual access control security system for supporting various access control policies in operating system or application | |
JP2005258606A (en) | Network system with information leakage audit function | |
RU2444057C1 (en) | System for preventing unauthorised access to confidential information and information containing personal details | |
KR100657353B1 (en) | Security system and method for supporting a variety of access control policies, and recordable medium thereof | |
RU2571372C1 (en) | System for protecting information containing state secrets from unauthorised access |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |