IP Library Granted Patent US 9,116,768
Granted Patent B1
US 9,116,768 · App. 14/549,218 · Granted Aug 25, 2015

Systems and methods for deploying applications included in application containers

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,116,768
App. No.
14/549,218
Granted
Aug 25, 2015
Kind
B1
Abstract

The disclosed computer-implemented method for deploying applications included in application containers may include (1) identifying an application container that includes an application and facilitates transferring the application to a deployment environment, (2) performing a reconnaissance analysis on the deployment environment by identifying one or more properties of the deployment environment, (3) determining, based at least in part on the reconnaissance analysis, that the deployment environment meets a predetermined threshold of requirements for securely executing the application, and then (4) transferring the application included in the application container to the deployment environment in response to determining that the deployment environment meets the predetermined threshold. Various other methods, systems, and computer-readable media are also disclosed.

Claims (66)

1. A computer-implemented method for deploying applications included in application containers, at least a portion of the computer-implemented method being performed by a computing device comprising at least one processor, the computer-implemented method comprising:

identifying an application container that includes an application and facilitates transferring the application to at least one deployment environment;

shipping, to the at least one deployment environment, a shell of the application container that includes a reconnaissance agent and does not include the application;

performing, by the reconnaissance agent included in the shell of the application container, a reconnaissance analysis on the at least one deployment environment by identifying at least one property of the at least one deployment environment;

determining, based at least in part on the reconnaissance analysis, that the at least one deployment environment meets a predetermined threshold of requirements for securely executing the application; and

in response to determining that the at least one deployment environment meets the predetermined threshold of requirements, transferring the application included in the application container to the at least one deployment environment for deployment within the shell of the application container.

2. The computer-implemented method of claim 1 , wherein performing the reconnaissance analysis on the at least one deployment environment comprises monitoring the at least one deployment environment via a daemon running in the background of the at least one deployment environment.

3. The computer-implemented method of claim 1 , wherein the at least one property of the at least one deployment environment comprises a property of at least one of:

hardware operating within the at least one deployment environment;

software operating within the at least one deployment environment;

network connections accessible by the at least one deployment environment;

services accessible by the at least one deployment environment; and

a geographic location of the at least one deployment environment.

4. The computer-implemented method of claim 1 , wherein determining that the at least one deployment environment meets the predetermined threshold of requirements comprises:

comparing the at least one property of the at least one deployment environment with a deployment policy; and

determining, based at least in part on the comparison of the at least one property of the at least one deployment environment with the deployment policy, that the at least one deployment environment meets the predetermined threshold of requirements.

5. The computer-implemented method of claim 1 , wherein determining that the at least one deployment environment meets the predetermined threshold of requirements comprises:

identifying at least one security measure that the at least one deployment environment is to implement prior to executing the application included in the application container; and

ensuring that the at least one deployment environment implements the at least one security measure prior to executing the application included in the application container.

6. The computer-implemented method of claim 1 , wherein transferring the application included in the application container to the at least one deployment environment comprises:

receiving a communication from a deployment agent running within the at least one deployment environment that indicates that the at least one deployment environment meets the predetermined threshold of requirements; and

transferring the application to the at least one deployment environment in response to receiving the communication.

7. The computer-implemented method of claim 1 , further comprising regulating the application included in the application container after transferring the application included in the application container to the at least one deployment environment.

8. The computer-implemented method of claim 7 , wherein regulating the application included in the application container comprises restricting at least one of:

the application's access to a network connection;

access to the application by an external service;

data transferred to the application from outside the application container; and

data transferred from the application to outside the application container.

9. The computer-implemented method of claim 7 , wherein regulating the application included in the application container comprises directing the application to comply with a deployment policy.

10. The computer-implemented method of claim 1 , further comprising:

performing an additional reconnaissance analysis on at least one additional deployment environment;

storing information obtained from the reconnaissance analysis performed on the at least one deployment environment and the additional reconnaissance analysis performed on the at least one additional deployment environment; and

using the information obtained from both the reconnaissance analysis and the additional reconnaissance analysis to regulate at least one subsequent deployment of the application.

11. The computer-implemented method of claim 10 , wherein regulating the at least one subsequent deployment of the application comprises making a recommendation to a user of the application on how to deploy the application to a potential deployment environment.

12. The computer-implemented method of claim 1 , wherein determining that the at least one deployment environment meets the predetermined threshold of requirements comprises determining that the at least one deployment environment contains a specific program that supports executing applications included in application containers.

