Managed Application Execution Service Isolation for Sensitive Data
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In cloud-based computing environments, there is a challenge in securing sensitive data and protecting application code from misuse or misappropriation when processing sensitive data sets using resources from provider networks, as existing solutions fail to adequately address the need for robust isolation and security, especially in fast-moving domains like machine learning and artificial intelligence.
Innovation Solution
Implementing customizable isolation techniques through a managed application execution service (MAES) that uses configurable run-time environments with varying levels of trust, where sensitive data and applications are isolated using separate execution environments with specific I/O permissions, and employing techniques like encryption and temporary storage keys to prevent data misuse and reverse engineering.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If third-party applications are allowed to process sensitive data on provider network resources, then application diversity and functionality are improved, but data security and protection from misuse deteriorates
Solution Approach 1:
The execution platform is segmented into multiple isolated run-time environments, each capable of executing different applications. These environments are separated by trust boundaries that prevent applications from accessing each other's data and resources, allowing diverse third-party applications to run securely without compromising overall system security.
Solution Approach 2:
A security manager acts as an intermediary between third-party applications and the shared resources. It enforces isolation policies, mediates access to sensitive data, and ensures that applications can only access resources authorized by the data owner, thus enabling application diversity while maintaining data security.
2Ease of operation
If application code is made accessible to clients for execution, then ease of operation is improved, but protection from code theft and reverse engineering deteriorates
Solution Approach 1:
The system separates application code execution from data storage and communication functions into distinct run-time environments. Code is executed in isolated environments that do not persistently store data, making it difficult to steal or reverse engineer while still allowing clients to access and operate the applications through controlled interfaces.
3Object-affected harmful factors
If multiple run-time environments with different trust levels are implemented, then data isolation and security are improved, but device complexity increases
Solution Approach 1:
The security manager provides universal functionality across all run-time environments by automatically assigning trust levels and enforcing isolation policies. This multi-functional approach handles data isolation, access control, and environment management through a single unified system, reducing the operational complexity that would otherwise arise from managing multiple isolated environments.
Data Source
AI summary
At a first resource to be used to perform a computing operation, a pair of execution environments is configured. I/O permissions of programs running in the different environments are based on respective sets of constraints. A program performs the operation in one of the environments, with input data being provided to the program from the second environment. A result of the operation is provided to a destination from the second environment.


