Sandboxing for Multi-Tenancy Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In data center server environments, multi-tenancy configurations pose security and reliability risks due to shared operating system resources, where one application can interfere with or attack others, leading to potential malware installation, resource overconsumption, and system unresponsiveness.

Innovation Solution

Implementing a sandboxing system that isolates applications through least-privilege execution, messaging isolation, credentials isolation, data isolation, network isolation, fair share resource usage, managed runtime security, and detection/elimination of badly behaved applications, using techniques like secure named pipe connections, access control lists, and heuristic algorithms to prevent interference and ensure fair resource allocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple applications are loaded on shared server resources to improve resource utilization, then productivity increases, but security and reliability risks worsen due to potential interference between applications

Engineering Contradiction:
Improveresource utilizationVSAvoidapplication interference
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements segmentation by creating separate sandbox environments for each application. Each sandbox is isolated with its own process space, memory region, and system resource access controls, preventing applications from interfering with each other while allowing multiple applications to run on the same physical server. This resolves the contradiction by maintaining high resource utilization while eliminating application interference through structural segmentation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a sandbox manager as an intermediary component that mediates between applications and the operating system. The sandbox manager allocates resources, manages communication between sandboxes, and enforces security policies. This intermediary layer enables safe multi-tenancy by coordinating resource access and preventing direct interference between applications.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If applications are executed with full privileges to ensure they can perform all necessary operations, then ease of operation improves, but security risks worsen due to potential malware installation and system compromise

Engineering Contradiction:
Improveapplication execution capabilityVSAvoidsecurity attacks
Core Design Contradiction:
Ease of operationVSObject-affected harmful factors

Solution Approach 1:

The patent applies local quality by granting applications different privilege levels within their respective sandboxes. Each application receives only the minimum necessary privileges to perform its intended function (least-privilege execution), rather than full system privileges. The sandbox manager dynamically allocates and revokes permissions based on application needs, enabling secure operation while maintaining functional capability.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent implements preliminary anti-action by pre-configuring sandbox environments with restricted permissions and monitoring mechanisms before applications execute. The sandbox manager establishes security boundaries and resource quotas in advance, preventing malware installation and system compromise before they can occur. This proactive approach blocks harmful actions before they can affect the system.

Inventive Principle:
Principle #9Preliminary anti-action

3Adaptability or versatility

If applications can access all system resources to ensure complete functionality, then adaptability improves, but reliability worsens due to resource overconsumption and system unresponsiveness

Engineering Contradiction:
Improveresource access capabilityVSAvoidsystem responsiveness
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent implements dynamics by making resource allocation flexible and adaptive within sandbox boundaries. The sandbox manager dynamically adjusts CPU time slices, memory quotas, and I/O bandwidth based on real-time application needs and system load. This dynamic resource management allows applications to access sufficient resources for their functions while preventing any single application from overwhelming the system, maintaining overall responsiveness.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent introduces feedback mechanisms where the sandbox manager continuously monitors resource consumption by each application and adjusts allocations accordingly. When an application approaches its resource limits or exhibits malicious behavior, the feedback system triggers automatic throttling or termination. This closed-loop control ensures system reliability while allowing applications to function within their allocated resource boundaries.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10467058B2Sandboxing for multi-tenancy
Publication Date: 2019.11.05 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10467058B2 patent drawing
  • US10467058B2 patent drawing
  • US10467058B2 patent drawing

AI summary

Systems and methods according to various embodiments disclose a worker process manager adapted to spawn one or more worker processes on a server and to load an application on each of the worker processes. The worker process manager is adapted to isolate the one or more worker processes from each other and to control resource usage by the worker processes. A resource manager is adapted to detect applications that overuse system resources. The worker process manager is adapted to isolate worker processes and to control resource usage using one or more of the following techniques: least-privilege execution, messaging isolation, credentials isolation, data isolation, network isolation, fair share resource usage, and managed runtime security. Heuristic algorithms are used to detect applications that frequently overuse system resources that are unchargeable and that cause system unresponsiveness.