Back to results
US 9,544,137 B1Granted
Encrypted boot volume access in resource-on-demand environments
AssigneeAmazon Technologies, Inc.
InventorEric J. Brandwine
Life of this patent
Estimating the term…
Abstract
In an resource-on-demand environment, dynamically created server instances are allowed to boot from encrypted boot volumes. Access keys to the boot volumes are provided from a key provider that authenticates new instances based on possession of a security token that has been previously shared between the key provider and the new instance through an out-of-band communication.
Claims20
A resource providing device, comprising:
- a storage device;
- one or more processor devices, coupled to the storage device, configured to perform actions comprising:
- receiving a request from a customer via a customer device to create (i) a virtual server instance and (ii) a boot volume that is encrypted;
- and
- initiating the virtual server instance based at least in part on a pre-defined instance image;
- and
- a server configured to execute the virtual server instance configured to perform actions comprising:
- identifying a security token;
- associating the security token with metadata received with the request from the customer;
- publishing the security token to an out-of-band location using an out-of-band communications channel, wherein the out-of-band location is accessible to the customer device to enable the customer device to access the security token from the out-of-band location and transmit the security token to a key server;
- transmitting a request for authentication to the key server device using an in-band communications channel, wherein the request for authentication includes at least one of (i) the security token or (ii) information derived based on the security token, wherein the key server device authenticates the virtual server instance based at least in part on (i) receiving the request for authentication and (ii) receiving the security token that was published by the virtual server instance to the out-of-band location, and wherein the in-band communications channel is different from the out-of-band communications channel;
- receiving from the key server device an access key, in response to the key server device authenticating the virtual server instance, wherein the security token and the access key are different;
- decrypting the encrypted boot volume using the access key;
- and
- booting from the encrypted boot volume.
12 more elements
A method for executing booting process of a server instance on a resource providing device, comprising:
- receiving, by one or more processors, a request via a customer device to create (i) a server instance and (ii) a boot volume that is encrypted;
- identifying, by the one or more processors, a security token;
- associating the security token with metadata received with the request from the customer device, the security token being associated with an access key;
- publishing, by the one or more processors, the security token to an out-of-band location using an out-of-band communications channel, wherein the out-of-band location is accessible to the customer device to enable the customer device to access the security token from the out-of-band location and transit the security token to a key server;
- transmitting, by the one or more processors, a request for authentication to the key server using an in-band communications channel that is different from the out-of-band communications channel, wherein the request for authentication includes at least one of (i) the security token or (ii) information derived based on the security token, wherein the key server authenticates the server instance based at least in part on (i) receiving the request for authentication and (ii) receiving the security token that was published to the out-of-band location;
- upon successful authentication at the key server, receiving, by the one or more processors, the access key from the key server, wherein the security token and the access key are different;
- decrypting the encrypted boot volume using the access key;
- and
- booting from the boot volume that is decrypted.
6 more elements
A method for executing booting process of a server instance, the method comprising:
- transmitting, by a customer device, a request for creation of the server instance that is to boot from a boot volume, wherein the request for creation of the server instance is transmitted along with metadata associated with the server instance;
- specifying, by the customer device, a pre-defined instance image from which to create the server instance;
- obtaining, by the customer device, a security token from an out-of-band location, wherein the security token is published in the out-of-band location by the server instance using an out-of-band communications channel, wherein the security token is associated with the metadata;
- transmitting, by the customer device, the security token to a key server;
- and
- configuring, by the customer device, the server instance to perform actions comprising:
- transmitting a request to the key server for an access key using an in-band communications channel, wherein the in-band communications channel is different from the out-of-band communications channel, wherein the request to the key server includes at least one of (i) the security token or (ii) information derived based on the security token, and wherein the key server authenticates the server instance based at least in part on (i) receiving the request for the access key and (ii) receiving the security token that was stored in the out-of-band location by the server instance;
- based on the key server authenticating the server instance, receiving the access key from the key server, wherein the security token and the access key are different;
- decrypting the encrypted boot volume based at least on the access key;
- and
- executing a booting process of the service instance from the encrypted boot volume that has been decrypted.
8 more elements
Dependencies are inferred from the claim text.