opensaml-3.2.1
opensaml::MessageDecoder::ArtifactResolver Class Referenceabstract

Interface to caller-supplied artifact resolution mechanism. More...

#include <saml/binding/MessageDecoder.h>

Public Member Functions

virtual saml1p::Response * resolve (const std::vector< SAMLArtifact *> &artifacts, const saml2md::IDPSSODescriptor &idpDescriptor, SecurityPolicy &policy) const =0
 Resolves one or more SAML 1.x artifacts into a response containing a set of resolved Assertions. More...
 
virtual saml2p::ArtifactResponse * resolve (const saml2p::SAML2Artifact &artifact, const saml2md::SSODescriptorType &ssoDescriptor, SecurityPolicy &policy) const =0
 Resolves a SAML 2.0 artifact into the corresponding SAML protocol message. More...
 
virtual bool isSupported (const saml2md::SSODescriptorType &ssoDescriptor) const
 Returns true iff the metadata provided includes a supported artifact resolution service. More...
 

Detailed Description

Interface to caller-supplied artifact resolution mechanism.

Resolving artifacts requires internally performing a SOAP-based call to the artifact source, usually in a mutually authenticated fashion. The potential options vary widely, so the work is encapsulated by this interface, though of course other library facilities may be used.

A MessageDecoder implementation will invoke the supplied interface when it requires an artifact be resolved.

Member Function Documentation

◆ isSupported()

virtual bool opensaml::MessageDecoder::ArtifactResolver::isSupported ( const saml2md::SSODescriptorType &  ssoDescriptor) const
virtual

Returns true iff the metadata provided includes a supported artifact resolution service.

Parameters
ssoDescriptorreference to SSO role of artifact issuer (may be SP or IdP)
Returns
true iff the artifact issuer offers endpoints supported by this resolver

◆ resolve() [1/2]

virtual saml1p::Response* opensaml::MessageDecoder::ArtifactResolver::resolve ( const std::vector< SAMLArtifact *> &  artifacts,
const saml2md::IDPSSODescriptor &  idpDescriptor,
SecurityPolicy policy 
) const
pure virtual

Resolves one or more SAML 1.x artifacts into a response containing a set of resolved Assertions.

The caller is responsible for the resulting Response. The supplied SecurityPolicy is used to access caller-supplied infrastructure and to pass back the result of authenticating the resolution process.

Parameters
artifactsone or more SAML 1.x artifacts
idpDescriptorreference to IdP role of artifact issuer
policyreference to policy containing rules, MetadataProvider, TrustEngine, etc.
Returns
the corresponding SAML Assertions wrapped in a Response.

◆ resolve() [2/2]

virtual saml2p::ArtifactResponse* opensaml::MessageDecoder::ArtifactResolver::resolve ( const saml2p::SAML2Artifact artifact,
const saml2md::SSODescriptorType &  ssoDescriptor,
SecurityPolicy policy 
) const
pure virtual

Resolves a SAML 2.0 artifact into the corresponding SAML protocol message.

The caller is responsible for the resulting ArtifactResponse message. The supplied SecurityPolicy is used to access caller-supplied infrastructure and to pass back the result of authenticating the resolution process.

Parameters
artifactreference to a SAML 2.0 artifact
ssoDescriptorreference to SSO role of artifact issuer (may be SP or IdP)
policyreference to policy containing rules, MetadataProvider, TrustEngine, etc.
Returns
the corresponding SAML protocol message or nullptr

The documentation for this class was generated from the following file: