IP Library › Granted Patent US 11,997,084
Granted Patent B2
US 11,997,084 · App. 18/214,217 · Granted May 28, 2024

Structure-based access control

Inventors: Mark Spates, IV (San Francisco, CA); Vincent Yanton Mo (Sunnyvale, CA); Zhenguo Guan (Cupertino, CA); David Roy Schairer (San Jose, CA)
Assignee: GOOGLE LLC
H04L63/0853G06F16/2379
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 11,997,084
App. No.
18/214,217
Granted
May 28, 2024
Kind
B2
Abstract

The present disclosure provides systems and methods that perform structure-based access control. In particular, rather than relying upon a user-specific credential scheme, which can require manual sharing of user-specific credentials and/or switching between the multiple accounts to access the particular devices, applications, or services associated with such accounts, the systems and methods of the present disclosure facilitate user credentials to be inherited by or otherwise assigned to a structure identifier associated with a structure (e.g., a home in which the user resides), thereby generating a set of structure credentials. This enables other users in the structure, who may be part of a collaborative user group, to access devices, applications, and/or services using the structure credentials.

Claims (60)

1. A computer system, comprising a control computing device physically located within a physical structure, the control computing device comprising: one or more processors, and one or more non-transitory computer-readable media storing instructions that, when executed by the one or more processors, cause the control computing device to:

receive, from a user and without manual sharing of credentials, a request to control a first computing device, a first application, or a first web service; and

in response to receiving the request from the user:

determine that multiple sets of structure credentials have been generated to enable access to or control of the first computing device, the first application, or the first web service,

wherein the multiple sets of structure credentials include at least a first set of structure credentials and a second set of structure credentials different from the first set of structure credentials,

wherein the first set of structure credentials are generated based on a structure identifier of the physical structure and a first set of user credentials for accessing the first computing device, the first application, or the first web service, and

wherein the second set of structure credentials are generated based on the structure identifier of the physical structure and a second set of user credentials for accessing the first computing device, the first application, or the first web service, the second set of user credentials being different from the first set of user credentials,

perform one or more conflict resolution operations on the multiple sets of structure credentials, to select a particular set of structure credentials from the multiple sets of structure credentials, and

use the selected particular set of structure credentials to enable the user to access the first computing device, the first application, or the first web service.

2. The computer system of claim 1 , wherein the one or more non-transitory computer-readable media store instructions that, when executed by the one or more processors, cause the control computing device to perform the one or more conflict resolution operations on the multiple sets of structure credentials by:

analyzing each of the multiple sets of structure credentials to determine a premier set of structure credentials that provide premium permission to access the first computing device, the first application, or the first web service, and

selecting the premier set of structure credentials as the particular set of structure credentials for accessing the first computing device, the first application, or the first web service.

3. The computer system of claim 2 , wherein:

the first set of structures credentials are generated from the first set of user credentials that correspond to a standard account for accessing the first computing device, the first application, or the first web service,

the second set of structures credentials are generated from the second set of user credentials that correspond to a premium account for accessing the first computing device, the first application, or the first web service, and

the one or more non-transitory computer-readable media stores instructions that, when executed by the one or more processors, cause the control computing device to determine the second set of structures credentials as the premier set of structure credentials.

4. The computer system of claim 1 , wherein the one or more non-transitory computer-readable media store instructions that, when executed by the one or more processors, cause the control computing device to perform the one or more conflict resolution operations on the multiple sets of structure credentials by:

analyzing each of the multiple sets of structure credentials to determine a first available set of structure credentials, from the multiple sets of structure credentials, to access the first computing device, the first application, or the first web service, and

selecting the first available set of structure credentials as the particular set of structure credentials for accessing the first computing device, the first application, or the first web service.

5. The computer system of claim 1 , wherein the one or more non-transitory computer-readable media store instructions that, when executed by the one or more processors, cause the control computing device to perform the one or more conflict resolution operations on the multiple sets of structure credentials by:

engaging the user for user input that disambiguates between the multiple set of structure credentials.

6. The computer system of claim 5 , wherein the one or more non-transitory computer-readable media store instructions that, when executed by the one or more processors, cause the control computing device to engage the user for user input that disambiguates between the multiple set of structure credentials by:

requesting the user to specify one of the multiple sets of structure credentials, and

selecting a set of structure credentials specified by the user as the particular set of structure credentials to access the first computing device, the first application, or the first web service.

7. The computer system of claim 1 , wherein the one or more non-transitory computer-readable media store instructions that, when executed by the one or more processors, cause the control computing device to:

