IP Library Granted Patent US 9,325,717
Granted Patent B1
US 9,325,717 · App. 14/856,815 · Granted Apr 26, 2016

Web-store restriction of external libraries

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,325,717
App. No.
14/856,815
Granted
Apr 26, 2016
Kind
B1
Abstract

A browser-based fetch of an external library may include a browser receiving a request from a web application to load an external library and determining whether the web browser has a bundled version of the library. If the bundled version exists, the browser may load the bundled version. If the bundled version does not exist, the browser may fetch the external library. When the external library is configured to send data to the remote server the method may include the browser intercepting a request to send the data to the remote server, determining that the data may be sent at a later time, and storing the data until a connection with the remote server is established. Additionally, a web store may inspect a web application for use of an external library and prevent the web application from being added to the web store when the external library is not trusted.

Claims (48)

1. A method comprising:

inspecting, using at least one processor, a web application for requests to use external libraries;

determining, using the at least one processor, whether an identified external library is trusted;

preventing the web application from being available through a web store when the identified external library is not trusted; and

allowing the web application to be available through the web store when the identified external library is trusted.

2. The method of claim 1 , wherein determining whether the identified external library is trusted includes determining whether the identified external library is on a whitelist or a blacklist.

3. The method of claim 1 , wherein inspecting the web application for requests includes:

inspecting a manifest file associated with the web application; and

determining whether the manifest file includes an explicit declaration identifying the external library.

4. The method of claim 1 , wherein inspecting the web application for requests includes:

analyzing executable code of the web application for creation of a script document object model node.

5. The method of claim 1 , wherein inspecting the web application for requests includes:

analyzing executable code of the web application for an import statement or include statement that identifies an external library.

6. The method of claim 1 , wherein the web application is a hosted web application and inspecting the web application occurs periodically and preventing the web application from being available through the web store includes removing the application from the web store.

7. The method of claim 1 , wherein the web application is a new web application and inspecting the web application occurs responsive to a request to add the new application to the web store.

8. A system comprising:

at least one processor; and

memory storing:

a web store storing web applications, and

instructions that, when executed by the at least one processor, cause the system to perform operations including:

inspecting a web application for requests to use external libraries,

determining whether an identified external library is trusted,

preventing the web application from being added to a web store when the identified external library is not trusted, and

allowing the web application to be added to the web store when the identified external library is trusted.

9. The system of claim 8 , wherein determining whether the identified external library is trusted includes determining whether the identified external library is on a whitelist or a blacklist.

10. The system of claim 8 , wherein inspecting the web application for requests includes:

inspecting a manifest file associated with the web application; and

determining whether the manifest file includes an explicit declaration identifying the external library.

11. The system of claim 8 , wherein inspecting the web application for requests includes:

analyzing executable code of the web application for creation of a script document object model node.

12. The system of claim 8 , wherein inspecting the web application for requests includes:

analyzing executable code of the web application for an import statement or include statement that identifies an external library.

13. The system of claim 8 , wherein the web application is a hosted web application and inspecting the web application occurs periodically and preventing the web application from being available through the web store includes removing the application from the web store.

14. The system of claim 8 , wherein the web application is a new web application and inspecting the web application occurs responsive to a request to add the new application to the web store.

15. A non-transitory computer-readable medium containing instructions that, when executed by at least one processor, cause the processor to:

inspect a web application for requests to use external libraries;

determine whether an identified external library is trusted;

prevent the web application from being available through a web store when the identified external library is not trusted; and

allow the web application to be available through the web store when the identified external library is trusted.

16. The non-transitory computer-readable medium of claim 15 , wherein determining whether the identified external library is trusted includes determining whether the identified external library is on a whitelist or a blacklist.

17. The non-transitory computer-readable medium of claim 15 , wherein inspecting the web application for requests includes:

inspecting a manifest file associated with the web application; and

determining whether the manifest file includes an explicit declaration identifying the external library.

18. The non-transitory computer-readable medium of claim 15 , wherein inspecting the web application for requests includes:

analyzing executable code of the web application for creation of a script document object model node.

19. The non-transitory computer-readable medium of claim 15 , wherein inspecting the web application for requests includes:

analyzing executable code of the web application for an import statement or include statement that identifies an external library.

20. The non-transitory computer-readable medium of claim 15 , wherein the web application is a hosted web application and inspecting the web application occurs periodically and preventing the web application from being available through the web store includes removing the application from the web store.

Assignments (2)
CHANGE OF NAME Recorded Oct 2, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044566/0657 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 29, 2016
From: YEUNG, BRYAN RUSSELL; HUANG, PENG
To: GOOGLE INC.
Reel/Frame 037848/0719 →