モニタリングサービスにリンクされたロール - AWS Elastic Beanstalk

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

モニタリングサービスにリンクされたロール

AWS Elastic Beanstalk AWS Identity and Access Management (IAM) サービスにリンクされたロールを使用する。サービスにリンクされたロールは、Elastic Beanstalk に直接リンクされた一意のタイプの IAM ロールです。サービスにリンクされたロールは Elastic Beanstalk によって事前定義されており、 AWS サービスがユーザーに代わって他のサービスを呼び出すために必要なすべての権限が含まれます。

サービスにリンクされたロールを使用することで、必要なアクセス許可を手動で追加する必要がなくなるため、Elastic Beanstalk の設定が簡単になります。Elastic Beanstalk には、サービスにリンクされたロールのアクセス許可を定義します。特に定義しなければ、Elastic Beanstalk のみがそのロールを引き受けることができます。定義された権限には、信頼ポリシーと権限ポリシーに含まれており、その権限ポリシーを他の IAM エンティティにアタッチすることはできません。

サービスリンクロールは、まずその関連リソースを削除しなければ削除できません。これにより、不注意でリソースへのアクセスに必要なアクセス許可が削除されることがなくなり、Elastic Beanstalk リソースが保護されます。

サービスにリンクされたロールをサポートする他のサービスについては、IAM と連携するAWS のサービスを参照して、[Service-Linked Role] (サービスにリンクされたロール) 列が[Yes] (はい) になっているサービスを探してください。サービスにリンクされたロールに関するドキュメントをサービスで表示するには、[はい] リンクを選択します。

Elastic Beanstalk のサービスにリンクされたロールのアクセス許可

Elastic Beanstalk は、AWSServiceRoleForElasticBeanstalk— という名前のサービスにリンクされたロールを使用します。これにより、Elastic Beanstalk は実行中の環境の状態を監視し、ヘルスイベント通知を発行できます。

AWSServiceRoleForElasticBeanstalk サービスにリンクされたロールは、以下のサービスを信頼してロールを引き受けます。

  • elasticbeanstalk.amazonaws.com

AWSServiceRoleForElasticBeanstalk サービスにリンクされたロールのアクセス権限ポリシーには、Elastic Beanstalk がユーザーに代わってアクションを完了するために必要なすべてのアクセス権限が含まれています。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCloudformationReadOperationsOnElasticBeanstalkStacks", "Effect": "Allow", "Action": [ "cloudformation:DescribeStackResource", "cloudformation:DescribeStackResources", "cloudformation:DescribeStacks" ], "Resource": [ "arn:aws:cloudformation:*:*:stack/awseb-*", "arn:aws:cloudformation:*:*:stack/eb-*" ] }, { "Sid": "AllowOperations", "Effect": "Allow", "Action": [ "autoscaling:DescribeAutoScalingGroups", "autoscaling:DescribeAutoScalingInstances", "autoscaling:DescribeNotificationConfigurations", "autoscaling:DescribeScalingActivities", "autoscaling:PutNotificationConfiguration", "ec2:DescribeInstanceStatus", "ec2:AssociateAddress", "ec2:DescribeAddresses", "ec2:DescribeInstances", "ec2:DescribeSecurityGroups", "elasticloadbalancing:DescribeInstanceHealth", "elasticloadbalancing:DescribeLoadBalancers", "elasticloadbalancing:DescribeTargetHealth", "elasticloadbalancing:DescribeTargetGroups", "sqs:GetQueueAttributes", "sqs:GetQueueUrl", "sns:Publish" ], "Resource": [ "*" ] } ] }

サービスリンクロールの作成、編集、削除をIAM エンティティ (ユーザー、グループ、ロールなど) に許可するには、許可を設定する必要があります。詳細については、「IAM ユーザーガイド」の「サービスリンクロール権限」を参照してください。

または、 AWS 管理ポリシーを使用して Elastic Beanstalk へのフルアクセスを提供することもできます

Elastic Beanstalk のサービスにリンクされたロールの作成

サービスリンクロールを手動で作成する必要はありません。Elastic Beanstalk API を使用して Elastic Beanstalk 環境を作成するとき、サービスロールを指定しないと、Elastic Beanstalk によってサービスにリンクされたロールが作成されます。

重要

