Secure Event Flow in Shared UI Hierarchies
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing programming environments fail to securely manage event flow between mutually distrusting applications in a user interface hierarchy, leading to potential information leaks and unauthorized interactions.
Innovation Solution
Implementing a hierarchical structure with node ownership information and a capture/bubble event distribution mechanism that restricts event propagation based on trust relationships between applications, ensuring that events can only be dispatched across boundaries if both sides agree to trust each other, thereby preventing unauthorized access or interference.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If event propagation is allowed freely across all UI objects in a hierarchy, then applications can interact and share events seamlessly, but security risks arise including information leaks and unauthorized access between mutually distrusting applications
Solution Approach 1:
The patent segments the event propagation path into distinct ownership zones by introducing node ownership information. Each UI object node is associated with an owner application, creating segmented boundaries that prevent unrestricted event flow between mutually distrusting applications while allowing seamless propagation within trusted ownership domains.
Solution Approach 2:
The patent introduces node ownership information as an intermediary mechanism that mediates event propagation between applications. This intermediary tracks and enforces trust relationships, allowing events to propagate only when both source and target applications mutually trust each other, thereby resolving the security contradiction.
2Reliability
If node ownership information and trust verification are implemented to secure event flow, then security between applications is improved, but event propagation is restricted and applications cannot freely share UI events
Solution Approach 1:
The patent implements dynamic event propagation control where the permission to propagate events is not fixed but determined in real-time based on mutual trust relationships between applications. The system dynamically evaluates trust relationships at event dispatch points, allowing flexible and adaptive event flow that responds to the specific trust context of each interaction.
Solution Approach 2:
The patent changes the parameter of event propagation from a binary allowed/disallowed state to a conditional state based on mutual trust verification. By introducing trust relationship parameters, the system enables fine-grained control over event propagation, allowing events to pass when trust conditions are met and blocking them when trust is absent.
3Adaptability or versatility
If multiple applications concurrently create UI objects in a shared hierarchy, then UI versatility and collaboration are improved, but unauthorized interactions and information leaks between applications may occur
Solution Approach 1:
The patent performs preliminary action by establishing node ownership information and trust relationships before events are propagated. The system pre-records which application owns each UI object node and pre-establishes mutual trust relationships, so that when events occur, the verification of authorized interactions has already been prepared, preventing unauthorized interactions in advance.
Data Source
AI summary
In general, one aspect of the subject matter described in this specification can be embodied in a method for integrating separate software applications in an application execution environment, where the method includes providing a hierarchical structure of nodes corresponding to user interface objects representing elements of a user interface of a computer, wherein the hierarchical structure governs propagation of user interface events among the user interface objects; the providing includes enabling separate software applications to concurrently create nodes in the hierarchical structure and share the user interface; and restricting propagation of user interface events among the user interface objects, during presentation of the user interface objects in the user interface of the computer, based on node ownership information linking the user interface objects to the separate software applications. Other embodiments of this aspect include corresponding systems, apparatus, and computer program products.


