Secure Embedded UI Customization Through Version-Locked Components

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing web applications face challenges in maintaining a consistent user experience due to version mismatches between customer-authored and vendor-provided web components, leading to inconsistent updates and communication issues between embedded and parent webpages.

Innovation Solution

A system is implemented to manage version control by grouping changes into a cohesive set, assigning a unique version name, and ensuring that only the designated versions of web components are accessed during runtime, using an external application server to deliver consistent embedding code and configuration.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If customer-authored web components are integrated into the embedded web application for customization, then UI customization capability is improved, but version mismatches between customer and vendor components occur leading to inconsistent user experience

Engineering Contradiction:
ImproveUI customization capabilityVSAvoiduser experience consistency
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system performs preliminary actions by pre-defining version groups and associating both vendor-provided and customer-authored web components with specific version groups before runtime. This ensures that when components are loaded, they are guaranteed to be from consistent versions, preventing version mismatches while maintaining customization capability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system introduces an intermediary mechanism (version group metadata and coordination logic) that mediates between customer-authored components and vendor-provided components. This intermediary ensures version compatibility by verifying and coordinating the versions of all components before they are integrated into the embedded web application.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If web components are updated independently, then customization flexibility is improved, but communication issues arise between embedded and parent webpages

Engineering Contradiction:
Improvecomponent update flexibilityVSAvoidcommunication issues
Core Design Contradiction:
Adaptability or versatilityVSObject-generated harmful factors

Solution Approach 1:

The system performs preliminary coordination by associating all web components (both vendor and customer-authored) with version group information before they are deployed. This preliminary action ensures that when components are updated independently, the version group metadata tracks and coordinates their versions, preventing communication issues between embedded and parent webpages.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If version control is implemented by grouping changes and assigning unique version names, then version consistency is improved, but system complexity increases

Engineering Contradiction:
Improveversion consistencyVSAvoidversion control system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system uses copying by creating metadata representations (version group information) that replicate version identification data for multiple components. Instead of implementing complex inter-component version verification logic, the system copies version identifiers into a centralized metadata structure that can be efficiently checked and coordinated during runtime.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS20250247457A1Secure UI Component Customization In An Embedded Application
Publication Date: 2025.07.31 SALESFORCE INC
  • US20250247457A1 patent drawing
  • US20250247457A1 patent drawing
  • US20250247457A1 patent drawing

AI summary

Disclosed herein are system, method, and computer program product embodiments for secure user interface (UI) customization in an embedded application. An embodiment operates by generating an embedding code and an application configuration corresponding to an updated version of an embedded code of an embedded web application in response to a determination that the embedded web application was published successfully. The embodiment then stores the embedding code, the application configuration, and a particular version of a web component at an application server. The particular version of the web component is designated for use by the embedded web application during runtime of the embedded web application. The embodiment then configures an application endpoint to prevent the embedded web application from accessing, during runtime of the embedded web application, another version of the web component that is different from the particular version of the web component stored at the application server.