Proxy Server URI Access Control for Custom Code Security

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Data computing platforms face security issues due to custom APIs making external network requests, potentially leading to data leakage, as existing management techniques are inadequate in controlling access to external resources.

Innovation Solution

A system and method that utilize a whitelist and blacklist mechanism, managed by a network policy manager, to determine and control access to external uniform resource identifiers (URIs) requested by custom code, employing a proxy server to intercept requests and allowing access only to approved URIs, with the blacklist overriding the whitelist for organizational-level control.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If custom code is allowed to make external network requests freely, then the functionality and versatility of the data computing platform is improved, but security risks increase due to potential data leakage to external systems

Engineering Contradiction:
Improvefunctionality of custom codeVSAvoidsecurity risks
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

A proxy server is introduced as an intermediary component between custom code and external network resources. The proxy server intercepts all external network requests made by custom code, validates them against whitelist and blacklist rules, and either forwards approved requests or denies unauthorized ones. This mediator architecture enables custom code to maintain external connectivity functionality while preventing direct unauthorized access to external systems, thus resolving the security-versus-functionality contradiction.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Object-affected harmful factors

If a whitelist mechanism is implemented to control external access, then security is improved by blocking unauthorized URIs, but system complexity increases due to additional validation layers

Engineering Contradiction:
Improveunauthorized access preventionVSAvoidsystem complexity
Core Design Contradiction:
Object-affected harmful factorsVSDevice complexity

Solution Approach 1:

The system performs preliminary validation by maintaining pre-configured whitelist and blacklist of uniform resource identifiers (URIs). Before allowing any external network request from custom code, the proxy server checks the requested URI against these pre-established lists. This preliminary action approach enables security validation to be performed efficiently using predetermined rules, reducing the computational complexity compared to performing comprehensive security analysis in real-time for each request.

Inventive Principle:
Principle #10Preliminary action

3Object-affected harmful factors

If a blacklist is implemented to override the whitelist at organizational level, then fine-grained security control is improved, but management complexity increases due to multiple policy layers

Engineering Contradiction:
Improvefine-grained security controlVSAvoidpolicy management complexity
Core Design Contradiction:
Object-affected harmful factorsVSDevice complexity

Solution Approach 1:

The system implements local quality by allowing different organizations to have their own customized blacklist policies that override the global whitelist at the organizational level. Each organization can define site-specific blacklists tailored to their local security requirements and risk profiles. This enables fine-grained, localized security control where each organization's policy needs are addressed independently, while the overall system maintains a unified proxy server architecture that handles all validation logic.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS12081549B2Systems and methods for managing custom code in a data computing platform
Publication Date: 2024.09.03 PALANTIR TECHNOLOGIES INC
  • US12081549B2 patent drawing
  • US12081549B2 patent drawing
  • US12081549B2 patent drawing

AI summary

A system for managing custom code within a data computing platform determines that a request for one or more uniform resource identifiers external to the platform is being made by custom code executing in the platform. In response to the determination, the system checks a whitelist of allowable external URIs against the requested one or more URIs and allows access to the requested one or more URIs if a match is detected with the whitelist, otherwise access by the custom code to the requested one or more URIs is denied. In addition, or alternatively, the system checks a blacklist of disallowed external URIs against the requested one or more URIs and denies access to the requested one or more URIs if a match is detected with the blacklist, otherwise access by the custom code to the requested one or more URIs is allowed. The blacklist can override the whitelist.