The teachings in accordance with the exemplary embodiments of this invention relate generally to cloud centric application trust validation and, more specifically, relate to a solution to deploy sensitive applications to a public cloud by utilizing a model where master keys are reliably pushed to the cloud from a trusted zone such as within a corporate network.
This section is intended to provide a background or context to the invention that is recited in the claims. The description herein may include concepts that could be pursued, but are not necessarily ones that have been previously conceived or pursued. Therefore, unless otherwise indicated herein, what is described in this section is not prior art to the description and claims in this application and is not admitted to be prior art by inclusion in this section.
Certain abbreviations that may be found in the description and/or in the Figures are herewith defined as follows:
AES advanced encryption standard
AMI amazon machine image
API application programing interface
AWS Amazon Web Services
DB database
DC domain controller
DEK data encryption key
EBS (Amazon) elastic block store
ELB (Amazon) elastic load balancer
EMR (Amazon) elastic map reduce
FIPS federal information processing standards
HSM hardware security module
ID identification
JVM java virtual memory
KEK key encryption key
KM key management
KMS key management service
PII personally identifiable information
RDS relational database service
SDK software development kit
SSH secure shell
SSL secure sockets layer
VM virtual memory
Cloud computing is an approach to sharing computing resources over the Internet. One area of cloud computing includes a host provider (for example, cloud provider) providing virtual server instances on which devices can run applications. Public Cloud Applications often need to secure sensitive information such as data encryption keys or user/system credentials. Main challenges in securing such information are to deliver ‘master keys’ to cloud applications and to establish trust to instances and applications running in public cloud environment. Examples of applications available in such a cloud environment can include social media applications, and applications provided by Yahoo®, EBay®, and Amazon® to name only a few. As these applications are run in a cloud separate from a private cloud device and its application service provider special attention needs to be given to application data security. In this regard at least a problem exists in that application data security may not be trusted to be provided by the cloud provider. This invention presents solutions to at least the above described problems.
In an exemplary aspect of the invention, there is a method comprising: deploying, with a device of a private network, an application instance with an application web service in a cloud network; and based on the deploying, communicating with the application web service in the cloud network to establish a trust relationship with the application web service for the application instance.
In another exemplary aspect of the invention, there is an apparatus comprising: at least one processor, and at least one memory including computer program code, where the at least one memory and the computer program code are configured, with the at least one processor, to cause the apparatus to at least: deploy, with a device of a private network, an application instance with an application web service in a cloud network; and based on the deploying, communicate with the application web service in the cloud network to establish a trust relationship with the application web service for the application instance.
In another exemplary aspect of the invention, there is an apparatus comprising: means for deploying, with a device of a private network, an application instance with an application web service in a cloud network; and means, based on the deploying, for communicating with the application web service in the cloud network to establish a trust relationship with the application web service for the application instance.
In accordance with the exemplary embodiments as described in the paragraph above, the means for deploying and the means for communicating comprises an interface to a communication network, and a computer readable medium including computer program code, the computer program code executed by at least one processor.
The foregoing and other aspects of embodiments of this invention are made more evident in the following Detailed Description, when read in conjunction with the attached Drawing Figures, wherein:
The exemplary embodiments of the invention provide at least a method to provide cloud centric trust validation including deploying sensitive applications to a public cloud by utilizing a model and pushing master keys to the cloud from a trusted zone such as within a corporate network.
Current state of technology depends on encryption operations and key management systems deployed within public cloud environments and/or leveraging trust validation solution that exclusively or significantly depend on validation of applications from within the public cloud. Both of these factors will pose various security and compliance risks to users and other entities.
Establishing trust between cloud applications and corporate network is usually done using ‘pull’ mechanism, where cloud application connects to a corporate network and identifies itself with specific authentication information such as SSH keys or other credentials. The challenge in this kind of model is how to deliver that authentication information to cloud applications in the first place. Previous solutions have not been very secure (because of a chicken-and-egg type of situation) or they've been very dependent on specific cloud provider security controls. The exemplary embodiments of the invention provide at least a method and apparatus to ‘push’ master keys generated for a private network, such as a corporate network, for establishing a most secure trust between the cloud applications and the corporate network.
This invention presents a model where only non-sensitive information is required to be stored to cloud and using that, public and non-sensitive information, corporate network can safely and securely deploy new applications by pushing the required master keys to new cloud instances. Exemplary embodiments of the invention are described in at least
Although the invention may be described and/or illustrated using references to particular entities such as Nokia® and Amazon® the use of these entities is non-limiting and the invention can be practiced to the benefit of any entities which incorporate similar technology.
In accordance with an exemplary embodiment of the invention which will be described in more detail below there is at least a method to deploy sensitive applications to a public cloud by utilizing a model where master keys are pushed to the cloud from a trusted zone such as within a corporate network.
Before describing in further detail the exemplary embodiments of this invention reference is made to
The server 22 of
The ED 21 includes a controller, such as at least one computer or a data processor (DP) 21A, at least one non-transitory computer-readable memory medium embodied as a memory (MEM) 21B that stores a program of computer instructions (PROG) 21C, and at least one suitable radio frequency (RF) transmitter and receiver pair (transceiver) 21D for bidirectional wireless communications with the key management system 23, the application server 22, and/or another device associated with the cloud via an antenna or antennas 21F, and/or a hardwired connection. In addition the KMS 23 may be directly or indirectly connected to the ED 21 such as via a connection 222F.
For the purposes of describing the exemplary embodiments of this invention the application server 22, the application provider device 21, and/or the key management system 23 may be assumed to include a trust establishmnent function (TEF). The TEF 21G, TEF 22G, and/or the TEF 23G are assumed to be configured to operate in accordance with the non-limiting examples of the embodiments of this invention as described herein.
At least one of the programs 21C, 22C, and 23C is assumed to include program instructions that, when executed by the associated data processor, enable the device to operate in accordance with the exemplary embodiments of this invention, as will be discussed below in greater detail. That is, the exemplary embodiments of this invention may be implemented at least in part by computer software executable by the DP 21A, DP 22A, and/or DP 23A, or by hardware, or by a combination of software and hardware (and/or firmware). Likewise, the TEF 21G, TEF 220, and the TEF 23G may be implemented at least in part by executable computer software, or by hardware, or by a combination of software and hardware (and firmware).
The various data processors, memories, programs, transceivers and interfaces depicted in
In general, the various embodiments of the ED 21 may include, but are not limited to, a server, cellular mobile devices, personal digital assistants (PDAs) having wireless and/or wired communication capabilities, portable computers having communication capabilities, GPS devices, image capture devices such as digital cameras having communication capabilities, gaming devices having communication capabilities, music storage and playback appliances having communication capabilities, Internet appliances permitting wireless Internet access and browsing, as well as portable units or terminals that incorporate combinations of such functions.
The computer-readable memories 21B, 22B, and 23B may be of any type suitable to the local technical environment and may be implemented using any suitable data storage technology, such as semiconductor based memory devices, random access memory, read only memory, programmable read only memory, flash memory, magnetic memory devices and systems, optical memory devices and systems, fixed memory and removable memory. The data processors 21A, 22A, and 23A may be of any type suitable to the local technical environment, and may include one or more of general purpose computers, special purpose computers, microprocessors, digital signal processors (DSPs) and processors based on multi-core processor architectures, as non-limiting examples.
Application data security in cloud is reliant on application credential and/or key security. Sensitive data associated with an application running in a cloud provider network and/or a public cloud can more easily be compromised. The exemplary embodiments of the invention include a method and apparatus to provide with an application service provider or a third party provider who is separate from the cloud provider, a unique key and/or master key which can be used by an application server and a private cloud device to authenticate an application running in a public cloud. The method in accordance with the exemplary embodiments providing novel authentication means and protection against security threats when running such cloud centric applications, as will be described in more detail below.
Most AWS deployments need to secure some kind of sensitive information: database encryption keys, passwords to mount volumes, user/system credentials in configuration files. However at least for applications that maintain classified or restricted data a master key (KEK) can be provided from an independent and trusted location outside of AWS.
There are many alternatives for providing the master key from a trusted location. Due to increased complexity implementing these alternatives can be quite challenging especially when deployments must be automated. The exemplary embodiments of the invention provide novel different alternatives for providing a master key are described in this application.
Key Provisioning Push Model
1. Deployment starts. Target: Begin deployment by starting a new instance.
These features blocks of
Feature Block 1: Instance/Image Template;
Feature Block 2: Instance Start-Up (e.g. Bootstrapping)
Feature Block 3: Instance Operation
Feature Block 4: Instance Shutdown
The feature blocks of
Feature Block 1: Instance/Image Template:
Feature Block 2: Instance Start-Up (e.g. Bootstrapping)
Feature Block 3: Instance Operation
Feature Block 4: Instance Shutdown
In accordance with the exemplary embodiments of the invention as described in the paragraph above, the deployment script is defined in a machine image for the application instance.
In accordance with the exemplary embodiments of the invention as described in the paragraphs above, the machine image when started passes at least one of a username and password, or a security key to the application instance.
In accordance with the exemplary embodiments of the invention as described in the paragraphs above, the communicating comprises: connecting to the application image using the security key passed to the application instance; deploying a child certificate into the application image for the trusted relationship.
In accordance with the exemplary embodiments of the invention as described in the paragraphs above, there is after the connecting, assigning secrets read from environmental variables to the application instance for the trusted relationship, wherein the environmental variables are from a location controlled by the private network.
In accordance with the exemplary embodiments of the invention as described in the paragraphs above, the machine image, when started for the application instance, loads a deployment agent to connect back to the private network.
In accordance with the exemplary embodiments of the invention as described in the paragraphs above, a validation of the connection back is performed based at least one of a username and password, or the security passed to the application instance.
In accordance with the exemplary embodiments of the invention as described in the paragraphs above, based on the validating, a child certificate and corresponding configuration information is assigned to the application instance.
In accordance with the exemplary embodiments of the invention as described in the paragraphs above, the deployment script comprises an auto scaling rule.
In accordance with the exemplary embodiments of the invention there is An apparatus comprising: means for deploying, with a device of a private network, an application instance with an application web service in a cloud network; and means, based on the deploying, for communicating with the application web service in the cloud network to establish a trust relationship with the application web service for the application instance.
In accordance with the exemplary embodiments of the invention as described in the paragraph above, the means for communicating and deploying comprises an interface to a communication network, and a computer readable memory embodying computer program code, the computer program code executed by at least one processor.
The foregoing description has provided by way of exemplary and non-limiting examples a full and informative description of the best method and apparatus presently contemplated by the inventors for carrying out the invention. However, various modifications and adaptations may become apparent to those skilled in the relevant arts in view of the foregoing description, when read in conjunction with the accompanying drawings and the appended claims. However, all such and similar modifications of the teachings of this invention will still fall within the scope of this invention.
It should be noted that the terms “connected,” “coupled,” or any variant thereof, mean any connection or coupling, either direct or indirect, between two or more elements, and may encompass the presence of one or more intermediate elements between two elements that are “connected” or “coupled” together. The coupling or connection between the elements can be physical, logical, or a combination thereof. As employed herein two elements may be considered to be “connected” or “coupled” together by the use of one or more wires, cables and/or printed electrical connections, as well as by the use of electromagnetic energy, such as electromagnetic energy having wavelengths in the radio frequency region, the microwave region and the optical (both visible and invisible) region, as several non-limiting and non-exhaustive examples.
Furthermore, some of the features of the preferred embodiments of this invention could be used to advantage without the corresponding use of other features. As such, the foregoing description should be considered as merely illustrative of the principles of the invention, and not in limitation thereof.
This patent application claims priority under 35 U.S.C. §119(e) from U.S. Provisional Patent Application No. 61/919,164, filed Dec. 20, 2013, the disclosure of which is incorporated by reference herein in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
7207039 | Komarla et al. | Apr 2007 | B2 |
8291480 | de Cesare | Oct 2012 | B2 |
8312518 | Ezell et al. | Nov 2012 | B1 |
8533796 | Shenoy et al. | Sep 2013 | B1 |
8694777 | Goodman et al. | Apr 2014 | B2 |
8826013 | Kodukula et al. | Sep 2014 | B1 |
9065832 | Barzily | Jun 2015 | B2 |
9152784 | Das | Oct 2015 | B2 |
20050210254 | Gabryjelski et al. | Sep 2005 | A1 |
20070234041 | Lakshmeshwar | Oct 2007 | A1 |
20100198730 | Ahmed et al. | Aug 2010 | A1 |
20100266132 | Bablani | Oct 2010 | A1 |
20110289315 | Laitinen | Nov 2011 | A1 |
20110302400 | Maino et al. | Dec 2011 | A1 |
20110307947 | Kariv et al. | Dec 2011 | A1 |
20110320802 | Wang | Dec 2011 | A1 |
20120088584 | Mamtani et al. | Apr 2012 | A1 |
20120151568 | Pieczul | Jun 2012 | A1 |
20120179904 | Dunn et al. | Jul 2012 | A1 |
20120185913 | Martinez et al. | Jul 2012 | A1 |
20120216244 | Kumar et al. | Aug 2012 | A1 |
20120240211 | Counterman | Sep 2012 | A1 |
20120254443 | Ueda | Oct 2012 | A1 |
20120265976 | Spiers et al. | Oct 2012 | A1 |
20120266231 | Spiers | Oct 2012 | A1 |
20120324556 | Yefimov et al. | Dec 2012 | A1 |
20130007845 | Chang et al. | Jan 2013 | A1 |
20130086210 | Yiu et al. | Apr 2013 | A1 |
20130117564 | Chang et al. | May 2013 | A1 |
20130139235 | Counterman | May 2013 | A1 |
20130149996 | King | Jun 2013 | A1 |
20140019753 | Lowry | Jan 2014 | A1 |
20140040993 | Lorenzo et al. | Feb 2014 | A1 |
20140050317 | Sabin | Feb 2014 | A1 |
20140082715 | Grajek et al. | Mar 2014 | A1 |
20140105103 | Nethi et al. | Apr 2014 | A1 |
20140359259 | Ali et al. | Dec 2014 | A1 |
20150128121 | Garcia | May 2015 | A1 |
20150163669 | Holtmanns | Jun 2015 | A1 |
Number | Date | Country |
---|---|---|
2489563 | Oct 2012 | GB |
WO 2014091082 | Jun 2014 | WO |
Entry |
---|
“AWS Security Token Service Using Temporary Security Credentials API Version Jun. 15, 2011”; 2011; pp. 1-59. |
Nokia Technologies Oy, AWS Security Token Service Using Temporary Security Credentials, API Version Jun. 15, 2011, Datasheet. Amazon Web Services, (2015), (106 pages). |
Number | Date | Country | |
---|---|---|---|
20150180848 A1 | Jun 2015 | US |
Number | Date | Country | |
---|---|---|---|
61919164 | Dec 2013 | US |