Identity Broker Encoding Arbitrary Identifiers for System Compatibility

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computer systems face incompatibility issues when integrating new identity providers due to differences in identifiers generated by these providers, such as on-premises and cloud-based directory services using SIDs and GUIDs respectively, leading to substantial code refactoring requirements for each new provider.

Innovation Solution

A system and method that encodes arbitrary identifiers into standard identifiers like SIDs, which are compatible with existing processes, using an intermediate component that executes hash functions and maintains lookup tables for reversible encoding and decoding, allowing seamless integration of new identity providers without extensive code refactoring.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If arbitrary identifiers from new identity providers are used directly, then interoperability with diverse identity providers is improved, but compatibility with existing dependent processes deteriorates

Engineering Contradiction:
Improveinteroperability with diverse identity providersVSAvoidcompatibility with existing dependent processes
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent introduces an intermediate component (broker) that sits between the identity provider and the dependent process. This broker receives arbitrary identifiers from the identity provider, encodes them into standard identifiers that the dependent process can understand, and translates messages back and forth. This intermediary resolves the incompatibility without requiring changes to either the identity provider or the dependent process.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent changes the parameter format of identifiers through encoding and decoding operations. The broker transforms arbitrary identifiers into standard identifiers by applying encoding functions, and transforms standard identifiers back into arbitrary identifiers for communication with the identity provider. This parameter transformation enables compatibility while maintaining support for diverse identifier formats.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If code refactoring is performed to support new identity providers, then compatibility with new providers is improved, but device complexity and development effort increase

Engineering Contradiction:
Improvecompatibility with new identity providersVSAvoidcode refactoring requirements
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The broker acts as an intermediary that handles all the complexity of supporting multiple identity providers. The dependent process only needs to interact with the broker using standard identifiers, while the broker manages the complexity of encoding/decoding and communicating with various identity providers. This isolates the complexity in one component rather than requiring widespread code changes.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The broker is designed as a universal component that can handle multiple types of identity providers through a single interface. It provides multi-functionality by supporting arbitrary identifier formats from different providers while presenting a consistent standard identifier interface to the dependent process, eliminating the need for provider-specific code paths.

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

3Adaptability or versatility

If encoding and decoding operations are implemented, then interoperability between arbitrary and standard identifiers is improved, but processing time and computational overhead increase

Engineering Contradiction:
Improveinteroperability between identifier typesVSAvoidprocessing time for encoding and decoding
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The broker performs encoding operations in advance when receiving identifiers from the identity provider, converting them to standard identifiers before the dependent process needs them. This preliminary encoding ensures that the dependent process receives ready-to-use standard identifiers without needing to perform encoding operations itself, reducing overall processing time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The broker creates and maintains copies of identifiers in both formats (arbitrary and standard) through encoding and decoding. It keeps the dependent process working with standard identifier copies while maintaining copies in arbitrary format for communication with the identity provider, allowing parallel processing without format conversion delays during critical operations.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS11546157B2Adaptive identification systems and methods
Publication Date: 2023.01.03 CITRIX SYSTEMS INC
  • US11546157B2 patent drawing
  • US11546157B2 patent drawing
  • US11546157B2 patent drawing

AI summary

A computer system is provided. The computer system includes a memory and a processor coupled to the memory. The processor is configured to receive a first message from an identity provider, the first message including an arbitrary identifier generated by the identity provider, the arbitrary identifier being incompatible with a dependent process that is reliant upon the identity provider; encode, in response to reception of the first message, the arbitrary identifier into an encoded identifier that is compatible with the dependent process; and transmit a second message including the encoded identifier to the dependent process.