determine whether the user is an authorized user, of one or more authorized users, to access the first computing device, the first application, or the first web service,

wherein determining whether the user is the authorized user is performed in response to receiving the request from the user to control the first computing device, the first application, or the first web service.

8. The computer system of claim 7 , wherein the request from the user is a voice command, and the one or more non-transitory computer-readable media store instructions that, when executed by the one or more processors, cause the control computing device to determine whether the user is the authorized user by:

processing the voice command using voice recognition; and determining whether the user is one of the one or more authorized users based on the processed voice command.

9. The computer system of claim 8 , wherein the user is determined as being the first user based on the processed voice command, and the first set of structure credentials are automatically selected as the particular set of structure credentials for the user to access the first computing device, the first application, or the first web service.

10. The computer system of claim 1 , wherein the control computing device is a smart speaker located within the physical structure, and wherein the physical structure is a dwelling for the first user and/or the second user.

11. The computer system of claim 1 , wherein the structure identifier is programmed into the control computing device by a manufacturer of the physical structure, or is generated based on input from the first or second user.

12. The computer system of claim 1 , wherein the request to control the first computing device, the first application, or the first web service is received from a second computing device different from the first computing device, and wherein the first application is not installed on the second computing device.

13. A computer-implemented method, comprising:

receiving, from a user and without manual sharing of credentials, a request to control a first computing device, a first application, or a first web service; and

in response to receiving the request from the user:

determining that multiple sets of structure credentials have been generated to enable access to or control of the first computing device, the first application, or the first web service,

wherein the multiple sets of structure credentials include at least a first set of structure credentials and a second set of structure credentials different from the first set of structure credentials,

wherein the first set of structure credentials are generated based on a structure identifier of a physical structure and a first set of user credentials for accessing the first computing device, the first application, or the first web service, and

wherein the second set of structure credentials are generated based on the structure identifier of the physical structure and a second set of user credentials for accessing the first computing device, the first application, or the first web service, the second set of user credentials being different from the first set of user credentials,

performing one or more conflict resolution operations on the multiple sets of structure credentials, to select a particular set of structure credentials from the multiple sets of structure credentials, and

using the selected particular set of structure credentials to enable the user to access the first computing device, the first application, or the first web service.

14. The method of claim 13 , wherein performing the one or more conflict resolution operations on the multiple sets of structure credentials comprises:

analyzing each of the multiple sets of structure credentials to determine a premier set of structure credentials that provide premium permission to access the first computing device, the first application, or the first web service, and

selecting the premier set of structure credentials as the particular set of structure credentials for accessing the first computing device, the first application, or the first web service.

15. The method of claim 13 , wherein performing the one or more conflict resolution operations on the multiple sets of structure credentials comprises:

analyzing each of the multiple sets of structure credentials to determine a first available set of structure credentials, from the multiple sets of structure credentials, to access the first computing device, the first application, or the first web service, and

selecting the first available set of structure credentials as the particular set of structure credentials for accessing the first computing device, the first application, or the first web service.

16. The method of claim 13 , wherein performing the one or more conflict resolution operations on the multiple sets of structure credentials comprises:

engaging the user for user input that disambiguates between the multiple set of structure credentials.

17. The method of claim 16 , wherein engaging the user for user input that disambiguates between the multiple set of structure credentials comprises:

requesting the user to specify one of the multiple sets of structure credentials, and

selecting a set of structure credentials specified by the user as the particular set of structure credentials to access the first computing device, the first application, or the first web service.

18. The method of claim 13 , further comprising:

determining whether the user is an authorized user, of one or more authorized users, to access the first computing device, the first application, or the first web service,

wherein determining whether the user is the authorized user is performed in response to receiving the request from the user to control the first computing device, the first application, or the first web service.

19. The method of claim 18 , wherein the request from the user is a voice command, and determining whether the user is the authorized user comprises:

processing the voice command using voice recognition; and

determining whether the user is the authorized user based on the processed voice command.

20. The method of claim 19 , wherein the user is determined as being the first user based on the processed voice command, and the first set of structure credentials are automatically selected as the particular set of structure credentials for the user to access the first computing device, the first application, or the first web service.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 27, 2023
From: SPATES, MARK, IV; MO, VINCENT YANTON; GUAN, ZHENGUO; SCHAIRER, DAVID ROY
To: GOOGLE LLC
Reel/Frame 064069/0822 →
Continuity (4)
Continuation 17962769 · Oct 10, 2022
Continuation 16609569
Provisional Application 62591934 · Nov 29, 2017
Related Publication 20230336544A1 · Oct 19, 2023