Query-Based Data Permissions for Fine-Grained Access Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In traditional database management systems, permission to access data is granted at a coarse grain level, forcing database administrators to provide all-or-nothing access control, which is inefficient when creating reports that mix data from various structures, leading to increased burden as the number of users grows.

Innovation Solution

Implementing a system and method where permissions are provided via database queries, allowing users to access specific data subsets based on query results, with user-centric queries generating data views or subsets specific to each user, reducing the effort required to manage permissions across multiple users.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If permission to access data is granted at the level of data structures (coarse grain approach), then access control is simplified and can be granted all-or-nothing, but it forces administrators to provide permission to all data of a particular data type without regard to specific instances, reducing flexibility and precision

Engineering Contradiction:
Improveease of permission grantingVSAvoidprecision of permission control
Core Design Contradiction:
Ease of manufactureVSManufacturing precision

Solution Approach 1:

The patent segments permission control from coarse-grain data structure level to fine-grain specific data instance level. Instead of granting permission to entire tables or data types, the system allows administrators to grant permission to specific instances of data within structures, enabling precise control over what each user can access while maintaining ease of management through automated inheritance mechanisms.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by allowing different permission levels for different specific instances of the same data structure. Each piece of data can have its own access control list, enabling localized permission settings that tailor access rights to specific data instances rather than applying uniform permissions across all data of a particular type.

Inventive Principle:
Principle #3Local quality

2Ease of manufacture

If permission is granted at coarse grain level of data structures, then administrative effort is reduced for simple cases, but the burden on report creators increases significantly when creating reports that mix data from various structures with multiple users

Engineering Contradiction:
Improveadministrative effort for permission managementVSAvoidreport creation efficiency
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent creates a universal permission management system that handles both simple and complex reporting scenarios through a single mechanism. The system provides multi-functionality by supporting automatic permission inheritance for simple reports while also enabling fine-grained permission control for complex reports mixing multiple data structures, eliminating the need for different approaches based on report complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent implements self-service through automated permission inheritance mechanisms. When a user is granted permission to a parent data structure, the system automatically inherits and applies appropriate permissions to child structures and specific data instances. This automation reduces administrative effort while maintaining precise control, allowing report creators to focus on report logic rather than manual permission configuration.

Inventive Principle:
Principle #25Self-service

3Device complexity

If all-or-nothing access control is used at data structure level, then permission management is simpler, but it prevents selective access to specific data instances, reducing security and data protection capabilities

Engineering Contradiction:
Improvecomplexity of permission management systemVSAvoiddata security and protection
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent segments access control from structure-level to instance-level permissions, allowing selective access to specific data instances. This segmentation enables the system to maintain simple management through automated inheritance while simultaneously providing fine-grained security control over individual data pieces, thus improving data protection without significantly increasing system complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the parameter of permission granularity from coarse (structure-level) to fine (instance-level). By allowing permission settings at multiple levels of granularity, the system can adjust the degree of control based on security requirements, enabling both simple and secure permission management configurations as needed.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10095881B2System and methods for providing query-based permissions to data
Publication Date: 2018.10.09 WORKIVA INC
  • US10095881B2 patent drawing
  • US10095881B2 patent drawing
  • US10095881B2 patent drawing

AI summary

A method includes generating a database query in a database; receiving a first request to execute the database query on behalf of a first user; in response to the first request, executing the database query to generate a first set of results such that the first set of results is limited to data with which there is a semantic relationship in the database to a first datum representing the first user; receiving a second request to execute the database query on behalf of a second user; in response to the second request, executing the database query to generate a second set of results such that the second set of results is limited to data with which there is a semantic relationship in the database to a second datum representing the second user, where the first set of results and the second set of results are at least partially non-overlapping.