IP Library Granted Patent US 11,704,428
Granted Patent B2
US 11,704,428 · App. 17/850,613 · Granted Jul 18, 2023

System and method for implementing data sovereignty safeguards in a distributed services network architecture

Inventors: Richard D. Shriver (Tinton Falls, NJ); Edward T. Pieluc, Jr. (Howell, NJ); Daniel J. McDonald (Whitehouse Station, NJ); Hugh Beverly Appling (Hickory, NC); David Alan Hammaker (Oakland Park, FL); Zheng Sun (Greenacres, FL)
Assignee: OPEN TEXT HOLDINGS, INC.
G06F21/6218H04L63/20H04L67/1095H04L67/306G06F2221/2111H04L63/102H04L67/10H04W4/021
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,704,428
App. No.
17/850,613
Granted
Jul 18, 2023
Kind
B2
Abstract

Embodiments of systems and methods for implementing data sovereignty safeguards in a distributed services network architecture are disclosed. Embodiments of a distributed services system may have a number of distributed nodes that each implements a set of services. When a user requests a service at a particular node of a distributed services system, the node is configured to determine if that node is not (or is) data sovereign for a region associated with the user. If the node is not data sovereign for the user's region, the user may be directed to a corresponding service at a node of the distributed service system that is data sovereign for the user's region.

Claims (41)

1. A method, comprising:

receiving, at a node of a distributed service system, a request for a service from a user of an enterprise, the service provided by the distributed service system and implemented on the node, the request received through an interface of the service;

determining, by a data sovereignty module on the node, whether the user is subject to data sovereignty enforcement;

responsive to the user being subject to the data sovereignty enforcement, identifying, by the data sovereignty module on the node, a region associated with the user;

determining, by the data sovereignty module on the node based on the region thus identified, whether the node on which the service is implemented is data sovereign for the region;

responsive to the node on which the service is implemented not being data sovereign for the region, determining a response based on a response configuration of the data sovereignty module, wherein the response includes a location of an other node of the distributed service system that is data sovereign for the region and that implements a corresponding service of the distributed service system; and

communicating the response to the user.

2. The method according to claim 1 , wherein the node comprises a data sovereignty configuration that indicates identifiers for regions for which the node is not data sovereign, wherein determining whether the node on which the service is implemented is data sovereign for the region comprises comparing a region identifier for the region associated with the user with the identifiers indicated by the data sovereignty configuration, and wherein if the region identifier for the region associated with the user matches one of the identifiers for the regions for which the node is not data sovereign, the node is not considered data sovereign for the region associated with the user.

3. The method according to claim 2 , wherein if a match is not found between the region identifier for the region associated with the user and the identifiers for the regions for which the node is not data sovereign, the node is considered data sovereign for the region associated with the user.

4. The method according to claim 1 , wherein the response configuration is associated with the service, the node, or the region.

5. The method according to claim 1 , wherein the response configuration associated with the service is specific to the service and to the node on which the service is implemented.

6. The method according to claim 1 , wherein the response further includes a redirect or a link to the location of the other node of the distributed service system that is data sovereign for the region and that implements the corresponding service of the distributed service system.

7. The method according to claim 1 , wherein the response further includes text indicating that the request has been rejected.

8. A system, comprising:

a processor;

a non-transitory computer-readable medium; and

instructions stored on the non-transitory computer-readable medium and translatable by the processor for performing, at a node of a distributed service system:

receiving a request for a service from a user of an enterprise, the service provided by the distributed service system and implemented on the node, the request received through an interface of the service;

determining whether the user is subject to data sovereignty enforcement;

responsive to the user being subject to the data sovereignty enforcement, identifying a region associated with the user;

determining, based on the region thus identified, whether the node on which the service is implemented is data sovereign for the region;

responsive to the node on which the service is implemented not being data sovereign for the region, determining a response based on a response configuration, wherein the response includes a location of an other node of the distributed service system that is data sovereign for the region and that implements a corresponding service of the distributed service system; and

