Techniques for providing remote computing services
First Claim
Patent Images
1. A computer-implemented method for providing remote computing services, comprising:
- under the control of one or more computer systems configured with executable instructions,receiving, at an authentication service, an access key request from a user device, the access key request including data derived from information permanently embedded in the user device;
determining, at the authentication service, based at least on the access key request, whether to provide access to a remote computing service distinct from the authentication service, the remote computing service configured to maintain virtual machines corresponding to authorized user devices;
at a time after a determination has been made to provide access to the remote computing service, transmitting, from the authentication service, an access key to the user device;
receiving, at the remote computing service, a request for access to the remote computing service from the user device, the request for access including the access key provided by the authentication service;
authenticating, at the remote computing service, based at least in part on the received access key, the user device as authorized to access a virtual machine maintained by the remote computing service; and
at a time after the user device has been authenticated, providing access to the remote computing service by at least;
receiving, from the user device, first information identifying user input made in connection with the user device;
executing, based at least in part on the received information, an operating system, the operating system including a graphical user interface; and
providing, to the user device, second information that enables the user device to display the graphical user interface of the operating system in a current operational state.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques, including systems and methods, for providing access to remote computing services are described and suggested herein. In an embodiment, a first computer system provides a key to a user device over a network. The user device provides the received key to a second computer system that uses the key to authenticate the user device. The second computer system executes an operating system for the user device according to instructions received from the user device. Results of execution of the operating system are provided to the user device.
-
Citations
27 Claims
-
1. A computer-implemented method for providing remote computing services, comprising:
under the control of one or more computer systems configured with executable instructions, receiving, at an authentication service, an access key request from a user device, the access key request including data derived from information permanently embedded in the user device; determining, at the authentication service, based at least on the access key request, whether to provide access to a remote computing service distinct from the authentication service, the remote computing service configured to maintain virtual machines corresponding to authorized user devices; at a time after a determination has been made to provide access to the remote computing service, transmitting, from the authentication service, an access key to the user device; receiving, at the remote computing service, a request for access to the remote computing service from the user device, the request for access including the access key provided by the authentication service; authenticating, at the remote computing service, based at least in part on the received access key, the user device as authorized to access a virtual machine maintained by the remote computing service; and at a time after the user device has been authenticated, providing access to the remote computing service by at least; receiving, from the user device, first information identifying user input made in connection with the user device; executing, based at least in part on the received information, an operating system, the operating system including a graphical user interface; and providing, to the user device, second information that enables the user device to display the graphical user interface of the operating system in a current operational state. - View Dependent Claims (2, 3, 23, 24, 25, 26, 27)
-
4. A system for providing remote computing services, comprising:
-
an authentication service operable to, at least; receive from a user device a key request that includes data derived from information incorporated with the user device; determine whether to provide the user device access to a virtual machine based at least in part on the data in the key request; responsive to at least receiving the key request, transmit a first key to a user device; one or more computing devices located remotely from the user device and collectively operable to, at least; maintain a plurality of virtual machines corresponding to a plurality of user devices; receive the first key from the user device; authenticate the user device as authorized to access the virtual machine using the received first key; execute an operating system for the user device; and provide results of executing the operating system to the user device. - View Dependent Claims (5, 6, 7, 8, 9, 10, 11)
-
-
12. A computer-implemented method of providing access to remote computing services, comprising:
under the control of a plurality of computer systems configured with executable instructions and located remotely from a first user device, receiving data derived from information incorporated with the first user device; determining whether to provide the first user device access to a virtual machine based at least in part on the data; transmitting, by a first computer system, a first key to the first user device; maintaining a plurality of virtual machines corresponding to a plurality of user devices; receiving, by a second computer system, the first key from the first user device; authenticating, by the second computer system, the first user device as authorized to access the virtual machine using the received first key; at a time after the first user device is authenticated by the second computer system, executing an operating system for the first user device; and providing information corresponding to execution of the operating system to the first user device. - View Dependent Claims (13, 14, 15)
-
16. One or more computer-readable storage media having collectively stored thereon instructions for causing a computer system to perform a process of providing access to remote computing services, the computer system including a first subsystem and a second subsystem, the process comprising:
-
determining whether to provide a user device with access to a virtual machine based at least in part on data derived from information incorporated with a user device; transmitting, by the first subsystem and responsive to a determination to provide the user device with access to the virtual machine, a key to the user device; maintaining a plurality of virtual machines corresponding to a plurality of user devices; receiving, by the second subsystem, the key from the user device; authenticating, by the second subsystem, the user device as authorized to access the virtual machine using the received key; at a time after the user device is authenticated by the second subsystem, executing an operating system for the user device; and providing information corresponding to execution of the operating system to the user device. - View Dependent Claims (17, 18)
-
-
19. A user device for accessing a remote computing service, comprising:
-
a display device; an input device; at least one processor; and memory, including instructions executable by the at least one processor that cause the user device to, at least; detect a connection to a network; at a time after detection of the connection to the network, send, to a first computer system, a key request including data derived from information incorporated with the user device; receive a key responsive to the key request and a determination to provide the user device with access to a virtual machine based at least in part on the data derived from information incorporated with the user device; provide the received key to a second computer system for authentication by the second computer system as authorized to access the virtual machine; receive, by the input device, user input; at a time after authentication, provide information corresponding to the user input to the second computer system in order to control an operating system executing on the second computer system; receive information corresponding to operation of the operating system; and modify a display of the display device according to the received information corresponding to operation of the operating system. - View Dependent Claims (20, 21, 22)
-
Specification