Class AttributeSourcedSAML2NameIDGenerator
java.lang.Object
net.shibboleth.shared.component.AbstractInitializableComponent
net.shibboleth.shared.component.AbstractIdentifiedInitializableComponent
net.shibboleth.shared.component.AbstractIdentifiableInitializableComponent
org.opensaml.saml.common.profile.AbstractNameIdentifierGenerator<NameID>
org.opensaml.saml.saml2.profile.AbstractSAML2NameIDGenerator
net.shibboleth.idp.saml.nameid.AbstractSAML2NameIDGenerator
net.shibboleth.idp.saml.nameid.impl.AttributeSourcedSAML2NameIDGenerator
- All Implemented Interfaces:
Predicate<ProfileRequestContext>,Component,DestructableComponent,IdentifiableComponent,IdentifiedComponent,InitializableComponent,FormatSpecificNameIdentifierGenerator<NameID>,NameIdentifierGenerator<NameID>,SAML2NameIDGenerator
@ThreadSafeAfterInit
public class AttributeSourcedSAML2NameIDGenerator
extends AbstractSAML2NameIDGenerator
Generator for
NameID objects based on IdPAttribute data.-
Field Summary
FieldsModifier and TypeFieldDescriptionStrategy function to lookup AttributeContext.Attribute(s) to use as an identifier source.private charDelimiter to use for scoped attribute serialization.private final org.slf4j.LoggerClass logger.private booleanWhether to look at filtered or unfiltered attributes. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected NameIDdoGenerate(ProfileRequestContext profileRequestContext) protected voidprotected StringgetIdentifier(ProfileRequestContext profileRequestContext) voidSet the lookup strategy to use to locate theAttributeContext.voidsetAttributeSourceIds(List<String> ids) Set the attribute sources to pull from.voidsetScopedDelimiter(char ch) Set the delimiter to use for serializing scoped attribute values.voidsetUseUnfilteredAttributes(boolean flag) Set whether to source the input attributes from the unfiltered set.Methods inherited from class net.shibboleth.idp.saml.nameid.AbstractSAML2NameIDGenerator
getEffectiveSPNameQualifier, setRelyingPartyContextLookupStrategy, setRequestLookupStrategyMethods inherited from class org.opensaml.saml.common.profile.AbstractNameIdentifierGenerator
generate, getDefaultIdPNameQualifierLookupStrategy, getDefaultSPNameQualifierLookupStrategy, getEffectiveIdPNameQualifier, getFormat, getIdPNameQualifier, getSPNameQualifier, getSPProvidedID, isOmitQualifiers, setActivationCondition, setDefaultIdPNameQualifierLookupStrategy, setDefaultSPNameQualifierLookupStrategy, setFormat, setIdPNameQualifier, setOmitQualifiers, setSPNameQualifier, setSPProvidedId, testMethods inherited from class net.shibboleth.shared.component.AbstractIdentifiableInitializableComponent
setIdMethods inherited from class net.shibboleth.shared.component.AbstractIdentifiedInitializableComponent
ensureId, getId, ifDestroyedThrowDestroyedComponentException, ifInitializedThrowUnmodifiabledComponentException, ifNotInitializedThrowUninitializedComponentExceptionMethods inherited from class net.shibboleth.shared.component.AbstractInitializableComponent
checkComponentActive, checkSetterPreconditions, destroy, doDestroy, initialize, isDestroyed, isInitializedMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.shibboleth.shared.component.IdentifiedComponent
getIdMethods inherited from interface org.opensaml.saml.saml2.profile.SAML2NameIDGenerator
generate
-
Field Details
-
log
@Nonnull private final org.slf4j.Logger logClass logger. -
attributeContextLookupStrategy
Strategy function to lookup AttributeContext. -
useUnfilteredAttributes
private boolean useUnfilteredAttributesWhether to look at filtered or unfiltered attributes. -
delimiter
private char delimiterDelimiter to use for scoped attribute serialization. -
attributeSourceIds
Attribute(s) to use as an identifier source.
-
-
Constructor Details
-
AttributeSourcedSAML2NameIDGenerator
public AttributeSourcedSAML2NameIDGenerator()Constructor.
-
-
Method Details
-
setAttributeContextLookupStrategy
public void setAttributeContextLookupStrategy(@Nonnull Function<ProfileRequestContext, AttributeContext> strategy) Set the lookup strategy to use to locate theAttributeContext.- Parameters:
strategy- lookup function to use
-
setScopedDelimiter
public void setScopedDelimiter(char ch) Set the delimiter to use for serializing scoped attribute values.- Parameters:
ch- scope to set
-
setAttributeSourceIds
Set the attribute sources to pull from.- Parameters:
ids- attribute IDs to pull from
-
setUseUnfilteredAttributes
public void setUseUnfilteredAttributes(boolean flag) Set whether to source the input attributes from the unfiltered set.- Parameters:
flag- flag to set
-
doInitialize
- Overrides:
doInitializein classAbstractIdentifiedInitializableComponent- Throws:
ComponentInitializationException
-
doGenerate
@Nullable protected NameID doGenerate(@Nonnull ProfileRequestContext profileRequestContext) throws SAMLException - Overrides:
doGeneratein classAbstractSAML2NameIDGenerator- Throws:
SAMLException
-
getIdentifier
@Nullable protected String getIdentifier(@Nonnull ProfileRequestContext profileRequestContext) throws SAMLException - Overrides:
getIdentifierin classAbstractNameIdentifierGenerator<NameID>- Throws:
SAMLException
-