Instruction-Level Access Control via Code Markers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current access control systems in software development face high administrative overhead and lack granularity, allowing unauthorized modifications and malicious changes to source code, particularly due to file-level access controls that do not effectively restrict access to specific code components.

Innovation Solution

Implementing role-based access control through markers associated with instructions in the software code, which determine and enforce access levels based on user roles, providing finer granularity and preventing unauthorized modifications by restricting access at the instruction level.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If file-level access control is used, then access control is simple to implement, but access control granularity is insufficient and cannot restrict access to specific code components

Engineering Contradiction:
Improveaccess control implementation complexityVSAvoidaccess control granularity
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The patent segments access control from the file level to the instruction level by introducing markers within the source code itself. Each marker is associated with specific instructions and defines access control policies for those instructions, enabling fine-grained control over individual code components while maintaining simplicity through automated enforcement.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces markers as intermediary elements between the code and the access control mechanism. These markers serve as mediators that carry access control information within the source code, allowing the system to enforce policies at the instruction level without requiring complex file-level permission management.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If manual reviews of code components are performed to ensure quality, then code correctness can be verified, but administrative overhead increases significantly

Engineering Contradiction:
Improvecode correctnessVSAvoidadministrative overhead
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent enables code components to self-manage their own access control through embedded markers. The markers automatically enforce access policies when code is executed, eliminating the need for manual review and verification by administrators. This self-service approach maintains code correctness while significantly reducing administrative overhead.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system provides automated feedback by enforcing access control policies at runtime through the markers. When a user attempts to access restricted instructions, the system automatically denies access and can log the attempt, providing real-time feedback on access compliance without requiring manual code reviews.

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If developers can access and modify source code freely, then development flexibility is maintained, but malicious changes and privilege escalation are possible

Engineering Contradiction:
Improvedevelopment flexibilityVSAvoidmalicious changes
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The patent applies preliminary anti-action by embedding access control markers throughout the source code before execution. These markers pre-establish restrictions that prevent developers from modifying protected instructions, thereby blocking malicious changes and privilege escalation attempts before they can affect the system.

Inventive Principle:
Principle #9Preliminary anti-action

Solution Approach 2:

The system performs preliminary action by marking critical instructions and code components during the development phase. These markers are embedded in the source code and remain active during execution, proactively preventing unauthorized modifications rather than reacting to attempted breaches.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8661555B2Role-based access control over instructions in software code
Publication Date: 2014.02.25 SAP SE
  • US8661555B2 patent drawing
  • US8661555B2 patent drawing
  • US8661555B2 patent drawing

AI summary

In one embodiment, a method determines a role for a user for access to software code. A marker associated with an instruction in the software code is determined. An access level for the user based on the marker and the role is then determined. The access level is enforced based on the instruction associated with the marker for the software code.