Nessie s3 signer use a different endpoint than /aws/s3/sign and also includes query parameters in the URI. Therefore, we need to honor their s3.signer.endpoint which is currently static in code.
Additionally, we need to parameterize the X-Iceberg-Access-Delegation, which currently has the value vended-credentials hardcoded. This is necessary because Nessie does not return the s3.signer.endpoint when the value is set to vended-credentials.
An example of Nessie config from get table endpoint:
Apache Iceberg version
main (development)
Please describe the bug 🐞
Nessie s3 signer use a different endpoint than
/aws/s3/sign
and also includes query parameters in the URI. Therefore, we need to honor theirs3.signer.endpoint
which is currently static in code.Additionally, we need to parameterize the X-Iceberg-Access-Delegation, which currently has the value vended-credentials hardcoded. This is necessary because Nessie does not return the
s3.signer.endpoint
when the value is set tovended-credentials
.An example of Nessie config from get table endpoint: