C# Class dk.nita.saml20.protocol.Saml20SignonHandler

Implements a Saml 2.0 protocol sign-on endpoint. Handles all SAML bindings.
Inheritance: dk.nita.saml20.protocol.Saml20AbstractEndpointHandler
Show file Open project: symplified/Symplified.Auth

Public Methods

Method Description
Saml20SignonHandler ( ) : System

Initializes a new instance of the Saml20SignonHandler class.

Protected Methods

Method Description
Handle ( HttpContext context ) : void

Handles a request.

PreHandleAssertion ( HttpContext context, XmlElement elem, IDPEndPoint endpoint ) : void

Is called before the assertion is made into a strongly typed representation

Private Methods

Method Description
CheckConditions ( HttpContext context, Saml20Assertion assertion ) : void
CheckReplayAttack ( HttpContext context, string inResponseTo ) : void
DoLogin ( HttpContext context, Saml20Assertion assertion ) : void
GetAssertion ( XmlElement el, bool &isEncrypted ) : XmlElement
GetDecodedSamlResponse ( HttpContext context, Encoding encoding ) : XmlDocument
GetDecryptedAssertion ( XmlElement elem ) : Saml20EncryptedAssertion
GetIssuer ( XmlElement assertion ) : string

Retrieves the name of the issuer from an XmlElement containing an assertion.

GetStatusElement ( XmlDocument doc ) : Status
GetTrustedSigners ( ICollection keys, IDPEndPoint ep ) : IEnumerable
HandleArtifact ( HttpContext context ) : void
HandleAssertion ( HttpContext context, XmlElement elem ) : void

Deserializes an assertion, verifies its signature and logs in the user if the assertion is valid.

HandleEncryptedAssertion ( HttpContext context, XmlElement elem ) : void

Decrypts an encrypted assertion, and sends the result to the HandleAssertion method.

HandleResponse ( HttpContext context ) : void

Handle the authentication response from the IDP.

HandleSOAP ( HttpContext context, Stream inputStream ) : void
IsSatisfiedByAllSpecifications ( IDPEndPoint ep, X509Certificate2 cert ) : bool
SendRequest ( HttpContext context ) : void

Send an authentication request to the IDP.

TransferClient ( IDPEndPoint idpEndpoint, Saml20AuthnRequest request, HttpContext context ) : void

Method Details

Handle() protected method

Handles a request.
protected Handle ( HttpContext context ) : void
context System.Web.HttpContext The context.
return void

PreHandleAssertion() protected method

Is called before the assertion is made into a strongly typed representation
protected PreHandleAssertion ( HttpContext context, XmlElement elem, IDPEndPoint endpoint ) : void
context System.Web.HttpContext The httpcontext.
elem System.Xml.XmlElement The assertion element.
endpoint IDPEndPoint The endpoint.
return void

Saml20SignonHandler() public method

Initializes a new instance of the Saml20SignonHandler class.
public Saml20SignonHandler ( ) : System
return System