Cross domain in-browser proxy

US10079905B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10079905-B2
Application numberUS-201615344345-A
CountryUS
Kind codeB2
Filing dateNov 4, 2016
Priority dateSep 17, 2012
Publication dateSep 18, 2018
Grant dateSep 18, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

An in-browser proxy enables an application in a frame to make a cross domain request. The proxy executes within the browser, which has a first domain. The browser provides a frame in which a client application executes, which has a second domain. The request from the client application is a request for data access to the external domain. The proxy identifies a registration of the client application, and forwards the request to the external domain. The proxy receives a response to the request and provides the response back to the client application within the frame.

First claim

Opening claim text (preview).

What is claimed is: 1. A method performed by a system having at least a processor and a memory therein, wherein the method comprises: executing a browser at the system, wherein the system and the browser operates within a first domain; hosting an interface to a remote application within the browser executing at the system, the remote application executing within a second domain associated with an on-demand host server remote from the system; executing a proxy within the browser, the proxy being associated with both the first and the second domains; receiving, at the proxy executing within the browser, a request from the remote application executing within the second domain, the request seeking access to data or resources of the system operating within the first domain and outside of the second domain of the remote application associated with the on-demand host server; wherein the remote application includes configured access to components hosted by the on-demand host server and which are accessible via the remote application executing within the second domain directly from within its domain and further wherein the application includes configured access to components hosted by the system operating within the first domain, wherein access to the components hosted by the system in the first domain are accessible to the remote application executing within the second domain through the proxy executing within the browser; and providing a response to the request based on successful access to the data or resources of the system operating within the first domain by the remote application executing within the second domain. 2. The method of claim 1 : wherein the request comprises a request by the remote application for data or resources hosted by the system in the first domain, external from the second domain within which the remote application operates; wherein the new request comprises a new request for the data or resources hosted by the system in the first domain, the new request being generated within the first domain; wherein the response to the new request comprises a response providing the data or resources hosted by the system in the first domain as requested by the new request; and wherein providing the response to the application comprises providing the data or resources hosted by the system in the first domain to the application executing within the second domain associated with the on-demand host server. 3. The method of claim 1 : wherein the interface to the remote application executes within a client frame of the browser; wherein the proxy comprises a cross domain proxy for requests outside of the first domain within which the browser executes; wherein the interface to the remote application includes addresses of services and/or processes to execute via the remote application executing at the second domain; and wherein the application further comprises configured access to the cross domain proxy executing via the browser. 4. The method of claim 1 : wherein the interface to the remote application executes within a client frame of the browser with configured access to components hosted by a parent server operating within the second domain and associated with the on-demand host server remote from the system through the proxy executing within the browser; wherein the method further comprises identifying a registration of the remote application with the proxy by a parent frame to the client frame registering for asynchronous requests originating at the client frame from the interface executing within the client frame, wherein the registering includes the parent frame providing an identifier or handle to the client frame, with the identifier or handle to be monitored by the client frame and stored by the client frame; and wherein the interface executing at the system accesses components hosted by the parent server by first determining that requested services associated with the components are outside of its domain and then making a request, via the proxy, requesting the proxy to access the second domain within which the components reside on behalf of the interface. 5. The method of claim 1 : wherein the request comprises an XML (extensible markup language) HTTP (hypertext transport protocol) request (XHR). 6. The method of claim 4 , wherein identifying the registration of the remote application further comprises checking authentication information for the remote application, and authorizing the remote application in the external domain in accordance with the authentication of the remote application with the proxy. 7. The method of claim 1 , wherein the interface executing within the browser of the system interacts with a primary page of the second domain and generates a request to execute the remote application; wherein the on-demand host server responsively provides application code for the remote application which is installed by the browser within a hosted space for the system under the second domain; and wherein the system then executes the remote application under the second domain and references the hosted space back to a frame within the browser executing at the first domain. 8. Non-transitory computer readable storage media having instructions stored thereupon that, when executed by a processor of a system, the instructions cause the system to perform operations including: executing a browser at the system, wherein the system and the browser operates within a first domain; hosting an interface to a remote application within the browser executing at the system, the remote application executing within a second domain associated with an on-demand host server remote from the system; executing a proxy within the browser, the proxy being associated with both the first and the second domains; receiving, at the proxy executing within the browser, a request from the remote application executing within the second domain, the request seeking access to data or resources of the system operating within the first domain and outside of the second domain of the remote application associated with the on-demand host server; wherein the remote application includes configured access to components hosted by the on-demand host server and which are accessible via the remote application executing within the second domain directly from within its domain and further wherein the application includes configured access to components hosted by the system operating within the first domain, wherein access to the components hosted by the system in the first domain are accessible to the remote application executing within the second domain through the proxy executing within the browser; and providing a response to the request based on successful access to the data or resources of the system operating within the first domain by the remote application executing within the second domain. 9. The non-transitory computer readable storage media of claim 8 : wherein the request comprises a request by the remote application for data or resources hosted by the system in the first domain, external from the second domain within which the remote application operates; wherein the new request comprises a new request for the data or resources hosted by the system in the first domain, the new request being generated within the first domain; wherein the response to the new request comprises a response providing the data or resources hosted by the system in the first domain as requested by the new request; and wherein providing the response to the application comprises providing the data or resources hosted by the system in the first domain to the application executing within the second domain associated with the on-demand host server.

Assignees

Inventors

Classifications

  • Physics · mapped topic

  • Electricity · mapped topic

  • Electricity · mapped topic

  • H04L67/02Primary

    based on web technology, e.g. hypertext transfer protocol [HTTP] · CPC title

  • Data redirection of data network streams · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10079905B2 cover?
An in-browser proxy enables an application in a frame to make a cross domain request. The proxy executes within the browser, which has a first domain. The browser provides a frame in which a client application executes, which has a second domain. The request from the client application is a request for data access to the external domain. The proxy identifies a registration of the client applica…
Who is the assignee on this patent?
Salesforce Com Inc
What technology area does this patent fall under?
Primary CPC classification H04L67/2814. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Sep 18 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).