# Package net.shibboleth.idp.saml.nameid.impl

@NonnullElements package net.shibboleth.idp.saml.nameid.impl
Implementation of SAML `NameID` and `NameIdentifier` generation and consumption.

Related Packages
Package
Description
net.shibboleth.idp.saml.nameid
Code for manipulating NameIDs and NameIdentifiers.
Class
Description
AttributeSourcedSAML1NameIdentifierGenerator
Generator for `NameIdentifier` objects based on `IdPAttribute` data.
AttributeSourcedSAML2NameIDGenerator
Generator for `NameID` objects based on `IdPAttribute` data.
BaseCryptoTransientDecoder
An abstract action which contains the logic to do crypto transient decoding matching.
BaseTransformingDecoder
Regular expression, etc.
BaseTransientDecoder
An abstract action which contains the logic to do transient decoding matching (shared between SAML2 and SAML1).
CryptoTransientIdGenerationStrategy
Generates transients using a `DataSealer` to encrypt the result into a recoverable value, for use with stateless clustering.
CryptoTransientNameIDDecoder
Processes a transient `NameID`, checks that its `NameIDType.getNameQualifier()` and `NameIDType.getSPNameQualifier()` are correct, and decodes `XSString.getValue()` via the base class (reversing the work done by `CryptoTransientIdGenerationStrategy`).
CryptoTransientNameIdentifierDecoder
Processes a transient `NameIdentifier`, checks that its `NameIdentifier.getNameQualifier()` is correct, and decodes `XSString.getValue()` via the base class (reversing the work done by `CryptoTransientIdGenerationStrategy`).
NameIDCanonicalization
A `SubjectCanonicalizer` that transforms the input `Subject` into a principal name by searching for one and only one `NameIDPrincipal` custom principal, using an injected `NameIDDecoder` to carry out the process.
NameIdentifierCanonicalization
A `SubjectCanonicalizer` that transforms the input `Subject` into a principal name by searching for one and only one `NameIdentifierPrincipal` custom principal, using an injected `NameIdentifierDecoder` to carry out the process.
NameIdentifierGenerationServiceImpl
Implementation of `NameIdentifierGenerationService`.
PersistentSAML2NameIDGenerator
Generator for "persistent" Format `NameID` objects that provides a source/seed ID based on `IdPAttribute` data.
ProxySAML1NameIdentifierGenerator
A compound implementation of the `SAML1NameIdentifierGenerator` interface that wraps a sequence of candidate generators along with a default to try if no format-specific options are available.
ProxySAML2NameIDGenerator
A compound implementation of the `SAML2NameIDGenerator` interface that wraps a sequence of candidate generators along with a default to try if no format-specific options are available.
StoredPersistentIdDecoder
A decoder which contains the logic to decode SAML persistent IDs that are managed with a `DurablePairwiseIdStore`.
StoredTransientIdGenerationStrategy
Generates transients using a `StorageService` to manage the reverse mappings.
TransformingNameIDDecoder
Transform from a `NameID`.
TransformingNameIdentifierDecoder
Transform from a `NameIdentifier`.
TransientIdGenerationStrategy
Generates and manages transient identifiers according to specific strategies.
TransientIdParameters
The Parameters we need to store in, and get out of a transient ID, namely the attribute recipient (aka the SP) and the principal.
TransientNameIDDecoder
Decodes `XSString.getValue()` via the base class (reversing the work done by `TransientSAML2NameIDGenerator`).
TransientNameIdentifierDecoder
Decodes `XSString.getValue()` via the base class (reversing the work done by `TransientSAML1NameIdentifierGenerator`).
TransientSAML1NameIdentifierGenerator
Generator for transient `NameIdentifier` objects.
TransientSAML2NameIDGenerator
Generator for transient `NameID` objects.