KR102351203B1 - 전자 장치에서 하드웨어 리소스 액세스를 관리하기 위한 방법 및 장치 - Google Patents

전자 장치에서 하드웨어 리소스 액세스를 관리하기 위한 방법 및 장치 Download PDF

Info

Publication number
KR102351203B1
KR102351203B1 KR1020207012539A KR20207012539A KR102351203B1 KR 102351203 B1 KR102351203 B1 KR 102351203B1 KR 1020207012539 A KR1020207012539 A KR 1020207012539A KR 20207012539 A KR20207012539 A KR 20207012539A KR 102351203 B1 KR102351203 B1 KR 102351203B1
Authority
KR
South Korea
Prior art keywords
access
hardware resource
application
mobile device
user input
Prior art date
Application number
KR1020207012539A
Other languages
English (en)
Other versions
KR20200060488A (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 후아웨이 테크놀러지 컴퍼니 리미티드
Publication of KR20200060488A publication Critical patent/KR20200060488A/ko
Application granted granted Critical
Publication of KR102351203B1 publication Critical patent/KR102351203B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • 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
    • 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/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Bioethics (AREA)
  • Automation & Control Theory (AREA)
  • Telephone Function (AREA)
  • Stored Programmes (AREA)

Abstract

실시형태들은, 애플리케이션이 백그라운드에서 실행되고 있을 때 제1 하드웨어 리소스에 액세스하기 위한 제1 애플리케이션에 의한 시도를 검출하는 것 및 제1 하드웨어 리소스에 액세스하기 위한 제1 애플리케이션에 대한 정책이 존재하지 않는다고 결정하는 것, 그 사용자 입력을 요청하는 알림을 제공하는 것, 및 그에 따라 새로운 정책을 추가하는 것을 포함하는, 모바일 장치에서 하드웨어 리소스 액세스를 관리하기 위한 방법 및 장치를 제공한다.

Description

전자 장치에서 하드웨어 리소스 액세스를 관리하기 위한 방법 및 장치
본원은, 그 전부가 본 명세서에 참조로 포함되는, "Method And Apparatus For Managing Hardware Resource Access In An Electronic Device"라는 명칭으로 2017년 10월 26일자로 출원된 미국 특허 출원 제15/795,101호에 대한 우선권을 주장한다.
본 개시물은 일반적으로 전자 장치의 동작에 관한 것으로, 보다 구체적으로는 모바일 전자 장치에서 하드웨어 리소스 액세스를 관리하기 위한 방법 및 장치에 관한 것이다.
스마트폰, 태블릿 컴퓨터, 및 스마트 워치와 같이 현재 이용 가능한 모바일 전자 장치는 이러한 장치에 의해 제공되는 다양한 소프트웨어 애플리케이션 뿐만 아니라 강화된 통신 능력으로 최종 사용자에게 풍부하고 만족스러운 경험을 제공한다. 그러나, 일부 모바일 장치는 사용자가 모르는 사이에 동작을 수행하는 악성 소프트웨어("멀웨어")에 감염될 수 있다. 그 동작의 비밀스러운 성질로 인해 멀웨어를 검출하기가 어려울 수 있다.
예시적인 실시형태는, 모바일 장치에서 하드웨어 리소스 액세스를 관리하기 위한 방법으로서, 모바일 장치 상의 제1 애플리케이션에 대하여 모바일 장치의 제1 하드웨어 리소스에 액세스하기 위한 허가를 승인하는 제1 사용자 입력을 수신하고, 이에 기초하여, 제1 애플리케이션에게 제1 하드웨어 리소스에 액세스하기 위한 허가를 승인하는 단계; 제1 애플리케이션에게 제1 하드웨어 리소스에 액세스하기 위한 허가를 승인한 후에, 애플리케이션이 백그라운드에서 실행되고 있을 때 제1 하드웨어 리소스에 액세스하기 위한 제1 애플리케이션에 의한 시도를 검출하는 단계, 및 이에 기초하여: 모바일 장치의 제1 동작 모드를 취득― 제1 동작 모드는 모바일 장치가 잠금 상태에 있는지 또는 잠금 해제 상태에 있는지 여부의 표시를 포함함 ―하는 단계; 제1 동작 모드 동안 제1 하드웨어 리소스에 액세스하기 위한 제1 애플리케이션에 대한 허가를 승인하는 정책이 복수의 정책에 존재하지 않는다고 결정하는 단계; 이 결정에 기초하여, 제1 애플리케이션에 의한 제1 하드웨어 리소스에 대한 액세스를 승인 또는 거부하기 위한 사용자 입력을 요청하는 알림을 제공하는 단계; 이 알림에 응답하는 제2 사용자 입력을 수신하는 단계; 및 제2 사용자 입력에 따라 제1 동작 모드 동안 제1 애플리케이션에 의한 제1 하드웨어 리소스에 대한 정책들에 대한 액세스를 승인 또는 거부하기 위한 새로운 정책을 복수의 정책에 추가하는 단계를 포함하는 방법을 포함한다.
선택적으로, 선행 실시형태들 중 어느 하나에 있어서, 제2 사용자 입력은 제1 하드웨어 리소스에 대한 액세스를 승인하고, 방법은, 제1 하드웨어 리소스에 액세스하기 위한 제1 애플리케이션에게 액세스를 승인하는 단계를 더 포함한다.
선택적으로, 선행 실시형태들 중 어느 하나에 있어서, 제2 사용자 입력은 제1 하드웨어 리소스에 대한 액세스를 거부하고, 방법은, 제1 하드웨어 리소스에 액세스하기 위한 제1 애플리케이션에게 액세스를 거부하는 단계를 더 포함한다.
선택적으로, 선행 실시형태들 중 어느 하나에 있어서, 제1 하드웨어 리소스는 마이크로폰 입력, 카메라 입력, 터치 스크린 입력, 키보드 입력, 디스플레이 출력, 햅틱 출력, 모바일 장치 위치 정보, 또는 근접도 센서 판독을 포함한다.
선택적으로, 선행 실시형태들 중 어느 하나에 있어서, 카메라 입력은 적외선 카메라로부터의 입력이다.
선택적으로, 선행 실시형태들 중 어느 하나에 있어서, 방법은, 복수의 정책을 서버로부터 수신하고 새로운 정책을 서버에 송신하는 단계를 더 포함한다.
선택적으로, 선행 실시형태들 중 어느 하나에 있어서, 액세스를 승인 또는 거부하기 위한 사용자 입력을 요청하는 알림을 제공하는 단계는 모바일 장치의 디스플레이에 그래픽 사용자 인터페이스를 제공하는 단계 또는 모바일 장치의 오디오 출력을 사용하여 자연어 메시지를 제공하는 단계를 포함한다.
선택적으로, 선행 실시형태들 중 어느 하나에 있어서, 동작 모드는 모바일 장치에 설치된 하나 이상의 다른 애플리케이션의 표시, 모바일 장치에서 현재 실행되는 하나 이상의 다른 애플리케이션의 표시, 또는 모바일 장치의 현재 위치 중 하나 이상을 더 포함한다.
선택적으로, 선행 실시형태들 중 어느 하나에 있어서, 방법은, 새로운 정책을 복수의 정책에 추가한 이래 일정 기간이 경과했다고 결정하고, 이에 기초하여, 복수의 정책으로부터 새로운 정책을 제거하는 단계를 더 포함한다.
다른 실시형태에 있어서, 모바일 장치에서 하드웨어 리소스 액세스를 관리하기 위해 액세스 제어 시스템이 사용된다. 액세스 제어 시스템은, 제1 애플리케이션에게 제1 하드웨어 리소스에 액세스하기 위한 허가를 승인하는 기능 제한 요소― 제1 하드웨어 리소스는 모바일 장치의 카메라 또는 모바일 장치의 마이크로폰임 ―; 및 제1 애플리케이션이 백그라운드에서 실행되고 있을 때 제1 하드웨어 리소스에 액세스하기 위한 제1 애플리케이션에 의한 시도를 검출하는 검출 요소를 포함한다. 기능 제한 요소는 제1 애플리케이션이 백그라운드에서 실행되고 있을 때 제1 하드웨어 리소스에 액세스하기 위한 제1 애플리케이션에 의한 시도의 검출에 따라 제1 애플리케이션에 의한 제1 리소스에 대한 액세스를 거부할 수 있다.
다른 실시형태는, 그래픽 정보를 디스플레이하기 위한 스크린; 명령어를 저장하는 메모리; 및 메모리 및 스크린과 통신하는 하나 이상의 프로세서를 포함하는 모바일 전자 장치로서, 상기 하나 이상의 프로세서는 상기 명령어를 실행하여: 모바일 장치 상의 제1 애플리케이션에 대하여 모바일 장치의 제1 하드웨어 리소스에 액세스하기 위한 허가를 승인하는 제1 사용자 입력을 수신하고, 이에 기초하여, 제1 애플리케이션에게 제1 하드웨어 리소스에 액세스하기 위한 허가를 승인하고; 제1 애플리케이션에게 제1 하드웨어 리소스에 액세스하기 위한 허가를 승인한 후에, 애플리케이션이 백그라운드에서 실행되고 있을 때 제1 하드웨어 리소스에 액세스하기 위한 제1 애플리케이션에 의한 시도를 검출하고, 이에 기초하여: 모바일 장치의 제1 동작 모드를 취득― 제1 동작 모드는 모바일 장치가 잠금 상태에 있는지 또는 잠금 해제 상태에 있는지 여부의 표시를 포함함 ―하고; 제1 동작 모드 동안 제1 하드웨어 리소스에 액세스하기 위한 제1 애플리케이션에 대한 허가를 승인하는 정책이 복수의 정책에 존재하지 않는다고 결정하고; 이 결정에 기초하여, 제1 애플리케이션에 의한 제1 하드웨어 리소스에 대한 액세스를 승인 또는 거부하기 위한 사용자 입력을 요청하는 알림을 제공하고; 이 알림에 응답하는 제2 사용자 입력을 수신하고; 제2 사용자 입력에 따라 제1 동작 모드 동안 제1 애플리케이션에 의한 제1 하드웨어 리소스에 대한 정책들에 대한 액세스를 승인 또는 거부하기 위한 새로운 정책을 복수의 정책에 추가하도록 구성되는 모바일 전자 장치를 포함한다.
선택적으로, 선행 실시형태들 중 어느 하나에 있어서, 제2 사용자 입력이 제1 하드웨어 리소스에 대한 액세스를 승인하고, 하나 이상의 프로세서가 제1 하드웨어 리소스에 액세스하기 위한 제1 애플리케이션에게 액세스를 승인하도록 구성되는 모바일 전자 장치이다.
선택적으로, 선행 실시형태들 중 어느 하나에 있어서, 제2 사용자 입력이 제1 하드웨어 리소스에 대한 액세스를 거부하고, 하나 이상의 프로세서가 제1 하드웨어 리소스에 액세스하기 위한 제1 애플리케이션에게 액세스를 거부하도록 구성되는 모바일 전자 장치이다.
선택적으로, 선행 실시형태들 중 어느 하나에 있어서, 제1 하드웨어 리소스가 마이크로폰 입력, 카메라 입력, 터치 스크린 입력, 디스플레이 출력, 햅틱 출력, 모바일 장치 위치 정보, 또는 근접도 센서 판독을 포함하는 모바일 전자 장치이다.
선택적으로, 선행 실시형태들 중 어느 하나에 있어서, 카메라 입력이 적외선 카메라로부터의 입력인 모바인 전자 장치이다.
선택적으로, 선행 실시형태들 중 어느 하나에 있어서, 모바일 전자 장치는 하나 이상의 프로세서가 복수의 정책을 서버로부터 수신하고 새로운 정책을 서버에 송신하도록 구성되는 것을 더 포함한다.
선택적으로, 선행 실시형태들 중 어느 하나에 있어서, 액세스를 승인 또는 거부하기 위한 사용자 입력을 요청하는 알림을 제공하는 것이 모바일 장치의 디스플레이에 그래픽 사용자 인터페이스를 제공하는 것 또는 모바일 장치의 오디오 출력을 사용하여 자연어 메시지를 제공하는 것을 포함하는 모바일 전자 장치이다.
선택적으로, 선행 실시형태들 중 어느 하나에 있어서, 동작 모드가 모바일 장치에 설치된 하나 이상의 다른 애플리케이션의 표시, 모바일 장치에서 현재 실행되는 하나 이상의 다른 애플리케이션의 표시, 또는 모바일 장치의 현재 위치 중 하나 이상을 더 포함하는 모바일 전자 장치이다.
선택적으로, 선행 실시형태들 중 어느 하나에 있어서, 모바일 전자 장치는 하나 이상의 프로세서가 새로운 정책을 복수의 정책에 추가한 이래 일정 기간이 경과했다고 결정하고, 이에 기초하여, 복수의 정책으로부터 새로운 정책을 제거하도록 구성되는 것을 더 포함한다.
선택적으로, 선행 실시형태들 중 어느 하나에 있어서, 모바일 전자 장치이다.
도 1은 상이한 동작 모드들에서의 모바일 컴퓨팅 장치(100)의 실시예들을 예시한다.
도 2는 본 개시물의 실시형태에 따른 모바일 전자 장치의 하드웨어 리소스에 액세스하기 위한 컴퓨터-구현 기술을 예시하는 흐름도이다.
도 3은 본 개시물의 실시형태에 따른 리소스 관리를 위한 시스템을 예시한다.
도 4는 본 개시물의 실시형태에 따른 모바일 전자 장치의 하드웨어 리소스에 액세스하기 위한 컴퓨터-구현 기술을 예시하는 예시적인 흐름도이다.
도 5는 본 개시물의 실시형태에 따른 모바일 전자 장치(500)의 컴포넌트들을 예시하는 블록도이다.
이제, 본 개시물의 실시형태들에 대하여 상세하게 참조할 것이고, 그 실시예들이 첨부 도면에 예시된다. 하기의 상세한 설명에서는, 본 개시물의 완전한 이해를 제공하기 위해 다양한 구체적인 세부내용이 설명된다. 그러나, 실시형태들이 이들 구체적인 세부내용 없이 실시될 수 있거나 또는 본 개시물의 사상 및 범위로부터 일탈함이 없이 다양한 변경 및 대체가 이루어질 수 있다는 점이 당업자에게는 명백할 것이다. 다른 경우들에 있어서, 실시형태들의 양태들을 불필요하게 모호하게 만들지 않기 위해, 잘 알려진 방법, 절차, 컴포넌트, 및 회로는 상세하게 설명되어 있지 않다.
애플리케이션 소프트웨어 또는 애플리케이션 프로그램("애플리케이션")은 사용자의 이익을 위해 일련의 기능들, 작업들, 또는 활동들을 수행하도록 설계된 컴퓨터 프로그램이다. 애플리케이션은 워드 프로세서, 스프레드시트, 회계 소프트웨어, 웹 브라우저, 미디어 플레이어, 전자 게임, 또는 사진 편집기 등을 예로서 포함한다. 이는 컴퓨팅 장치에서 애플리케이션의 실행을 관리하는 운영 체제와 같은 시스템 소프트웨어와는 대조적이다.
멀웨어와 같은 이른바 비-합의 추적 소프트웨어(non-consensual tracking software)가 다양한 방법으로 컴퓨팅 장치에 설치될 수 있다. 예를 들어, 이러한 추적 소프트웨어는 컴퓨팅 장치에서 다른 애플리케이션을 설치한 부산물로서 컴퓨팅 장치에 설치될 수 있다. 추적 소프트웨어는 일반적으로 백그라운드에서 실행되며 컴퓨팅 장치의 하나 이상의 하드웨어 리소스를 모니터링한다. 컴퓨팅 장치 제조자의 보안 수준이 높더라도, 멀웨어를 설치하는 다른 방법들이 여전히 존재한다. 예를 들면, 멀웨어는 백그라운드에서 실행되는 스텔스 추적 프로그램을 설치하기 위해 시스템 소프트웨어의 보안 조치를 우회할 수 있다. 멀웨어 애플리케이션들은 스마트폰, 스마트 워치, 태블릿, 또는 휴대용 컴퓨터와 같은 사용자의 컴퓨팅 장치의 하드웨어 리소스에 액세스함으로써 사용자가 모르는 사이에 사용자의 활동을 추적할 수 있다.
하드웨어 리소스는 컴퓨팅 장치의 물리적 하드웨어 컴포넌트이거나; 하나 이상의 물리적 하드웨어 컴포넌트에 대한 입력 또는 출력(I/O)이거나; 또는 물리적 하드웨어 컴포넌트들의 I/O에서 파생된 데이터이다. 예시로서, 물리적 하드웨어 컴포넌트는 마이크로폰, 근접도 센서, 이미지 센서, 터치 스크린, 물리적 버튼, GPS(global positioning system) 수신기, 셀룰러 라디오, Wi-Fi 라디오, 또는 블루투스 트랜시버일 수 있다. I/O 하드웨어 컴포넌트는 마이크로폰 입력, 이미지 센서(예컨대, 카메라) 입력, 터치 스크린 입력, 키보드 입력, 디스플레이 출력, 햅틱 출력, 또는 근접도 센서 판독 등을 예로서 포함한다. 물리적 하드웨어 컴포넌트의 I/O에서 파생된 데이터의 예는, 예를 들어, GPS 수신기 및 Wi-Fi 라디오에 의해 수신되는 정보에 기초한 컴퓨팅 장치의 지리적 위치("지오로케이션")이다. 다른 타입의 하드웨어 리소스도 가능하다.
컴퓨팅 장치는 상이한 동작 모드들을 갖는다. 일반적으로, 동작 모드는 컴퓨팅 장치의 전원을 켤 때 컴퓨팅 장치의 상태를 나타내는 불(Boolean) 연산식이다. 컴퓨팅 장치의 상태는 하기의 요인들, 즉 지정된 애플리케이션이 포그라운드 또는 백그라운드에서 실행 중인지의 여부; 장치가 잠금 상태인지 또는 잠금 해제 상태인지의 여부; 장치가 비행기 모드인지의 여부; 장치에서 실행 중인 애플리케이션의 표시; 및 장치의 현재 지리적 위치를 하나 이상 포함한다. 즉, 동작 모드는 이 요인들의 불 연산식이다. 컴퓨팅 장치가 비행기 모드에 있을 경우, 컴퓨팅 장치는 무선-주파수 신호 전송(예컨대, 셀룰러, Wi-Fi 및 블루투스 전송)을 일시 중지할 수 있다. 컴퓨팅 장치가 비행기 모드에 있지 않을 경우, 컴퓨팅 장치는 셀룰러, Wi-Fi 및 블루투스 전송을 사용하여 신호를 송신 및 수신하는 것과 같이, 정상적으로 작동할 수 있다. 잠금 상태는, 예컨대, 장치가 사용자의 주머니 또는 가방에 있는 동안 또는 다른 물체가 장치를 가록막고 있을 경우, 터치 스크린 디스플레이의 의도치 않은 동작을 방지하기 위해 사용될 수 있다. 또한, 잠금 상태는 권한이 없는 사람이 장치를 사용하는 것을 방지하기 위해 사용될 수도 있다. 일반적으로, 장치는 사용자가 특정 버튼 또는 일련의 버튼을 누를 경우 또는 일정 기간 동안 유휴 상태에 있었을 경우에 잠금 상태에 진입하도록 프로그램된다. 사용자가 잠금 상태에 있는 장치를 사용하고자 할 경우, 사용자는 장치를 잠금 해제하기 위해 명령을 말하거나, 슬라이드 바를 드래그하거나, 특정 버튼 또는 일련의 버튼을 눌러야(예컨대, 패스워드 입력을 위해) 할 수 있다.
도 1은 상이한 동작 모드들에서의 모바일 컴퓨팅 장치(100)의 실시예들을 예시한다. 모바일 컴퓨팅 장치(100), 예컨대, 스마트폰, 스마트 워치 또는 태블릿 장치와 같은 컴퓨팅 장치는 그래픽 사용자 인터페이스(GUI)를 제공하는 디스플레이(104)가 잠금 해제 상태 동작 모드(101)로 도시되고, 여기서 모바일 컴퓨팅 장치 상의 애플리케이션들이 사용자-선택 가능 아이콘에 의해 GUI에 표시된다. 잠금 상태 동작 모드(102)에서는, 모바일 컴퓨팅 장치 디스플레이(104)의 전원이 꺼질 수 있다. 모바일 컴퓨팅 장치(100)가 잠금 상태에 있을 경우에는, 많은 기능이 일시 중지될 수 있다. 다른 동작 모드(103)에서는, 사용자 알림(106)이 디스플레이(104)에 제시된다. 컴퓨팅 장치(100)가 잠금 상태 또는 잠금 해제 상태에 있을 경우에, 컴퓨팅 장치(100)의 사용자의 주의를 끌기 위해 알림이 제시될 수 있다. 일부 구현예에 있어서, 하드웨어 리소스에 대한 애플리케이션 액세스를 승인 또는 거부하라는 입력을 요청하기 위한 알림이 컴퓨팅 장치(100)의 사용자에게 제공된다. 대안으로서, 또는 부가적으로, 알림은 예를 들어, 음성 메시지, 사운드, 또는 햅틱 피드백일 수 있다. 모바일 전자 장치의 디스플레이는 103에 도시된 바와 같이 알림 메시지를 보여주도록 활성화될 수 있다. 알림 메시지 자체가 동시에 보여질 수 있다.
본 개시물은 하드웨어 리소스에 대한 액세스가 사용자를 위해 안전하고 편리하게 제어될 수 있도록 정책(policy)을 이용하여 모바일 장치에서 하드웨어 리소스 액세스를 관리하는 다양한 실시형태를 제공한다.
본 개시물의 실시형태는 장치가 하드웨어 리소스에 대한 액세스를 통제하는 정책으로 구성된다는 것을 제공한다. 정책은, 컴퓨팅 장치의 지정된 동작 모드 동안 지정된 애플리케이션이 컴퓨팅 장치 상의 지정된 하드웨어 리소스에 액세스하는 것이 승인되는지 또는 거부되는지의 여부를 나타내는 규칙이다. 정책은 파일, 예컨대, XML 파일, 또는 텍스트 등으로 저장될 수 있다. 정책의 일반적인 형태는: <애플리케이션 식별자, 하드웨어 리소스 식별자, 동작 모드 불 연산식, 승인/거부>이고, 여기서 애플리케이션 식별자는 애플리케이션을 식별하고, 하드웨어 리소스 식별자는 하드웨어 소스(예컨대, 마이크로폰, 카메라 등)를 식별하고, 동작 모드는 전술한 요인들 중 하나 이상의 불 연산식이다. 정책은 복수의 레코드를 포함할 수 있으며, 각각의 레코드는 전술한 바와 같은 정책의 형태를 포함할 수 있다. 정책은 애플리케이션 ID, 하드웨어 리소스 ID가 각각의 ID와 일치할 경우 및 동작 모드 연산식이 TRUE로 평가될 경우에 트리거된다. 정책이 트리거될 경우, 식별된 애플리케이션에 의한 식별된 하드웨어 리소스에 대한 액세스가 정책의 승인/거부 필드에 기초하여 승인 또는 거부된다. 선택적으로, 정책은 그 시간 이후에는 더 이상 활성화되지 않는 만료 시간을 가질 수 있다.
예시로서, 표 1에 예시적인 정책들을 열거한다.
Figure 112020044197494-pct00001
표 1에서의 각각의 라인은 예시적인 정책일 수 있으며, 정책은 하나 이상의 레코드로서 보여질 수 있다. 예를 들어, 표 1에서의 제1 애플리케이션(앱 1)과 관련하여, 앱 1이 백그라운드에서 실행되고 있고, 카메라 앱이 현재 실행 중이며, 앱 1이 마이크로폰에 대한 동작 또는 액세스를 개시하려고 할 경우, 이러한 시도 또는 액세스는 표 1의 라인 1에서의 제1 정책에 따라 거부될 것이다. 예를 들어, 앱 3이 포그라운드에서 실행되고 있고, 앱 3이 카메라에 대한 동작 또는 액세스를 개시하려고 할 경우, 정책이 앱 3에 관여하고, 이러한 시도 또는 액세스는 표 1의 라인 7에서의 제2 정책에 따라 승인될 것이다.
애플리케이션이 장치의 하드웨어 리소스에 액세스하려고 할 경우, 장치는 하나 이상의 정책이 애플리케이션에게 하드웨어 리소스에 액세스하기 위한 허가를 승인할지를 결정한다. 예를 들어, 정책에 의해 액세스가 승인되지 않을 경우, 하드웨어 리소스에 대한 애플리케이션의 액세스가 거부되거나 또는 애플리케이션의 하드웨어 리소스에 대한 액세스를 사용자한테 승인 또는 거부하라고 요청하는 알림이 장치의 사용자에게 제공된다. 전술한 바와 같이, 이러한 알림은 컴퓨팅 장치의 GUI에서의 메시지 또는 음성 프롬프트일 수 있다. 알림이 제공되는 경우, 알림에 대한 사용자의 응답은 새로운 정책을 만드는 데 사용된다. 새로운 정책은 애플리케이션, 애플리케이션이 액세스를 시도한 하드웨어 리소스, 애플리케이션이 액세스를 시도했을 때 컴퓨팅 장치의 동작 모드를 나타내는 불 연산식, 및 사용자가 액세스를 승인 또는 거부했는지 여부의 표시를 특정한다. 애플리케이션에 의한 시도가 동일한 동작 모드 동안 동일한 하드웨어 리소스에 액세스하려는 것일 경우, 정책은 사용자 입력을 취득할 필요 없이 애플리케이션에게 자동으로 허가를 승인하게 된다.
도 2는 본 개시물의 실시형태에 따른 모바일 전자 장치의 하드웨어 리소스에 액세스하기 위한 컴퓨터-구현 기술을 예시하는 흐름도이다.
단계(201)에서, 제1 애플리케이션을 설치할 때, 제1 애플리케이션에 대하여 장치(100)의 제1 하드웨어 리소스에 액세스하기 위한 허가가 수신된다. 제1 애플리케이션은 장치(100)에 의해 또는 운영 체제 제조자에 의해 또는 제3자에 의해 제공될 수 있다. 이에 기초하여, 단계(202)에서, 제1 애플리케이션이 백그라운드에서 실행되고 있을 때 제1 하드웨어 리소스에 액세스하기 위한 제1 애플리케이션에 의한 시도가 검출된다. 또한, 이에 기초하여, 모바일 장치(100)의 제1 동작 모드가 취득되고, 제1 동작 모드는 모바일 장치가 잠금 상태에 있는지 또는 잠금 해제 상태에 있는지 여부의 표시를 포함할 수 있고; 단계(203)에서, 제1 동작 모드 동안 제1 하드웨어 리소스에 액세스하기 위한 제1 애플리케이션에 대한 허가를 승인하는 정책이 복수의 정책에 존재하는지를 결정하고; 단계(204)에서, 적절한 정책이 존재하고 정책에 기초한 동작이 그에 따라 실행될 수 있을 경우; 그러한 정책이 존재하지 않으면, 제1 애플리케이션에 의한 제1 하드웨어 리소스에 대한 액세스를 승인 또는 거부하기 위한 사용자 입력을 요청하는 알림이 제공되고; 단계(205)에서, 알림에 응답하는 사용자 입력이 수신되고; 알림에 대한 응답이 액세스가 허용되지 않는다는 것일 경우, 단계(206)에서 제1 애플리케이션에 의한 액세스 시도가 차단될 것이고; 그렇지 않으면, 단계(207)에서 제1 애플리케이션에 대한 적절한 실행이 수행되고; 이어서 단계(208)에서, 사용자 입력에 따라 제1 동작 모드 동안 제1 애플리케이션에 의한 제1 하드웨어 리소스에 대한 정책에 대한 액세스를 승인 또는 거부하기 위한 새로운 정책이 복수의 정책에 추가된다.
도 3은 본 개시물의 실시형태에 따른 네트워크(302)와 상호작용하는 하나 이상의 모바일 장치(301, 304, 305)를 포함하는 리소스 관리를 위한 시스템을 예시한다. 네트워크(302)는 예를 들어, 클라우드 서버일 수 있다. 본 개시물의 다양한 실시형태는 네트워크(302)와 모바일 장치(301, 304, 305)의 상호작용에 의해 적용될 수 있다.
정책(SP1)은 네트워크(302)로부터 모바일 장치(301)에 로딩될 수 있다. SP1은 예를 들어, 대부분의 사람들이 지지한 정책일 수 있거나, 또는 애플리케이션의 유틸리티의 기존의 낙관적 선택 알고리즘을 통해 계산된 정책일 수 있다. 정책(SP1)의 계산을 위해 특정한 의심스러운 시나리오(specified suspicious scenario)(SSS) 학습 시스템(303)이 제공될 수 있다. SSS 학습 시스템(303)은 업데이트된 정책을 주기적으로 네트워크(302)에 제공할 수 있다. SSS 학습 시스템(303)은 다양한 장치, 예컨대 장치(301, 304, 305)로부터 애플리케이션을 사용한 선호도 또는 결과의 사용자 데이터를 수신한다. SSS 학습 시스템(303)은 네트워크(302)의 요소일 수 있거나 또는 네트워크(302)와는 독립적으로 구성될 수 있다. 데이터베이스(306)는 사용자 피드백 데이터를 저장하도록 구성될 수 있다.
정책(SP1)의 계산은, 빅 데이터에서 최적의 정책을 산출해내는 것과 같이, 다양한 장치(301, 304, 및 305)로부터 수집된 빅 데이터로부터 선호도들의 패턴을 분석하는 프로세스일 수 있다. 분석은 복수의 사용자의 선호도, 엔지니어 그룹에 의해 학습된 안전한 및 안전하지 않은 소프트웨어 지식, 사용자에게 제시하는 가장 효과적인 방식 등에 기초할 수 있다. 모든 SSS 정책 파일은 하나의 xml 파일 또는 복수의 xml 파일로 데이터베이스(306)에 저장될 수 있다.
모바일 장치(301, 304, 305)는 그 최신 정책(SP2)을 주기적으로 네트워크(302)에 또는 학습 시스템(303)에 업로드할 수 있다. 업로드 기간은 매일 또는 이틀마다일 수 있거나 또는 모바일 장치(301, 304, 305)에 의해 설정될 수 있다.
정책은 하나 이상의 정책 파일을 포함할 수 있다. 정책 또는 정책 파일은 특정 상황하에 있는 정책이 무엇인지를 보여주는 하나 이상의 레코드를 포함할 수 있다. 네트워크(302)는 디폴트 SSS 정책 파일을 다양한 장치(301, 304, 305)로부터 수집되는 다양한 SSS 리포트에 기초하여 업데이트하고 나서; 업데이트된 디폴트 SSS 정책 파일을 다양한 장치(301, 304, 305)에 분포시킬 수 있다. 디폴트 SSS 정책 파일은 앞서 개시된 바와 같은 정책(SP1)일 수 있다. 업데이트된 디폴트 SSS 정책 파일은 아래에서는 정책(SP3)으로 정의될 수 있다. 클라우드 서버는 정책(SP3)을 다양한 장치(301, 304, 305)에 로딩할 수 있다. 다양한 장치(301, 304, 305)가 정책(SP3)을 수신하면, 장치내(on-device) 정책(SP1)이 SP3으로 대체될 수 있다.
정책 파일은 다양한 장치(301, 304, 305)의 검출기, 또는 다양한 장치(301, 304, 305) 상의 프로그램에 의해 판독 또는 검출될 수 있다. 검출기(311)는 애플리케이션 프로그래밍 인터페이스(Application Programming Interface)(API)에 결합될 수 있다. 검출기(311)는 API를 통해 다양한 장치(301, 304, 및 305)의 실행기(313)와 통신하여 정책 파일에 따라 실행을 수행할 수 있다. 검출기(311) 및 실행기(313)는 장치(301, 304, 305)에서 실행되는 단일 프로그램 또는 개별 프로그램들일 수 있다.
검출기(311) 또는 SSS 정책 파일을 검출하기 위한 프로그램은 백그라운드 프로세스로서 실행되는 컴퓨터 프로그램, 또는 상호작용 사용자의 직접적인 제어 하의 프로그램으로서 정의될 수 있다. 상이한 환경에서 이러한 프로그램에 대하여, 예를 들어, 데몬(daemon), 데몬 프로세스, 데몬 프로그램(DP), 고스트 잡(ghost job), 서비스, 스타티드 태스크(started task) 등과 같은 이름이 정의될 수 있다.
데몬의 부모(parent) 프로세스는 종종 개시(init) 프로세스일 수 있지만, 항상 그러한 것은 아니다. 데몬은 일반적으로 자식(child) 프로세스를 분기한 직후에 종료됨으로써 init로 하여금 자식 프로세스를 채택하게 하는 프로세스에 의해 생성되거나, 또는 init 프로세스에 의해 직접 론칭된다. 또한, 일반적으로 분기 및 종료에 의해 론칭된 데몬은 임의의 제어 단말로부터 프로세스를 분리하는 것과 같은 다른 동작을 수행할 수 있다. 이러한 절차는 종종 UNIX®에서의 데몬과 같은 다양한 편리한 루틴으로 구현된다.
시스템은 종종 네트워크 요청, 하드웨어 리소스 활동, 또는 다른 프로그램들에 응답하게 되는 부팅시에 데몬을 시작한다. 데몬은 또한 예정된 시간에 정의된 태스크를 수행할 수 있다.
데몬 프로그램(DP)은 지원을 위해 특정 운영 체제, 예컨대, Android®, IOS®를 호출하지 않아도 되는 상시 실행 프로그램일 수 있다. 그러나, 데몬 프로그램은 운영 체제에서 다른 프로그램들을 실행하기 위해 특정 운영 체제를 호출해야 할 수도 있다. 이러한 다른 프로그램들은 장치의 스크린에 대화상자를 팝업(pop up)하고, 정의된 SSS 정책 하에서 프로세스 실행-권한을 승인할지의 여부를 사용자들이 결정하게 할 수 있다. 대화상자는 사용자에게 알려져 있지만 주요 디스플레이 영역을 차지하지는 않는 모바일 장치의 스크린에서의 영역에 나타나는 알림일 수 있다. 예를 들어, 성가신 팝업 메시지를 대신하여, 배터리 아이콘이 잠시 적색으로 깜빡이는 등일 수 있다.
데몬 프로그램은 장치의 모든 리소스, 예컨대, 마이크로폰, 카메라, 스크린 등을 모니터링할 수 있다. 데몬 프로그램은 사용자 인터페이스(UI)의 일부일 수 있다.
데몬 프로그램은 운영 체제의 다른 프로그램들에 의한 특별한 트리거를 필요로 하지 않을 수도 있는 사전 검출기일 수 있다. 사전 검출기와는 달리, 사후 검출기는 절전 또는 대기 상태를 유지하다가 이벤트 또는 프로그램 등에 의해 기능하도록 트리거되어야 할 수 있다.
본 개시물의 실시형태는 전술한 바와 같은 하드웨어 리소스 액세스를 관리하는 방법을 예시하는 모바일 전자 장치를 제공한다. 장치의 검출기는 제1 SSS 정책 파일(SP1)을 장치에 로딩하고; 소프트웨어 및/또는 하드웨어 컴포넌트 활동을 청취하도록 구성된다. SP1은 모바일 장치의 제조자에 의해, 또는 모바일 네트워크를 관리하는 회사에 의해, 또는 운영 체제 관리자에 의해 미리 정의될 수 있거나, 또는 SP1은 클라우드 서버로부터 로딩될 수 있다. 제2 SSS 정책 파일(SP2)은 장치로 사용자에 의해 이루어진 선호도의 선택을 위한 레코드를 생성할 수 있는 로컬 SSS 정책일 수 있다. 모바일 장치는, SP2가 SP1에 비해 우선순위가 높다는 것과 같이, 선호되는 사용자-구성으로서 구성될 수 있다.
앞서 개시된 바와 같이, 검출기는 데몬 프로그램(DP)과 같은 제1 프로그램일 수 있다. 시스템 활동의 변경이 발생할 경우, DP는 어느 SSS 정책 제어가 발견되는지를 검출 및 결정할 수 있다. 예컨대, 구성된 실행 시간, 및 변경 내용이다. 발견되는 SSS 정책이 없으면, DP는 아무 것도 수행하지 않을 수 있다. 발견되는 SSS 정책이 있으면, DP는 제2 프로그램에 대한 조회를 진행할 수 있다. 제2 프로그램은 안드로이드 운영 체제에서 작성된 프로그램인 apk 프로그램, 또는 자바(java) 포맷으로 작성된 프로그램, 또는 유사한 목적으로 작동할 수 있는 임의의 다른 포맷의 프로그램일 수 있다.
도 4는 본 개시물의 실시형태에 따른 모바일 전자 장치의 하드웨어 리소스에 액세스하기 위한 컴퓨터-구현 기술을 예시하는 예시적인 흐름도이다.
단계(401)에서, 애플리케이션은 하드웨어 리소스와 같은 시스템 리소스에 액세스하려고 시도한다.
단계(402)에서, DP는 apk에게 모바일 장치의 스크린에 권한부여를 위한 메시지를 포스팅하도록 요청한다.
단계(402')에서, 정의된 SSS 정책(SP1) 하에서 프로세스 실행-권한을 승인할지의 여부를 결정한다.
단계(403)에서, 발견되는 SSS 정책이 없으면, DP는 아무 것도 수행하지 않을 수 있다. 또는 실행-권한이 승인되지 않으면, 애플리케이션은 실행이 금지된다.
단계(404)에서, 실행-권한이 승인되면, 이러한 "앱 + 발견된 SSS 정책" 조합이 SSS 정책에 대한 레코드로서 화이트리스트에 추가되고, 정책은 만료 날짜(ED)와 함께 저장될 수 있다. 화이트리스트는 특정한 특권, 서비스, 이동성, 액세스 또는 인정을 제공하는 리스트일 수 있다. 해당 리스트 상의 활동들은 수락, 승인 및/또는 인정될 것이다. 화이트리스트는 블랙리스트와 반대일 수 있다. 블랙리스트 상의 활동들은 거부되거나, 인정되지 않거나, 또는 배척될 수 있다.
단계(405)에서, 정책(SP2)에서의 레코드는 다음과 같은 데이터를 포함하여 생성될 수 있다:
S40, 앱 + 하드웨어 → SSS 정책
S41, 만료 설정 → 학습 시스템
S40, 또는 S41 같은 이러한 조합을 "앱 + 발견된 SSS 정책"으로 보여지는 실시예로서 정의될 수 있는 사용자 허가 조합(UPC) 또는 사용자 조합(UC)이라고 할 수 있으며; 모든 UPC는 만료 날짜(ED)로 구성되었을 수 있다.
UPC가 만료될 경우, DP는 대화상자 또는 메시지 등을 팝업시켜서 사용자에게 이 UPC에 대한 허가를 다시 요청할 수 있고; DP는 오디오 등을 트리거하여 경고 메시지를 사용자에게 푸시할 수 있다. 다시 승인되면, ED도 업데이트될 수 있다. 허가 기간(PD)은 두 번째로 확인되기 때문에 증가될 수 있다. PD는 허가의 기간, 예컨대, 일주일, 한 달, 무기한 등으로 정의될 수 있다. 승인되지 않으면, 이 UPC는 취소될 수 있다.
단계(405')에서, 기존의 SP2가 검출될 경우, 단계(404)에서 설명된 바와 같은 레코드로 SP2를 업데이트한다.
사용자의 선호도는 사용자에 의한 선택으로 매번 수집될 수 있다.
단계(406)에서, SP1은 단계(404)에서 설명된 바와 같은 화이트리스트에 추가된 조합으로 업데이트될 수 있다.
본 개시물의 실시형태들에서 설명되는 바와 같은 해법을 예시하기 위한 모바일 전자 장치가 제조된다.
도 5는 본 개시물의 실시형태에 따른 모바일 전자 장치(500)의 컴포넌트들을 예시하는 블록도이다. 장치(500)는 전술한 바와 같은 실시형태들을 수행하도록 구성된다. 장치(500)는 메모리(501), 프로세서(502), 주변 장치 인터페이스(503), 메모리 제어기(504), 그래픽 처리 유닛(GPU)(505), 하나 이상의 센서(506)를 포함한다. 또한, 프로세서는 기능 제한 모듈(507), 활성화 모듈(508), 및 중앙 처리 장치(CPU)(509)와 결합될 수 있다. 또한, CPU는 주변 장치 인터페이스(503)에 결합될 수 있다. 장치는 와이파이 인터페이스 및/또는 블루투스 인터페이스를 포함할 수 있는 무선 주파수(Radio Frequency)(RF) 회로(521)를 더 포함할 수 있다. 장치(500)는 하나 이상의 외부 포트(522), 하나 이상의 스피커(525)와 더 연결될 수 있는 오디오 회로(523), 및/또는 마이크로폰(526)을 더 포함할 수 있다. 장치는 주변 장치 인터페이스(503)와 결합될 수 있는 스크린(524)을 더 포함할 수 있다. 이들 컴포넌트는 하나 이상의 통신 버스 또는 신호 라인을 통해 통신한다. 모바일 전자 장치(500)는, 예를 들어, 핸드헬드 컴퓨터, 태블릿 컴퓨터, 휴대폰, 미디어 플레이어 또는 개인용 정보 단말기(PDA)일 수 있다. 도 5에 도시되는 다양한 컴포넌트들은, 하나 이상의 신호 처리 회로 및/또는 주문형 집적 회로를 포함하여, 하드웨어 리소스로 또는 하드웨어 리소스와 소프트웨어 리소스의 조합으로 구현될 수 있다.
본 개시물의 다른 실시형태들에 있어서, 메모리(501)는 인터넷, 인트라넷(들), 로컬 에어리어 네트워크(Local Area Networks)(LANs), 와이드 로컬 에어리어 네트워크(Wide Local Area Networks)(WLANs), 스토리지 에어리어 네트워크(Storage Area Networks)(SANs) 등, 또는 이들의 임의의 적절한 조합과 같이, 모바일 전자 장치(500)로부터 원격으로 위치되는 스토리지를 포함할 수 있다.
주변 장치 인터페이스(503)는 장치(500)의 입력 및 출력 주변 장치를 CPU(509), GPU(505) 및 메모리(501)에 결합한다. CPU(509)는 메모리(501)에 저장된 다양한 소프트웨어 프로그램 및/또는 명령어 세트를 실행하여 모바일 전자 장치(500)에 대한 다양한 기능을 수행하고 데이터를 처리한다. GPU(505)는 스크린(524)에 대한 그래픽 처리 기능을 취급한다. 일부 실시형태에 있어서는, 그래픽 처리 기능이 CPU(509)에 의해 취급되고, 그에 따라 GPU(505)가 절약될 수 있다.
외부 포트(522)는 직접 또는 네트워크를 통해 원격으로 다른 장치들에 결합되도록 되어 있다. 예를 들어, 외부 포트(522)는 범용 직렬 버스(Universal Serial Bus)(USB), 파이어와이어(FireWire), 외부 저장 매체를 수용하기 위한 메모리 슬롯 등을 포함할 수 있다.
RF(radio frequency) 회로(521)는 전자기 신호라고 할 수도 있는 RF 신호를 수신 및 송신한다. RF 회로(521)는 전기 신호를 전자기 신호로/로부터 변환하고, 전자기 신호를 통해 통신 네트워크 및 다른 통신 장치와 통신한다. RF 회로(521)는, 제한되는 것은 아니지만, 안테나 시스템, RF 트랜시버, 하나 이상의 증폭기, 튜너, 하나 이상의 오실레이터, 디지털 신호 프로세서, CODEC 칩셋, 가입자 식별 모듈(SIM) 카드, 메모리 등을 포함하여, 이들 기능을 수행하기 위한 잘-알려진 회로를 포함할 수 있다. RF 회로(521)는 인터넷, 인트라넷, 및/또는 무선 네트워크, 예를 들면 셀룰러 전화 네트워크, 무선 로컬 에어리어 네트워크(LAN) 및/또는 메트로폴리탄 에어리어 네트워크(MAN)와 같은 네트워크와 통신할 수 있으며, 무선 통신에 의해 다른 장치와 통신할 수 있다. 무선 통신 네트워크는, 제한되는 것은 아니지만, 이동 통신 글로벌 시스템(Global System for Mobile Communications)(GSM), 이디지이(Enhanced Data GSM Environment)(EDGE), 고속 다운링크 패킷 액세스(HSDPA), 고속 업링크 패킷 액세스(HSUPA), 광대역 코드 분할 다중 액세스(W-CDMA), 코드 분할 다중 액세스(CDMA), 시분할 다중 액세스(TDMA), 블루투스(Bluetooth), 와이파이(Wireless Fidelity)(Wi-Fi)(예컨대, IEEE 802.11a, IEEE 802.11b, IEEE 802.11g 및/또는 IEEE 802.11n), 인터넷 전화 통화 프로토콜(VoIP), Wi-MAX, 또는 임의의 다른 적절한 통신 프로토콜을 포함하여, 복수의 통신 표준, 프로토콜 및 기술 중 어느 하나를 이용할 수 있다.
오디오 회로(523)는 하나 이상의 스피커(525) 및 마이크로폰(526)과 연결된다. 이들 컴포넌트는 함께 사용자와 모바일 전자 장치(500) 사이의 오디오 인터페이스를 제공한다. 오디오 회로(523)는 주변 장치 인터페이스(503)로부터 오디오 데이터를 수신하고, 오디오 데이터를 전기 신호로 변환하고, 전기 신호를 스피커(들)(525)로 전송한다. 스피커(들)(525)는 전기 신호를 인간이 청취할 수 있는 음파로 변환한다. 또한, 오디오 회로(523)는 음파로부터 마이크로폰(526)에 의해 변환되는 전기 신호를 수신한다. 오디오 회로(523)는 전기 신호를 오디오 데이터로 변환하고 오디오 데이터를 처리를 위해 주변 장치 인터페이스(503)로 전송한다. 오디오 데이터는 주변 장치 인터페이스(503)에 의해 메모리(501) 및/또는 RF 회로(521)로부터/로 검색 및/또는 전송될 수 있다.
스크린(524)은 터치-스크린 또는 폴딩된 스크린일 수 있으며, 장치와 사용자 사이에 출력 인터페이스 및 입력 인터페이스를 제공한다. 스크린(524)은 텍스트, 그래픽, 비디오, 및 이들의 임의의 조합을 포함할 수 있는 시각적 출력을 사용자에게 디스플레이한다. 시각적 출력의 일부 또는 전부는 사용자-인터페이스 객체에 대응할 수 있으며, 그 추가적인 세부내용은 아래에서 설명된다. 스크린(524)은 LCD(액정 디스플레이) 기술, 또는 다른 공지된 디스플레이 기술을 사용할 수 있다. 또한, 스크린(524)은 햅틱 및/또는 촉각 접촉에 기초하여 사용자로부터의 입력을 수용한다.
메모리(501)에 저장된 운영 체제(510)(예컨대, Android(안드로이드), RTXC, Linux(리눅스), UNIX®, Apple OS® X, Microsoft Windows®, 또는 VxWorks®와 같은 내장형 운영 체제)는 일반적인 시스템 작업(예컨대, 메모리 관리, 저장 장치 제어, 전력 관리 등)을 제어 및 관리하기 위한 다양한 소프트웨어 컴포넌트 및/또는 드라이버를 포함할 수 있으며, 다양한 하드웨어 컴포넌트와 소프트웨어 컴포넌트 사이의 통신을 가능하게 한다. 많은 종류의 운영 체제가 적용될 수 있지만, 하기의 설명은 본 발명의 실시형태들을 설명하기 위한 실시예로서 안드로이드를 사용할 것이다. 다양한 애플리케이션들이 운영 체제(510)에 설치될 수 있다.
SSS 정책은 모바일 전자 장치의 API에 의해 모바일 전자 장치의 프로세서에 통신될 수 있는 하나 이상의 애플리케이션을 포함할 수 있다. SSS 정책은 미리 구성될 수 있거나 또는 때때로 동작 중에 개량될 수 있다.
컴퓨터 프로그래밍에 있어서, API는 애플리케이션 소프트웨어를 구축하기 위한 일련의 서브루틴 정의, 프로토콜, 및 툴이다. 일반적으로, 이는 다양한 소프트웨어 컴포넌트들 사이의 일련의 명확하게 정의된 통신 방법이다. API는 웹-기반 시스템, 운영 체제, 데이터베이스 시스템, 및 컴퓨터 하드웨어 또는 소프트웨어 라이브러리에 대한 것일 수 있다. API 사양은 많은 형태를 취할 수 있지만, 종종 루틴, 데이터 구조, 객체 클래스, 변수 또는 원격 호출에 대한 사양을 포함할 수 있다. POSIX, 마이크로소프트 윈도우 API(Microsoft Windows API), C++ 표준 템플릿 라이브러리(C++ Standard Template Library) 및 자바 API(Java API)가 상이한 API 형태의 실시예들이다. API에 대한 도큐멘테이션은 일반적으로 사용을 용이하게 하기 위해 제공된다.
예를 들어, 그래픽 라이브러리의 API 세트는 포인터를 그리는 방법을 정의하고 그래픽 출력 장치에 디스플레이될 수 있다. 애플리케이션이 포인터 기능을 필요로 할 경우, 이 API 세트에 대한 링크를 참조할 수 있다.
API는 애플리케이션과 운영 체제 사이의 인터페이스를 지정할 수 있다. POSIX는, 예를 들어, POSIX 준수 운영 체제에 대하여 작성된 애플리케이션이 다른 POSIX 준수 운영 체제에 대하여 컴파일될 수 있게 하는 것을 목표로 하는 공통 API 세트를 지정한다. 리눅스(Linux) 및 버클리 소프트웨어 배포(Berkeley Software Distribution)는 POSIX API를 구현하는 운영 체제의 예들이다.
원격 API를 통해, 개발자는, 언어 또는 플랫폼에 관계없이, 서로 다른 기술들이 함께 작동할 수 있게 하는 특정 통신 표준인 프로토콜을 통해 원격 리소스를 조작할 수 있다. 예를 들어, 자바 데이터베이스 접속성(Java Database Connectivity) API를 통해, 개발자는 동일한 기능 세트로 여러 타입의 데이터베이스를 조회할 수 있는 반면, 자바 원격 방법 호출(Java remote method invocation) API는 자바 원격 방법 프로토콜(Java Remote Method Protocol)을 사용하여, 원격으로 동작하지만 개발자에게는 로컬로 보이는 기능들의 호출을 허용한다. 따라서, 원격 API는 객체-지향 프로그래밍에서 객체 추상화를 유지하는 데 유용하고; 프록시 객체에서 로컬로 실행되는 메소드 호출(method call)은 원격 프로토콜을 사용하여 원격 객체에서 상응하는 방법을 호출하고, 로컬로 반환값으로 사용될 결과를 획득한다. 프록시 객체에 대한 수정은 원격 객체에 대한 상응하는 수정을 마찬가지로 초래하게 된다.
웹 API는 기업과 그 자산을 사용하는 애플리케이션 사이에서 상호작용을 발생하는 정의된 인터페이스이다. API 접근 방식은 다양한 유형의 소비자에게 서비스를 제공하는 상이한 애플리케이션들에 일련의 서비스에 대한 프로그램 가능 인터페이스를 제공하는 것을 주제로 하는 아키텍처 접근 방식이다. API는, 웹 개발의 맥락에서 사용될 경우, 일반적으로 확장성 마크업 언어(Extensible Markup Language)(XML) 또는 자바스크립트 오브젝트 노테이션(JavaScript Object Notation)(JSON) 포맷인 응답 메시지 구조의 정의와 함께, 하이퍼텍스트 전송 프로토콜(Hypertext Transfer Protocol)(HTTP) 요청 메시지의 세트로서 정의되는 것이 보통이다. 사이트 개발자가 배송 업체의 요금표를 웹 데이터베이스에 입력할 필요 없이, 배송 서비스의 주문을 용이하게 하고 현재의 배송 비용을 자동으로 포함하도록, 전자 상거래 중심의 웹 사이트에 추가될 수 있는 배송 회사 API가 일례일 수 있다. "웹 API"는 기록 통계적으로 웹 서비스와 사실상 동의어였지만, 최근 추세(소위 Web 2.0)는 단순 객체 접근 프로토콜(Simple Object Access Protocol)(SOAP) 기반의 웹 서비스 및 서비스-지향 아키텍처(SOA)로부터, 보다 직접적인 웹 표현 상태 변경(representational state transfer)(REST) 스타일 웹 리소스 및 리소스-지향 아키텍처(ROA)로 이동하고 있다. 이러한 추세의 일부는 웹-기반의 온톨로지 엔지니어링(ontology engineering) 기술을 장려하는 개념인, 리소스 기술 프레임워크(Resource Description Framework)(RDF)로의 시맨틱 웹(Semantic Web) 이동과 관련된다. 웹 API는 다수의 API를 매시업(mash-up)으로 알려진 새로운 애플리케이션으로 조합하는 것을 허용한다. 소셜 미디어 공간에서, 웹 API에 의해, 웹 커뮤니티들이 커뮤니티와 애플리케이션 사이에서 콘텐츠 및 데이터를 공유할 수 있게 되었다. 이렇게 해서, 한 곳에서 생성된 콘텐츠가 웹 상의 다수의 위치로 동적으로 포스팅 및 업데이트될 수 있다.
본 개시물이 특정한 특징들 및 그 실시형태들을 참조하여 설명되었지만, 하기의 청구범위에 의해 정의된 바와 같은 본 개시물의 사상 및 범위로부터 일탈함이 없이 다양한 변경 및 대체가 이루어질 수 있음을 이해해야 한다.

Claims (20)

  1. 모바일 장치에서 하드웨어 리소스 액세스를 관리하기 위한 방법으로서,
    상기 모바일 장치 상의 제1 애플리케이션에 대하여 상기 모바일 장치의 제1 하드웨어 리소스에 액세스하기 위한 허가를 승인하는 제1 사용자 입력을 수신하고, 이에 기초하여, 상기 제1 애플리케이션에게 상기 제1 하드웨어 리소스에 액세스하기 위한 허가를 승인하는 단계;
    상기 제1 애플리케이션에게 상기 제1 하드웨어 리소스에 액세스하기 위한 허가를 승인한 후에, 상기 애플리케이션이 백그라운드에서 실행되고 있을 때 상기 제1 하드웨어 리소스에 액세스하기 위한 상기 제1 애플리케이션에 의한 시도를 검출하는 단계, 및 이에 기초하여:
    상기 모바일 장치의 제1 동작 모드를 취득하는 단계;
    상기 제1 동작 모드 동안 상기 제1 하드웨어 리소스에 액세스하기 위한 상기 제1 애플리케이션에 대한 허가를 승인하는 정책이 복수의 정책에 존재하지 않는다면, 상기 제1 애플리케이션에 의한 상기 제1 하드웨어 리소스에 대한 액세스를 승인 또는 거부하기 위한 사용자 입력을 요청하는 알림을 제공하는 단계;
    상기 알림에 응답하는 제2 사용자 입력을 수신하는 단계;
    상기 알림에 응답하는 상기 제2 사용자 입력이 액세스가 허용되지 않는다는 것일 경우, 상기 제1 애플리케이션에 의한 상기 제1 하드웨어 리소스에 대한 액세스 시도를 차단하는 단계를 포함하는
    방법.
  2. 제1항에 있어서,
    상기 제2 사용자 입력은 상기 제1 하드웨어 리소스에 대한 액세스를 승인하고, 상기 방법은, 상기 제1 하드웨어 리소스에 액세스하기 위한 상기 제1 애플리케이션에게 액세스를 승인하는 단계를 더 포함하는
    방법.
  3. 제1항에 있어서,
    상기 방법은,
    상기 알림에 응답하는 상기 제2 사용자 입력이 상기 액세스가 허용된다는 것일 경우, 상기 제2 사용자 입력에 따라 상기 제1 동작 모드 동안 상기 제1 애플리케이션에 의한 상기 제1 하드웨어 리소스에 대한 액세스를 승인하는 새로운 정책을 상기 복수의 정책에 추가하는 단계를 더 포함하는
    방법.
  4. 제1항에 있어서,
    상기 제1 하드웨어 리소스는 마이크로폰 입력, 카메라 입력, 터치 스크린 입력, 키보드 입력, 디스플레이 출력, 햅틱 출력, 모바일 장치 위치 정보, 위치 서비스 또는 근접도 센서 판독을 포함하는
    방법.
  5. 제4항에 있어서,
    상기 카메라 입력은 적외선 카메라로부터의 입력인
    방법.
  6. 제3항에 있어서,
    상기 복수의 정책을 서버로부터 수신하고 상기 새로운 정책을 상기 서버에 송신하는 단계를 더 포함하는
    방법.
  7. 제1항에 있어서,
    액세스를 승인 또는 거부하기 위한 사용자 입력을 요청하는 알림을 제공하는 단계는 상기 모바일 장치의 디스플레이에 그래픽 사용자 인터페이스를 제공하는 단계 또는 상기 모바일 장치의 오디오 출력을 사용하여 자연어 메시지를 제공하는 단계를 포함하는
    방법.
  8. 제1항에 있어서,
    상기 동작 모드는 상기 모바일 장치가 잠금 상태에 있는지 또는 잠금 해제 상태에 있는지 여부의 표시, 상기 모바일 장치에 설치된 하나 이상의 다른 애플리케이션의 표시, 상기 모바일 장치에서 현재 실행되는 하나 이상의 다른 애플리케이션의 표시, 또는 상기 모바일 장치의 현재 위치 중 하나 이상을 포함하는
    방법.
  9. 제3항에 있어서,
    상기 새로운 정책을 상기 복수의 정책에 추가한 이래 일정 기간이 경과했다고 결정하고, 이에 기초하여, 상기 복수의 정책으로부터 상기 새로운 정책을 제거하는 단계를 더 포함하는
    방법.
  10. 모바일 장치로서,
    그래픽 정보를 디스플레이하기 위한 스크린;
    명령어를 저장하는 메모리; 및
    상기 메모리 및 상기 스크린과 통신하는 하나 이상의 프로세서를 포함하고, 상기 하나 이상의 프로세서는 상기 명령어를 실행하여:
    상기 모바일 장치 상의 제1 애플리케이션에 대하여 상기 모바일 장치의 제1 하드웨어 리소스에 액세스하기 위한 허가를 승인하는 제1 사용자 입력을 수신하고, 이에 기초하여, 상기 제1 애플리케이션에게 상기 제1 하드웨어 리소스에 액세스하기 위한 허가를 승인하고;
    상기 제1 애플리케이션에게 상기 제1 하드웨어 리소스에 액세스하기 위한 허가를 승인한 후에, 상기 애플리케이션이 백그라운드에서 실행되고 있을 때 상기 제1 하드웨어 리소스에 액세스하기 위한 상기 제1 애플리케이션에 의한 시도를 검출하고, 이에 기초하여:
    상기 모바일 장치의 제1 동작 모드를 취득하고;
    상기 제1 동작 모드 동안 상기 제1 하드웨어 리소스에 액세스하기 위한 상기 제1 애플리케이션에 대한 허가를 승인하는 정책이 복수의 정책에 존재하지 않는 경우, 상기 제1 애플리케이션에 의한 상기 제1 하드웨어 리소스에 대한 액세스를 승인 또는 거부하기 위한 사용자 입력을 요청하는 알림을 제공하고;
    상기 알림에 응답하는 제2 사용자 입력을 수신하고;
    상기 알림에 응답하는 상기 제2 사용자 입력이 액세스가 허용되지 않는다는 것일 경우, 상기 제1 애플리케이션에 의한 상기 제1 하드웨어 리소스에 대한 액세스 시도를 차단하도록 구성되는
    장치.
  11. 제10항에 있어서,
    상기 제2 사용자 입력은 상기 제1 하드웨어 리소스에 대한 액세스를 승인하고, 상기 하나 이상의 프로세서는 상기 제1 하드웨어 리소스에 액세스하기 위한 상기 제1 애플리케이션에게 액세스를 승인하도록 구성되는
    장치.
  12. 제10항에 있어서,
    상기 하나 이상의 프로세서는 상기 명령어를 실행하여:
    상기 알림에 응답하는 상기 제2 사용자 입력이 상기 액세스가 허용된다는 것일 경우, 상기 제2 사용자 입력에 따라 상기 제1 동작 모드 동안 상기 제1 애플리케이션에 의한 상기 제1 하드웨어 리소스에 대한 액세스를 승인하는 새로운 정책을 상기 복수의 정책에 추가하도록 더 구성되는
    장치.
  13. 제10항에 있어서,
    상기 제1 하드웨어 리소스는 마이크로폰 입력, 카메라 입력, 터치 스크린 입력, 디스플레이 출력, 햅틱 출력, 모바일 장치 위치 정보, 위치 서비스 또는 근접도 센서 판독을 포함하는
    장치.
  14. 제13항에 있어서,
    상기 카메라 입력은 적외선 카메라로부터의 입력인
    장치.
  15. 제12항에 있어서,
    상기 하나 이상의 프로세서가 상기 복수의 정책을 서버로부터 수신하고 상기 새로운 정책을 상기 서버에 송신하도록 구성되는 것을 더 포함하는
    장치.
  16. 제10항에 있어서,
    액세스를 승인 또는 거부하기 위한 사용자 입력을 요청하는 알림을 제공하는 것은 상기 모바일 장치의 디스플레이에 그래픽 사용자 인터페이스를 제공하는 것 또는 상기 모바일 장치의 오디오 출력을 사용하여 자연어 메시지를 제공하는 것을 포함하는
    장치.
  17. 제10항에 있어서,
    상기 동작 모드는 상기 모바일 장치가 잠금 상태에 있는지 또는 잠금 해제 상태에 있는지 여부의 표시, 상기 모바일 장치에 설치된 하나 이상의 다른 애플리케이션의 표시, 상기 모바일 장치에서 현재 실행되는 하나 이상의 다른 애플리케이션의 표시, 또는 상기 모바일 장치의 현재 위치 중 하나 이상을 포함하는
    장치.
  18. 제12항에 있어서,
    상기 하나 이상의 프로세서가 상기 새로운 정책을 상기 복수의 정책에 추가한 이래 일정 기간이 경과했다고 결정하고, 이에 기초하여, 상기 복수의 정책으로부터 상기 새로운 정책을 제거하도록 구성되는 것을 더 포함하는
    장치.
  19. 모바일 전자 장치로서,
    그래픽 정보를 디스플레이하기 위한 스크린;
    명령어를 저장하는 메모리; 및
    상기 메모리 및 상기 스크린과 통신하는 하나 이상의 프로세서를 포함하고, 상기 하나 이상의 프로세서는 상기 명령어를 실행하여 제1항 내지 제9항 중 어느 한 항에 기재된 방법을 수행하도록 구성되는
    장치.
  20. 컴퓨터 판독 가능 저장 매체에 기록된, 컴퓨터 판독 가능 명령어를 포함하는 컴퓨터 프로그램으로서, 상기 명령어가 컴퓨터 상에서 실행될 때, 상기 컴퓨터가 제1항 내지 제9항 중 어느 한 항에 기재된 방법을 수행할 수 있게 되는 컴퓨터 프로그램.
KR1020207012539A 2017-10-26 2018-10-11 전자 장치에서 하드웨어 리소스 액세스를 관리하기 위한 방법 및 장치 KR102351203B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/795,101 US10853490B2 (en) 2017-10-26 2017-10-26 Method and apparatus for managing hardware resource access in an electronic device
US15/795,101 2017-10-26
PCT/CN2018/109853 WO2019080713A1 (en) 2017-10-26 2018-10-11 METHOD AND APPARATUS FOR MANAGING ACCESS TO HARDWARE RESOURCES IN AN ELECTRONIC DEVICE

Publications (2)

Publication Number Publication Date
KR20200060488A KR20200060488A (ko) 2020-05-29
KR102351203B1 true KR102351203B1 (ko) 2022-01-13

Family

ID=66244023

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207012539A KR102351203B1 (ko) 2017-10-26 2018-10-11 전자 장치에서 하드웨어 리소스 액세스를 관리하기 위한 방법 및 장치

Country Status (6)

Country Link
US (2) US10853490B2 (ko)
EP (1) EP3682360A4 (ko)
JP (1) JP7020630B2 (ko)
KR (1) KR102351203B1 (ko)
CN (2) CN111247520B (ko)
WO (1) WO2019080713A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102477043B1 (ko) * 2017-11-08 2022-12-14 삼성전자주식회사 전자 장치 및 그의 제어 방법
CN112334871A (zh) * 2019-06-05 2021-02-05 谷歌有限责任公司 用于基于数字助理的应用的动作验证
US20200388280A1 (en) 2019-06-05 2020-12-10 Google Llc Action validation for digital assistant-based applications
WO2021022433A1 (zh) * 2019-08-05 2021-02-11 宇龙计算机通信科技(深圳)有限公司 一种应用监控方法、装置、存储介质及电子设备
CN112487451B (zh) * 2020-11-30 2023-01-17 北京字跳网络技术有限公司 展示方法、装置和电子设备
CN113115482B (zh) * 2021-03-31 2022-11-22 影石创新科技股份有限公司 基于安卓系统的终端通讯方法、装置、终端及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130246470A1 (en) * 2012-03-14 2013-09-19 International Business Machines Corporation Rule-based access control list management
US20160119358A1 (en) * 2014-10-27 2016-04-28 Cellrox, Ltd. Techniques for managing access to hardware resources on multiple-persona mobile technology platforms
US20160191534A1 (en) * 2014-12-30 2016-06-30 Facebook, Inc. Methods and Systems for Managing Permissions to Access Mobile Device Resources
US20170118611A1 (en) * 2015-10-27 2017-04-27 Blackberry Limited Monitoring resource access

Family Cites Families (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8341749B2 (en) 2009-06-26 2012-12-25 Vmware, Inc. Preventing malware attacks in virtualized mobile devices
US9202049B1 (en) 2010-06-21 2015-12-01 Pulse Secure, Llc Detecting malware on mobile devices
US8811948B2 (en) 2010-07-09 2014-08-19 Microsoft Corporation Above-lock camera access
US8918834B1 (en) * 2010-12-17 2014-12-23 Amazon Technologies, Inc. Creating custom policies in a remote-computing environment
US20120167218A1 (en) 2010-12-23 2012-06-28 Rajesh Poornachandran Signature-independent, system behavior-based malware detection
US20120204235A1 (en) * 2011-02-08 2012-08-09 Joe Jaudon Updating Resource Access Permissions in a Virtual Computing Environment
US20120291103A1 (en) * 2011-05-09 2012-11-15 Google Inc. Permission-based administrative controls
US8656465B1 (en) 2011-05-09 2014-02-18 Google Inc. Userspace permissions service
KR101295709B1 (ko) * 2011-08-24 2013-09-16 주식회사 팬택 백그라운드 프로세스에 대한 보안 정보 제공 장치 및 방법
KR101285394B1 (ko) * 2011-08-24 2013-08-23 주식회사 팬택 휴대 단말 시스템의 대기 상태에서의 퍼미션 제어 장치
US9733791B2 (en) * 2011-09-12 2017-08-15 Microsoft Technology Licensing, Llc Access to contextually relevant system and application settings
US9215225B2 (en) 2013-03-29 2015-12-15 Citrix Systems, Inc. Mobile device locking with context
US9043918B2 (en) 2011-10-13 2015-05-26 Mcafee, Inc. System and method for profile based filtering of outgoing information in a mobile environment
US20130097517A1 (en) 2011-10-18 2013-04-18 David Scott Reiss Permission Control for Applications
FR2984049B1 (fr) 2011-12-12 2014-06-20 Oberthur Technologies Restriction d'acces aux ressources d'un terminal
CN103246834B (zh) 2012-02-07 2016-08-17 联想(北京)有限公司 控制方法和电子设备
US9027076B2 (en) * 2012-03-23 2015-05-05 Lockheed Martin Corporation Method and apparatus for context aware mobile security
US9003080B2 (en) * 2012-09-26 2015-04-07 International Business Machines Corporation Managed access to peripherals of a service terminal
US9223952B2 (en) 2012-09-28 2015-12-29 Intel Corporation Allowing varied device access based on different levels of unlocking mechanisms
US9424409B2 (en) * 2013-01-10 2016-08-23 Lookout, Inc. Method and system for protecting privacy and enhancing security on an electronic device
JP6047021B2 (ja) 2013-01-23 2016-12-21 キヤノン株式会社 撮影装置及びその制御方法、プログラム
US8984274B1 (en) * 2013-01-29 2015-03-17 Microstrategy Incorporated Secure data updates
US9693233B2 (en) * 2013-03-13 2017-06-27 Location Sentry Corp. Intelligent agent for privacy and security application
US9547607B2 (en) * 2013-06-27 2017-01-17 Microsoft Technology Licensing, Llc Brokering application access for peripheral devices
US9294364B2 (en) * 2013-11-01 2016-03-22 Nokia Technologies Oy Method and apparatus for transforming application access and data storage details to privacy policies
US9413778B1 (en) * 2013-12-18 2016-08-09 Amazon Technologies, Inc. Security policy creation in a computing environment
US9230134B1 (en) * 2014-01-17 2016-01-05 Google Inc. Privacy setting metadata for application developers
KR102127720B1 (ko) 2014-04-22 2020-06-29 삼성전자주식회사 애플리케이션을 이용하는 사용자 단말의 위치 정보 접근 제어 방법 및 그 장치
US9489524B2 (en) * 2014-05-23 2016-11-08 Blackberry Limited Intra-application permissions on an electronic device
KR20160098912A (ko) 2015-02-11 2016-08-19 한국전자통신연구원 어플리케이션 퍼미션 재조정 방법 및 이를 수행하는 사용자 단말
US9591443B2 (en) 2015-06-01 2017-03-07 Apple Inc. Location service management
US9836596B2 (en) * 2015-07-08 2017-12-05 Google Inc. Methods and systems for controlling permission requests for applications on a computing device
US10298617B2 (en) 2015-07-08 2019-05-21 T-Mobile Usa, Inc. Trust policy for telecommunications device
US10127403B2 (en) * 2015-07-30 2018-11-13 Samsung Electronics Co., Ltd. Computing system with privacy control mechanism and method of operation thereof
CN108370499B (zh) * 2015-10-27 2022-05-10 黑莓有限公司 检测资源访问
US10114944B1 (en) * 2015-11-12 2018-10-30 Symantec Corporation Systems and methods for classifying permissions on mobile devices
CN105574402A (zh) 2015-12-21 2016-05-11 联想(北京)有限公司 一种控制方法及电子设备
US10592659B2 (en) * 2016-02-26 2020-03-17 Lenovo Enterprise Solutions (Singapore) Pte. Ltd Computing device application program behavior profile
CN106022091A (zh) 2016-05-11 2016-10-12 青岛海信移动通信技术股份有限公司 应用程序的授权方法及装置
CN106201490A (zh) 2016-06-30 2016-12-07 天脉聚源(北京)传媒科技有限公司 一种优化应用程序运行的方法及装置
CN106201683A (zh) 2016-06-30 2016-12-07 宇龙计算机通信科技(深圳)有限公司 一种管理应用的方法、装置及终端
CN106201684A (zh) 2016-06-30 2016-12-07 宇龙计算机通信科技(深圳)有限公司 一种管理应用的方法及终端
CN106529270B (zh) 2016-09-22 2020-04-07 南京酷派软件技术有限公司 一种应用程序授权方法及装置
US10438101B2 (en) * 2017-04-09 2019-10-08 Eyal Almog Systems and methods for establishing a communication channel based on a code
US10713354B2 (en) * 2017-07-27 2020-07-14 Samsung Electronics Co., Ltd. Methods and apparatus to monitor permission-controlled hidden sensitive application behavior at run-time
KR102405752B1 (ko) * 2017-08-23 2022-06-08 삼성전자주식회사 어플리케이션 프로그램의 권한을 제어하는 방법 및 전자 장치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130246470A1 (en) * 2012-03-14 2013-09-19 International Business Machines Corporation Rule-based access control list management
US20160119358A1 (en) * 2014-10-27 2016-04-28 Cellrox, Ltd. Techniques for managing access to hardware resources on multiple-persona mobile technology platforms
US20160191534A1 (en) * 2014-12-30 2016-06-30 Facebook, Inc. Methods and Systems for Managing Permissions to Access Mobile Device Resources
US20170118611A1 (en) * 2015-10-27 2017-04-27 Blackberry Limited Monitoring resource access

Also Published As

Publication number Publication date
CN115455442A (zh) 2022-12-09
WO2019080713A1 (en) 2019-05-02
CN111247520A (zh) 2020-06-05
JP2021500641A (ja) 2021-01-07
KR20200060488A (ko) 2020-05-29
JP7020630B2 (ja) 2022-02-16
EP3682360A1 (en) 2020-07-22
US10853490B2 (en) 2020-12-01
EP3682360A4 (en) 2020-08-12
US20190130107A1 (en) 2019-05-02
CN111247520B (zh) 2022-08-19
US20210019410A1 (en) 2021-01-21

Similar Documents

Publication Publication Date Title
KR102351203B1 (ko) 전자 장치에서 하드웨어 리소스 액세스를 관리하기 위한 방법 및 장치
US11204993B2 (en) Location-based configuration profile toggling
US9275221B2 (en) Context-aware permission control of hybrid mobile applications
US9076020B2 (en) Protected mode for mobile communication and other devices
CN106471466B (zh) 短暂应用
US9223941B2 (en) Using a URI whitelist
US20120291102A1 (en) Permission-based administrative controls
EP3610404B1 (en) Methods and apparatus to monitor permission-controlled hidden sensitive application behavior at run-time
US10298586B2 (en) Using a file whitelist
WO2012154828A1 (en) Permission-based administrative controls
JP2007316637A (ja) 個別アプリケーション・プログラム用のスクリーンセーバ
JP6858256B2 (ja) 決済アプリケーション分離方法および装置、ならびに端末
EP3021250B1 (en) Electronic device and method for suggesting response manual in occurrence of denial
US9888070B2 (en) Brokered advanced pairing
US20170126662A1 (en) Federating Devices to Improve User Experience with Adaptive Security
KR20140068940A (ko) 애플리케이션용 콘텐츠 핸들링 기법
Dar et al. Smartphone operating systems: Evaluation & enhancements
KR101314720B1 (ko) 모바일 단말기의 다중환경 제공방법 및 모바일 단말기
KR20170115338A (ko) 보안 예보 시스템 및 방법
Saeed et al. Short message service remotely mobile device control
CN113486331A (zh) Api调用请求处理方法、装置、电子设备及可读存储介质
KR20140122971A (ko) 이중환경을 제공하는 모바일 단말기 및 그 제공방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant