Elastic Beanstalk サービスロール - AWS Elastic Beanstalk

Elastic Beanstalk サービスロール

サービスロールは、他のサービスを代理で呼び出すときに Elastic Beanstalk が引き受ける IAM ロールです。例えば、Elastic Beanstalk は、Amazon Elastic Compute Cloud (Amazon EC2)、Elastic Load Balancing、Amazon EC2 Auto Scaling の各 API を呼び出すときに、サービスロールを使用して情報を収集します。この情報には、拡張されたヘルスモニタリングの AWS リソースのヘルスが含まれる場合があります。Elastic Beanstalk が使用するサービスロールは、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": [ "*" ] } ] }

このポリシーには、Elastic Beanstalk にワーカー環境のキューアクティビティのモニタリングを許可する Amazon SQS アクションも含まれています。

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 によって事前定義されており、お客様の代わりにサービスが他の AWS のサービス を呼び出すために必要なアクセス許可がすべて含まれています。このサービスにリンクされたロールはお客様のアカウントに関連付けられています。Elastic Beanstalk によって一度作成されたロールは、追加の環境を作成するときにも使用されます。IAM を使用して、モニタリングサービスにリンクされたロールを、アカウント用として事前に作成することもできます。アカウントにモニタリングサービスにリンクされたロールがある場合、そのロールを使って Elastic Beanstalk コンソールに環境を作成するか、Elastic Beanstalk API または EB CLI を使用して環境を作成することができます。サービスにリンクされたロールを Elastic Beanstalk 環境で使用する方法については、「Elastic Beanstalk でのサービスにリンクされたロールの使用」を参照してください。

サービスロールの詳細については、「Elastic Beanstalk サービスロールの管理」を参照してください。