# US 2005/0131901 A1 · Managing electronic information

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2005/0131901 A1
- Document ID: US20050131901A1
- Status: Published application
- Kind: A1
- Application number: 10/736,001
- Filed: 2003-12-15
- Published: 2005-06-16
- Earliest claimed: 2003-12-15
- Assignees: Electronic Data System Corporation
- Inventors: John Richter
- Web page: https://patentgrep.com/patent/US20050131901A1

## CPC

- G06F 21/604: {Tools and structures for managing or administering access control systems}
- G06F 21/6218: {to a system of files or objects, e.g. local or distributed file system or database}
- G06F 21/6227: {where protection concerns the structure of data, e.g. records, types, queries}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Electronic information management includes techniques for developing and applying database security. In certain implementations, database access statements issued for applications in use are analyzed. Analyzing issued database access statements may include capturing the database access statements, normalizing the database access statements, and eliminating redundancies from the database access statements. A standardized set of issued database access statements may result from the analysis procedure. From the analyzed database access statements, the items accessed and types of access may be determined for an application, and a set of permissions may be determined from the determined items accessed and types of access for the application. A role associated with the application may be developed based on the permissions for the application. The role may be used to allow a user database access when associated with the application.

## Claims

### Claim 1

A method comprising:
analyzing database access statements issued for an application in use;
determining accessed items and types of access for the application based on the issued database access statements for the application; and
developing a role associated with the application based on the determined accessed items and types of access, wherein the role may be used to allow a user database access when associated with the application.

### Claim 2 (depends on 1)

The method of claim 1 wherein analyzing the issued database access statements comprises:
capturing the database access statements;
normalizing the database access statements; and
eliminating redundancies in the database access statements.

### Claim 3 (depends on 2)

The method of claim 2 wherein the database access statements comprise Structured Query Language (SQL) queries.

### Claim 4 (depends on 1)

The method of claim 1 wherein the determined accessed items and types of access include objects accessed and operations performed on the objects.

### Claim 5 (depends on 1)

The method of claim 1 wherein developing a role comprises determining permissions for the application based on the determined accessed items and types of access.

### Claim 6 (depends on 1)

The method of claim 1 further comprising determining which of a set of users are authorized to use the application.

### Claim 7 (depends on 1)

The method of claim 1 further comprising:
detecting a user request to establish an application session;
finding the role associated with the application; and
assigning the role to a user.

### Claim 8 (depends on 7)

The method of claim 7 wherein detecting a user request to establish an application session comprises determining if a user is authorized to use the application.

### Claim 9 (depends on 7)

The method of claim 7 further comprising:
detecting an end of the application session; and
if an end of the application session is detected, disabling the assigned role for the user.

### Claim 10

An article comprising a machine-readable medium storing instructions operable to cause one or more machines to perform operations comprising:
analyzing database access statements issued for an application in use;
determining accessed items and types of access for the application based on the issued database access statements for the application; and
developing a role associated with the application based on the determined accessed items and types of access, wherein the role may be used to allow a user database access when associated the application.

### Claim 11 (depends on 10)

The article of claim 10, wherein analyzing the issued database access statements comprises:
determining whether the database access statements have been captured;
normalizing the database access statements; and
eliminating redundancies in the database access statements.

### Claim 12 (depends on 10)

The article of claim 10 wherein the determined accessed items and types of access include objects accessed and operations performed on the objects.

### Claim 13 (depends on 10)

The article of claim 10 wherein developing a role comprises determining permissions for the application based on the determined accessed items and types of access.

### Claim 14 (depends on 10)

The article of claim 10 wherein the instructions are further operable to cause one or more machines to perform operations comprising determining which of a set of users are authorized to use the application.

### Claim 15 (depends on 10)

The article of claim 10 wherein the instructions are further operable to cause one or more machines to perform operations comprising:
determining whether a user request to establish an application session has been detected;
finding the role associated with the application; and
assigning the role to a user.

### Claim 16 (depends on 15)

The article of claim 15 wherein detecting a user request to establish an application session comprises determining if a user is authorized to use the application.

### Claim 17 (depends on 15)

The article of claim 15 wherein the instructions are further operable to cause one or more machines to perform operations comprising:
detecting an end of the application session; and
if an end of the application session is detected, disabling the assigned role for the user.

### Claim 18

A database security analyzer comprising:
a communication interface operable to receive database access statements issued for an application in use;
a memory operable to store the issued database access statements; and
a processor operable to develop a role associated with the application based on the issued database access statements for the application, wherein the role may be used to allow a user database access when using the application.

### Claim 19 (depends on 18)

The analyzer of claim 18 wherein developing a role comprises:
determining accessed items and types of access for an application based on the issued database access statements for the application;
determining permissions for the application based on the determined accessed items and types of access; and
developing a role associated with the application based on the determined permissions.

### Claim 20 (depends on 19)

The analyzer of claim 19 wherein the determined accessed items and types of access include objects accessed and operations performed on the objects.

### Claim 21 (depends on 18)

The analyzer of claim 18 wherein developing a role comprises:
determining whether issued database access statements have been captured;
normalizing the database access statements; and
eliminating redundancies in the database access statements.

### Claim 22 (depends on 18)

The analyzer of claim 18 wherein the memory comprises instructions, and the processor operates according to the instructions.

### Claim 23

A method comprising:
capturing the database access statements issued for one or more applications in use, wherein the database access statements comprise Structured Query Language (SQL) queries;
normalizing the issued database access statements;
eliminating redundancies in the normalized database access statements;
determining accessed items and types of access for an application based on the issued database access statements for the application, wherein the determined accessed items and types of access include objects accessed and operations performed on the objects;
determining permissions for the application based on the accessed items and types of access;
developing a role associated with the application based on the developed permissions;
determining which of a set of users are authorized to use the application;
detecting a user request to establish a session of the application;
determining if the user is authorized to use the application;
if the user is authorized to use the application, finding the role associated with the application;
assigning the role to the user;
detecting an end of the application session; and
if an end of the application session is detected, disabling the assigned role for the user.
