gcsproxy
gcsproxy copied to clipboard
Add -s option to enforce source bucket name
Summary
This pull request introduces a new -s CLI option that allows specifying a bucket name directly instead of extracting it from the requested paths.
My use case
I'm hosting a private website with a private bucket protected by Identity-Aware Proxy (IAP).
flowchart LR
http(http)---LB-with-IAP
subgraph LB-with-IAP
direction TB
A[Identity-Aware Proxy].->B[Application Load Balancer]
end
LB-with-IAP---cloud-run[Cloud Run - gcsproxy]
cloud-run---bucket[(Private Bucket)]
The path rewriting feature provided by the load balancer can be used to pass the bucket name to gcsproxy.
However, this setup creates an issue when combined with IAP. When IAP is enabled, it processes requests after the path has been rewritten. As a result, the redirect URL after completing the authentication flow will include the rewritten path prefix, which is unintended. Using the new -s option instead of path rewriting resolves this issue.