RequestType - type of decoded message@NotThreadSafe public abstract class BaseIdPInitiatedSSORequestMessageDecoder<RequestType> extends AbstractHttpServletRequestMessageDecoder<RequestType>
| Modifier and Type | Field and Description |
|---|---|
private BindingDescriptor |
bindingDescriptor
Optional
BindingDescriptor to inject into
SAMLBindingContext created. |
private IdentifierGenerationStrategy |
idGenerator
ID generator.
|
private org.slf4j.Logger |
log
Class logger.
|
private org.slf4j.Logger |
protocolMessageLog
Used to log protocol messages.
|
static String |
PROVIDER_ID_PARAM
Name of the query parameter carrying the service provider entity ID: "providerId" .
|
static String |
SHIRE_PARAM
Name of the query parameter carrying the service provider's assertion consumer service URL: "shire" .
|
static String |
TARGET_PARAM
Name of the query parameter carrying the service provider's target/RelayState information: "target" .
|
static String |
TIME_PARAM
Name of the query parameter carrying the current time at the service provider: "time" .
|
| Constructor and Description |
|---|
BaseIdPInitiatedSSORequestMessageDecoder() |
| Modifier and Type | Method and Description |
|---|---|
protected IdPInitiatedSSORequest |
buildIdPInitiatedSSORequest()
Build a new IdP-initiated request structure from the inbound HTTP request.
|
void |
decode() |
protected String |
getAcsUrl(javax.servlet.http.HttpServletRequest request)
Gets the assertion consumer service URL for the service provider.
|
BindingDescriptor |
getBindingDescriptor()
Get an optional
BindingDescriptor to inject into
SAMLBindingContextSAMLBindingContext created. |
protected String |
getEntityId(javax.servlet.http.HttpServletRequest request)
Gets the entity ID of the service provider.
|
protected String |
getMessageID()
Construct a message ID for the request.
|
protected abstract String |
getMessageToLog()
Get the string representation of what will be logged as the protocol message.
|
protected String |
getTarget(javax.servlet.http.HttpServletRequest request)
Gets the opaque relay state sent by the service provider.
|
protected Long |
getTime(javax.servlet.http.HttpServletRequest request)
Gets the current time, in milliseconds since the epoch, at the SP, if set.
|
protected void |
logDecodedMessage()
Log the decoded message to the protocol message logger.
|
void |
setBindingDescriptor(BindingDescriptor descriptor)
Set an optional
BindingDescriptor to inject into
SAMLBindingContextSAMLBindingContext created. |
doDestroy, doInitialize, getHttpServletRequest, setHttpServletRequestdoDecode, getMessageContext, setMessageContextdestroy, initialize, isDestroyed, isInitializedclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetMessageContextinitialize, isInitializeddestroy, isDestroyed@Nonnull @NotEmpty public static final String PROVIDER_ID_PARAM
@Nonnull @NotEmpty public static final String SHIRE_PARAM
@Nonnull @NotEmpty public static final String TARGET_PARAM
@Nonnull @NotEmpty public static final String TIME_PARAM
@Nonnull private final org.slf4j.Logger log
@Nullable private BindingDescriptor bindingDescriptor
BindingDescriptor to inject into
SAMLBindingContext created.@Nonnull private final org.slf4j.Logger protocolMessageLog
@Nonnull private final IdentifierGenerationStrategy idGenerator
public BaseIdPInitiatedSSORequestMessageDecoder()
@Nullable public BindingDescriptor getBindingDescriptor()
BindingDescriptor to inject into
SAMLBindingContextSAMLBindingContext created.public void setBindingDescriptor(@Nullable BindingDescriptor descriptor)
BindingDescriptor to inject into
SAMLBindingContextSAMLBindingContext created.descriptor - a binding descriptorpublic void decode()
throws MessageDecodingException
decode in interface MessageDecoder<RequestType>decode in class AbstractHttpServletRequestMessageDecoder<RequestType>MessageDecodingException@Nonnull protected IdPInitiatedSSORequest buildIdPInitiatedSSORequest() throws MessageDecodingException
MessageDecodingException - if the request doesn't contain an entityID@Nonnull @NotEmpty protected String getEntityId(@Nonnull javax.servlet.http.HttpServletRequest request) throws MessageDecodingException
request - current HTTP requestMessageDecodingException - thrown if the request does not contain a service provider entity ID@Nullable protected String getAcsUrl(@Nonnull javax.servlet.http.HttpServletRequest request)
request - current HTTP request@Nullable protected String getTarget(@Nonnull javax.servlet.http.HttpServletRequest request)
request - current HTTP request@Nullable protected Long getTime(@Nonnull javax.servlet.http.HttpServletRequest request) throws MessageDecodingException
request - current HTTP requestMessageDecodingException - thrown if the time parameter given by the service provider is non-numeric or a
negative timeprotected void logDecodedMessage()
@Nonnull protected String getMessageID()
Copyright © 1999–2018 Shibboleth Consortium. All rights reserved.