Class SAMLResponse
Represents a SAML response.
Inherited Members
Namespace: ComponentSpace.SAML2.Protocols
Assembly: ComponentSpace.Saml2.dll
Syntax
public class SAMLResponse : StatusResponseType
  Remarks
Refer to the Assertions and Protocol for the OASIS Security Assertion Markup Language (SAML) V2.0 specification for further details.
Constructors
SAMLResponse()
Initializes a new instance of the SAMLResponse class.
Declaration
public SAMLResponse()
  SAMLResponse(XmlElement)
Initializes a new instance of the SAMLResponse class from XML.
Declaration
public SAMLResponse(XmlElement xmlElement)
  Parameters
| Type | Name | Description | 
|---|---|---|
| XmlElement | xmlElement | The SAML response XML.  | 
      
Exceptions
| Type | Condition | 
|---|---|
| SAMLSerializationException | Thrown when the XML deserialization fails.  | 
      
Properties
Assertions
Gets or sets the assertions.
This includes all unsigned, signed and encrypted assertions.
The list may contain unencrypted and unsigned SAML assertions asSAMLAssertion objects,
signed SAML assertions as XmlElement objects, 
and encrypted SAML assertions as EncryptedAssertion objects.
To get just the unencrypted, unsigned assertions use GetUnsignedAssertions.
To get just the signed assertions use GetSignedAssertions. 
To get just the encrypted assertions use GetEncryptedAssertions. 
Declaration
public IList Assertions { get; set; }
  Property Value
| Type | Description | 
|---|---|
| IList | The assertions.  | 
      
See Also
Methods
GetEncryptedAssertion()
Returns the encrypted SAML assertion.
It's assumed the SAML response contains a single encrypted SAML assertion.
To get the unencrypted, unsigned assertion use GetUnsignedAssertion. 
To get the signed assertion use GetSignedAssertion. 
Declaration
public EncryptedAssertion GetEncryptedAssertion()
  Returns
| Type | Description | 
|---|---|
| EncryptedAssertion | The encrypted assertion or   | 
      
See Also
GetEncryptedAssertions()
Returns all encrypted assertions.
To get the unencrypted, unsigned assertions use GetUnsignedAssertions. 
To get the signed assertions use GetSignedAssertions. 
Declaration
public IList<EncryptedAssertion> GetEncryptedAssertions()
  Returns
| Type | Description | 
|---|---|
| IList<EncryptedAssertion> | The encrypted assertions.  | 
      
See Also
GetSignedAssertion(X509Certificate2)
Returns the SAML assertion.
It's assumed the SAML response contains a single signed SAML assertion.
To get the unencrypted, unsigned assertion use GetUnsignedAssertion. 
To get the encrypted assertion use GetEncryptedAssertion. 
Declaration
public SAMLAssertion GetSignedAssertion(X509Certificate2 x509Certificate)
  Parameters
| Type | Name | Description | 
|---|---|---|
| X509Certificate2 | x509Certificate | The X.509 certificate used to verify the XML signature.  | 
      
Returns
| Type | Description | 
|---|---|
| SAMLAssertion | The SAML assertion or   | 
      
Exceptions
| Type | Condition | 
|---|---|
| SAMLSignatureException | Thrown when the signature verification fails.  | 
      
See Also
GetSignedAssertions()
Returns all signed assertions.
To get the unencrypted, unsigned assertions use GetUnsignedAssertions. 
To get the encrypted assertions use GetEncryptedAssertions. 
Declaration
public IList<XmlElement> GetSignedAssertions()
  Returns
| Type | Description | 
|---|---|
| IList<XmlElement> | The signed assertions.  | 
      
See Also
GetUnsignedAssertion()
Returns the SAML assertion.
It's assumed the SAML response contains a single unencrypted, unsigned SAML assertion.
To get the signed assertion use GetSignedAssertion. 
To get the encrypted assertion use GetEncryptedAssertion. 
Declaration
public SAMLAssertion GetUnsignedAssertion()
  Returns
| Type | Description | 
|---|---|
| SAMLAssertion | The SAML assertion or   | 
      
See Also
GetUnsignedAssertions()
Returns all unencrypted, unsigned assertions.
To get the signed assertions use GetSignedAssertions. 
To get the encrypted assertions use GetEncryptedAssertions. 
Declaration
public IList<SAMLAssertion> GetUnsignedAssertions()
  Returns
| Type | Description | 
|---|---|
| IList<SAMLAssertion> | The assertions.  | 
      
See Also
IsValid(XmlElement)
Indicates whether the XML is a SAML response.
Declaration
public static bool IsValid(XmlElement xmlElement)
  Parameters
| Type | Name | Description | 
|---|---|---|
| XmlElement | xmlElement | The XML to test.  | 
      
Returns
| Type | Description | 
|---|---|
| bool | 
  | 
      
ToString()
Converts the SAML response to a string.
Declaration
public override string ToString()
  Returns
| Type | Description | 
|---|---|
| string | The SAML response as a string.  | 
      
Overrides
ToXml()
Serializes the SAML response to XML.
Declaration
public XmlElement ToXml()
  Returns
| Type | Description | 
|---|---|
| XmlElement | The SAML response as XML.  | 
      
Remarks
An XML document is created.
Exceptions
| Type | Condition | 
|---|---|
| SAMLSerializationException | Thrown when the XML serialization fails.  | 
      
ToXml(XmlDocument)
Serializes the SAML response to XML.
Declaration
public XmlElement ToXml(XmlDocument xmlDocument)
  Parameters
| Type | Name | Description | 
|---|---|---|
| XmlDocument | xmlDocument | The owning XML document.  | 
      
Returns
| Type | Description | 
|---|---|
| XmlElement | The SAML response as XML.  | 
      
Exceptions
| Type | Condition | 
|---|---|
| SAMLSerializationException | Thrown when the XML serialization fails.  |