2017 年 9 月 27 AWSServiceRoleForElasticBeanstalk 日にサービスにリンクされたロールのサポートが開始される前に Elastic Beanstalk サービスを使用していて、アカウントにそのロールが必要だった場合、Elastic Beanstalk はアカウントにロールを作成しました。 AWSServiceRoleForElasticBeanstalk 詳細については、「IAM アカウントに新しいロールが表示される」を参照してください。

環境の作成時に Elastic Beanstalk AWSServiceRoleForElasticBeanstalk がアカウントのサービスにリンクされたロールを作成しようとする場合、権限が必要です。iam:CreateServiceLinkedRoleこのアクセス許可がない場合、環境の作成は失敗し、問題を説明するメッセージが表示されます。

別の方法として、サービスにリンクされたロールを作成するアクセス許可を持つ別のユーザーが IAM を使用して、サービスにリンクされたロールを事前に作成できます。この場合は、iam:CreateServiceLinkedRole アクセス許可がなくても、環境を作成できます。

お客様 (または別のユーザー) は、IAM コンソールを使用して、[Elastic Beanstalk] ユースケースでサービスにリンクされたロールを作成できます。IAM CLI または IAM API で、elasticbeanstalk.amazonaws.com サービス名でサービスリンクロールを作成します。詳細については、「IAM ユーザーガイド」の「サービスにリンクされたロールの作成」を参照してください。このサービスにリンクされたロールを削除しても、この同じプロセスを使用して、もう一度ロールを作成できます。

このサービスリンクロールを削除した後で再度作成する必要が生じた場合は、同じ方法でアカウントにロールを再作成できます。Elastic Beanstalk API を使用して Elastic Beanstalk 環境を作成するとき、サービスロールを指定しないと、Elastic Beanstalk によってサービスにリンクされたロールが再度作成されます。

Elastic Beanstalk のサービスにリンクされたロールの編集

Elastic Beanstalk では、 AWSServiceRoleForElasticBeanstalk サービスにリンクされたロールを編集することはできません。サービスリンクロールを作成すると、多くのエンティティによってロールが参照される可能性があるため、ロール名を変更することはできません。ただし、IAM を使用したロールの説明の編集はできます。詳細については、「IAM ユーザーガイド」の「サービスリンクロールの編集」を参照してください。

Elastic Beanstalk のサービスにリンクされたロールの削除

サービスリンクロールが必要な機能またはサービスが不要になった場合には、そのロールを削除することをお勧めします。そうすることで、積極的にモニタリングまたは保守されていない未使用のエンティティを排除できます。ただし、手動で削除する前に、サービスリンクロールのリソースをクリーンアップする必要があります。

サービスリンクロールのクリーンアップ

サービスにリンクされたロールを IAM で削除する前に、すべての Elastic Beanstalk 環境が終了しているか、または別のサービスロールを使用していることを確認する必要があります。

注記

環境を終了しようとしたときに、サービスにリンクされたロールを Elastic Beanstalk サービスが使用していると、終了は失敗する可能性があります。失敗した場合は、数分待ってから操作を再試行してください。

(コンソール) を使用する Elastic Beanstalk 環境を終了するには AWSServiceRoleForElasticBeanstalk
  1. Elastic Beanstalk コンソールを開きリージョンリストでを選択します。 AWS リージョン

  2. ナビゲーションペインで、[環境] を選択し、リストから環境の名前を選択します。

    注記

    環境が多数ある場合は、検索バーを使用して環境リストをフィルタリングします。

  3. [Actions] (アクション)、[Terminate environment] (環境の終了) の順に選択します。

  4. 画面上のダイアログボックスを使用して、環境の終了を確認します。

EB CLI を使用した Elastic Beanstalk 環境の終了の詳細については、「eb terminate」を参照してください。

API を使用して Elastic Beanstalk TerminateEnvironment環境を終了する方法の詳細については、を参照してください。

サービスリンクロールの手動による削除

IAM コンソール、IAM CLI、または IAM API を使用して、 AWSServiceRoleForElasticBeanstalk サービスにリンクされたロールを削除します。詳細については、「IAM ユーザーガイド」の「サービスリンクロールの削除」を参照してください。

Elastic Beanstalk サービスにリンクされたロールでサポートされているリージョン

Elastic Beanstalk は、サービスを利用できるすべてのリージョンで、サービスにリンクされたロールの使用をサポートしています。詳細については、「AWS Elastic Beanstalk エンドポイントとクォータ」を参照してください。