IP Library › Granted Patent US 11,030,329
Granted Patent B2
US 11,030,329 · App. 16/009,994 · Granted Jun 8, 2021

Unified identity services for multi-tenant architectures

Inventors: Prashant Jamkhedkar (Fremont, CA); Aravindan Ranganathan (San Jose, CA); Sandeep Kumar (Fremont, CA); Norihiro Aoki (San Jose, CA); Justin White (La Selva, CA); Jeffrey Meyer (Los Gatos, CA)
Assignee: PayPal, Inc.
G06F21/604G06F16/288G06F16/9024G06F21/62H04L63/102H04L67/16H04L67/32G06F2221/2141
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,030,329
App. No.
16/009,994
Granted
Jun 8, 2021
Kind
B2
Abstract

A method for using unified identities in a multi-tenant architecture system is discussed. The method includes receiving a request, at a first service provider, to provide a service for a user. The method includes accessing a representation of a second service provider in a first hierarchical data structure managed by the first service provider. The method includes determining that user data required for the service is managed by the second service provider that manages user identity of the user. The method includes determining that the representation is linked with a full identity reference for the second service provider in a second hierarchical data structure managed by the second service provider. The method includes accessing the user data at the second hierarchical data structure using the full identity reference. The method includes accessing the service via the lightweight identity reference and using the user data at the first service provider.

Claims (62)

1. A method for using unified identity services in a multi-tenant architecture system, the method comprising:

receiving a request, at a first service provider, to provide a first service for a user;

accessing a first representation of a second service provider in a first hierarchical data structure, the first hierarchical data structure being managed by the first service provider, the second service provider managing user identity of the user, and the first service provider configured to provide a first set of services including the first service to the user, wherein the first service provider and the second service provider are tenants of the multi-tenant architecture system;

determining that user data required for completion of the first service is managed by a second service provider;

determining that the first representation is linked, at the first hierarchical data structure, with a full identity reference for the second service provider at a second hierarchical data structure, the second hierarchical data structure managed by the second service provider, wherein relationship data associated with the first representation enables determination of links between one or more first entities at the first hierarchical data structure and one or more second entities at the second hierarchical data structure;

accessing, based on determining the first representation is linked, the user data for the user via the second hierarchical data structure using the full identity reference and a third-party identity provider of the second service provider; and

accessing the first service for the user via the first representation and using the user data at the first service provider.

2. The method of claim 1 , wherein

the second service provider is configured to directly provide a second set of services to the user; and

the second set of services are available for access from the first service provider using the first representation.

3. The method of claim 1 , wherein the determining the first representation is linked with the full identity reference for the second service provider is based, at least in part, on the determined links.

4. The method of claim 1 , wherein access permissions associated with the second service provider are used, at the first service provider, to determine how to access the user data.

5. The method of claim 1 , further comprising:

determining, based on the relationship data, a dependency graph indicating relationships and access permissions between entities of the first hierarchical data structure and additional entities of the second hierarchical data structure, wherein said determining that the first representation is linked with the full identity reference is based on the dependency graph.

6. The method of claim 1 , further comprising:

onboarding the second service provider onto the hierarchical data structure of the first service provider enabling services provided by the second service provider to be exposed to a linked identity reference from the first service provider.

7. The method of claim 1 , further comprising:

determining to update the first hierarchical data structure based on one or more changes of the second hierarchical data structure due to services being performed at the second service provider.

8. The method of claim 1 , further comprising:

generating a communication for updating the second hierarchical data structure based on one or more changes of the first hierarchical data structure based on the first service.

9. The method of claim 1 , further comprising:

receiving an additional request from another user via a third service provider for accessing a second service at the second service provider;

accessing another representation of the third service provider in the first hierarchical data structure, the second entity configured to provide a second set of services including the second service to the another user;

determining that the another representation is linked with another full reference for the third service provider in a second hierarchical data structure, the second hierarchical data structure managed by the second service provider; and

accessing the second service for the another user via the third representation at the second service provider.

10. A system comprising:

a non-transitory memory storing instructions; and

a processor configured to execute the instructions to cause the system to:

receive a request, at a first service provider, to provide a first service for a user, the first service provider being a first tenant of a multi-tenant system;

