KR102556976B1 - 토큰 기반 계층적 접속 제어 장치 및 방법 - Google Patents

토큰 기반 계층적 접속 제어 장치 및 방법 Download PDF

Info

Publication number
KR102556976B1
KR102556976B1 KR1020200041475A KR20200041475A KR102556976B1 KR 102556976 B1 KR102556976 B1 KR 102556976B1 KR 1020200041475 A KR1020200041475 A KR 1020200041475A KR 20200041475 A KR20200041475 A KR 20200041475A KR 102556976 B1 KR102556976 B1 KR 102556976B1
Authority
KR
South Korea
Prior art keywords
client
token
service
access
firewall
Prior art date
Application number
KR1020200041475A
Other languages
English (en)
Other versions
KR20210123811A (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 KR1020200041475A priority Critical patent/KR102556976B1/ko
Publication of KR20210123811A publication Critical patent/KR20210123811A/ko
Application granted granted Critical
Publication of KR102556976B1 publication Critical patent/KR102556976B1/ko

Links

Images

Classifications

    • 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
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • 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
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/108Network architectures or network communication protocols for network security for controlling access to devices or network resources when the policy decisions are valid for a limited amount of time

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Power Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

토큰 기반 계층적 접속 제어 장치 및 방법이 개시된다. 본 발명의 일 실시예에 따른 토큰 기반 계층적 접속 제어 방법은, 관리 서버가 소정 서비스 제공 요청한 클라이언트에 대한 인증을 수행하는 단계와, 관리 서버가 소정 서비스를 제공하는 적어도 하나의 디바이스와 연결된 서비스 제어 게이트웨이로의 접속 정보를 기록한 토큰을 생성하여 인증된 클라이언트에게 전송하는 단계와, 관리 서버가 토큰 식별자 및 클라이언트가 접속 예정인 포트 번호를 포함하는 클라이언트 접근 리스트를 생성하여 서비스 제어 게이트웨이에 전송하는 단계를 포함한다.

Description

토큰 기반 계층적 접속 제어 장치 및 방법{Apparatus and Method for Controlling Hierarchical Connection based on Token}
기재된 실시예는 네트워크 공격 방어 기술에 관한 것으로, 특히 인터넷을 통해 연결되어 다양한 서비스를 제공하는 환경에서 악의적 공격을 방어하기 위한 기술에 관한 것이다.
인터넷 환경은 누구든지 서비스 접속이 용이하도록 구현되어 서비스 이용에 편의성이 있는 반면, 분산 서비스 거부(Distribute Denial of Service, DDoS) 공격과 같은 악의적 목적을 가진 해커들 또한 서비스 접속에 용이하다는 단점이 공존한다.
한편, 최근에는 4차 산업 발전에 기반이 되는 사물 인터넷(Internet of Things, IoT) 환경의 구축이 확산되고 있는 추세이다. 그런데, 이는 해커들의 해킹 대상을 증가시키는 결과 또한 초래한다. 특히, 사물 인터넷 환경에서 서비스를 제공하는 기기들은 하드웨어의 소형화로 인해 제한된 리소스를 가지는 경우가 많으므로, 다양한 보안 기능을 설치하는 것이 용이하지 않다는 한계가 있다. 따라서, 해커들이 사물 인터넷 기기를 해킹하는 것은 더욱 용이해질 수 있다.
한국등록특허 20-20488호, 2019년 9월 11일 공개(명칭: IoT 디바이스의 인터넷 접근 제어를 위한 장치 및 이를 위한 방법)
기재된 실시예는 제한된 리소스를 가지는 사물 인터넷 기기에 대한 악의적 공격을 방어하는 것을 목적으로 한다.
기재된 실시예는 사물 인터넷 기기 뿐만 아니라 인터넷을 통해 접속 가능한 서비스 서버에 대한 악의적 공격에 대한 보안 성능을 향상시키는 것을 목적으로 한다.
실시예에 따른 관리 서버는, 소정 서비스 제공 요청한 클라이언트에 대한 인증을 수행하는 클라이언트 인증부와, 소정 서비스를 제공하는 적어도 하나의 디바이스와 연결된 서비스 제어 게이트웨이로의 접속 정보를 기록한 토큰을 생성하여 인증된 클라이언트에게 전송하는 토큰 생성부와, 토큰 식별자 및 클라이언트가 접속 예정인 포트 번호를 포함하는 클라이언트 접근 리스트를 생성하여 서비스 제어 게이트웨이에 전송하는 클라이언트 접근 리스트 생성부를 포함할 수 있다.
소정 서비스를 제공하는 적어도 하나의 디바이스는, 사물 인터넷 기기, 서비스 제공 서버 및 데이터베이스 중 적어도 하나를 포함하는 것일 수 있다.
클라이언트 인증부는, 클라이언트 기기 및 사용자 정보를 기반으로 소정 서비스를 이용이 등록된 클라이언트인지에 대한 인증을 수행할 수 있다.
클라이언트 인증부는, 클라이언트 기기의 운영 시스템 상태, 프로그램 패치 상태 및 시큐어 부팅 여부 상태 중 적어도 하나를 포함하는 보안 상태를 확인할 수 있다.
서비스 제어 게이트웨이로의 접속 정보는, 서비스 제어 게이트웨이의 아이피 주소 및 클라이언트가 접속 예정인 포트 번호를 포함할 수 있다.
토큰 및 클라이언트 접근 리스트는, 각각 동일한 유효 기간을 포함할 수 있다.
실시예에 따른 서비스 제어 게이트웨이는, 소정 서비스를 제공하는 적어도 하나의 디바이스로의 접근을 개방 또는 차단하는 방화벽 모듈 및 방화벽 모듈에 대한 개방 또는 차단을 결정하여 제어 신호를 출력하는 방화벽 제어부를 포함하되, 방화벽 제어부는, 관리 서버로부터 토큰 식별자 및 클라이언트가 접속 예정인 포트 번호를 포함하는 클라이언트 접근 리스트를 수신됨에 따라 포트 번호에 해당하는 포트를 개방하고, 소정 서비스의 제공을 요청한 클라이언트가 전송한 토큰을 기반으로 방화벽 모듈의 개방 또는 차단을 결정할 수 있다.
방화벽 제어부는, 클라이언트가 전송한 토큰에 기록된 토큰 식별자와 클라이언트 접근 리스트에 포함된 토큰 식별자의 매칭 여부에 따라 개방된 포트의 연결 해제를 결정할 수 있다.
클라이언트 접근 리스트는, 클라이언트 정보인 클라이언트 기기 정보 및 클라이언트 기기의 사용자 정보를 포함하되, 방화벽 제어부는, 클라이언트 정보를 기반으로 클라이언트의 인증 여부에 따라 개방된 포트의 연결 해제를 결정할 수 있다.
방화벽 제어부는, 클라이언트가 접근 요청한 소정 서비스를 제공하는 디바이스를 이용할 권한이 있는지를 판단하여 방화벽 모듈의 개방 또는 차단을 결정할 수 있다.
토큰 및 클라이언트 접근 리스트는, 각각 동일한 유효 기간을 포함하되, 방화벽 제어부는, 포트가 개방된 시점부터 경과된 시간을 체크하여 유효 기간 만료 여부에 따라 포트의 연결 해제를 결정할 수 있다.
실시예에 따른 토큰 기반 계층적 접속 제어 방법은, 관리 서버가 소정 서비스 제공 요청한 클라이언트에 대한 인증을 수행하는 단계와, 관리 서버가 소정 서비스를 제공하는 적어도 하나의 디바이스와 연결된 서비스 제어 게이트웨이로의 접속 정보를 기록한 토큰을 생성하여 인증된 클라이언트에게 전송하는 단계와, 관리 서버가 토큰 식별자 및 클라이언트가 접속 예정인 포트 번호를 포함하는 클라이언트 접근 리스트를 생성하여 서비스 제어 게이트웨이에 전송하는 단계를 포함할 수 있다.
소정 서비스를 제공하는 적어도 하나의 디바이스는, 사물 인터넷 기기, 서비스 제공 서버 및 데이터베이스 중 적어도 하나를 포함하는 것일 수 있다.
인증을 수행하는 단계는, 클라이언트 기기 및 사용자 정보를 기반으로 소정 서비스를 이용이 등록된 클라이언트인지에 대한 인증을 수행할 수 있다.
서비스 제어 게이트웨이로의 접속 정보는, 서비스 제어 게이트웨이의 아이피 주소 및 클라이언트가 접속 예정인 포트 번호를 포함할 수 있다.
실시예에 따른 토큰 기반 계층적 접속 제어 방법은, 서비스 제어 게이트웨이가 관리 서버로부터 토큰 식별자 및 클라이언트가 접속 예정인 포트 번호를 포함하는 클라이언트 접근 리스트를 수신됨에 따라 포트 번호에 해당하는 포트를 개방하는 단계와, 소정 서비스의 제공을 요청한 클라이언트가 전송한 토큰을 기반으로 소정 서비스를 제공하는 적어도 하나의 디바이스와 연결된 방화벽의 개방 또는 차단을 결정하는 단계를 더 포함할 수 있다.
방화벽의 개방 또는 차단을 결정하는 단계는, 클라이언트가 전송한 토큰에 기록된 토큰 식별자와 클라이언트 접근 리스트에 포함된 토큰 식별자의 매칭 여부에 따라 개방된 포트의 연결 해제를 결정하는 단계를 포함할 수 있다.
클라이언트 접근 리스트는, 클라이언트 정보인 클라이언트 기기 정보 및 클라이언트 기기의 사용자 정보를 포함하되, 방화벽의 개방 또는 차단을 결정하는 단계는, 클라이언트 정보를 기반으로 클라이언트의 인증 여부에 따라 개방된 포트의 연결 해제를 결정하는 단계를 포함할 수 있다.
방화벽의 개방 또는 차단을 결정하는 단계는, 클라이언트가 접근 요청한 소정 서비스를 제공하는 디바이스를 이용할 권한이 있는지를 판단하여 방화벽 모듈의 개방 또는 차단을 결정하는 단계를 포함할 수 있다.
토큰 및 클라이언트 접근 리스트는, 각각 동일한 유효 기간을 포함하되, 방화벽의 개방 또는 차단을 결정하는 단계는, 포트가 개방된 시점부터 경과된 시간을 체크하여 유효 기간 만료 여부에 따라 포트의 연결 해제를 결정하는 단계를 포함할 수 있다.
기재된 실시예에 따르면, 제한된 리소스를 가지는 사물 인터넷 기기에 대한 악의적 공격을 방어할 수 있게 된다.
또한, 기재된 실시예에 따르면, 외부로부터의 접속이 계층적으로 접속되므로, 사물 인터넷 기기 뿐만 아니라 인터넷을 통해 접속 가능한 서비스 서버에 대한 악의적 공격에 대한 보안 성능을 강화시킬 수 있다. 즉, 사용자는 자신에게 부여된 토큰을 통해 접근 권한이 있는 기기 및 서비스에 대한 접속 정보을 알 수 있을 뿐, 전체 네트워크의 구조를 알 수 없으므로, 해킹하는 것이 용이하지 않다.
또한, 기재된 실시예에 따르면, 기기에 대한 인증과 기기 상태 정보까지 고려하여 접근 가능한 사물 인터넷 기기 또는 서비스의 종류가 결정되므로 보안성이 향상된다.
도 1은 실시예에 따른 토큰 기반 계층적 접속 제어가 구현되는 네트워크의 개략적인 구성도이다.
도 2는 실시예에 따른 네트워크에서 구성 요소들 간의 계층적 관계를 도시한 예시도이다.
도 3은 실시예에 따른 관리 서버의 상세 블록 구성도를 도시한 도면이다.
도 4는 실시예에 따른 서비스 제어 게이트웨이의 상세 블록 구성도를 도시한 도면이다.
도 5는 실시예에 따른 실시 예에 따른 토큰 기반 계층적 접속 제어 방법을 설명하기 위한 순서도이다.
도 6은 도 5에 도시된 S510 단계의 상세 단계들을 설명하기 위한 신호 흐름도이다.
도 7은 도 5에 도시된 S520 단계의 상세 단계들을 설명하기 위한 신호 흐름도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
비록 "제1" 또는 "제2" 등이 다양한 구성요소를 서술하기 위해서 사용되나, 이러한 구성요소는 상기와 같은 용어에 의해 제한되지 않는다. 상기와 같은 용어는 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용될 수 있다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있다.
본 명세서에서 사용된 용어는 실시예를 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 또는 "포함하는(comprising)"은 언급된 구성요소 또는 단계가 하나 이상의 다른 구성요소 또는 단계의 존재 또는 추가를 배제하지 않는다는 의미를 내포한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 해석될 수 있다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
이하에서는, 도 1 내지 도 7을 참조하여 실시예에 따른 토큰 기반 계층적 접속 제어 장치 및 방법이 상세히 설명된다.
도 1은 실시예에 따른 토큰 기반 계층적 접속 제어가 구현되는 네트워크의 개략적인 구성도이고, 도 2는 실시예에 따른 네트워크에서 구성 요소들 간의 계층적 관계를 도시한 예시도이다.
도 1을 참조하면, 네트워크 환경은 클라이언트(10), 서비스 제공 디바이스(20), 관리서버(100) 및 서비스 제어 게이트웨이(200)가 유/무선 통신망(미도시)을 통해 연동되는 형태로 구성될 수 있다.
실시예에 따라, 클라이언트(10)는 사용자(11) 및 사용자(11)가 이용하는 클라이언트 기기(12)를 포함하는 개념으로 해석될 수 있다. 예컨대, 네트워크가 스마트 오피스 사물 인터넷(IoT) 환경으로 구현된 경우, 사용자(11)는 스마트 오피스에서 근무하는 직원일 수 있고, 클라이언트 기기(12)는 스마트 오피스 IoT 환경에 존재하는 적어도 하나의 IoT 기기(23)에 접속할 수 있는 엔드 유저 단말 장치일 수 있다.
즉, 클라이언트 기기(12)는 랩탑 컴퓨터, 스마트폰 및 태플릿 PC 등을 포함할 수 있으며, 이 외에도 유/무선 통신망을 통해 데이터를 송/수신할 수 있는 모든 정보 통신 단말을 포함하는 것으로 해석될 수 있다.
클라이언트(10)는 관리서버(100)로부터 제공받은 토큰을 기반으로 서비스 제어 게이트웨이(200)를 통해 서비스 제공 디바이스(20)에 접근할 수 있다. 이러한 클라이언트(10)의 상세 동작에 대해서는 도 5 내지 도 7을 참조하여 후술하기로 한다.
서비스 제공 디바이스(20)는 인터넷 환경에서 계층적 접속 제어를 통해 보안 강화가 요구되는 인터넷 서비스를 제공할 수 있는 모든 기기를 포함할 수 있다.
이때, 서비스 제공 디바이스(20)는 특정 클라이언트(10)에게만 허가된 서비스를 제공하는 서비스 서버(21), 특정 클라이언트(10)에게만 접근 허가된 데이터베이스(22) 및 스마트 오피스 사물 인터넷(IoT) 환경에 구비된 IoT 기기(23) 중 적어도 하나일 수 있다. 예컨대, 클라이언트(10)가 인사팀 소속 직원이고, 인사팀 소속의 정당한 기기를 이용하더라도 재무팀에서 관리하는 서비스 혹은 데이터베이스에는 접근할 수 없도록 할 수 있다. 또한, 인사팀 소속 직원이 재무팀 소속의 프린터를 이용할 수 없도록 기기에 대한 접근 제어도 이루어진다. 이때, 서비스 서버(21) 및 데이터베이스(22)는 이해를 돕기 위해 물리적으로 분리된 것으로 도시되어 있으나, 본 발명은 이에 한정되지 않는다. 또한, 클라이언트(10)가 접근할 수 있는 복수의 서비스들 각각을 제공하는 서비스 서버(21)들이 물리적으로 분리되어 구현될 수도 있고, 하나의 서비스 서버(21)가 둘 이상의 서비스들을 제공할 수도 있다.
이때, IoT 기기(23)는 사물 인터넷 환경에 분산되어 존재하는 둘 이상의 기기들이 인터넷으로 연결되어 상호간에 정보를 주고받을 수 있는 기기일 수 있다. 예컨대, 스마트 오피스 IoT 환경이라면, IoT 기기(23)는 프린터, 스캐너, 조명 스위치 등을 포함하는 오피스 환경에 마련된 다양한 기기들일 수 있다. 여기서, 사물 인터넷 환경은 다양한 목적의 구현이 가능한데, 실시예는 특히 전력 및 수도 원격 검침 인프라, CCTV 관리 인프라, C-ITS 교통 관리 인프라, 스마트홈/빌딩/시티 등 사물 인터넷 기기들을 관리하는 주체가 명확한 환경에서 사물 인터넷 인프라 보호에 적용되는 것이 더 바람직할 수 있다.
관리 서버(10)는 컴퓨팅 연산을 수행하고, 네트워크를 통해 통신을 수행하는 장치라면 어떠한 장치라도 무방하다. 실시예에 따라 관리 서버(10)는 클라이언트(10) 및 서비스 제어 게이트웨이(200)와 연동하여, 사전에 클라이언트(10)에게 서비스 제어 게이트웨이(200)로의 접근 권한을 토큰 기반으로 부여하여, 서비스 제어 게이트웨이(200)가 클라이언트(10)로부터의 서비스 제공 디바이스(20)로의 접근 요청을 제어할 수 있도록 한다. 즉, 관리서버(100)는 전체 네트워크에 대한 전반적인 보안을 관리하기는 하지만, 전체 네트워크에 포함된 모든 구성 요소들에 대한 개별적인 접근 제어는 서비스 제어 게이트웨이(200)가 수행하도록 하여 계층적 접속 제어가 이루어지도록 한다.
이에 대해 도 2를 참조하면, 관리 서버(10)와 연결되는 복수개의 서비스 제어 게이트웨이들(200-1, 200-2)가 존재하고, 복수개의 서비스 제어 게이트웨이들(200-1, 200-2) 각각에는 복수개의 서비스 제공 디바이스들(T1, T2, T3, T4, T5)이 분배되어 연결되어 있다. 또한, 복수개의 서비스 제공 디바이스들(T1, T2, T3, T4, T5)은 서비스 속성에 따라 그룹핑될 수 있다.
여기서, 관리 서버(10)는 클라이언트가 접근 가능한 그룹에 대한 정보만을 알 수 있다. 따라서, 관리 서버(10)가 1차적으로 클라이언트가 접근 가능한 그룹을 관리하는 서비스 제어 게이트웨이들(200-1, 200-2) 중 하나로의 접속 권한을 부여하고, 서비스 제어 게이트웨이들(200-1, 200-2)은 2차적으로 그룹들 각각에 포함되는 복수개의 서비스 제공 디바이스들(T1, T2, T3, T4, T5) 중 적어도 하나에 접속되는 것을 제어할 수 있다. 예컨대, 도 2에 도시된 바와 같이, 관리 서버(10)가 클라이언트 1은 그룹 2 및 그룹 3에 접속 가능하고, 클라이언트 2는 그룹 1에 접속 가능함을 알고 있다고 가정할 경우, 클라이언트 1에는 서비스 제어 게이트웨이 1(200-1) 및 서비스 제어 게이트웨이 2(200-2)의 아이피 주소 정보와 접속 포트 번호를 알려주고, 클라이언트 2에는 서비스 제어 게이트웨이 1(200-1)의 아이피 주소 정보와 접속 포트 번호를 알려주게 된다. 그러면, 클라이언트 1 및 클라이언트 2는 제공된 아이피 주소 정보와 접속 포트 번호를 이용하여 접근 가능한 그룹을 관리하는 해당 서비스 제어 게이트웨이에 접속하여 클라이언트가 요청한 서비스 및 기기들로의 접속을 요구할 수 있게 된다.
즉, 계층적 접속 제어의 특징 중 하나가 관리 서버(100)는 서비스 제어 게이트웨이(200)가 관리하는 그룹의 정보 및 그룹에 대한 접근 정책, 예컨대, 서비스 제어 게이트웨이는 그룹 1, 그룹 2, 그룹3의 3개의 그룹을 운영하고, A 사용자가 B 기기를 이용할 때에는 그룹 1, 그룹2에 접근이 가능하다는 정책만을 알 수 있다. 그러나, 관리 서버(100)는 그룹 1에 속해 있는 사물인터넷 기기 혹은 서비스 구성에 대해서는 알 수 없다. 따라서, 관리 서버(100)가 모든 보안 접속을 제어 관리하는 것이 아니라, 이와 같이 네트워크 구성 요소들에 대한 접속 제어가 관리 서버(100) 및 서비스 제어 게이트웨이(200)에서 계층적으로 이루어져서 관리서버(100)에 가해지는 부하가 감소되도록 하여 빅 브라더가 되는 것을 막을 수 있다. 한편, 서비스 제어 게이트웨이(200)는 다수의 서비스 제공 디바이스들(20)과의 연결을 제어하는 네트워크 스위치 또는 액세스 포인트 장치에 구현될 수 있다.
도 3은 실시예에 따른 관리 서버의 상세 블록 구성도를 도시한 도면이다.
도 3을 참조하면, 관리 서버(100)는 클라이언트 인증부(110), 토큰 생성부(120) 및 클라이언트 접근 리스트 생성부(130)을 포함할 수 있다. 부가적으로, 클라이언트 정보 저장부(140) 및 서비스 제어 게이트웨이 정보 저장부(150)을 더 포함할 수 있다.
클라이언트 인증부(110)는 서비스 제공 디바이스(20)로의 접근을 요청한 클라이언트(10)에 대한 인증을 수행한다. 여기서, 클라이언트(10)는 사용자(11) 및 클라이언트 기기(12)를 모두 포함하는 개념으로, 클라이언트 인증부(110)는 사용자(11) 및 클라이언트 기기(12) 중 적어도 하나에 대한 인증을 수행할 수 있다. 이때, 클라이언트 인증부(110)는 클라이언트 기기(12)의 운영 시스템 상태, 프로그램 패치 상태 및 시큐어 부팅 여부 상태 중 적어도 하나를 포함하는 보안 상태를 확인할 수 있다. 이와 같이, 사용자(11)에 대한 인증뿐만 아니라, 클라이언트 기기(12)에 대한 인증과 기기 상태 정보까지 고려하여 접근 가능한 사물인터넷 기기(20)의 종류가 결정되므로 보안성이 향상될 수 있다.
토큰 생성부(120)는 서비스 제공 디바이스(20)와 연결된 서비스 제어 게이트웨이로(200)의 접속 정보를 기록한 토큰을 생성하여 인증된 클라이언트(10)에게 전송한다. 이때, 서비스 제어 게이트웨이로의 접속 정보는 서비스 제어 게이트웨이의 아이피 주소 및 클라이언트가 접속 예정인 포트 번호를 포함할 수 있다. <표 1>에는 토큰의 일 예를 나타내고 있다.
● 토큰 식별자(ID)
● 유효기간(Life time)
● 서비스 제어 게이트웨이 1의 아이피(IP)-포트 번호(Port Number)
● 서비스 제어 게이트웨이 2의 아이피(IP)-포트 번호(Port Number)
● 서비스 제어 게이트웨이 7의 아이피(IP)-포트 번호(Port Number)
● 무결성 정보
<표 1>을 참조하면, 무결성 정보는 토큰이 전송 과정에서의 수정 여부를 체크 가능하도록 하는 것으로, 토큰에 포함된 다른 정보들에 해쉬값이 기록될 수 있다. 또한, 네트워크에서 메시지 패킷을 가로채서 재전송하는 재전송 공격(Replay Attack)을 막기 위하여 랜덤 넘버를 토큰과 함께 전송될 수 있다.클라이언트 접근 리스트 생성부(130)는 토큰 식별자 및 클라이언트가 접속 예정인 포트 번호를 포함하는 클라이언트 접근 리스트를 생성하여 서비스 제어 게이트웨이(200)에 전송한다. <표 2>에는 클라이언트 접근 리스트의 일 예를 나타내고 있다.
● 토큰 식별자(ID) 1-사용자/ 기기정보-포트 번호(Port Number)-유효기간(Life time)
● 토큰 식별자(ID) 2-사용자/ 기기정보-포트 번호(Port Number)-유효기간(Life time)
실시예에 따라, 토큰 및 클라이언트 접근 리스트에 포함된 각각의 유효 기간(Life time)은 동일할 수 있다. 즉, 유효 기간 동안만 서비스 제어 게이트웨이(200)의 포트가 개방되므로, 해당 포트로 디도스(DDoS) 공격을 포함하는 악의적 공격이 어려워지게 된다.
이때, 접속 정책(Policy)에 따라 해당 포트의 유효기간이 조정될 수도 있다.
또한, 관리 서버(100)와 서비스 제어 게이트웨이(200) 간에 사전 협의에 의해서 해당 클라이언트(10)가 서비스 이용을 위해서 접근 가능한 포트 번호는 주기적으로 변경될 수 있다.
즉, 관리 서버(100)가 클라이언트(10)에게 서비스 제어 게이트웨이(200)에 대한 아이피 주소 및 포트 번호를 토큰에 기록하여 제공하는데, 관리 서버(100)와 서비스 제어 게이트웨이(200) 간에 사전 협의에 의해서 해당 클라이언트(10)가 서비스 이용을 위해서 접근하는 포트 번호는 주기적으로 변경이 가능하기 때문에, 공격자가 이전에 획득한 포트 번호로 서비스 제어 게이트웨이(200)에 접근 하더라도 유효 기간이 지난 경우에는 그 포트 번호가 변경되므로 동일 서비스 제어 게이트웨이(200)에 접속이 불가능하다는 이점이 있다.
예컨대, 서비스 제어 게이트웨이(200)가 제공하는 A 서비스를 이용하기 위해서 클라이언트(10)가 접근할 때, 클라이언트(10)는 유효 기간 내에서 1번 포트를 이용하여 서비스 제어 게이트웨이(200)에 접근하여 A 서비스를 이용하더라도, 동일한 클라이언트(10)는 유효 기간이 경과된 시점에는 동일한 1번 포트를 이용하여 A 서비스를 이용할 수 없다. 즉, 클라이언트(10)는 유효 기간이 경과된 시점에는 동일한 1번 포트가 아닌 상이한 다른 포트, 예컨대, 유효 기간이 다시 설정된 15번 포트를 통해서 A서비스를 이용할 수 있다. 즉, 클라이언트(10)가 동일 서비스를 이용하더라도, 서비스 제어 게이트웨이(200)에 접근하는 시기에 따라 클라이언트(10)가 접근 가능한 서비스 제어 게이트웨이(200)의 포트 번호가 상이할 수 있다.
클라이언트 정보 저장부(140)는 클라이언트(10)의 정보, 즉 사용자(11)의 정보 및 클라이언트 기기(12)에 대한 정보를 저장해두어, 클라이언트 인증부(110)에 의해 검색될 수 있다.
서비스 제어 게이트웨이 정보 저장부(150)는 서비스 제어 게이트웨이(200)에 대한 정보를 미리 등록해 둔다. 즉, 서비스 제어 게이트웨이(200)의 아이피 주소, 포트 넘버 및 서비스 제어 게이트웨이(200)에 연결된 서비스 제공 디바이스 정보 또는 서비스 그룹 정보 등을 저장해두어, 토큰 생성부(120) 및 클라이언트 접근 리스트 생성부(130)에 의해 검색될 수 있다.
도 4는 실시예에 따른 서비스 제어 게이트웨이의 상세 블록 구성도를 도시한 도면이다.
도 4를 참조하면, 서비스 제어 게이트웨이(200)는 방화벽 모듈(210) 및 방화벽 제어부(220)를 포함할 수 있다.
방화벽 모듈(210)은 서비스 제공 디바이스(20)로의 접근을 개방 또는 차단한다. 방화벽 제어부(220)는 방화벽 모듈(210)에 대한 개방 또는 차단을 결정하여 제어 신호를 방화벽 모듈(210)에 출력한다.
이때, 방화벽 제어부(220)는 관리 서버(100)로부터 토큰 식별자 및 클라이언트가 접속 예정인 포트 번호를 포함하는 클라이언트 접근 리스트를 수신됨에 따라 포트 번호에 해당하는 포트를 개방하여 클라이언트(10)의 접속을 대기한다. 여기서, 방화벽 제어부(220)는 클라이언트 접근 리스트를 수신하기 이전에는 서비스 제어 게이트웨이(200)의 모든 포트를 차단한 상태로 둔다.
그리고, 방화벽 제어부(220)는 서비스 제공 디바이스(20)로의 접근 요청한 클라이언트(10)가 전송한 토큰을 기반으로 방화벽 모듈(210)의 개방 또는 차단을 결정한다. 즉, 방화벽의 개방 또는 차단이 특정한 고정 룰에 의해 결정되는 것이 아니라, 방화벽 제어부(220)에 의해 동적으로 제어되는 것이다.
이를 위해, 방화벽 제어부(220)는 상세하게는 토큰 인증부(221), 서비스 권한 확인부(222) 및 방화벽 개폐 결정부(223)를 포함할 수 있다.
토큰 인증부(221)는 클라이언트(10)가 전송한 토큰에 기록된 토큰 식별자와 클라이언트 접근 리스트에 포함된 토큰 식별자의 매칭 여부에 따라 개방된 포트의 연결 해제를 결정한다. 여기서, 클라이언트 접근 리스트는 클라이언트 정보인 클라이언트 기기 정보 및 클라이언트 기기의 사용자 정보를 포함하므로, 토큰 인증부(221)는 클라이언트 정보를 기반으로 서비스 제공 디바이스로의 접근 요청한 클라이언트의 인증 여부에 따라 개방된 포트의 연결 해제를 결정할 수 있다. 예컨대, 오피스 3층에서 근무하는 직원의 경우, 등록된 노트북 만을 이용하여 접속 가능하도록 등록된 서비스에만 접근할 수 있도록 관련 정보를 받을 수 있다.
서비스 권한 확인부(222)는 클라이언트(10)가 접근 요청한 서비스 제공 디바이스를 이용할 권한이 있는지를 판단한다.
방화벽 개폐 결정부(223)는 서비스 권한 확인부(222)에 의해 확인된 권한 존재 여부에 따라, 방화벽 모듈(210)에 개폐 제어 신호를 출력한다. 이를 통해 해킹을 감지한 경우 바로 해당 네트워크 접속을 끊을 수 있도록 방화벽 규칙을 변경함으로써, 사물 인터넷 네트워크를 해킹으로부터 보호할 수 있다.
도 5는 실시 예에 따른 토큰 기반 계층적 접속 제어 방법을 설명하기 위한 순서도이고, 도 6은 도 5에 도시된 S510 단계의 상세 단계들을 설명하기 위한 신호 흐름도이고, 도 7은 도 5에 도시된 S520 단계의 상세 단계들을 설명하기 위한 신호 흐름도이다.
도 5를 참조하면, 토큰 기반 계층적 접속 제어 방법은 크게 관리 서버(100)에 의해 토큰 기반으로 클라이언트의 서비스 제어 게이트웨이로의 접속 권한을 부여하는 단계(S510)와, 서비스 제어 게이트웨이(200)에 의해 클라이언트의 토큰 기반 서비스 접속 요청에 따른 방화벽 개폐를 제어하는 단계(S520)를 포함할 수 있다.
우선, 도 6을 참조하면, 관리 서버(100)는 서비스 제공 디바이스(20)로의 접근을 요청(S610)한 클라이언트(10)에 대한 인증을 수행한다(S620). 여기서, 클라이언트(10)는 사용자(11) 및 클라이언트 기기(12)를 모두 포함하는 개념으로, 클라이언트 인증부(110)는 사용자(11) 및 클라이언트 기기(12) 중 적어도 하나에 대한 인증을 수행할 수 있다. S620에서 클라이언트 기기(12)의 운영 시스템 상태, 프로그램 패치 상태 및 시큐어 부팅 여부 상태 중 적어도 하나를 포함하는 보안 상태가 확인될 수 있다. 이와 같이, 사용자(11)에 대한 인증뿐만 아니라, 클라이언트 기기(12)에 대한 인증과 기기 상태 정보까지 고려하여 접근 가능한 서비스 제공 디바이스(20)의 종류가 결정되므로 보안성이 향상될 수 있다.
관리 서버(100)는 클라이언트(10)가 등록된 서비스 접속 정보를 검색(S630)하여, 요청된 서비스를 제공하는 장치, 예컨대 서비스 제공 디바이스(20)의 접속을 제어하는 서비스 제어 게이트웨이로(200)의 접속 정보를 기록한 토큰을 생성하여 인증된 클라이언트(10)에게 전송한다(S640). 이때, 서비스 제어 게이트웨이로의 접속 정보는 서비스 제어 게이트웨이의 아이피 주소 및 클라이언트가 접속 예정인 포트 번호를 포함할 수 있다. 또한 전술한 <표 1>에서와 같이, 토큰이 전송 과정에서의 수정 여부를 체크 가능하도록 하는 무결성 정보를 포함할 수 있다. 또한, 네트워크에서 메시지 패킷을 가로채서 재전송하는 재전송 공격(Replay Attack)을 막기 위하여 랜덤 넘버가 토큰과 함께 전송될 수 있다.
한편, 관리 서버(100)는 토큰 식별자 및 클라이언트가 접속 예정인 포트 번호를 포함하는 클라이언트 접근 리스트를 생성하여 서비스 제어 게이트웨이(200)에 전송한다(S650). 실시예에 따라, 토큰 및 클라이언트 접근 리스트에는 각각의 유효 기간(Life time)이 기록될 수 있는데, 각각의 유효 기간은 동일할 수 있다. 이때, 접속 정책(Policy)에 따라 유효 기간이 조정될 수도 있다.
도 7을 참조하면, 서비스 제어 게이트웨이(200)는 전술한 S650에서 관리 서버(100)로부터 토큰 식별자 및 클라이언트가 접속 예정인 포트 번호를 포함하는 클라이언트 접근 리스트를 수신함에 따라, 포트 번호에 해당하는 포트를 개방하여 클라이언트(10)의 접속을 대기한다(S705). 그리고, 도면에는 도시되어 있지 않지만, 서비스 제어 게이트웨이(200)는 클라이언트 접근 리스트를 수신하기 이전에는 서비스 제어 게이트웨이(200)의 모든 포트를 차단한 상태로 둔다.
서비스 제어 게이트웨이(200)는 포트가 개방된 시점부터 경과된 시간을 체크하여 유효 기간 만료 여부에 따라 포트의 연결 해제를 결정한다(S710).
서비스 제어 게이트웨이(200)는 유효 기간 만료되기 전에 클라이언트(10)로부터 토큰과 함께 서비스 접속 요청(S715)됨에 따라, 기록된 토큰 식별자와 클라이언트 접근 리스트에 포함된 토큰 식별자의 매칭 여부에 따라 개방된 포트의 연결 해제를 결정한다(S720). 여기서, 클라이언트 접근 리스트는 클라이언트 정보인 클라이언트 기기 정보 및 클라이언트 기기의 사용자 정보를 포함하므로, 이를 기반으로 서비스 제공 디바이스로의 접근 요청한 클라이언트의 인증 여부에 따라 개방된 포트의 연결 해제를 결정할 수 있다.
서비스 제어 게이트웨이(200)는 클라이언트 인증 결과를 클라이언트(10)에 전송(S725)하고, 그에 대한 응답으로 클라이언트(10)로부터 서비스 요청(S730)됨에 따라, 클라이언트(10)가 접근 요청한 서비스 제공 디바이스를 이용할 권한이 있는지를 판단한다(S735).
서비스 제어 게이트웨이(200)는 S735에서 확인된 서비스 권한 존재 여부에 따라 방화벽 개폐를 제어하는데, S735에서 클라이언트(10)가 요청한 서비스에 대한 권한이 있는 것으로 판단될 경우, 방화벽을 개방(S740)한다. 따라서, 클라이언트(10) 및 서비스 제공 디바이스(20)가 접속함에 따른 서비스 제공이 수행될 수 있다(S745~S755). 그런데, S745~S755는 유효 기간이 만료되기 이전에만 수행될 수 있고, 유효 기간이 만료된 경우 방화벽 및 포트 연결이 해제될 수 있다(S760).
이상에서 설명된 시스템 또는 장치는 하드웨어 구성요소, 또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 어플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록매체에 저장될 수 있다.
이상에서 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
10 : 클라이언트
11 : 사용자
20 : 서비스 제공 디바이스
12 : 클라이언트 기기
100 : 관리 서버
110 : 클라이언트 인증부
120 : 토큰 생성부
130 : 클라이언트 접근 리스트 생성부
200 : 서비스 제어 게이트웨이
210 : 방화벽 모듈
220 : 방화벽 제어부
221 : 토큰 인증부
222 : 서비스 권한 확인부
223 : 방화벽 개폐 결정부

Claims (20)

  1. 소정 서비스 제공 요청한 클라이언트에 대한 인증을 수행하는 클라이언트 인증부;
    소정 서비스를 제공하는 적어도 하나의 디바이스와 연결된 서비스 제어 게이트웨이로의 접속 정보를 기록한 토큰을 생성하여 인증된 클라이언트에게 전송하는 토큰 생성부; 및
    토큰 식별자 및 클라이언트가 접속 예정인 포트 번호를 포함하는 클라이언트 접근 리스트를 생성하여 서비스 제어 게이트웨이에 전송하는 클라이언트 접근 리스트 생성부를 포함하되,
    클라이언트 인증부는,
    클라이언트 기기의 운영 시스템 상태, 프로그램 패치 상태 및 시큐어 부팅 여부 상태 중 적어도 하나를 포함하는 보안 상태를 확인하는, 관리 서버.
  2. 제1 항에 있어서, 소정 서비스를 제공하는 적어도 하나의 디바이스는,
    사물 인터넷 기기, 서비스 제공 서버 및 데이터베이스 중 적어도 하나를 포함하는 것인 관리 서버.
  3. 제1 항에 있어서, 클라이언트 인증부는,
    클라이언트 기기 및 사용자 정보를 기반으로 소정 서비스를 이용이 등록된 클라이언트인지에 대한 인증을 수행하는 관리 서버.
  4. 제1 항에 있어서, 디바이스는,
    복수 개로, 서비스 속성에 따라 그룹핑되고,
    서비스 제어 게이트웨이는,
    복수 개로, 각각은 그룹핑된 복수의 디바이스들의 적어도 하나의 그룹에 연결되되,
    서비스 제어 게이트웨이로의 접속 정보는,
    소정 서비스를 제공받기 위해 클라이언트가 접근 가능한 적어도 하나의 그룹 각각과 연결된 서비스 제어 게이트웨이의 접속 정보인, 관리 서버.
  5. 제1 항에 있어서, 서비스 제어 게이트웨이로의 접속 정보는,
    서비스 제어 게이트웨이의 아이피 주소 및 클라이언트가 접속 예정인 포트 번호를 포함하는 관리 서버.
  6. 제1 항에 있어서, 토큰 및 클라이언트 접근 리스트는,
    각각 동일한 유효 기간을 포함하는 관리 서버.
  7. 소정 서비스를 제공하는 적어도 하나의 디바이스로의 접근을 개방 또는 차단하는 방화벽 모듈; 및
    방화벽 모듈에 대한 개방 또는 차단을 결정하여 제어 신호를 출력하는 방화벽 제어부를 포함하되,
    방화벽 제어부는,
    관리 서버로부터 토큰 식별자 및 클라이언트가 접속 예정인 포트 번호를 포함하는 클라이언트 접근 리스트를 수신됨에 따라 포트 번호에 해당하는 포트를 개방하고, 소정 서비스의 제공을 요청한 클라이언트가 전송한 토큰을 기반으로 방화벽 모듈의 개방 또는 차단을 결정하되,
    클라이언트 접근 리스트에 포함된 클라이언트는,
    클라이언트 기기의 운영 시스템 상태, 프로그램 패치 상태 및 시큐어 부팅 여부 상태 중 적어도 하나를 포함하는 보안 상태가 확인된 것인, 서비스 제어 게이트웨이.
  8. 제7 항에 있어서, 방화벽 제어부는,
    클라이언트가 전송한 토큰에 기록된 토큰 식별자와 클라이언트 접근 리스트에 포함된 토큰 식별자의 매칭 여부에 따라 개방된 포트의 연결 해제를 결정하는 서비스 제어 게이트웨이.
  9. 제7 항에 있어서, 클라이언트 접근 리스트는,
    클라이언트 정보인 클라이언트 기기 정보 및 클라이언트 기기의 사용자 정보를 포함하되,
    방화벽 제어부는,
    클라이언트 정보를 기반으로 클라이언트의 인증 여부에 따라 개방된 포트의 연결 해제를 결정하는 서비스 제어 게이트웨이.
  10. 제7 항에 있어서, 방화벽 제어부는,
    클라이언트가 접근 요청한 소정 서비스를 제공하는 디바이스를 이용할 권한이 있는지를 판단하여 방화벽 모듈의 개방 또는 차단을 결정하는 서비스 제어 게이트웨이.
  11. 제7 항에 있어서, 토큰 및 클라이언트 접근 리스트는,
    각각 동일한 유효 기간을 포함하되,
    방화벽 제어부는, 포트가 개방된 시점부터 경과된 시간을 체크하여 유효 기간 만료 여부에 따라 포트의 연결 해제를 결정하는 서비스 제어 게이트웨이.
  12. 관리 서버가 소정 서비스 제공 요청한 클라이언트에 대한 인증을 수행하는 단계;
    관리 서버가 소정 서비스를 제공하는 적어도 하나의 디바이스와 연결된 서비스 제어 게이트웨이로의 접속 정보를 기록한 토큰을 생성하여 인증된 클라이언트에게 전송하는 단계; 및
    관리 서버가 토큰 식별자 및 클라이언트가 접속 예정인 포트 번호를 포함하는 클라이언트 접근 리스트를 생성하여 서비스 제어 게이트웨이에 전송하는 단계를 포함하되,
    인증을 수행하는 단계는,
    클라이언트 기기의 운영 시스템 상태, 프로그램 패치 상태 및 시큐어 부팅 여부 상태 중 적어도 하나를 포함하는 보안 상태를 확인하는, 토큰 기반 계층적 접속 제어 방법.
  13. 제12 항에 있어서, 소정 서비스를 제공하는 적어도 하나의 디바이스는,
    사물 인터넷 기기, 서비스 제공 서버 및 데이터베이스 중 적어도 하나를 포함하는 것인 토큰 기반 계층적 접속 제어 방법.
  14. 제12 항에 있어서, 인증을 수행하는 단계는,
    클라이언트 기기 및 사용자 정보를 기반으로 소정 서비스를 이용이 등록된 클라이언트인지에 대한 인증을 수행하는 토큰 기반 계층적 접속 제어 방법.
  15. 제12 항에 있어서, 서비스 제어 게이트웨이로의 접속 정보는,
    서비스 제어 게이트웨이의 아이피 주소 및 클라이언트가 접속 예정인 포트 번호를 포함하는 토큰 기반 계층적 접속 제어 방법.
  16. 제12 항에 있어서,
    서비스 제어 게이트웨이가 관리 서버로부터 토큰 식별자 및 클라이언트가 접속 예정인 포트 번호를 포함하는 클라이언트 접근 리스트를 수신됨에 따라 포트 번호에 해당하는 포트를 개방하는 단계; 및
    소정 서비스의 제공을 요청한 클라이언트가 전송한 토큰을 기반으로 소정 서비스를 제공하는 적어도 하나의 디바이스와 연결된 방화벽의 개방 또는 차단을 결정하는 단계를 더 포함하는 토큰 기반 계층적 접속 제어 방법.
  17. 제16 항에 있어서, 방화벽의 개방 또는 차단을 결정하는 단계는,
    클라이언트가 전송한 토큰에 기록된 토큰 식별자와 클라이언트 접근 리스트에 포함된 토큰 식별자의 매칭 여부에 따라 개방된 포트의 연결 해제를 결정하는 단계를 포함하는 토큰 기반 계층적 접속 제어 방법.
  18. 제16 항에 있어서, 클라이언트 접근 리스트는,
    클라이언트 정보인 클라이언트 기기 정보 및 클라이언트 기기의 사용자 정보를 포함하되,
    방화벽의 개방 또는 차단을 결정하는 단계는,
    클라이언트 정보를 기반으로 클라이언트의 인증 여부에 따라 개방된 포트의 연결 해제를 결정하는 단계를 포함하는 토큰 기반 계층적 접속 제어 방법.
  19. 제16 항에 있어서, 방화벽의 개방 또는 차단을 결정하는 단계는,
    클라이언트가 접근 요청한 소정 서비스를 제공하는 디바이스를 이용할 권한이 있는지를 판단하여 방화벽 모듈의 개방 또는 차단을 결정하는 단계를 포함하는 토큰 기반 계층적 접속 제어 방법.
  20. 제16 항에 있어서, 토큰 및 클라이언트 접근 리스트는,
    각각 동일한 유효 기간을 포함하되,
    방화벽의 개방 또는 차단을 결정하는 단계는,
    포트가 개방된 시점부터 경과된 시간을 체크하여 유효 기간 만료 여부에 따라 포트의 연결 해제를 결정하는 단계를 포함하는 토큰 기반 계층적 접속 제어 방법.
KR1020200041475A 2020-04-06 2020-04-06 토큰 기반 계층적 접속 제어 장치 및 방법 KR102556976B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200041475A KR102556976B1 (ko) 2020-04-06 2020-04-06 토큰 기반 계층적 접속 제어 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200041475A KR102556976B1 (ko) 2020-04-06 2020-04-06 토큰 기반 계층적 접속 제어 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20210123811A KR20210123811A (ko) 2021-10-14
KR102556976B1 true KR102556976B1 (ko) 2023-07-20

Family

ID=78151418

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200041475A KR102556976B1 (ko) 2020-04-06 2020-04-06 토큰 기반 계층적 접속 제어 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102556976B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102627397B1 (ko) * 2021-12-28 2024-01-19 주식회사 어썸블리 동적 포트를 이용한 역방향 네트워크 접속 시스템

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101679578B1 (ko) 2015-05-27 2016-11-25 주식회사 윈스 IoT 보안을 위한 제어 서비스 제공 장치 및 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100891713B1 (ko) * 2007-05-14 2009-04-03 (주)이지서티 Ip 주소 투명화를 위한 게이트웨이 및 방법과 컴퓨터프로그램 기록매체
KR101811121B1 (ko) * 2016-01-13 2018-01-25 민정곤 인증된 릴레이 서버를 통한 서버 보호 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101679578B1 (ko) 2015-05-27 2016-11-25 주식회사 윈스 IoT 보안을 위한 제어 서비스 제공 장치 및 방법

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
- 인용발명 1 : "OAuth기반 IoT Network 인증기법"(2015년 한국컴퓨터종합학술대회 논문집)
- 인용발명 2 : 공개특허공보 제10-2008-0100619호(2008.11.19.)

Also Published As

Publication number Publication date
KR20210123811A (ko) 2021-10-14

Similar Documents

Publication Publication Date Title
Karmakar et al. SDN-enabled secure IoT architecture
US8971537B2 (en) Access control protocol for embedded devices
US20160366183A1 (en) System, Apparatus And Method For Access Control List Processing In A Constrained Environment
US9288193B1 (en) Authenticating cloud services
Sumitra et al. A survey of cloud authentication attacks and solution approaches
CN110324287A (zh) 接入认证方法、装置及服务器
US10425419B2 (en) Systems and methods for providing software defined network based dynamic access control in a cloud
Islam et al. An analysis of cybersecurity attacks against internet of things and security solutions
EP1760988A1 (en) Multi-level and multi-factor security credentials management for network element authentication
Kim et al. Trustworthy gateway system providing IoT trust domain of smart home
Ahsan et al. IoT devices, user authentication, and data management in a secure, validated manner through the blockchain system
US11784993B2 (en) Cross site request forgery (CSRF) protection for web browsers
KR102556976B1 (ko) 토큰 기반 계층적 접속 제어 장치 및 방법
US20190052623A1 (en) Authenticating Applications to a Network Service
Kim et al. OTP-Based Software-Defined Cloud Architecture for Secure Dynamic Routing.
Ferretti et al. Authorization transparency for accountable access to IoT services
KR20190102432A (ko) 이종 사물 인터넷 서비스 플랫폼 간의 보안 상호운용성 프레임워크 및 그 장치
KR101404537B1 (ko) 패스워드 자동 변경을 통한 서버 접근 통제 시스템 및 그 방법
KR102345265B1 (ko) 네트워크시스템 및 네트워크시스템에서 수행하는 네트워크 제어 방법
US20220006791A1 (en) Secured Node Authentication and Access Control Model for IoT Smart City
CN115486030A (zh) 流氓证书检测
Barriga A et al. Security over smart home automation systems: A survey
Shapaval et al. Towards the Reference model for security risk management in internet of things
Oh et al. Security interoperability in heterogeneous IoT platforms: threat model of the interoperable OAuth 2.0 framework
KR102362320B1 (ko) 능동형 네트워크 보안용 주소변이 접속 시스템 및 방법

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right