Got an error that's giving us a full-stop when the idp is calling the AssertionConsumerService after login. Can you provide any pointers for debugging this?
dbug: ComponentSpace.Saml2.Bindings.Post.HttpPostBinding[0]
The SAML message has been received over HTTP-Post.
fail: ComponentSpace.Saml2.SamlServiceProvider[100]
Receiving an SSO response from a partner identity provider has failed.
ComponentSpace.Saml2.Exceptions.SamlSchemaValidationException: SAML XML schema validation failed. ---> System.ArgumentNullException: Value cannot be null.
Parameter name: input
at System.Xml.XmlReaderSettings.CreateReader(Stream input, Uri baseUri, String baseUriString, XmlParserContext inputContext)
at ComponentSpace.Saml2.Utility.SamlSchemaValidator.Validate(XmlElement xmlElement) in /opt/app-root/src/ComponentSpace/Utility/SamlSchemaValidator.cs:line 83
--- End of inner exception stack trace ---
at ComponentSpace.Saml2.Utility.SamlSchemaValidator.Validate(XmlElement xmlElement) in /opt/app-root/src/ComponentSpace/Utility/SamlSchemaValidator.cs:line 93
at ComponentSpace.Saml2.SamlProvider.ValidateMessage(XmlElement messageElement) in /opt/app-root/src/ComponentSpace/SamlProvider.cs:line 375
at ComponentSpace.Saml2.SamlServiceProvider.ReceiveSsoAsync() in /opt/app-root/src/ComponentSpace/SamlServiceProvider.cs:line 192
dbug: ComponentSpace.Saml2.Authentication.SamlAuthenticationHandler[0]
An exception has been caught by the SAML authentication handler.
ComponentSpace.Saml2.Exceptions.SamlSchemaValidationException: SAML XML schema validation failed. ---> System.ArgumentNullException: Value cannot be null.
And the init code from my Startup.cs file:
private void ConfigureSaml(SamlConfigurations samlConfigurations)
{
samlConfigurations.Configurations = new List<SamlConfiguration>()
{
new SamlConfiguration()
{
LocalServiceProviderConfiguration = new LocalServiceProviderConfiguration()
{
Name = "
https://saml.test.domain", Description = "Example Service Provider",
AssertionConsumerServiceUrl = "
https://saml.test.domain/SAML/AssertionConsumerService", SingleLogoutServiceUrl = "
https://saml.test.domain/SAML/SingleLogoutService", ArtifactResolutionServiceUrl = "
https://saml.test.domain/SAML/ArtifactResolutionService", LocalCertificates = new List<Certificate>()
{
new Certificate()
{
FileName = "Certificates/cert.pfx",
Password = "passwordremoved"
}
}
},
PartnerIdentityProviderConfigurations = new List<PartnerIdentityProviderConfiguration>()
{
new PartnerIdentityProviderConfiguration()
{
Name = "
http://sts.testad.local/adfs/services/trust", Description = "ADFS",
SignAuthnRequest = true,
SignLogoutRequest = true,
SignLogoutResponse = true,
WantAssertionEncrypted = true,
WantLogoutResponseSigned = true,
SingleSignOnServiceUrl = "
https://sts.testad.local/adfs/ls/", SingleLogoutServiceUrl = "
https://sts.testad.local/adfs/ls/?wa=wsignout1.0", ArtifactResolutionServiceUrl = "
https://sts.testad.local/adfs/services/trust/artifactresolution/", PartnerCertificates = new List<Certificate>()
{
new Certificate()
{
FileName = "certificates/testad.local.signing.cer"
}
}
}
}
}
};
}