access a first lightweight identity reference of the user in a first hierarchical data structure, the first hierarchical data structure being managed by the first service provider;

determine that user data required for completion of the first service is managed by a representation of the first lightweight identity reference at a second service provider, the second service provider being a second tenant of the multi-tenant system;

determine that the first lightweight identity reference is linked with a full identity reference for the user in a second hierarchical data structure, the second hierarchical data structure managed by a second service provider, wherein the system is configured to use relationship data associated with the first representation to determine links between one or more first entities at the first hierarchical data structure and one or more second entities at the second hierarchical data structure;

access, based on determining the first lightweight identity reference is linked with the full identity reference, the user data at the second hierarchical data structure using the full identity reference and a third-party identity provider of the second service provider; and

access the first service for the user via the first lightweight identity reference and using the user data at the first service provider.

11. The system of claim 10 , wherein

the second service provider is an original provider of user identity including a second set of services; and

one or more of the second set of services are available for access from the first service provider using the first lightweight user reference.

12. The system of claim 10 , wherein executing the instructions further cause the system to

determine, based on the relationship data, a dependency graph indicating relationships and access permissions between entities of the first hierarchical data structure and additional entities of the second hierarchical data structure, wherein said determining that the first lightweight identity reference is linked with the full identity reference is based on the dependency graph.

13. The system of claim 10 , wherein executing the instructions further cause the system to

onboard the second service provider onto the hierarchical data structure of the first service provider enabling services provided by the second service provider to be exposed to a linked identity reference from the first service provider.

14. The system of claim 10 , wherein executing the instructions further cause the system to

determine to update the first hierarchical data structure based on one or more changes of the second hierarchical data structure due to services being performed at the second service provider.

15. A non-transitory machine-readable medium having instructions stored thereon, the instructions executable to cause performance of operations comprising:

receiving a request, at a first service provider, to provide a first service for a user, the first service provider being a first tenant of a multi-tenant system;

determining that the first service is provided by a second service provider;

accessing a full identity reference of the user in a first hierarchical data structure, the first hierarchical data structure being managed by the first service provider;

determining a dependency graph indicating relationships and access permissions between entities of the first hierarchical data structure and additional entities of a second hierarchical data structure;

determining, based on the dependency graph, that the full identity reference is linked with a first lightweight identity reference for the user in the second hierarchical data structure, the second hierarchical data structure managed by a second service provider; and

accessing the first service for the user via the first lightweight identity reference at the second service provider.

16. The non-transitory machine-readable medium of claim 15 , wherein

the second service provider is an original provider of user identity including a second set of services; and

one or more of the second set of services are available for access from the first service provider using the first lightweight user reference.

17. The non-transitory machine-readable medium of claim 15 , wherein the operations further comprise:

generating a communication for updating the second hierarchical data structure based on one or more changes of the first hierarchical data structure based on the first service.

18. The non-transitory machine-readable medium of claim 15 , wherein the operations further comprise:

onboarding the second service provider onto the hierarchical data structure of the first service provider to expose services provided by the second service provider to a linked identity reference from the first service provider.

19. The non-transitory machine-readable medium of claim 15 , wherein the operations further comprise:

determining to update the first hierarchical data structure based on one or more changes of the second hierarchical data structure due to services being performed at the second service provider.

20. The non-transitory machine-readable medium of claim 15 , wherein

relationship data associated with the first lightweight user reference enable links between one or more entities at the first hierarchical data structure and the second hierarchical data structure to be determined; and

access permissions associated with the second service provider are used, at the first service provider, to determine how to access user data.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 5, 2018
From: AOKI, NORIHIRO; WHITE, JUSTIN; JAMKHEDKAR, PRASHANT; RANGANATHAN, ARAVINDAN; KUMAR, SANDEEP; MEYER, JEFFREY DAVID
To: PAYPAL, INC.
Reel/Frame 046794/0301 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 15, 2018
From: RANGANATHAN, ARAVINDAN; KUMAR, SANDEEP; WHITE, JUSTIN; MEYER, JEFFREY DAVID; JAMKHEDKAR, PRASHANT
To: PAYPAL, INC.
Reel/Frame 046103/0335 →
Continuity (1)
Related Publication 20190384922A1 · Dec 19, 2019