communicating the response to the user.

9. The system of claim 8 , wherein the node comprises a data sovereignty configuration that indicates identifiers for regions for which the node is not data sovereign, wherein determining whether the node on which the service is implemented is data sovereign for the region comprises comparing a region identifier for the region associated with the user with the identifiers indicated by the data sovereignty configuration, and wherein if the region identifier for the region associated with the user matches one of the identifiers for the regions for which the node is not data sovereign, the node is not considered data sovereign for the region associated with the user.

10. The system of claim 8 , wherein if a match is not found between the region identifier for the region associated with the user and the identifiers for the regions for which the node is not data sovereign, the node is considered data sovereign for the region associated with the user.

11. The system of claim 8 , wherein the response configuration is associated with the service, the node, or the region.

12. The system of claim 8 , wherein the response configuration associated with the service is specific to the service and to the node on which the service is implemented.

13. The system of claim 8 , wherein the response further includes a redirect or a link to the location of the other node of the distributed service system that is data sovereign for the region and that implements the corresponding service of the distributed service system.

14. The system of claim 8 , wherein the response further includes text indicating that the request has been rejected.

15. A computer program product comprising a non-transitory computer-readable medium storing instructions translatable by a processor for performing, at a node of a distributed service system:

receiving a request for a service from a user of an enterprise, the service provided by the distributed service system and implemented on the node, the request received through an interface of the service;

determining whether the user is subject to data sovereignty enforcement;

responsive to the user being subject to the data sovereignty enforcement, identifying a region associated with the user;

determining, based on the region thus identified, whether the node on which the service is implemented is data sovereign for the region;

responsive to the node on which the service is implemented not being data sovereign for the region, determining a response based on a response configuration, wherein the response includes a location of an other node of the distributed service system that is data sovereign for the region and that implements a corresponding service of the distributed service system; and

communicating the response to the user.

16. The computer program product of claim 15 , wherein the node comprises a data sovereignty configuration that indicates identifiers for regions for which the node is not data sovereign, wherein determining whether the node on which the service is implemented is data sovereign for the region comprises comparing a region identifier for the region associated with the user with the identifiers indicated by the data sovereignty configuration, and wherein if the region identifier for the region associated with the user matches one of the identifiers for the regions for which the node is not data sovereign, the node is not considered data sovereign for the region associated with the user.

17. The computer program product of claim 15 , wherein if a match is not found between the region identifier for the region associated with the user and the identifiers for the regions for which the node is not data sovereign, the node is considered data sovereign for the region associated with the user.

18. The computer program product of claim 15 , wherein the response configuration is associated with the service, the node, or the region.

19. The computer program product of claim 15 , wherein the response configuration associated with the service is specific to the service and to the node on which the service is implemented.

20. The computer program product of claim 15 , wherein the response further includes a redirect or a link to the location of the other node of the distributed service system that is data sovereign for the region and that implements the corresponding service of the distributed service system.

Assignments (3)
MERGER Recorded May 18, 2026
From: OPEN TEXT HOLDINGS, INC.
To: OPEN TEXT INC.
Reel/Frame 074679/0083 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 9, 2022
From: SHRIVER, RICHARD D.; PIELUC, EDWARD T., JR.; MCDONALD, DANIEL J.; APPLING, HUGH BEVERLY; HAMMAKER, DAVID ALAN; SUN, ZHENG
To: XPEDITE SYSTEMS, LLC
Reel/Frame 060760/0956 →
MERGER Recorded Aug 9, 2022
From: XPEDITE SYSTEMS, LLC
To: OPEN TEXT HOLDINGS, INC.
Reel/Frame 060760/0991 →
Continuity (4)
Continuation 16997568 · Aug 19, 2020
Continuation 15956045 · Apr 18, 2018
Provisional Application 62486757 · Apr 18, 2017
Related Publication 20220327229A1 · Oct 13, 2022