IP Library Granted Patent US 12,645,823
Granted Patent B2
US 12,645,823 · App. 18/752,299 · Granted Jun 2, 2026

Identity domain snapshot consumption using versioning and related systems and methods

Inventors: Pranjal Sharma (Covington, WA); Guhan Ravi (Kirkland, WA); Hitesh Gupta Tumsi Ramesh (Seattle, WA)
Assignee: Oracle International Corporation
G06F21/6218G06F11/1464G06F2201/815G06F2201/84G06F2221/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 12,645,823
App. No.
18/752,299
Granted
Jun 2, 2026
Kind
B2
Abstract

Techniques for identity domain snapshotting and snapshot consumption using versioning are disclosed. A snapshot of an updated identity domain is received and applied to an identity domain to change the active version of the identity domain from a prior current version to the updated version. The snapshot is consumed by loading data objects in a hierarchical manner into an updated identity domain. While data objects belonging to the snapshot are loaded during consumption of the snapshot, client traffic continues to be served by the prior, non-updated version of the identity domain. Once consumption of the snapshot is completed successfully, the updated version of the identity domain becomes the active version. The prior version is then recorded in a cleanup table denoting that cleanup operations shall be performed for entities related to the data objects and associated with the prior version.

Claims (66)

1 . One or more non-transitory computer readable media comprising instructions which, when executed by one or more hardware processors, cause performance of operations comprising:

accessing a domain snapshot for an updated version of an identity domain;

loading entity data for a first entity from the domain snapshot into a data object associated with the identity domain;

updating metadata associated with the identity domain to reference the updated version of the identity domain;

activating the updated version of the identity domain by updating an active version of the identity domain to the updated version; and

updating metadata for a related entity, the related entity being related to the first entity, to reference the entity data for the first entity loaded from the domain snapshot for the updated version of the identity domain.

2 . The non-transitory media of claim 1 , the operations further comprising:

loading entity data for a plurality of entities from the domain snapshot into a plurality of data objects associated with the identity domain during the loading of the entity data for the plurality of entities from the domain snapshot.

3 . The non-transitory media of claim 1 , the operations further comprising:

based on a prior version of the identity domain being the active version of the identity domain, returning, for the data object, the entity data loaded according to the prior version; and

based on the updated version of the identity domain being the active version of the identity domain, returning, for the data object, the entity data loaded from the domain snapshot for the updated version.

4 . The non-transitory media of claim 1 , wherein:

activating the updated version of the identity domain comprises updating a domain lookup table to reference the updated version of the identity domain as the active version for the identity domain.

5 . The non-transitory media of claim 1 , the operations further comprising:

removing a prior record for a prior version of the identity domain from a domain lookup table;

adding a new record to a cleanup domain based on the prior record; and

cleaning up the prior version of the identity domain by removing a dangling entity from the prior version of the identity domain.

6 . The non-transitory media of claim 1 , the operations further comprising:

routing traffic for a service to the updated version of the identity domain based on a global unique identifier for the updated version of the identity domain being mapped to an identity domain associated with the service.

7 . The non-transitory media of claim 1 , wherein:

duplicates for an identity-related entity for different versions of the identity domain are distinguished by a primary key comprised of a global unique identifier assigned to a corresponding version of the identity domain and an identifier assigned to the first entity.

8 . The non-transitory media of claim 1 , further comprising:

loading the entity data for the first entity by copying the entity data for the first entity and one or more related entities from the domain snapshot into one or more entity tables for the identity domain; and

updating the metadata associated with the identity domain to reference the entity data for the first entity and one or more related entities from the domain snapshot copied into the one or more entity tables.

9 . The non-transitory media of claim 1 , further comprising:

responsive to detecting a failure condition associated with the updated version of the identity domain, updating a domain lookup table to reference the updated version of the identity domain as inactive and to reference a different version of the identity domain as active.

10 . The non-transitory media of claim 1 , further comprising:

storing up to a threshold number of prior versions of the identity domain in a cleanup domain;

in response to receiving a request to store an additional version of the identity domain exceeding the threshold number of prior versions, removing an oldest version of the identity domain from the cleanup domain; and

storing the additional version of the identity domain in the cleanup domain.

11 . A method comprising:

accessing a domain snapshot for an updated version of an identity domain;

loading entity data for a first entity from the domain snapshot into a data object associated with the identity domain;

updating metadata associated with the identity domain to reference the updated version of the identity domain;

activating the updated version of the identity domain by updating an active version of the identity domain to the updated version; and

updating metadata for a related entity, the related entity being related to the first entity, to reference the entity data for the first entity loaded from the domain snapshot for the updated version of the identity domain, wherein

the method is performed by at least one device including a hardware processor.

12 . The method of claim 11 , further comprising:

loading entity data for a plurality of entities from the domain snapshot into a plurality of data objects associated with the identity domain during the loading of the entity data for the plurality of entities from the domain snapshot.

13 . The method of claim 11 , further comprising:

based on a prior version of the identity domain being the active version of the identity domain, returning, for the data object, the entity data loaded according to the prior version; and

based on the updated version of the identity domain being the active version of the identity domain, returning, for the data object, the entity data loaded from the domain snapshot for the updated version.

14 . The method of claim 11 , wherein:

activating the updated version of the identity domain comprises updating a domain lookup table to reference the updated version of the identity domain as the active version for the identity domain.

15 . The method of claim 11 , further comprising:

removing a prior record for a prior version of the identity domain from a domain lookup table;

adding a new record to a cleanup domain based on the prior record; and

cleaning up the prior version of the identity domain by removing a dangling entity from the prior version of the identity domain.

16 . The method of claim 11 , further comprising:

routing traffic for a service to the updated version of the identity domain based on a global unique identifier for the updated version of the identity domain being mapped to an identity domain associated with the service.

17 . The method of claim 11 , further comprising:

loading the entity data for the first entity by copying the entity data for the first entity and one or more related entities from the domain snapshot into one or more entity tables for the identity domain; and

updating the metadata associated with the identity domain to reference the entity data for the first entity and one or more related entities from the domain snapshot copied into the one or more entity tables.

18 . A system comprising:

at least one device including a hardware processor;

the system being configured to perform operations comprising:

accessing a domain snapshot for an updated version of an identity domain;

loading entity data for a first entity from the domain snapshot into a data object associated with the identity domain;

updating metadata associated with the identity domain to reference the updated version of the identity domain; and

activating the updated version of the identity domain by updating an active version of the identity domain to the updated version;

based on a prior version of the identity domain being the active version of the identity domain, returning, for the data object, the entity data loaded according to the prior version; and

based on the updated version of the identity domain being the active version of the identity domain, returning, for the data object, the entity data loaded from the domain snapshot for the updated version.

19 . The system of claim 18 , wherein the operations further comprise:

updating metadata for a related entity, the related entity being related to the first entity, to reference the entity data for the first entity loaded from the domain snapshot for the updated version of the identity domain.

20 . The system of claim 18 , wherein the operations further comprise:

loading entity data for a plurality of entities from the domain snapshot into a plurality of data objects associated with the identity domain during the loading of the entity data for the plurality of entities from the domain snapshot.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 25, 2024
From: SHARMA, PRANJAL; RAVI, GUHAN; GUPTA TUMSI RAMESH, HITESH
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 067835/0649 →
Continuity (1)
Related Publication 20250390596A1 · Dec 25, 2025
References Cited (22)
US 10250585B1 · Golwalkar · 2019 [cited by applicant]
US 11818114B2 · Olden et al. · 2023 [cited by applicant]
US 12197296B1 · Gussin · 2025 [cited by examiner]
US 20030009431A1 · Souder · 2003 [cited by examiner]
US 20030167380A1 · Green · 2003 [cited by examiner]
US 20090055607A1 · Schack · 2009 [cited by examiner]
US 20100161556A1 · Anderson · 2010 [cited by examiner]
US 20160203056A1 · Shimizu · 2016 [cited by examiner]
US 20160335338A1 · Beiter · 2016 [cited by applicant]
US 20160364440A1 · Lee · 2016 [cited by examiner]
US 20210390170A1 · Olden et al. · 2021 [cited by applicant]
US 20220334950A1 · Balan · 2022 [cited by examiner]
US 20220394040A1 · Rottinghuis et al. · 2022 [cited by applicant]
US 20230094990A1 · Tammana et al. · 2023 [cited by applicant]
CN 105991592A · 2016 [cited by applicant]
EP 3953841A1 · 2022 [cited by applicant]
WO 2008042907A2 · 2008 [cited by applicant]
“Local authentication, registration, and other settings,” Retrieved from https://learn.microsoft.com/en-us/power-pages/security/authentication/set-authentication-identity, Aug. 7, 2023, pp. 10. [cited by applicant]
“Managing a single user with multiple external identities,” Microsoft, Apr. 22, 2020, pp. 3. [cited by applicant]
“Processing Identity data,” Retrieved from https://documentation.sailpoint.com/saas/help/setup/identity_processing.html, Retrieved on Aug. 1, 2024, pp. 5. [cited by applicant]
“Resilience in AWS Identity and Access Management,” Retrieved from https://docs.aws.amazon.com/IAM/latest/UserGuide/disaster-recovery-resiliency.html, 2024, pp. 4. [cited by applicant]
Megouache. L. et al., “Ensuring user authentication and data integrity in multi cloud environment,” Human-centric Computing and information sciences, 2020, vol. 10, Issue 15, pp. 20. [cited by applicant]