Request Pre-Processing Tool for Authorization Policy Compilation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing network-accessible services face challenges in enforcing complex authorization requirements due to limited expressiveness and responsiveness issues with their native authorization policy specification methodologies, which can lead to inefficient handling of sophisticated authorization constraints.

Innovation Solution

Implementing a request pre-processing tool (RPT) that acts as an intermediary to parse, interpret, and enforce more complex authorization requirements, using a more expressive language and methodology than the native authorization manager, allowing for advanced authorization-related checks and validations without impacting the service's responsiveness.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If the authorization manager uses the native policy specification methodology to evaluate authorization requests in real time, then the service can respond quickly to requests, but the expressiveness of the authorization policies is limited and cannot handle sophisticated authorization constraints

Engineering Contradiction:
Improveauthorization evaluation speedVSAvoidauthorization policy expressiveness
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The authorization system is segmented into two independent components: (1) a pre-processing tool that performs complex policy evaluation offline using expressive languages, and (2) an authorization manager that handles real-time requests using simplified policies. This segmentation allows each component to specialize - the pre-processor handles complexity while the manager handles speed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary authorization evaluation by pre-processing complex policies before actual service requests arrive. The pre-processing tool generates compiled authorization data structures in advance, so that when real-time requests come in, the authorization manager can make quick decisions using the pre-computed results rather than evaluating complex policies from scratch.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the authorization manager enforces complex authorization requirements using the native methodology, then sophisticated authorization constraints can be handled, but the service responsiveness deteriorates due to lengthy policy evaluation times

Engineering Contradiction:
Improveauthorization requirement enforcementVSAvoidpolicy evaluation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Complex authorization policies are evaluated and validated in advance during a pre-processing phase. The pre-processing tool compiles and checks the legitimacy of complex policies before they are deployed, so that during runtime, the authorization manager only needs to perform simple lookups rather than complex evaluations, dramatically reducing policy evaluation time while maintaining enforcement reliability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

A pre-processing tool acts as an intermediary between policy definition and runtime enforcement. This intermediary performs the heavy lifting of complex policy validation and compilation, transforming intricate authorization requirements into optimized data structures that the authorization manager can efficiently execute during runtime.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Device complexity

If the authorization manager handles all authorization evaluations directly, then the system structure remains simple, but the computational load increases and limits concurrent user capabilities

Engineering Contradiction:
Improvesystem structure complexityVSAvoidconcurrent user capability
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The authorization system is divided into two operational phases: an offline pre-processing phase that handles complex policy compilation, and an online runtime phase that handles rapid request evaluation. This temporal and functional segmentation distributes computational load, allowing the system to support more concurrent users since the heavy processing occurs offline rather than blocking real-time requests.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Computationally intensive policy compilation and validation operations are performed in advance during system setup or policy update times. By moving these heavy computations out of the request processing path, the system can handle more concurrent users without being bottlenecked by authorization evaluation, as the runtime manager only performs lightweight checks.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11245701B1Authorization pre-processing for network-accessible service requests
Publication Date: 2022.02.08 AMAZON TECH INC
  • US11245701B1 patent drawing
  • US11245701B1 patent drawing
  • US11245701B1 patent drawing

AI summary

At an authorization manager, an indication is obtained that a request pre-processing tool has been designated as a validator for a category of requests directed to a network-accessible service. The authorization manager determines, based at least in part on a validation result set indicated in a request of the category, that the request pre-processing tool has verified that the request meets an authorization requirement. The authorization manager approves one or more operations indicated in the request.