support saml http-post binding request#54605
Conversation
- add PreferredRequestBinding to SAMLConnectorSpecV2 - add PreferredRequestBinding and PostFormData to SAMLAuthRequest
|
Amplify deployment status
|
|
Most of the change diff is due to boilerplate changes due to proto field update. Let me know if other changes should be extracted to a different PR. |
- add comments to test, improve test case - add comment to SSOLoginConsoleResponse struct - return http error instead of redirection for error
ravicious
left a comment
There was a problem hiding this comment.
I tested this through Teleport as IdP, the connector seems to work both with preferred_request_binding: http-post and without it and I see difference in the requests sent in the network tab.
|
Hello team 👋 |
|
Thanks for the review @anaximand3r. |
Hi! I was using the auth connector |
+1: As extra improvement, I would add the same logic you are already applying in the post binding when teleport acts as IdP. Function |
|
I was just adding that after I read your comment :) Done in 7459806 Generally the |
…/connector-sp-postform
|
@flyinghermit See the table below for backport results.
|
* support saml http-post binding request (#54605) * ref log in place of slog
SAML login from Web UI and console login methods have been updated to support SAML
http-postbinding request.Supporting
http-postbinding request means requesting SAML authentication with HTML form that contains the SAML authentication request. The default we supported washttp-redirectbinding that sends SAML authentication request based on redirect URL. The implementation to support post binding remains largely same as the redirect binding, except for changes needed to support responding with HTML form.Changes:
SAMLConnectorSpecV2proto.PreferredRequestBinding: The field indicates preferred SAML request binding method.SAMLAuthRequestproto:PostForm: SAML authentication request form if thePreferredRequestBindingishttp-post.ClientVersion: facilitates auth to detect if client supportshttp-postbinding.SAMLCeremonythat handles SAML auth request from clients such astsh.The SAML authentication request handling changes are in the
ePR https://github.com/gravitational/teleport.e/pull/6493Compatibility:
This PR only supports
http-postbinding for Web UI SSO and tsh and Connect SSO.SSO MFA, Single Log Out, and
tctl sso testcommands are not covered and can be addressed as a followup.Related to #54826
Testing Guide
preferred_request_binding: http-postvalue.changelog: Web UI, tsh and Connect SSO login now supports
http-postbinding request in Teleport SAML service provider.