Protection Domain-Based Security Model for Fine-Grained Access Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computing environments lack fine-grained protection for application and platform functionalities, relying on context isolation which only allows access based on execution context, limiting finer control over security access.

Innovation Solution

Implementing a protection domain-based security model that associates applications with specific permissions, allowing access to protected functionalities based on membership in designated protection domains, with transparent and programmatic permission checks at context switches.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If context isolation is used to protect applications, then application security is improved, but fine-grained access control capability deteriorates

Engineering Contradiction:
Improveapplication securityVSAvoidfine-grained access control capability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent segments the access control mechanism into multiple layers: execution context isolation for coarse-grained protection and protection domains with permission sets for fine-grained control. This segmentation allows the system to maintain both strong security through context isolation and flexible fine-grained access control through domain-based permission management.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces protection domains as an intermediary layer between execution contexts and protected functionalities. This intermediary mechanism enables fine-grained access control by mediating the interaction between applications and protected resources, allowing permission-based control without compromising the isolation guarantees of execution contexts.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Device complexity

If access control is based solely on execution context, then system simplicity is maintained, but security flexibility deteriorates

Engineering Contradiction:
Improveaccess control system simplicityVSAvoidsecurity flexibility
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent makes the protection domain mechanism universal by allowing it to operate at multiple levels: enforcing coarse-grained context isolation, enabling fine-grained permission control, and providing both transparent and programmatic access control. This multi-functionality allows a single mechanism to address diverse security needs without increasing overall system complexity.

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

Solution Approach 2:

The patent introduces dynamic permission checking that can operate in different modes (transparent or programmatic) depending on the access control needs. This dynamic behavior allows the system to adapt to different security requirements while maintaining a relatively simple underlying architecture, balancing flexibility with simplicity.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS7739731B2Method and apparatus for protection domain based security
Publication Date: 2010.06.15 ORACLE AMERICAN INC
  • US7739731B2 patent drawing
  • US7739731B2 patent drawing
  • US7739731B2 patent drawing

AI summary

A first application instance is associated with a protection domain based on credentials (e.g.: a signed certificate) associated with a set of application code that, when executed, gives rise to the application instance. The first application instance executes in a first execution context. An indication is received that the first application instance seeks access to protected functionality associated with a second execution context. In response to receiving the indication, a determining is made as to whether the first application instance has permission to access the protected functionality. The determination is made by determining the protection domain with which the first application instance is associated, and determining if the protection domain with which the first application instance is associated is in the set of one or more protection domains.