Elastic Beanstalk 服务角色 - Amazon Elastic Beanstalk
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

Elastic Beanstalk 服务角色

服务角色是 Elastic Beanstalk 在代表您调用其他服务时代入的 IAM 角色。例如,Elastic Beanstalk 在调用 Amazon Elastic Compute Cloud (Amazon EC2)、Elastic Load Balancing 和 Amazon EC2 Auto Scaling API 来收集有关其Amazon资源运行状况的信息用于增强型运行状况监控时,使用您在创建 Elastic Beanstalk 环境时指定的服务角色。

AWSElasticBeanstalkEnhancedHealth 托管策略包含 Elastic Beanstalk 监控环境运行状况所需的所有权限:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "elasticloadbalancing:DescribeInstanceHealth", "elasticloadbalancing:DescribeLoadBalancers", "elasticloadbalancing:DescribeTargetHealth", "ec2:DescribeInstances", "ec2:DescribeInstanceStatus", "ec2:GetConsoleOutput", "ec2:AssociateAddress", "ec2:DescribeAddresses", "ec2:DescribeSecurityGroups", "sqs:GetQueueAttributes", "sqs:GetQueueUrl", "autoscaling:DescribeAutoScalingGroups", "autoscaling:DescribeAutoScalingInstances", "autoscaling:DescribeScalingActivities", "autoscaling:DescribeNotificationConfigurations", "sns:Publish" ], "Resource": [ "*" ] } ] }

此策略还包括 Amazon SQS 操作,以允许 Elastic Beanstalk 监控工作线程环境的队列活动。

在使用 Elastic Beanstalk 控制台创建环境时,Elastic Beanstalk 将提示您创建一个具有默认权限集的服务角色(名为 aws-elasticbeanstalk-service-role)和一个允许 Elastic Beanstalk 代入该服务角色的信任策略。如果您启用托管平台更新,Elastic Beanstalk 会附加另一策略,其中包含可启用该功能的权限。

同样,当您使用 Elastic Beanstalk 命令行界面 (EB CLI) 的 eb create 命令创建环境但未通过 --service-role 选项指定服务角色时,Elastic Beanstalk 将创建默认服务角色 aws-elasticbeanstalk-service-role。如果默认服务角色已存在,Elastic Beanstalk 会将其用于新环境。

当您使用 Elastic Beanstalk API 的 CreateEnvironment 操作创建环境但未指定服务角色时,Elastic Beanstalk 会创建监控服务相关角色。这是由 Elastic Beanstalk 预定义的独特类型的服务角色,它具有服务代表您调用其他Amazon服务所需的所有权限。服务相关角色与您的账户关联。Elastic Beanstalk 将创建一次,然后在创建其他环境时重用。您也可以使用 IAM 提前创建账户的监控服务相关角色。在您的账户具有监控服务相关角色时,您可以通过 Elastic Beanstalk API、Elastic Beanstalk 控制台或 EB CLI 使用该角色创建环境。有关将服务相关角色与 Elastic Beanstalk 环境结合使用的详细信息,请参阅将服务相关角色用于 Elastic Beanstalk

有关服务角色的更多信息,请参阅管理 Elastic Beanstalk 服务角色