IP Library Granted Patent US 9,015,812
Granted Patent B2
US 9,015,812 · App. 13/899,874 · Granted Apr 21, 2015

Transparent control of access invoking real-time analysis of the query history

Inventors: Hasso Plattner (Schriesheim, DE); Matthieu-Patrick Schapranow (Berlin, DE)
Assignee: Hasso-Plattner-Institut fur Softwaresystemtechnik GmbH
H04L63/10G06F17/30386G06F21/6245G06Q10/0833H04L63/06H04L63/1441
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,015,812
App. No.
13/899,874
Granted
Apr 21, 2015
Kind
B2
Abstract

The invention relates to a method for granting an inquirer querying a repository access to the repository, a communication protocol between a client and a server, and a system for controlling access of at least one inquirer to a repository. The repository typically stores event data relating to traceable products. The aspects according to teaching disclosed herein may be for example implemented as security extensions for existing repositories providing a finer granularity of access rights and means to prevent an exposure of data sets considered sensitive. The security extensions disclosed herein may be implemented to protect access to any kind of client/server application wherein the server is exposing sensitive data.

Claims (56)

1. A method for granting access to a repository for use in a supply chain, a product tracking system, a medical care environment or a power grid, the repository storing data, the data being sensitive business data pertaining to one or more supply chains, event data pertaining to one or more traceable products, medical data pertaining to one or more patients, or measurement data pertaining to one or more measurements, and wherein an access control server (ACS) is connected to the repository via a link; the access control server (ACS) performing the steps of:

receiving ( 200 ) from an individual one of a plurality of inquirers a query regarding a set of data, including receiving ( 100 ) from an access control client (ACC) connected to the access control server (ACS) via a network the query submitted by the individual inquirer;

transmitting ( 500 ) an encrypted result set (Rsp R) to the individual inquirer, including:

generating ( 450 ) a key, the key being a symmetrical key (SymKey), the key being unknown to the access control client (ACC), and

encrypting ( 460 ) the result stet (Rsp R) using the symmetrical key (SymKey);

receiving ( 600 ) a request for permission to view the result set (Rsp R);

generating ( 700 ) a permission;

forwarding ( 715 ) the key (SymKey) and the permission to the access control client (ACC); and

filtering ( 800 ) the result set (Rsp R) according to the permission, the filtering step being performed by the access control client (ACC) and comprising removing and/or replacing selected content from the result set (Rsp R) while maintaining an integrity of the result set (Rsp R).

2. The method for granting access according to claim 1 , wherein the step of generating ( 700 ) the permission comprises adding the query to a database holding a history of queries submitted by the inquirers; and

a comparing step of comparing the database holding the history of queries to a set of rules defining content of the repository to be protected.

3. The method for granting access according to claim 2 , wherein the comparing step comprises comparing multiple queries submitted by the individual inquirer, the multiple queries being all queries submitted by the individual inquirer, to the set of rules defining content of the repository to be protected.

4. The method for granting access according to claim 2 , wherein the database holding the history of queries is implemented using an in-memory technology.

5. The method for granting access according to claim 1 , wherein the step of generating ( 700 ) the permission further comprises:

evaluating a set of roles the individual inquirer is assigned to, and/or

evaluating a set of rules the individual inquirer is assigned to.

6. The method for granting access according to claim 1 , further comprising:

requesting ( 300 ) a result set (Rsp R) from the repository; and

receiving ( 400 ) the result set (Rsp R) from the repository corresponding to the query.

7. A system for controlling access of one or more inquirers to a repository for use in a supply chain, a product tracking system, a medical care environment or a power grid, the repository storing data, the data being sensitive business data pertaining to one or more supply chains, event data pertaining to one or more traceable products, medical data pertaining to one or more patients, or measurement data pertaining to one or more measurements, the system comprising:

an access control server (ACS) connected to the repository via a link and adapted to receive from an access control client (ACC) a query submitted by an individual inquirer of a plurality of inquirers regarding a set of data,

the access control server (ACS) further adapted to request and receive a result set (Rsp R) from the repository corresponding to the query,

the access control server (ACS) is further adapted to transmit an encrypted result set (Rsp R) to the access control client (ACC),

wherein the access control server (ACS) is further adapted to generate a key, the key being a symmetrical key (SymKey), the key being unknown to the access control client (ACC), and

wherein the access control server (ACS) is further adapted to encrypt the result stet (Rsp R) using the symmetrical key (SymKey),

the access control server (ACS) is even further adapted to receive a request for permission to view the result set (Rsp R) from the access control client (ACC),

