IP Library Granted Patent US 9,361,467
Granted Patent B2
US 9,361,467 · App. 13/408,267 · Granted Jun 7, 2016

Owner-controlled access control to released data

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,361,467
App. No.
13/408,267
Granted
Jun 7, 2016
Kind
B2
Abstract

Implementations of the present disclosure include methods, systems, and computer-readable storage mediums for receiving, from a computing device used by an authenticated user, a validation request, the validation request including a first hash value and a first validation token, the first hash value being generated based on restricted content of a workflow object and the first validation token being associated with a first state of the workflow object, and determining that the authenticated user is authorized to request validation of the workflow object and, in response: decrypting the validation token to provide a second hash value, and determining that the second hash value is equal to both the first hash value and a third hash value and, in response, transmitting a validation response to the computing device, the validation response indicating that the workflow object is valid.

Claims (46)

1. A computer-implemented method for controlling access to a workflow object, the method being executed using one or more processors and comprising:

receiving, from a computing device used by an authenticated user, a validation request, the validation request comprising a first hash value and a first validation token, the first hash value being generated based on restricted content of a workflow object comprising a document assigned to a pre-defined workflow spanning through a plurality of domains, and the first validation token indicating a validity of the workflow object and being associated with a first state of a plurality of states of the workflow object, the plurality of the states denoting an evolution of the workflow object; and

determining that the authenticated user is authorized to request validation of the workflow object and, in response:

decrypting the validation token to provide a second hash value; and

determining that the second hash value is equal to both the first hash value and a third hash value and, in response, transmitting a validation response to the computing device, the validation response indicating that the workflow object is valid.

2. The method of claim 1 , wherein determining that the authenticated user is authorized to request validation of the workflow object comprises checking a validation policy.

3. The method of claim 1 , wherein decrypting the validation token to provide the second hash value is achieved using a master key associated with the workflow object.

4. The method of claim 1 , wherein a validation agent that is executed using the one or more processors receives the validation request and determines that the authenticated user is authorized to request validation of the workflow object.

5. The method of claim 1 , wherein the validation agent transmits the validation response to a trusted agent that is executed on the computing device.

6. The method of claim 1 , further comprising:

receiving an access key request from the computing device; and

determining, based on one or more access control policies (ACPs) and information provided in the access key request, that the authenticated user is authorized to access one or more data items of the restricted content and, in response:

identifying a set of permitted operations comprising one or more operations that the authenticated user is permitted to perform on the one or more data items;

retrieving, from computer-readable memory, one or more access keys that are usable to access the one or more data items; and

transmitting an access key response to the computing device, the access key response comprising the set of permitted operations and the one or more access keys.

7. The method of claim 6 , wherein the information provided in the access key request comprises one or more data item identifiers, each data item identifier corresponding to a data item of the one or more data items.

8. The method of claim 7 , wherein identifying a set of permitted operations comprises identifying a permitted operation from the one or more ACPs based on a data item identifier and adding the permitted operation to the set of permitted operations.

9. The method of claim 8 , wherein identifying the permitted operation is further based on an identity of the authenticated user.

10. The method of claim 6 , wherein an access control agent that is executed using the one or more processors receives the access request and determines that the authenticated user is authorized to access the one or more data items.

11. The method of claim 10 , wherein the access control agent transmits the access key response to a trusted agent that is executed on the computing device.

12. The method of claim 1 , further comprising:

receiving a validation token request, the validation token request comprising a third hash value, the third hash value being generated based on the restricted content;

recording the third hash value in a state change log, the third hash value corresponding to a second state of the workflow object, the state change log being stored in computer-readable memory;

generating, using the one or more processors, a second validation token based on the third hash value; and

transmitting a validation token response to the computing device used by the authenticated user, the validation token response comprising the second validation token.

13. The method of claim 12 , wherein the second validation token is generated based on the third hash value and a master key associated with the workflow object.

14. The method of claim 12 , wherein the third hash value is generated based on the restricted content associated with the workflow object.

15. The method of claim 12 , wherein the computing device replaces the first validation token with the second validation token.

16. The method of claim 12 , wherein, prior to transmitting the validation token request, the computing device:

determines that changes to a working copy of the workflow object conform to one or more permitted operations;

commits the changes to a persistent copy of the workflow object;

calculates the third hash value; and

generates the validation token request.

17. The method of claim 16 , wherein a trusted agent that is executed on the computing device determines that the changes conform to the one or more permitted operations, commits the changes, calculates the third hash value, and generates the validation token request.

18. A non-transitory computer-readable storage medium coupled to one or more processors and having instructions stored thereon which, when executed by the one or more processors, cause the one or more processors to perform operations for controlling access to a workflow object, the operations comprising:

receiving, from a computing device used by an authenticated user, a validation request, the validation request comprising a first hash value and a first validation token, the first hash value being generated based on restricted content of a workflow object comprising a document assigned to a pre-defined workflow spanning through a plurality of domains, and the first validation token indicating a validity of the workflow object and being associated with a first state of a plurality of states of the workflow object, the plurality of the states denoting an evolution of the workflow object; and

determining that the authenticated user is authorized to request validation of the workflow object and, in response:

decrypting the validation token to provide a second hash value; and

determining that the second hash value is equal to both the first hash value and a third hash value and, in response, transmitting a validation response to the computing device, the validation response indicating that the workflow object is valid.

19. A system, comprising:

a computing device; and

a non-transitory computer-readable storage device coupled to the computing device and having instructions stored thereon which, when executed by the computing device, cause the computing device to perform operations for controlling access to a workflow object, the operations comprising:

receiving, from a remote computing device used by an authenticated user, a validation request, the validation request comprising a first hash value and a first validation token, the first hash value being generated based on restricted content of a workflow object comprising a document assigned to a pre-defined workflow spanning through a plurality of domains, and the first validation token indicating a validity of the workflow object and being associated with a first state of a plurality of states of the workflow object, the plurality of the states denoting an evolution of the workflow object; and

determining that the authenticated user is authorized to request validation of the workflow object and, in response:

decrypting the validation token to provide a second hash value; and

determining that the second hash value is equal to both the first hash value and a third hash value and, in response, transmitting a validation response to the remote computing device, the validation response indicating that the workflow object is valid.

Assignments (2)
CHANGE OF NAME Recorded Aug 26, 2014
From: SAP AG
To: SAP SE
Reel/Frame 033625/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 19, 2012
From: BRACHER, SHANE; KRISHNAN, PADMANABHAN
To: SAP AG
Reel/Frame 027885/0752 →