AWS S3: The bucket you are attempting to access must be addressed using the specified endpoint

1.4K    Asked by WandaMay in Tableau , Asked on Jul 19, 2021

I am trying to delete uploaded image files with the AWS-SDK-Core Ruby Gem.

I have the following code:

require 'aws-sdk-core'
def pull_picture(picture)
    Aws.config = {
        :access_key_id => ENV["AWS_ACCESS_KEY_ID"],
        :secret_access_key => ENV["AWS_SECRET_ACCESS_KEY"],
        :region => 'us-west-2'
    }
    s3 = Aws::S3::Client.new
    test = s3.get_object(
        :bucket => ENV["AWS_S3_BUCKET"],
        :key => picture.image_url.split('/')[-2],   
    )
end

However, I am getting the following error:

The bucket you are attempting to access must be addressed using the specified endpoint. Please send all future requests to this endpoint.

I know the region is correct because if I change it to us-east-1, the following error shows up:

The specified key does not exist.

What am I doing wrong here?

Answered by Hasegawa Saito

If you receive this statement:

The bucket you are attempting to access must be addressed using the specified endpoint. Please send all future requests to this endpoint.

It means your bucket must have been created in a different region. The standard US region is us-east-1

What is S3 endpoint?

An S3 VPC endpoint provides a way for an S3 request to be routed through to the Amazon S3 service, without having to connect a subnet to an internet gateway. The S3 VPC endpoint is also known as a gateway endpoint.



Your Answer

Interviews

Parent Categories