Application Server Service Access Control via Dependency Tracking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing application server security mechanisms fail to effectively restrict access by services deployed on an application server to target services, leading to potential malicious or unintended access to databases and other services, despite the use of module mechanisms like JBOSS Application Server's module system.

Innovation Solution

A system and method for controlling access by recording method calls from originator services to target services, where user input authorizes or blocks these calls based on a data structure that tracks method names, parameters, and service relationships, using a dependency security module with a monitor, verification module, and security module to enforce access restrictions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the module mechanism is used to restrict access, then access control capability is improved, but the complexity of the system increases and existing security vulnerabilities remain

Engineering Contradiction:
Improveaccess control capabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system segments the access control mechanism into distinct functional modules: a dependency tracker that monitors method calls, a verification module that checks authorization, and a security module that enforces restrictions. This segmentation allows each component to perform its specific function independently, improving reliability while maintaining manageable complexity through modular architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary verification module between the service layer and the dependency tracker. This intermediary component receives method calls, checks authorization against tracked dependencies, and only allows permitted calls to proceed. The intermediary acts as a security gateway that prevents unauthorized access without requiring changes to the core service architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If services can access any database coupled to the application server, then service flexibility is improved, but security risks increase due to potential malicious or unintended access

Engineering Contradiction:
Improveservice flexibilityVSAvoidsecurity risks
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The dependency tracker continuously monitors method calls made by services and records them in a data structure. This feedback mechanism provides real-time information about service behavior, which the verification module uses to determine whether subsequent method calls are authorized. The feedback loop enables dynamic access control that adapts to actual service usage patterns while preventing unauthorized access.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system performs preliminary tracking of method calls and recording of dependency relationships before actual data access occurs. By establishing the authorized dependency graph in advance and storing it in the data structure, the verification module can quickly check whether a service is permitted to access a particular database without interfering with legitimate service operations.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9800585B2Restricting access by services deployed on an application server
Publication Date: 2017.10.24 RED HAT INC
  • US9800585B2 patent drawing
  • US9800585B2 patent drawing
  • US9800585B2 patent drawing

AI summary

An example method for controlling access to services coupled to an application server includes receiving a set of method calls issued from originator services to target services and recording information about the set of method calls into a data structure. The method also includes modifying, based on user input, the data structure to exclude each unauthorized method call from the data structure. The method further includes receiving a first method call from a first originator service to a target service, and determining, based on searching the data structure, whether the first originator service is authorized to issue the first method call to the first target service. In response to a determination that the first originator service is not authorized to issue the first method call to the first target service, the application server may block the first originator service from issuing the first method call to the first target service.