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

[Bug] Smoketest recording downloads via S3 presigned URL stopped working #284

Closed
andrewazores opened this issue Feb 13, 2024 · 3 comments
Closed
Assignees
Labels
bug Something isn't working

Comments

@andrewazores
Copy link
Member

Current Behavior

  1. ./smoketest.bash -gt
  2. Select a target, ex the localhost:0 one
  3. Create a new recording
  4. Click the recording's menu, then Download recording

This used to work and result in the recording .jfr and .metadata.json being downloaded to the client. At some point recently this broke - the .metadata.json still appears (since it is actually generated on the client side rather than downloaded from the server), but the request to download the recording file from the S3 provider (cryostat-storage/SeaweedFS in this case) fails with an HTTP 403 Forbidden and a response body indicating that the request signature did not match.

I suspect this has to do with how I put together the external storage URL handling for the case where storage is behind a proxy. The presigned request signature includes information about the host it is valid for, so using a proxy's hostname will fail the signature check.

Expected Behavior

No response

Steps To Reproduce

No response

Environment

No response

Anything else?

No response

@andrewazores andrewazores added the bug Something isn't working label Feb 13, 2024
@andrewazores andrewazores self-assigned this Feb 13, 2024
@andrewazores
Copy link
Member Author

I tried running the smoketest with an older storage container image and the behaviour was the same. Nothing else has changed in a while so I'm not sure what is happening. The only other difference is I'm running this on my laptop instead of my desktop - it would be strange if that was the cause but I will test again on my desktop later on.

@andrewazores
Copy link
Member Author

I've implemented a workaround, but ideally this should actually work as intended with presigned URLs.

@andrewazores
Copy link
Member Author

Closing, presigned URLs are not used like this in 3.0 For the next release it would be a good goal: #269

@github-project-automation github-project-automation bot moved this from In Progress to Done in 3.0.0 release Jun 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
No open projects
Status: Done
Development

No branches or pull requests

1 participant