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 に発行する。

JSON
{ "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 for RabbitMQ に対してのみ作成されます。

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

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

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

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

注記

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

AWSServiceRoleForAmazonMQ が使用する Amazon MQ リソースを削除する
  • AWS マネジメントコンソール、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 いいえ