|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.opensaml.ws.message.decoder.BaseMessageDecoder org.opensaml.common.binding.decoding.BaseSAMLMessageDecoder org.opensaml.saml1.binding.decoding.BaseSAML1MessageDecoder
public abstract class BaseSAML1MessageDecoder
Base class for SAML 1 message decoders.
Field Summary | |
---|---|
private SAMLArtifactMap |
artifactMap
Map used to map artifacts to SAML. |
private org.slf4j.Logger |
log
Class logger. |
private boolean |
useQueryResourceAsEntityId
Whether to use the resource of an attribute query as the relying party entity ID. |
Constructor Summary | |
---|---|
BaseSAML1MessageDecoder()
Constructor. |
|
BaseSAML1MessageDecoder(ParserPool pool)
Constructor. |
|
BaseSAML1MessageDecoder(SAMLArtifactMap map)
Deprecated. |
|
BaseSAML1MessageDecoder(SAMLArtifactMap map,
ParserPool pool)
Deprecated. |
Method Summary | |
---|---|
void |
decode(MessageContext messageContext)
|
protected void |
extractAssertionArtifactInfo(SAMLMessageContext messageContext,
List<AssertionArtifact> artifacts)
Extract the issuer, and populate message context, as the relying party corresponding to the first AssertionArtifact in the message. |
protected void |
extractAttributeQueryInfo(SAMLMessageContext messageContext,
AttributeQuery query)
Extract the issuer, and populate message context, from the Resource attribute of the Attribute query if useQueryResourceAsEntityId is true. |
protected void |
extractAuthorizationDecisionQueryInfo(SAMLMessageContext messageContext,
AuthorizationDecisionQuery query)
Extract the issuer, and populate message context, from the Resource attribute of the AuthorizationDecisionQuery query if useQueryResourceAsEntityId is true. |
protected void |
extractRequestInfo(SAMLMessageContext messageContext,
RequestAbstractType abstractRequest)
Extract information from a SAML RequestAbstractType message. |
protected void |
extractResponseInfo(SAMLMessageContext messageContext,
Response response)
Extract information from a SAML StatusResponse message. |
SAMLArtifactMap |
getArtifactMap()
Gets the artifact map used to retrieve SAML information from an artifact. |
protected String |
getIntendedDestinationEndpointURI(SAMLMessageContext samlMsgCtx)
Extract the message information which indicates to what receiver endpoint URI the SAML message was intended to be delivered. |
boolean |
getUseQueryResourceAsEntityId()
Gets whether to use the Resource attribute of some SAML 1 queries as the entity ID of the inbound message issuer. |
protected void |
populateMessageContext(SAMLMessageContext messageContext)
Populates the message context with the message ID, issue instant, and issuer as well as the peer's entity descriptor if a metadata provider is present in the message context and the peer's role descriptor if its entity descriptor was retrieved and the message context has a populated peer role name. |
protected void |
populateMessageIdIssueInstantIssuer(SAMLMessageContext messageContext)
Extracts the message ID, issue instant, and issuer from the incoming SAML message and populates the message context with it. |
protected void |
populateRelyingPartyMetadata(SAMLMessageContext messageContext)
Populates the peer's entity metadata if a metadata provide is present in the message context. |
void |
setUseQueryResourceAsEntityId(boolean useResource)
Sets whether to use the Resource attribute of some SAML 1 queries as the entity ID of the inbound message issuer. |
Methods inherited from class org.opensaml.common.binding.decoding.BaseSAMLMessageDecoder |
---|
checkEndpointURI, compareEndpointURIs, getActualReceiverEndpointURI, getURIComparator, isIntendedDestinationEndpointURIRequired, isMessageSigned, setURIComparator |
Methods inherited from class org.opensaml.ws.message.decoder.BaseMessageDecoder |
---|
doDecode, getParserPool, logDecodedMessage, processSecurityPolicy, setParserPool, unmarshallMessage |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.opensaml.common.binding.decoding.SAMLMessageDecoder |
---|
getBindingURI |
Field Detail |
---|
private final org.slf4j.Logger log
private SAMLArtifactMap artifactMap
private boolean useQueryResourceAsEntityId
Constructor Detail |
---|
public BaseSAML1MessageDecoder()
public BaseSAML1MessageDecoder(ParserPool pool)
pool
- parser pool used to deserialize messagespublic BaseSAML1MessageDecoder(SAMLArtifactMap map)
map
- used to map artifacts to SAMLpublic BaseSAML1MessageDecoder(SAMLArtifactMap map, ParserPool pool)
map
- used to map artifacts to SAMLpool
- parser pool used to deserialize messagesMethod Detail |
---|
public void decode(MessageContext messageContext) throws MessageDecodingException, SecurityException
decode
in interface MessageDecoder
decode
in class BaseMessageDecoder
MessageDecodingException
SecurityException
public SAMLArtifactMap getArtifactMap()
public boolean getUseQueryResourceAsEntityId()
public void setUseQueryResourceAsEntityId(boolean useResource)
useResource
- whether to use the Resource attribute of some SAML 1 queries as the entity ID of the inbound
message issuerprotected void populateMessageContext(SAMLMessageContext messageContext) throws MessageDecodingException
messageContext
- message context to populate
MessageDecodingException
- thrown if there is a problem populating the message contextprotected void populateMessageIdIssueInstantIssuer(SAMLMessageContext messageContext) throws MessageDecodingException
messageContext
- current message context
MessageDecodingException
- thrown if there is a problem populating the message contextprotected void extractRequestInfo(SAMLMessageContext messageContext, RequestAbstractType abstractRequest)
messageContext
- current message contextabstractRequest
- the SAML message to processprotected void extractAttributeQueryInfo(SAMLMessageContext messageContext, AttributeQuery query)
useQueryResourceAsEntityId
is true.
messageContext
- current message contextquery
- query to extract resource name fromprotected void extractAuthorizationDecisionQueryInfo(SAMLMessageContext messageContext, AuthorizationDecisionQuery query)
useQueryResourceAsEntityId
is true.
messageContext
- current message contextquery
- query to extract resource name fromprotected void extractAssertionArtifactInfo(SAMLMessageContext messageContext, List<AssertionArtifact> artifacts)
messageContext
- current message contextartifacts
- AssertionArtifacts in the requestprotected void extractResponseInfo(SAMLMessageContext messageContext, Response response) throws MessageDecodingException
messageContext
- current message contextresponse
- the SAML message to process
MessageDecodingException
- thrown if the assertions within the response contain differening issuer IDsprotected void populateRelyingPartyMetadata(SAMLMessageContext messageContext) throws MessageDecodingException
messageContext
- current message context
MessageDecodingException
- thrown if there is a problem populating the message contextprotected String getIntendedDestinationEndpointURI(SAMLMessageContext samlMsgCtx) throws MessageDecodingException
This SAML 1-specific implementation extracts the value of the ResponseAbstractType protocol message Recipient attribute.
getIntendedDestinationEndpointURI
in class BaseSAMLMessageDecoder
samlMsgCtx
- the SAML message context being processed
MessageDecodingException
- thrown if the message is not an instance of SAML message that
could be processed by the decoder
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |