KR101886946B1 - 제어된 네트워크 환경에서 보안 접속성을 제공하는 릴레이 프록시 - Google Patents
제어된 네트워크 환경에서 보안 접속성을 제공하는 릴레이 프록시 Download PDFInfo
- Publication number
- KR101886946B1 KR101886946B1 KR1020167030744A KR20167030744A KR101886946B1 KR 101886946 B1 KR101886946 B1 KR 101886946B1 KR 1020167030744 A KR1020167030744 A KR 1020167030744A KR 20167030744 A KR20167030744 A KR 20167030744A KR 101886946 B1 KR101886946 B1 KR 101886946B1
- Authority
- KR
- South Korea
- Prior art keywords
- request
- remote content
- content item
- application
- proxy
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0281—Proxies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0884—Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/101—Access control lists [ACL]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
로컬 네트워크 내로부터 로컬 네트워크의 외부에 저장된 원격 콘텐츠에 액세스하기 위한 컴퓨터 시스템은 릴레이 프록시 및 복수의 애플리케이션을 포함한다. 릴레이 프록시는 제1 애플리케이션으로부터 제1 요청을 수신하며 제2 애플리케이션으로부터 제2 요청을 수신하고, 제1 요청 및 제2 요청은 제1 원격 콘텐츠 항목 및 제2 원격 콘텐츠 항목을 각각 식별한다. 릴레이 프록시는 로컬 네트워크를 출입하는 네트워크 트래픽을 관리하는 프록시 서버로 제1 요청 및 제2 요청을 포워딩한다. 릴레이 프록시는 제1 요청과 제2 요청에 대한 응답들을 수신하고, 제1 요청에 대한 응답은 제1 원격 콘텐츠 항목을 포함하고, 제2 요청에 대한 응답은 제2 원격 콘텐츠 항목을 포함한다. 릴레이 프록시는 제1 원격 콘텐츠 항목 및 제2 원격 콘텐츠 항목을 제1 애플리케이션 및 제2 애플리케이션으로 각각 포워딩한다.
Description
본 명세서에 설명된 발명 대상은 일반적으로 네트워크를 통해 콘텐츠에 액세스하는 것에 관한 것이며, 구체적으로는 사용자 디바이스 상의 다수의 애플리케이션에 의한 네트워킹된 콘텐츠로의 액세스를 용이하게 하기 위해 릴레이 프록시를 이용하는 것에 관한 것이다.
많은 조직들 및 기관들은, 네트워크 트래픽을 모니터링하고 네트워크 보안 정책들을 시행하기 위해서 하이퍼 텍스트 전송 프로토콜(HTTP) 프록시를 통해 그 자신의 네트워크로부터 발신되거나 착신되는 통신들을 라우팅한다. 네트워크 내의 각각의 컴퓨팅 디바이스 상에서 실행되는 브라우저 애플리케이션은 프록시에 접속하며, 프록시는 브라우저로의/로부터의 데이터 패킷들을 적절하게 라우팅한다. 모든 착신 및 발신 데이터 패킷들이 프록시를 통과하므로, 프록시는 네트워크 통신들을 모니터링하고, 요구될 때에 시행 동작들을 수행할 수 있다.
대부분의 학교는 HTTP 프록시를 통해 그들의 학생들에 대해 인터넷 액세스를 제공한다. 따라서, 모든 학생 웹 트래픽은 단일의 액세스 포인트를 통과하고, 이는 모니터링될 수 있다. 또한, 학교의 컴퓨팅 디바이스들의 브라우저들을 이용하는, 바람직하지 않은 것으로 고려되는 콘텐츠에 대한 액세스는 HTTP 프록시에 의해 차단되어, 이러한 콘텐츠에 대한 학생 액세스를 방지할 수 있다.
현대의 태블릿들 및 스마트폰들(예를 들어, Android™ 운영 체제를 구동하는 것들)은 전형적으로 다수의 애플리케이션을 포함하는데, 그들 중 많은 것은 인터넷을 통해 원격 리소스들에 액세스한다. 이것은, 네트워크 트래픽을 모니터링하고 네트워크 보안 정책들을 시행하기 위해 프록시를 이용하기를 원하는 조직들 및 기관들에 대해 다수의 도전과제를 발생시킨다.
첫번째로, 각각의 애플리케이션은 프록시를 통해 통신하도록 구성되어야 한다. 이것은 구현하는데 시간 소모적이며 시행에 문제가 있다. 네트워크 관리자는, 네트워크에서 동작하는 모든 디바이스의 모든 애플리케이션이 프록시를 통해 인터넷에 접속하고 있는지를 용이하게 모니터링할 수 없다. 따라서, 프록시를 바이패스하면서 인터넷에 직접적으로 접속하는 애플리케이션들이 뜻하지 않게 또는 악의적으로 설치되어 있는 디바이스들을 검출하기가 어렵다.
두번째로, 많은 프록시는 인터넷에 접속하는 디바이스가 인증 크리덴셜들을 제공하는 것을 요구한다. 이러한 크리덴셜들은 인터넷으로의 액세스를 요구하는 모든 애플리케이션에 대해 액세스가능할 필요가 있다. 이것은 악의적인 애플리케이션이 비인가된 제3자와 크리덴셜들을 공유할 수 있으므로 보안 위험이 있으며, 각각의 애플리케이션이 독립적으로 크리덴셜들에 액세스하여야 하므로 비효율적이다. 이러한 비효율성은 다수의 사용자가 동일한 디바이스를 이용하는 환경(예를 들어, 학교)에서 더 고조된다. 이러한 시나리오에서, 디바이스들은 각각의 애플리케이션에 의해 어느 사용자 크리덴셜들이 현재 이용되고 있는지를 추적하고, 주어진 사용자의 크리덴셜들이 다른 사용자에게 이용가능하게 되지 않는 것을 보장하여야 한다.
로컬 네트워크 내로부터 로컬 네트워크의 외부에 저장된 원격 콘텐츠에 액세스하기 위한 컴퓨터 시스템은 릴레이 프록시 및 복수의 애플리케이션을 포함한다. 릴레이 프록시는 로컬 네트워크를 출입(entering and leaving)하는 네트워크 트래픽을 관리하는 프록시 서버를 통해 원격 콘텐츠 항목들을 검색하도록 구성된다. 복수의 애플리케이션은 릴레이 프록시에 통신가능하게 접속된다. 각각의 애플리케이션은 원격 콘텐츠 항목에 대한 요청을 릴레이 프록시로 송신하고, 이에 응답하여 요청된 원격 콘텐츠 항목을 수신하도록 구성된다.
로컬 네트워크 내로부터 로컬 네트워크의 외부에 저장된 원격 콘텐츠에 액세스하는 방법은, 사용자 디바이스 상에서 실행되는 릴레이 프록시에서, 제1 요청 및 제2 요청을 수신하는 단계를 포함한다. 제1 요청은 사용자 디바이스 상에서 실행되는 제1 애플리케이션으로부터 수신되고, 제2 요청은 사용자 디바이스 상에서 실행되는 제2 애플리케이션으로부터 수신된다. 제1 요청은 제1 원격 콘텐츠 항목을 식별하고, 제2 요청은 제2 원격 콘텐츠 항목을 식별한다. 이 방법은, 로컬 네트워크를 출입하는 네트워크 트래픽을 관리하는 프록시 서버로 제1 요청 및 제2 요청을 포워딩하는 단계; 및 제1 요청과 제2 요청에 대한 응답들을 수신하는 단계를 또한 포함한다. 제1 요청에 대한 응답은 제1 원격 콘텐츠 항목을 포함하고, 제2 요청에 대한 응답은 제2 원격 콘텐츠 항목을 포함한다. 이 방법은, 제1 원격 콘텐츠 항목을 제1 애플리케이션으로 포워딩하고, 제2 원격 콘텐츠 항목을 제2 애플리케이션으로 포워딩하는 단계를 더 포함한다.
도 1은 일 실시예에 따른, 릴레이 프록시가 이용될 수 있는 네트워킹된 컴퓨팅 환경을 예시하는 고레벨 블록도이다.
도 2는 일 실시예에 따른, 도 1에 도시된 네트워킹된 컴퓨팅 환경에서 이용하기에 적합한 사용자 디바이스를 예시하는 고레벨 블록도이다.
도 3은 일 실시예에 따른, 도 1에 도시된 사용자 디바이스, 프록시 서버 또는 리소스 서버로서 이용하기에 적합한 컴퓨터를 예시한다.
도 4는 일 실시예에 따른, 릴레이 프록시가 애플리케이션과 원격 리소스 서버 사이의 네트워크 트래픽을 관리하는 방법을 예시하는 플로우차트이다.
도 2는 일 실시예에 따른, 도 1에 도시된 네트워킹된 컴퓨팅 환경에서 이용하기에 적합한 사용자 디바이스를 예시하는 고레벨 블록도이다.
도 3은 일 실시예에 따른, 도 1에 도시된 사용자 디바이스, 프록시 서버 또는 리소스 서버로서 이용하기에 적합한 컴퓨터를 예시한다.
도 4는 일 실시예에 따른, 릴레이 프록시가 애플리케이션과 원격 리소스 서버 사이의 네트워크 트래픽을 관리하는 방법을 예시하는 플로우차트이다.
도면들(도) 및 다음의 설명은 예시로서만 특정 실시예들을 설명한다. 본 기술분야의 통상의 기술자라면, 다음의 설명으로부터, 본 명세서에 예시된 구조들 및 방법들의 대안적인 실시예들은 본 명세서에 설명된 원리들로부터 벗어나지 않고서 이용될 수 있다는 점을 손쉽게 인식할 것이다. 이하, 수개의 실시예에 대한 참조가 이루어질 것이며, 그들의 예들은 첨부 도면들에 예시되어 있다. 실현가능한 경우에, 도면들에서 유사하거나 동일한 참조 번호들이 이용될 수 있으며, 유사하거나 동일한 기능성을 표시할 수 있다는 점에 유의한다.
도 1은 일 실시예에 따른, 릴레이 프록시가 이용될 수 있는 네트워킹된 컴퓨팅 환경(100)을 예시하는 고레벨 블록도이다. 예시된 실시예에서, 네트워킹된 컴퓨팅 환경(100)은 복수의 사용자 디바이스(110A 내지 110N), 프록시 서버(130) 및 복수의 리소스 서버(150A 내지 150N)를 포함한다. 사용자 디바이스들(110)은 로컬 네트워크(120)를 통해 프록시 서버(130)에 접속되며, 프록시 서버는 외부 네트워크(140)를 통해 리소스 서버(150)에 접속된다. 다른 실시예들에서, 네트워킹된 컴퓨팅 환경(100)은 상이하고/하거나 부가적인 요소들을 포함한다. 추가로, 기능들은 본 명세서에 설명된 것과는 상이한 방식으로 요소들 사이에 분산될 수 있다.
로컬 네트워크(120)는 사용자 디바이스들(110A 내지 110N)를 프록시 서버(130)에 접속한다. 로컬 네트워크(120)는 전형적으로 조직에 의해 유지되는 LAN 또는 WAN이며, 유선, 무선 또는 양쪽 모두의 조합일 수 있다. 로컬 네트워크(120)는 사용자 디바이스들(110A 내지 110N)(조직과 연관된 사용자들에 의해 동작됨)을 외부 네트워크(140)뿐만 아니라 서로에 대해 접속한다. 외부 네트워크(140)는 전형적으로 인터넷이지만, 조직이 액세스를 모니터링하거나 보안 정책을 시행하기를 원하는 임의의 네트워크일 수 있다. "로컬" 및 "외부"라는 식별자들은 네트워크들(120 및 140)을 위해 이용되지만, 이것은 범위를 제한하는 것으로서 간주되어서는 안 된다. 다양한 실시예들에서, 로컬 네트워크(120)는 다수의 지리적 위치에 걸쳐 분산되거나(예를 들어, 기업의 가상 사설 네트워크), 또는 외부 네트워크(140)는 로컬 네트워크(120)와 동일한 조직에 의해 관리된다. 예를 들어, 교육 세팅에서, 외부 네트워크(140)는, 특정 클래스에 등록된 학생들만 액세스하는 것이 허용되는, 학교에 의해 관리되는 리소스 서버(150)에 대한 접속을 제공할 수 있다.
리소스 서버들(150A 내지 150N)은, 사용자 디바이스들(110A 내지 110N)과 같은 다른 컴퓨팅 디바이스들에 의해 외부 네트워크(140)를 통해 액세스될 수 있는 콘텐츠를 호스팅하는 웹서버들과 같은 컴퓨팅 디바이스들이다. 3개의 리소스 서버(150)만이 도시되었지만, 실제로는 외부 네트워크(140)를 통해 액세스가능한 많은(예를 들어, 수천개의 또는 심지어 수백만개의) 리소스 서버가 존재할 수 있다. 예를 들어, 인터넷은 웹사이트들, 문서들 및 다른 컴퓨터 판독가능 데이터를 호스팅하는 수백만개의 리소스 서버(150)에 대한 액세스를 가능하게 한다.
사용자 디바이스들(110A 내지 110N)은, 리소스 서버들(150) 상에 호스팅되는 네트워킹된 콘텐츠에 액세스하는데 이용될 수 있으며 로컬 네트워크(120)에 접속되는 스마트폰, 태블릿, 랩톱 및 데스크톱 PC와 같은 컴퓨팅 디바이스들이다. 3개의 사용자 디바이스(110)만이 도시되었지만, 실제로는 외부 네트워크(140)를 통해 원격 콘텐츠에 액세스할 수 있는 로컬 네트워크(120)에 접속된 많은(예를 들어, 수십개의 또는 수백개의) 사용자 디바이스가 존재한다. 예를 들어, 온라인 교육 콘텐츠에 액세스하기 위해 학생들이 이용하는 30개의 태블릿 세트를 학교가 소유할 수 있다. 사용자 디바이스(110)의 다양한 실시예들이 도 2를 참조하여 아래에 더 상세하게 설명된다.
로컬 네트워크(120)는 프록시 서버(130)를 통해 외부 네트워크(140)에 접속된다. 프록시 서버(130)는 로컬 네트워크(120)와 외부 네트워크(140) 사이의 네트워크 트래픽을 모니터링하고, 요구될 때에 보안 정책들을 시행한다. 일 실시예에서, 프록시 서버(130)는 도 2를 참조하여 아래에 더 상세하게 설명되는 바와 같이 사용자 디바이스들(110) 중 하나의 사용자 디바이스의 릴레이 프록시로부터 발신되거나 착신되지 않는 임의의 네트워크 트래픽을 차단하는 방화벽을 포함한다. 따라서, 사용자 디바이스들(110)과 외부 네트워크(140) 사이의 네트워크 트래픽 전부는 프록시 서버(130)를 통과한다. 결과적으로, 프록시 서버(130)는, 대응하는 조직이 트래픽을 모니터링하며 보안 정책들을 시행할 수 있는 로컬 네트워크(120)에 대한 단일의 액세스 포인트를 제공한다. 예를 들어, 교실에서 이용하기 위해 태블릿들(사용자 디바이스들(110A 내지 110N))을 학생들에게 제공하는 학교는 적절한 것으로 고려되는 원격 콘텐츠만으로의 액세스를 한정하거나(화이트리스트 접근법(whitelist approach)), 부적절한 것으로 고려되는 원격 콘텐츠로의 액세스를 차단하거나(블랙리스트 접근법(blacklist approach)), 또는 양쪽 모두의 프로세스의 조합을 이용할 수 있다. 또한, 학교는, 현재 액세스가능하지만 차단되어야 하는 부적절한 콘텐츠를 식별하거나 또는 학생들이 태스크에 집중하고 있는 것을 보장하기 위해 태블릿들로부터의 착신 및 발신 네트워크 트래픽을 모니터링할 수 있다.
도 2는 일 실시예에 따른 사용자 디바이스(110)를 예시하는 고레벨 블록도이다. 예시된 실시예에서, 사용자 디바이스(110)는 복수의 애플리케이션(210), 릴레이 프록시(220) 및 인증 크리덴셜 스토리지(230)를 포함한다. 다른 실시예들에서, 사용자 디바이스(110)는 상이하고/하거나 부가적인 요소들을 포함한다. 추가로, 기능들은 본 명세서에 설명된 것과는 상이한 방식으로 요소들 사이에 분산될 수 있다.
인증 크리덴셜 스토리지(230)는 하나 이상의 비일시적인 컴퓨터 판독가능 매체를 포함하고, 사용자 디바이스(110)를 이용하는 하나 이상의 사용자에 대한 인증 크리덴셜들을 저장하도록 구성된다. 사용자 명칭과 패스워드 쌍, 디지털 패스포트, 토큰 등을 포함한 다양한 타입의 인증 크리덴셜들이 이용될 수 있다. 일 실시예에서, 인증 크리덴셜들은 비인가 이용을 방지하기 위해 암호화될 수 있다. 다른 실시예에서, 사용자는 주기적으로(예를 들어, 매시간 한번) 인증 크리덴셜들을 제공하도록 프롬프트되고, 인증 크리덴셜들은 다음 프롬프트가 제공될 때까지 메모리에 저장되는데, 이 때 오래된 크리덴셜들은 메모리로부터 와이핑된다. 이러한 방식으로, 사용자의 인증 크리덴셜들은 컴퓨팅 디바이스의 다른 사용자들에 의한 비인가 액세스로부터 보호된다.
애플리케이션들(210)은, 실행될 때, 사용자 디바이스(110)의 사용자에게 기능성을 제공한다. 애플리케이션들(210) 중 적어도 일부는 이들이 제공하는 기능성의 일부로서 리소스 서버들(150A 내지 150N) 중 하나 이상에 의해 호스팅되는 원격 콘텐츠에 액세스한다. 예를 들어, 웹 브라우저는 제1 리소스 서버에서 호스팅되는 유명인사 가십 웹페이지에 액세스하려고 시도할 수 있는 한편, 고등학교 지리학 클래스에서 이용하도록 의도된 교육 애플리케이션은 제2 리소스 서버(150B)로부터 세계 도처의 위치들의 범위에 대한 날씨 데이터를 검색하려고 시도할 수 있다. 학생들이 클래스에서 태스크에 집중하고 있지 않을 가능성을 감소시키기 위해서, 학교는, 사용자 디바이스(110)가 유명인사 가십 웹사이트는 아니지만 날씨 데이터에 액세스하는 것을 허용하도록 프록시 서버(130)를 구성하기를 원할 수 있다.
이전에 설명된 바와 같이, (릴레이 프록시(220) 없이) 통상의 시스템 구성을 이용하면, 원격 콘텐츠에 대한 액세스를 올바르게 허용 및 차단하도록 프록시 서버(130)를 구성하기가 어려울 수 있다. 모바일 디바이스(110) 상에 설치된 애플리케이션들(210)의 개수가 증가함에 따라, 프록시 서버(130)를 구성하는 태스크는 점점 더 복잡해지고 에러를 겪게 된다. 예를 들어, Android™ 운영 체제에서, 각각의 애플리케이션은 외부 네트워크(140)에 대한 그 자신의 접속을 유지하고, 따라서 프록시 서버(130)는 원격 콘텐츠 요청들이 예상되는 각각의 애플리케이션에 대해 개별적으로 구성되어야 한다. 또한, 교육 세팅들에서, 임의의 주어진 사용자 디바이스(110)는 다수의 학생에 의해 이용될 가능성이 있으며, 임의의 주어진 학생은 상이한 시간에 사용자 디바이스들(110A 내지 110N) 중의 상이한 것들을 이용할 가능성이 있다. 따라서, 학생의 인증 크리덴셜들은 개별적으로 각각의 애플리케이션(210)에 제공되어야 하는데, 이는 추가로 시스템의 복잡도를 증가시키며 네트워크 보안 위반의 가능성을 증가시킨다. 이러한 문제점들은 릴레이 프록시(220)에 의해 처리된다. "릴레이 프록시"라는 용어는 로컬 네트워크(120)(및 그에 따른 원격 네트워크(140))에 대한 액세스 포인트를 제공하는 사용자 디바이스(110)의 컴포넌트를 설명하기 위해 본 명세서에서 이용된다는 점에 유의해야 한다. 이것은, DHCP 서버들을 클라이언트들로부터 격리시키고 다수의 이러한 서버로부터의 리스 오퍼들(lease offers)이 획득되고 가장 바람직한 것이 선택되는 것을 가능하게 하는 DHCP 릴레이의 일부로서 이용된 것들과 같은 릴레이 프록시들과 혼동되어서는 안 된다. DHCP 릴레이가 다수의 사용자 디바이스로부터 리스 요청들을 수신하고 그러한 요청들을 다수의 DHCP 서버에 분배하지만, 릴레이 프록시(220)는, 외부 네트워크(140)(예를 들어, 인터넷)로의 액세스를 제어하는 프록시 서버(130)와 사용자 디바이스 상에서 실행되는 다른 애플리케이션들(210) 사이의 네트워크 트래픽의 라우팅의 맞춤화를 가능하게 하도록 구성되는 특정 사용자 디바이스(110) 상에서 실행되는 애플리케이션이다. 모든 리스 요청을 동일하게 라우팅하는 DHCP 프록시와 달리, 릴레이 프록시(220)는 상이한 소스들로부터의 통신들을 상이하게 라우팅하도록 구성될 수 있다. 예를 들어, 알려지지 않거나 차단된(블랙리스트에 오른) 애플리케이션으로부터 수신되는 외부 네트워크(140)로의 액세스 요청은 외부 네트워크로 포워딩되는 것보다는 오히려 네트워크 관리자로 라우팅되거나 무시될 수 있다.
릴레이 프록시(220)는 사용자 디바이스(110) 상에서 실행되고, 애플리케이션들(210)이 (로컬 네트워크(120)를 통해) 프록시 서버(130)에 접속하게 하는 중앙집중형 메커니즘을 제공한다. 애플리케이션(210)이 원격 콘텐츠 항목(예를 들어, 리소스 서버(150) 상에 호스팅된 콘텐츠 부분)에 대한 액세스를 요구할 때, 애플리케이션은 이 콘텐츠 항목을 식별하는 요청을 릴레이 프록시(220)에 송신한다. 일 실시예에서, 이 요청은 표준 HTTP 요청이다.
릴레이 프록시(220)는 이 요청을 프록시 서버(130)로 포워딩하고, 프록시 서버는 다음에 이 요청을 적절한 리소스 서버(150)로 포워딩한다. 다음에, 프록시 서버(130)의 관점에서, 이 요청은 릴레이 프록시(220)로부터 비롯된다. 결과적으로, 프록시 서버(130)는 릴레이 프록시(220)로부터 수신된 요청들을 포워딩하도록 구성될 필요만 있으며, 애플리케이션들(210)로부터 직접 수신된 임의의 요청들을 차단하도록 구성될 수 있다.
일 실시예에서, 프록시 서버(130)는 원격 리소스 서버(150)로의 접속이 확립될 때마다 사용자의 인증 크리덴셜들이 제공되는 것을 요구한다. 이것을 처리하기 위해서, 릴레이 프록시(220)는 애플리케이션들(210)로부터 수신된 네트워크 트래픽을 모니터링하고, 요구될 때에 (예를 들어, 인증 크리덴셜 스토리지(230)에 저장된 바와 같은) 사용자의 인증 크리덴셜들을 삽입한다. 일 실시예에서, 릴레이 프록시(220)가 애플리케이션들(210) 중 하나로부터 발신되는 리소스 서버(150)로의 접속 요청을 식별하는 경우, 릴레이 프록시는 현재 사용자의 인증 크리덴셜들을 이 요청에 추가한다. 따라서, 사용자들이 각각의 애플리케이션에 대해 별개로 인증 크리덴셜들을 제공하도록 요구되고 대응하는 데이터 관리 오버헤드를 다루는 것보다는 오히려, 사용자는 (예를 들어, 사용자 명칭 및 패스워드를 제공함으로써) 릴레이 프록시(220)로만 사인 인할 수 있고, 사용자 디바이스(110) 상의 모든 애플리케이션들(210)은 다음에 그 사용자의 크리덴셜들을 이용하여 동작할 것이다. 다른 실시예들에서, 지문 인식, 얼굴 인식 및 디지털 서명을 포함하지만 이에 제한되지는 않는 다른 방법들이 사용자의 ID(identity)를 인증하기 위해 이용된다. 사용자들이 인증 크리덴셜들을 다수회 제공하도록 요구되지 않으므로, 단일의 애플리케이션(예를 들어, 릴레이 프록시(220))을 통해 복수의 애플리케이션에 대한 사용자 인증을 제공하는 것은 사용자 경험을 또한 개선한다. 이것은 학교와 같이 다수의 사용자가 단일의 사용자 디바이스(110)를 공유하는 환경에서 특히 가치가 있다.
도 3은 예시적인 컴퓨터(300)를 예시하는 고레벨 블록도이다. 컴퓨터(300)는 칩셋(304)에 결합된 적어도 하나의 프로세서(302)를 포함한다. 칩셋(304)은 메모리 제어기 허브(320) 및 입/출력(I/O) 제어기 허브(322)를 포함한다. 메모리(306) 및 그래픽 어댑터(312)가 메모리 제어기 허브(320)에 결합되고, 디스플레이(318)가 그래픽 어댑터(312)에 결합된다. 저장 디바이스(308), 키보드(310), 포인팅 디바이스(314) 및 네트워크 어댑터(316)가 I/O 제어기 허브(322)에 결합된다. 컴퓨터(300)의 다른 실시예들은 상이한 아키텍처들을 갖는다.
저장 디바이스(308)는, 하드 드라이브, 컴팩트 디스크 판독 전용 메모리(CD-ROM), DVD 또는 고체 상태 메모리 디바이스와 같은 하나 이상의 비일시적인 컴퓨터 판독가능 저장 매체를 포함한다. 메모리(306)는 프로세서(302)에 의해 이용되는 명령어들 및 데이터를 유지한다. 포인팅 디바이스(314)는 마우스, 트랙 볼 또는 다른 타입의 포인팅 디바이스이며, 키보드(310)와 결합하여 컴퓨터 시스템(300)에 데이터를 입력하는데 이용된다. 그래픽 어댑터(312)는 디스플레이(318) 상에 이미지들 및 다른 정보를 디스플레이한다. 네트워크 어댑터(316)는 컴퓨터 시스템(300)을 네트워크들(120 및 140)과 같은 하나 이상의 컴퓨터 네트워크에 결합한다.
컴퓨터(300)는 본 명세서에 설명된 기능성을 제공하기 위한 컴퓨터 프로그램 모듈들을 실행하도록 되어 있다. 본 명세서에서 이용되는 바와 같이, "모듈"이라는 용어는 특정된 기능성을 제공하기 위해 이용되는 컴퓨터 프로그램 로직을 지칭한다. 따라서, 모듈은 하드웨어, 펌웨어 및/또는 소프트웨어로 구현될 수 있다. 일 실시예에서, 프로그램 모듈들은 저장 디바이스(308) 상에 저장되고, 메모리(306)로 로딩되고, 프로세서(302)에 의해 실행된다.
도 1 및 도 2의 엔티티들에 의해 이용되는 컴퓨터들의 타입은 실시예 및 엔티티에 의해 요구되는 처리 파워에 종속하여 다를 수 있다. 예를 들어, 리소스 서버(150)는 본 명세서에 설명된 기능성을 제공하기 위해 함께 작동하는 다수의 서버를 포함할 수 있는 한편, 사용자 디바이스(110)는 태블릿 컴퓨팅 디바이스일 수 있다. 컴퓨터들에는, 네트워킹된 컴퓨팅 환경(100) 내에서 이들이 제공하는 특정 기능성에 종속하여, 키보드(310), 그래픽 어댑터(312) 및 디스플레이(318)와 같이 위에서 설명된 컴포넌트들 중 일부가 결여될 수 있다.
도 4는 일 실시예에 따른, 릴레이 프록시(220)가 애플리케이션(210)과 원격 리소스 서버(150) 사이의 네트워크 트래픽을 관리하는 방법을 예시한다. 도 4의 단계들은 이 방법을 수행하는 릴레이 프록시(220)의 관점에서 예시된다. 그러나, 단계들의 일부 또는 전부는 다른 엔티티들 및/또는 컴포넌트들에 의해 수행될 수 있다. 추가로, 일부 실시예들은 단계들을 병렬로 수행하거나, 단계들을 상이한 순서로 수행하거나, 또는 상이한 단계들을 수행할 수 있다.
이 방법은, 릴레이 프록시(220)가 네트워킹된 콘텐츠(예를 들어, 리소스 서버(150) 상에 호스팅된 콘텐츠)의 항목에 액세스하라는 요청을 애플리케이션(210)으로부터 수신하는 것(410)으로 시작한다. 일 실시예에서, 이 요청은 특정 리소스 서버(150)를 식별하고, 네트워킹된 컴퓨팅 환경(100) 내에서 요청된 콘텐츠를 고유하게 식별하는 콘텐츠 식별자를 포함한다.
릴레이 프록시(220)는 요구되는 경우에 인증 크리덴셜들을 요청에 삽입한다(420). 일 실시예에서, 릴레이 프록시는 이 요청을 검사하여, 인증 크리덴셜들이 요구되는지를 결정한다. 예를 들어, 발신 애플리케이션(110)과 호스팅 리소스 서버(150) 사이에 접속이 이미 활성인 경우, 인증 크리덴셜들은 프록시 서버(130)의 구성에 종속하여 제공될 필요가 없을 수 있다. 인증 크리덴셜들이 삽입될 필요가 있는 경우(420), 릴레이 프록시(220)는 요구된 크리덴셜들을 인증 크리덴셜 스토리지(230)로부터 검색하여 이 요청에 추가한다. 일 실시예에서, 릴레이 프록시(220)는 초기에 인증 크리덴셜들을 삽입(420)하지 않고 요청을 송신한다. 요청에 대해 인증 크리덴셜들이 요구되는 경우, 프록시 서버(130)는 요청을 거부할 것이며, 릴레이 프록시(220)는 인증 실패 통지를 수신할 것이다. 이에 응답하여, 릴레이 프록시(220)는 요구된 인증 크리덴셜들을 삽입하고(420), 이 요청을 재송신한다.
릴레이 프록시(220)는 로컬 네트워크에 대한 프록시 서버(130)로 요청(임의의 요구된 인증 크리덴셜들을 포함함)을 포워딩한다(430). 프록시 서버(130)에 의해 수신된 요청이 릴레이 프록시(220)로부터 발신되었으므로, 그것은 요구된 인증 헤더들을 포함한다. 그러므로, 프록시 서버(130)는 이 요청을 처리하고, 요구된 콘텐츠를 호스팅 리소스 서버(150)로부터 검색한다. 이에 대조적으로, 애플리케이션(210)이 요청을 프록시 서버(130)로 직접 송신하는 경우, 이 요청에는 요구된 인증 헤더들이 결여될 것이다. 따라서, 프록시 서버는 비인가 소스로부터 비롯된 것으로서 요청을 식별하고, 이 요청이 로컬 네트워크(120)를 출발하는 것을 방지한다.
릴레이 프록시(220)는 리소스 서버(150)로부터 검색되었던 요청된 콘텐츠를 포함하는 응답을 프록시 서버(130)로부터 수신한다(440). 다음에, 릴레이 프록시(220)는, 콘텐츠에 액세스하라는 요청이 발신된 애플리케이션(210)으로 이 요청된 콘텐츠 항목을 포워딩한다(450). 다음에, 요청된 콘텐츠는 최종 사용자에게 기능성을 제공하기 위해 애플리케이션(210)에 의해 이용될 수 있다. 예를 들어, 교육 퀴즈 애플리케이션은 특정 영역(예를 들어, 학군, 국가, 전세계 등)에 대해 높은 스코어 세트를 검색하고, 이들을 사용자 자신의 스코어와 함께 사용자 디바이스(110)의 디스플레이 상에 제시할 수 있다. 다른 예로서, 비디오 플레이어 애플리케이션이 사용자 디바이스(110)의 디스플레이 상에 비디오 콘텐츠를 제시할 수 있다.
위에서 설명된 시스템들 및 방법들을 이용하면, 학교와 같은 조직은 이 조직의 로컬 네트워크(120)의 안팎으로의 네트워크 트래픽을 효율적으로 모니터링할 수 있다. 또한, 이 조직은 특정의 승인된 웹사이트들로의 학생 인터넷 액세스를 제한하는 것과 같이 네트워크 보안 정책들을 시행할 수 있다. 사용자 디바이스들(110) 상에 설치된 릴레이 프록시(220)를 이용함으로써, 로컬 네트워크의 프록시 서버(130)는 릴레이 프록시로의/로부터의 네트워크 트래픽만이 로컬 네트워크(120)와 외부 네트워크(140) 사이의 경계를 가로지르는 것을 허용하도록 구성될 수 있다. 따라서, 로컬 네트워크의 프록시 서버(130)의 구성은, 각각의 애플리케이션(110)이 직접적으로(즉, 릴레이 프록시(220)를 통하지 않고) 외부 네트워크(140)에 액세스하는 구성보다 상당히 더 단순하다. 또한, 애플리케이션들로의/로부터의 네트워크 트래픽이 릴레이 프록시(220)를 통해 라우팅되기 때문에, 개별 애플리케이션들(210)은 사용자의 인증 크리덴셜들에 액세스할 필요가 없다. 따라서, 비인가 당사자로 인증 크리덴셜들을 누설하는 악의적인 또는 열등하게 설계된 애플리케이션(210)에 대하여 사용자들 및 로컬 네트워크(120)의 보안이 보호된다.
전술한 설명의 일부 부분들은 알고리즘 프로세스들 또는 동작들에 관하여 실시예들을 설명한다. 이러한 알고리즘 설명들 및 표현들은, 데이터 처리 기술분야의 통상의 기술자가 그들의 작업의 본질을 본 기술분야의 다른 통상의 기술자에게 효과적으로 전달하기 위해 일반적으로 이용된다. 이러한 동작들은, 기능적으로, 계산적으로 또는 논리적으로 설명되지만, 프로세서나 등가의 전기 회로, 마이크로코드 등에 의해 실행되기 위한 명령어들을 포함하는 컴퓨터 프로그램들에 의해 구현되는 것으로 이해된다. 또한, 일반성의 손실 없이, 모듈들로서 이러한 기능 동작들의 배열들을 지칭하는 것이 때로는 편리하다는 것이 또한 입증되었다. 설명된 동작들 및 그들의 연관된 모듈들은 소프트웨어, 펌웨어, 하드웨어 또는 이들의 임의의 조합으로 구현될 수 있다.
본 명세서에서 이용되는 바와 같이, "일 실시예" 또는 "실시예"에 대한 임의의 언급은, 이 실시예와 관련하여 설명된 특정 요소, 특징, 구조 또는 특성이 적어도 하나의 실시예에 포함되는 것을 의미한다. 본 명세서의 다양한 곳에서의 "일 실시예에서"라는 어구의 출현은 반드시 모두가 동일한 실시예를 언급하는 것은 아니다.
일부 실시예들은 "결합된(coupled)" 및 "접속된(connected)"이라는 표현을 그들의 파생물과 함께 이용하여 설명될 수 있다. 이러한 용어들은 서로에 대한 동의어로서 의도되지는 않는다는 점이 이해되어야 한다. 예를 들어, 일부 실시예들은, 2개 이상의 요소가 서로 직접적으로 물리적 또는 전기적 접촉하는 것을 표시하기 위해 "접속된"이라는 용어를 이용하여 설명될 수 있다. 다른 예에서, 일부 실시예들은, 2개 이상의 요소가 직접적으로 물리적 또는 전기적 접촉하는 것을 표시하기 위해 "결합된"이라는 용어를 이용하여 설명될 수 있다. 그러나, "결합된"이라는 용어는, 2개 이상의 요소가 서로 직접적으로 접촉하지는 않지만, 여전히 서로 상호작용하거나 협력하는 것을 또한 의미할 수 있다. 실시예들은 이와 관련하여 제한되지는 않는다.
본 명세서에서 이용되는 바와 같이, "포함하다(comprises)", "포함하는(comprising)", "포함하다(includes)", "포함하는(including)", "갖다(has)", "갖는(having)"이라는 용어 또는 이들의 임의의 다른 변형은 비배타적인 포함을 커버하는 것으로 의도된다. 예를 들어, 요소들의 리스트를 포함하는 프로세스, 방법, 물품 또는 장치는 반드시 그러한 요소들에만 제한되지는 않고, 이러한 프로세스, 방법, 물품 또는 장치에 고유하거나 명백하게 열거되지 않은 다른 요소들을 포함할 수 있다. 또한, 반대로 명백하게 언급되지 않는 한, "또는(or)"은 배타적 or가 아니라 포괄적 or를 지칭한다. 예를 들어, 조건 A 또는 B는 다음의 것 중 어느 하나에 의해 만족된다: A가 참이고(또는 존재하고) B가 거짓인 것(또는 존재하지 않는 것), A가 거짓이고(또는 존재하지 않고) B가 참인 것(또는 존재하는 것), 및 A 및 B 양쪽 모두가 참인 것(또는 존재하는 것).
추가로, 단수 형태("a" 또는 "an")의 이용은 본 명세서에서의 실시예들의 요소들 및 컴포넌트들을 설명하기 위해 이용된다. 이것은 편의상 그리고 본 개시내용의 일반적인 의미를 제공하기 위해 행해질 뿐이다. 본 설명은 하나 또는 적어도 하나를 포함하는 것으로 읽혀져야 하며, 단수형은 달리 의미하는 것이 자명하지 않은 한 복수를 또한 포함한다.
본 개시내용을 읽으면, 본 기술분야의 통상의 기술자라면, 릴레이 프록시를 이용하여 보안 및 시행가능한 네트워크 접속성을 제공하기 위한 프로세스 및 시스템을 위한 부가적인 대안의 구조적 및 기능적 설계들을 여전히 인식할 것이다. 따라서, 특정 실시에들 및 애플리케이션들이 예시 및 설명되었지만, 설명된 발명 대상은 본 명세서에 개시된 정밀한 구성 및 컴포넌트들로 제한되지는 않으며, 본 기술분야의 통상의 기술자에게 명백한 다양한 수정들, 변경들 및 변형들이 본 명세서에 개시된 방법 및 장치의 상세, 동작 및 배열에 있어서 이루어질 수 있다는 점이 이해되어야 한다. 본 발명의 범위는 다음의 청구항들에 의해서만 제한되어야 한다.
Claims (21)
- 네트워크 내로부터 상기 네트워크의 외부에 저장된 원격 콘텐츠에 액세스하기 위한 사용자 디바이스로서,
릴레이 프록시(relay proxy) - 상기 릴레이 프록시는,
사용자와 연관된 사인 인 정보를 수신하고,
프록시 서버를 통해 원격 콘텐츠 항목들을 검색하도록 구성되고, 상기 프록시 서버는 상기 사용자 디바이스와 별개이고, 상기 프록시 서버는 상기 네트워크를 출입(entering and leaving)하는 네트워크 트래픽을 관리하고,
요구되는 인증 크리덴셜들이 존재하는지 여부를 결정하기 위해 상기 원격 콘텐츠 항목들에 대한 복수의 애플리케이션으로부터의 요청들을 검사하고,
상기 사인 인 정보에 기초하여 인증 크리덴셜들을 식별하고,
상기 인증 크리덴셜들이 상기 원격 콘텐츠 항목들을 검색(retrieve)하기 위해 요구된다는 결정에 응답하여 상기 요청들 내에 상기 인증 크리덴셜들을 자동적으로 삽입함 -; 및
상기 복수의 애플리케이션 - 상기 복수의 애플리케이션 각각은 상기 릴레이 프록시에 통신가능하게 접속되고, 원격 콘텐츠 항목에 대한 요청을 상기 릴레이 프록시로 송신하고 상기 릴레이 프록시로부터 상기 원격 콘텐츠 항목을 검색(retrieve)하도록 더 구성됨 -
을 포함하는 사용자 디바이스. - 제1항에 있어서,
상기 프록시 서버는 상기 릴레이 프록시로부터 수신되는 콘텐츠 요청들을 처리하고, 상기 복수의 애플리케이션으로부터 직접 수신되는 콘텐츠 요청들을 차단하도록 구성되는 사용자 디바이스. - 제1항에 있어서,
상기 원격 콘텐츠 항목들에 대한 상기 복수의 애플리케이션으로부터의 상기 요청들은 상기 사인 인 정보를 수신한 이후에 검사되는,
사용자 디바이스. - 제1항에 있어서,
상기 릴레이 프록시는 상기 사인 인 정보를 공급하라는 프롬프트를 사용자에게 주기적으로 제공하도록 더 구성되는 사용자 디바이스. - 제1항에 있어서,
상기 릴레이 프록시는, 상기 네트워크 내로부터 비인가 원격 콘텐츠 항목(unauthorized remote content item)에 액세스하는 것이 허용되지 않는다는 표시에 응답하여, 상기 비인가 원격 콘텐츠 항목에 대한 특정 요청을 차단하도록 구성되는 사용자 디바이스. - 제5항에 있어서,
상기 표시는 블랙리스트 상에 나타나는 상기 원격 콘텐츠 항목을 호스팅하는 리소스 서버를 포함하고, 상기 블랙리스트는 상기 네트워크 내로부터의 액세스가 허용되지 않는 리소스 서버들을 식별하는 사용자 디바이스. - 제5항에 있어서,
상기 표시는 화이트리스트 상에 포함되지 않는 상기 원격 콘텐츠 항목을 호스팅하는 리소스 서버를 포함하고, 상기 화이트리스트는 상기 네트워크 내로부터의 액세스가 허용되는 리소스 서버들을 식별하는 사용자 디바이스. - 네트워크 내로부터 상기 네트워크의 외부에 저장된 원격 콘텐츠에 액세스하는 방법으로서,
사용자와 연관된 사인 인 정보를 수신하는 단계;
사용자 디바이스 상에서 실행되는 릴레이 프록시에서, 상기 사용자 디바이스 상에서 실행되는 제1 애플리케이션으로부터 제1 요청을 수신하고, 상기 사용자 디바이스 상에서 실행되는 제2 애플리케이션으로부터 제2 요청을 수신하는 단계 - 상기 제1 요청은 제1 원격 콘텐츠 항목을 식별하고, 상기 제2 요청은 제2 원격 콘텐츠 항목을 식별함 -;
요구되는 인증 크리덴셜들이 상기 제1 원격 콘텐츠 항목과 상기 제2 원격 콘텐츠 항목을 검색하기 위해 존재하는지 여부를 결정하기 위해 상기 제1 애플리케이션으로부터의 상기 제1 요청과 상기 제2 애플리케이션으로부터의 상기 제2 요청을 검사하는 단계;
상기 사인 인 정보에 기초하여 인증 크리덴셜들을 식별하는 단계;
상기 인증 크리덴셜들이 결여된 상기 제1 요청 및 상기 제2 요청 중 하나에 상기 인증 크리덴셜들을 자동적으로 삽입하는 단계;
상기 네트워크를 출입하는 네트워크 트래픽을 관리하는 프록시 서버로 상기 제1 요청 및 상기 제2 요청을 포워딩하는 단계 - 상기 프록시 서버는 상기 사용자 디바이스와 별개임 - ;
상기 제1 요청에 대한 제1 응답 및 상기 제2 요청에 대한 제2 응답을 수신하는 단계 - 상기 제1 응답은 상기 제1 원격 콘텐츠 항목을 포함하고, 상기 제2 응답은 상기 제2 원격 콘텐츠 항목을 포함함 -; 및
상기 제1 원격 콘텐츠 항목을 상기 제1 애플리케이션으로 포워딩하고, 상기 제2 원격 콘텐츠 항목을 상기 제2 애플리케이션으로 포워딩하는 단계
를 포함하는 방법. - 제8항에 있어서,
상기 프록시 서버는 상기 릴레이 프록시로부터 수신되는 콘텐츠 요청들을 처리하고, 상기 제1 애플리케이션 또는 상기 제2 애플리케이션으로부터 직접 수신되는 콘텐츠 요청들을 차단하도록 구성되는 방법. - 제8항에 있어서,
상기 제1 애플리케이션으로부터의 상기 제1 요청과 상기 제2 애플리케이션으로부터의 상기 제2 요청은 상기 사인 인 정보를 수신한 이후에 검사되는 방법. - 제8항에 있어서,
상기 사인 인 정보를 공급하라는 프롬프트를 사용자에게 주기적으로 제공하는 단계를 더 포함하는 방법. - 제8항에 있어서,
상기 사용자 디바이스 상에 설치된 제3 애플리케이션으로부터 제3 요청을 수신하는 단계 - 상기 제3 요청은 제3 원격 콘텐츠 항목을 식별함 -;
상기 제3 요청을 차단하는 단계; 및
상기 제3 요청이 차단되었다는 통지를 상기 제3 애플리케이션에 송신하는 단계
를 더 포함하는 방법. - 제12항에 있어서,
상기 릴레이 프록시는 상기 제3 원격 콘텐츠 항목을 호스팅하는 리소스 서버가 블랙리스트 상에 나타나는 것에 응답하여 상기 제3 요청을 차단하고, 상기 블랙리스트는 상기 네트워크 내로부터의 액세스가 허용되지 않는 리소스 서버들을 식별하는 방법. - 제12항에 있어서,
상기 릴레이 프록시는 상기 제3 원격 콘텐츠 항목이 화이트리스트 상에 포함되지 않는 것에 응답하여 상기 제3 요청을 차단하고, 상기 화이트리스트는 상기 네트워크 내로부터의 액세스가 허용되는 콘텐츠 항목들을 식별하는 방법. - 네트워크 내로부터 상기 네트워크의 외부에 저장된 원격 콘텐츠에 액세스하기 위한 실행가능 컴퓨터 프로그램 코드를 저장하는 비일시적인 컴퓨터 판독가능 매체로서,
상기 컴퓨터 프로그램 코드는,
사용자와 연관된 사인 인 정보를 수신하기 위한 명령어들;
사용자 디바이스 상에서 실행되는 릴레이 프록시에서, 상기 사용자 디바이스 상에서 실행되는 제1 애플리케이션으로부터 제1 요청을 수신하고, 상기 사용자 디바이스 상에서 실행되는 제2 애플리케이션으로부터 제2 요청을 수신하기 위한 명령어들 - 상기 제1 요청은 제1 원격 콘텐츠 항목을 식별하고, 상기 제2 요청은 제2 원격 콘텐츠 항목을 식별함 -;
요구되는 인증 크리덴셜들이 상기 제1 원격 콘텐츠 항목과 상기 제2 원격 콘텐츠 항목을 검색하기 위해 존재하는지 여부를 결정하기 위해 상기 제1 애플리케이션으로부터의 상기 제1 요청과 상기 제2 애플리케이션으로부터의 상기 제2 요청을 검사하기 위한 명령어들;
상기 사인 인 정보에 기초하여 인증 크리덴셜들을 식별하기 위한 명령어들;
상기 인증 크리덴셜들이 결여된 상기 제1 요청 및 상기 제2 요청 중 하나에 상기 인증 크리덴셜들을 자동적으로 삽입하기 위한 명령어들;
프록시 서버를 통해 제1 리소스 서버로 전달되도록 상기 제1 요청을 포워딩하기 위한 명령어들 - 상기 제1 리소스 서버는 상기 제1 원격 콘텐츠 항목을 호스팅하고, 상기 프록시 서버는 상기 네트워크를 출입하는 네트워크 트래픽을 관리하고, 상기 프록시 서버는 상기 사용자 디바이스와 별개임 -;
상기 프록시 서버를 통해 제2 리소스 서버로 전달되도록 상기 제2 요청을 포워딩하기 위한 명령어들 - 상기 제2 리소스 서버는 상기 제2 원격 콘텐츠 항목을 호스팅함 -;
상기 제1 요청에 대한 제1 응답 및 상기 제2 요청에 대한 제2 응답을 수신하기 위한 명령어들 - 상기 제1 응답은 상기 제1 원격 콘텐츠 항목을 포함하고, 상기 제2 응답은 상기 제2 원격 콘텐츠 항목을 포함함 -; 및
상기 제1 원격 콘텐츠 항목을 상기 제1 애플리케이션으로 제공하고, 상기 제2 원격 콘텐츠 항목을 상기 제2 애플리케이션으로 제공하기 위한 명령어들
을 포함하는 비일시적인 컴퓨터 판독가능 매체. - 제15항에 있어서,
상기 제1 애플리케이션으로부터의 상기 제1 요청과 상기 제2 애플리케이션으로부터의 상기 제2 요청은 상기 사인 인 정보를 수신한 이후에 검사되는 비일시적인 컴퓨터 판독가능 매체. - 제15항에 있어서,
상기 컴퓨터 프로그램 코드는,
상기 사인 인 정보를 공급하라는 프롬프트를 사용자에게 주기적으로 제공하기 위한 명령어들
을 더 포함하는 비일시적인 컴퓨터 판독가능 매체. - 제15항에 있어서,
상기 컴퓨터 프로그램 코드는,
상기 사용자 디바이스 상에 설치된 제3 애플리케이션으로부터 제3 요청을 수신하기 위한 명령어들 - 상기 제3 요청은 제3 원격 콘텐츠 항목을 식별함 -;
상기 제3 요청을 차단하기 위한 명령어들; 및
상기 제3 요청이 차단되었다는 통지를 상기 제3 애플리케이션에 송신하기 위한 명령어들
을 더 포함하는 비일시적인 컴퓨터 판독가능 매체. - 제18항에 있어서,
상기 릴레이 프록시는 상기 제3 원격 콘텐츠 항목을 호스팅하는 리소스 서버가 블랙리스트 상에 나타나는 것에 응답하여 상기 제3 요청을 차단하고, 상기 블랙리스트는 상기 네트워크 내로부터의 액세스가 허용되지 않는 리소스 서버들을 식별하는 비일시적인 컴퓨터 판독가능 매체. - 제18항에 있어서,
상기 릴레이 프록시는 상기 제3 원격 콘텐츠 항목이 화이트리스트 상에 포함되지 않는 것에 응답하여 상기 제3 요청을 차단하고, 상기 화이트리스트는 상기 네트워크 내로부터의 액세스가 허용되는 콘텐츠 항목들을 식별하는 비일시적인 컴퓨터 판독가능 매체. - 제1항에 있어서,
상기 릴레이 프록시는, 상기 사인 인 정보에 기초하여, 복수의 사용자로부터 상기 사용자를 결정하도록 더 구성되고,
상기 인증 크리덴셜들을 식별하는 것은 상기 결정된 사용자에 대응하는 상기 인증 크리덴셜들을 선택하는 것을 포함하는, 사용자 디바이스.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/247,179 US9736119B2 (en) | 2014-04-07 | 2014-04-07 | Relay proxy providing secure connectivity in a controlled network environment |
US14/247,179 | 2014-04-07 | ||
PCT/US2015/021316 WO2015156974A1 (en) | 2014-04-07 | 2015-03-18 | Relay proxy providing secure connectivity in a controlled network environment |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20160140917A KR20160140917A (ko) | 2016-12-07 |
KR101886946B1 true KR101886946B1 (ko) | 2018-08-08 |
Family
ID=54210761
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020167030744A KR101886946B1 (ko) | 2014-04-07 | 2015-03-18 | 제어된 네트워크 환경에서 보안 접속성을 제공하는 릴레이 프록시 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9736119B2 (ko) |
EP (1) | EP3130132B1 (ko) |
KR (1) | KR101886946B1 (ko) |
CN (1) | CN106165371B (ko) |
WO (1) | WO2015156974A1 (ko) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10181122B2 (en) | 2013-10-31 | 2019-01-15 | Cellco Partnership | Mobile authentication for web payments using single sign on credentials |
US10135805B2 (en) | 2013-10-31 | 2018-11-20 | Cellco Partnership | Connected authentication device using mobile single sign on credentials |
US9628482B2 (en) * | 2013-10-31 | 2017-04-18 | Cellco Partnership | Mobile based login via wireless credential transfer |
US10313264B2 (en) | 2014-05-28 | 2019-06-04 | Apple Inc. | Sharing account data between different interfaces to a service |
US10171503B1 (en) * | 2014-07-15 | 2019-01-01 | F5 Networks, Inc. | Methods for scaling infrastructure in a mobile application environment and devices thereof |
US10476947B1 (en) | 2015-03-02 | 2019-11-12 | F5 Networks, Inc | Methods for managing web applications and devices thereof |
US10169553B2 (en) * | 2015-06-29 | 2019-01-01 | Airwatch, Llc | Managing grouped student devices with timed locks |
US10594734B1 (en) * | 2017-04-21 | 2020-03-17 | Palo Alto Networks, Inc. | Dynamic per subscriber policy enablement for security platforms within service provider network environments |
US10601776B1 (en) | 2017-04-21 | 2020-03-24 | Palo Alto Networks, Inc. | Security platform for service provider network environments |
CN107729358A (zh) * | 2017-09-01 | 2018-02-23 | 小草数语(北京)科技有限公司 | 基于浏览器的页面访问方法和装置 |
KR20200135529A (ko) | 2018-06-07 | 2020-12-02 | 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. | 인터미턴트 네트워크에서 클라이언트 장치들에 걸쳐 저장을 관리하기 위한 로컬 서버 |
WO2019236091A1 (en) | 2018-06-07 | 2019-12-12 | Hewlett-Packard Development Company, L.P. | Local servers for managing proxy settings in intermittent networks |
CN111444278B (zh) * | 2020-04-01 | 2023-08-29 | Oppo(重庆)智能科技有限公司 | 数据同步方法、装置及中转服务器 |
US12034860B2 (en) * | 2020-08-26 | 2024-07-09 | Micron Technology, Inc. | Memory write access control |
US11778071B2 (en) * | 2021-01-26 | 2023-10-03 | Avago Technologies International Sales Pte. Limited | Systems and methods for converting between a lossy communication protocol and a lossless communication protocol |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040064727A1 (en) * | 2002-09-30 | 2004-04-01 | Intel Corporation | Method and apparatus for enforcing network security policies |
US20120246333A1 (en) * | 2008-01-28 | 2012-09-27 | Trevor Fiatal | Reducing network and battery consumption during content delivery and playback |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6721288B1 (en) * | 1998-09-16 | 2004-04-13 | Openwave Systems Inc. | Wireless mobile devices having improved operation during network unavailability |
US6606663B1 (en) * | 1998-09-29 | 2003-08-12 | Openwave Systems Inc. | Method and apparatus for caching credentials in proxy servers for wireless user agents |
US6895425B1 (en) * | 2000-10-06 | 2005-05-17 | Microsoft Corporation | Using an expert proxy server as an agent for wireless devices |
US8910255B2 (en) * | 2008-05-27 | 2014-12-09 | Microsoft Corporation | Authentication for distributed secure content management system |
US8973112B2 (en) * | 2009-01-09 | 2015-03-03 | Verizon Patent And Licensing Inc. | System and method for providing a normalized security list |
US8392972B2 (en) * | 2009-02-11 | 2013-03-05 | Sophos Plc | Protected access control method for shared computer resources |
US20110231479A1 (en) * | 2010-03-22 | 2011-09-22 | Siemens Product Lifecycle Management Software Inc. | System and Method for Secure Multi-Client Communication Service |
GB2495066B (en) * | 2010-07-26 | 2013-12-18 | Seven Networks Inc | Mobile application traffic optimization |
JP5620578B2 (ja) * | 2010-07-26 | 2014-11-05 | セブン ネットワークス インコーポレイテッド | 複数のアプリケーションにわたるモバイルネットワークトラフィック調整 |
US8806040B2 (en) * | 2010-12-06 | 2014-08-12 | Red Hat, Inc. | Accessing external network via proxy server |
US8527582B2 (en) * | 2011-01-10 | 2013-09-03 | Bank Of America Corporation | Systems and methods for requesting and delivering network content |
US20130091212A1 (en) | 2011-10-08 | 2013-04-11 | Broadcom Corporation | Social network device communication resource allocation |
GB2498064A (en) * | 2011-12-07 | 2013-07-03 | Seven Networks Inc | Distributed content caching mechanism using a network operator proxy |
WO2013168255A1 (ja) * | 2012-05-10 | 2013-11-14 | 三菱電機株式会社 | アプリケーションプログラム実行装置 |
US9860323B2 (en) | 2012-05-15 | 2018-01-02 | At&T Intellectual Property I, L.P. | System and apparatus for providing policy control and charging to support communications |
US8996856B2 (en) * | 2012-06-17 | 2015-03-31 | Skycure Ltd | Selective encryption in mobile devices |
-
2014
- 2014-04-07 US US14/247,179 patent/US9736119B2/en active Active
-
2015
- 2015-03-18 KR KR1020167030744A patent/KR101886946B1/ko active IP Right Grant
- 2015-03-18 EP EP15776848.2A patent/EP3130132B1/en active Active
- 2015-03-18 CN CN201580018467.1A patent/CN106165371B/zh active Active
- 2015-03-18 WO PCT/US2015/021316 patent/WO2015156974A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040064727A1 (en) * | 2002-09-30 | 2004-04-01 | Intel Corporation | Method and apparatus for enforcing network security policies |
US20120246333A1 (en) * | 2008-01-28 | 2012-09-27 | Trevor Fiatal | Reducing network and battery consumption during content delivery and playback |
Also Published As
Publication number | Publication date |
---|---|
EP3130132A1 (en) | 2017-02-15 |
EP3130132A4 (en) | 2017-08-23 |
US9736119B2 (en) | 2017-08-15 |
US20150288661A1 (en) | 2015-10-08 |
CN106165371B (zh) | 2019-06-11 |
WO2015156974A1 (en) | 2015-10-15 |
EP3130132B1 (en) | 2020-10-07 |
KR20160140917A (ko) | 2016-12-07 |
CN106165371A (zh) | 2016-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101886946B1 (ko) | 제어된 네트워크 환경에서 보안 접속성을 제공하는 릴레이 프록시 | |
US10382484B2 (en) | Detecting attackers who target containerized clusters | |
ES2806379T3 (es) | Aislamiento de seguridad virtualizado basado en hardware | |
US9553886B2 (en) | Managing dynamic deceptive environments | |
US10326733B2 (en) | Systems and methods for facilitating single sign-on for multiple devices | |
CN106034104A (zh) | 用于网络应用访问的验证方法、装置和*** | |
US20160373459A1 (en) | Virtual desktopaccess control | |
US10326773B2 (en) | Ensuring the credibility of devices for global attestation | |
WO2017106208A9 (en) | Device management with tunneling | |
US9479490B2 (en) | Methods and systems for single sign-on while protecting user privacy | |
US12015592B2 (en) | Zero trust approach to secure sensitive mobile applications and prevent distributed denial of service attacks | |
US10341114B2 (en) | Providing device, terminal device, providing method, non-transitory computer readable storage medium, and authentication processing system | |
US9781601B1 (en) | Systems and methods for detecting potentially illegitimate wireless access points | |
KR20230027241A (ko) | 공유 자원 식별 | |
US20140208382A1 (en) | User Authentication Based on Network Context | |
US11811817B2 (en) | SSL proxy whitelisting | |
Shukla et al. | Leveraging blockchain and SDN for efficient and secure IoT network | |
US10009318B2 (en) | Connecting to a cloud service for secure access | |
US11848923B2 (en) | Secure peer-to-peer connection network and associated protocols for a group-based communication system | |
US11095436B2 (en) | Key-based security for cloud services | |
US9712541B1 (en) | Host-to-host communication in a multilevel secure network | |
US10567387B1 (en) | Systems and methods for managing computing device access to local area computer networks | |
US11848824B2 (en) | Distributed auto discovery service | |
Sharma et al. | Design and Configuration of App Supportive Indirect Internet Access using a Transparent Proxy Server | |
Tortorella et al. | Head in the Clouds: Some of the Possible Issues with Cloud Computing in Education |
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 |