Computer relational database method and system having role based access control
First Claim
Patent Images
1. A method of controlling access to secured data, comprising:
- operatively coupling a repository to one or more databases storing secure data;
storing, in a metamodel of the one or more databases, security information that qualifies which data objects are accessible by certain roles;
employing the repository;
intercepting a user query of one database of the one or more databases;
automatically determining from the intercepted query, a user who generated the user query and a user role assigned to the user;
parsing the intercepted query and identifying objects in the one database that are to be accessed as part of the user query;
looking up security information of the identified objects in the metamodel and determine which identified objects to filter out of the user query;
based on the determined user role and the identified objects to be filtered out of the user query, automatically building an expression tree to filter out secure data for which the user does not have access rights and modifying the user query by appending the expression tree to the user query to filter out secure data for which the user does not have access rights; and
applying the modified query to the one database;
using the repository to secure the security information in a database model; and
enabling the security information to be dynamically adjustable at runtime.
5 Assignments
0 Petitions
Accused Products
Abstract
A computer method, system and apparatus control access to secured data in a plurality of databases. A repository is coupled to the databases and has a security runtime subsystem. The repository intercepts a user query of a subject database in the plurality. The security runtime subsystem determines from the intercepted query a user and corresponding user role. Based on user role, the security runtime subsystem automatically modifies the user query to filter out secure data for which the identified user is unauthorized to access but are part of the user query.
42 Citations
16 Claims
-
1. A method of controlling access to secured data, comprising:
-
operatively coupling a repository to one or more databases storing secure data; storing, in a metamodel of the one or more databases, security information that qualifies which data objects are accessible by certain roles; employing the repository; intercepting a user query of one database of the one or more databases; automatically determining from the intercepted query, a user who generated the user query and a user role assigned to the user; parsing the intercepted query and identifying objects in the one database that are to be accessed as part of the user query; looking up security information of the identified objects in the metamodel and determine which identified objects to filter out of the user query; based on the determined user role and the identified objects to be filtered out of the user query, automatically building an expression tree to filter out secure data for which the user does not have access rights and modifying the user query by appending the expression tree to the user query to filter out secure data for which the user does not have access rights; and applying the modified query to the one database; using the repository to secure the security information in a database model; and enabling the security information to be dynamically adjustable at runtime. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer system of controlling access to secured data, comprising:
-
a repository operatively coupled to one or more databases storing secure data, the repository configured to intercept a user query of one database of the one or more databases; a metamodel of the one database, the metamodel being configured to store security information that qualifies which data entities are accessible by certain user roles; and a security runtime subsystem of the repository configures to automatically determine from the intercepted query a user who generated the user query and a user role assigned to the user; parse the intercepted query and identifying entities in the one database that are to be accessed as part of the user query; look up security information of the identified entities in the metamodel to determine which identified entities to filter out of the user query; based on the determined user role and identified entities to be filtered out in the user query, automatically building an expression tree to filter out secure data for which the user does not have access rights and modifying the user query by appending the expression tree to the user query to filter out secure data for which the user is ineligible to access; the repository applying the modified query to the one database and retrieving qualifying data as authorized by the user role; wherein the repository is configured to secure the security information in a database model, and to enable the security information in the database model to be dynamically adjustable at runtime. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory computer readable storage medium having a computer readable program embodied therein that when executed causes a computing system to perform a method of controlling access to secured data, wherein the method comprises:
-
operatively coupling a repository to a plurality of databases storing secure data; storing, in a metamodel of the plurality of databases, security information that qualifies which data objects are accessible by certain roles; employing the repository; intercepting a user query of one database of the plurality of databases; automatically determining from the intercepted query, a user who generated the user query and a user role assigned to the user; parsing the intercepted query and identifying objects in the one database that are to be accessed as part of the user query; looking up security information of the identified objects in the metamodel and determine which identified objects to filter out of the user query; based on the determined user role and the identified objects to be filtered out of the user query, automatically building an expression tree to filter out secure data for which the user does not have access rights and modifying the user query by appending the expression tree to the user query to filter out secure data for which the user does not have access rights; and applying the modified query to the one database; using the repository to secure the security information in a database model; and enabling the security information to be dynamically adjustable at runtime. - View Dependent Claims (16)
-
Specification