我尝试列出并从Requester Pays S3 bucket下载文件:
aws s3 ls --request-payer requester s3://requester-pays-bucket/
我从EC2实例运行此命令,但它失败了:
Unable to locate credentials. You can configure credentials by running "aws configure".
错误很明显,但我仍然有些惊讶。请求者付款桶的目标是将S3数据传输的成本减少到请求者。由于我是从EC2发起我的请求,我作为请求者的身份应该已经清楚S3,不是吗?
S3或AWS CLI能否以某种方式自动从我正在运行的EC2实例中获取我的身份?或者我 以某种明确的方式提供凭证?
答案 0 :(得分:0)
您必须明确提供可以访问S3存储桶的IAM用户的凭据。只需转到您的AWS账户的IAM仪表板,并创建一个新用户,该用户对s3具有程序化访问权限。在此之后,您将获得秘密访问密钥和访问密钥ID 。
然后登录您的EC2实例,在终端中运行命令“aws configure”,系统将要求您输入访问密钥ID ,密钥访问密钥,默认区域如果您想提供,只需输入这些详细信息,您就可以使用您的命令了。