Amazon MQ のサービスリンクロールの使用 - Amazon MQ

Amazon MQ のサービスリンクロールの使用

Amazon MQ は、AWS Identity and Access Management (IAM) サービスリンクロールを使用しています。サービスリンクロールは、Amazon MQ に直接リンクされた特殊なタイプの IAM ロールです。サービスリンクロールは Amazon MQ によって事前に定義されており、サービスがユーザーに代わって AWS のその他サービスを呼び出すために必要なすべての許可が含まれています。

必要な許可を手動で追加する必要がないため、サービスリンクロールは Amazon MQ のセットアップを容易にします。サービスリンクロールの許可は Amazon MQ が定義し、別段の定義がない限り、Amazon MQ のみがそのロールを引き受けることができます。定義したアクセス許可には、信頼ポリシーと許可ポリシーが含まれます。この許可ポリシーを他の IAM エンティティにアタッチすることはできません。

サービスリンクロールは、まずその関連リソースを削除しなければ削除できません。これは、リソースにアクセスするための許可を誤って削除できないため、Amazon MQ リソースを保護します。

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

Amazon MQ のサービスリンクロール許可

Amazon MQ は AWSServiceRoleForAmazonMQ という名前のサービスリンクロールを使用し、ユーザーに代わって AWS のサービスを呼び出すためにこのサービスリンクロールを使用します。

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

  • mq.amazonaws.com

Amazon MQ は、指定されたリソースで以下のアクションを完了するために、AWSServiceRoleForAmazonMQ サービスリンクロールにアタッチされる許可ポリシー AmazonMQServiceRolePolicy を使用します。

  • アクション: vpc リソースでの ec2:CreateVpcEndpoint アクション。

  • アクション: subnet リソースでの ec2:CreateVpcEndpoint アクション。

  • アクション: security-group リソースでの ec2:CreateVpcEndpoint アクション。

  • アクション: vpc-endpoint リソースでの ec2:CreateVpcEndpoint アクション。

  • アクション: vpc リソースでの ec2:DescribeVpcEndpoints アクション。

  • アクション: subnet リソースでの ec2:DescribeVpcEndpoints アクション。

  • アクション: vpc-endpoint リソースでの ec2:CreateTags アクション。

  • アクション: log-group リソースでの logs:PutLogEvents アクション。

  • アクション: log-group リソースでの logs:DescribeLogStreams アクション。

  • アクション: log-group リソースでの logs:DescribeLogGroups アクション。

  • アクション: log-group リソースでの CreateLogStream アクション。

  • アクション: log-group リソースでの CreateLogGroup アクション。

Amazon MQ for RabbitMQ ブローカーの作成時、AmazonMQServiceRolePolicy 許可ポリシーは、Amazon MQ がユーザーに代わって以下のタスクを実行することを許可します。

  • ユーザー指定の Amazon VPC、サブネット、およびセキュリティグループを使用して、ブローカーの Amazon VPC エンドポイントを作成する。ブローカー用に作成されたエンドポイントは、RabbitMQ マネジメントコンソール、Management API、またはプログラム経由でブローカーに接続するために使用できます。

  • ロググループを作成して、ブローカーログを Amazon CloudWatch Logs に発行する。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:DescribeVpcEndpoints" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:CreateVpcEndpoint" ], "Resource": [ "arn:aws:ec2:*:*:vpc/*", "arn:aws:ec2:*:*:subnet/*", "arn:aws:ec2:*:*:security-group/*" ] }, { "Effect": "Allow", "Action": [ "ec2:CreateVpcEndpoint" ], "Resource": [ "arn:aws:ec2:*:*:vpc-endpoint/*" ], "Condition": { "StringEquals": { "aws:RequestTag/AMQManaged": "true" } } }, { "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": "arn:aws:ec2:*:*:vpc-endpoint/*", "Condition": { "StringEquals": { "ec2:CreateAction": "CreateVpcEndpoint" } } }, { "Effect": "Allow", "Action": [ "ec2:DeleteVpcEndpoints" ], "Resource": "arn:aws:ec2:*:*:vpc-endpoint/*", "Condition": { "StringEquals": { "ec2:ResourceTag/AMQManaged": "true" } } }, { "Effect": "Allow", "Action": [ "logs:PutLogEvents", "logs:DescribeLogStreams", "logs:DescribeLogGroups", "logs:CreateLogStream", "logs:CreateLogGroup" ], "Resource": [ "arn:aws:logs:*:*:log-group:/aws/amazonmq/*" ] } ] }

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

Amazon MQ のサービスリンクロールの作成

サービスリンクロールを手動で作成する必要はありません。ブローカーを初めて作成するときに、Amazon MQ がユーザーに代わって AWS のサービスを呼び出すためのサービスリンクロールを作成します。その後作成するすべてのブローカーには同じロールが使用され、新しいロールは作成されません。

重要

このサービスリンクロールがアカウントに表示されるのは、このロールでサポートされている機能を使用する別のサービスでアクションが完了した場合です。詳細については、「IAM アカウントに新しいロールが表示される」を参照してください。

このサービスリンクロールを削除した後で再度作成する必要が生じた場合は、同じ手順でアカウントにロールを再作成できます。

IAM コンソールを使用して、Amazon MQ ユースケースでサービスリンクロールを作成することもできます。AWS CLI または AWS API で、mq.amazonaws.com サービス名を使用してサービスリンクロールを作成します。詳細については、IAM ユーザーガイドの「サービスリンクロールの作成」を参照してください。このサービスリンクロールを削除する場合、この同じプロセスを使用して、もう一度ロールを作成できます。

Amazon MQ のサービスリンクロールの編集

Amazon MQ は、AWSServiceRoleForAmazonMQ サービスリンクロールの編集を許可しません。ただし、IAM を使用したロール記述の編集はできます。詳細については、IAM ユーザーガイドの「サービスリンクロールの編集」を参照してください。

Amazon MQ のサービスリンクロールの削除

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

注記

リソースを削除しようとしているときに Amazon MQ サービスがロールを使用している場合は、削除が失敗する可能性があります。失敗した場合は、数分待ってから操作を再試行してください。

AWSServiceRoleForAmazonMQ が使用する Amazon MQ リソースを削除する
  • AWS Management Console、Amazon MQ CLI、または Amazon MQ API を使用して Amazon MQ ブローカーを削除します。ブローカーの削除の詳細については、「Deleting a broker」を参照してください。

サービスにリンクされたロールを IAM で手動削除するには

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

Amazon MQ サービスリンクロールがサポートされるリージョン

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

リージョン名 リージョン識別子 Amazon MQ でのサポート
米国東部 (バージニア北部) us-east-1 はい
米国東部 (オハイオ) us-east-2 はい
米国西部 (北カリフォルニア) us-west-1 はい
米国西部 (オレゴン) us-west-2 はい
アジアパシフィック (ムンバイ) ap-south-1 はい
アジアパシフィック (大阪) ap-northeast-3 はい
アジアパシフィック (ソウル) ap-northeast-2 はい
アジアパシフィック (シンガポール) ap-southeast-1 はい
アジアパシフィック (シドニー) ap-southeast-2 はい
アジアパシフィック (東京) ap-northeast-1 はい
カナダ (中部) ca-central-1 はい
欧州 (フランクフルト) eu-central-1 はい
欧州 (アイルランド) eu-west-1 はい
欧州 (ロンドン) eu-west-2 はい
欧州 (パリ) eu-west-3 はい
南米 (サンパウロ) sa-east-1 はい
AWS GovCloud (US) us-gov-west-1 いいえ