Wrapping Credential Provider for Multi-Provider Encapsulation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The Windows Vista and Windows 7 operating systems lack a 'head' credential provider that must be invoked for communication with other credential providers, limiting the full functionality of GINA chaining and making it difficult to encapsulate or wrap multiple credential providers, which is essential for delivering customized logon experiences.
Innovation Solution
A wrapping credential provider is created that instantiates multiple credential providers, assigns unique indices, and generates a map list to preserve field order, allowing multiple credential providers to be displayed and controlled within a single window, enabling the passing of calls from the LogonUI process to the correct wrapped credential providers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a credential provider wraps only one other credential provider as permitted by Microsoft guidance, then the wrapping mechanism can be implemented, but the full functionality of GINA chaining is lost because multiple credential providers cannot be simultaneously encapsulated
Solution Approach 1:
The patent implements a nested credential provider structure where a wrapping credential provider encapsulates multiple wrapped credential providers, each of which may themselves wrap other credential providers. This creates a hierarchical nesting pattern similar to nested dolls, allowing multiple credential providers to be simultaneously encapsulated within a single wrapping CP object while maintaining manageable structural complexity through clear hierarchical boundaries
2Ease of operation
If all registered credential providers are made peers of one another as in Windows Vista and 7 architecture, then the system follows the new logon architecture, but there is no 'head' credential provider to serve as the entry point for communication
Solution Approach 1:
The wrapping credential provider acts as an intermediary between the LogonUI process and multiple wrapped credential providers. It receives communication from the LogonUI process, routes it to the appropriate wrapped CP, and returns responses. This mediator pattern simplifies access for the LogonUI process while managing the complexity of multiple CPs internally through systematic routing based on provider indices and field mappings
3Adaptability or versatility
If multiple credential providers are wrapped within a single wrapping CP object, then full GINA chaining functionality is restored, but the system must manage multiple instances, field mappings, and provider indices
Solution Approach 1:
The patent segments the management of multiple credential providers by assigning each wrapped CP a unique provider index and organizing fields into structured mappings. Each wrapped CP's credentials and fields are systematically divided and registered with the wrapping CP, which maintains separate tracking structures for each provider. This segmentation allows the system to manage multiple CPs through organized, modular data structures rather than monolithic complexity
Solution Approach 2:
The wrapping credential provider creates and maintains copy structures of the wrapped CPs' credentials and field information, including provider-specific field descriptors and ordered field lists. These copies enable the wrapping CP to present a unified interface to the LogonUI process while internally routing to the appropriate wrapped CP, managing complexity through replicated data structures rather than direct complex interconnections
Data Source
AI summary
Systems, methods, and computer readable media for encapsulating multiple Windows® based credential providers (CPs) within a single wrapping CP are described. In general, CP credentials and fields from two or more encapsulated or wrapped CPs may be enumerated and aggregated in such a way that the order of fields from each CP is preserved, fields that may be used only once are identified and appear only once, and fields are given a new unique field identifier. The union of all such fields (minus duplicates of any one-use-only fields) may be used to generate a mapping so that the wrapping CP and CP credential may “pass-through” calls from the operating system's logon interface to the correct wrapped CP and CP credential. The disclosed techniques may be used, for example, to provide single sign-on functionality where a plurality of sign-on credentials may be used (e.g., user name/password and smart card PIN).


