<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Sustainsys.Saml2</name>
    </assembly>
    <members>
        <member name="T:Sustainsys.Saml2.CertificateStatus">
            <summary>
            Is this certificate for current or future use?
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.CertificateStatus.Current">
            <summary>
            The certificate is used for current requests
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.CertificateStatus.Future">
            <summary>
            The certificate is used for current and/or future requests
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.CertificateUse">
            <summary>
            How is the certificate used?
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.CertificateUse.Both">
            <summary>
            The certificate is used for either signing or encryption, or both.
            Equivalent to Signing | Encryption.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.CertificateUse.Signing">
            <summary>
            The certificate is used for signing outbound requests
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.CertificateUse.Encryption">
            <summary>
            The certificate is used for decrypting inbound assertions
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.CertificateUse.TlsClient">
            <summary>
            The certificate is used as a Tls Client certificate for outbound
            tls requests.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.ClaimsExtensions">
            <summary>
            Extension methods for claims.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.ClaimsExtensions.ToSaml2NameIdentifier(System.Security.Claims.Claim)">
            <summary>
            Create a Saml2NameIdentifier from a claim.
            </summary>
            <param name="claim">Name identifier or Saml2 logout info claim.</param>
            <returns>Saml2NameIdentifier</returns>
            <remarks>The field order is:NameQualifier,SPNameQualifier,Format,SPProvidedID,Value</remarks>
        </member>
        <member name="T:Sustainsys.Saml2.ClaimsIdentityExtensions">
            <summary>
            Extension methods for Claims Identities
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.ClaimsIdentityExtensions.ToSaml2Assertion(System.Security.Claims.ClaimsIdentity,Sustainsys.Saml2.Metadata.EntityId)">
            <summary>
            Creates a Saml2Assertion from a ClaimsIdentity.
            </summary>
            <param name="identity">Claims to include in Assertion.</param>
            <param name="issuer">Issuer to include in assertion.</param>
            <returns>Saml2Assertion</returns>
        </member>
        <member name="M:Sustainsys.Saml2.ClaimsIdentityExtensions.ToSaml2Assertion(System.Security.Claims.ClaimsIdentity,Sustainsys.Saml2.Metadata.EntityId,System.Uri)">
            <summary>
            Creates a Saml2Assertion from a ClaimsIdentity.
            </summary>
            <param name="identity">Claims to include in Assertion.</param>
            <param name="issuer">Issuer to include in assertion.</param>
            <param name="audience">Audience to set as audience restriction.</param>
            <returns>Saml2Assertion</returns>
        </member>
        <member name="M:Sustainsys.Saml2.ClaimsIdentityExtensions.ToSaml2Assertion(System.Security.Claims.ClaimsIdentity,Sustainsys.Saml2.Metadata.EntityId,System.Uri,Microsoft.IdentityModel.Tokens.Saml2.Saml2Id,System.Uri)">
            <summary>
            Creates a Saml2Assertion from a ClaimsIdentity.
            </summary>
            <param name="identity">Claims to include in Assertion.</param>
            <param name="issuer">Issuer to include in assertion.</param>
            <param name="audience">Audience to set as audience restriction.</param>
            <param name="inResponseTo">In response to id</param>
            <param name="destinationUri">The destination Uri for the message</param>
            <returns>Saml2Assertion</returns>
            <exception cref="T:System.ArgumentNullException"></exception>
        </member>
        <member name="M:Sustainsys.Saml2.ClaimsIdentityExtensions.ToSaml2NameIdentifier(System.Security.Claims.ClaimsIdentity)">
            <summary>
            Create a Saml2NameIdentifier from the identity.
            </summary>
            <param name="identity">Identity to get NameIdentifier claim from.</param>
            <returns>Saml2NameIdentifier</returns>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.ArtifactResolutionServiceCollection">
            <summary>
            Config collection of ArtifactResolutionElements.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.ArtifactResolutionServiceCollection.CreateNewElement">
            <summary>
            Factory for element type.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.ArtifactResolutionServiceCollection.GetElementKey(System.Configuration.ConfigurationElement)">
            <summary>
            Get an identifying key of the element.
            </summary>
            <param name="element">Element</param>
            <returns>Index of endpoint</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.ArtifactResolutionServiceCollection.GetEnumerator">
            <summary>
            Generic enumerator.
            </summary>
            <returns>Generic enumerator</returns>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.ArtifactResolutionServiceElement">
            <summary>
            Configuration of an artifact resolution service endpoint on an idp.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.ArtifactResolutionServiceElement.Index">
            <summary>
            Index of the artifact resolution service endpoint.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.ArtifactResolutionServiceElement.Location">
            <summary>
            Location of the endpoint.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.CertificateCollection">
            <summary>
            Collection of certificate elements.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.CertificateCollection.CreateNewElement">
            <summary>
            Create a new element of the right type.
            </summary>
            <returns>A new certificate element</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.CertificateCollection.GetElementKey(System.Configuration.ConfigurationElement)">
            <summary>
            Get the key of an element.
            </summary>
            <param name="element">Element to get key of.</param>
            <returns>A guid. There is no support for removing items and we
            want this to be unique.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.CertificateCollection.GetEnumerator">
            <summary>
            Get enumerator for the elements.
            </summary>
            <returns></returns>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.CertificateElement">
            <summary>
            Config element for the signing certificate.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.CertificateElement.IsReadOnly">
            <summary>
            Allows local modification of the configuration for testing purposes
            </summary>
            <returns></returns>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.CertificateElement.FileName">
            <summary>
            File name of cert stored in file.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.CertificateElement.StoreName">
            <summary>
            Store name to search.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.CertificateElement.StoreLocation">
            <summary>
            Store location to search.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.CertificateElement.FindValue">
            <summary>
            The search term used for searching the certificate store.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.CertificateElement.X509FindType">
            <summary>
            Find type, what field to search.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.CertificateElement.LoadCertificate">
            <summary>
            Load the certificate pointed to by this configuration.
            </summary>
            <returns>Certificate</returns>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.Compatibility">
            <summary>
            Compatibility settings. Can be used to make Saml2 accept
            certain non-standard behaviour.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.Compatibility.#ctor">
            <summary>
            Ctor
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.Compatibility.#ctor(Sustainsys.Saml2.Configuration.CompatibilityElement)">
            <summary>
            Ctor
            </summary>
            <param name="configElement">Config element to load</param>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Compatibility.UnpackEntitiesDescriptorInIdentityProviderMetadata">
            <summary>
            If an EntitiesDescriptor element is found when loading metadata
            for an IdentityProvider, automatically check inside it if there
            is a single EntityDescriptor and in that case use it.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Compatibility.DisableLogoutStateCookie">
            <summary>
            Do not send logout state cookie, e.g. if you are not using ReturnUrl
            or if you know the cookie will be lost due to cross-domain redirects
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Compatibility.StrictOwinAuthenticationMode">
            <summary>
            Honor the owin authentication mode even on logout. Normally the logout
            handling is always done as if the middleware was active, to allow for
            simple sign out without specifying an auth type.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Compatibility.IgnoreAuthenticationContextInResponse">
            <summary>
            Do not read the AuthnContext element in Saml2Response.
            If you do not need these values to be present as claims in the generated
            identity, using this option can prevent XML format errors (IDX13102)
            e.g. when value cannot parse as absolute URI
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Compatibility.IgnoreMissingInResponseTo">
            <summary>
            Ignore the check for the missing InResponseTo attribute in the Saml response.
            This is different to setting the allowUnsolicitedAuthnResponse as it will only
            ignore the InResponseTo attribute if there is no relayState. Setting
            IgnoreMissingInResponseTo to true will always skip the check.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Compatibility.EnableLogoutOverPost">
            <summary>
            Handling logout requires access to the authenticated user session. If logout
            is done over the POST binding, the session cookie must have SameSite=None
            set (which is probably a bad idea). To avoid problems, disable logout
            over POST in metadata by default.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Compatibility.AcceptUnsignedLogoutResponses">
            <summary>
            SAML2 Specs says in section 4.4.4.2:
            "... The responder MUST authenticate itself to the requester and ensure message integrity, either by signing the message or using a binding-specific mechanism."
            
            Unfortunately not all IDP seem to follow the specification. Disables requirement for a signed LogoutResponse.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.CompatibilityElement">
            <summary>
            Compatibility settings. Can be used to make Saml2 accept
            certain non-standard behaviour.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.CompatibilityElement.IsReadOnly">
            <summary>
            Used for testing, always returns true in production.
            </summary>
            <returns>Returns true (unless during tests)</returns>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.CompatibilityElement.UnpackEntitiesDescriptorInIdentityProviderMetadata">
            <summary>
            If an EntitiesDescriptor element is found when loading metadata
            for an IdentityProvider, automatically check inside it if there
            is a single EntityDescriptor and in that case use it.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.CompatibilityElement.DisableLogoutStateCookie">
            <summary>
            Do not send logout state cookie, e.g. if you are not using ReturnUrl
            or if you know the cookie will be lost due to cross-domain redirects
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.CompatibilityElement.IgnoreMissingInResponseTo">
            <summary>
            Ignore the check for the missing InResponseTo attribute in the Saml response.
            This is different to setting the allowUnsolicitedAuthnResponse as it will only
            ignore the InResponseTo attribute if there is no relayState. Setting
            IgnoreMissingInResponseTo to true will always skip the check.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.ConfiguredAndLoadedSigningKeysCollection">
            <summary>
            Collection of items with two sources: configured and loaded dyanically.
            The dynamically loaded can reset while the configured are kept.
            metadata.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.ConfiguredAndLoadedSigningKeysCollection.AddConfiguredKey(Sustainsys.Saml2.Tokens.SecurityKeyIdentifierClause)">
            <summary>
            Add a configured key.
            </summary>
            <param name="key">Key to add.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.ConfiguredAndLoadedSigningKeysCollection.AddConfiguredKey(System.Security.Cryptography.X509Certificates.X509Certificate2)">
            <summary>
            Add a configured certificate.
            </summary>
            <param name="certificate">Certificate to add.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.ConfiguredAndLoadedSigningKeysCollection.SetLoadedItems(System.Collections.Generic.IList{Sustainsys.Saml2.Tokens.SecurityKeyIdentifierClause})">
            <summary>
            Set the complete set of loaded items keys. Previously loaded items
            are cleared, configured items remain.
            </summary>
            <param name="items">Items to set</param>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.ConfiguredAndLoadedSigningKeysCollection.LoadedItems">
            <summary>
            The loaded items.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.ConfiguredAndLoadedSigningKeysCollection.GetEnumerator">
            <summary>
            Gets an enumerator to the combined set of keys.
            </summary>
            <returns>Enumerator</returns>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.ContactPersonElement">
            <summary>
            Contact person for a SAML2 entity.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.ContactPersonElement.ContactType">
            <summary>
            The type of this contact. A value from the 
            System.IdentityModel.Metadata.ContactType enumeration.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.ContactPersonElement.Company">
            <summary>
            Name of the company of the contact.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.ContactPersonElement.GivenName">
            <summary>
            Given name of the contact.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.ContactPersonElement.Surname">
            <summary>
            Surname of the contact.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.ContactPersonElement.PhoneNumber">
            <summary>
            Phone number of the contact.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.ContactPersonElement.Email">
            <summary>
            E-mail of the contact.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.ContactPersonsCollection">
            <summary>
            Config collection of contacts.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.ContactPersonsCollection.CreateNewElement">
            <summary>
            Create a new element of the right type.
            </summary>
            <returns>A new ContactPersonElement.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.ContactPersonsCollection.GetElementKey(System.Configuration.ConfigurationElement)">
            <summary>
            Get the key of an element.
            </summary>
            <param name="element">Element to get key of.</param>
            <returns>A guid. There is no support for removing items and we
            want this to be unique.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.ContactPersonsCollection.GetEnumerator">
            <summary>
            Get enumerator for the elements.
            </summary>
            <returns></returns>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.EntityIdConverter">
            <summary>
            Converts between string and EntityId, used by the configuration system to
            allow configuration properties of type EntityId.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.EntityIdConverter.ConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object)">
            <summary>
            Converts a string to an EntityId
            </summary>
            <param name="context">Ignored</param>
            <param name="culture">Ignored</param>
            <param name="value">String to convert</param>
            <returns>EntityID</returns>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.FederationCollection">
            <summary>
            Config collection of federations.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.FederationCollection.CreateNewElement">
            <summary>
            Create new elemnt of the right type.
            </summary>
            <returns>FederationElement</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.FederationCollection.GetElementKey(System.Configuration.ConfigurationElement)">
            <summary>
            Get the key of an element, which is the metadata url.
            </summary>
            <param name="element">FedertionElement</param>
            <returns></returns>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.FederationCollection.GetEnumerator">
            <summary>
            Generic IEnumerable implementation.
            </summary>
            <returns>Enumerator</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.FederationCollection.RegisterFederations(Sustainsys.Saml2.Configuration.IOptions)">
            <summary>
            Registers the identity providers from the configured federations in the identity provider dictionary.
            </summary>
            <param name="options">Current options.</param>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.FederationElement">
            <summary>
            Configuration of a federation.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.FederationElement.MetadataLocation">
            <summary>
            Location (url, local path or app relative path such as ~/App_Data)
            where metadata is located.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.FederationElement.AllowUnsolicitedAuthnResponse">
            <summary>
            Are unsolicited responses from the idps in the federation allowed?
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.FederationElement.SigningCertificates">
            <summary>
            Signing certificates for the federation
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.IdentityProviderCollection">
            <summary>
            Config collection of IdentityProviderElements.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.IdentityProviderCollection.CreateNewElement">
            <summary>
            Create new element of right type.
            </summary>
            <returns>IdentityProviderElement</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.IdentityProviderCollection.GetElementKey(System.Configuration.ConfigurationElement)">
            <summary>
            Get the name of an element.
            </summary>
            <param name="element">IdentityProviderElement</param>
            <returns>element.Name</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.IdentityProviderCollection.GetEnumerator">
            <summary>
            Get a strongly typed enumerator.
            </summary>
            <returns>Strongly typed enumerator.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.IdentityProviderCollection.RegisterIdentityProviders(Sustainsys.Saml2.Configuration.IOptions)">
            <summary>
            Register the configured identity providers in the dictionary of active idps.
            </summary>
            <param name="options">Current options.</param>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.IdentityProviderDictionary">
            <summary>
            A thread safe wrapper around a dictionary for the identity providers.
            </summary>
            <remarks>
            First I thought about using a ConcurrentDictionary, but that does not maintain
            any order of the added objects. Since the first idp added becomes the default idp,
            the order must be preserved. And there has to be queuing semantics if the first idp
            is dynamically loaded from a federation and later removed. Locks are simple and
            this part of the code shouldn't be that performance sensitive.
            </remarks>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.IdentityProviderDictionary.Item(Sustainsys.Saml2.Metadata.EntityId)">
            <summary>
            Gets an idp from the entity id.
            </summary>
            <param name="entityId">entity Id to look up.</param>
            <returns>IdentityProvider</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.IdentityProviderDictionary.Add(Sustainsys.Saml2.IdentityProvider)">
            <summary>
            Add an identity provider to the collection..
            </summary>
            <param name="idp">Identity provider to add.</param>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.IdentityProviderDictionary.Default">
            <summary>
            The default identity provider; i.e. the first registered of the currently known.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.IdentityProviderDictionary.KnownIdentityProviders">
            <summary>
            Gets all currently known identity providers. Note that the returned
            enumeration is a copy to avoid race conditions.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.IdentityProviderDictionary.TryGetValue(Sustainsys.Saml2.Metadata.EntityId,Sustainsys.Saml2.IdentityProvider@)">
            <summary>
            Try to get the value of an idp with a given entity id.
            </summary>
            <param name="idpEntityId">Entity id to search for.</param>
            <param name="idp">The idp, if found.</param>
            <returns>True if an idp with the given entity id was found.</returns>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.IdentityProviderDictionary.IsEmpty">
            <summary>
            Checks if there are no known identity providers.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.IdentityProviderDictionary.Remove(Sustainsys.Saml2.Metadata.EntityId)">
            <summary>
            Removes the idp with the given entity id, if present. If no such
            entity is found, nothing is done.
            </summary>
            <param name="idp">EntityId of idp to remove.</param>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.IdentityProviderElement">
            <summary>
            Config element for the identity provider element.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.IdentityProviderElement.IsReadOnly">
            <summary>
            Allows local modification of the configuration for testing purposes
            </summary>
            <returns></returns>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.IdentityProviderElement.EntityId">
            <summary>
            EntityId as presented by the idp. Used as key to configuration.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.IdentityProviderElement.SignOnUrl">
            <summary>
            Destination url to send sign in requests to.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.IdentityProviderElement.LogoutUrl">
            <summary>
            Single logout url endpoint of Idp.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.IdentityProviderElement.Binding">
            <summary>
            The binding to use when sending requests to the Idp.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.IdentityProviderElement.SigningCertificate">
            <summary>
            Certificate location for the certificate the Idp uses to sign its messages.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.IdentityProviderElement.OutboundSigningAlgorithm">
            <summary>
            Signing algorithm for outbound messages to this Idp. Overrides the
            main signature algorithm configured in <see cref="T:Sustainsys.Saml2.Configuration.SPOptions"/>.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.IdentityProviderElement.AllowUnsolicitedAuthnResponse">
            <summary>
            Allow unsolicited responses. That is InResponseTo is missing in the AuthnRequest.
            If true InResponseTo is not required.
            If false InResponseTo is required.
            Even though AllowUnsolicitedAuthnResponse is true the InResponseTo must be valid if existing.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.IdentityProviderElement.LoadMetadata">
            <summary>
            Enable automatic downloading of metadata form the well-known uri (i.e. interpret
            the EntityID as an uri and download metadata from it).
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.IdentityProviderElement.MetadataLocation">
            <summary>
            Metadata location url to be used for automatic downloading of metadata.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.IdentityProviderElement.ArtifactResolutionServices">
            <summary>
            Artifact Resolution endpoints for the identity provider.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.IdentityProviderElement.WantAuthnRequestsSigned">
            <summary>
            Does this Idp want the AuthnRequests to be signed?
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.IdentityProviderElement.DisableOutboundLogoutRequests">
            <summary>
            Disable outbound logout requests to this idp, even though
            Saml2 is configured for single logout and the idp supports
            it. This setting might be usable when adding SLO to an existing
            setup, to ensure that everyone is ready for SLO before activating.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.IdentityProviderElement.RelayStateUsedAsReturnUrl">
            <summary>
            Indicates that the IDP sends the return url as part of the RelayState.
            This is used when <see cref="P:Sustainsys.Saml2.Configuration.IdentityProviderElement.AllowUnsolicitedAuthnResponse"/> is enabled.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.IOptions">
            <summary>
            Root interface for the options objects, handling all configuration of
            Saml2.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.IOptions.SPOptions">
            <summary>
            Options for the service provider's behaviour; i.e. everything except
            the idp list and the notifications.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.IOptions.IdentityProviders">
            <summary>
            Information about known identity providers.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.IOptions.Notifications">
            <summary>
            Set of callbacks that can be used as extension points for various
            events.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.MetadataElement">
            <summary>
            Metadata configuration.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.MetadataElement.AllowChange">
            <summary>
            Used by tests to write-enable config.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.MetadataElement.IsReadOnly">
            <summary>
            Is the element contents read only? Always true in production, but
            can be changed during tests.
            </summary>
            <returns>Is the element contents read only?</returns>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.MetadataElement.Organization">
            <summary>
            Information about organization.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.MetadataElement.CacheDuration">
            <summary>
            Optional attribute that describes for how long anyone may cache the metadata
            presented by the service provider. Defaults to 1 hour.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.MetadataElement.ValidUntil">
            <summary>
            How long after generation should the metadata be valid?
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.MetadataElement.Contacts">
            <summary>
            Collection of contacts.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.MetadataElement.RequestedAttributes">
            <summary>
            Requested attributes of the service provider.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.MetadataElement.WantAssertionsSigned">
            <summary>
            Metadata flag that we want assertions to be signed.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.NameIdPolicyElement">
            <summary>
            NamedId policy configuration element.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.NameIdPolicyElement.AllowCreate">
            <summary>
            Allow create.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.NameIdPolicyElement.Format">
            <summary>
            The NameId format.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.Options">
            <summary>
            Options implementation for handling in memory options.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Options.Notifications">
            <summary>
            Set of callbacks that can be used as extension points for various
            events.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Options.FromConfiguration">
            <summary>
            Reads the options from the current config file.
            </summary>
            <returns>Options object.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.Options.#ctor(Sustainsys.Saml2.Configuration.SPOptions)">
            <summary>
            Creates an options object with the specified SPOptions.
            </summary>
            <param name="spOptions"></param>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Options.SPOptions">
            <summary>
            Options for the service provider's behaviour; i.e. everything except
            the idp and federation list.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Options.IdentityProviders">
            <summary>
            Available identity providers.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.OrganizationElement">
            <summary>
            Information about the organization responsible for the entity.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.OrganizationElement.IsReadOnly">
            <summary>
            Is this section readonly?
            </summary>
            <returns>Is this section readonly?</returns>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.OrganizationElement.Name">
            <summary>
            Name of the organization.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.OrganizationElement.DisplayName">
            <summary>
            Display name of the organization.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.OrganizationElement.Url">
            <summary>
            Url of the organization.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.OrganizationElement.Language">
            <summary>
            The language that should be used for the organization strings.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.RequestedAttributeElement">
            <summary>
            Config for a requested element in the SPs metadata.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.RequestedAttributeElement.Name">
            <summary>
            Name of the attribute. Usually on the form urn:oid:....
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.RequestedAttributeElement.FriendlyName">
            <summary>
            Friendly, human readable name of the attribute.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.RequestedAttributeElement.NameFormat">
            <summary>
            Format of the Name property, one of the standard Uris in the saml specification.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.RequestedAttributeElement.IsRequired">
            <summary>
            Is this attribute required by the SP for it to work correctly?
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.RequestedAttributesCollection">
            <summary>
            Collection of requested attributes that an SP wants in incoming assertions.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.RequestedAttributesCollection.CreateNewElement">
            <summary>
            Create a new element of the right type.
            </summary>
            <returns>A new RequestedAttributeElement</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.RequestedAttributesCollection.GetElementKey(System.Configuration.ConfigurationElement)">
            <summary>
            Get the key of an element.
            </summary>
            <param name="element">Element to get key of.</param>
            <returns>The name of the requested attribute.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.RequestedAttributesCollection.GetEnumerator">
            <summary>
            Get a generic enumerator to the collection.
            </summary>
            <returns>Generic enumerator</returns>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.RequestedAuthnContextElement">
            <summary>
            Configuration of RequestedAuthnContext in generated AuthnRequests.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.RequestedAuthnContextElement.IsReadOnly">
            <summary>
            Used for testing, always returns true in production.
            </summary>
            <returns>Returns true (unless during tests)</returns>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.RequestedAuthnContextElement.AuthnContextClassRef">
            <summary>
            AuthnContextClassRef. Either a full URL or the last word of a
            standard URL.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.RequestedAuthnContextElement.Comparison">
            <summary>
            Comparison mode of AuthnContextClassRef
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.Saml2Notifications">
            <summary>
            Set of callbacks that can be used as extension points for various
            events.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Saml2Notifications.AuthenticationRequestCreated">
            <summary>
            Notification called when a <see cref="T:Sustainsys.Saml2.Saml2P.Saml2AuthenticationRequest"/>
            has been created. The authenticationrequest can be amended and
            modified.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Saml2Notifications.SignInCommandResultCreated">
            <summary>
            Notification called when the SignIn command has produced a
            <see cref="T:Sustainsys.Saml2.WebSso.CommandResult"/>, but before anything has been applied
            to the outgoing response. Set the <see cref="P:Sustainsys.Saml2.WebSso.CommandResult.HandledResult"/>
            flag to suppress the library's built in apply functionality to the
            outgoing response.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Saml2Notifications.SelectIdentityProvider">
            <summary>
            Notification called when the SignIn command is about to select
            what Idp to use for the request. The EntityId is the one supplied
            (e.g. through query string). To select a specicic IdentityProvider
            simply return it. Return <code>null</code> to fall back to built
            in selection.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Saml2Notifications.EmitSameSiteNone">
            <summary>
            Notification called to decide if a SameSite=None attribute should
            be set for a cookie. The default implementation is based on the pseudo
            code in https://devblogs.microsoft.com/aspnet/upcoming-samesite-cookie-changes-in-asp-net-and-asp-net-core/
            More covering code can be found at 
            https://www.chromium.org/updates/same-site/incompatible-clients but that cannot
            be shipped with the library due to the license.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Saml2Notifications.GetLogoutResponseState">
            <summary>
            Notification called when the logout command is about to use the 
            <code>StoredRequestState</code> derived from the request's RelayState data.
            Return a different StoredRequestState if you would like to customize the 
            RelayState lookup. 
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Saml2Notifications.GetPublicOrigin">
            <summary>
            Notification called when a command is about to construct a fully-qualified url
            Return a non-null Uri if you need to override this per request. Otherwise
            it will fall back to the normal logic that checks the request Uri 
            and the SPOptions.PublicOrigin setting
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Saml2Notifications.ProcessSingleLogoutResponseStatus">
            <summary>
            Notification called when single logout status is returned from IDP.
            Return true to indicate that your notification has handled this status. Otherwise
            it will fall back to the normal status processing logic.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Saml2Notifications.GetBinding">
            <summary>
            Get a binding that can unbind data from the supplied request. The
            default is to use <see cref="M:Sustainsys.Saml2.WebSso.Saml2Binding.Get(Sustainsys.Saml2.WebSso.HttpRequestData)"/>
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Saml2Notifications.MessageUnbound">
            <summary>
            Notification called when the command has extracted data from
            request (by using <see cref="M:Sustainsys.Saml2.WebSso.Saml2Binding.Unbind(Sustainsys.Saml2.WebSso.HttpRequestData,Sustainsys.Saml2.Configuration.IOptions)"/>)
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Saml2Notifications.AcsCommandResultCreated">
            <summary>
            Notification called when the ACS command has produced a
            <see cref="T:Sustainsys.Saml2.WebSso.CommandResult"/>, but before anything has been applied
            to the outgoing response. Set the <see cref="P:Sustainsys.Saml2.WebSso.CommandResult.HandledResult"/>
            flag to suppress the library's built in apply functionality to the
            outgoing response.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Saml2Notifications.LogoutCommandResultCreated">
            <summary>
            Notification called when the Logout command has produced a
            <see cref="T:Sustainsys.Saml2.WebSso.CommandResult"/>, but before anything has been applied
            to the outgoing response. Set the <see cref="P:Sustainsys.Saml2.WebSso.CommandResult.HandledResult"/>
            flag to suppress the library's built in apply functionality to the
            outgoing response.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Saml2Notifications.LogoutRequestCreated">
            <summary>
            Notification called when a logout request is created to initiate single log
            out with an identity provider.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Saml2Notifications.LogoutRequestXmlCreated">
            <summary>
            Notification called when a logout request has been transformed to an XML node tree.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Saml2Notifications.LogoutResponseCreated">
            <summary>
            Notification called when a logout request has been received and processed and a Logout Response has been created.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Saml2Notifications.MetadataCreated">
            <summary>
            Notification called when metadata has been created, but before
            signing. At this point the contents of the metadata can be
            altered before presented.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Saml2Notifications.MetadataCommandResultCreated">
            <summary>
            Notification called when the Metadata command has produced a
            <see cref="T:Sustainsys.Saml2.WebSso.CommandResult"/>, but before anything has been applied
            to the outgoing response. Set the <see cref="P:Sustainsys.Saml2.WebSso.CommandResult.HandledResult"/>
            flag to suppress the library's built in apply functionality to the
            outgoing response.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Saml2Notifications.ValidateAbsoluteReturnUrl">
            <summary>
            Notification called by the SignIn and Logout commands to validate a ReturnUrl that is not relative.
            Return true to indicate that you accept the ReturnUrl, false otherwise.
            Default validation do not accept any absolute URL.
            When false is returned, the SignIn and Logout commands will throw an <see cref="T:System.InvalidOperationException"/>.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Saml2Notifications.GetIdentityProvider">
            <summary>
            Notification called when getting an identity provider. Default version is to return
            the given idp from Options.IdentityProviders.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Saml2Notifications.Unsafe">
            <summary>
            Callbacks that allow modifying the validation behavior in potentially unsafe/insecure ways
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.Saml2Notifications.UnsafeNotifications">
            <summary>
            Callbacks that allow modification of validation behavior in potentially unsafe/insecure ways
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Saml2Notifications.UnsafeNotifications.TokenValidationParametersCreated">
            <summary>
            Notification called when the token handler has populated the
            <see cref="T:Microsoft.IdentityModel.Tokens.TokenValidationParameters"/>. Modify it's properties to customize
            the generated validation parameters.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.Saml2Notifications.UnsafeNotifications.IgnoreUnexpectedInResponseTo">
            <summary>
            Notification called when an incoming Saml Response contains an unexpected
            InResponseTo value. Return true to acceppt the message despite this.
            </summary>
            <remarks>This notification has been added to aid in troubleshooting a
            hard-to-track-down issue. It will be removed in a future release if a 
            better solution is identified thanks to the added production analysis
            that this enables.</remarks>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.ServiceCertificateCollection">
            <summary>
            Certificates used by the service provider for signing, decryption and
            TLS client certificates for artifact resolve.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.ServiceCertificateCollection.Add(System.Security.Cryptography.X509Certificates.X509Certificate2)">
            <summary>
            Add a certificate to the collection with default status use and
            metadata behaviour.
            </summary>
            <param name="certificate">Certificate to add.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.ServiceCertificateCollection.InsertItem(System.Int32,Sustainsys.Saml2.ServiceCertificate)">
            <summary>
            Add to the collection at the specified position.
            </summary>
            <param name="index">Position index.</param>
            <param name="item">Service certificate to add.</param>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.ServiceCertificateElement">
            <summary>
            Config element for the service certificate element.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.ServiceCertificateElement.Status">
            <summary>
            Is this certificate for current or future use?
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.ServiceCertificateElement.Use">
            <summary>
            Intended use of the certificate
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.ServiceCertificateElement.MetadataPublishOverride">
            <summary>
            How should we override the metadata publishing rules?
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.ServiceCertificateElementCollection">
            <summary>
            Config collection of ServiceCertificateElements.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.ServiceCertificateElementCollection.CreateNewElement">
            <summary>
            Create new element of right type.
            </summary>
            <returns>ServiceCertificateElement</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.ServiceCertificateElementCollection.GetElementKey(System.Configuration.ConfigurationElement)">
            <summary>
            Get the name of an element.
            </summary>
            <param name="element">ServiceCertificateElement</param>
            <returns>element.Name</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.ServiceCertificateElementCollection.GetEnumerator">
            <summary>
            Get a strongly typed enumerator.
            </summary>
            <returns>Strongly typed enumerator.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.ServiceCertificateElementCollection.RegisterServiceCertificates(Sustainsys.Saml2.Configuration.SPOptions)">
            <summary>
            Register the configured service certificates.
            </summary>
            <param name="options">Current options.</param>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.SigningBehavior">
            <summary>
            Signing behavior for requests.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Configuration.SigningBehavior.IfIdpWantAuthnRequestsSigned">
            <summary>
            Sign authnrequests if the idp is configured for it. This is the 
            default behavior.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Configuration.SigningBehavior.Always">
            <summary>
            Always sign AuthnRequests. AuthnRequestsSigned is set to true
            in metadata.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Configuration.SigningBehavior.Never">
            <summary>
            Never sign AuthnRequests.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.SPOptions">
            <summary>
            Options for the service provider's behaviour; i.e. everything except
            the idp and federation list.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.SPOptions.#ctor">
            <summary>
            Ctor
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.SPOptions.#ctor(Sustainsys.Saml2.Configuration.SustainsysSaml2Section)">
            <summary>
            Construct the options from the given configuration section
            </summary>
            <param name="configSection"></param>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.ReturnUrl">
            <summary>
            Return Uri to redirect the client to, if no return uri was specified
            when initiating the signin sequence.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.MetadataCacheDuration">
            <summary>
            Recommendation of cache refresh interval to those who reads our
            metadata.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.MetadataValidDuration">
            <summary>
            Maximum validity duration after fetch for those who reads our
            metadata. Exposed as an absolute validUntil time in the metadata.
            If set to null, no validUntil is exposed in metadata.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.Saml2PSecurityTokenHandler">
            <summary>
            The security token handler used to process incoming assertions for this SP.
            The default value is to lazy create one using the current EntityId.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.DiscoveryServiceUrl">
            <summary>
            Url to discovery service to use if no idp is specified in the sign in call.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.EntityId">
            <summary>
            EntityId - The identity of the ServiceProvider to use when sending requests to Idp
            and presenting the SP in metadata.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.ModulePath">
            <summary>
            Application root relative path for Saml2 endpoints. The
            default is "/Saml2".
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.PublicOrigin">
            <summary>
            By default, the service provider uses the host, protocol, port and
            application root path from the HTTP request when creating links. 
            This might not be accurate in reverse proxy or load-balancing
            situations. You can override the origin used for link generation
            for the entire application using this property. To override per request,
            implement a <code>GetPublicOrigin</code> Notification function.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.Organization">
            <summary>
            Metadata describing the organization responsible for the entity.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.NameIdPolicy">
            <summary>
            NameId Policy.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.RequestedAuthnContext">
            <summary>
            RequestedAuthnContext
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.Contacts">
            <summary>
            Collection of contacts for the SAML2 entity.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.AttributeConsumingServices">
            <summary>
            Collection of attribute consuming services for the service provider.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.ServiceCertificates">
            <summary>
            Certificates used by the service provider for signing or decryption.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.DecryptionServiceCertificates">
            <summary>
            Certificates valid for use in decryption
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.SigningServiceCertificate">
            <summary>
            Certificate for use in signing outbound requests
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.MetadataCertificates">
            <summary>
            Certificates to be published in metadata
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.AuthenticateRequestSigningBehavior">
            <summary>
            Signing behaviour for AuthnRequests.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.OutboundSigningAlgorithm">
            <summary>
            Signing algorithm for metadata and outbound messages. Can be 
            overriden for each <see cref="T:Sustainsys.Saml2.IdentityProvider"/>.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.WantAssertionsSigned">
            <summary>
            Metadata flag that we want assertions to be signed.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.ValidateCertificates">
            <summary>
            Validate certificates when validating signatures? Normally not a
            good idea as SAML2 deployments typically exchange certificates
            directly and instead of relying on the public certificate
            infrastructure.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.Compatibility">
            <summary>
            Compatibility settings. Can be used to make Saml2 accept
            certain non-standard behaviour.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.MinIncomingSigningAlgorithm">
            <summary>
            Minimum accepted signature algorithm for any incoming messages.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.Logger">
            <summary>
            Adapter to logging framework of hosting application.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SPOptions.TokenValidationParametersTemplate">
            <summary>
            Template for token validation parameters. Some security critical validation
            parameters are set for each use. The Unsafe.TokenValidationParametersCreated notification
            is called after those are set if those need to be overriden.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Configuration.SustainsysSaml2Section">
            <summary>
            Config section for the module.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Configuration.SustainsysSaml2Section.IsReadOnly">
            <summary>
            Used for testing, always returns true in production.
            </summary>
            <returns>Returns true (unless during tests)</returns>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SustainsysSaml2Section.Current">
            <summary>
            Current config as read from app/web.config.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SustainsysSaml2Section.EntityId">
            <summary>
            EntityId - The identity of the ServiceProvider to use when sending requests to Idp
            and presenting the SP in metadata.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SustainsysSaml2Section.ReturnUrl">
            <summary>
            The Url to redirect back to after successfull authentication.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SustainsysSaml2Section.PublicOrigin">
            <summary>
            By default, the service provider uses the host, protocol, and port
            from the HTTP request when creating links. This might not be
            accurate in reverse proxy or load-balancing situations. You can
            override the origin used for link generation using this property.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SustainsysSaml2Section.IdentityProviders">
            <summary>
            Set of identity providers known to the service provider.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SustainsysSaml2Section.Federations">
            <summary>
            Set of federations. The service provider will trust all the idps in these federations.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SustainsysSaml2Section.DiscoveryServiceUrl">
            <summary>
            Url to discovery service to use if no idp is specified in the sign in call.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SustainsysSaml2Section.ModulePath">
            <summary>
            Application root relative path for Saml2 endpoints. The 
            default is "Saml2".
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SustainsysSaml2Section.NameIdPolicyElement">
            <summary>
            NamedId policy element.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SustainsysSaml2Section.RequestedAuthnContext">
            <summary>
            RequestedAuthnContext config.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SustainsysSaml2Section.Organization">
            <summary>
            Metadata describing the organization responsible for the entity.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SustainsysSaml2Section.Metadata">
            <summary>
            Metadata of the service provider.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SustainsysSaml2Section.Contacts">
            <summary>
            Contacts for the SAML2 entity.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SustainsysSaml2Section.AttributeConsumingServices">
            <summary>
            Attribute consuming services.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SustainsysSaml2Section.ServiceCertificates">
            <summary>
            Certificates used by the service provider for signing and/or decryption.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SustainsysSaml2Section.AuthenticateRequestSigningBehavior">
            <summary>
            Signing behavior for created AuthnRequests.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SustainsysSaml2Section.OutboundSigningAlgorithm">
            <summary>
            Signing algorithm for metadata and outbound messages. Can be 
            overriden for each <see cref="T:Sustainsys.Saml2.IdentityProvider"/>.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SustainsysSaml2Section.MinIncomingSigningAlgorithm">
            <summary>
            Weakest accepted signing algorithm for inbound messages.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SustainsysSaml2Section.ValidateCertificates">
            <summary>
            Validate certificates when validating signatures? Normally not a
            good idea as SAML2 deployments typically exchange certificates
            directly and instead of relying on the public certificate
            infrastructure.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Configuration.SustainsysSaml2Section.Compatibility">
            <summary>
            Compatibility settings. Can be used to make Saml2 accept
            certain non-standard behaviour.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.DateTimeExtensions">
            <summary>
            Helper methods for DateTime formatting.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.DateTimeExtensions.ToSaml2DateTimeString(System.DateTime)">
            <summary>
            Format a datetime for inclusion in SAML messages.
            </summary>
            <param name="dateTime">Datetime to format.</param>
            <returns>Formatted value.</returns>
        </member>
        <member name="T:Sustainsys.Saml2.Exceptions.BadFormatSamlResponseException">
            <summary>
            A SAML response was found, but could not be parsed due to formatting issues.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.BadFormatSamlResponseException.#ctor">
            <summary>
            Ctor
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.BadFormatSamlResponseException.#ctor(System.String)">
            <summary>
            Ctor
            </summary>
            <param name="message">Message of the exception.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.BadFormatSamlResponseException.#ctor(System.String,System.Exception)">
            <summary>
            Ctor
            </summary>
            <param name="message">Message of the exception.</param>
            <param name="innerException">Inner exception.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.BadFormatSamlResponseException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Serialization Ctor
            </summary>
            <param name="info">Serialization info</param>
            <param name="context">Serialization context</param>
        </member>
        <member name="T:Sustainsys.Saml2.Exceptions.InvalidSignatureException">
            <summary>
            Exception thrown when an signature is not valid according to the
            SAML standard.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.InvalidSignatureException.#ctor">
            <summary>
            Default ctor
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.InvalidSignatureException.#ctor(System.String)">
            <summary>
            Ctor
            </summary>
            <param name="message">Message of exception</param>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.InvalidSignatureException.#ctor(System.String,System.Exception)">
            <summary>
            Ctor
            </summary>
            <param name="message">Message</param>
            <param name="innerException">Inner exception</param>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.InvalidSignatureException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Serialization Ctor
            </summary>
            <param name="info">Serialization info</param>
            <param name="context">Serialization context</param>
        </member>
        <member name="T:Sustainsys.Saml2.Exceptions.NoSamlResponseFoundException">
            <summary>
            No saml response was found in the http request.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.NoSamlResponseFoundException.#ctor">
            <summary>
            Default Ctor, setting message to a default.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.NoSamlResponseFoundException.#ctor(System.String)">
            <summary>
            Ctor
            </summary>
            <param name="message">Message of the exception.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.NoSamlResponseFoundException.#ctor(System.String,System.Exception)">
            <summary>
            Ctor
            </summary>
            <param name="message">Message of the exception.</param>
            <param name="innerException">Inner exception.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.NoSamlResponseFoundException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Serialization Ctor
            </summary>
            <param name="info">Serialization info</param>
            <param name="context">Serialization context</param>
        </member>
        <member name="T:Sustainsys.Saml2.Exceptions.Saml2Exception">
            <summary>
            Base class for authentication services specific exceptions, that might                     
            require special handling for error reporting to the user.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.Saml2Exception.#ctor">
            <summary>
            Default Ctor
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.Saml2Exception.#ctor(System.String)">
            <summary>
            Ctor
            </summary>
            <param name="message">Message of the exception.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.Saml2Exception.#ctor(System.String,System.Exception)">
            <summary>
            Ctor
            </summary>
            <param name="message">Message of the exception.</param>
            <param name="innerException">Inner exception.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.Saml2Exception.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Serialization Ctor
            </summary>
            <param name="info">Serialization info</param>
            <param name="context">Serialization context</param>
        </member>
        <member name="T:Sustainsys.Saml2.Exceptions.Saml2ResponseFailedValidationException">
            <summary>
            A SAML2 Response failed validation.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.Saml2ResponseFailedValidationException.#ctor">
            <summary>
            Ctor
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.Saml2ResponseFailedValidationException.#ctor(System.String)">
            <summary>
            Ctor
            </summary>
            <param name="message">Message of the exception.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.Saml2ResponseFailedValidationException.#ctor(System.String,System.Exception)">
            <summary>
            Ctor
            </summary>
            <param name="message">Message of the exception.</param>
            <param name="innerException">Inner exception.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.Saml2ResponseFailedValidationException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Serialization Ctor
            </summary>
            <param name="info">Serialization info</param>
            <param name="context">Serialization context</param>
        </member>
        <member name="T:Sustainsys.Saml2.Exceptions.UnexpectedInResponseToException">
            <summary>
            A SAML2 Response failed InResponseTo validation because RelayState is lost, or an unsolicited response contains an InResponseTo
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.UnexpectedInResponseToException.#ctor">
            <summary>
            Ctor
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.UnexpectedInResponseToException.#ctor(System.String)">
            <summary>
            Ctor
            </summary>
            <param name="message">Message of the exception.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.UnexpectedInResponseToException.#ctor(System.String,System.Exception)">
            <summary>
            Ctor
            </summary>
            <param name="message">Message of the exception.</param>
            <param name="innerException">Inner exception.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.UnexpectedInResponseToException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Serialization Ctor
            </summary>
            <param name="info">Serialization info</param>
            <param name="context">Serialization context</param>
        </member>
        <member name="T:Sustainsys.Saml2.Exceptions.UnsuccessfulSamlOperationException">
            <summary>
            Extended exception containing information about the status and status message SAML response.  
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Exceptions.UnsuccessfulSamlOperationException.Status">
            <summary>
            Status of the SAML2Response
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Exceptions.UnsuccessfulSamlOperationException.StatusMessage">
            <summary>
            Status message of SAML2Response
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Exceptions.UnsuccessfulSamlOperationException.SecondLevelStatus">
            <summary>
            Second level status of SAML2Response
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.UnsuccessfulSamlOperationException.#ctor(System.String,Sustainsys.Saml2.Saml2P.Saml2StatusCode,System.String,System.String)">
            <summary>
            Ctor, bundling the Saml2 status codes and message into the exception message.
            </summary>
            <param name="message">Exception message.</param>
            <param name="statusCode">Status of the SAML2Response</param>
            <param name="statusMessage">Status message of SAML2Response</param>
            <param name="secondLevelStatus">Second level status of SAML2Response</param>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.UnsuccessfulSamlOperationException.#ctor">
            <summary>
            
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.UnsuccessfulSamlOperationException.#ctor(System.String)">
            <summary>
            
            </summary>
            <param name="message"></param>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.UnsuccessfulSamlOperationException.#ctor(System.String,System.Exception)">
            <summary>
            
            </summary>
            <param name="message"></param>
            <param name="innerException"></param>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.UnsuccessfulSamlOperationException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            
            </summary>
            <param name="info"></param>
            <param name="context"></param>
        </member>
        <member name="M:Sustainsys.Saml2.Exceptions.UnsuccessfulSamlOperationException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            
            </summary>
            <param name="info"></param>
            <param name="context"></param>
        </member>
        <member name="T:Sustainsys.Saml2.Federation">
            <summary>
            Represents a federation known to this service provider.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Federation.#ctor(Sustainsys.Saml2.Configuration.FederationElement,Sustainsys.Saml2.Configuration.IOptions)">
            <summary>
            Ctor
            </summary>
            <param name="config">Config to use to initialize the federation.</param>
            <param name="options">Options to pass on to created IdentityProvider
            instances and register identity providers in.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Federation.#ctor(System.String,System.Boolean,Sustainsys.Saml2.Configuration.IOptions)">
            <summary>
            Ctor
            </summary>
            <param name="metadataLocation">Location (url, local path or app 
            relative path such as ~/App_Data) where metadata is located.</param>
            <param name="allowUnsolicitedAuthnResponse">Should unsolicited responses 
            from idps in this federation be accepted?</param>
            <param name="options">Options to pass on to created IdentityProvider
            instances and register identity providers in.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Federation.#ctor(System.String,System.Boolean,Sustainsys.Saml2.Configuration.IOptions,System.Collections.Generic.IEnumerable{System.Security.Cryptography.X509Certificates.X509Certificate2})">
            <summary>
            Ctor
            </summary>
            <param name="metadataLocation">Location (url, local path or app 
            relative path such as ~/App_Data) where metadata is located.</param>
            <param name="allowUnsolicitedAuthnResponse">Should unsolicited responses 
            from idps in this federation be accepted?</param>
            <param name="options">Options to pass on to created IdentityProvider
            instances and register identity providers in.</param>
            <param name="signingKeys">List of signing keys to use to validate metadata.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Federation.#ctor(System.String,System.Boolean,Sustainsys.Saml2.Configuration.IOptions,System.Collections.Generic.IEnumerable{Sustainsys.Saml2.Tokens.SecurityKeyIdentifierClause})">
            <summary>
            Ctor
            </summary>
            <param name="metadataLocation">Location (url, local path or app 
            relative path such as ~/App_Data) where metadata is located.</param>
            <param name="allowUnsolicitedAuthnResponse">Should unsolicited responses 
            from idps in this federation be accepted?</param>
            <param name="options">Options to pass on to created IdentityProvider
            instances and register identity providers in.</param>
            <param name="signingKeys">List of signing keys to use to validate metadata.</param>
        </member>
        <member name="P:Sustainsys.Saml2.Federation.MetadataValidUntil">
            <summary>
            For how long is the metadata that the federation has loaded valid?
            Null if there is no limit.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Federation.SigningKeys">
            <summary>
            Signing keys to use to verify the metadata before using it.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.ICachedMetadata.CacheDuration">
            <summary>
            Permitted cache duration for the metadata.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.ICachedMetadata.ValidUntil">
            <summary>
            Valid until
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.IdentityProvider">
            <summary>
            Represents a known identity provider that this service provider can communicate with.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.IdentityProvider.#ctor(Sustainsys.Saml2.Metadata.EntityId,Sustainsys.Saml2.Configuration.SPOptions)">
            <summary>
            Ctor
            </summary>
            <param name="entityId">Entity id of the identityprovider.</param>
            <param name="spOptions">Service provider options to use when 
            creating AuthnRequests for this Idp.</param>
        </member>
        <member name="P:Sustainsys.Saml2.IdentityProvider.LoadMetadata">
            <summary>
            Should this idp load metadata? The metadata is loaded immediately
            when the property is set to true, so the <see cref="P:Sustainsys.Saml2.IdentityProvider.MetadataLocation"/>
            must be correct before settingLoadMetadata to true.</summary>
        </member>
        <member name="P:Sustainsys.Saml2.IdentityProvider.Binding">
            <summary>
            The binding used when sending AuthnRequests to the identity provider.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.IdentityProvider.SingleSignOnServiceUrl">
            <summary>
            The Url of the single sign on service. This is where the browser is redirected or
            where the post data is sent to when sending an AuthnRequest to the idp.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.IdentityProvider.ArtifactResolutionServiceUrls">
            <summary>
            Artifact resolution endpoints on the idp.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.IdentityProvider.SingleLogoutServiceUrl">
            <summary>
            The Url of the single sign out service. This is where the browser
            is redirected or where the post data is sent to when sending a
            LogoutRequest to the idp.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.IdentityProvider.SingleLogoutServiceResponseUrl">
            <summary>
            The Url to send single logout responses to. Defaults to 
            SingleLogoutServiceUrl.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.IdentityProvider.SingleLogoutServiceBinding">
            <summary>
            Binding for the Single logout service. If not set, returns the
            same as the main binding (used for AuthnRequests)
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.IdentityProvider.EntityId">
            <summary>
            The Entity Id of the identity provider.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.IdentityProvider.AllowUnsolicitedAuthnResponse">
            <summary>
            Is this idp allowed to send unsolicited responses, i.e. idp initiated sign in?
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.IdentityProvider.RelayStateUsedAsReturnUrl">
            <summary>
            Does the RelayState contains the return url?, 
            This setting is used only when the AllowUnsolicitedAuthnResponse setting is enabled.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.IdentityProvider.MetadataLocation">
            <summary>
            Location of metadata for the Identity Provider. Automatically enables
            <see cref="P:Sustainsys.Saml2.IdentityProvider.LoadMetadata"/>. The location can be a URL, an absolute
            path to a local file or an app relative  path 
            (e.g. ~/App_Data/IdpMetadata.xml). By default the entity id is
            interpreted as the metadata location (which is a convention).
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.IdentityProvider.CreateAuthenticateRequest(Sustainsys.Saml2.WebSso.Saml2Urls)">
            <summary>
            Create an authenticate request aimed for this idp.
            </summary>
            <param name="saml2Urls">Urls for Saml2, used to populate fields
            in the created AuthnRequest</param>
        </member>
        <member name="P:Sustainsys.Saml2.IdentityProvider.OutboundSigningAlgorithm">
            <summary>
            Signing Algorithm to be used when signing oubound messages.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.IdentityProvider.Bind(Sustainsys.Saml2.Saml2P.ISaml2Message)">
            <summary>
            Bind a Saml2 message using the active binding of the idp,
            producing a CommandResult with the result of the binding.
            </summary>
            <remarks>
            This overload does not support the usage of Xml Created notifications.
            </remarks>
            <param name="request">The Saml2 message to bind.</param>
            <returns>CommandResult with the bound request.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.IdentityProvider.Bind``1(``0,System.Action{``0,System.Xml.Linq.XDocument,Sustainsys.Saml2.WebSso.Saml2BindingType})">
            <summary>
            Bind a Saml2 message using the active binding of hte idp,
            producing a CommandResult with the result of the binding.
            </summary>
            <typeparam name="TMessage">Type of the message.</typeparam>
            <param name="message">The Saml2 message to bind.</param>
            <param name="xmlCreatedNotification">Notification to call with Xml structure</param>
            <returns>CommandResult with the bound message.</returns>
        </member>
        <member name="P:Sustainsys.Saml2.IdentityProvider.SigningKeys">
            <summary>
            The public key of the idp that is used to verify signatures of responses/assertions.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.IdentityProvider.ReadMetadata(Sustainsys.Saml2.Metadata.EntityDescriptor)">
            <summary>
            Reads the supplied metadata and sets all properties of the 
            IdentityProvider based on the metadata.
            </summary>
            <param name="metadata">Metadata to read.</param>
        </member>
        <member name="P:Sustainsys.Saml2.IdentityProvider.MetadataValidUntil">
            <summary>
            Validity time of the metadata this idp was configured from. Null if
            idp was not configured from metadata.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.IdentityProvider.WantAuthnRequestsSigned">
            <summary>
            Does this Idp want the AuthnRequests signed?
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.IdentityProvider.CreateLogoutRequest(System.Security.Claims.ClaimsPrincipal)">
            <summary>
            Create a logout request to the idp, for the current identity.
            </summary>
            <returns></returns>
        </member>
        <member name="P:Sustainsys.Saml2.IdentityProvider.DisableOutboundLogoutRequests">
            <summary>
            Disable outbound logout requests to this idp, even though
            Saml2 is configured for single logout and the idp supports
            it. This setting might be usable when adding SLO to an existing
            setup, to ensure that everyone is ready for SLO before activating.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.ILoggerAdapter">
            <summary>
            Interface for an adapter around the logging framework used on each
            platform.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.ILoggerAdapter.WriteInformation(System.String)">
            <summary>
            Write informational message.
            </summary>
            <param name="message">Message to write.</param>
        </member>
        <member name="M:Sustainsys.Saml2.ILoggerAdapter.WriteError(System.String,System.Exception)">
            <summary>
            Write an error message
            </summary>
            <param name="message">Message</param>
            <param name="ex">Exception to include in error message.</param>
        </member>
        <member name="M:Sustainsys.Saml2.ILoggerAdapter.WriteVerbose(System.String)">
            <summary>
            Write an informational message on the verbose level.
            </summary>
            <param name="message">Message to write</param>
        </member>
        <member name="T:Sustainsys.Saml2.Internal.AesGcmAlgorithm">
            <summary>
            SymmetricAlgorithm decrypting implementation for http://www.w3.org/2009/xmlenc11#aes128-gcm.
            This is class is not a general implementation and can only do decryption.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Internal.ClientCertificateWebClient">
            <summary>
            A WebClient implementation that will add a list of client 
            certificates to the requests it makes.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Internal.ClientCertificateWebClient.#ctor(System.Collections.Generic.IEnumerable{System.Security.Cryptography.X509Certificates.X509Certificate2})">
            <summary>
            Register the certificate to be used for this requets.
            </summary>
            <param name="certificates">Certificates to offer to server</param>
        </member>
        <member name="M:Sustainsys.Saml2.Internal.ClientCertificateWebClient.GetWebRequest(System.Uri)">
            <summary>
            Override the base class to add the certificate 
            to the reuqest before returning it.
            </summary>
            <param name="address"></param>
            <returns></returns>
        </member>
        <member name="T:Sustainsys.Saml2.Internal.DelimitedString">
            <summary>
            Helpers for delimited string, with support for escaping the delimiter
            character.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Internal.DelimitedString.Join(System.String[])">
            <summary>
            Join strings with a delimiter and escape any occurence of the
            delimiter and the escape character in the string.
            </summary>
            <param name="strings">Strings to join</param>
            <returns>Joined string</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Internal.DelimitedString.Split(System.String)">
            <summary>
            Split strings delimited strings, respecting if the delimiter
            characters is escaped.
            </summary>
            <param name="source">Joined string from <see cref="M:Sustainsys.Saml2.Internal.DelimitedString.Join(System.String[])"/></param>
            <returns>Unescaped, split strings</returns>
        </member>
        <member name="T:Sustainsys.Saml2.Internal.PathHelper">
            <summary>
            Class to help with mapping virtual paths relative to the server.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Internal.PathHelper.BasePath">
            <summary>
            Returns the base path of the website or application running. 
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Internal.PathHelper.MapPath(System.String)">
            <summary>
            Maps a virtual path to the <c>BasePath</c> of the running appliction.
            </summary>
            <param name="virtualPath">The virtual path that needs to mapped relative to the server.</param>
            <returns>A file path.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Internal.PathHelper.IsWebRootRelative(System.String)">
            <summary>
            Determines if a virtual path is relative or not.
            </summary>
            <param name="virtualPath">The path that is to be tested.</param>
            <returns>True if the path is relative otherwise false.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Internal.PathHelper.IsLocalWebUrl(System.String)">
            <summary>
            Determines if a url is relative to current host, excluding protocol-relative addresses
            </summary>
            <param name="url">The path that is to be tested.</param>
            <returns>True if the url is relative otherwise false.</returns>
        </member>
        <member name="T:Sustainsys.Saml2.Internal.QueryStringHelper">
            <summary>
            Class implements static methods to help parse a query string.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Internal.QueryStringHelper.ParseQueryString(System.String)">
            <summary>
            Splits a query string into its key/value pairs. 
            </summary>
            <param name="queryString">A query string, with or without the leading '?' character.</param>
            <returns>A collecktion with the parsed keys and values.</returns>
        </member>
        <member name="F:Sustainsys.Saml2.Internal.RSAEncryptedXml.AesGcm128NonceSizeInBits">
            <summary>
            AES-GCM Nonce size defined in https://www.w3.org/TR/xmlenc-core1/#sec-AES-GCM
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.ManagedRSASignatureDescription">
            <summary>
            Crypto description for a Managed implementation of SHA256 signatures.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.ManagedRSASignatureDescription.#ctor">
            <summary>
            Ctor
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.ManagedRSASignatureDescription.CreateDeformatter(System.Security.Cryptography.AsymmetricAlgorithm)">
            <summary>
            Create a deformatter
            </summary>
            <param name="key">Key</param>
            <returns>Deformatter</returns>
        </member>
        <member name="M:Sustainsys.Saml2.ManagedRSASignatureDescription.CreateFormatter(System.Security.Cryptography.AsymmetricAlgorithm)">
            <summary>
            Create a formatter
            </summary>
            <param name="key">Key</param>
            <returns>Formatter</returns>
        </member>
        <member name="T:Sustainsys.Saml2.MetadataPublishOverrideType">
            <summary>
            How should we override the metadata publishing rules
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.MetadataPublishOverrideType.None">
            <summary>
            No override. Published according to the normal rules.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.MetadataPublishOverrideType.PublishUnspecified">
            <summary>
            Publish as Unspecified
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.MetadataPublishOverrideType.PublishEncryption">
            <summary>
            Publish as Encryption
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.MetadataPublishOverrideType.PublishSigning">
            <summary>
            Publish as Signing
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.MetadataPublishOverrideType.DoNotPublish">
            <summary>
            Do not publish
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Metadata.AttributeConsumingService">
            <summary>
            Metadata for an attribute consuming service.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Metadata.AttributeConsumingService.Index">
            <summary>
            Index of the endpoint
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Metadata.AttributeConsumingService.IsDefault">
            <summary>
            Is this the default endpoint?
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Metadata.AttributeConsumingService.IsRequired">
            <summary>
            Is the service required?
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Metadata.AttributeConsumingService.ServiceNames">
            <summary>
            The name of the attribute consuming service.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Metadata.AttributeConsumingService.ServiceDescriptions">
            <summary>
            Description of the attribute consuming service
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Metadata.AttributeConsumingService.RequestedAttributes">
            <summary>
            Requested attributes.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Metadata.ExtendedMetadataSerializer.ReaderInstance">
            <summary>
            Use this instance for reading metadata. It uses custom extensions
            to increase feature support when reading metadata.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Metadata.IIndexedEntryWithDefault">
            <summary>
            An indexed entry with an optional default
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Metadata.IIndexedEntryWithDefault.Index">
            <summary>
            Index of the endpoint
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Metadata.IIndexedEntryWithDefault.IsDefault">
            <summary>
            Is this the default endpoint?
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Metadata.IndexedCollectionWithDefault`1">
            <summary>
            A collection of indexed entries with support for getting the
            configured default entry
            </summary>
            <typeparam name="T">The type stored in the collection</typeparam>
        </member>
        <member name="P:Sustainsys.Saml2.Metadata.IndexedEndpoint.Index">
            <summary>
            Index of the endpoint
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Metadata.IndexedEndpoint.IsDefault">
            <summary>
            Is this the default endpoint?
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Metadata.MetadataBaseExtensions">
            <summary>
            Extensions for Metadatabase.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Metadata.MetadataBaseExtensions.ToXmlString(Sustainsys.Saml2.Metadata.MetadataBase,System.Security.Cryptography.X509Certificates.X509Certificate2,System.String)">
            <summary>
            Use a MetadataSerializer to create an XML string out of metadata.
            </summary>
            <param name="metadata">Metadata to serialize.</param>
            <param name="signingCertificate">Certificate to sign the metadata
            with. Supply null to not sign.</param>
            <param name="signingAlgorithm">Algorithm to use when signing.</param>
        </member>
        <member name="T:Sustainsys.Saml2.Metadata.MetadataLoader">
            <summary>
            Helper for loading SAML2 metadata
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Metadata.MetadataLoader.LoadIdp(System.String)">
            <summary>
            Load and parse metadata.
            </summary>
            <param name="metadataLocation">Path to metadata. A Url, absolute
            path or an app relative path (e.g. ~/App_Data/metadata.xml)</param>
            <returns>EntityDescriptor containing metadata</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Metadata.MetadataLoader.LoadIdp(System.String,System.Boolean)">
            <summary>
            Load and parse metadata.
            </summary>
            <param name="metadataLocation">Path to metadata. A Url, absolute
            path or an app relative path (e.g. ~/App_Data/metadata.xml)</param>
            <param name="unpackEntitiesDescriptor">If the metadata contains
            an EntitiesDescriptor, try to unpack it and return a single
            EntityDescriptor inside if there is one.</param>
            <returns>EntityDescriptor containing metadata</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Metadata.MetadataLoader.LoadFederation(System.String)">
            <summary>
            Load and parse metadata for a federation.
            </summary>
            <param name="metadataLocation">Url to metadata</param>
            <returns>Extended entitiesdescriptor</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Metadata.MetadataLoader.LoadFederation(System.String,System.Collections.Generic.IEnumerable{Sustainsys.Saml2.Tokens.SecurityKeyIdentifierClause},System.Boolean,System.String)">
            <summary>
            Load and parse metadata for a federation.
            </summary>
            <param name="metadataLocation">Url to metadata</param>
            <param name="signingKeys"></param>
            <param name="validateCertificate">Validate the certificate when doing
            signature validation. Normally a bad idea with SAML2 as certificates
            are not required to be valid but are only used as conventient carriers
            for keys.</param>
            <param name="minIncomingSigningAlgorithm">Mininum strength accepted
            for signing algorithm.</param>
            <returns>Extended entitiesdescriptor</returns>
        </member>
        <member name="T:Sustainsys.Saml2.Metadata.RequestedAttribute">
            <summary>
            Specifies an attribute requested by the service provider.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Metadata.RequestedAttribute.#ctor(System.String)">
            <summary>
            Ctor
            </summary>
            <param name="name">Name of the attribute.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Metadata.RequestedAttribute.#ctor(System.String,System.String)">
            <summary>
            Ctor
            </summary>
            <param name="name">Name of the attribute.</param>
            <param name="value">Value of the attribute.</param>
        </member>
        <member name="P:Sustainsys.Saml2.Metadata.RequestedAttribute.IsRequired">
            <summary>
            Is this attribute required by the service provider?
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Metadata.RequestedAttribute.AttributeNameFormatUri">
            <summary>
            Uri used for NameFormat to specify that the Name is a Uri.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Metadata.RequestedAttribute.AttributeNameFormatUnspecified">
            <summary>
            Uri used for NameFormat to specify that the format of the Name 
            is unspecified.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Metadata.RequestedAttribute.AttributeNameFormatBasic">
            <summary>
            Uri used for NameFormat to specify that the format of the Name 
            fulfills the standard's basic requirements.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.NameIdFormatExtension">
            <summary>
            Extensions for NameIdFormat enum.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.NameIdFormatExtension.GetUri(Sustainsys.Saml2.Saml2P.NameIdFormat)">
            <summary>
            Get the full Uri for a NameIdFormat.
            </summary>
            <param name="nameIdFormat">NameIdFormat to get Uri for</param>
            <returns>Uri</returns>
        </member>
        <member name="T:Sustainsys.Saml2.NullLoggerAdapter">
            <summary>
            Logger adapter that does nothing.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.NullLoggerAdapter.WriteError(System.String,System.Exception)">
            <summary>
            Write an error message
            </summary>
            <param name="message">Message</param>
            <param name="ex">Exception to include in error message.</param>
        </member>
        <member name="M:Sustainsys.Saml2.NullLoggerAdapter.WriteInformation(System.String)">
            <summary>
            Write informational message.
            </summary>
            <param name="message">Message to write.</param>
        </member>
        <member name="M:Sustainsys.Saml2.NullLoggerAdapter.WriteVerbose(System.String)">
            <summary>
            Write an informational message on the verbose level.
            </summary>
            <param name="message">Message to write</param>
        </member>
        <member name="T:Sustainsys.Saml2.SecureKeyGenerator">
            <summary>
            Generator of secure random keys..
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.SecureKeyGenerator.CreateRelayState">
            <summary>
            Create a unique random string with a cryptographically secure
            random function.
            </summary>
            <returns>Random string 56-chars string</returns>
        </member>
        <member name="M:Sustainsys.Saml2.SecureKeyGenerator.CreateArtifactMessageHandle">
            <summary>
            Create a unique random array with a cryptographically secure
            random function.
            </summary>
            <returns>20 random bytes.</returns>
        </member>
        <member name="T:Sustainsys.Saml2.SameSiteHelper">
            <summary>
            Simple default implementation of detection of browsers/devices not compatible with
            the SameSite=None cookie attribute.
            Based on https://docs.microsoft.com/en-us/aspnet/core/security/samesite?view=aspnetcore-3.1
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.SameSiteHelper.EmitSameSiteNone(System.String)">
            <summary>
            Should a SameSite=None cookie attribute be emitted?
            </summary>
            <param name="userAgent">User Agent string</param>
            <returns>True if SameSite=None should be emitted.</returns>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2AssertionExtensions">
            <summary>
            Extension methods for Saml2Assertion
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2AssertionExtensions.ToXElement(Microsoft.IdentityModel.Tokens.Saml2.Saml2Assertion)">
            <summary>
            Writes out the assertion as an XElement.
            </summary>
            <param name="assertion">The assertion to create xml for.</param>
            <returns>XElement</returns>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2ClaimTypes">
            <summary>
            Claim type constants.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2ClaimTypes.SessionIndex">
            <summary>
            Session index is set by the idp and is used to correlate sessions
            during single logout.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2ClaimTypes.LogoutNameIdentifier">
            <summary>
            Original subject name identifier from the SAML2 idp, that should
            be logged out as part of a single logout scenario.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2ConditionsExtensions">
            <summary>
            Extension methods for Saml2Condition
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2ConditionsExtensions.ToXElement(Microsoft.IdentityModel.Tokens.Saml2.Saml2Conditions)">
            <summary>
            Writes out the conditions as an XElement.
            </summary>
            <param name="conditions">Conditions to create xml for.</param>
            <returns>XElement</returns>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2NameIdExtensions">
            <summary>
            Extension methods for Saml2NameId
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2NameIdExtensions.ToXElement(Microsoft.IdentityModel.Tokens.Saml2.Saml2NameIdentifier)">
            <summary>
            Create XElement for the Saml2NameIdentifier.
            </summary>
            <param name="nameIdentifier"></param>
            <returns></returns>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2Namespaces">
            <summary>
            SAML2 namespace constants.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2Namespaces.Saml2PName">
            <summary>
            Namespace of the SAML2 protocol.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2Namespaces.Saml2P">
            <summary>
            Namespace of the SAML2 protocol.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2Namespaces.Saml2PUri">
            <summary>
            Namespace Uri of Saml2 protocol.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2Namespaces.Saml2Name">
            <summary>
            Namespace of SAML2 assertions.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2Namespaces.Saml2">
            <summary>
            Namespace of SAML2 assertions.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2Namespaces.Saml2Uri">
            <summary>
            Namespace Uri of SAML2 assertions.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2Namespaces.Saml2MetadataName">
            <summary>
            Namespace of SAML2 Metadata.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2Namespaces.Saml2Metadata">
            <summary>
            Namespace of SAML2 Metadata.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2Namespaces.Saml2IdpDiscoveryName">
            <summary>
            Namespace for idp discovery protocol extension.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2Namespaces.Saml2IdpDiscovery">
            <summary>
            Namespace for idp discovery protocol extension.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2Namespaces.XmlSchemaInstance">
            <summary>
            Namespace for Xml schema instance.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2Namespaces.SoapEnvelopeName">
            <summary>
            Namespace for Soap envelope.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2Namespaces.SoapEnvelope">
            <summary>
            Namespace for Soap envelope.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2P.AuthnContextComparisonType">
            <summary>
            Comparison setting for RequestedAuthnContext, see SAML2 Core spec 3.3.2.2.1.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.AuthnContextComparisonType.Exact">
            <summary>
            Exact match is required. This is the default.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.AuthnContextComparisonType.Minimum">
            <summary>
            The resulting AuthnContext must be at least as strong as the
            specified classRef.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.AuthnContextComparisonType.Maximum">
            <summary>
            The resulting AuthnContext must be at most as strong as the
            specified classRef.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.AuthnContextComparisonType.Better">
            <summary>
            The resulting AuthnContext must be better than the specified
            classRef. The classRef specified is thus not permitted.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2P.EnvelopedSignatureWriterWithReferenceIdFix">
            <summary>
            Wraps a <see cref="T:System.Xml.XmlWriter"/> and generates a signature automatically when the envelope
            is written completely. By default the generated signature is inserted as
            the last element in the envelope. This can be modified by explicitly
            calling WriteSignature to indicate the location inside the envelope where
            the signature should be inserted.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.EnvelopedSignatureWriterWithReferenceIdFix.#ctor(System.Xml.XmlWriter,Microsoft.IdentityModel.Tokens.SigningCredentials,System.String)">
            <summary>
            Initializes an instance of <see cref="T:Microsoft.IdentityModel.Xml.EnvelopedSignatureWriter"/>. The returned writer can be directly used
            to write the envelope. The signature will be automatically generated when
            the envelope is completed.
            </summary>
            <param name="writer">Writer to wrap/</param>
            <param name="signingCredentials">SigningCredentials to be used to generate the signature.</param>
            <param name="referenceId">The reference Id of the envelope.</param>
            <exception cref="T:System.ArgumentNullException">if <paramref name="writer"/> is null.</exception>
            <exception cref="T:System.ArgumentNullException">if <paramref name="signingCredentials"/> is null.</exception>
            <exception cref="T:System.ArgumentNullException">if <paramref name="referenceId"/> is null or Empty.</exception>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.EnvelopedSignatureWriterWithReferenceIdFix.#ctor(System.Xml.XmlWriter,Microsoft.IdentityModel.Tokens.SigningCredentials,System.String,System.String)">
            <summary>
            Initializes an instance of <see cref="T:Microsoft.IdentityModel.Xml.EnvelopedSignatureWriter"/>. The returned writer can be directly used
            to write the envelope. The signature will be automatically generated when
            the envelope is completed.
            </summary>
            <param name="writer">Writer to wrap/</param>
            <param name="signingCredentials">SigningCredentials to be used to generate the signature.</param>
            <param name="referenceId">The reference Id of the envelope.</param>
            <param name="inclusivePrefixList">inclusive prefix list to use for exclusive canonicalization.</param>
            <exception cref="T:System.ArgumentNullException">if <paramref name="writer"/> is null.</exception>
            <exception cref="T:System.ArgumentNullException">if <paramref name="signingCredentials"/> is null.</exception>
            <exception cref="T:System.ArgumentNullException">if <paramref name="referenceId"/> is null or Empty.</exception>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.EnvelopedSignatureWriterWithReferenceIdFix.DSigSerializer">
            <summary>
            Gets or sets the <see cref="P:Sustainsys.Saml2.Saml2P.EnvelopedSignatureWriterWithReferenceIdFix.DSigSerializer"/> to use.
            </summary>
            <exception cref="T:System.ArgumentNullException">if value is null.</exception>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.EnvelopedSignatureWriterWithReferenceIdFix.OnEndRootElement">
            <summary>
            Calculates and inserts the Signature.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.EnvelopedSignatureWriterWithReferenceIdFix.WriteSignature">
            <summary>
            Sets the position of the signature within the envelope. Call this
            method while writing the envelope to indicate at which point the 
            signature should be inserted.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.EnvelopedSignatureWriterWithReferenceIdFix.WriteEndElement">
            <summary>
            Overrides the base class implementation. When the last element of the envelope is written
            the signature is automatically computed over the envelope and the signature is inserted at
            the appropriate position, if WriteSignature was explicitly called or is inserted at the
            end of the envelope.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.EnvelopedSignatureWriterWithReferenceIdFix.WriteFullEndElement">
            <summary>
            Overrides the base class implementation. When the last element of the envelope is written
            the signature is automatically computed over the envelope and the signature is inserted at
            the appropriate position, if WriteSignature was explicitly called or is inserted at the
            end of the envelope.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.EnvelopedSignatureWriterWithReferenceIdFix.WriteStartElement(System.String,System.String,System.String)">
            <summary>
            Overrides the base class. Writes the specified start tag and associates
            it with the given namespace.
            </summary>
            <param name="prefix">The namespace prefix of the element.</param>
            <param name="localName">The local name of the element.</param>
            <param name="namespace">The namespace URI to associate with the element.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.EnvelopedSignatureWriterWithReferenceIdFix.Dispose(System.Boolean)">
            <summary>
            Releases the unmanaged resources used by the System.IdentityModel.Protocols.XmlSignature.EnvelopedSignatureWriter and optionally
            releases the managed resources.
            </summary>
            <param name="disposing">
            True to release both managed and unmanaged resources; false to release only unmanaged resources.
            </param>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2P.ISaml2Message">
            <summary>
            Common properties of all Saml2 message implementations (both requests
            and responses). There is no corresponding definition in the SAML2
            standard, so this is made up of the common fields of 3.2.2 Complex Type
            StatusResponseType (the base type for all responses) and of 3.2.1 Complex
            Type RequestAbstractType.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.ISaml2Message.DestinationUrl">
            <summary>
            The destination of the message.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.ISaml2Message.ToXml">
            <summary>
            Serializes the message into wellformed Xml.
            </summary>
            <returns>string containing the Xml data.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.ISaml2Message.ToXElement">
            <summary>
            Transforms the message to an XElement object tree.
            </summary>
            <returns>XElement with Xml representation of the message</returns>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.ISaml2Message.MessageName">
            <summary>
            The name of the message to use in a query string or form input
            field. Typically "SAMLRequest" or "SAMLResponse".
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.ISaml2Message.RelayState">
            <summary>
            RelayState attached to the message.
            </summary>
            <remarks>Strictly speaking, this is not part of the message,
            but it is delivered together with the message so we need to keep
            track of it together with a message.</remarks>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.ISaml2Message.SigningCertificate">
            <summary>
            Certificate used to sign the message with during binding, according
            to the signature processing rules of each binding.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.ISaml2Message.SigningAlgorithm">
            <summary>
            The signing algorithm to use when signing the message during binding, 
            according to the signature processing rules of each binding.
            </summary>
            <value>The signing algorithm.</value>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.ISaml2Message.Issuer">
            <summary>
            Issuer of the message.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2MessageExtensions.ToXml``1(``0,System.Action{System.Xml.Linq.XDocument})">
            <summary>
            Serializes the message into wellformed XML.
            </summary>
            <param name="message">Saml2 message to transform to XML</param>
            <param name="xmlCreatedNotification">Notification allowing modification of XML tree before serialization.</param>
            <returns>string containing the Xml data.</returns>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2P.NameIdFormat">
            <summary>
            The NameId Format.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.NameIdFormat.NotConfigured">
            <summary>
            No NameId format has been configured. No format will be included
            in AuthnRequests and metadata.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.NameIdFormat.Unspecified">
            <summary>
            8.3.1 Unspecified
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.NameIdFormat.EmailAddress">
            <summary>
            8.3.2 Email Address
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.NameIdFormat.X509SubjectName">
            <summary>
            8.3.3 X.509 Subject Name
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.NameIdFormat.WindowsDomainQualifiedName">
            <summary>
            8.3.4 Windows Domain Qualified Name
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.NameIdFormat.KerberosPrincipalName">
            <summary>
            8.3.5 Kerberos Principal Name
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.NameIdFormat.EntityIdentifier">
            <summary>
            8.3.6 Entity Identifier
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.NameIdFormat.Persistent">
            <summary>
            8.3.7 Persistent Identifier
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.NameIdFormat.Transient">
            <summary>
            8.3.8 Transient Identifier
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2P.Saml2ArtifactResolve">
            <summary>
            Artifact resolution request, corresponds to section 3.5.1 in SAML
            core specification.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2ArtifactResolve.Artifact">
            <summary>
            Artifact to resolve.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2ArtifactResolve.LocalName">
            <summary>
            The SAML2 request name
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2ArtifactResolve.ToXml">
            <summary>
            Serializes the message into wellformed Xml.
            </summary>
            <returns>string containing the Xml data.</returns>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2P.Saml2ArtifactResponse">
            <summary>
            A Saml2 ArtifactResponse message as specified in SAML2 Core 3.5.2.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2ArtifactResponse.#ctor(System.Xml.XmlElement)">
            <summary>
            Ctor
            </summary>
            <param name="xml">Parsed XML with message.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2ArtifactResponse.GetMessage">
            <summary>
            Contained message.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2ArtifactResponse.Status">
            <summary>
            Status code of the Artifact response.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2P.Saml2AuthenticationRequest">
            <summary>
            An authentication request corresponding to section 3.4.1 in SAML Core specification.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2AuthenticationRequest.#ctor">
            <summary>
            Default constructor
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2AuthenticationRequest.LocalName">
            <summary>
            The SAML2 request name
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2AuthenticationRequest.ToXElement">
            <summary>
            Serializes the request to a Xml message.
            </summary>
            <returns>XElement</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2AuthenticationRequest.ToXml">
            <summary>
            Serializes the message into wellformed Xml
            </summary>
            <returns>string containing the Xml data.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2AuthenticationRequest.Read(System.String,System.String)">
            <summary>
            Read the supplied Xml and parse it into a authenticationrequest.
            </summary>
            <param name="xml">xml data.</param>
            <param name="relayState">Relay State attached to the message or null if not present.</param>
            <returns>Saml2Request</returns>
            <exception cref="T:System.Xml.XmlException">On xml errors or unexpected xml structure.</exception>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2AuthenticationRequest.#ctor(System.Xml.XmlElement,System.String)">
            <summary>
            Ctor
            </summary>
            <param name="xml">Xml data</param>
            <param name="relayState">RelayState associateed with the message.</param>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2AuthenticationRequest.AssertionConsumerServiceUrl">
            <summary>
            The assertion consumer url that the idp should send its response back to.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2AuthenticationRequest.AttributeConsumingServiceIndex">
            <summary>
            Index to the SP metadata where the list of requested attributes is found.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2AuthenticationRequest.Scoping">
            <summary> 
            Scoping for request 
            </summary> 
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2AuthenticationRequest.NameIdPolicy">
            <summary>
            NameId policy.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2AuthenticationRequest.RequestedAuthnContext">
            <summary>
            RequestedAuthnContext.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2AuthenticationRequest.Binding">
            <summary>
            Binding type to request the Idp to use when responding.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2AuthenticationRequest.ForceAuthentication">
            <summary>
            Sets whether request should force the idp to authenticate the presenter directly, 
            rather than rely on a previous security context.
            If false, the ForceAuthn parameter is omitted from the request.
            If true, the request is sent with ForceAuthn="true".
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2AuthenticationRequest.IsPassive">
            <summary>
            Sets whether request should request for SAML Passive login if possible, 
            If false, the IsPassive parameter is omitted from the request.
            If true, the request is sent with IsPassive="true".
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2P.Saml2IdpEntry">
            <summary>
            The Saml2IdPEntry specifies a single identity provider trusted by the
            requester to authenticate the presenter    
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2IdpEntry.#ctor(Sustainsys.Saml2.Metadata.EntityId)">
            <summary>
            Initializes a new instance of the <see cref="T:Sustainsys.Saml2.Saml2P.Saml2IdpEntry"/> class.
            </summary>
            <param name="providerId">The provider identifier.</param>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2IdpEntry.Location">
            <summary>
            A URI reference representing the location of a profile-specific
            endpoint supporting the authentication request protocol. The
            binding to be used must be understood from the profile of use.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2IdpEntry.Name">
            <summary>
            A human-readable name for the identity provider.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2IdpEntry.ProviderId">
            <summary>
            The Entity Id of the Identity Provider. Cannot be null.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2IdpEntry.ToXElement">
            <summary>
            Create XElement for the Saml2IdPEntry.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2P.Saml2LogoutRequest">
            <summary>
            A Saml2 LogoutRequest message (SAML core spec 3.7.1)
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2LogoutRequest.#ctor">
            <summary>
            Ctor
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2LogoutRequest.#ctor(Microsoft.IdentityModel.Tokens.Saml2.Saml2Id)">
            <summary>
            Ctor
            </summary>
            <param name="id">Id of message.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2LogoutRequest.FromXml(System.Xml.XmlElement)">
            <summary>
            Create Saml2LogoutRequest from data in Xml.
            </summary>
            <param name="xml">Xml data to initialize the Saml2LogoutRequest from.</param>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2LogoutRequest.LocalName">
            <summary>
            The SAML2 request name
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2LogoutRequest.NameId">
            <summary>
            Name id to logout.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2LogoutRequest.SessionIndex">
            <summary>
            Session index to logout.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2LogoutRequest.ToXml">
            <summary>
            Serializes the message into wellformed Xml.
            </summary>
            <returns>string containing the Xml data.</returns>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2P.Saml2LogoutResponse">
            <summary>
            A Saml2 Logout Response.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2LogoutResponse.#ctor(Sustainsys.Saml2.Saml2P.Saml2StatusCode)">
            <summary>
            Ctor
            </summary>
            <param name="status">Status of the response.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2LogoutResponse.ToXml">
            <summary>
            Serializes the message into wellformed Xml.
            </summary>
            <returns>string containing the Xml data.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2LogoutResponse.AppendTo(System.Xml.XmlNode)">
            <summary>
            Appends xml for the Saml2LogoutResponse to the given parent node.
            </summary>
            <param name="parentNode">Xml for the Saml2LogoutResponse is appended
            to the children of this node.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2LogoutResponse.FromXml(System.Xml.XmlElement)">
            <summary>
            Load values into Saml2LogoutResponse from passed xml element
            </summary>
            <param name="xml">XmlElement containing a LogoutResponse</param>
            <returns>Saml2LogoutResponse</returns>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2P.Saml2NameIdPolicy">
            <summary>
            The NameId policy.
            </summary>
            <remarks>The class is used in created AuthnRequests, so it is
            immutable to avoid unintended changes.</remarks>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2NameIdPolicy.#ctor(System.Nullable{System.Boolean},Sustainsys.Saml2.Saml2P.NameIdFormat)">
            <summary>
            Ctor
            </summary>
            <param name="allowCreate"></param>
            <param name="format"></param>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2NameIdPolicy.AllowCreate">
            <summary>
            Value of AllowCreate attribute. Set to null to omit.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2NameIdPolicy.Format">
            <summary>
            The NameId format.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2P.Saml2PSecurityTokenHandler">
            <summary>
            Somewhat ugly subclassing to be able to access some methods that are protected
            on Saml2SecurityTokenHandler. The public interface of Saml2SecurityTokenHandler
            expects the actual assertion to be signed, which is not always the case when
            using Saml2-P. The assertion can be embedded in a signed response. Or the signing
            could be handled at transport level.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2PSecurityTokenHandler.ProcessAuthenticationStatement(Microsoft.IdentityModel.Tokens.Saml2.Saml2AuthenticationStatement,System.Security.Claims.ClaimsIdentity,System.String)">
            <summary>
            Process authentication statement from SAML assertion. WIF chokes if the authentication statement 
            contains a DeclarationReference, so we clear this out before calling the base method
            http://referencesource.microsoft.com/#System.IdentityModel/System/IdentityModel/Tokens/Saml2SecurityTokenHandler.cs,1970
            </summary>
            <param name="statement">Authentication statement</param>
            <param name="subject">Claim subject</param>
            <param name="issuer">Assertion Issuer</param>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2PSerializer.ReadAssertion(System.Xml.XmlReader)">
            <summary>
            Reads a &lt;saml:Assertion> element.
            </summary>
            <param name="reader">A <see cref="T:System.Xml.XmlReader"/> positioned at a <see cref="T:Microsoft.IdentityModel.Tokens.Saml2.Saml2Assertion"/> element.</param>
            <exception cref="T:System.ArgumentNullException">if <paramref name="reader"/> is null.</exception>
            <exception cref="T:System.NotSupportedException">if assertion is encrypted.</exception>
            <exception cref="T:Microsoft.IdentityModel.Tokens.Saml2.Saml2SecurityTokenReadException">If <paramref name="reader"/> is not positioned at a Saml2Assertion.</exception>
            <exception cref="T:Microsoft.IdentityModel.Tokens.Saml2.Saml2SecurityTokenReadException">If Version is not '2.0'.</exception>
            <exception cref="T:Microsoft.IdentityModel.Tokens.Saml2.Saml2SecurityTokenReadException">If 'Id' is missing.</exception>>
            <exception cref="T:Microsoft.IdentityModel.Tokens.Saml2.Saml2SecurityTokenReadException">If 'IssueInstant' is missing.</exception>>
            <exception cref="T:Microsoft.IdentityModel.Tokens.Saml2.Saml2SecurityTokenReadException">If no statements are found.</exception>>
            <returns>A <see cref="T:Microsoft.IdentityModel.Tokens.Saml2.Saml2Assertion"/> instance.</returns>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2P.Saml2RequestBase">
            <summary>
            Base class for saml requests, corresponds to section 3.2.1 in SAML Core specification.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2RequestBase.Id">
            <summary>
            The id of the request.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2RequestBase.Version">
            <summary>
            Version of the SAML request. Always returns "2.0"
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2RequestBase.IssueInstant">
            <summary>
            The instant that the request was issued (well actually, created).
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2RequestBase.MessageName">
            <summary>
            SAML message name for requests - hard coded to SAMLRequest.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2RequestBase.DestinationUrl">
            <summary>
            The destination of the request.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2RequestBase.Issuer">
            <summary>
            The issuer of the request.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2RequestBase.ExtensionContents">
            <summary>
            The additional content to append within an Extensions element.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2RequestBase.LocalName">
            <summary>
            The SAML2 request name
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2RequestBase.ToXElement">
            <summary>
            Transforms the message to an XElement object tree.
            </summary>
            <returns>XElement with Xml representation of the message</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2RequestBase.ToXNodes">
            <summary>
            Creates XNodes for the fields of the Saml2RequestBase class. These
            nodes should be added when creating XML out of derived classes.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2RequestBase.ReadBaseProperties(System.Xml.XmlElement)">
            <summary>
            Reads the request properties present in Saml2RequestBase
            Also validates basic properties of the request
            </summary>
            <param name="xml">The xml document to parse</param>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2RequestBase.ToXml">
            <summary>
            Serializes the message into wellformed Xml.
            </summary>
            <returns>string containing the Xml data.</returns>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2RequestBase.RelayState">
            <summary>
            RelayState attached to the message.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2RequestBase.SigningCertificate">
            <summary>
            Certificate used to sign the message with during binding, according
            to the signature processing rules of each binding.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2RequestBase.SigningAlgorithm">
            <summary>
            The signing algorithm to use when signing the message during binding, 
            according to the signature processing rules of each binding.
            </summary>
            <value>The signing algorithm.</value>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2P.Saml2RequestedAuthnContext">
            <summary>
            Configuration of RequestedAuthnContext
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2RequestedAuthnContext.#ctor(Sustainsys.Saml2.Configuration.RequestedAuthnContextElement)">
            <summary>
            Ctor
            </summary>
            <param name="requestedAuthnContextElement">Config element to load.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2RequestedAuthnContext.#ctor(System.Uri,Sustainsys.Saml2.Saml2P.AuthnContextComparisonType)">
            <summary>
            Ctor
            </summary>
            <param name="classRef">AuthnContextClassRef</param>
            <param name="comparison">Comparison</param>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2RequestedAuthnContext.ClassRef">
            <summary>
            Authentication context class reference.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2RequestedAuthnContext.Comparison">
            <summary>
            Comparison method.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2P.Saml2Response">
            <summary>
            Represents a SAML2 response according to 3.3.3. The class is immutable (to an
            external observer. Internal state is lazy initiated).
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2Response.allAssertionElementNodes">
            <summary>Holds all assertion element nodes</summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2Response.Read(System.String)">
            <summary>
            Read the supplied Xml and parse it into a response.
            </summary>
            <param name="xml">xml data.</param>
            <returns>Saml2Response</returns>
            <exception cref="T:System.Xml.XmlException">On xml errors or unexpected xml structure.</exception>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2Response.Read(System.String,Microsoft.IdentityModel.Tokens.Saml2.Saml2Id)">
            <summary>
            Read the supplied Xml and parse it into a response.
            </summary>
            <param name="xml">xml data.</param>
            <param name="expectedInResponseTo">The expected value of the
            InReplyTo parameter in the message.</param>
            <returns>Saml2Response</returns>
            <exception cref="T:System.Xml.XmlException">On xml errors or unexpected xml structure.</exception>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2Response.Read(System.String,Microsoft.IdentityModel.Tokens.Saml2.Saml2Id,Sustainsys.Saml2.Configuration.IOptions)">
            <summary>
            Read the supplied Xml and parse it into a response.
            </summary>
            <param name="xml">xml data.</param>
            <param name="expectedInResponseTo">The expected value of the
            InReplyTo parameter in the message.</param>
            <param name="options">Service provider settings used when validating Saml response</param>
            <returns>Saml2Response</returns>
            <exception cref="T:System.Xml.XmlException">On xml errors or unexpected xml structure.</exception>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2Response.#ctor(System.Xml.XmlElement,Microsoft.IdentityModel.Tokens.Saml2.Saml2Id,Sustainsys.Saml2.Configuration.IOptions)">
            <summary>
            Ctor
            </summary>
            <param name="xml">Root xml element.</param>
            <param name="expectedInResponseTo">The expected value of the
            InReplyTo parameter in the message.</param>
            <param name="options">Service provider settings used when validating Saml response</param>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2Response.#ctor(System.Xml.XmlElement,Microsoft.IdentityModel.Tokens.Saml2.Saml2Id)">
            <summary>
            Ctor
            </summary>
            <param name="xml">Root xml element.</param>
            <param name="expectedInResponseTo">The expected value of the
            InReplyTo parameter in the message.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2Response.#ctor(Sustainsys.Saml2.Metadata.EntityId,System.Security.Cryptography.X509Certificates.X509Certificate2,System.Uri,Microsoft.IdentityModel.Tokens.Saml2.Saml2Id,System.Security.Claims.ClaimsIdentity[])">
            <summary>
            Create a response with the supplied data.
            </summary>
            <param name="issuer">Issuer of the response.</param>
            <param name="signingCertificate">The certificate to use when signing
            this response in XML form.</param>
            <param name="destinationUrl">The destination Uri for the message</param>
            <param name="inResponseTo">In response to id</param>
            <param name="claimsIdentities">Claims identities to be included in the 
            response. Each identity is translated into a separate assertion.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2Response.#ctor(Sustainsys.Saml2.Metadata.EntityId,System.Security.Cryptography.X509Certificates.X509Certificate2,System.Uri,Microsoft.IdentityModel.Tokens.Saml2.Saml2Id,System.String,System.Security.Claims.ClaimsIdentity[])">
            <summary>
            Create a response with the supplied data.
            </summary>
            <param name="issuer">Issuer of the response.</param>
            <param name="signingCertificate">The certificate to use when signing
            this response in XML form.</param>
            <param name="destinationUrl">The destination Uri for the message</param>
            <param name="inResponseTo">In response to id</param>
            <param name="relayState">RelayState associated with the message.</param>
            <param name="claimsIdentities">Claims identities to be included in the 
            response. Each identity is translated into a separate assertion.</param>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2Response.#ctor(Sustainsys.Saml2.Metadata.EntityId,System.Security.Cryptography.X509Certificates.X509Certificate2,System.Uri,Microsoft.IdentityModel.Tokens.Saml2.Saml2Id,System.String,System.Uri,System.Security.Claims.ClaimsIdentity[])">
            <summary>
            Create a response with the supplied data.
            </summary>
            <param name="issuer">Issuer of the response.</param>
            <param name="issuerCertificate">The certificate to use when signing
            this response in XML form.</param>
            <param name="destinationUrl">The destination Uri for the message</param>
            <param name="inResponseTo">In response to id</param>
            <param name="relayState">RelayState associated with the message.</param>
            <param name="claimsIdentities">Claims identities to be included in the 
            <param name="audience">Audience of the response, set as AudienceRestriction</param>
            response. Each identity is translated into a separate assertion.</param>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2Response.SigningCertificate">
            <summary>
            Certificate used to sign the message with during binding, according
            to the signature processing rules of each binding.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2Response.SigningAlgorithm">
            <summary>
            The signing algorithm to use when signing the message during binding, 
            according to the signature processing rules of each binding.
            </summary>
            <value>The signing algorithm.</value>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2Response.XmlElement">
            <summary>
            The response as an xml element. Either the original xml, or xml that is
            generated from supplied data.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2Response.ToXElement">
            <summary>
            Transforms the message to an XElement object tree.
            </summary>
            <remarks>This operation is inefficient, but it is only used by
            the StubIdp so it's acceptable.</remarks>
            <returns>XElement with Xml representation of the message</returns>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2Response.MessageName">
            <summary>
            SAML Message name for responses, hard coded to SAMLResponse.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2Response.ToXml">
            <summary>
            string representation of the Saml2Response serialized to xml.
            </summary>
            <returns>string containing xml.</returns>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2Response.Id">
            <summary>
            Id of the response message.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2Response.ExpectedInResponseTo">
            <summary>
            Expected InResponseTo as extracted from 
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2Response.InResponseTo">
            <summary>
            InResponseTo id.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2Response.IssueInstant">
            <summary>
            Issue instant of the response message.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2Response.Status">
            <summary>
            Status code of the message according to the SAML2 spec section 3.2.2.2
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2Response.StatusMessage">
            <summary>
            StatusMessage of the message according to the SAML2 spec section 3.2.2.1
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2Response.SecondLevelStatus">
            <summary>
            Optional status which MAY give additional information about the cause of the problem (according to the SAML2 spec section 3.2.2.2))))))))). 
            Because it may change in future specifications let's not make enum out of it yet.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2Response.Issuer">
            <summary>
            Issuer (= sender) of the response.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2Response.DestinationUrl">
            <summary>
            The destination of the response message.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2Response.GetAllAssertionElementNodes(Sustainsys.Saml2.Configuration.IOptions)">
            <summary>Gets all assertion element nodes from this response message.</summary>
            <value>All assertion element nodes.</value>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2Response.GetClaims(Sustainsys.Saml2.Configuration.IOptions)">
            <summary>
            Extract claims from the assertions contained in the response.
            </summary>
            <param name="options">Service provider settings used when processing the response into claims.</param>
            <returns>ClaimsIdentities</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2Response.GetClaims(Sustainsys.Saml2.Configuration.IOptions,System.Collections.Generic.IDictionary{System.String,System.String})">
            <summary>
            Extract claims from the assertions contained in the response.
            </summary>
            <param name="options">Service provider settings used when processing the response into claims.</param>
            <param name="relayData">Relay data stored when creating AuthnRequest, to be passed on to
            GetIdentityProvider notification.</param>
            <returns>ClaimsIdentities</returns>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2Response.RelayState">
            <summary>
            RelayState attached to the message.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2Response.SessionNotOnOrAfter">
            <summary>
            Session termination time for a session generated from this
            response.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2P.Saml2Scoping">
            <summary>
            Saml2Scoping specifies a set of identity providers trusted by the
            requester to authenticate the presenter, as well as limitations and
            context related to proxying of the authentication request message to
            subsequent identity providers by the responder.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2Scoping.IdPEntries">
            <summary>
            Gets advisory list of identity providers and associated information 
            that the requester deems acceptable to respond to the request.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2Scoping.With(Sustainsys.Saml2.Saml2P.Saml2IdpEntry)">
            <summary>
            Fluent config helper that adds a <see cref="T:Sustainsys.Saml2.Saml2P.Saml2IdpEntry"/> to the 
            <see cref="T:Sustainsys.Saml2.Saml2P.Saml2Scoping"/>
            </summary>
            <param name="idpEntry">Idp entry to add</param>
            <returns>this</returns>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2Scoping.ProxyCount">
            <summary>
            Specifies the number of proxying indirections permissible between
            the identity provider that receives the authentication request and
            the identity provider who ultimately authenticates the principal.
            A count of zero permits no proxying, while omitting (null) this
            attribute expresses no such restriction.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2Scoping.RequesterIds">
            <summary>
            Gets or sets the set of requesting entities on whose behalf the
            requester is acting. Used to communicate the chain of requesters
            when proxying occurs.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2Scoping.WithRequesterId(Sustainsys.Saml2.Metadata.EntityId)">
            <summary>
            Fluent config helper that adds a requester id to the
            <see cref="T:Sustainsys.Saml2.Saml2P.Saml2Scoping"/>
            </summary>
            <param name="requesterId">Requester Id to add</param>
            <returns>this</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2Scoping.ToXElement">
            <summary>
            Create XElement for the Saml2Scoping.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2P.Saml2SoapBinding">
            <summary>
            Saml2 Soap binding implementation.
            </summary>
            <remarks>
            This class does not follow the pattern of the other three bindings
            (Redirect, POST and Artifact) because it does not use the front channel
            with messages being passed over the user's browser.
            </remarks>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2SoapBinding.CreateSoapBody(System.String)">
            <summary>
            Create a SOAP body around a specified payload.
            </summary>
            <param name="payload">Payload of the message.</param>
            <returns></returns>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2SoapBinding.ExtractBody(System.String)">
            <summary>
            Extract the body of a SOAP message.
            </summary>
            <param name="xml">xml data</param>
            <returns>Parsed data.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2SoapBinding.SendSoapRequest(System.String,System.Uri)">
            <summary>
            Send a SOAP request to the specified endpoint and return the result.
            </summary>
            <param name="payload">Message payload</param>
            <param name="destination">Destination endpoint</param>
            <returns>Response.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2SoapBinding.SendSoapRequest(System.String,System.Uri,System.Collections.Generic.IEnumerable{System.Security.Cryptography.X509Certificates.X509Certificate2})">
            <summary>
            Send a SOAP request to the specified endpoint and return the result.
            </summary>
            <param name="payload">Message payload</param>
            <param name="destination">Destination endpoint</param>
            <param name="clientCertificates">Client certificates to offer to the server.</param>
            <returns>Response.</returns>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2P.Saml2StatusCode">
            <summary>
            Status codes, mapped against states in section 3.2.2.2 in the SAML2 spec.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.Success">
            <summary>
            Success.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.Requester">
            <summary>
            Error because of the requester.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.Responder">
            <summary>
            Error because of the responder.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.VersionMismatch">
            <summary>
            Versions doesn't match.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.AuthnFailed">
            <summary>
            The responding provider was unable to successfully authenticate the principal
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.InvalidAttrNameOrValue">
            <summary>
            Unexpected or invalid content was encountered within a saml:Attribute or saml:AttributeValue element.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.InvalidNameIdPolicy">
            <summary>
            The responding provider cannot or will not support the requested name identifier policy.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.NoAuthnContext">
            <summary>
            The specified authentication context requirements cannot be met by the responder.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.NoAvailableIdp">
            <summary>
            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.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.NoPassive">
            <summary>
            Indicates the responding provider cannot authenticate the principal passively, as has been requested.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.NoSupportedIdp">
            <summary>
            Used by an intermediary to indicate that none of the identity providers in an IDPList are supported by the intermediary.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.PartialLogout">
            <summary>
            Used by a session authority to indicate to a session participant that it was not able to propagate logout to all other session participants.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.ProxyCountExceeded">
            <summary>
            Indicates that a responding provider cannot authenticate the principal directly and is not permitted to proxy the request further.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.RequestDenied">
            <summary>
            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.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.RequestUnsupported">
            <summary>
            The SAML responder or SAML authority does not support the request.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.RequestVersionDeprecated">
            <summary>
            The SAML responder cannot process any requests with the protocol version specified in the request.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.RequestVersionTooHigh">
            <summary>
            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.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.RequestVersionTooLow">
            <summary>
            The SAML responder cannot process the request because the protocol version specified in the
            request message is too low.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.ResourceNotRecognized">
            <summary>
            The resource value provided in the request message is invalid or unrecognized.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.TooManyResponses">
            <summary>
            The response message would contain more elements than the SAML responder is able to return.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.UnknownAttrProfile">
            <summary>
            An entity that has no knowledge of a particular attribute profile has been presented with an attribute
            drawn from that profile.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.UnknownPrincipal">
            <summary>
            The responding provider does not recognize the principal specified or implied by the request.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.Saml2P.Saml2StatusCode.UnsupportedBinding">
            <summary>
            The SAML responder cannot properly fulfill the request using the protocol binding specified in the
            request.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2P.Saml2StatusResponseType">
            <summary>
            Abstract Saml2 StatusResponseType class.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2StatusResponseType.#ctor(Sustainsys.Saml2.Saml2P.Saml2StatusCode)">
            <summary>
            Ctor
            </summary>
            <param name="status">Status of the response</param>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2StatusResponseType.DestinationUrl">
            <summary>
            The destination of the message.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2StatusResponseType.Issuer">
            <summary>
            Issuer of the message.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2StatusResponseType.InResponseTo">
            <summary>
            Id of request message, if this message is a response to a previous
            request.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2StatusResponseType.MessageName">
            <summary>
            The name of the message to use in a query string or form input
            field. Typically "SAMLRequest" or "SAMLResponse".
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2StatusResponseType.RelayState">
            <summary>
            RelayState attached to the message.
            </summary>
            <remarks>Strictly speaking, this is not part of the message,
            but it is delivered together with the message so we need to keep
            track of it together with a message.</remarks>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2StatusResponseType.SigningCertificate">
            <summary>
            Certificate used to sign the message with during binding, according
            to the signature processing rules of each binding.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2StatusResponseType.SigningAlgorithm">
            <summary>
            The signing algorithm to use when signing the message during binding, 
            according to the signature processing rules of each binding.
            </summary>
            <value>The signing algorithm.</value>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2StatusResponseType.Status">
            <summary>
            Status code of the message.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2StatusResponseType.Id">
            <summary>
            Id of the message.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.Saml2P.Saml2StatusResponseType.IssueInstant">
            <summary>
            Issue instant.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2StatusResponseType.ToXml">
            <summary>
            Serializes the message into wellformed Xml.
            </summary>
            <returns>string containing the Xml data.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2P.Saml2StatusResponseType.ToXElement">
            <summary>
            Transforms the message to an XElement object tree.
            </summary>
            <returns>XElement with Xml representation of the message</returns>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2StatementExtension">
            <summary>
            Extension methods for Saml2Statement
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2StatementExtension.ToXElement(Microsoft.IdentityModel.Tokens.Saml2.Saml2Statement)">
            <summary>
            Writes out the statement as an XElement.
            </summary>
            <param name="statement">Statement to create xml for.</param>
            <returns>XElement</returns>
        </member>
        <member name="T:Sustainsys.Saml2.Saml2SubjectExtensions">
            <summary>
            Extension methods for Saml2Subject
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2SubjectExtensions.ToXElement(Microsoft.IdentityModel.Tokens.Saml2.Saml2Subject)">
            <summary>
            Writes out the subject as an XElement.
            </summary>
            <param name="subject">The subject to create xml for.</param>
            <returns>XElement</returns>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2SubjectExtensions.ToXElement(Microsoft.IdentityModel.Tokens.Saml2.Saml2SubjectConfirmation)">
            <summary>
            Writes out the subject confirmation as an XElement.
            </summary>
            <param name="subjectConfirmation"></param>
            <returns></returns>
            <exception cref="T:System.ArgumentNullException"></exception>
        </member>
        <member name="M:Sustainsys.Saml2.Saml2SubjectExtensions.ToXElement(Microsoft.IdentityModel.Tokens.Saml2.Saml2SubjectConfirmationData)">
            <summary>
            Writes out the subject confirmation data as an XElement.
            </summary>
            <param name="subjectConfirmationData"></param>
            <returns></returns>
            <exception cref="T:System.ArgumentNullException"></exception>
        </member>
        <member name="T:Sustainsys.Saml2.ServiceCertificate">
            <summary>
            Service Certificate definition
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.ServiceCertificate.#ctor">
            <summary>
            Ctor
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.ServiceCertificate.#ctor(Sustainsys.Saml2.Configuration.ServiceCertificateElement)">
            <summary>
            Ctor for loading from configuration
            </summary>
            <param name="serviceCertElement"></param>
        </member>
        <member name="P:Sustainsys.Saml2.ServiceCertificate.Certificate">
            <summary>
            X509 Certificate
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.ServiceCertificate.Status">
            <summary>
            Is this certificate for current or future use?
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.ServiceCertificate.Use">
            <summary>
            What is the intended use of this certificate.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.ServiceCertificate.MetadataPublishOverride">
            <summary>
            How should we override the metadata publishing rules?
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.StoredRequestState">
            <summary>
            Stored data for pending requests.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.StoredRequestState.CookieNameBase">
            <summary>
            Start of the cookie name for state preservation.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.StoredRequestState.#ctor(Sustainsys.Saml2.Metadata.EntityId,System.Uri,Microsoft.IdentityModel.Tokens.Saml2.Saml2Id,System.Collections.Generic.IDictionary{System.String,System.String})">
            <summary>
            Ctor
            </summary>
            <param name="idp">The EntityId of the IDP the request was sent to</param>
            <param name="returnUrl">The Url to redirect back to after a succesful login</param>
            <param name="messageId">ID of the SAML message, used to match InResponseTo</param>
            <param name="relayData">Aux data that can be stored across the authentication request.</param>
        </member>
        <member name="P:Sustainsys.Saml2.StoredRequestState.Idp">
            <summary>
            The IDP the request was sent to
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.StoredRequestState.ReturnUrl">
            <summary>
            The Url to redirect back to after a succesful login
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.StoredRequestState.MessageId">
            <summary>
            Message id of the originating Saml message. Should match InResponseTo
            in the response.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.StoredRequestState.RelayData">
            <summary>
            Aux data that need to be preserved across the authentication call.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.StoredRequestState.Serialize">
            <summary>
            Get a serialized representation of the data.
            </summary>
            <returns>Serialized data</returns>
        </member>
        <member name="M:Sustainsys.Saml2.StoredRequestState.#ctor(System.Byte[])">
            <summary>
            Ctor that restores a StoredRequestState object from serialized
            representation.
            </summary>
            <param name="data">data buffer</param>
        </member>
        <member name="T:Sustainsys.Saml2.TrustLevel">
            <summary>
            The level of trust that a certain piece of data comes with.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.TrustLevel.None">
            <summary>
            The data cannot be trusted at all.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.TrustLevel.HttpGet">
            <summary>
            The data was retreived through a request that was initiated from
            our end, but there was no transport protection.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.TrustLevel.TlsTransport">
            <summary>
            The data was retrevied through TLS protected request that was 
            initaited from our end, to a host that had a valid TLS certificate.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.TrustLevel.Signature">
            <summary>
            The data was signed and have been verified by a signing key.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.TrustLevel.LocalConfiguration">
            <summary>
            Data is from a local configuration source. E.g. metadata or a
            certificate loaded from disk.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.WebSso.AcsCommand">
            <summary>
            Represents the assertion consumer service command behaviour.
            Instances of this class can be created directly or by using the factory method
            CommandFactory.GetCommand(CommandFactory.AcsCommandName).
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.AcsCommand.Run(Sustainsys.Saml2.WebSso.HttpRequestData,Sustainsys.Saml2.Configuration.IOptions)">
            <summary>
            Run the command, initiating or handling the assertion consumer sequence.
            </summary>
            <param name="request">Request data.</param>
            <param name="options">Options</param>
            <returns>CommandResult</returns>
        </member>
        <member name="T:Sustainsys.Saml2.WebSso.Cacheability">
            <summary>
            Reimplementation of System.Web.HttpCacheability.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.WebSso.Cacheability.NotSpecified">
            <summary>
            Value is not initialized and probably a mistake. 
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.WebSso.Cacheability.NoCache">
            <summary>
            Sets the Cache-Control: no-cache header.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.WebSso.Cacheability.Private">
            <summary>
            The default value. Sets the cache control to "private".
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.WebSso.Cacheability.Server">
            <summary>
            Specifies that the response is cached only at the origin server.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.WebSso.Cacheability.ServerAndNoCache">
            <summary>
            Will disallow anyone but the server to cache the result.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.WebSso.Cacheability.Public">
            <summary>
            Sets the Cache-Control to public.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.WebSso.Cacheability.ServerAndPrivate">
            <summary>
            The response is cached in the client and the server but nowhere else.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.WebSso.CommandFactory">
            <summary>
            Factory to create the command objects thand handles the incoming http requests.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.WebSso.CommandFactory.AcsCommandName">
            <summary>
            The name of the Assertion Consumer Service Command.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.WebSso.CommandFactory.SignInCommandName">
            <summary>
            The name of the Sign In Command.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.WebSso.CommandFactory.LogoutCommandName">
            <summary>
            The name of the Log Out Command.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.WebSso.CommandFactory.MetadataCommand">
            <summary>
            The metadata command has no name - it is triggered at base url for
            Saml2.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.CommandFactory.GetCommand(System.String)">
            <summary>
            Gets a command for a command name.
            </summary>
            <param name="commandName">Name of a command. Probably a path. A
            leading slash in the command name is ignored.</param>
            <returns>A command implementation or notFoundCommand if invalid.</returns>
        </member>
        <member name="T:Sustainsys.Saml2.WebSso.CommandResult">
            <summary>
            The results of a command.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.CommandResult.HttpStatusCode">
            <summary>
            Status code that should be returned.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.CommandResult.Cacheability">
            <summary>
            Cacheability of the command result.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.CommandResult.Location">
            <summary>
            Location, if the status code is a redirect.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.CommandResult.Principal">
            <summary>
            The extracted principal if the command has parsed an incoming assertion.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.CommandResult.SessionNotOnOrAfter">
            <summary>
            Session termination time. Priority order: 1. SessionNotOnOrAfter in
            assertion. 2. WIF configured lifetime with SessionSecurityTokenHandler
            3. SessionSecurityTokenHandler default.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.CommandResult.Content">
            <summary>
            The response body that is the result of the command.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.CommandResult.ContentType">
            <summary>
            The Mime-type
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.CommandResult.RelayData">
            <summary>
            Data relayed from a previous request, such as the dictionary storing
            the Owin Authentication Properties.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.CommandResult.TerminateLocalSession">
            <summary>
            Indicates that the local session should be terminated. Used by
            logout functionality.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.CommandResult.SetCookieName">
            <summary>
            Name of cookie to set.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.CommandResult.SetCookieSecureFlag">
            <summary>
            Value of the "Secure" flag for the cookie (relevant if <see cref="P:Sustainsys.Saml2.WebSso.CommandResult.SetCookieName"/> != null).
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.CommandResult.RelayState">
            <summary>
            SAML RelayState value
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.CommandResult.RequestState">
            <summary>
            Request state to store so that it is available on next http request.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.CommandResult.GetSerializedRequestState">
            <summary>
            Serialized request state.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.CommandResult.ClearCookieName">
            <summary>
            Name of cookie to be cleared.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.CommandResult.#ctor">
            <summary>
            Ctor
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.CommandResult.HandledResult">
            <summary>
            Can be set by a notification callback to indicate that the
            <see cref="T:Sustainsys.Saml2.WebSso.CommandResult"/> has been handled and should not
            be applied by the Saml2 library to the response.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.CommandResult.Headers">
            <summary>
            Other headers that should be set on the response.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.WebSso.HttpRequestData">
            <summary>
            The data of a http request that Saml2 needs to handle. A separate DTO is used
            to make the core library totally independent of the hosting environment.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.HttpRequestData.#ctor(System.String,System.Uri,System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.Collections.Generic.IEnumerable{System.String}}},System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}},System.Func{System.Byte[],System.Byte[]})">
            <summary>
            Ctor
            </summary>
            <param name="httpMethod">Http method of the request</param>
            <param name="url">Full url requested</param>
            <param name="formData">Form data, if present (only for POST requests)</param>
            <param name="applicationPath">Path to the application root</param>
            <param name="cookies">Cookies of request</param>
            <param name="cookieDecryptor">Function that decrypts cookie
            contents to clear text.</param>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.HttpRequestData.#ctor(System.String,System.Uri,System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.Collections.Generic.IEnumerable{System.String}}},System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}},System.Func{System.Byte[],System.Byte[]},System.Security.Claims.ClaimsPrincipal)">
            <summary>
            Ctor
            </summary>
            <param name="httpMethod">Http method of the request</param>
            <param name="url">Full url requested</param>
            <param name="formData">Form data, if present (only for POST requests)</param>
            <param name="applicationPath">Path to the application root</param>
            <param name="cookies">Cookies of request</param>
            <param name="cookieDecryptor">Function that decrypts cookie
            contents to clear text.</param>
            <param name="user">Claims Principal associated with the request</param>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.HttpRequestData.#ctor(System.String,System.Uri,System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.Collections.Generic.IEnumerable{System.String}}},System.Func{System.String,System.String},System.Func{System.Byte[],System.Byte[]},System.Security.Claims.ClaimsPrincipal)">
            <summary>
            Ctor
            </summary>
            <param name="httpMethod">Http method of the request</param>
            <param name="url">Full url requested</param>
            <param name="formData">Form data, if present (only for POST requests)</param>
            <param name="applicationPath">Path to the application root</param>
            <param name="cookieReader">Function that reads cookie if it exists</param>
            <param name="cookieDecryptor">Function that decrypts cookie
            contents to clear text.</param>
            <param name="user">Claims Principal associated with the request</param>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.HttpRequestData.ConvertBinaryData(System.Byte[])">
            <summary>
            Escape a Base 64 encoded cookie value, matching the unescaping
            that is done in the ctor.
            </summary>
            <param name="data">Data to escape</param>
            <returns>Escaped data</returns>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.HttpRequestData.HttpMethod">
            <summary>
            The http method of the request.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.HttpRequestData.Url">
            <summary>
            The complete Url of the request.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.HttpRequestData.Form">
            <summary>
            The form data associated with the request (if any).
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.HttpRequestData.QueryString">
            <summary>
            The query string parameters of the request.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.HttpRequestData.ApplicationUrl">
            <summary>
            The root Url of the application. This includes the virtual directory
            that the application is installed in, e.g. http://hosting.example.com/myapp/
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.HttpRequestData.RelayState">
            <summary>
            RelayState from SAML message
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.HttpRequestData.StoredRequestState">
            <summary>
            Request state from a previous call, carried over through cookie.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.HttpRequestData.User">
            <summary>
            User (if any) associated with the request
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.WebSso.ICommand">
            <summary>
            A command - corresponds to an action in Mvc.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.ICommand.Run(Sustainsys.Saml2.WebSso.HttpRequestData,Sustainsys.Saml2.Configuration.IOptions)">
            <summary>
            Run the command and return a result.
            </summary>
            <param name="request">The http request that the input
            data can be read from.</param>
            <param name="options">The options to use when performing the command.</param>
            <returns>The results of the command, as a DTO.</returns>
        </member>
        <member name="T:Sustainsys.Saml2.WebSso.LogoutCommand">
            <summary>
            Represents the logout command behaviour.
            Instances of this class can be created directly or by using the factory method
            CommandFactory.GetCommand(CommandFactory.LogoutCommandName).
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.LogoutCommand.Run(Sustainsys.Saml2.WebSso.HttpRequestData,Sustainsys.Saml2.Configuration.IOptions)">
            <summary>
            Run the command, initiating or handling the logout sequence.
            </summary>
            <param name="request">Request data.</param>
            <param name="options">Options</param>
            <returns>CommandResult</returns>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.LogoutCommand.Run(Sustainsys.Saml2.WebSso.HttpRequestData,System.String,Sustainsys.Saml2.Configuration.IOptions)">
            <summary>
            Run the command, initating or handling the logout sequence.
            </summary>
            <param name="request">Request data.</param>
            <param name="returnPath">Path to return to, only used if this
            is the start of an SP-initiated logout.</param>
            <param name="options">Options</param>
            <returns>CommandResult</returns>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.LogoutCommand.InitiateLogout(Sustainsys.Saml2.WebSso.HttpRequestData,System.Uri,Sustainsys.Saml2.Configuration.IOptions,System.Boolean)">
            <summary>
            Initiatiate a federated logout.
            </summary>
            <param name="request">Request data</param>
            <param name="returnUrl">Return url to redirect to after logout</param>
            <param name="options">optins</param>
            <param name="terminateLocalSession">Terminate local session as part of signout?</param>
            <returns></returns>
        </member>
        <member name="T:Sustainsys.Saml2.WebSso.MetadataCommand">
            <summary>
            Represents the service provider metadata command behaviour.
            Instances of this class can be created directly or by using the factory method
            CommandFactory.GetCommand(CommandFactory.MetadataCommandName).
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.MetadataCommand.Run(Sustainsys.Saml2.WebSso.HttpRequestData,Sustainsys.Saml2.Configuration.IOptions)">
            <summary>
            Run the command, creating and returning the service provider metadata.
            </summary>
            <param name="request">Request data.</param>
            <param name="options">Options</param>
            <returns>CommandResult</returns>
        </member>
        <member name="T:Sustainsys.Saml2.WebSso.NotFoundCommand">
            <summary>
            Represents a missing command.
            Instances of this class are returned by CommandFactory.GetCommand(...)
            when the specified command name is not recognised.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.NotFoundCommand.Run(Sustainsys.Saml2.WebSso.HttpRequestData,Sustainsys.Saml2.Configuration.IOptions)">
            <summary>
            Run the command, returning a CommandResult specifying an HTTP 404 Not Found status code.
            </summary>
            <param name="request">Request data.</param>
            <param name="options">Options</param>
            <returns>CommandResult</returns>
        </member>
        <member name="T:Sustainsys.Saml2.WebSso.Saml2ArtifactBinding">
            <summary>
            Saml2 Artifact binding.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.Saml2ArtifactBinding.CanUnbind(Sustainsys.Saml2.WebSso.HttpRequestData)">
            <summary>
            
            </summary>
            <param name="request"></param>
            <returns></returns>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.Saml2ArtifactBinding.Unbind(Sustainsys.Saml2.WebSso.HttpRequestData,Sustainsys.Saml2.Configuration.IOptions)">
            <summary>
            Checks if the binding can extract a message out of the current
            http request.
            </summary>
            <param name="request">HttpRequest to check for message.</param>
            <param name="options">Options used to look up details of issuing
            idp when needed (artifact binding).</param>
            <returns>True if the binding supports the current request.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.Saml2ArtifactBinding.CreateArtifact(Sustainsys.Saml2.Metadata.EntityId,System.Int32)">
            <summary>
            Create a SAML artifact value.
            </summary>
            <param name="issuer">Entity id of the artifact issuer.</param>
            <param name="endpointIndex">Index of the artifact resolution endpoint
            that the requester should use to resolve the artifact.</param>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.Saml2ArtifactBinding.Bind(Sustainsys.Saml2.Saml2P.ISaml2Message,Sustainsys.Saml2.ILoggerAdapter)">
            <summary>
            Binds a message to a http response with HTTP Redirect.
            </summary>
            <param name="message">Message to bind.</param>
            <param name="logger">Logger to use.</param>
            <returns>CommandResult.</returns>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.Saml2ArtifactBinding.PendingMessages">
            <summary>
            Pending messages where the artifact has been sent.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.WebSso.UnbindResult">
            <summary>
            The result of a Saml2Binding.UnBind.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.UnbindResult.#ctor(System.Xml.XmlElement,System.String,Sustainsys.Saml2.TrustLevel)">
            <summary>
            Ctor
            </summary>
            <param name="data">The data payload</param>
            <param name="relayState">The associated relay state.</param>
            <param name="trustLevel">Level of trust that can be put in data.
            Does not care about any signature included in the data.</param>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.UnbindResult.Data">
            <summary>
            The data payload.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.UnbindResult.RelayState">
            <summary>
            The associated relay state, if any. Otherwise null.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.UnbindResult.TrustLevel">
            <summary>
            Trust level indicating how much the message contents can be
            trusted.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.WebSso.Saml2Binding">
            <summary>
            Abstract base for all Saml2Bindings that binds a message to a specific
            kind of transport.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.WebSso.Saml2Binding.HttpPostUri">
            <summary>
            Uri identifier of the HTTP-POST binding.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.WebSso.Saml2Binding.HttpRedirectUri">
            <summary>
            Uri identifier of the HTTP-Redirect binding.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.WebSso.Saml2Binding.HttpArtifactUri">
            <summary>
            Uri identifier of the HTTP-Artifact binding.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.WebSso.Saml2Binding.DiscoveryResponseUri">
            <summary>
            Uri identifier of the Discovery Response SAML extension.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.WebSso.Saml2Binding.SoapUri">
            <summary>
            Uri identifier of the SOAP binding.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.Saml2Binding.Bind(Sustainsys.Saml2.Saml2P.ISaml2Message,Sustainsys.Saml2.ILoggerAdapter)">
            <summary>
            Binds a message to a http response.
            </summary>
            <param name="message">Message to bind.</param>
            <param name="logger">Logger to log use, can be null.</param>
            <returns>CommandResult.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.Saml2Binding.Bind``1(``0,Sustainsys.Saml2.ILoggerAdapter,System.Action{``0,System.Xml.Linq.XDocument,Sustainsys.Saml2.WebSso.Saml2BindingType})">
            <summary>
            Binds a message to an http response.
            </summary>
            <typeparam name="TMessage">Type of the message.</typeparam>
            <param name="message">Message to bind</param>
            <param name="logger">Logger to log use, can be null.</param>
            <param name="xmlCreatedNotification">Notification to call for modification of XDocument, can be null.</param>
            <returns>CommandResult.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.Saml2Binding.Bind(Sustainsys.Saml2.Saml2P.ISaml2Message)">
            <summary>
            Binds a message to a http response.
            </summary>
            <param name="message">Message to bind.</param>
            <returns>CommandResult.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.Saml2Binding.Unbind(Sustainsys.Saml2.WebSso.HttpRequestData,Sustainsys.Saml2.Configuration.IOptions)">
            <summary>
            Extracts a message out of the current HttpRequest.
            </summary>
            <param name="request">Current HttpRequest.</param>
            <param name="options">Options, used to look up certificate information
            in bindings that validate signatures. If set to null, the returned 
            result will have TrustLevel.None.</param>
            <returns>Extracted message.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.Saml2Binding.CanUnbind(Sustainsys.Saml2.WebSso.HttpRequestData)">
            <summary>
            Checks if the binding can extract a message out of the current
            http request.
            </summary>
            <param name="request">HttpRequest to check for message.</param>
            <returns>True if the binding supports the current request.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.Saml2Binding.Get(Sustainsys.Saml2.WebSso.Saml2BindingType)">
            <summary>
            Get a cached binding instance that supports the requested type.
            </summary>
            <param name="binding">Type of binding to get</param>
            <returns>A derived class instance that supports the requested binding.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.Saml2Binding.Get(Sustainsys.Saml2.WebSso.HttpRequestData)">
            <summary>
            Get a cached binding instance that can handle the current request.
            </summary>
            <param name="request">Current HttpRequest</param>
            <returns>A derived class instance that supports the requested binding,
            or null if no binding supports the current request.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.Saml2Binding.UriToSaml2BindingType(System.Uri)">
            <summary>
            Gets the Saml2BindingType enum value for a Saml2Binding type uri, where the
            uri should be one specified in the standard.
            </summary>
            <param name="uri">Uri for the binding.</param>
            <returns>Binding type enum value.</returns>
            <exception cref="T:System.ArgumentException">If the uri doesn't correspond to a known binding.</exception>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.Saml2Binding.Saml2BindingTypeToUri(Sustainsys.Saml2.WebSso.Saml2BindingType)">
            <summary>
            Gets the Uri for a Saml2BindingType.
            </summary>
            <param name="type">Saml2BindingType</param>
            <returns>Uri constant for the speicified Binding Type</returns>
            <exception cref="T:System.ArgumentException">If the type is not mapped.</exception>
        </member>
        <member name="T:Sustainsys.Saml2.WebSso.Saml2BindingType">
            <summary>
            Saml2 binding types.
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.WebSso.Saml2BindingType.HttpRedirect">
            <summary>
            The http redirect binding according to saml bindings section 3.4
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.WebSso.Saml2BindingType.HttpPost">
            <summary>
            The http post binding according to saml bindings section 3.5
            </summary>
        </member>
        <member name="F:Sustainsys.Saml2.WebSso.Saml2BindingType.Artifact">
            <summary>
            The artifact resolution binding according to bindings section 3.6
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.WebSso.Saml2Urls">
            <summary>
            The urls of Saml2 that are used in various messages.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.Saml2Urls.#ctor(Sustainsys.Saml2.WebSso.HttpRequestData,Sustainsys.Saml2.Configuration.IOptions)">
            <summary>
            Resolve the urls for Saml2 from an http request and options.
            </summary>
            <param name="request">Request to get application root url from.</param>
            <param name="options">Options to get module path and (optional) notification hooks from.</param>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.Saml2Urls.#ctor(System.Uri,System.String)">
            <summary>
            Creates the urls for Saml2 based on the complete base Url
            the application and the Saml2 base module path.
            </summary>
            <param name="applicationUrl">The full Url to the root of the application.</param>
            <param name="modulePath">Path of module, starting with / and ending without.</param>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.Saml2Urls.#ctor(System.Uri,System.Uri,System.Uri)">
            <summary>
            Creates the urls for Saml2 based on the given full urls
            for assertion consumer service and sign-in
            </summary>
            <param name="assertionConsumerServiceUrl">The full Url for the Assertion Consumer Service.</param>
            <param name="signInUrl">The full Url for sign-in.</param>
            <param name="applicationUrl">The full Url for the application root.</param>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.Saml2Urls.AssertionConsumerServiceUrl">
            <summary>
            The full url of the assertion consumer service.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.Saml2Urls.SignInUrl">
            <summary>
            The full url of the signin command, which is also the response 
            location for idp discovery.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.Saml2Urls.ApplicationUrl">
            <summary>
            The full url of the application root. Used as default redirect
            location after logout.
            </summary>
        </member>
        <member name="P:Sustainsys.Saml2.WebSso.Saml2Urls.LogoutUrl">
            <summary>
            The full url of the logout command.
            </summary>
        </member>
        <member name="T:Sustainsys.Saml2.WebSso.SignInCommand">
            <summary>
            Represents the sign in command behaviour.
            Instances of this class can be created directly or by using the factory method
            CommandFactory.GetCommand(CommandFactory.SignInCommandName).
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.SignInCommand.Run(Sustainsys.Saml2.WebSso.HttpRequestData,Sustainsys.Saml2.Configuration.IOptions)">
            <summary>
            Run the command, initiating the sign in sequence.
            </summary>
            <param name="request">Request data.</param>
            <param name="options">Options</param>
            <returns>CommandResult</returns>
        </member>
        <member name="M:Sustainsys.Saml2.WebSso.SignInCommand.Run(Sustainsys.Saml2.Metadata.EntityId,System.String,Sustainsys.Saml2.WebSso.HttpRequestData,Sustainsys.Saml2.Configuration.IOptions,System.Collections.Generic.IDictionary{System.String,System.String})">
            <summary>
            Initiate the sign in sequence.
            </summary>
            <param name="idpEntityId">Entity id of idp to sign in to, or
            null to use default (discovery service if configured)</param>
            <param name="returnPath">Path to redirect to when the sign in
            is complete.</param>
            <param name="request">The incoming http request.</param>
            <param name="options">Options.</param>
            <param name="relayData">Data to store and make available when the
            ACS command has processed the response.</param>
            <returns>Command Result</returns>
        </member>
        <member name="T:Sustainsys.Saml2.XmlHelpers">
            <summary>
            Extension methods and helpers for XmlDocument/XmlElement etc.
            </summary>
        </member>
        <member name="M:Sustainsys.Saml2.XmlHelpers.Sign(System.Xml.XmlDocument,System.Security.Cryptography.X509Certificates.X509Certificate2)">
            <summary>
            Sign an xml document with the supplied cert.
            </summary>
            <param name="xmlDocument">XmlDocument to be signed. The signature is
            added as a node in the document, right after the Issuer node.</param>
            <param name="cert">Certificate to use when signing.</param>
        </member>
        <member name="M:Sustainsys.Saml2.XmlHelpers.XmlDocumentFromString(System.String)">
            <summary>
            Creates an Xml document with secure settings and initialized it from
            a string.
            </summary>
            <param name="source">Source string to load</param>
            <returns>Xml document</returns>
        </member>
        <member name="M:Sustainsys.Saml2.XmlHelpers.CreateSafeXmlDocument">
            <summary>
            Create an Xml Document with secure settings, specifically
            disabling xml external entities. Also set PreserveWhiteSpace = true
            </summary>
            <returns>Xml Document</returns>
        </member>
        <member name="M:Sustainsys.Saml2.XmlHelpers.Remove(System.Xml.XmlAttributeCollection,System.String)">
            <summary>
            Remove the attribute with the given name from the collection.
            </summary>
            <param name="attributes">Attribute collection.</param>
            <param name="attributeName">Name of attribute to remove.</param>
        </member>
        <member name="M:Sustainsys.Saml2.XmlHelpers.RemoveChild(System.Xml.XmlElement,System.String,System.String)">
            <summary>
            Remove the child xml element with the specified name.
            </summary>
            <param name="xmlElement">Parent</param>
            <param name="name">Name of child</param>
            <param name="ns">Namespace of child</param>
        </member>
        <member name="M:Sustainsys.Saml2.XmlHelpers.Sign(System.Xml.XmlDocument,System.Security.Cryptography.X509Certificates.X509Certificate2,System.Boolean)">
            <summary>
            Sign an xml document with the supplied cert.
            </summary>
            <param name="xmlDocument">XmlDocument to be signed. The signature is
            added as a node in the document, right after the Issuer node.</param>
            <param name="cert">Certificate to use when signing.</param>
            <param name="includeKeyInfo">Include public key in signed output.</param>
        </member>
        <member name="M:Sustainsys.Saml2.XmlHelpers.Sign(System.Xml.XmlDocument,System.Security.Cryptography.X509Certificates.X509Certificate2,System.Boolean,System.String)">
            <summary>
            Sign an xml document with the supplied cert.
            </summary>
            <param name="xmlDocument">XmlDocument to be signed. The signature is
            added as a node in the document, right after the Issuer node.</param>
            <param name="cert">Certificate to use when signing.</param>
            <param name="includeKeyInfo">Include public key in signed output.</param>
            <param name="signingAlgorithm">Uri of signing algorithm to use.</param>
        </member>
        <member name="M:Sustainsys.Saml2.XmlHelpers.Sign(System.Xml.XmlElement,System.Security.Cryptography.X509Certificates.X509Certificate2,System.Boolean)">
            <summary>
            Sign an xml element with the supplied cert.
            </summary>
            <param name="xmlElement">xmlElement to be signed. The signature is
            added as a node in the document, right after the Issuer node.</param>
            <param name="cert">Certificate to use when signing.</param>
            <param name="includeKeyInfo">Include public key in signed output.</param>
        </member>
        <member name="M:Sustainsys.Saml2.XmlHelpers.Sign(System.Xml.XmlElement,System.Security.Cryptography.X509Certificates.X509Certificate2,System.Boolean,System.String)">
            <summary>
            Sign an xml element with the supplied cert.
            </summary>
            <param name="xmlElement">xmlElement to be signed. The signature is
            added as a node in the document, right after the Issuer node.</param>
            <param name="cert">Certificate to use when signing.</param>
            <param name="includeKeyInfo">Include public key in signed output.</param>
            <param name="signingAlgorithm">The signing algorithm to use.</param>
        </member>
        <member name="M:Sustainsys.Saml2.XmlHelpers.IsSignedByAny(System.Xml.XmlElement,System.Collections.Generic.IEnumerable{Sustainsys.Saml2.Tokens.SecurityKeyIdentifierClause},System.Boolean,System.String)">
            <summary>
            Checks if an xml element is signed by the given certificate, through
            a contained enveloped signature.
            </summary>
            <param name="xmlElement">Xml Element that should be signed</param>
            <param name="signingKeys">Signing keys to test, one should validate.</param>
            <param name="validateCertificate">Should the certificate be validated too?</param>
            <param name="minimumSigningAlgorithm">The mininum signing algorithm
            strength allowed.</param>
            <returns>True on correct signature, false on missing signature</returns>
            <exception cref="T:Sustainsys.Saml2.Exceptions.InvalidSignatureException">If the data has
            been tampered with or is not valid according to the SAML spec.</exception>
        </member>
        <member name="M:Sustainsys.Saml2.XmlHelpers.FixSignatureIndex(System.Security.Cryptography.Xml.SignedXml,System.Xml.XmlElement)">
            <summary>
            Workaround for a bug in Reference.LoadXml incorrectly counting index
            of signature from the start of the document, not from the start of
            the element. Reported to Microsoft at
            https://connect.microsoft.com/VisualStudio/feedback/details/2288620
            </summary>
            <param name="signedXml">SignedXml</param>
            <param name="signatureElement">Signature element.</param>
        </member>
        <member name="M:Sustainsys.Saml2.XmlHelpers.ValidateSignatureMethodStrength(System.String,System.String)">
            <summary>
            Check if the signature method is at least as strong as the mininum one.
            </summary>
            <param name="minIncomingSignatureAlgorithm"></param>
            <param name="signatureMethod"></param>
            <exception cref="T:Sustainsys.Saml2.Exceptions.InvalidSignatureException">If the signaturemethod is too weak.</exception>
        </member>
        <member name="M:Sustainsys.Saml2.XmlHelpers.PrettyPrint(System.Xml.XmlElement)">
            <summary>
            Pretty an xml element.
            </summary>
            <param name="xml">Xml to pretty print.</param>
            <returns>Nicely indented and readable data.</returns>
        </member>
        <member name="M:Sustainsys.Saml2.XmlHelpers.GetKnownSigningAlgorithms">
            <summary>
            Store a list of signing algorithms that are available in SignedXml.
            This needs to be done through reflection, to keep the library
            targetting lowest supported .NET version, while still getting
            access to new algorithms if the hosting application targets a
            later version.
            </summary>
        </member>
    </members>
</doc>
