Proxy Server URI Access Control for Custom Code Security
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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
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.
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
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.
Data Source
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.


