IP Library › Granted Patent US 10,360,248
Granted Patent B1
US 10,360,248 · App. 15/198,897 · Granted Jul 23, 2019

Method and system for processing search queries using permission definition tokens

Inventors: Lei Zhang (Shanghai, CN); Chao Chen (Shanghai, CN); Jingjing Liu (Shanghai, CN); Kunwu Huang (Shanghai, CN); Hongtao Dai (Shanghai, CN); Ying Teng (Pleasanton, CA)
Assignee: EMC IP Holding Company LLC
G06F16/3332G06F16/31G06F21/6209H04L63/083
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 10,360,248
App. No.
15/198,897
Filed
Jun 30, 2016
Granted
Jul 23, 2019
Kind
B1
Art Unit
2157
USPC
707/783
Abstract

In general, in one aspect, the invention relates to a method for servicing requests, the method includes receiving, from a client system, a first request comprising a query, determining a first user associated with the first request, modifying the query to obtain a first modified query, where the first modified query includes a first permission definition token associated with the first user, processing the modified query to obtain a first object from a content repository, and providing the first object to the client system.

Claims (75)

1. A method for servicing requests, the method comprising:

receiving a permission definition;

generating at least a first permission token definition using the permission definition;

updating a full text index with at least the first permission token definition to obtain an updated full text index;

generating a permission definition fingerprint using at least the first permission token definition;

storing the permission definition fingerprint and a permission definition ID associated with the permission definition in permission metadata associated with a first object;

receiving, from a client system, a first request comprising a query;

determining a first user associated with the first request;

modifying the query to obtain a first modified query, wherein the first modified query comprises the first permission definition token associated with the first user;

processing the modified query to obtain a first object from a content repository, wherein processing the first modified query to obtain the first object comprises using the updated full text index and wherein the updated full text index includes the permission metadata associated with the object; and

providing the first object to the client system.

2. The method of claim 1 , further comprising:

receiving, from a second client system, a second request comprising the query;

determining a second user associated with the second request;

modifying the query to obtain a second modified query, wherein the second modified query comprises a second permission definition token associated with the second user;

processing the second modified query to obtain a second object; and

providing the second object to the second client system.

3. The method of claim 1 , further comprising:

after to receiving the first request:

modifying the permission definition to obtain a modified permission definition;

generating at least a second permission token definition using the modified permission definition;

generating a second permission definition fingerprint using at least the second permission token definition; and

storing the second permission definition fingerprint in the permission metadata associated with the object.

4. The method of claim 1 , wherein modifying the query to obtain the first modified query comprises:

generating a hash value using a user ID associated with the first user;

performing a look-up in a hash map using the hash value to obtain an entry, wherein the entry comprises the first permission token definition associated with the first user.

5. The method of claim 4 , wherein the entry comprises a second permission token definition associated with the first user.

6. The method of claim 1 , wherein the first permission token definition associated with the first user is a string and wherein the string comprises at least one selected from a group consisting of a number and a letter.

7. A non-transitory computer readable medium comprising computer readable program code, which when executed by a computer processor enables the computer processor to perform a method for servicing requests, the method comprising:

receiving a permission definition;

generating at least the first permission token definition using the permission definition;

updating a full text index with at least the first permission token definition to obtain an updated full text index;

generating a permission definition fingerprint using at least the first permission token definition;

storing the permission definition fingerprint and a permission definition ID associated with the permission definition in permission metadata associated with a first object;

receiving, from a client system, a first request comprising a query;

determining a first user associated with the first request;

modifying the query to obtain a first modified query, wherein the first modified query comprises a first permission definition token associated with the first user;

processing the modified query to obtain the first object from a content repository, wherein processing the first modified query to obtain the first object comprises using the updated full text index; and

providing the first object to the client system.

8. The non-transitory computer readable medium of claim 7 , the method further comprising:

receiving, from a second client system, a second request comprising the query;

determining a second user associated with the second request;

modifying the query to obtain a second modified query, wherein the second modified query comprises a second permission definition token associated with the second user;

processing the second modified query to obtain a second object; and

providing the second object to the second client system.

9. The non-transitory computer readable medium of claim 7 , the method further comprising:

after to receiving the first request:

modifying the permission definition to obtain a modified permission definition;

generating at least a second permission token definition using the modified permission definition;

generating a second permission definition fingerprint using at least the second permission token definition; and

storing the second permission definition fingerprint in the permission metadata associated with the object.

10. The non-transitory computer readable medium of claim 7 , wherein modifying the query to obtain the first modified query comprises:

generating a hash value using a user ID associated with the first user;

performing a look-up in a hash map using the hash value to obtain an entry, wherein the entry comprises the first permission token definition associated with the first user.

11. The non-transitory computer readable medium of claim 10 , wherein the entry comprises a second permission token definition associated with the first user.

12. The non-transitory computer readable medium of claim 7 , wherein the first permission token definition associated with the first user is a string and wherein the string comprises at least one selected from a group consisting of a number and a letter.

13. A system, comprising:

a content repository storing objects;

a content management system coupled to the content repository and programmed to:

receiving a permission definition;

generating at least the first permission token definition using the permission definition;

updating a full text index with at least the first permission token definition to obtain an updated full text index,

generating a permission definition fingerprint using at least the first permission token definition;

storing the permission definition fingerprint and a permission definition ID associated with the permission definition in permission metadata associated with a first object:

receive, from a client system, a first request comprising a query;

determine a first user associated with the first request;

modify the query to obtain a first modified query, wherein the first modified query comprises a first permission definition token associated with the first user;

process the modified query to obtain the first object from a content repository, wherein processing the first modified query to obtain the first object comprises using the updated full text index; and

provide the first object to the client system.

14. The system of claim 13 , wherein content management system is further programmed to:

receive, from a second client system, a second request comprising the query;

determine a second user associated with the second request;

modify the query to obtain a second modified query, wherein the second modified query comprises a second permission definition token associated with the second user;

process the second modified query to obtain a second object; and

provide the second object to the second client system.

Assignments (7)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST AT REEL 051449 FRAME 0728 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.; SECUREWORKS CORP.; EMC CORPORATION
Reel/Frame 058002/0010 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Dec 31, 2019
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.; SECUREWORKS CORP.; EMC CORPORATION
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 051449/0728 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 16, 2018
From: ZHANG, LEI; CHEN, CHAO; LIU, JINGJING; HUANG, KUNWU; DAI, HONGTAO; TENG, YING
To: EMC CORPORATION
Reel/Frame 045819/0458 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 16, 2018
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 046167/0272 →