Class SAMLDataConnector
java.lang.Object
net.shibboleth.shared.component.AbstractInitializableComponent
net.shibboleth.shared.component.AbstractIdentifiedInitializableComponent
net.shibboleth.shared.component.AbstractIdentifiableInitializableComponent
net.shibboleth.idp.attribute.resolver.AbstractResolverPlugin<Map<String,IdPAttribute>>
net.shibboleth.idp.attribute.resolver.AbstractDataConnector
net.shibboleth.idp.attribute.resolver.dc.impl.AbstractSearchDataConnector<ExecutableQuery,ResponseMappingStrategy>
net.shibboleth.idp.attribute.resolver.dc.saml.impl.SAMLDataConnector
- All Implemented Interfaces:
DataConnector,ResolverPlugin<Map<String,,IdPAttribute>> Component,DestructableComponent,IdentifiableComponent,IdentifiedComponent,InitializableComponent,UnmodifiableComponent,DisposableBean
public class SAMLDataConnector
extends AbstractSearchDataConnector<ExecutableQuery,ResponseMappingStrategy>
A
DataConnector implementation which queries a SAML attribute authority for attribute data.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate final classBecause we are a SearchDataConnector we need to have a validator, so this plugs the gap. -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate AssertionValidationProcessorAssertion validation processor.private DecryptionProcessorDecryption processor.private final org.slf4j.LoggerLogger.private SOAPClientSOAP client.private booleanFlag indicating whether to perform matching of Assertion subjects against the value in the query.private SubjectMatchProcessorAssertion validation processor. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidGet the Assertion validation processor.Get the decryption processor.Get the SOAP client instance.Get the Subject match processor.booleanGet the flag indicating whether to perform matching of Assertion subjects against the value in the query.protected voidprocessResponse(ResponseData responseData) Process the SAML response message.protected Map<String,IdPAttribute> retrieveAttributes(ExecutableQuery executable) Attempts to retrieve attributes from the data source.voidSet the Assertion validation processor.voidsetDecryptionProcessor(DecryptionProcessor processor) Set the decryption processor.voidsetSOAPClient(SOAPClient client) Set the SOAP client instance.voidsetSubjectMatch(boolean flag) Set the flag indicating whether to perform matching of Assertion subjects against the value in the query.voidsetSubjectMatchProcessor(SubjectMatchProcessor processor) Set the Subject match processor.Methods inherited from class net.shibboleth.idp.attribute.resolver.dc.impl.AbstractSearchDataConnector
doDataConnectorResolve, getExecutableSearchBuilder, getMappingStrategy, getResultsCache, getValidator, isFailFastInitialize, retrieveAttributes, setExecutableSearchBuilder, setFailFastInitialize, setMappingStrategy, setResultsCache, setValidatorMethods inherited from class net.shibboleth.idp.attribute.resolver.AbstractDataConnector
doResolve, getExportAttributes, getFailoverDataConnectorId, getLastFail, getLastSuccess, getLogPrefix, getNoRetryDelay, setExportAttributes, setFailoverDataConnectorId, setLastFail, setLastSuccess, setNoRetryDelayMethods inherited from class net.shibboleth.idp.attribute.resolver.AbstractResolverPlugin
doDestroy, equals, getActivationCondition, getAttributeDependencies, getDataConnectorDependencies, hashCode, isPropagateResolutionExceptions, resolve, setActivationCondition, setAttributeDependencies, setDataConnectorDependencies, setPropagateResolutionExceptionsMethods 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, initialize, isDestroyed, isInitializedMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.shibboleth.shared.component.DestructableComponent
destroy, isDestroyedMethods inherited from interface org.springframework.beans.factory.DisposableBean
destroyMethods inherited from interface net.shibboleth.shared.component.IdentifiedComponent
getIdMethods inherited from interface net.shibboleth.shared.component.InitializableComponent
initialize, isInitializedMethods inherited from interface net.shibboleth.idp.attribute.resolver.ResolverPlugin
getActivationCondition, getAttributeDependencies, getDataConnectorDependencies, isPropagateResolutionExceptions, resolve
-
Field Details
-
log
@Nonnull private final org.slf4j.Logger logLogger. -
soapClient
SOAP client. -
decryptionProcessor
Decryption processor. -
assertionValidationProcessor
Assertion validation processor. -
subjectMatchProcessor
Assertion validation processor. -
subjectMatch
private boolean subjectMatchFlag indicating whether to perform matching of Assertion subjects against the value in the query.
-
-
Constructor Details
-
SAMLDataConnector
public SAMLDataConnector()Constructor.
-
-
Method Details
-
getSOAPClient
Get the SOAP client instance.- Returns:
- the SOAP client
-
setSOAPClient
Set the SOAP client instance.- Parameters:
client- the SOAP client
-
getDecryptionProcessor
Get the decryption processor.- Returns:
- the decryption processor
-
setDecryptionProcessor
Set the decryption processor.- Parameters:
processor- the Decryption processor
-
getAssertionValidationProcessor
Get the Assertion validation processor.- Returns:
- the Assertion validation processor
-
setAssertionValidationProcessor
Set the Assertion validation processor.- Parameters:
processor- the Assertion validation processor
-
getSubjectMatchProcessor
Get the Subject match processor.- Returns:
- the Subject match processor
-
setSubjectMatchProcessor
Set the Subject match processor.- Parameters:
processor- the Subject match processor
-
isSubjectMatch
public boolean isSubjectMatch()Get the flag indicating whether to perform matching of Assertion subjects against the value in the query.Default is
false.- Returns:
- returns the flag value
-
setSubjectMatch
public void setSubjectMatch(boolean flag) Set the flag indicating whether to perform matching of Assertion subjects against the value in the query.Default is
false.- Parameters:
flag- the flag value
-
doInitialize
- Overrides:
doInitializein classAbstractSearchDataConnector<ExecutableQuery,ResponseMappingStrategy> - Throws:
ComponentInitializationException
-
retrieveAttributes
@Nullable protected Map<String,IdPAttribute> retrieveAttributes(@Nonnull ExecutableQuery executable) throws ResolutionException Attempts to retrieve attributes from the data source.- Specified by:
retrieveAttributesin classAbstractSearchDataConnector<ExecutableQuery,ResponseMappingStrategy> - Parameters:
executable- used to retrieve data from the data source- Returns:
- attributes
- Throws:
ResolutionException- thrown if there is a problem retrieving data from the data source
-
processResponse
Process the SAML response message.- Parameters:
responseData- the response data- Throws:
ResolutionException- if there is a fatal error during processing
-