KR20150076529A - 제어 정책 기반의 어플리케이션 제어 방법과 이를 수행하는 모바일 단말 - Google Patents
제어 정책 기반의 어플리케이션 제어 방법과 이를 수행하는 모바일 단말 Download PDFInfo
- Publication number
- KR20150076529A KR20150076529A KR1020130164828A KR20130164828A KR20150076529A KR 20150076529 A KR20150076529 A KR 20150076529A KR 1020130164828 A KR1020130164828 A KR 1020130164828A KR 20130164828 A KR20130164828 A KR 20130164828A KR 20150076529 A KR20150076529 A KR 20150076529A
- Authority
- KR
- South Korea
- Prior art keywords
- application
- user
- control policy
- mobile terminal
- access
- Prior art date
Links
Images
Classifications
-
- 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
-
- 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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Telephone Function (AREA)
Abstract
제어 정책 기반의 어플리케이션 제어 방법은 모바일 단말에서 수행된다. 제어 정책 기반의 어플리케이션 제어 방법은 어플리케이션에서 모바일 단말 내 접근 객체에 대한 사용 여부를 정의한 제어 정책을 포함하는 설정 파일을 수신하여 파싱하는 단계; 상기 파싱된 설정 파일의 상기 제어 정책을 저장하는 단계; 상기 어플리케이션에서 접근 객체에 대한 접근이 발생하면, 해당 제어 정책을 기초로 사용자 승인 여부를 결정하는 단계; 및 상기 사용자 승인 여부에 따라 상기 어플리케이션을 제어하는 단계를 포함한다. 이를 통해, 모바일 단말 자체적으로 어플리케이션에서 모바일 단말의 하드웨어와 사용자 정보를 사용하는 기능에 대해 제어가 가능하다.
Description
본 발명은 제어 정책 기반의 어플리케이션 제어 기술에 관한 것으로, 보다 상세하게는, 모바일 단말의 하드웨어 기능과 사용자 정보에 대한 모바일 어플리케이션의 사용을 제어하기 위한 제어 정책 기반의 어플리케이션 제어 기술에 관한 것이다.
모바일 단말에서 실행되는 어플리케이션은 모바일 단말이 가지고 있는 고유의 하드웨어 기능과 사용자가 획득 또는 입력한 사용자 정보를 사용하여 실행하는 기능을 이용한다. 보다 구체적으로, 어플리케이션은 모바일 단말의 센서, 카메라 등의 하드웨어 기능을 사용하거나, 또는 사용자의 위치 정보, 주소록 등의 개인 정보를 이용해 동작할 수 있다. 예를 들면, 카메라 어플리케이션은 촬영을 위해 모바일 단말의 카메라 기능을 이용하며, 이미지 뷰어 어플리케이션은 촬영된 이미지를 확인하기 위한 모바일 단말에 저장된 이미지 정보를 이용한다.
이러한 특정 하드웨어 기능 또는 사용자 정보를 사용하는 모바일 어플리케이션이 어플리케이션 스토어로부터 모바일 단말에 다운로드되는 경우, 모바일 단말은 해당 어플리케이션이 사용하는 하드웨어 기능 등에 대한 항목을 명시하여 사용자에게 알려주고 있다. 그러나, 해당 어플리케이션이 실행되는 경우, 모바일 단말은 해당 어플리케이션이 특정 하드웨어 기능 등을 사용하는 것에 대해 사용자에게 사용자에게 알려주지 못한다. 이러한 경우 사용자가 개인 정보보호를 위해 모바일 어플리케이션이 특정 정보를 접근하는 것을 방지하거나 또는 특정 기능 동작을 미연에 방지하는 것은 불가능하다.
또한, 모바일 단말에서 사용되는 운영체제(Operating System, OS)는 상호 상이한 방식으로 어플리케이션 실행시 사용하는 기능 정보를 사용자에게 알려준다. 예를 들어, 안드로이드의 경우, 모바일 단말의 정보(Camera, 주소록 등)에 접근하는 API를 사용하기 위해서는 어플리케이션의 "AndroidManifest.xml" 파일에 해당 정보를 접근한다는 내용인 "Permission" 을 기술해야 하며 해당 "Permission" 이 기술된 경우 "Google Play" 에서 어플리케이션을 다운로드 할 때 해당 어플리케이션이 사용하는 단말의 정보가 무엇인지 출력된다. 따라서, 단말에 어플리케이션을 설치하는 시점에만 사용되는 기능의 정보를 알 수 있고, 어플리케이션이 실행되거나 종료되는 경우에는 정보를 알 수 없다.
반면, iOS의 경우, 단말의 정보(Camera, 주소록 등)에 접근하는 API를 사용하는 데는 제약이 없으나, 어플리케이션 최초 구동시 또는 개인정보 reset 후 단말의 정보를 접근하는 API가 호출될 때 OS에서 해당 기능을 접근 허용여부를 사용자로부터 입력 받아 API 실행여부를 결정한다. 또한, iOS의 경우 접근 허용여부를 사용자로부터 입력 받는 단말의 기능이 OS 버전별로 상이하며, 가장 최근 OS의 경우 주소록, 갤러리(사진), LBS(위치정보), PUSH의 기능만 사용자 입력을 받는다. 어플리케이션 재 구동 시 이전에 입력한 사용자 정보가 있는 경우 동일한 기능의 API를 실행할 때는 입력된 정보를 바탕으로 실행여부를 결정한다.
한국등록특허 제10-0120674호(2012.11.26.등록)는 보안 등급에 따라 어플리케이션의 실행을 제어하는 모바일 단말기 및 이의 구현방법에 관한 것으로, 저장부, 감시모듈, 평가모듈 및 제어모듈을 포함하여 구성된다. 여기에서, 저장부는 보안 등급별로 실행 가능한 어플리케이션이 분류된 각각의 리스트를 저장하고, 감시모듈은 보안 상황을 감시하며, 평가모듈은 감시를 통해 보안등급을 평가한다. 또한, 제어모듈은 평가에 의해 보안 등급이 설정되면, 이에 해당하는 리스트에 포함된 어플리케이션만 실행 가능하도록 제어한다. 이를 통해, 모바일 단말기가 보안 상황을 감시하여 가변적인 보안 상황의 변동에 따라 적절하게 보안 등급을 조정하고, 이에 해당하는 리스트 1, 2, 3 중 하나에 포함된 어플리케이션만 실행되도록 제어함으로써, 즉, 보안 상황에 부적절한 어플리케이션의 실행을 강제로 종료시키거나, 보안에 취약한 어플리케이션에 대한 삭제를 권고하는 메시지를 제공함으로써, 외부 디바이스를 통해 개인정보 및 중요정보(주소록, 통화기록, 신용카드 등)가 유출되는 것을 차단하는 등 보안성이 향상되는 효과를 개시하고 있다.
한국등록특허 제10-1295508호(2013.08.05.등록)는 스마트 단말기에서 어플리케이션을 실행하기 위한 제어 장치 및 그 방법에 관한 것으로, 어플리케이션 서비스 요청 이벤트 발생에 따라 상기 어플리케이션의 기능을 파싱하고, 파싱된 상기 어플리케이션의 기능에 따른 보안키를 할당하고, 보안키가 할당된 이벤트 패킷을 모뎀처리부로 출력하는 어플리케이션 처리부와 상기 어플리케이션 처리부로부터 이벤트 패킷을 수신하고, 수신된 이벤트 패킷으로부터 보안키를 추출하고 추출된 보안키를 기초로 해당 어플리케이션의 서비스를 실행하는 모뎀 처리부를 포함한다. 이를 통해, 사용자가 의도하지 않는 어플리케이션의 실행을 제한함으로써 사용자가 의도하지 않은 과금 행위 및 개인정보 수집행위를 차단할 수 있는 효과를 개시하고 있다.
한국공개특허 제2011-0061296호(2011.06.09.공개)는 휴대용 컴퓨팅 단말의 시스템 자원 보안 장치에 관한 것으로, 시스템 자원에 대한 프로세스의 접근을 감지하는 자원접근 감시부, 시스템 자원에 대한 보호정책을 저장하고 있는 자원보호정책 데이터베이스, 자원보호 정책 데이터 베이스로부터 시스템 자원을 보호하기 위해 필요한 보호정책을 검색하는 자원보호정책 검색부, 시스템자원을 보호하기 위한 보안 기능을 저장하고 있는 보안기능 데이터베이스, 자원보호정책 검색부에 의해 검색된 보호정책에 포함된 보안기능을 보안기능 데이터베이스로부터 읽어들여 보호정책에 포함된 보안기능을 실행하는 자원보안 실행부 및 자원보호정책 데이터베이스와 보안기능 데이터베이스를 관리하는 보안관리부를 포함하는 구성을 개시하고 있다.
그러나, 이러한 선행 기술들은 모바일 단말의 보호 정책에 위반되는 경우 어플리케이션 자체가 실행되지 않고, 별도의 보호 정책을 수립하여야 하며, 보호 정책을 배포하는 모듈(예를 들어, 통신, DB 등)이 필요로 하고, 사용자의 결정사항을 보호 정책에 개별적으로 반영할 수 없으며, 어플리케이션의 일부의 기능만 제어할 수가 없는 문제점을 가진다.
본 발명은 어플리케이션에서 모바일 단말의 하드웨어와 사용자 정보를 사용하는 기능에 대해 제어할 수 있는 제어 정책 기반의 어플리케이션 제어 기술을 제공하고자 한다.
본 발명은 외부 환경과는 독립하여 모바일 단말 자체적으로 어플리케이션을 제어할 수 있는 제어 정책 기반의 어플리케이션 제어 기술을 제공하고자 한다.
본 발명은 어플리케이션이 모바일 단말의 하드웨어 기능 또는 사용자 정보를 사용하는 경우, 사용자에게 해당 기능 사용에 대한 정보를 제공할 수 있는 제어 정책 기반의 어플리케이션 제어 기술을 제공하고자 한다.
본 발명은 어플리케이션 별로 적용되고 제어할 수 있는 제어 정책 기반의 어플리케이션 제어 기술을 제공하고자 한다.
실시예들 중에서, 제어 정책 기반의 어플리케이션 제어 방법은 모바일 단말에서 수행된다. 제어 정책 기반의 어플리케이션 제어 방법은 어플리케이션에서 모바일 단말 내 접근 객체에 대한 사용 여부를 정의한 제어 정책을 포함하는 설정 파일을 수신하여 파싱하는 단계; 상기 파싱된 설정 파일의 상기 제어 정책을 저장하는 단계; 상기 어플리케이션에서 접근 객체에 대한 접근이 발생하면, 해당 제어 정책을 기초로 사용자 승인 여부를 결정하는 단계; 및 상기 사용자 승인 여부에 따라 상기 어플리케이션을 제어하는 단계를 포함한다.
여기에서, 상기 설정 파일은 상기 어플리케이션의 제작 단계에서 어플리케이션 개발자에 의해 생성되어 상기 어플리케이션에 포함되고, 상기 제어 정책에서 정의하는 접근 객체, 사용자 승인 요부 정보, 사용자 승인과 연관된 알림 메시지 및 알림 반복 여부 정보 중 적어도 하나를 포함할 수 있다. 또한, 상기 제어 정책은 상기 모바일 단말에 독립적일 수 있다.
일 실시예에서, 상기 접근 객체는 적어도 하나의 하드웨어 및 상기 모바일 단말과 연관된 사용자 정보 중 적어도 하나를 포함할 수 있다.
일 실시예에서, 상기 사용자 승인 여부를 결정하는 단계는 상기 어플리케이션이 실행되면, 상기 해당 제어 정책을 획득하는 단계; 및 상기 모바일 단말 내 기능 제어 모듈을 통해 상기 어플리케이션에서 특정 어플리케이션 프로그래밍 인터페이스(API: Application Programming Interface)를 호출시 발생하는 런타임(runtime) 이벤트를 기초로 상기 특정 어플리케이션의 상기 접근 객체에 대한 접근 발생을 인지하는 단계를 더 포함할 수 있다.
일 실시예에서, 상기 사용자 승인 여부를 결정하는 단계는 사용자 승인이 요구되면 사용자 승인 여부를 프롬프팅하는 단계를 포함할 수 있다.
일 실시예에서, 상기 사용자 승인 여부를 프롬프팅하는 단계는 상기 어플리케이션과 상기 정의된 접근 객체를 포함하는 알림 메시지를 디스플레이 할 수 있다.
일 실시예에서, 상기 어플리케이션을 제어하는 단계는 상기 사용자 승인이 요구되지 않으면, 상기 어플리케이션의 상기 접근 객체에 대한 접근을 허용할 수 있다.
일 실시예에서, 사용자 승인을 수신하면, 상기 어플리케이션의 상기 정의된 접근 객체에 대한 접근을 허용할 수 있다.
일 실시예에서, 제어 정책 기반의 어플리케이션 제어 방법은 상기 사용자 승인을 기초로 상기 제어 정책을 갱신할 수 있다.
일 실시예에서, 상기 사용자 승인 여부에 따라 상기 어플리케이션을 제어하는 단계는 상기 제어 정책에 근거하여, 상기 모바일 단말의 상기 어플리케이션을 자체적으로 제어할 수 있다.
실시예들 중에서, 모바일 단말은 어플리케이션에서 모바일 단말 내 접근 객체에 대한 사용 여부를 정의한 제어 정책을 포함하는 설정 파일을 수신하여 파싱하고, 상기 파싱된 설정 파일의 상기 제어 정책을 저장하는 제어 정책 생성부; 상기 어플리케이션에서 접근 객체에 대한 접근이 발생하면, 해당 제어 정책을 기초로 사용자 승인 여부를 결정하는 사용자 승인 요부 결정부; 및 사용자 승인 여부에 따라 상기 어플리케이션을 제어하는 제어부를 포함한다.
일 실시예에서, 모바일 단말은 상기 사용자 승인 여부를 프롬프팅하는 사용자 승인 프롬프팅부를 더 포함할 수 있다. 여기에서, 상기 제어 정책은 상기 모바일 단말에 독립적일 수 있다.
개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
본 발명의 일 실시예에 따른 제어 정책 기반의 어플리케이션 제어 기술은 제어 정책을 통해 어플리케이션에서 모바일 단말의 하드웨어와 사용자 정보를 사용하는 기능에 대해 제어할 수 있다.
본 발명의 일 실시예에 따른 제어 정책 기반의 어플리케이션 제어 기술은 파싱을 통해 외부 환경과는 독립하여 모바일 단말 자체적으로 어플리케이션을 제어할 수 있는 제어 정책을 생성할 수 있다.
본 발명의 일 실시예에 따른 제어 정책 기반의 어플리케이션 제어 기술은 어플리케이션이 모바일 단말의 하드웨어 기능 또는 사용자 정보를 사용하는 경우, 알림 메시지를 통해 사용자에게 해당 기능 사용에 대한 정보를 제공할 수 있다.
본 발명의 일 실시예에 따른 제어 정책 기반의 모바일 어플리케이션 제어 기술은 제어 정책을 통해 어플리케이션 별로 적용되고 제어할 수 있다.
도 1은 본 발명의 일 실시예에 따른 모바일 단말의 블록도이다.
도 2는 도 1에 있는 기능 제어 모듈을 나타내는 블록도이다.
도 3은 모바일 단말에서 수행되는 제어 정책 기반의 어플리케이션 제어 방법을 설명하는 흐름도이다.
도 4는 제어 정책을 예시한 도면이다.
도 5는 모바일 단말에서 어플리케이션의 실행 화면을 예시한 도면이다.
도 2는 도 1에 있는 기능 제어 모듈을 나타내는 블록도이다.
도 3은 모바일 단말에서 수행되는 제어 정책 기반의 어플리케이션 제어 방법을 설명하는 흐름도이다.
도 4는 제어 정책을 예시한 도면이다.
도 5는 모바일 단말에서 어플리케이션의 실행 화면을 예시한 도면이다.
본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시 예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시 예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시 예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다.
한편, 본 발명에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.
"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.
도 1은 본 발명의 일 실시예에 따른 기능 제어 모듈을 포함하는 모바일 단말의 블록도이다.
도 1을 참조하면, 모바일 단말(100)은 프로세스(110), 기능 제어 모듈(120) 및 접근 객체(130)를 포함한다.
모바일 단말(100)은 어플리케이션을 실행하고, 어플리케이션의 요청에 따라 모바일 단말(100)의 자원(resource), 하드웨어 기능 또는 사용자 정보를 제공하며, 어플리케이션 실행에 따라 요구되는 데이터를 수신하고, 그 실행 결과를 외부로 출력한다. 예를 들어, 모바일 단말(100)은 스마트 폰, PAD 에 해당할 수 있다.
프로세스(110)는 모바일 단말(100)의 저장 공간(미도시)에 저장된 어플리케이션을 로드하고, 어플리케이션의 실행에 요구되는 데이터 처리 및 가공을 수행한다. 예를 들어, 프로세서(110)는 중앙처리장치(CPU)에 해당할 수 있으며, 넓게는 모바일 단말 전체가 하나의 프로세서에 해당할 수 있다.
기능 제어 모듈(120)은 모바일 어플리케이션에서 후술할 접근 객체에 대한 사용 여부를 정의한 설정 파일을 수신하여 파싱하고, 파싱된 설정 파일을 기초로 제어 정책을 생성하며, 제어 정책 기반의 어플리케이션에서(예를 들어, 어플리케이션의 실행 등을 통해) 접근 객체에 대한 접근이 발생하면, 해당 제어 정책을 기초로 사용자 승인 요부(要否, 필요한지 여부)를 결정하고, 사용자 승인이 요구되면 사용자 승인 여부를 프롬프팅하고, 사용자 승인에 따라 어플리케이션의 접근 객체에 대한 접근을 허용한다. 여기에서, 생성은 제어 정책과 연관된 파일을 새롭게 개설(creation)하는 것에 해당할 수 있고, 또한, 파싱된 설정 파일들을 하나의 제어 정책으로 집합(formation)시키는 것에 해당할 수 있다.
일 실시예에서, 기능 제어 모듈(120)은 프로세스(110)와 후술할 접근 객체(130) 사이에 배치된 물리적 장치에 해당할 수 있다. 이와 달리, 기능 제어 모듈(120)은 프로그램으로 구현되어 별도의 어플리케이션을 이루거나, 또는 다른 어플리케이션과 결합하는 형태로 구현될 수 있다.
일 실시예에서, 기능 제어 모듈(120)이 후술하는 기능을 실현하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체로 구현된 경우, 기능 제어 모듈(120)은 모바일 단말(의 운영체제)에 독립적일 수 있다. 예를 들어, 기능 제어 모듈(120)은 HTML5 기반의 하이브리드 어플리케이션으로 구현될 수 있다. 한편, 기능 제어 모듈(120)에 의해 생성되는 제어 정책은 제어가 필요한 어플리케이션의 속성에 따라 모바일 단말(의 운영체제)에 독립적일 수 있거나 또는 모바일 단말에 종속적일 수 있다.
접근 객체(130)는 어플리케이션이 접근 가능한 모바일 단말 내의 객체로서, 보다 구체적으로, 모바일 단말(100)의 하드웨어(또는 하드웨어 기능)와 사용자 정보를 포함할 수 있다. 즉, 접근 객체(130)는 어플리케이션을 실행하는 동안에 요구되는 모바일 단말(100)의 하드웨어 기능(예를 들어, 센서, 카메라 등)이나 보안이 요구되는 사용자 정보(예를 들어, 사용자의 위치 정보, 주소록)에 해당할 수 있다. 이하에서는, 기능 제어 모듈(120)에 대해서 상세히 설명한다.
도 2는 도 1에 있는 기능 제어 모듈의 블록도이다.
도 2를 참조하면, 기능 제어 모듈(120)은 제어 정책 생성부(210), 사용자 승인 요부 결정부(220), 사용자 승인 프롬프팅부(230), 데이터베이스(240) 및 제어부(250)를 포함한다.
제어 정책 생성부(210)는 모바일 단말(100)에서 수행되는 어플리케이션의 사용과 연관된 제어 정책을 생성한다. 여기에서, 제어 정책(access rights policy)은 접근 객체(130, 예를 들어, 하드웨어 기능 등)에 대한 접근 주체(예를 들어, 어플리케이션)의 접근을 제어하는 정책에 해당한다.
일 실시예에서, 제어 정책 생성부(210)는 어플리케이션이 모바일 단말(100)에 설치되면, 기능 제어 모듈(120)이 독립적으로 어플리케이션에서 설정 파일을 추출하고, 파싱을 통해 추출된 설정 파일로부터 제어 정책을 생성할 수 있다.
보다 구체적으로, 제어 정책 생성부(210)는 모바일 어플리케이션에서 모바일 단말 내 접근 객체에 대한 사용 여부를 정의한 설정 파일을 수신하여 파싱하고, 파싱된 설정 파일을 기초로 제어 정책을 생성할 수 있다. 여기에서, 설정 파일은 어플리케이션에서 모바일 단말(100)의 하드웨어와 사용자 정보를 사용하는 기능 및 어플리케이션 개발자가 사용자에게 기능 사용 여부를 확인해야 하는 기능을 설정한 파일에 해당하고, 설정 파일은 어플리케션의 제작 단계에서 어플리케이션 개발자에 의해 생성될 수 있다.
또한, 설정 파일은 사용자에게 표시될 알림 메시지와 알림 반복 여부를 더 포함할 수 있고, 이는 어플리케이션마다 각각 다르게 설정될 수 있다. 여기에서, 알림 메시지는 사용자에게 접근 객체(130)에 대한 어플리케이션의 접근을 알리는 사용 경고 알림 메시지와 사용자의 수동 조치 사항에 대한 안내 메시지를 포함할 수 있다.
일 실시예에서, 제어 정책 생성부(210)는 설정 파일을 제어 정책에서 정의하는 접근 객체, 사용자 승인 요부 정보, 사용자 승인과 연관된 알림 메시지 및 알림 반복 여부 정보 각각으로 파싱할 수 있다. 즉, 제어 정책 생성부(210)는 설정파일을 기능 제어 모듈(120)에서 사용할 데이터로 파싱(parsing) 할 수 있다. 여기에서, 파싱은 통상의 파싱, 즉, 구문 분석에 해당하며, 프로그램과 같은 설정 파일을 이해하여 기계어로 번역하는 과정의 일부에 포함된다.
일 실시예에서, 제어 정책은 모바일 단말에 독립적일 수 있다. 보다 구체적으로, 제어 정책은 HTML5 기반으로 구현되어, 모든 모바일 단말의 운영체제(OS, 예를 들어, iOS, window 등)에 사용될 수 있다.
일 실시예에서, 제어 정책 생성부(210)는 파싱한 설정 파일을 제어 정책으로서 기능 제어 모듈(120) 내에 저장하고, 예를 들어, 별도의 데이터베이스(240)에 저장할 수 있다.
일 실시예에서, 제어 정책 생성부(210)는 생성된 제어 정책을 해당 어플리케이션에 결합하여 제어 정책 기반의 어플리케이션을 생성할 수 있다. 예를 들어, 제어 정책 생성부(210)는 하이브리드 어플리케이션(HTML 기반) 또는 모바일 단말에 종속적인 네이티브(native) 어플리케이션에 대한 제어 정책을 생성하고, 이를 해당 어플리케이션에 결합(또는 리패키징)하여 제어 정책 기반의 어플리케이션을 생성할 수 있다. 생성된 제어 정책 기반의 어플리케이션은 기초가 되는 해당 어플리케이션의 특성에 따라 모바일 단말(의 운영체제)에 독립적이거나 또는 종속적일 수 있다.
일 실시예에서, 생성된 제어 정책은 접근 객체(130)에 대한 어플리케이션의 접근을 허용할 지 여부 또는 이에 대한 사용자의 승인 요부에 대한 정보를 포함할 수 있다.
또한, 생성된 제어 정책은 어플리케이션의 접근 객체(130)에 대한 접근이 발생하여 사용자 승인이 요구됨에 따라 수행하는 프롬프팅(prompting)과 연관된 알림 메시지 및 알림 반복 여부를 포함할 수 있다. 여기에서, 프롬프팅, 알림 메시지 및 알림 반복 여부는 어플리케이션 제어 방법과 관련하여 후술한다.
사용자 승인 요부 결정부(220)는 제어 정책 기반의 어플리케이션이 실행되면 해당 제어 정책을 획득하고, 해당 제어 정책에 정의된 접근 객체(130)에 대한 접근이 발생하면 사용자 승인 요부를 결정한다.
보다 구체적으로, 사용자 승인 요부 결정부(220)는 사용자가 어플리케이션 실행 도중 모바일 단말(100)의 특정 접근 객체(130, 예를 들어, 하드웨어 기능)를 사용하게 되는 이벤트가 발생하면 해당 제어 정책을 기초로 해당 어플리케이션이 해당 접근 객체(130)를 사용하는 것이 사용자의 승인이 필요한지 여부, 즉, 사용자 승인 요부(要否)를 결정한다.
예를 들어, 사용자가 모바일 단말(특히, 카메라 어플)을 이용하여 촬영한 사진을 열람하고자 하는 경우, 모바일 단말(100)은 사진 열람과 연관된 특정 아이콘의 클릭을 통해 "갤러리 열람" - 사용자 사진을 포함하는 데이터 열람 - 이라는 이벤트를 확인하고, 카메라 어플케이션이 해당 "갤러리 열람"에 대해 사용자 승인이 필요한 지 여부를 카메라 어플리케이션과 연관된 제어 정책을 기초로 결정할 수 있다.
사용자 승인 프롬프팅부(230)는 사용자 승인 요부 결정부(220)의 결정에 따라 사용자 승인이 요구되면 사용자 승인 여부를 프롬프팅한다. 여기에서, 프롬프팅은 시분할 체제에서 처리를 계속하기 위해 필요한 피연산자를 입력하도록 모바일 단말(100) 사용자에게 요구하여 사용자를 도와주는 기능에 해당한다.
보다 구체적으로, 사용자 승인 프롬프팅부(230)는 알림 메시지를 통해 사용자 승인여부에 대해 승인 또는 거절하도록 사용자에게 요구할 수 있다.
일 실시예에서, 사용자 승인 프롬프팅부(230)는 해당 어플리케이션과 해당 어플리케이션이 접근하고자 하는 접근 객체(130)의 정보를 포함하는 알림메시지를 디스플레이 할 수 있다.
특히, 모바일 단말(100) 내에 복수의 어플리케이션이 실행 중인 경우, 특정 접근 객체(130)에 접근하고자 하는 어플리케이션의 정보와 해당 접근 객체(130)의 정보를 디스플레이 함으로써, 사용자는 하드웨어의 특정 기능 또는 사용자 정보가 사용되는 어플리케이션을 확인할 수 있고, 이를 통해, 사용자의 개인 정보 보호를 강화할 수 있다.
데이터베이스(240)는 접근 객체 생성부(210)에서 생성된 제어 정책을 저장한다. 또한, 데이터베이스(240)는 앞서 설명한 설정 파일을 저장할 수 있다.
일 실시예에서, 데이터베이스(240)는 사용자 승인을 기초로 해당 제어 정책을 갱신할 수 있다.
보다 구체적으로, 사용자 프롬프팅에 따라 특정 어플리케이션의 특정 접근 객체(130)에 대한 사용자 승인을 수신한 경우, 데이터베이스(240)는 해당 어플리케이션의 제어 정책을 갱신하여 사용자 승인이 다시 요구되지 않도록 할 수 있다. 여기에서, 데이터베이스(240)는 특정 기간 동안(예를 들어, 해당 어플리케이션이 실행되고 있는 동안에만) 유효하도록 제어 정책을 일시적으로 갱신하거나(해당 어플리케이션이 종료되면 최초의 제어 정책으로 복원), 또는 영구적으로 제어 정책을 갱신할 수 있다.
이와 달리, 특정 어플리케이션의 특정 접근 객체(130)에 대한 사용자 승인을 수신하지 못한 경우, 특히, 사용자 거절을 수신한 경우, 데이터베이스(240)는 사용자 승인 요구 없이 해당 어플리케이션의 해당 접근 객체(130)에 대한 사용을 불허하도록 해당 어플리케이션의 제어 정책을 갱신할 수 있다.
제어부(250)는 접근 객체 생성부(210), 사용자 승인 요부 결정부(220), 사용자 승인 프롬프팅부(230) 및 데이터베이스(240)간의 데이터 흐름을 제어하고, 제어 정책 및 사용자로부터 수신된 사용자 승인 정보를 기초로 어플리케이션의 접근 객체에 대한 접근을 허용하거나 또는 불허할 수 있다. 이에 대해서는 도 3을 참조하여 후술한다.
도 3은 모바일 단말에서 수행되는 제어 정책 기반의 어플리케이션 제어 방법을 설명하는 흐름도이다.
도 3을 참조하면, 모바일 단말(100)은 모바일 어플리케이션에서 설정 파일을 수신한다(S310).
모바일 단말(100)은 설정 파일 중 상기 제어 정책에서 정의하는 접근 객체, 사용자 승인 요부 정보, 사용자 승인과 연관된 알림 메시지 및 알림 반복 여부 정보을 파싱한다(S320).
모바일 단말(100)은 파싱된 설정 파일을 기초로 제어 정책을 생성한다 (S330).
앞서 설명한 바와 같이, 모바일 단말(100)은 파싱한 설정 파일을 제어 정책으로서 기능 제어 모듈(120) 내에, 또는 별도의 데이터베이스(240)에 저장할 수 있고, 이와 달리, 생성된 제어 정책을 해당 어플리케이션에 결합하여 제어 정책 기반의 어플리케이션을 생성할 수 있다.
모바일 단말(100)은 제어 정책 기반의 어플리케이션을 통해 어플리케이션에서 모바일 단말(100)의 하드웨어와 사용자 정보를 사용하는 기능에 대해 제어할 수 있다.
모바일 단말(100)은 제어 정책 기반의 어플리케이션을 실행한다. 여기에서, 실행은 사용자의 실행 요청을 기초로 수행될 수 있다.
본 발명의 일 실시예에 따른 모바일 단말(100)은 제어 정책 기반의 어플리케이션의 실행 자체를 제어하지 않는다.
모바일 단말(100)은 제어 정책 기반의 어플리케이션에서 접근 객체에 대한 접근이 발생하면, 해당 제어 정책을 기초로 사용자 승인 요부를 결정한다(S340).
보다 구체적으로, 모바일 단말(100)은 특정 어플리케이션이 수행되면 해당 제어 정책을 획득하고, 상기 해당 제어 정책에 정의된 접근 객체(130)에 대한 접근이 발생하면(예를 들어, 특정 기능을 사용하는 이벤트가 발생하면), 해당 제어 정책을 기초로 해당 접근이 사용자 승인이 필요로 하는 접근인지 여부를 검사한다. 한편, 제어 정책이 특정 어플리케이션이 포함된 경우, 모바일 단말(100)은 해당 어플리케이션의 실행을 통해 해당 제어 정책을 획득할 수 있다. 이와 달리, 제어 정책이 데이터베이스(240)에 저장된 경우, 모바일 단말(100)은 특정 어플리케이션의 실행시 데이터베이스(240)에서 해당 어플리케이션과 연관된 제어 정책을 검색하여 획득할 수 있다.
사용자 승인이 요구되면(S350), 모바일 단말(100)은 사용자 승인 여부를 프롬프팅한다(S360).
여기에서, 프롬프팅은 앞서 설명한 바와 같이, 해당 어플리케이션과 해당 접근 객체(130)의 정보를 포함하는 알림 메시지를 디스플레이 하는 방식으로 수행될 수 있다.
일 실시예에서, 모바일 단말(100)은 상기 제어 정책에 근거하여, 어플리케이션을 자체적으로 제어할 수 있다.
사용자로부터 사용자 승인을 수신하는 경우(S370), 모바일 단말(100)은 해당 어플리케이션의 해당 접근 객체(130)에 대한 접근을 허용한다(S380).
일 실시예에서, 모바일 단말은 접근 허용과 연관된 사용자 수동 조치 사항이 존재하는 경우, 해당 수동 조치 사항에 대한 안내 메시지를 출력할 수 있다.
예를 들어, 특정 어플리케이션이 모바일 단말의 블루투스 기능에 대한 접근이 허용하였으나, 블루투스 기능 자체가 정지(off)된 경우, 블루투스 기능을 동작(on)시키기 위해 필요한 절차 또는 이 절차를 기술한 안내 메시지를 출력할 수 있다.
한편, 사용자 승인이 요구되지 않은 경우(S350), 해당 어플리케이션의 해당 접근 객체(130)에 대한 접근 권한 유무에 따라 접근을 허용하거나, 또는 접근을 불허 할 수 있다.
예를 들어, 카메라 어플리케이션에서 "사용자 위치 정보 (열람 기능)"에 접근하고자 하는 경우, 해당 제어 정책에 따라 사용자 승인이 요구되지 않을 수 있으나, 해당 제어 정책에 포함된 접근 권한에 따라 "사용자 위치 정보"에 대한 접근을 불허할 수 있다. 이와 달리, 카메라 어플리케이션에서 "갤러리 열람 (기능)"에 접근하고자 하는 경우, 해당 제어 정책에 따라 사용자 승인이 요구 없이 "갤러리 열람 기능"에 대한 접근을 허용할 수 있다.
반면, 사용자로부터 사용자 승인을 수신하지 못하는 경우(S370), 모바일 단말(100)은 해당 어플리케이션의 해당 접근 객체(130)에 대한 접근을 불허한다(S390).
모바일 단말(100)은 사용자 승인을 기초로 해당 제어 정책을 갱신한다(S410).
도 4는 제어 정책을 예시한 도면이다.
도 4를 참조하면, 단말 제어 정책과 연관된 설정 파일은 XML 파일 형태로 구현될 수 있다.
설정 파일은 제어 정책에 포함시킬 접근 객체(130)와 사용자 프롬프팅과 연관된 알림 메시지 및 알림 메시지의 반복 여부를 구성요소(element)로 포함한다. 여기에서, 접근 객체(130), 알림 메시지 및 알림 메시지의 반복 여부는 어플리케이션 또는 접근 객체(130) 별로 각각 다르게 정의될 수 있다.
도시된 설정 파일은 모바일 단말(100)에서 실행되는 어플리케이션으로서 "mxp"와 이의 위치 정보 등을 포함한다. 보다 구체적으로, "securities"는 해당 어플리케이션의 제어 정책에 대응되고, "devicePoliceies"는 접근 객체(130)로서 "contact", "Location", "camera", "lbs(library)" 및 "push" 등의 기능 및 이들 각각의 알림 메시지(예를 들어, "warningmessage" 또는 "usageDescription" 등)와 반복하여 출력할지 여부(예를 들어, "repeat")에 대한 정보(예를 들어, 반복시 "true")를 포함한다.
도 5는 모바일 단말에서 어플리케이션의 실행 화면을 예시한 도면이다.
도 5(a)를 참조하면, MXP 어플리케이션이 camera 기능에 대한 접근하고자 하는 경우 모바일 단말(100)에서 디스플레이하는 단말 실행 화면을 나타낸다.
보다 구체적으로, 모바일 단말(100)은 해당 접근 객체(130), 즉, camera에 대한 접근이 시도됨을 알림 메시지를 통해 디스플레이하고, 사용자 승인 여부에 대해 승인 또는 거절하도록 사용자에게 요구한다.
도 5(b)를 참조하면, 도 5(a)와 마찬가지로, "MXP" 어플리케이션이 사용자의 사진에 대해 접근하고자 하는 경우 모바일 단말(100)에서 디스플레이하는 단말 실행 화면을 나타낸다.
모바일 단말(100)은 해당 어플리케이션과 해당 어플리케이션이 접근하고자 하는 접근 객체(130), 즉, "MXP"와 "사용자의 사진"을 포함하는 알림메시지를 디스플레이 한다.
이를 통해, 사용자는 하드웨어의 특정 기능 또는 사용자 정보가 사용되는 어플리케이션을 확인하여 사용자의 개인 정보 보호를 강화할 수 있다.
상기에서는 본 출원의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
100 : 모바일 단말
110 : 프로세스
120 : 기능 제어 모듈
130 : 접근 객체
210 : 제어 정책 생성부
220 : 사용자 승인 요부 결정부
230 : 사용자 승인 프롬프팅부
240 : 데이터베이스
250 : 제어부
110 : 프로세스
120 : 기능 제어 모듈
130 : 접근 객체
210 : 제어 정책 생성부
220 : 사용자 승인 요부 결정부
230 : 사용자 승인 프롬프팅부
240 : 데이터베이스
250 : 제어부
Claims (14)
- 모바일 단말에서 수행되는 어플리케이션 제어 방법에 있어서,
어플리케이션에서 모바일 단말 내 접근 객체에 대한 사용 여부를 정의한 제어 정책을 포함하는 설정 파일을 수신하여 파싱하는 단계;
상기 파싱된 설정 파일의 상기 제어 정책을 저장하는 단계;
상기 어플리케이션에서 접근 객체에 대한 접근이 발생하면, 해당 제어 정책을 기초로 사용자 승인 여부를 결정하는 단계; 및
상기 사용자 승인 여부에 따라 상기 어플리케이션을 제어하는 단계를 포함하는 제어 정책 기반의 어플리케이션 제어 방법.
- 제1항에 있어서, 상기 설정 파일은
상기 어플리케이션의 제작 단계에서 어플리케이션 개발자에 의해 생성되어 상기 어플리케이션에 포함되고, 상기 제어 정책에서 정의하는 접근 객체, 사용자 승인 요부 정보, 사용자 승인과 연관된 알림 메시지 및 알림 반복 여부 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 제어 정책 기반의 어플리케이션 제어 방법.
- 제1항에 있어서, 상기 제어 정책은
상기 모바일 단말에 독립적인 것을 특징으로 하는 제어 정책 기반의 어플리케이션 제어 방법.
- 제1항에 있어서, 상기 접근 객체는
적어도 하나의 하드웨어 및 상기 모바일 단말과 연관된 사용자 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 제어 정책 기반의 어플리케이션 생성 방법.
- 제1항에 있어서, 상기 사용자 승인 여부를 결정하는 단계는
상기 어플리케이션이 실행되면, 상기 해당 제어 정책을 획득하는 단계; 및
상기 모바일 단말 내 기능 제어 모듈을 통해 상기 어플리케이션에서 특정 어플리케이션 프로그래밍 인터페이스(API: Application Programming Interface)를 호출시 발생하는 런타임(runtime) 이벤트를 기초로 상기 특정 어플리케이션의 상기 접근 객체에 대한 접근 발생을 인지하는 단계를 더 포함하는 것을 특징으로 하는 제어 정책 기반의 어플리케이션 제어 방법.
- 제1항에 있어서, 상기 사용자 승인 여부를 결정하는 단계는
사용자 승인이 요구되면 사용자 승인 여부를 프롬프팅하는 단계를 포함하는 제어 정책 기반의 어플리케이션 제어 방법.
- 제6항에 있어서, 상기 사용자 승인 여부를 프롬프팅하는 단계는
상기 어플리케이션과 상기 정의된 접근 객체를 포함하는 알림 메시지를 디스플레이 하는 단계를 포함하는 제어 정책 기반의 어플리케이션 제어 방법.
- 제6항에 있어서, 상기 어플리케이션을 제어하는 단계는
상기 사용자 승인이 요구되지 않으면, 상기 어플리케이션의 상기 접근 객체에 대한 접근을 허용하는 것을 특징으로 하는 제어 정책 기반의 어플리케이션 제어 방법.
- 제6항에 있어서,
사용자 승인을 수신하면, 상기 어플리케이션의 상기 정의된 접근 객체에 대한 접근을 허용하는 단계를 더 포함하는 제어 정책 기반의 어플리케이션 제어 방법.
- 제9항에 있어서,
상기 사용자 승인을 기초로 상기 제어 정책을 갱신하는 단계를 더 포함하는 제어 정책 기반의 어플리케이션 제어 방법.
- 제1항에 있어서, 상기 사용자 승인 여부에 따라 상기 어플리케이션을 제어하는 단계는,
상기 제어 정책에 근거하여, 상기 모바일 단말의 상기 어플리케이션을 자체적으로 제어하는 단계를 포함하는 제어 정책 기반의 어플리케이션 제어 방법.
- 어플리케이션에서 모바일 단말 내 접근 객체에 대한 사용 여부를 정의한 제어 정책을 포함하는 설정 파일을 수신하여 파싱하고, 상기 파싱된 설정 파일의 상기 제어 정책을 저장하는 제어 정책 생성부;
상기 어플리케이션에서 접근 객체에 대한 접근이 발생하면, 해당 제어 정책을 기초로 사용자 승인 여부를 결정하는 사용자 승인 요부 결정부; 및
사용자 승인 여부에 따라 상기 어플리케이션을 제어하는 제어부를 포함하는 모바일 단말.
- 제12항에 있어서,
상기 사용자 승인 여부를 프롬프팅하는 사용자 승인 프롬프팅부를 더 포함하는 모바일 단말.
- 제12항 있어서, 상기 제어 정책은
상기 모바일 단말에 독립적인 것을 특징으로 하는 제어 정책 기반의 어플리케이션 제어 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130164828A KR20150076529A (ko) | 2013-12-27 | 2013-12-27 | 제어 정책 기반의 어플리케이션 제어 방법과 이를 수행하는 모바일 단말 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130164828A KR20150076529A (ko) | 2013-12-27 | 2013-12-27 | 제어 정책 기반의 어플리케이션 제어 방법과 이를 수행하는 모바일 단말 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20150076529A true KR20150076529A (ko) | 2015-07-07 |
Family
ID=53789471
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020130164828A KR20150076529A (ko) | 2013-12-27 | 2013-12-27 | 제어 정책 기반의 어플리케이션 제어 방법과 이를 수행하는 모바일 단말 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20150076529A (ko) |
-
2013
- 2013-12-27 KR KR1020130164828A patent/KR20150076529A/ko not_active Application Discontinuation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6559223B2 (ja) | デバイス・ポリシー・マネージャ | |
JP6412140B2 (ja) | リモートリソースへのアクセスを確実に許可すること | |
KR101573669B1 (ko) | 문서들의 디지털 사용 권한들을 관리하기 위한 방법 및 디바이스 | |
CN107660332B (zh) | 用于控制数据在设备中的有状态的应用的系统、装置和方法 | |
US9734327B2 (en) | Methods for restricting resources used by an application based on a base profile and an application specific profile | |
US20150220455A1 (en) | Methods and apparatus for protecting operating system data | |
KR102327016B1 (ko) | 권한 제어 방법 및 이를 운용하는 전자 장치 | |
EP2859487A1 (en) | Evaluating whether to block or allow installation of a software application | |
EP3777082B1 (en) | Trusted platform module-based prepaid access token for commercial iot online services | |
JP2015534690A (ja) | モバイル・アプリケーション管理 | |
EP2973175B1 (en) | Managing device driver cross ring accesses | |
KR102337990B1 (ko) | 권한 설정 토큰을 이용하는 전자 장치 | |
US9547607B2 (en) | Brokering application access for peripheral devices | |
US10298586B2 (en) | Using a file whitelist | |
US20080022404A1 (en) | Anomaly detection | |
CN104680075A (zh) | 用于来自高级别应用程序许可的细粒度访问控制的框架 | |
EP3021250B1 (en) | Electronic device and method for suggesting response manual in occurrence of denial | |
CN113076529B (zh) | 一种访问控制方法、装置、计算机可读存储介质和设备 | |
KR20150076529A (ko) | 제어 정책 기반의 어플리케이션 제어 방법과 이를 수행하는 모바일 단말 | |
US10546118B1 (en) | Using a profile to provide selective access to resources in performing file operations | |
CN106559546B (zh) | 控制软件使用网络联网的方法和装置 | |
KR20170115338A (ko) | 보안 예보 시스템 및 방법 | |
Amirgaliev et al. | Android security issues | |
JP2014086050A (ja) | 情報処理装置、情報処理方法 | |
TWI446207B (zh) | The device and method used to load the app category |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |