wai-saml2-0.5: SAML2 assertion validation as WAI middleware
Safe HaskellSafe-Inferred
LanguageHaskell2010

Network.Wai.SAML2.StatusCode

Description

The SAML2 specification distinguishes between the topmost status code, which is required and must contain a status value from a specific list of status codes, and subordinate status codes, which are optional and may contain arbitrary URIs.

Synopsis

Documentation

data StatusCode Source #

Represents SAML2 status codes, which are comprised of a status value and an optional, subordinate status.

Constructors

MkStatusCode 

Fields

Instances

Instances details
Show StatusCode Source # 
Instance details

Defined in Network.Wai.SAML2.StatusCode

Eq StatusCode Source # 
Instance details

Defined in Network.Wai.SAML2.StatusCode

FromXML StatusCode Source # 
Instance details

Defined in Network.Wai.SAML2.StatusCode

data StatusCodeValue Source #

Enumerates SAML2 status code values.

Since: 0.4

Constructors

Success

The response indicates success!

Requester

The request could not be performed due to an error on the part of the requester.

Responder

The request could not be performed due to an error on the part of the SAML responder or SAML authority.

VersionMismatch

The SAML responder could not process the request because the version of the request message was incorrect.

AuthnFailed

The responding provider was unable to successfully authenticate the principal.

InvalidAttrNameOrValue

Unexpected or invalid content was encountered within a <saml:Attribute> or <saml:AttributeValue> element.

InvalidNameIDPolicy

The responding provider cannot or will not support the requested name identifier policy.

NoAuthnContext

The specified authentication context requirements cannot be met by the responder.

NoAvailableIDP

Used by an intermediary to indicate that none of the supported identity provider <Loc> elements in an <IDPList> can be resolved or that none of the supported identity providers are available.

NoPassive

Indicates the responding provider cannot authenticate the principal passively, as has been requested.

NoSupportedIDP

Used by an intermediary to indicate that none of the identity providers in an <IDPList> are supported by the intermediary.

PartialLogout

Used by a session authority to indicate to a session participant that it was not able to propagate logout to all other session participants.

ProxyCountExceeded

Indicates that a responding provider cannot authenticate the principal directly and is not permitted to proxy the request further.

RequestDenied

The SAML responder or SAML authority is able to process the request but has chosen not to respond. This status code MAY be used when there is concern about the security context of the request message or the sequence of request messages received from a particular requester.

RequestUnsupported

The SAML responder or SAML authority does not support the request.

RequestVersionDeprecated

The SAML responder cannot process any requests with the protocol version specified in the request.

RequestVersionTooHigh

The SAML responder cannot process the request because the protocol version specified in the request message is a major upgrade from the highest protocol version supported by the responder.

RequestVersionTooLow

The SAML responder cannot process the request because the protocol version specified in the request message is too low.

ResourceNotRecognized

The resource value provided in the request message is invalid or unrecognized.

TooManyResponses

The response message would contain more elements than the SAML responder is able to return.

UnknownAttrProfile

An entity that has no knowledge of a particular attribute profile has been presented with an attribute drawn from that profile.

UnknownPrincipal

The responding provider does not recognize the principal specified or implied by the request.

UnsupportedBinding

The SAML responder cannot properly fulfil the request using the protocol binding specified in the request.

OtherStatus URI

The SAML2 specification notes that a status code value can be any valid URI and that additional subordinate status codes may be introduced in the future.