aws cli签名版本4

时间:2017-03-18 08:24:36

标签: amazon-web-services amazon-s3 aws-cli

我希望将我的所有数据从帐户Bucket1的{​​{1}}移至帐户A的{​​{1}}。

为此:

  1. 我为Windows下载了Bucket2
  2. 使用命令B输入AWS CLI个凭据(这些凭据来自帐户IAM
  3. 运行命令以同步存储桶:aws configure

    我收到以下错误:

  4.   

    致命错误:调用ListObject操作时发生错误(InvalidRequest):您正在尝试对需要签名版本4的区域中的存储桶进行操作。您可以通过使用 - 显式提供正确的区域位置来解决此问题。 -region参数,AWS_DEFAULT_REGION环境变量或AWS CLI配置文件中的区域变量。您可以通过运行“aws s3api get-bucket-location --bucket BUCKET”来获取存储桶的位置。

    如何解决此错误?

    B

2 个答案:

答案 0 :(得分:2)

我的S3网址如下:https://console.aws.amazon.com/s3/home?region=us-east-1 所以我认为us-east-1是我的地区,但实际上并非如此!

我使用AWS命令查找Bucket2区域,它告诉我一个不同的区域。

然后我使用了这个命令aws s3 sync s3://Bucket1 s3://Bucket2 --region Asia Pacific (Mumbai),一切正常!

答案 1 :(得分:1)

寻找铲斗的正确区域(请参见下图)。
通过指定正确的区域来尝试以下命令:

aws s3 ls --region us-west-2

enter image description here

S3是全球性的-不要让它误导您。