![AWS IAM 管理员和开发人员](https://linux22.com/image/660092/AWS%20IAM%20%E7%AE%A1%E7%90%86%E5%91%98%E5%92%8C%E5%BC%80%E5%8F%91%E4%BA%BA%E5%91%98.png)
使用控制台创建管理员组建议不要向我为自己创建的 IAM 用户授予访问密钥,我猜是想授予最低特权。
但是,除了成为“管理员”之外,我还想成为 Elastic Beanstalk 应用程序的开发人员。并且,作为开发人员,我需要一个访问密钥来部署到 AWS Elastic Beanstalk使用命令git aws.push
。
那么,我该如何解决这个难题?我是否应该创建两个单独的 IAM 用户:一个用于管理 ( mpasquale-admin
),一个用于开发 ( mpasquale-dev
)?
答案1
有几种方法可以解决这个问题 - 我将使用我的设置来举例说明。
我始终确保 Root 帐户(设置 AWS 帐户的帐户)已启用 MFA,并且令牌或数字 2FA 已安全存储。
一旦创建了根,我就会设置一个“管理员”组和用户:mpasquale-admin,并授予该用户对 AWS 的完全访问权限(有或无计费/取决于业务需要)。
从这里,将您的 Root 帐户密码更改为复杂的密码,并将密码策略设置为非默认密码 - 然后注销 Root 并尽量不要使用它,除非紧急情况等。
登录管理员账户并创建“开发者”组。从这里,您需要附加策略 - 因此搜索以下内容:AWSElasticBeanStalkFullAccess
附加策略并创建组。将开发人员添加到该组(即:mpasquale-dev)。授予该用户控制台访问权限并设置密码等。
在 IAM 中,再次单击“用户”,然后向下滚动到“安全凭证”。单击“管理访问密钥”->“创建访问密钥”(稍后下载)。
现在,我建议使用 Elastic Beanstalk 测试您的应用程序。
从这里,如果您需要进一步限制此策略,您可以编辑附加到开发人员组的策略,并根据需要完善资源限制、用户、子网等。
我建议查看以下内容以获取更多信息:
http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/AWSHowTo.iam.policies.html