Cross-Domain UI Proxy for Secure Web Communication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional cross-domain communication methods in portal-based user interfaces face challenges such as security vulnerabilities due to malicious code propagation and require code changes across domains, impeding product development and scalability.

Innovation Solution

A user interface component operates as a client-based reverse proxy to verify the origin of applications and facilitate communication between different domains using HTML5 postMessage() function, acting as an intermediary for event handling and message transmission between primary and secondary servers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If conventional cross-domain communication methods are used, then communication between different domains is enabled, but security vulnerabilities arise due to malicious code propagation

Engineering Contradiction:
Improvecross-domain communication capabilityVSAvoidmalicious code propagation
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The patent implements a proxy server that acts as an intermediary between domains. The proxy receives events from secondary servers, verifies their legitimacy, and dispatches them to the primary server. This intermediary layer prevents direct communication that could allow malicious code propagation while enabling legitimate cross-domain communication through controlled event dispatching.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If cross-domain communication is implemented through proxy event dispatching, then communication between primary and secondary servers is established, but code changes are required in each domain

Engineering Contradiction:
Improvecross-domain communication capabilityVSAvoidcode changes across domains
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent creates a universal event dispatching mechanism through the proxy server that can handle events from multiple different domains without requiring domain-specific modifications. The proxy implements a standardized interface for event verification and dispatching that works across different domains, eliminating the need for separate event handlers in each domain while maintaining communication capabilities.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Productivity

If traditional cross-domain communication is used, then event dispatching between domains is possible, but security verification of event origins is compromised

Engineering Contradiction:
Improveevent dispatching efficiencyVSAvoidevent origin verification
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements preliminary verification of event origins at the proxy server before events are dispatched to the primary server. The proxy checks the source domain of incoming events against authorized domains and verifies event legitimacy beforehand. This preliminary action ensures security verification is performed efficiently without compromising productivity, as events are validated once at the proxy rather than requiring repeated verification throughout the system.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9830209B2Web based user interface driven prophylactic cross-domain communication architecture
Publication Date: 2017.11.28 NETAPP INC
  • US9830209B2 patent drawing
  • US9830209B2 patent drawing
  • US9830209B2 patent drawing

AI summary

Techniques to facilitate communication across domains are described. A secondary web server in a second domain provides content to be loaded into a user interface element of a web page provided by a primary web server in a first domain. A user interface component operates as an intermediary for the secondary web server and/or reverse proxy between user interface elements of the different domains. The user interface component processes a message from the secondary web server to verify an origin of the message. If the origin is trusted, the user interface component transforms the message into a request indicating a trusted domain and communicates the request to the first domain.