Repository-Based Security Manager for Database Access Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Relational database systems primarily provide security at the object/operation level, lacking effective control at the row and column levels, requiring user configuration within the database, physical access to security stores, and degrading performance due to authentication and role membership resolution.

Innovation Solution

A repository-based system that decouples object and row-level security by intercepting user queries, resolving group memberships, and modifying queries to filter out unauthorized data using SQL where clauses, allowing control at both row and column levels, and enabling dynamic security adjustments.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If database systems provide security at object/operation level using traditional methods, then security control is implemented, but performance degrades due to authentication and role membership resolution

Engineering Contradiction:
Improvesecurity controlVSAvoidperformance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the security control functionality from the database system core by implementing an external security manager that handles authentication and authorization independently. This allows the database to process queries without being burdened by security resolution overhead, thus maintaining performance while ensuring security control.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a security manager as an intermediary layer between users and the database system. This mediator handles all security-related operations including authentication, authorization, and role membership resolution, preventing these operations from directly impacting database performance while maintaining comprehensive security control.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If users are configured within the database system for security purposes, then access control is enabled, but device complexity increases

Engineering Contradiction:
Improveaccess controlVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts user and role configuration from the database system by implementing external security stores and a separate security manager. This separation reduces the complexity within the database system while maintaining comprehensive access control capabilities through externalized security management.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The security manager acts as an intermediary that manages user configurations, roles, and permissions externally. This mediator layer handles the complexity of access control policies without requiring the database system itself to become more complex, thus enabling access control while managing system complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If physical access to security stores is required for role membership resolution, then security information can be retrieved, but loss of time occurs

Engineering Contradiction:
Improvesecurity information accessVSAvoidresolution time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements preliminary action by pre-establishing security contexts and caching security information before queries are executed. The security manager resolves role memberships and retrieves security information in advance, reducing the time required during actual query processing while ensuring accurate security information access.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent maintains continuity of useful action by implementing connection pooling and caching mechanisms that keep security contexts active and readily accessible. This eliminates repeated physical access to security stores for each query, reducing resolution time while maintaining continuous access to security information.

Inventive Principle:
Principle #20Continuity of useful action

4Reliability

If authentication of every user is performed in the database server, then security is enforced, but productivity decreases due to prevention of connection pools

Engineering Contradiction:
Improvesecurity enforcementVSAvoidconnection efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts authentication functionality from the database server by implementing a separate security manager that handles user authentication independently. This allows the database server to enforce security policies without performing authentication operations, enabling connection pooling and improving overall connection efficiency while maintaining security enforcement.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The security manager serves as an intermediary that handles authentication operations externally to the database server. This mediator layer verifies user credentials and manages authentication states without preventing connection pooling, thus maintaining security enforcement while improving connection efficiency and productivity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10430430B2Computer relational database method and system having role based access control
Publication Date: 2019.10.01 VMWARE INC
  • US10430430B2 patent drawing
  • US10430430B2 patent drawing
  • US10430430B2 patent drawing

AI summary

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.