13. The computer-implemented method of claim 1 , wherein determining that the at least one deployment environment meets the predetermined threshold of requirements comprises determining that a security level of all network connections accessible by the at least one deployment environment meets another predetermined threshold of requirements.

14. A system for deploying applications included in application containers, the system comprising:

an identification module, stored in a memory, that identifies an application container that includes an application and facilitates transferring the application to at least one deployment environment;

a reconnaissance module, stored in the memory, that:

ships, to the at least one deployment environment, a shell of the application container that includes a reconnaissance anent and does not include the application; and

performs, by the reconnaissance agent included in the shell of the application container, a reconnaissance analysis on the at least one deployment environment by identifying at least one property of the at least one deployment environment;

a determination module, stored in the memory, that determines, based at least in part on the reconnaissance analysis, that the at least one deployment environment meets a predetermined threshold of requirements for securely executing the application;

a transfer module, stored in the memory, that transfers the application included in the application container to the at least one deployment environment for deployment within the shell of the application container in response to the determination that the at least one deployment environment meets the predetermined threshold of requirements; and

at least one processor that executes the identification module, the reconnaissance module, the determination module, and the transfer module.

15. The system of claim 14 , wherein the reconnaissance module performs the reconnaissance analysis on the at least one deployment environment by monitoring the at least one deployment environment via a daemon running in the background of the at least one deployment environment.

16. The system of claim 14 , wherein the at least one property of the at least one deployment environment comprises a property of at least one of:

hardware operating within the at least one deployment environment;

software operating within the at least one deployment environment;

network connections accessible by the at least one deployment environment;

services accessible by the at least one deployment environment; and

a geographic location of the at least one deployment environment.

17. The system of claim 14 , wherein the determination module determines that the at least one deployment environment meets the predetermined threshold of requirements by:

comparing the at least one property of the at least one deployment environment with a deployment policy; and

determining, based at least in part on the comparison of the at least one property of the at least one deployment environment with the deployment policy, that the at least one deployment environment meets the predetermined threshold of requirements.

18. The system of claim 14 , wherein the determination module determines that the at least one deployment environment meets the predetermined threshold of requirements by:

identifying at least one security measure that the at least one deployment environment is to implement prior to executing the application included in the application container; and

ensuring that the at least one deployment environment implements the at least one security measure prior to executing the application included in the application container.

19. The system of claim 14 , wherein the transfer module transfers the application included in the application container to the at least one deployment environment by:

receiving a communication from a deployment agent running within the at least one deployment environment that indicates that the at least one deployment environment meets the predetermined threshold of requirements; and

transferring the application to the at least one deployment environment in response to receiving the communication.

20. A non-transitory computer-readable medium storing one or more computer-executable instructions that, when executed by at least one processor of a computing device, cause the computing device to:

identify an application container that includes an application and facilitates transferring the application to at least one deployment environment;

ship, to the at least one deployment environment, a shell of the application container that includes a reconnaissance agent and does not include the application;

perform, by the reconnaissance agent included in the shell of the application container, a reconnaissance analysis on the at least one deployment environment by identifying at least one property of the at least one deployment environment;

determine, based at least in part on the reconnaissance analysis, that the at least one deployment environment meets a predetermined threshold of requirements for securely executing the application; and

in response to determining that the at least one deployment environment meets the predetermined threshold of requirements, transfer the application included in the application container to the at least one deployment environment for deployment within the shell of the application container.

Assignments (6)
CHANGE OF NAME Recorded Feb 6, 2023
From: NORTONLIFELOCK INC.
To: GEN DIGITAL INC.
Reel/Frame 062714/0605 →
NOTICE OF SUCCESSION OF AGENCY (REEL 050926 / FRAME 0560) Recorded Sep 13, 2022
From: JPMORGAN CHASE BANK, N.A.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 061422/0371 →
SECURITY AGREEMENT Recorded Sep 13, 2022
From: NORTONLIFELOCK INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062220/0001 →
CHANGE OF NAME Recorded Feb 14, 2020
From: SYMANTEC CORPORATION
To: NORTONLIFELOCK INC.
Reel/Frame 051935/0228 →
SECURITY AGREEMENT Recorded Nov 4, 2019
From: SYMANTEC CORPORATION; BLUE COAT LLC; LIFELOCK, INC,; SYMANTEC OPERATING CORPORATION
To: JPMORGAN, N.A.
Reel/Frame 050926/0560 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 11, 2015
From: SAWHNEY, SANJAY; EFSTATHOPOULOS, PETROS; MARINO, DANIEL
To: SYMANTEC CORPORATION
Reel/Frame 035824/0957 →