the access control server (ACS) is adapted to generate a permission in response to the request for permission,

the access control server (ACS) is adapted to forward the key (SymKey) and the permission to the access control client (ACC), and

the access control client (ACC) is adapted to filter the result set (Rsp R) according to the permission, the filtering comprising removing and/or replacing selected content from the result set (Rsp R) while maintaining an integrity of the result set (Rsp R).

8. The system according to claim 7 , wherein the access control server (ACS) is adapted to add the query to a database holding a history of queries submitted by the inquirers and further adapted to generate the permission based on a comparison of the history of queries to a set of rules defining content of the repository to be protected.

9. The system according to claim 7 , wherein the access control server (ACS) is adapted to generate the permission based on a comparison of multiple queries submitted by the individual inquirer, the multiple queries being all queries submitted by the individual inquirer, to the set of rules defining content of the repository to be protected.

10. The system according to claim 7 , wherein the access control server (ACS) is adapted to generate the permission based on a set of rules the individual inquirer is assigned to and/or

based on a set of roles the individual inquirer is assigned to.

11. The system according to claim 7 , wherein the access control client (ACC) is connectable to the access control server (ACS) via a network, and

the access control client (ACC) is adapted to forward queries from the individual inquirer to the access control server (ACS), and adapted to receive the encrypted result set (Rsp R) and the permission from the access control server (ACS).

12. The system according to claim 8 , wherein the database holding the history of queries is a database according to the in-memory technology.

13. A communication protocol between a client being an access control client (ACC) and a server being an access control server (ACS) connected via a link to a repository for use in a supply chain, a product tracking system, a medical care environment or a power grid; the repository storing data, the data being sensitive business data pertaining to one or more supply chains, event data pertaining to one or more traceable products, medical data pertaining to one or more patients, or measurement data pertaining to one or more measurements; the communication protocol comprising the steps of:

receiving ( 200 ) from an individual one of a plurality of inquirers a query regarding a set of data, including receiving ( 100 ) from the access control client (ACC) connected to the access control server (ACS) via a network the query submitted by the individual inquirer, wherein the access control client (ACC) and the access control server (ACS) each including a memory that stores a computer program that implements the communication protocol and a processor that executes the computer that implements the communication protocol;

transmitting ( 500 ) an encrypted result set (Rsp R) from the server to the client corresponding to the query, including:

generating ( 450 ) a key, the key being a symmetrical key (SymKey), the key being unknown to the access control client (ACC), and

encrypting ( 460 ) the result stet (Rsp R) using the symmetrical key (SymKey);

receiving ( 600 ) at the server a request for permission to view the result set (Rsp R) from the client,

generating ( 700 ) a permission,

forwarding ( 715 ) the key (SymKey) for decrypting the encrypted result set (Rsp R) and the permission to view the result set (Rsp R) from the server to the client, and

filtering ( 800 ) the result set (Rsp R) according to the permission, the filtering step being performed by the access control client (ACC) and comprising removing and/or replacing selected content from the result set (Rsp R) while maintaining an integrity of the result set (Rsp R).

14. The communication protocol according to claim 13 , further comprising steps of securing communication between the client and the server.

15. The communication protocol according to claim 13 , wherein the step of generating ( 700 ) the permission comprises adding the query to a database holding a history of queries submitted by the inquirers; and

a comparing step of comparing the database holding the history of queries to a set of rules defining content of the repository to be protected.

16. The communication protocol according to claim 15 , wherein the comparing step comprises comparing multiple queries submitted by the individual inquirer, the multiple queries being all queries submitted by the individual inquirer, to the set of rules defining content of the repository to be protected.

17. The communication protocol according to claim 15 , wherein the database holding the history of queries is implemented using an in-memory technology.

18. The communication protocol according to claim 13 , wherein the step of generating ( 700 ) the permission further comprises:

evaluating a set of roles the individual inquirer is assigned to, and/or

evaluating a set of rules the individual inquirer is assigned to.

19. The communication protocol according to claim 13 , further comprising:

requesting ( 300 ) a result set (Rsp R) from the repository; and

receiving ( 400 ) the result set (Rsp R) from the repository corresponding to the query.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 28, 2013
From: PLATTNER, HASSO, DR.; SCHAPRANOW, MATTHIEU-PATRICK
To: HASSO-PLATTNER-INSTITUT FUR SOFTWARESYSTEMTECHNIK GMBH
Reel/Frame 030709/0276 →
Continuity (2)
Provisional Application 61649946 · May 22, 2012
Related Publication 20140157370A1 · Jun 5, 2014