IP Library Granted Patent US 9,003,490
Granted Patent B2
US 9,003,490 · App. 13/049,532 · Granted Apr 7, 2015

Using entitlement certificates to manage product assets

Inventors: Michael Orazi (Cary, NC); Dennis George Gregorovic (Wakefield, MA)
Assignee: Red Hat, Inc.
G06F21/10G06F8/60
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 9,003,490
App. No.
13/049,532
Granted
Apr 7, 2015
Kind
B2
Abstract

A server receives a consumer request from a client to access a product repository that is coupled to the server. The consumer request comprises an entitlement certificate and a uniform resource locator (URL). The server identifies at least one extended attribute object identifier in the entitlement certificate to determine whether the client is authorized to access the product repository. The at least one extended attribute object identifier has a corresponding URL in the entitlement certificate that specifies a location of the product repository that the client is authorized to access. The server grants the client access to the product repository based on a determination that the URL in the consumer request matches a URL in the entitlement certificate.

Claims (72)

1. A method comprising:

receiving, by a processing device, a request from a client to access a product repository, the request comprising:

an entitlement certificate comprising an attribute object identifier, and

a uniform resource locator (URL) identifying a location in the product repository that the client is authorized to access;

mapping the attribute object identifier with the URL;

determining, by the processing device, whether the URL in the request partially matches a URL comprising a wildcard variable in the entitlement certificate in view of the mapping of the attribute object identifier with the URL and in view of a matching rule that uses the wildcard variable;

determining that the entitlement certificate is not revoked;

granting the client access to the product repository in response to a determination that the URL in the request partially matches a URL in the entitlement certificate and in response to the determining that the entitlement certificate is not revoked; and

sending a message to the client indicating that the URL in the request does not partially match the URL in the entitlement certificate in response to the determination that the URL in the request does not partially match the URL in the entitlement certificate.

2. The method of claim 1 , wherein granting the client access to the product repository comprises:

determining that the entitlement certificate comprises a valid signature.

3. The method of claim 1 , wherein the at least one extended attribute object identifier comprises a value using a hierarchical numbering scheme.

4. The method of claim 1 , further comprising:

sending a message to the client indicating the request is not granted in view of the determination that the URL in the request does not match the URL in the entitlement certificate.

5. The method of claim 1 , wherein the product repository stores at least one of product installation software, product update software, or product documentation.

6. The method of claim 1 , further comprising:

receiving the request from the client for an entitlement for a product;

determining that the client is authorized to receive the entitlement certificate in view of product business model data;

generating the entitlement certificate representing the entitlement to allow the client access to at least one product repository in view of configuration data; and

sending the entitlement certificate representing the entitlement to the client.

7. The method of claim 6 , wherein generating the entitlement certificate comprises:

storing the configuration data to generate the entitlement certificate, the configuration data comprising the URL of the product repository; and

generating the entitlement certificate using the URL in the configuration data.

8. A system comprising:

a memory to store one or more product repositories; and

a processing device coupled to the memory to:

receive a request from a client computing system to access one of the product repositories, the request comprising:

an entitlement certificate comprising an attribute object identifier, and

a uniform resource locator (URL) identifying a location in the one product repository that the client is authorized to access,

map the attribute object attribute identifier with the URL,

determine whether the URL in the request partially matches a URL comprising a wildcard variable in the entitlement certificate in view of the map of the attribute object attribute identifier with the URL and in view of a matching rule that uses the wildcard variable,

determine that the entitlement certificate is not revoked,

grant the client computing system access to the one product repository in response to a determination that the URL in the request partially matches a URL in the entitlement certificate and in response to the determine that the entitlement certificate is not revoked, and

send a message to the client computing system indicating that the URL in the request does not partially match the URL in the entitlement certificate in response to the determination that the URL in the request does not partially match the URL in the entitlement certificate.

9. The system of claim 8 , wherein to grant the client access comprises the processing device to:

determine that the entitlement certificate comprises a valid signature.

10. The system of claim 8 , wherein the at least one extended attribute object identifier comprises a value using a hierarchical numbering scheme.

11. The system of claim 8 , wherein the processing device is further to:

send a message to the client computing system indicating the request is not granted in view of the determination that the URL in the request does not match the URL in the entitlement certificate.

12. The system of claim 8 , wherein the processing device is further to:

receive the request from the client computing system for an entitlement for a product,

determine that the client computing system is authorized to receive the entitlement certificate in view of product business model data,

generate the entitlement certificate representing the entitlement to allow the client access to the one product repository in view of configuration data, and

send the entitlement certificate representing the entitlement to the client.

13. The system of claim 8 , further comprising:

a persistent storage device to store the entitlement certificate representing an entitlement to allow the client computing system access to the one product repository; and

the client computing system coupled to the persistent storage device to:

receive the entitlement certificate from the processing device via a network, and

send the request to access the one product repository to the processing device via the network.

14. A non-transitory computer-readable storage medium including instructions that, when executed by a processing device, cause the processing device to perform operations comprising:

receiving, by the processing device, a request from a client to access a product repository that is coupled to the processing device, the request comprising:

an entitlement certificate comprising an attribute object identifier, and

a uniform resource locator (URL) identifying a location in the product repository that the client is authorized to access;

mapping the attribute object identifier with the URL;

determining, by the processing device, whether the URL in the request partially matches a URL comprising a wildcard variable in the entitlement certificate in view of the mapping of the attribute object attribute identifier with the URL and in view of a matching rule that uses the wildcard variable;

determining that the entitlement certificate is not revoked;

granting, by the processing device, the client access to the product repository in response to a determination that the URL in the request partially matches a URL in the entitlement certificate and in response to the determining that the entitlement certificate is not revoked; and

sending a message to the client indicating that the URL in the request does not partially match the URL in the entitlement certificate in response to the determination that the URL in the request does not partially match the URL in the entitlement certificate.

15. The non-transitory computer-readable storage medium of claim 14 , wherein granting the client access to the product repository comprises:

determining that the entitlement certificate comprises a valid signature.

16. The non-transitory computer-readable storage medium of claim 14 , wherein the at least one extended attribute object identifier comprises a value using a hierarchical numbering scheme.

17. The non-transitory computer-readable storage medium of claim 14 , the operations further comprising:

sending a message to the client indicating the request is not granted in view of the determination that the URL in the request does not match the URL in the entitlement certificate.

18. The non-transitory computer-readable storage medium of claim 14 , wherein the product repository to store at least one of product installation software, product update software, or product documentation.

19. The non-transitory computer-readable storage medium of claim 14 , the operations further comprising:

receiving the request from the client for an entitlement for a product;

determining that the client is authorized to receive the entitlement certificate in view of product business model data;

generating the entitlement certificate representing the entitlement to allow the client access to the product repository; and

sending the entitlement certificate representing the entitlement to the client.

20. The non-transitory computer-readable storage medium of claim 19 , wherein generating the entitlement certificate comprises:

storing configuration data to generate the entitlement certificate, the configuration data comprising the URL of the product repository; and

generating the entitlement certificate using the URL in the configuration data.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 16, 2011
From: ORAZI, MICHAEL; GREGOROVIC, DENNIS GEORGE
To: RED HAT, INC.
Reel/Frame 025969/0173 →
Continuity (1)
Related Publication 20120240192A1 · Sep 20, 2012