我使用的是最新版本的s3cmd 1.5.2。根据这个post,1.5.0-alpha2支持IAM角色,所以我假设这也必须在1.5.2中得到支持。我添加了" security_token"在s3cfg文件中,如post中所述。但我仍然收到错误"错误:S3错误:您提供的AWS访问密钥ID在我们的记录中不存在。"我做错了什么或这个版本不支持IAM角色?
答案 0 :(得分:2)
我自己想出了答案。深入了解s3cmd代码后,发现不是添加" security_token "正如post和其他来源所述,我们需要添加" access_token "在s3cfg文件中。如果在与角色关联的群集上使用s3cmd,则无需传递任何s3cfg文件。来自 1.5.0-alpha2及以上的所有版本都支持IAM角色。
答案 1 :(得分:1)
目前,建议使用AWS Command-Line Interface (CLI)。
与使用AWS开发工具包的任何软件一样,如果使用角色启动Amazon EC2实例,AWS CLI将自动使用基于角色的凭据。还可以通过环境变量或配置文件指定凭据。