Secure isolation of tenant resources in a multi-tenant storage system using a security gateway
First Claim
1. A method of maintaining resource isolation in a multi-tenant computing system, the method comprising:
- receiving a first request submitted by a first user in a multi-tenant computing system;
extracting from the first request a first tenant ID associated with a tenant from among a plurality of tenants in the multi-tenant computing system;
spawning a first request processor, wherein the first tenant ID is utilized by the first request processor to determine resource access privileges associated with the first tenant ID;
spawning a subtenant authenticator;
examining, by the subtenant authenticator, user credential data associated with the first request to determine whether the first user is authorized to access the one or more target resources; and
servicing the first request by providing access to one or more target resources identified in the first request, in response to determining that the first tenant ID is associated with a first tenant with privileges to access the one or more target resources.
1 Assignment
0 Petitions
Accused Products
Abstract
Machines, systems and methods for handling a client request in a hierarchical multi-tenant data storage system, the method comprising processing a request in subtasks, wherein a subtask is executed with a minimal set of privileges associated with a specific subtenant; extracting a claimed n-level hierarchy of a tenant and sub-tenant identities from the request; extracting authentication signatures or credentials that correspond to a level in the hierarchy; for a first level in the hierarchy, sending the request to a dedicated subtenant authenticator with privilege to validate credentials for a subtenant at the first level; and receiving a confirmation from the dedicated subtenant authenticator, whether the request is authentic.
19 Citations
20 Claims
-
1. A method of maintaining resource isolation in a multi-tenant computing system, the method comprising:
-
receiving a first request submitted by a first user in a multi-tenant computing system; extracting from the first request a first tenant ID associated with a tenant from among a plurality of tenants in the multi-tenant computing system; spawning a first request processor, wherein the first tenant ID is utilized by the first request processor to determine resource access privileges associated with the first tenant ID; spawning a subtenant authenticator; examining, by the subtenant authenticator, user credential data associated with the first request to determine whether the first user is authorized to access the one or more target resources; and servicing the first request by providing access to one or more target resources identified in the first request, in response to determining that the first tenant ID is associated with a first tenant with privileges to access the one or more target resources. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer system comprising:
-
one or more processors; one or more non-transitory computer readable storage media; computer program instructions; the computer program instructions being stored on the one or more non-transitory computer readable storage media; the computer program instructions comprising instructions to; receive a first request submitted by a first user in a multi-tenant computing system; extract from the first request a first tenant ID associated with a tenant from among a plurality of tenants in the multi-tenant computing system; spawn a first request processor, wherein the first tenant ID is utilized by the first request processor to determine resource access privileges associated with the first tenant ID; spawn a subtenant authenticator; examine, by the subtenant authenticator, user credential data associated with the first request to determine whether the first user is authorized to access the one or more target resources; and service the first request by providing access to one or more target resources identified in the first request, in response to determining that the first tenant ID is associated with a first tenant with privileges to access the one or more target resources. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. A computer program product comprising logic code embedded in a non-transitory data storage medium for maintaining resource isolation in a multi-tenant computing system, wherein execution of the logic code on a computer causes the computer to:
-
receive a first request submitted by a first user in a multi-tenant computing system; extract from the first request a first tenant ID associated with a tenant from among a plurality of tenants in the multi-tenant computing system; spawn a first request processor, wherein the first tenant ID is utilized by the first request processor to determine resource access privileges associated with the first tenant ID; spawn a subtenant authenticator; examine, by the subtenant authenticator, user credential data associated with the first request to determine whether the first user is authorized to access the one or more target resources; and service the first request by providing access to one or more target resources identified in the first request, in response to determining that the first tenant ID is associated with a first tenant with privileges to access the one or more target resources. - View Dependent Claims (18, 19, 20)
-
Specification