After I run aws s3 ls
command I get below error message:-
A client error (InvalidRequest) occurred when calling the ListBuckets operation: You are attempting to operate on a bucket in a region that requires Signature Version 4. You can fix this issue by explicitly providing the correct region location using the --region argument, the AWS_DEFAULT_REGION environment variable, or the region variable in the AWS CLI configuration file. You can get the bucket's location by running "aws s3api get-bucket-location --bucket BUCKET".
Below are more details and my findings that may help to answer the question:-
The command is being executed from an EC2 Instance running in
ap-south-1
region.This Amazon doc says that new region created after Jan 30 2014 only support Signature Version 4.
As suggested by error message I tried giving command
aws --region ap-south-1 s3 ls
but the this command also gives the same error message.I have run
yum update
and the AWS CLI version is latest which isaws-cli/1.10.33 Python/2.7.10 Linux/4.4.11-23.53.amzn1.x86_64 botocore/1.4.23
The above
aws s3 ls
command works absolutely fine and lists the buckets if it is executed from an us-east-1 instance.