IP Library Granted Patent US 11,977,656
Granted Patent B2
US 11,977,656 · App. 17/151,424 · Granted May 7, 2024

Multi-tenant data protection using tenant-based token validation and data encryption

Inventors: Tomer Shachar (Omer, IL); Maxim Balin (Gan Yavne, IL); Yevgeni Gehtman (Modi'in, IL)
Assignee: EMC IP Holding Company LLC
G06F21/6227G06F16/248G06F21/31G06F21/602G06F21/107
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,977,656
App. No.
17/151,424
Granted
May 7, 2024
Kind
B2
Abstract

Techniques are provided for multi-tenant data protection using tenant-based token validation and data encryption. One method comprises obtaining, from a user, a data record to be stored in a multi-tenant storage environment and a token associated with the user. Each data record identifies a tenant associated with the respective data record and the user is authorized to access tenant data of at least one tenant identified in the token. An encryption key of the tenant associated with the data record is obtained and the data record is encrypted using the obtained encryption key and stored. A given data record may be read by obtaining a decryption key of the tenant associated with the given data record and decrypting the given data record using the decryption key. The token may be used to evaluate whether the user is authorized to access the tenant data of the tenant associated with the given data record.

Claims (44)

1. A method, comprising:

obtaining, from a user, (i) at least one data record to be stored in a multi-tenant storage environment, and (ii) a token associated with the user, wherein each data record identifies a tenant associated with the respective data record and wherein the user is authorized to access tenant data of at least one tenant identified in the token;

performing the following steps, by at least one processing device of the multi-tenant storage environment, in response to determining that the tenant associated with the respective data record is identified in the token associated with the user:

obtaining an encryption key of the tenant associated with the at least one data record;

encrypting, by the at least one processing device of the multi-tenant storage environment, the at least one data record using the obtained encryption key; and

storing the encrypted at least one data record in the multi-tenant storage environment;

wherein the method is performed by the at least one processing device, wherein the at least one processing device comprises a processor coupled to a memory.

2. The method of claim 1 , further comprising evaluating, using the token, whether the user is authorized to access the tenant data of the tenant associated with the at least one data record.

3. The method of claim 1 , wherein, in response to a request by a second user to access one or more stored data records from the multi-tenant storage environment, wherein the second user provides an access token with the request, a given data record is read by the at least one processing device of the multi-tenant storage environment by performing the following steps in response to the multi-tenant storage environment determining that the tenant associated with the given data record is identified in the access token provided by the second user:

obtaining a decryption key of the tenant associated with the given data record; and

decrypting the given data record using the decryption key.

4. The method of claim 3 , further comprising evaluating, using the access token, whether the second user is authorized to access the tenant data of the tenant associated with the given data record.

5. The method of claim 3 , further comprising appending the decrypted given data record to a return object.

6. The method of claim 1 , wherein the at least one data record comprises one or more of a document and a row of a structured query result.

7. The method of claim 1 , wherein the at least one tenant comprises one or more of a business entity, an organization and a user group.

8. An apparatus comprising:

at least one processing device comprising a processor coupled to a memory;

the at least one processing device being configured to implement the following steps:

obtaining, from a user, (i) at least one data record to be stored in a multi-tenant storage environment, and (ii) a token associated with the user, wherein each data record identifies a tenant associated with the respective data record and wherein the user is authorized to access tenant data of at least one tenant identified in the token;

performing the following steps, by at least one processing device of the multi-tenant storage environment, in response to determining that the tenant associated with the respective data record is identified in the token associated with the user;

obtaining an encryption key of the tenant associated with the at least one data record;

encrypting, by the at least one processing device of the multi-tenant storage environment, the at least one data record using the obtained encryption key; and

storing the encrypted at least one data record in the multi-tenant storage environment.

9. The apparatus of claim 8 , further comprising evaluating, using the token, whether the user is authorized to access the tenant data of the tenant associated with the at least one data record.

10. The apparatus of claim 8 , wherein, in response to a request by a second user to access one or more stored data records from the multi-tenant storage environment, wherein the second user provides an access token with the request, a given data record is read by the at least one processing device of the multi-tenant storage environment by performing the following steps in response to the multi-tenant storage environment determining that the tenant associated with the given data record is identified in the access token provided by the second user:

obtaining a decryption key of the tenant associated with the given data record; and

decrypting the given data record using the decryption key.

11. The apparatus of claim 10 , further comprising evaluating, using the access token, whether the second user is authorized to access the tenant data of the tenant associated with the given data record.

12. The apparatus of claim 10 , further comprising appending the decrypted given data record to a return object.

13. The apparatus of claim 8 , wherein the at least one data record comprises one or more of a document and a row of a structured query result.

14. The apparatus of claim 8 , wherein the at least one tenant comprises one or more of a business entity, an organization and a user group.

15. A non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes the at least one processing device to perform the following steps:

obtaining, from a user, (i) at least one data record to be stored in a multi-tenant storage environment, and (ii) a token associated with the user, wherein each data record identifies a tenant associated with the respective data record and wherein the user is authorized to access tenant data of at least one tenant identified in the token;

performing the following steps, by at least one processing device of the multi-tenant storage environment, in response to determining that the tenant associated with the respective data record is identified in the token associated with the user;

obtaining an encryption key of the tenant associated with the at least one data record;

encrypting, by the at least one processing device of the multi-tenant storage environment, the at least one data record using the obtained encryption key; and

storing the encrypted at least one data record in the multi-tenant storage environment.

16. The non-transitory processor-readable storage medium of claim 15 , further comprising evaluating, using the token, whether the user is authorized to access tenant data of the tenant associated with the at least one data record.

17. The non-transitory processor-readable storage medium of claim 15 , wherein, in response to a request by a second user to access one or more stored data records from the multi-tenant storage environment, wherein the second user provides an access token with the request, a given data record is read by the at least one processing device of the multi-tenant storage environment by performing the following steps in response to the multi-tenant storage environment determining that the tenant associated with the given data record is identified in the access token provided by the second user:

obtaining a decryption key of the tenant associated with the given data record; and

decrypting the given data record using the decryption key.

18. The non-transitory processor-readable storage medium of claim 17 , further comprising evaluating, using the access token, whether the second user is authorized to access the tenant data of the tenant associated with the given data record.

19. The non-transitory processor-readable storage medium of claim 17 , further comprising appending the decrypted given data record to a return object.

20. The non-transitory processor-readable storage medium of claim 15 , wherein the at least one data record comprises one or more of a document and a row of a structured query result.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (055479/0342) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0460 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (055479/0051) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0663 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056136/0752) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0771 →
RELEASE OF SECURITY INTEREST AT REEL 055408 FRAME 0697 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0553 →
SECURITY INTEREST Recorded Mar 3, 2021
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 056136/0752 →
SECURITY INTEREST Recorded Mar 3, 2021
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 055479/0051 →
SECURITY INTEREST Recorded Mar 3, 2021
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 055479/0342 →
SECURITY AGREEMENT Recorded Feb 25, 2021
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 055408/0697 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 18, 2021
From: SHACHAR, TOMER; BALIN, MAXIM; GEHTMAN, YEVGENI
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 054945/0665 →
Continuity (1)
Related Publication 20220229928A1 · Jul 21, 2022