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
Ideally, if a host name is provided in the request's Host header, AWS4Signer should use that instead.
Use Case
In cases where the target host is behind a load balancer/gateway, the final host name will be that of the host which hosts the API (Eg: AWS Neptune /sparql API).
Clients should be able to set the target host name in header in order for the target host to verify the request.
Proposed Solution
If a host name is provided in the request's Host header, AWS4Signer should use that instead of extracting from endpoint url.
Other Information
awscurl command line tool is able to honour the host header.
eg:
The below invocation works
So the feature request is to not overwrite the Host header if the request already has one.
It's unusual that this is needed at the AWS4Signer level. You can override the endpoint at the client level with a custom EndpointConfiguration but I guess you can't use this.
This is weird of AWS4Signer to set host as endpoint .
StringBuilder hostHeaderBuilder = new StringBuilder(endpoint.getHost());
Due to this unable to access AWS service that are running behind NLB .
Describe the feature
As of now, AWS4Signer extracts host name from end point url and uses it to set the
Host
header and compute hash to sign the request.Ideally, if a host name is provided in the request's
Host
header, AWS4Signer should use that instead.Use Case
In cases where the target host is behind a load balancer/gateway, the final host name will be that of the host which hosts the API (Eg: AWS Neptune
/sparql
API).Clients should be able to set the target host name in header in order for the target host to verify the request.
Proposed Solution
If a host name is provided in the request's
Host
header, AWS4Signer should use that instead of extracting from endpoint url.Other Information
awscurl
command line tool is able to honour the host header.eg:
The below invocation works
Acknowledgements
AWS Java SDK version used
1.11.1009
JDK version used
11.0.16.1
Operating System and version
MacOS Ventura 13.3.1 (22E261)
The text was updated successfully, but these errors were encountered: