Skip to content
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

[Question] How should WhoAmI and Health requests be handled with the header verifier? #3440

Closed
cwperks opened this issue Oct 2, 2023 · 4 comments
Labels
enhancement New feature or request

Comments

@cwperks
Copy link
Member

cwperks commented Oct 2, 2023

As part of work related to: opensearch-project/OpenSearch#10260

A new step in the netty pipeline is being introduced before decompression called header_verifier. From the Draft implementation in #3418, it will skip decompression for unauthenticated requests since the body will only wind up being ignored.

The security plugin has logic to skip authentication for 3 types of requests:

  • OPTIONS
  • WhoAmI
  • Health

How should these be handled with conditional decompression? Its invalid for each of these requests to have a body so is it possible to reject them if they do? Since conditional decompression is an optimization to forgo decompressing a request if its unauthenticated, can we take advantage of that optimization and skip decompression if these requests have a body?

@cwperks cwperks added enhancement New feature or request untriaged Require the attention of the repository maintainers and may need to be prioritized labels Oct 2, 2023
@peternied
Copy link
Member

Thanks for filing - I'm pretty sure the ASC endpoint should be included in this list too.

@cwperks
Copy link
Member Author

cwperks commented Oct 2, 2023

There are 2 acs endpoints for SAML:

  • /_opendistro/_security/saml/acs
  • /_opendistro/_security/saml/acs/idpinitiated

I am trying to understand who and how both of these endpoints are called and will update this post with more info after diving further into the implementation of these endpoints.

@stephen-crawford
Copy link
Contributor

[Triage] Hi @cwperks, thank you for filing this issue. This seems like a tracking issue for work you are currently conducting. Please leave your findings here and then close or alternatively provide explicit action items & closure criteria for someone else to pick up. Otherwise great job investigating!

@stephen-crawford stephen-crawford removed the untriaged Require the attention of the repository maintainers and may need to be prioritized label Oct 9, 2023
@cwperks
Copy link
Member Author

cwperks commented Oct 23, 2023

These endpoints are both defined in the security plugin:

Both endpoints do not accept a body with the request so in the headerverifier model, if gzipped content is present it should be ignored and assumed to be a malformed call.

@cwperks cwperks closed this as completed Oct 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants