EC2 的 Juju boostrap 因访问被拒绝而失败,但凭证有效

EC2 的 Juju boostrap 因访问被拒绝而失败,但凭证有效

长话短说,我正在使用 s3cmd 来操作 S3 存储桶,并将访问凭据复制到我的 environment.yaml 的新“smlamazon”部分下,但这在引导时失败,并拒绝访问:

mitchy$ s3cmd ls
2013-11-08 18:49  s3://sml-juju
2012-11-27 14:38  s3://sml-public
2013-05-27 15:45  s3://sml-website-backups
mitchy$ juju bootstrap --constraints "cpu-power=0 mem=512M" -v
verbose is deprecated with the current meaning, use show-log
2013-11-08 18:53:53 INFO juju.environs open.go:156 environment info already exists; using New not Prepare
2013-11-08 18:53:53 INFO juju.provider.ec2 ec2.go:193 opening environment "smlamazon"
2013-11-08 18:53:54 ERROR juju supercommand.go:282 Access Denied

我基本上复制了“amazon”块并将其重命名为“smlamazon”,并更新了它的访问和密钥(以及 s3 和管理密钥)。

我错过了什么?

答案1

Juju 需要访问才能控制 S3 存储桶和 EC2 实例。如果您的访问凭证是从 AWS IAM 生成的密钥,则可能意味着您没有将正确的访问组策略添加到安全凭证中。可以采取以下步骤来授予此访问密钥对以配置您的 AWS 基础设施:

访问 IAM 控制面板 IAM 控制面板 - 添加用户

获取访问密钥和秘密访问密钥 IAM 控制面板 - 按键

选择用户并设置策略模板 IAM——访问策略

选择 EC2 完全访问和 S3 完全访问 EC2 完全访问权限 S3 完全访问权限 笔记- 如果您在公司环境中,这可能会违反访问策略。如果您需要对特定可用区或自定义访问级别进行分段权限,则应咨询管理员。这可以由您的管理员生成,也可以按照 AWS IAM 策略教程生成。

相关内容