KR20140093937A - 브라우저 장치 액세스 프록시 - Google Patents

브라우저 장치 액세스 프록시 Download PDF

Info

Publication number
KR20140093937A
KR20140093937A KR1020147011396A KR20147011396A KR20140093937A KR 20140093937 A KR20140093937 A KR 20140093937A KR 1020147011396 A KR1020147011396 A KR 1020147011396A KR 20147011396 A KR20147011396 A KR 20147011396A KR 20140093937 A KR20140093937 A KR 20140093937A
Authority
KR
South Korea
Prior art keywords
user data
dap
access
data
web application
Prior art date
Application number
KR1020147011396A
Other languages
English (en)
Other versions
KR101932311B1 (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 KR20140093937A publication Critical patent/KR20140093937A/ko
Application granted granted Critical
Publication of KR101932311B1 publication Critical patent/KR101932311B1/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/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • 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/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6263Protecting personal data, e.g. for financial or medical purposes during internet communication, e.g. revealing personal data from cookies
    • 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
    • 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
    • G06F21/83Protecting input, output or interconnection devices input devices, e.g. keyboards, mice or controllers thereof
    • 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
    • G06F21/84Protecting input, output or interconnection devices output devices, e.g. displays or monitors
    • 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
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • H04L12/1822Conducting the conference, e.g. admission, detection, selection or grouping of participants, correlating users to one or more conference sessions, prioritising transmission
    • 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/2123Dummy operation
    • 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/2127Bluffing

Abstract

웹 브라우저(100)에서, 적어도 하나의 사용자 데이터 제공 장치(102)와 관련하여 액세스가 제어되며, 웹 브라우저는 브라우저 엔진(106), 브라우저 애플리케이션(104) 및 장치 액세스 프록시(DAP)(108)를 포함한다. DAP에서, 적어도 하나의 사용자 데이터 제공 장치에 대해 액세스가 획득되고, 제1 사용자 데이터 제공 장치로부터의 사용자 데이터에 대한 요청이 웹 애플리케이션(110)으로부터 수신된다. 요청에 응답하여, 디폴트 데이터(112)가 DAP으로부터 웹 애플리케이션으로 송신된다. 사용자 데이터 액세스 확인 신호가 획득되고, 사용자 데이터 액세스 확인 신호에 응답하여, 디폴트 데이터의 송신이 중단되고, 요청된 사용자 데이터가 DAP으로부터 웹 애플리케이션으로 송신된다.

Description

브라우저 장치 액세스 프록시{BROWSER DEVICE ACCESS PROXY}
본 발명은 웹 환경에서의 사용자 데이터에 대한 액세스의 제어에 관한 것이다.
웹 브라우저는 모든 종류의 장비, 예를 들어 컴퓨터, 패드, 스마트폰 등에 걸치는 애플리케이션 플랫폼으로서 더욱더 중요해지고 있다. 그러나, 애플리케이션들에 의해 요구되는 기능의 대부분은 제삼자 플러그-인들에 의해 제공된다. 플러그-인들에 의해 제공되는 기능은 현재 존재하는 많은 성공적인 웹 애플리케이션에 중요하다. 플러그-인들의 예는 어도비 플래시 및 마이크로소프트 실버라이트를 포함한다.
그러나, 플러그-인들은 보안 및 유용성의 양면에서 문제들의 원인이기도 하며, 따라서 하이퍼텍스트 마크업 언어 표준의 임박한 제5 개정판(HTML5)은 제삼자 플러그-인에 대한 필요성을 없애는 (또는 적어도 줄이는) 것을 목표로 한다. 현재 플러그-인들을 필요로 하는 하나의 분야는 화상 회의이며, 따라서 HTML5는 웹 앱들에 카메라 및 마이크 액세스를 제공하는 한 세트의 적절한 애플리케이션 프로그래밍 인터페이스(API)를 이용하여 이러한 이용 사례를 처리한다.
진보된 브라우저 구현들을 갖는 장치들은 비디오 카메라를 통한 기록들, 마이크를 통한 오디오, 및 심지어 심장 박동 및 혈압과 같은 생체 데이터를 위한 센서들과 같은 더 많은 개인적인 (따라서, 민감한) 사용자 데이터를 노출시킬 수 있는 기능에 대한 액세스를 가능하게 한다. 물론, 브라우저들을 사용하는 최종 사용자들의 신뢰 및 신용을 잃지 않기 위해 그러한 민감한 데이터에 대한 액세스를 관리하고 제어하는 것도 필수적인 것으로 인식되었다.
그러나, 최종 사용자를 보호해야 하는 필요성은 장치들 및 브라우저들의 구현에 분명히 영향을 미치며, 많은 서비스 제공자는 이것을 본질적으로 비즈니스 기회로 간주한다. 복잡성 없이 민감한 사용자 데이터 자원들에 액세스하기 위한 프론트로서 작용하는 API들에 대한 액세스 제어를 도입하기 위해 표준 작업이 제안되었다. 기존의 솔루션들, 및 제안되는 HTML5 표준들의 관련 부분들은 카메라, 마이크, 장소 데이터 제공자 등과 같은 장치들에 대한 액세스를 요청하는 웹 애플리케이션 또는 웹사이트로부터의 각각의 요청시에 모달 다이얼로그(modal dialog)를 이용하여 사용자가 프롬프트되는 보안/프라이버시 개념에 기초한다.
일례로서, 자바스크립트 API getUserMedia("video", callback)에 응답하여 카메라에 대한 액세스가 웹 애플리케이션에 제공된다. 먼저, 사용자는 장치 액세스를 위해 프롬프트되고, 모달 다이얼로그 내의 이용 가능 장치들로부터 선택할 수 있다. 비디오 스트림이 콜백 내에서 웹 애플리케이션으로 반환되며, 모달 다이얼로그가 해제될 때 디스패치된다.
모달 다이얼로그의 문제점은 두 가지이며, 첫째는 모달 다이얼로그들이 사용자를 성가시게 하는 경향이 있는데, 그 이유는 사용자가 액세스를 승낙하거나 거절함으로써 다이얼로그에 응답할 때까지 모든 실행이 멈추기 때문이다. 따라서, 많은 사용자는 액세스를 승낙하는 결과를 생각하지 않고서 모든 모달 다이얼로그들을 보는 즉시 "OK"하는 습관을 갖게 된다. 둘째, 액세스가 일단 승낙되거나 거절되면, 사용자가 나중에 웹 애플리케이션 또는 웹페이지가 어느 장치들에 대한 액세스를 승낙받거나 거절되었는지에 대한 개요를 얻거나, 장치들에 액세스하는 방식을 변경할 어떠한 방법도 존재하지 않는다.
표준화 작업에서 더 명확한 액세스 제어 메커니즘을 애플리케이션 계층/API들의 일부로서 제공하기 위한 시도들이 이루어졌다. 그러나, 이러한 제안된 메커니즘들은 통상적으로 비용을 추가하고 사용자 경험과 관련된 설계에 대한 유연성을 낮추는 구현들에 대한 영향으로 인해 모든 관계자들에 의해 수용되지 못했다. 결과적으로, 이러한 시도들은 실패하였고, 표준들에 근거하는 명확한 액세스 제어를 정의하려는 임의의 시도들이 도중에 중단되었다.
본 발명의 목적은 전술한 단점들 중 적어도 일부를 제거하는 것이며, 따라서 제1 양태에 따르면, 웹 브라우저에서 적어도 하나의 사용자 데이터 제공 장치에 대한 액세스를 제어하기 위한 방법으로서, 상기 웹 브라우저는 브라우저 엔진, 브라우저 애플리케이션 및 장치 액세스 프록시(DAP)를 포함하고, 상기 방법은 상기 DAP에서, 적어도 하나의 사용자 데이터 제공 장치에 대한 액세스를 획득하는 단계, 상기 DAP에서, 제1 사용자 데이터 제공 장치로부터의 사용자 데이터에 대한 웹 애플리케이션으로부터의 요청을 수신하는 단계, 상기 요청에 응답하여, 상기 DAP로부터 상기 웹 애플리케이션으로 디폴트 데이터를 송신하는 단계, 상기 DAP에서, 사용자 데이터 액세스 확인 신호를 획득하는 단계, 및 상기 사용자 데이터 액세스 확인 신호에 응답하여, 상기 디폴트 데이터의 송신을 중단하고, 상기 요청된 사용자 데이터를 상기 DAP으로부터 상기 웹 애플리케이션으로 송신하는 단계를 포함하는 방법이 제공된다.
적어도 하나의 사용자 데이터 제공 장치에 대한 액세스를 획득하는 상기 단계는 상기 웹 애플리케이션이 상기 적어도 하나의 사용자 데이터 제공 장치에 액세스하는 것을 불가능하게 하는 단계를 포함할 수 있다.
사용자 데이터 액세스 확인 신호를 획득하는 상기 단계는 상기 브라우저 애플리케이션으로부터 사용자 입력을 수신하는 단계를 포함할 수 있다. 더구나, 사용자 데이터 액세스 확인 신호를 획득하는 상기 단계는 DAP 정책 기능으로부터 신호를 수신하는 단계를 포함할 수 있다.
제2 사용자 데이터 제공 장치의 선택이 상기 브라우저 애플리케이션에서 검출될 수 있으며, 상기 검출된 선택에 응답하여, 상기 웹 애플리케이션으로의 임의의 송신이 중단될 수 있고, 상기 제2 사용자 데이터 제공 장치에 의해 제공되는 사용자 데이터가 상기 DAP으로부터 상기 웹 애플리케이션으로 송신될 수 있다. 더구나, 제2 사용자 데이터 제공 장치의 선택이 DAP 정책 기능으로부터 획득될 수 있으며, 상기 획득된 선택에 응답하여, 상기 웹 애플리케이션으로의 임의의 송신이 중단될 수 있고, 상기 제2 사용자 데이터 제공 장치에 의해 제공되는 사용자 데이터가 상기 DAP으로부터 상기 웹 애플리케이션으로 송신될 수 있다.
상기 정책 기능은 웹 애플리케이션들과 관련된 신뢰 레벨들을 규정하는 규칙들을 포함할 수 있다. 상기 정책 기능은 사용자로부터 규칙들의 설정들을 수신하기 위한 기능을 포함할 수 있다. 상기 정책 기능은 상기 디폴트 데이터의 콘텐츠를 규정하는 규칙들을 포함할 수 있다.
상기 사용자 데이터는 이미지 데이터, 비디오 시퀀스, 오디오 시퀀스, 위치 정보, 센서 데이터 중 어느 하나를 포함할 수 있다.
상기 디폴트 데이터는 상기 DAP에서 디폴트 데이터 소스로부터 획득될 수 있으며, 상기 디폴트 데이터를 획득하는 상기 단계는 비디오 시퀀스를 획득하는 단계, 오디오 시퀀스를 획득하는 단계, 적어도 하나의 정지 이미지를 획득하는 단계 중 어느 하나를 포함할 수 있다.
상기 DAP에서 상기 디폴트 데이터를 획득하는 상기 단계는 이용 가능한 사용자 데이터 제공 장치의 검출에 대한 반응으로서 수행될 수 있다.
즉, 요컨대, 브라우저 구현의 일부일 수 있는 장치 액세스 프록시(DAP)의 도입을 통해 웹 브라우저가 개선된다. 예를 들어, 브라우저 시동시, DAP는 플랫폼에서 이용 가능한 사용자 데이터 제공 장치에 대한 액세스를 획득한다. 임의의 방식으로 플러그-인/언플러그 또는 부착/탈착되는 장치들이 DAP와의 접속으로부터 동적으로 추가/제거될 수 있다. DAP는 디폴트 스트림, 예컨대 사용자 데이터 장치의 타입마다 하나의 디폴트 스트림을 갖는다. 디폴트 스트림은 요청된 데이터 스트림이 웹 애플리케이션으로 송신되는 것이 확인될 때까지 웹 애플리케이션에 대한 플레이스홀더 송신으로서 서빙하는 "페이크(fake)" 스트림, 즉 테스트 이미지 또는 사전 기록된 비디오와 같은 비나인(benign) 데이터 스트림이다.
그러한 방법은 모달 다이얼로그에 대한 필요 없이 사용자에게 외부, 즉 웹 애플리케이션에 대한 완전한 제어, 카메라, 마이크 및 장소/위치 제공 장치들과 같은 로컬 장치들에 대한 액세스를 제공하므로 유리하다. 더구나, 그러한 방법은 현재 개발되고 있는 바와 같은 HTML5 표준들과 함께 양호하게 작동한다. 추가적인 이익은 사용자가 발신 정보의 개요(또는 투명성)를 가질 수 있다는 것이다. 예를 들어, (웹 앱 개발자가 아니라) 브라우저 판매자가 웹 애플리케이션 또는 제삼자, 예를 들어 개발자 또는 콘텐츠 소유자에 의해 디스에이블될 수 없는 카메라로부터의 발신 비디오 스트림들에 대한 셀프-뷰를 제공할 수 있다.
더욱이, DAP을 포함하는 그러한 방법은 정보를 인터셉트하고 리라우트(re-route)하기 위한 프록시의 고유 능력을 인식한다. 이것은 최종 사용자의 프라이버시를 보호하는 데 중요한 역할을 할 뿐만 아니라, 예를 들어 프라이버시 스크린 기능의 결과로서 관여되도록 부가 가치 서비스들에 대해 상당한 동기를 부여할 수도 있으므로 유리하다. 이것은 브라우저 및 장치 판매자들로 하여금 DAP의 형태로 추가적인 아키텍처 요소에 대한 지원을 포함시키도록 동기 부여하는 중요한 비즈니스 드라이버이다. 즉, 추가적인 개발 노력에 대한 보상을 돕는 수익 스트림들이 존재할 것이다.
제2 양태에 따르면, 프로세서에서 실행될 때 위에 요약된 바와 같은 방법을 수행하는 소프트웨어 명령어들을 포함하는 컴퓨터 프로그램 제품이 제공된다.
제3 양태에 따르면, 위에 요약된 바와 같은 방법을 수행하도록 구성되는 처리 회로를 포함하는 장치가 제공된다.
이러한 추가적인 양태들의 효과들 및 장점들은 제1 양태와 관련하여 위에 요약된 바와 같은 효과들 및 장점들에 대응한다.
도 1은 사용자 데이터 제공 장치들에 대한 액세스의 제어와 관련된 상호작용 기능들의 기능 블록도를 개략적으로 나타낸다.
도 2는 적어도 하나의 사용자 데이터 제공 장치에 대한 액세스를 제어하기 위한 방법의 흐름도이다.
도 3은 사용자 데이터 제공 장치들에 대한 액세스의 제어와 관련된 기능들 간의 통신을 개략적으로 나타내는 시그널링 도면이다.
도 4는 사용자 데이터 제공 장치들에 대한 액세스의 제어를 포함하는 채트(chat) 세션 동안의 웹 브라우저를 개략적으로 나타낸다.
도 1은 사용자 데이터 제공 장치들에 대한 액세스의 제어와 관련된 상호작용 기능들의 기능 블록도를 개략적으로 나타낸다. 웹 브라우저(100)가 컴퓨터 플랫폼(101) 상에서 실행되고 있다. 웹 브라우저(100)는 브라우저 애플리케이션(104) 및 엔진(106)을 포함한다. 웹 브라우저(100)는 인터넷(111)과 같은 네트워크를 통해 웹 애플리케이션(110)과 상호작용하며, 브라우저 애플리케이션(104)과 협력하는 엔진(106)은 이 분야에 공지된 바와 같이, 예를 들어 디스플레이, 키보드 및 다른 사용자 인터페이스 배열들을 통해 사용자(도 1에 도시되지 않음)와 상호작용한다.
여기서 카메라(102a), 마이크(102b), 센서 장치(102c) 및 위치 제공 장치(102d)에 의해 예시되는 사용자 데이터 제공 장치들(102a-d)에 대한 액세스를 갖는 장치 액세스 프록시(DAP)(108)도 웹 브라우저(100)의 일부를 형성한다. 센서 장치(102c)는 예를 들어 생체 파라미터들 또는 더 일반적인 환경 파라미터들을 감지할 수 있는 임의 타입의 센서일 수 있다. 위치 제공 장치(102d)는 GPS 장치와 같이 공간 위치에 관한 정보를 제공할 수 있는 임의 타입의 장치일 수 있다. 이러한 사용자 데이터 제공 장치들(102a-d)은 이 분야의 기술자들에게 공지된 바와 같은 하드웨어는 물론, 소프트웨어/펌웨어도 포함하는 인터페이스 회로(103)를 통해 DAP(108)에 접속된다. 아래에 더 상세히 설명되는 바와 같이, 비나인 데이터를 제공할 수 있는 디폴트 데이터 소스(112)도 DAP(108)에 접속된다.
컴퓨팅 플랫폼(101)은 개인용 컴퓨터, 디스플레이 스크린과 상호작용하는 셋톱 박스, 모바일 폰과 같은 모바일 통신 단말기 또는 태블릿 컴퓨터 등을 포함하는 임의의 적절한 타입의 장치일 수 있다.
이제, 도 2를 참조하고, 도 1을 계속 참조하여, 적어도 하나의 사용자 데이터 제공 장치(102)에 대한 액세스를 제어하기 위한 방법이 설명된다.
이 방법은 웹 브라우저의 제어하에 실행되며, DAP가 적어도 하나의 사용자 데이터 제공 장치(102), 예를 들어 사용자 데이터 제공 장치들(102a-d) 중 어느 하나에 대한 액세스를 취득하는 취득 단계(202)로부터 시작된다. 이어서, DAP는 수신 단계(204)에서 제1 사용자 데이터 제공 장치, 예컨대 카메라(102a)로부터의 사용자 데이터에 대한 웹 애플리케이션으로부터의 요청을 수신한다. 요청에 응답하여, 송신 단계(206)에서, 디폴트 데이터가 DAP(108)으로부터 웹 애플리케이션으로 송신된다. 이어서, 획득 단계(208)에서, 사용자 데이터 액세스 확인 신호가 획득되고, 판정 단계(210) 및 송신 단계(212)에 의해 나타나는 바와 같이, 사용자 데이터 액세스 확인 신호에 응답하여, 디폴트 데이터의 송신이 중단되고, 요청된 사용자 데이터가 DAP으로부터 웹 애플리케이션으로 송신된다.
사용자 데이터 액세스 확인 신호의 획득 및 확인 신호의 결과로서 이어지는 사용자 데이터의 송신은 종래 기술에서 통상적이듯이 이 방법을 중단시키는 어떠한 모달 다이얼로그도 수반하지 않는다는 점에 유의해야 한다. 확인 신호가 획득되고, 데이터를 수신하는 웹 애플리케이션이 디폴트 데이터로부터 사용자 데이터로의 데이터의 소스의 변경을 통지받지 못할 때까지, 즉 웹 애플리케이션이 데이터 소스의 변경을 "모를" 때까지 디폴트 데이터가 계속 흐른다.
도 3은 도 2와 관련하여 전술한 방법과 같은 방법의 구현의 개략적으로 도시된 시그널링 도면이다. 이 시그널링 도면은 웹 애플리케이션(310) 형태의 통신 노드들, 브라우저 엔진(306) 및 브라우저 애플리케이션(304) 형태의 웹 브라우저 컴포넌트들을 나타낸다. DAP(308)가 관련된 정책 기능(314), 사용자 데이터 제공 장치(302) 및 디폴트 데이터 제공자(312)와 함께 도시된다. 도 3의 모든 노드들은 도 1의 블록도의 블록들과 유사하다.
DAP(308)가 사용자 데이터 제공 장치(302)와 시그널링 정보를 교환하고, 따라서 그에 대한 액세스를 획득하는 제1 시그널링 및 데이터 전달 시퀀스(320)가 발생하며, 이 시퀀스 동안에 디폴트 데이터 제공자(312)와의 접속이 설정되어서, 디폴트 데이터가 DAP에 의해 임의의 시간에 디폴트 데이터 제공자(312)로부터 획득될 수 있다.
이어서, 제2 시퀀스(322)에서, 브라우저 엔진(306)을 통해 웹 애플리케이션(310)과 DAP(308) 사이에서 시그널링이 발생한다. 이 시퀀스(322) 동안, 사용자 데이터 제공 장치(302)로부터의 사용자 데이터에 대한 웹 애플리케이션(310)으로부터의 요청이 DAP(308)에 의해 수신된다.
이어서, 제3 시그널링 및 데이터 전달 시퀀스(324) 동안, 디폴트 데이터 제공자(312)로부터 DAP 및 브라우저 엔진(306)을 통해 웹 애플리케이션(310)으로 디폴트 데이터가 제공된다.
디폴트 데이터의 제공은 제4 시그널링 시퀀스(326)에 의해 나타나는 바와 같이 사용자 데이터 액세스 확인 신호가 브라우저 애플리케이션(304)으로부터 DAP(308)에 의해 수신될 때까지 계속된다. 브라우저 애플리케이션(304)으로부터의 수신에 대한 대안으로서, 시그널링은 이 시퀀스(326) 동안 정책 기능(314)을 이용하여 발생할 수 있다. 제5 시그널링 및 데이터 전달 시퀀스(328)에 의해 나타나는 바와 같이, 사용자 데이터 액세스 확인 신호에 응답하여, 디폴트 데이터의 송신이 중단되고, 요청된 사용자 데이터가 DAP(308)으로부터 웹 애플리케이션(310)으로 송신된다. 전술한 바와 같이, 확인 신호가 획득되고, 데이터를 수신하는 웹 애플리케이션(310)이 디폴트 데이터 제공자(312)로부터 사용자 데이터 제공 장치(302)로의 데이터의 소스의 변경을 통지받지 못할 때까지, 즉 웹 애플리케이션이 데이터 소스의 변경을 "모를" 때까지 디폴트 데이터가 계속 흐른다.
사용자 데이터 제공 장치(302)로부터 웹 애플리케이션(310)으로의 사용자 데이터의 송신 동안, 브라우저 애플리케이션(304)과 DAP(308) 사이에 시그널링이 발생할 수 있으며, 이는 사용자 데이터의 송신의 중단 및 웹 애플리케이션으로의 디폴트 데이터 송신의 재개를 야기한다는 것을 나타내기 위해 도 3에 제6 시그널링 및 데이터 전달 시퀀스(330)가 도시된다.
도 2 및 3에 도시된 방법들과 유사한 방법의 일례가 HTML5/자바스크립트 프로그래밍 모델과 관련하여 설명될 수 있다. 그러한 모델에서는, 웹 애플리케이션/웹사이트가 getUserMedia()를 호출하여, 하나 이상의 사용자 데이터 제공 장치에 대한 액세스를 획득할 수 있다.
종래 기술에서, 통상적으로 발생하는 것은 모달 프롬프트가 요청된 타입의 사용자 데이터 제공 장치들의 리스트와 함께 사용자에게 제공된다는 것이다. 사용자가 특정 장치를 선택하면, 그 장치의 사용자 데이터 스트림이 웹 애플리케이션으로 반환될 것이다. 사용자 데이터 스트림은 웹 애플리케이션에 의해 획득된 후에 상이한 방식들로 조작될 수 있다. 예를 들어, 카메라 장치의 경우, 카메라에 의해 제공되는 비디오 데이터 스트림이 로컬 비디오 재생을 위해 로컬 HTML5 비디오 요소에 첨부될 수 있다. 또한, 비디오 데이터 스트림은 비디오 채트를 설정하기 위해 HTML5 PeerConnection을 통해 네트워크를 통해 다른 피어로 송신될 수 있다. 웹 애플리케이션/웹사이트는 또한 외부 USB 저장 장치와 같은 다른 타입의 장치로부터의 데이터 스트림에 대한 액세스를 획득할 수 있다. 자바스크립트는 그러한 데이터 스트림을 바이트 단위로 판독하여, 데이터를 서버로 전송할 수 있다. 즉, 그러한 전통적인 프로그래밍 모델에서는, 승낙된 장치 액세스 또는 데이터 스트림을 취소하거나 변경할 방법이 존재하지 않는다.
이와 달리, 위에 요약된 바와 같은 장치 액세스 프록시(DAP)를 이용하면, getUserMedia()에 대한 호출은 DAP으로 직접 가며, DAP는 사용자 상호작용의 필요 없이 액세스를 즉시 승낙하고, 디폴트 데이터 스트림 형태의 프록시 스트림을 웹 애플리케이션으로 반환할 것이다. 디폴트 스트림은 실제 장치 스트림처럼, 즉 도 1의 장치들(102a-d)과 같은 사용자 데이터 제공 장치로부터의 데이터 스트림처럼 웹 애플리케이션에 의해 여전히 조작될 수 있다. 도 1에 도시된 바와 같이, DAP는 사용자 데이터 제공 장치들로부터 데이터 콘텐츠를 획득하고, 웹 애플리케이션으로의 송신을 위해 데이터 스트림 내에 들어가도록 구성할 수 있다. DAP이 제공하는 디폴트 스트림은 처음에 DAP에 의해 제공된 스트림과 결합된다. 전통적인 종래 기술의 솔루션들과 달리, 사용자는 현재 승낙된 장치 액세스들의 개요에 대한 상태 뷰를 항상 사용하여, 결합된 스트림의 추가적인 결정을 행할 수 있다.
웹 애플리케이션/웹사이트가 요청된 액세스를 갖는다는 것을 사용자에게 지시하기 위하여, 웹 브라우저 애플리케이션/크롬의 일부가 (즉, HTML 뷰의 밖에서) 상태를 변경하며, 상태 뷰를 표시하기 위한 수단을 제공한다. 도 4는 웹 브라우저 윈도(400)가 로컬 사용자(420)와 원격 사용자(422) 사이의 채트 세션 동안에 상태 프레임(402), 및 텍스트 및 비디오 출력을 나타내는 프레임들(404, 406)을 포함하는 상황을 개략적으로 도시한다. 상태 프레임(402)은 광고 비디오 시퀀스의 형태로 카메라(410), 마이크(412) 및 디폴트 소스(408)를 포함하는 이용 가능 장치들에 의해 제공될 수 있는 데이터, 및 현재의 발신 스트림(418)(여기서는 카메라(410)로부터 셀프 뷰의 형태)을 나타낸다. 사용자는 선택기 도구(416)를 통해 발신 스트림이 될 임의의 스트림을 선택할 수 있으며, 이에 따라 셀프 뷰가 갱신된다. 상태 뷰는 임의의 시간에 재방문될 수 있으며, 발신 스트림은 선택 도구(416)를 통한 선택에 의해 임의 시간에 변경되거나, 중단 버튼(412)의 작동에 의해 중단될 수 있다.
DAP의 이러한 예시적인 구현 상세들은 웹 애플리케이션에 대해 완전히 숨겨진다. 웹 애플리케이션은 DAP을 통해 데이터 스트림들에 대한 액세스를 획득할 뿐이며, 자바스크립트에 의해 가능해지는 임의의 방식으로 이러한 스트림을 조작할 수 있다.
위의 설명은 카메라 및 외부 USB 저장 장치들을 예로서 사용하지만, DAP는 다수의 스트림의 선택을 위해서만 사용되지는 않는다. DAP는 많은 다른 종류의 장치 액세스에 대한 입자 제어를 위해 사용될 수 있다. 지오로케이션(geolocation) 장치 액세스를 고려하면: 웹 애플리케이션/웹사이트가 사용자로부터 장소 정보를 요청할 때, 디폴트 데이터는 낮은 입도를, 예컨대 "북반구"의 형태를 가질 수 있지만, 사용자는 임의의 시간에 "국가>주>도시>거리>주소"와 같이 정밀도를 변경함으로써 이를 정밀화할 수 있다.
DAP 정책 기능
애플리케이션이 사용자 데이터 제공 장치와 같은 자원에 대한 액세스를 요청하는 것에 응답하여 최종 사용자에 의해 DAP 기능이 관리될 수 있다는 것이 이미 설명되었다. 그러나, DAP 기능의 실행 능력(실시 능력)이 주어지면, 예를 들어 애플리케이션이 자원들을 소비할 수 있기 전에 DAP 기능이 자원들을 인터셉트할 때, DAP 기능은 또한 다른 수단들에 의해, 예를 들어 정책 제어 메커니즘의 적용을 통해 제어되고 관리될 수 있다. 따라서, DAP는 정책 제어 및 실시 포인트로서 작용할 수 있다.
DAP 정책 기능의 특징들은 DAP 정책 매니페스트(manifest), DAP 정책의 기원 및 DAP 정책의 캐스케이딩을 포함할 수 있다.
DAP 정책 매니페스트와 관련하여, 통상적으로 정책은 주어진 세트의 파라미터들 및 그 정책에 의해 영향을 받는 자원의 상태(상황)에 응답하는 특정 거동의 예상으로서 이해된다.
한 세트의 규칙들(매니페스트) 및 액션들을 정의하는 것은 물론, 이러한 액션들을, 애플리케이션의 신빙성, 예를 들어 디지털 서명되고 검증 가능한 소스(예로서, 내장된 개발자 id), 저전력 모드 또는 충전소 내 또는 장소 기반 상태 등과 같은 일반적인 장치 상태, 및 예를 들어 비디오 스트림을 수신할 의도된 자원 수신자 및 소비자, 및 그러한 수신자가 예를 들어 고대역폭 디지털 콘텐츠 보호(HDCP)와 같은 메커니즘을 이용하여 안전하게 식별되고/되거나, 스트림이 안전하게 전달될 수 있는지와 같은 공지된 한 세트의 외부 파라미터들에 연결할 수 있는 정책 프레임워크가 DAP에 특히 중요하다.
예를 들어 장치 내에 (또는 URI로서) 사전 로딩되거나 주문시에 다운로드될 수 있는 매니페스트 내에 인코딩된 포맷을 이용하여 정책 논리가 정의될 수 있다. 논리는 또한 프로그램 코드 자바스크립트를 이용하여(또는 JSON 포맷으로) 또는 선언적 XACML을 이용하여 생성될 수 있다. 또한, 논리 응답이 HTTP RESTFul 다이얼로그와 같은 프로토콜 내에 내장될 수 있다. 정책은 또한 DAP의 구현의 일부 또는 자원 자체(구현)의 일부일 수 있다. DAP 정책의 범위는 일반적이거나 특정 타입의 자원에 고유, 예를 들어 사용자 데이터 제공 장치의 타입에 고유할 수 있다.
일반 DAP 정책 규칙의 예는 비디오 카메라 또는 마이크 등과 같은 입력 자원 클래스일 수 있으며, 최종 사용자 선호들에 기초하는 정책과 같은 명확한 정책에 의해 인에이블되지 않는 한은 항상 차단된다.
자원에 대한 특정 DAP 정책의 예는 (예를 들어, 이헬스(eHealth) 제공자에 의해 관리되는) 더 뛰어난 정책에 의해 달리 인에이블되지 않는 한은 최종 사용자 프라이버시 문제로 인한 심장 박동 또는 혈압 데이터의 기록(예로서, 센서의 연속 판독)을 금지하는 규칙일 수 있다.
DAP 정책의 기원
DAP 정책의 기원과 관련하여, 사용자, 장치 제조자, 네트워크 제공자, 서비스 제공자는 모두 정책의 창시자들인 주역들의 예들이다. 애플리케이션도 제안된 정책(또는 매니페스트)을 제공하여, 의도된 사용의 선언을 제공함으로써, 특정 정책을 채택하기 위한 최종 사용자 결정을 지원할 수 있다. 통상적으로, 주역은 애플리케이션이 아니라, 선언된 또는 스크립트된 정책에 기초하여 애플리케이션에 대해 어떤 액세스를 승낙(또는 리라우트)할지를 감독/관리할 수 있는 누군가이다.
DAP 정책의 캐스케이딩
여러 주역이 구상될 수 있으므로, 예측 가능한 방식으로 공존을 허가하는 것도 중요한데, 예를 들어 장치 제조자가 통상적으로 임의의 장치 자원에 대한 디폴트 정책을 제공한다. 최종 사용자가 통상적으로 임의의 프라이버시에 민감한 자원의 주요 소유자로서 간주되는 경우에도, 그 자원의 관리는 최종 사용자 대신에 다른 당사자, 예를 들어 서비스 제공자에 의해 처리될 수 있다.
정책의 여러 계층(또는 캐스케이드)을 적용하는 순서의 관리가 중요하다. 또한, 중복되는 정책들을 결합하는 방식은 최종 결과에 영향을 미칠 수 있으며, DAP 정책 메커니즘의 예측 가능 거동을 갖기 위해 이해하는 것이 또한 중요하다.
또한, 여러 정책을 캐스케이딩하는 순서가 명확히 정의되지 않는 경우에는, 예를 들어 덜 제어되는 캐스케이드 엔트리 포인트에 다른 디폴트 정책을 주입할 수 있는 "중간자" 공격에 의해 보안 위협이 가능해질 수 있다.
여러 정책이 예측 가능한 방식으로 서로 무효화할 수 있는 방법 또는 특정 정책이 획득될 수 없는 경우 및 그것이 "디폴트"(또는 암시적) 정책으로 폴백(fall back)되어야 하는 방법. 장치 구현들은 예를 들어 일반적으로 최종 사용자 선호들/설정들의 일부로서 처리되는 최종 사용자 적용 정책에 의해 대체될 수 있는 디폴트를 제공한다. 서비스 협정의 일부로서, (네트워크 제공자 또는 운영자 또는 앱 스토어 프론트 제공자 등일 수 있는) 서비스 제공자는, 적용될 수 있고 필요한 경우에 변경될 수 있는 정책의 더 진보된 입자 정의도 제공할 수 있다. 예를 들어, 여러 중복 정책이 존재할 때의 정책 배열은 아래와 같을 수 있다.
1. (구현의 일부일 수 있는) 특정 시장에 대한 단속 규칙들.
2. 장치 구현, 예를 들어 제조자에 의해 결정되는 브라우저 구현의 일부.
3. 최종 사용자 선호들은 예를 들어 라이브 카메라 피드(live camera feed)로부터 절대 시작되지 않음.
4. 장치 관리를 통해 네트워크 운영자 제공 정책(OMA DM).
그러나, 특정 정책의 내용(또는 의미)에 대한 근거는 비즈니스 모델, 단속 규칙들, 구현 또는 명백한 사용자 선호들의 조합으로 간주될 수 있다는 점에 유의해야 한다.
캐스케이딩의 본질에 의하면, 한 세트의 정책들은 서로 배타적이거나 보완할 수 있으며, 여기서 배타적이라는 것은 더 뛰어난 정책이 존재하는 경우에는 덜 뛰어난 (또는 디폴트) 정책이 특정 자원에 대해 더 뛰어난 정책에 의해 대체/교체될 수 있다는 의미를 갖는다. 정책들의 보완 세트는, 장치 자원이 애플리케이션에 노출되지 않아야 한다고 규정하는 디폴트 정책이 (최종 사용자 프라이버시를 보호하도록 생성된 정책을 위태롭게 하거나/위반하지 않고서도) 차단된 비디오 스트림을 상용 스트림으로 대체할 수 있으므로 다소 완화될 수 있다는 의미를 갖는다.
따라서, 브라우저 장치 액세스 프록시(DAP)의 사용의 장점들을 요약하면, 기존의 표준들에 어떠한 주요 방식으로도 영향을 미치지 않고서, DAP는, 논(non)-모달(비동기) 제어들을 제공함으로써 (예를 들어, 프라이버시 및 보안 등과 관련하여) 민감한 정보에 대한 액세스를 허가하는 문제들을 해결한다. 사용자는 어느 사용자 데이터를 허가할지와 관련하여 임의의 시간에 항상 결정을 보고 변경할 수 있다. 사용자는 어느 사용자 데이터가 다른 당사자, 예를 들어 웹 애플리케이션으로 전송되고 있는지를 항상 알 것이다. DAP는 정책 실시 제어 포인트로서 작용할 수 있다.

Claims (15)

  1. 웹 브라우저에서, 적어도 하나의 사용자 데이터 제공 장치에 대한 액세스를 제어하기 위한 방법으로서 - 상기 웹 브라우저는 브라우저 엔진, 브라우저 애플리케이션 및 장치 액세스 프록시(DAP: device access proxy)를 포함함 -,
    상기 DAP에서, 적어도 하나의 사용자 데이터 제공 장치에 대한 액세스를 취득하는 단계,
    상기 DAP에서, 제1 사용자 데이터 제공 장치로부터의 사용자 데이터에 대한 요청을 웹 애플리케이션으로부터 수신하는 단계,
    상기 요청에 응답하여, 상기 DAP로부터 상기 웹 애플리케이션으로 디폴트 데이터를 송신하는 단계,
    상기 DAP에서, 사용자 데이터 액세스 확인 신호를 획득하는 단계, 및
    상기 사용자 데이터 액세스 확인 신호에 응답하여, 상기 디폴트 데이터의 송신을 중단하고, 상기 요청된 사용자 데이터를 상기 DAP으로부터 상기 웹 애플리케이션으로 송신하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 적어도 하나의 사용자 데이터 제공 장치에 대한 액세스를 취득하는 단계는, 상기 웹 애플리케이션이 상기 적어도 하나의 사용자 데이터 제공 장치에 액세스할 수 없게 하는 단계를 포함하는 방법.
  3. 제1항 또는 제2항에 있어서,
    상기 사용자 데이터 액세스 확인 신호를 획득하는 단계는 상기 브라우저 애플리케이션으로부터 사용자 입력을 수신하는 단계를 포함하는 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 사용자 데이터 액세스 확인 신호를 획득하는 단계는 DAP 정책 기능으로부터 신호를 수신하는 단계를 포함하는 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 브라우저 애플리케이션에서, 제2 사용자 데이터 제공 장치의 선택을 검출하는 단계, 및
    상기 검출된 선택에 응답하여, 상기 웹 애플리케이션으로의 임의의 송신을 중단하고, 상기 제2 사용자 데이터 제공 장치에 의해 제공되는 사용자 데이터를 상기 DAP으로부터 상기 웹 애플리케이션으로 송신하는 단계
    를 포함하는 방법.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서,
    DAP 정책 기능으로부터, 제2 사용자 데이터 제공 장치의 선택을 획득하는 단계, 및
    상기 획득된 선택에 응답하여, 상기 웹 애플리케이션으로의 임의의 송신을 중단하고, 상기 제2 사용자 데이터 제공 장치에 의해 제공되는 사용자 데이터를 상기 DAP으로부터 상기 웹 애플리케이션으로 송신하는 단계
    를 포함하는 방법.
  7. 제4항 또는 제6항에 있어서,
    상기 정책 기능은 웹 애플리케이션들과 관련된 신뢰 레벨들을 규정(regulate)하는 규칙들을 포함하는 방법.
  8. 제4항, 제6항 및 제7항 중 어느 한 항에 있어서,
    상기 정책 기능은 사용자로부터 규칙 설정들을 수신하기 위한 기능을 포함하는 방법.
  9. 제4항, 제6항 내지 제8항 중 어느 한 항에 있어서,
    상기 정책 기능은 상기 디폴트 데이터의 콘텐츠를 규정하는 규칙들을 포함하는 방법.
  10. 제1항 내지 제9항 중 어느 한 항에 있어서,
    상기 사용자 데이터는 이미지 데이터, 비디오 시퀀스, 오디오 시퀀스, 위치 정보, 센서 데이터 중 임의의 것을 포함하는 방법.
  11. 제1항 내지 제10항 중 어느 한 항에 있어서,
    상기 DAP에서, 디폴트 데이터 소스로부터 상기 디폴트 데이터를 취득하는 단계를 포함하는 방법.
  12. 제11항에 있어서,
    상기 디폴트 데이터를 취득하는 단계는,
    비디오 시퀀스를 취득하는 단계,
    오디오 시퀀스를 취득하는 단계,
    적어도 하나의 정지 이미지를 취득하는 단계
    중 임의의 단계를 포함하는 방법.
  13. 제11항 또는 제12항에 있어서,
    상기 DAP에서, 상기 디폴트 데이터를 취득하는 단계는 이용 가능한 사용자 데이터 제공 장치의 검출에 대한 반응으로서 수행되는 방법.
  14. 프로세서에서 실행될 때, 제1항 내지 제13항 중 어느 한 항의 방법을 수행하는 소프트웨어 명령어들을 포함하는 컴퓨터 프로그램 제품.
  15. 제1항 내지 제13항 중 어느 한 항의 방법을 수행하도록 구성된 처리 회로를 포함하는 장치.
KR1020147011396A 2011-10-28 2012-10-18 브라우저 장치 액세스 프록시 KR101932311B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
EP11187029.1A EP2587397A1 (en) 2011-10-28 2011-10-28 Browser device access proxy
EP11187029.1 2011-10-28
US201161553754P 2011-10-31 2011-10-31
US61/553,754 2011-10-31
PCT/EP2012/004366 WO2013060432A1 (en) 2011-10-28 2012-10-18 Browser device access proxy

Publications (2)

Publication Number Publication Date
KR20140093937A true KR20140093937A (ko) 2014-07-29
KR101932311B1 KR101932311B1 (ko) 2018-12-24

Family

ID=44925356

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147011396A KR101932311B1 (ko) 2011-10-28 2012-10-18 브라우저 장치 액세스 프록시

Country Status (6)

Country Link
US (1) US9692760B2 (ko)
EP (1) EP2587397A1 (ko)
KR (1) KR101932311B1 (ko)
BR (1) BR112014009742A2 (ko)
IN (1) IN2014DN03029A (ko)
WO (1) WO2013060432A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013242847A (ja) * 2012-04-26 2013-12-05 Mitsubishi Electric Corp 映像処理端末及び映像処理方法
KR102127720B1 (ko) * 2014-04-22 2020-06-29 삼성전자주식회사 애플리케이션을 이용하는 사용자 단말의 위치 정보 접근 제어 방법 및 그 장치
US9721121B2 (en) 2014-06-16 2017-08-01 Green Hills Software, Inc. Out-of-band spy detection and prevention for portable wireless systems
EP3308319B1 (en) * 2015-06-10 2021-03-10 Deutsche Telekom AG Method and system for anonymizing a user identity and/or user data of a subscriber of a data protection service, program and computer program product

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020078371A1 (en) * 2000-08-17 2002-06-20 Sun Microsystems, Inc. User Access system using proxies for accessing a network
US20030074425A1 (en) * 2001-10-12 2003-04-17 Mvp Kabushiki Kaisha Browser with proxy server and information copying system
US20070185992A1 (en) * 2006-02-07 2007-08-09 Simpson Shell S Authorization for device interaction with a remote service
KR20100022920A (ko) * 2008-08-20 2010-03-03 주식회사 컴퍼니원헌드레드 프록시 서버를 이용한 이동통신 단말기의 웹 브라우저 시스템
KR20100113071A (ko) * 2008-01-14 2010-10-20 인터내셔널 비지네스 머신즈 코포레이션 기존 애플리케이션들의 커스터마이징 및 분산을 위한 브라우저-기반 프록시 서버

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7111056B1 (en) * 1999-10-08 2006-09-19 Nortel Networks Limited Method, apparatus and article of manufacture for web-based control of a unified multi-service communication system
US6970935B1 (en) * 2000-11-01 2005-11-29 International Business Machines Corporation Conversational networking via transport, coding and control conversational protocols
US20020083183A1 (en) * 2000-11-06 2002-06-27 Sanjay Pujare Conventionally coded application conversion system for streamed delivery and execution
US6918113B2 (en) * 2000-11-06 2005-07-12 Endeavors Technology, Inc. Client installation and execution system for streamed applications
US20020099829A1 (en) * 2000-11-27 2002-07-25 Richards Kenneth W. Filter proxy system and method
US7647392B2 (en) * 2002-10-16 2010-01-12 Xerox Corporation Device model agent
US8392553B2 (en) * 2003-04-29 2013-03-05 University Of Strathclyde Remote monitoring by tracking, storing, and analyzing user interactions with an operating system of a data processing device
US7870202B2 (en) * 2004-12-03 2011-01-11 Clairmail Inc. Apparatus for executing an application function using a smart card and methods therefor
US20070094691A1 (en) * 2005-10-24 2007-04-26 Gazdzinski Robert F Method and apparatus for on-demand content transmission and control over networks
US20070226304A1 (en) * 2006-03-27 2007-09-27 Teamon Systems, Inc. System and method for migrating user account data
US8340633B1 (en) * 2009-04-09 2012-12-25 Mobile Iron, Inc. Mobile activity intelligence
WO2011109420A1 (en) * 2010-03-01 2011-09-09 Silver Tail Systems System and method for network security including detection of attacks through partner websites
US9338494B2 (en) * 2011-02-11 2016-05-10 Sony Corporation Method and apparatus for providing recommended content playback on a display device
US8931041B1 (en) * 2011-07-29 2015-01-06 Symantec Corporation Method and system for visibility and control over access transactions between clouds using resource authorization messages

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020078371A1 (en) * 2000-08-17 2002-06-20 Sun Microsystems, Inc. User Access system using proxies for accessing a network
US20030074425A1 (en) * 2001-10-12 2003-04-17 Mvp Kabushiki Kaisha Browser with proxy server and information copying system
US20070185992A1 (en) * 2006-02-07 2007-08-09 Simpson Shell S Authorization for device interaction with a remote service
KR20100113071A (ko) * 2008-01-14 2010-10-20 인터내셔널 비지네스 머신즈 코포레이션 기존 애플리케이션들의 커스터마이징 및 분산을 위한 브라우저-기반 프록시 서버
KR20100022920A (ko) * 2008-08-20 2010-03-03 주식회사 컴퍼니원헌드레드 프록시 서버를 이용한 이동통신 단말기의 웹 브라우저 시스템

Also Published As

Publication number Publication date
EP2587397A1 (en) 2013-05-01
US20140282862A1 (en) 2014-09-18
BR112014009742A2 (pt) 2017-04-18
WO2013060432A1 (en) 2013-05-02
IN2014DN03029A (ko) 2015-05-08
US9692760B2 (en) 2017-06-27
KR101932311B1 (ko) 2018-12-24

Similar Documents

Publication Publication Date Title
JP5509334B2 (ja) コンピュータネットワーク内の保護リソースへのアクセスを管理するための方法と、そのための物理エンティティおよびコンピュータプログラム
US9648043B2 (en) Services within reverse proxy servers
US8291475B2 (en) Secure cross-domain communication for web mashups
KR101915342B1 (ko) 문서 통신 런타임 인터페이스
KR101948044B1 (ko) 웹 런타임 시스템을 위한 샌드박싱 기술의 방법 및 장치
US8266714B2 (en) Access control in a multi-principal browser
US9223941B2 (en) Using a URI whitelist
KR101680509B1 (ko) 네이티브 애플리케이션에 대한 웹 자산 액세스를 가능하게 하는 시스템 및 방법
US10298586B2 (en) Using a file whitelist
KR101932311B1 (ko) 브라우저 장치 액세스 프록시
WO2016036957A1 (en) Method and system for data usage accounting in a computing device
US20160055344A1 (en) Data loss prevention during app execution using e-mail enforcement on a mobile device
JP2021500641A (ja) 電子デバイスにおけるハードウェアリソースアクセスを管理するための方法および装置
JP2013065114A (ja) 情報処理システムの制御方法、中継装置の制御プログラム及びクライアント装置の制御プログラム
RU2626658C2 (ru) Обработка контента для приложений
US9888070B2 (en) Brokered advanced pairing
EP3007470B1 (en) Performance improvement method in instance hosting environment and service system therefor
US9871873B2 (en) Adapter for communication between web applications within a browser
CN105849693B (zh) 用于从WebRTC服务器向WebRTC客户端安全且动态地重新加载附加软件的方法
Amrutkar et al. Short paper: rethinking permissions for mobile web apps: barriers and the road ahead
KR101024444B1 (ko) 단말에서의 웹어플리케이션 플랫폼 및 웹어플리케이션 플랫폼 동작 방법
JP6328290B2 (ja) 端末、アクセス制限方法およびプログラム
JP6047021B2 (ja) 撮影装置及びその制御方法、プログラム
JP6124627B2 (ja) 端末、アクセス制限方法およびプログラム
JP2016206771A (ja) 通信監視装置、通信監視方法及び通信監視プログラム

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