User Registration Ceremony
Design Pattern Metadata
Title
This pattern shows one possible registration ceremony that a user follows to establish or recover access to an identifier with an Identity Provider (IdP). A ceremony is a conversation that a user has with an IdP following a predetermined ritual or set of rules.
Status
Design Pattern Lifecycle Status
Contributed | Working Draft | Committee Review | Compilation | Approval | Publication |
This Design Pattern is available for review by the User Experice Committee (UXC) with the goal of refining and completing the Design Pattern, , see Identity Design Patterns for the current list of design patterns and their status. |
Design Pattern Review Status
Contributed.
Expect changes before this pattern is final.
A required picture has not yet been supplied.
Design Pattern Category
Privacy, Trust/Assurance, Interoperability
Contributor
Tom Jones
Design Pattern Content
Problem Description (meme)
Users need to be able to create an identifier within an IDESG set of criteria defined in a framework that is understandable to them.
When to use this Pattern (Context)
- Any time a user needs to establish an identifier or personal information with an Identity Provider (IdP). In general the user will be able to assume that an interaction on an IDESG logoed web site will be anonymous until the user elects to provide personal information.
- The IdP can voluntarily chose to support one or more IDESG trust frameworks known to follow IDESG principles for the user to chose from. Whenever more than one Trustmark is displayed on a web site, the user will have the opportunity to select which Trustmark will apply to the balance of the interaction until the user decides to switch to a different Trustmark.
- It is not anticipated at this time that more than one Trustmark would ever apply at any one time in an interaction. The potential interactions of patterns is far too complex for human users to be expected to understand.
The following illustration shows the primary actors and the data that they maintain. For the general case considered here, the actual service provider is not specified as it could be an identity or attribute provider, a relying party or any of a variety of other service providers that interact with the user. Connections that the service providers have beyond the user connection are not indicated as all data sent to or received from the user by way of a user agent (or browser) will pass to one provider at a time. That does not imply that multiple providers are not part of a single user interchange, but only that the interchanges deals with a single provider at a time.
Relationships with other Design Patterns
This design pattern assumes the use of a device connected to internet service providers as described in the Design Pattern: Common to any Internet Identity Ecosystem design pattern.
Relationships with Use Cases
TK
Actors
The following roles are present in any IDESG compliant ecosystem. Note that some of the roles may be collocated in a single Entity on the Internet.
- User: For any user experience internet identity pattern, the user can be assumed to be a human being who wants to access services on a web site and still retain privacy by requesting that the site not link the user's attributes to any other site or instance.
- User Agent: in this case any piece of code that displays a user experience and obtains responses from the user in order to satisfy the privacy concerns of the user and the need for identity and attribute claims by the relying party.
- Relying Party (RP): A service provider that needs a collection of claims to provide that service. The claims may relate to financial responsibility or other user attributes that are required by regulation to met legal responsibilities. The user experience for RP web sites should improve if they can automate some requests for user's attributes. It is beyond the scope of this Design Pattern to determine whether the RP actually has any justification in requesting any user attribute at all. It is required that the relying party have secure identity to present to the user in a manner visible in the user agent, for example the RP could have an EV-certificate to prove its identity and existence in the real world.
- Identity Provider (IdP): contains identities and attributes of users that will be provided on demand in claims that the user can forward to a RP.
- Attribute Provider (AP): contains identities and attributes of users that will be provided on demand in claims that the user can forward to a RP.
- Identity Ecosystem: a set of services that implement other trust services as required by the rules of that ecosystem. Note that all of the other actors are almost certainly required to function with multiple identity ecosystems; some, but not all, of these ecosystems are expected to be compliant with IDESG trust frameworks.
Solution
Description of the Solution
- The user establishes an account with one or more Identity or Attribute providers that are accredited with one or more IDESG Trustmarks.
- The provider leads the user through a ceremony or named conversation to give the user a choice of the framework of rules that will govern the use of this identity with an relying party.
- The user accesses a web site which at some point requires identity and attributes claims of some sort to continue to process the user request. That web site then transitions from an purely anonymous information site into a relying party that needs to obtain an identity claim from the users.
- The RP gives the user a choice of identity providers:
- A list of IDESG frameworks (by their Trustmarks)
- Allows the user to enter their identifier which can be used to determine the IdP.
- In general the identity provider will be a distinct role from the RP where a persistent identity across multiple interactions is desirable.
- The option of ephemeral connection ID may be provided at the RP's options where anonymous interactions are permitted.
Note that the conversation is a named entity solely for the purposes of recalling the conversation to prove user intent. It should not be assumed that the conversation is distinct from a named connection between the user and the IdP, or that the conversation is predetermined. An ad hoc conversation that is saved and identified will meet the pattern described here.
Error Conditions
Any error condition that requires user action should create the following user experience elements
- As much detail about the cause of the error that would help the user understand while not significantly impacting the user flow or security.
- A way for the user to mitigate the error. The response "Please contact your administrator" does not qualify as a mitigation step.
The following are specific errors that the user might see.
- User does not have credentials that can generate claims acceptable to the relying party.
- Mitigation: The ID ecosystem redirects the user to one or more sources of appropriate credentials that do meet the criteria for authorization at the RP.
- Mitigation: The relying party redirects the user to one or more Identity Providers or trust frameworks that are acceptable. If a new framework is chosen, that may involve user acceptance or change the PET to meet those particular authorization requirements.
- Mitigation: The user is allowed to back-out of the current path to one where they can succeed.
Usability Considerations
This section further refines the user experience defined in the User Experience Overview.
- User Control and Freedom
- The user cannot be expected to have made any trust decision just because they have landed on a web location. As an example the user should not expect that whitehouse.com was trustworthy. Note that it is only after the web site renders that the user can see if the URL is trusted (e.g. if it has a trusted EV-certificate.)
- The user will have the ability to back out of a process at any time before it is committed.
- Match between system and the real world
- It is expected that when a user first navigates to a web site that the interaction will be treated as anonymous and no user data would be collected until the user selected some action which explicitly was acknowledged to require user information, such as clicking a logon or framework logo.
- All IDESG logoed web sites are expected to participate in setting a trustworthy context. This design pattern will be combined with other design patterns to help design and build web sites that meet IDESG UX goals. For example each web site needs to allow users to stop, cancel or back out of decisions when they change their mind.
- All providers will be localized in English, Spanish and any other language expected to be encountered by a significant number of users.
- Consistency and Standards
- One important part of any Design Pattern is the intelligibility of the design to the user. Here it is very important that the user understand the meaning of the IDESG mark sufficiently well to understand the benefits from it.
- Recognition and Recall
- If the user has made a decision to release information to an RP, the decision may be cached, but remains always under the user's control so that it can easily be revoked.
- TK
Read the report of the IDESG experience committee on use case usability at UXC Use Case Mapping
Value Proposition
The most difficult acceptance barrier for most new design choices is the web site of the relying party. If any part of the implementation hinders use of the web site, the feature will not be implemented.
References and Citations
TK
NSTIC Guiding Principles Considerations
Privacy Considerations
There are three sources of leaks to user private information that need to be considered in any implementation of IdP, user agent or RP:
- The conversation with the IdP is intercepted by a malicious attacker either in the user agent or in transit.
- The information contained in the IdP store is released without authorization.
- The information is contained in a claim that can be read by an attacker as it moves throughout the ecosystem.
Security Considerations
In general security is not considered in this Design Pattern as security will be provided by the same type of credentials, token and claims as used in any secure implementation. One additional wrinkle that is inserted by a PET provider is that the PET provider must have a sufficient level of trust by the user and the relying party to perform the desired function. For more information see the Privacy Enhancing Technologies page.
Interoperability Considerations
User choice depends critically on each relying party making their request in a manner that can be consistently rendered by the user agent in a form that the user can comprehend that can then be matched to information available from the identity, attribute or privacy-enhancing technology provider. It is expected that the individual identity frameworks will provide appropriate interoperability requirements.