IP Library Granted Patent US 11,468,193
Granted Patent B2
US 11,468,193 · App. 16/879,077 · Granted Oct 11, 2022

Data masking in a microservice architecture

Inventors: Kimberly R. Lu (Sunnyvale, CA); Joseph S. Brandt (Salt Lake City, UT); Philip N. Shilane (Newtown, PA)
Assignee: EMC IP HOLDING COMPANY LLC
G06F21/6254G06F11/1453G06F11/1469G06F16/215G06F2201/84
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,468,193
App. No.
16/879,077
Granted
Oct 11, 2022
Kind
B2
Abstract

A method includes receiving an object from a client as part of a data ingestion process, directing the object to an object access microservice, providing a copy of the object to a masker worker microservice, masking the copy of the object to create a masked object, and the masking of the copy of the object is performed inline prior to storage of the object, deduplicating the object, and storing the masked object and the object in storage.

Claims (38)

1. A method, comprising:

receiving an object from a client as part of a data ingestion process;

directing the object to an object access microservice;

providing a copy of the object to a masker worker microservice;

masking the copy of the object to create a masked object, wherein the masking of the copy of the object is performed inline prior to storage of the object;

deduplicating the object and the masked object; and

storing the masked object and the object in storage.

2. The method as recited in claim 1 , wherein the masking is performed at an object level.

3. The method as recited in claim 1 , wherein the object is directed to the object access microservice by a load balancer.

4. The method as recited in claim 1 , wherein a load balancer provides the copy of the object to the masker worker microservice.

5. The method as recited in claim 1 , wherein the masker worker microservice is provided by a masker worker that is a member of a scalable group of masker workers that are each capable of providing an instance of the masker worker microservice, and a load balancer apportions a masking workload among the masker workers in the group.

6. The method as recited in claim 1 , wherein at least part of the method is performed in a container orchestration system.

7. The method as recited in claim 1 , wherein the object access microservice creates the copy of the object.

8. The method as recited in claim 1 , wherein masking the copy of the object comprises masking one or more segments of the copy of the object to create masked segments, and the method further comprises:

creating respective fingerprints for each of the masked segments; and

creating copies of one or more unmasked segments of the object;

wherein deduplicating the object and the masked object comprises identifying any duplicate segments among the copies of one or more unmasked segments and omitting creation of fingerprints for any identified duplicate segments, and wherein storing the masked object and the object comprises storing any masked segments, and storing respective pointers to any duplicate segments.

9. The method as recited in claim 1 , further comprising receiving another object from the client, storing the another object in storage, and masking a copy of the another object after the another object has been stored.

10. The method as recited in claim 1 , further comprising calculating, and storing, a fingerprint of the masked object.

11. A non-transitory storage medium having stored therein instructions that are executable by one or more hardware processors to perform operations comprising:

receiving an object from a client as part of a data ingestion process;

directing the object to an object access microservice;

providing a copy of the object to a masker worker microservice;

masking the copy of the object to create a masked object, wherein the masking of the copy of the object is performed inline prior to storage of the object;

deduplicating the object and the masked object; and

storing the masked object and the object in storage.

12. The non-transitory storage medium as recited in claim 11 , wherein the masking is performed at an object level.

13. The non-transitory storage medium as recited in claim 11 , wherein the object is directed to the object access microservice by a load balancer.

14. The non-transitory storage medium as recited in claim 11 , wherein a load balancer provides the copy of the object to the masker worker microservice.

15. The non-transitory storage medium as recited in claim 11 , wherein the masker worker microservice is provided by a masker worker that is a member of a scalable group of masker workers that are each capable of providing an instance of the masker worker microservice, and a load balancer apportions a masking workload among the masker workers in the group.

16. The non-transitory storage medium as recited in claim 11 , wherein at least some of the operations are performed in a container orchestration system.

17. The non-transitory storage medium as recited in claim 11 , wherein the object access microservice creates the copy of the object.

18. The non-transitory storage medium as recited in claim 11 , wherein masking the copy of the object comprises masking one or more segments of the copy of the object to create masked segments, and the operations further comprising:

creating respective fingerprints for each of the masked segments; and

creating copies of one or more unmasked segments of the object;

wherein deduplicating the object and the masked object comprises identifying any duplicate segments among the copies of one or more unmasked segments and omitting creation of fingerprints for any identified duplicate segments, and wherein storing the masked object and the object comprises storing any masked segments, and storing respective pointers to any duplicate segments.

19. The non-transitory storage medium as recited in claim 11 , wherein the operations further comprise receiving another object from the client, storing the another object in storage, and masking a copy of the another object after the another object has been stored.

20. The non-transitory storage medium as recited in claim 11 , wherein the operations further comprise calculating, and storing, a fingerprint of the masked object.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053574/0221) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060333/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053578/0183) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060332/0864 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053573/0535) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060333/0106 →
RELEASE OF SECURITY INTEREST AT REEL 053531 FRAME 0108 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0371 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053578/0183 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053573/0535 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053574/0221 →
SECURITY AGREEMENT Recorded Aug 18, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 053531/0108 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 20, 2020
From: LU, KIMBERLY R.; BRANDT, JOSEPH S.; SHILANE, PHILIP N.
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 052713/0870 →
Cited By (1)
US 12,541,408