Hosted Application Sandbox Subdomain Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In computing, application hosts face challenges in securely isolating third-party applications from interfering with each other and accessing unauthorized resources, particularly when hosting multiple applications on the same domain, which can lead to security vulnerabilities and resource interference.

Innovation Solution

Implementing a cross-domain restriction policy and allocating distinct subdomains for each application, mapped to a single network address, to enforce isolation through cross-domain restriction policies, and using techniques like IFRAME elements and cryptographically signed cookies to manage permissions and interactions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If distinct subdomains are allocated for each application, then application isolation is improved, but device complexity increases

Engineering Contradiction:
Improveapplication isolationVSAvoidrouting complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system segments applications by allocating distinct subdomains to each application, enabling cross-domain restriction policies to isolate applications from one another. This segmentation approach maintains application isolation while using a single shared network address to reduce routing complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Multiple distinct subdomains are mapped to a single shared network address, merging the routing target for all applications. This reduces the complexity of routing hardware by eliminating the need to maintain separate routing entries for each subdomain while preserving application isolation through cross-domain policies.

Inventive Principle:
Principle #5Merging (Combining)

2Reliability

If cross-domain restriction policies are implemented, then security is improved, but application functionality deteriorates

Engineering Contradiction:
ImprovesecurityVSAvoidapplication functionality
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

Permission tokens serve as intermediaries between applications and user data, enabling secure access control. These tokens allow applications to request and receive permission to access user data without compromising security, thus maintaining both security and application functionality.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system changes the state of application access by implementing cross-domain restriction policies that dynamically control which applications can access which resources. This enables the system to maintain security while allowing legitimate application functionality through controlled parameter changes in access permissions.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10447684B2Hosted application sandbox model
Publication Date: 2019.10.15 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10447684B2 patent drawing
  • US10447684B2 patent drawing
  • US10447684B2 patent drawing

AI summary

An application host (such as a web application server) may execute a set of applications on behalf of a set of users. Such applications may not be fully trusted, and a two-way isolation of the distributed resources of an application (e.g., the executing application, the application user interface on the user's computer, and server- and client-side stored resources) from other applications may be desirable. This isolation may be promoted utilizing the cross-domain restriction policies of each user's computer by allocating a distinct subdomain of the application host for each application. The routing of network requests to a large number of distinct subdomains may be economized by mapping all distinct subdomains to the address of the domain of the application host. Moreover, the application user interfaces may be embedded in an isolation construct (e.g., an IFRAME HTML element) to promote two-way isolation among application user interfaces and client-side application resources.