You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Sep 25, 2026. It is now read-only.
Repository navigation
This repository was archived by the owner on Sep 25, 2026. It is now read-only.
google-cloud-storage: Path segment of signed URLs not correct for objects starting with a forward slash. #38
All slashes should be preserved; the library currently checks for one and removes it, although I can't determine why. I saw the original issue (See googleapis/google-cloud-java#1008 and googleapis/google-cloud-java#1006), but the comments there were very vague and didn't seem to outline an example URL for which this was valid behavior. I'm guessing it made sense for the way the library was written at the time, but today, it prevents users from correctly forming a signed URL for objects whose names start with a forward slash.
Current (wrong) behavior:
The object "/foo" in the bucket "bucket" ends up having a signed URL that starts with one of these strings:
The object "/foo" in the bucket "bucket" should have a signed URL that starts with one of these strings (notice the preserved forward slashes in the resource name):
@frankyn FR (#84) sounds good and storage conformance tests are extremely good. One note: the current problem is reproducible with both V2 and V4, when #84 states only about V4.
Activity
dmitry-fa commentedon Jan 28, 2020
I think this is a bug in java code. Signing URLs with gsutil works fine:
Signing URLs with java doesn't work as expected:
output:
frankyn commentedon Jan 29, 2020
Deduping against inconsistency FR (#84) that's prioritized right now.
Storage Conformance tests now include a test for this case.
dmitry-fa commentedon Jan 29, 2020
@frankyn FR (#84) sounds good and storage conformance tests are extremely good. One note: the current problem is reproducible with both V2 and V4, when #84 states only about V4.