-
Notifications
You must be signed in to change notification settings - Fork 28
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
"Error: Missing signature" result seems to not conform to saml-bindings-2.0 #143
Comments
@itzg Thank you for reporting the error. Will take a look into this asap. |
Thanks! But really, no rush at all. I was just investigating a scenario reported at my https://github.com/itzg/saml-auth-proxy. |
@itzg Thanks for reporting this, we hadn't looked at the implementation of this part of the RFC. We'll report back as soon as we have had a chance to support this spec. |
@itzg Interestingly there is no public certificate anywhere in the request so it looks like that has to be exchanged in some form earlier to sending the request. Trying to check what the RFC says about this but if you have an idea of how that is supposed to work then please let me know. For now I could temporarily let the request bypass the validation check. |
As far I know, it is standard practice to upload the SP's metadata to the IdP prior to authorizations, such as https://samltest.id/start-sp-test/ If the public key were transferred with every request it seems like that would defeat the chain of trust. I haven't looked that up in the spec yet. Don't worry about making any special changes to the verification. I'm not actively needing to test SAML at this time. |
@itzg That makes sense, we wanted to be as stateless as possible. Public key transfer with every request is not a problem with the chain of trust in itself since it is contained inside the SAML request in a POST request. We'll have a think about tackling this case. |
Pushed a workaround for now - #159 |
When my SP makes this authn redirect request (line breaks added for clarity):
Then the response page only shows ""Error: Missing signature".
FWIW I identified this section of code as the origin of that response
mock-saml/utils/request.ts
Lines 34 to 40 in b6f2e89
From the saml-bindings-2.0 specification, section 3.4.4, it states
As such, DEFLATE is the mechanism in play, which then is discussed in section 3.4.4.1. Item 1 of XML serialization states:
which is what the SAML authentication library that I am uses does. That seems to be a mismatch with the expectation of the code referenced above, but I might be missing some broader context of the code.
Further in 3.4.4.1 the block that starts:
You'll note that the URL I attempted, shown above, includes
SigAlg
andSignature
, but they don't seem to be considered by the request processing.The text was updated successfully, but these errors were encountered: