AWS IAM 用户应该拥有哪些策略模板才能部署 EB 应用程序?
What policy templates should an AWS IAM user have in order to deploy an EB application?
AWS IAM 用户应该使用哪些策略模板来部署和维护 EB 应用程序(例如来自客户端计算机的网站代码)? IAMReadOnlyAccess 加上 PowerUserAccess 似乎就足够了,但我想知道后者是否有点矫枉过正。我可以将策略限制到单个 EB 实例或应用程序吗?
当您在 Web 控制台中创建 IAM 角色时,有一个名为 ElasticBeanstalkFullAccess
的预定义角色。这将授予您对弹性 beanstalk 所需的所有底层资源的完全权限。你可以看到 general doc on this.
限制到特定环境或应用程序要困难得多,但可行。它要求您将用户限制为使用 arn 的特定资源,包括所有底层资源及其 arn。 See the doc on this.
作为参考,完整的弹性 beantalk 策略如下所示:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"elasticbeanstalk:*",
"ec2:*",
"elasticloadbalancing:*",
"autoscaling:*",
"cloudwatch:*",
"s3:*",
"sns:*",
"cloudformation:*",
"rds:*",
"sqs:*",
"iam:PassRole"
],
"Resource": "*"
}
]
}
AWS IAM 用户应该使用哪些策略模板来部署和维护 EB 应用程序(例如来自客户端计算机的网站代码)? IAMReadOnlyAccess 加上 PowerUserAccess 似乎就足够了,但我想知道后者是否有点矫枉过正。我可以将策略限制到单个 EB 实例或应用程序吗?
当您在 Web 控制台中创建 IAM 角色时,有一个名为 ElasticBeanstalkFullAccess
的预定义角色。这将授予您对弹性 beanstalk 所需的所有底层资源的完全权限。你可以看到 general doc on this.
限制到特定环境或应用程序要困难得多,但可行。它要求您将用户限制为使用 arn 的特定资源,包括所有底层资源及其 arn。 See the doc on this.
作为参考,完整的弹性 beantalk 策略如下所示:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"elasticbeanstalk:*",
"ec2:*",
"elasticloadbalancing:*",
"autoscaling:*",
"cloudwatch:*",
"s3:*",
"sns:*",
"cloudformation:*",
"rds:*",
"sqs:*",
"iam:PassRole"
],
"Resource": "*"
}
]
}