Amazon EventBridge でのアイデンティティベースのポリシー (IAM ポリシー) の使用 - Amazon EventBridge

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

Amazon EventBridge でのアイデンティティベースのポリシー (IAM ポリシー) の使用

アイデンティティベースのポリシーは、IAM アイデンティティにアタッチするアクセス許可ポリシーです。

EventBridge の AWS 管理ポリシー

AWS は、AWSによって作成され管理されるスタンドアロンの IAM ポリシーを提供することで、多くの一般的ユースケースに対応します。管理ポリシー、つまり事前定義ポリシーは、一般的ユースケースに必要なアクセス許可を付与するため、どの許可が必要なのかをユーザーが調査する必要はありません。詳細については、「IAM ユーザーガイド」の「AWS 管理ポリシー」を参照してください。

アカウントのユーザーにアタッチできる以下の AWS 管理ポリシーは、EventBridge に固有のものです。

  • Amazon Event BridgeFull Access — イベントブリッジパイプ、イベントブリッジスキーマ、EventBridge スケジューラを含む EventBridge へのフルアクセスを許可します。

  • AmazonEventBridgeReadOnlyAccess — イベントブリッジパイプ、イベントブリッジスキーマ、EventBridge スケジューラを含む EventBridge への読み取り専用アクセスを許可します。

AmazonEventBridgeFullAccess ポリシー

AmazonEventBridgeFullAccess ポリシーは、すべての EventBridge アクションを使用するアクセス許可と、以下のアクセス許可を付与します。

  • iam:CreateServiceLinkedRole - EventBridge では、API 送信先のためのサービスロールをアカウントに作成するために、このアクセス許可が必要です。このアクセス許可は、API 送信先専用のロールをアカウントに作成するための IAM サービスアクセス許可のみを付与します。

  • iam:PassRole - EventBridge では、ルールのターゲットを呼び出す目的で EventBridge に呼び出しロールを渡すために、このアクセス許可が必要です。

  • Secrets Manager のアクセス許可 - API 送信先を認可するために接続リソースを通じて認証情報を提供するときに、アカウントでシークレットを管理するために、EventBridge はこれらのアクセス許可を必要とします。

以下の JSON は、AmazonEventBridgeFullAccess ポリシーを示しています。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "EventBridgeActions", "Effect": "Allow", "Action": [ "events:*", "schemas:*", "scheduler:*", "pipes:*" ], "Resource": "*" }, { "Sid": "IAMCreateServiceLinkedRoleForApiDestinations", "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "arn:aws:iam::*:role/aws-service-role/AmazonEventBridgeApiDestinationsServiceRolePolicy", "Condition": { "StringEquals": { "iam:AWSServiceName": "apidestinations.events.amazonaws.com" } } }, { "Sid": "IAMCreateServiceLinkedRoleForAmazonEventBridgeSchemas", "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "arn:aws:iam::*:role/aws-service-role/schemas.amazonaws.com/AWSServiceRoleForSchemas", "Condition": { "StringEquals": { "iam:AWSServiceName": "schemas.amazonaws.com" } } }, { "Sid": "SecretsManagerAccessForApiDestinations", "Effect": "Allow", "Action": [ "secretsmanager:CreateSecret", "secretsmanager:UpdateSecret", "secretsmanager:DeleteSecret", "secretsmanager:GetSecretValue", "secretsmanager:PutSecretValue" ], "Resource": "arn:aws:secretsmanager:*:*:secret:events!*" }, { "Sid": "IAMPassRoleAccessForEventBridge", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::*:role/*", "Condition": { "StringLike": { "iam:PassedToService": "events.amazonaws.com" } } }, { "Sid": "IAMPassRoleAccessForScheduler", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::*:role/*", "Condition": { "StringLike": { "iam:PassedToService": "scheduler.amazonaws.com" } } }, { "Sid": "IAMPassRoleAccessForPipes", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::*:role/*", "Condition": { "StringLike": { "iam:PassedToService": "pipes.amazonaws.com" } } } ] }
注記

このセクションの情報は CloudWatchEventsFullAccess ポリシーにも適用されます。ただし、 Amazon CloudWatch Events の代わりに Amazon EventBridge を使用することを強くお勧めします。

AmazonEventBridgeReadOnlyAccess ポリシー

AmazonEventBridgeFullAccess ポリシーは、すべての読み取り EventBridge アクションを使用するアクセス許可を付与します。

以下の JSON は、AmazonEventBridgeFullAccess ポリシーを示しています。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "events:DescribeRule", "events:DescribeEventBus", "events:DescribeEventSource", "events:ListEventBuses", "events:ListEventSources", "events:ListRuleNamesByTarget", "events:ListRules", "events:ListTargetsByRule", "events:TestEventPattern", "events:DescribeArchive", "events:ListArchives", "events:DescribeReplay", "events:ListReplays", "events:DescribeConnection", "events:ListConnections", "events:DescribeApiDestination", "events:ListApiDestinations", "events:DescribeEndpoint", "events:ListEndpoints", "schemas:DescribeCodeBinding", "schemas:DescribeDiscoverer", "schemas:DescribeRegistry", "schemas:DescribeSchema", "schemas:ExportSchema", "schemas:GetCodeBindingSource", "schemas:GetDiscoveredSchema", "schemas:GetResourcePolicy", "schemas:ListDiscoverers", "schemas:ListRegistries", "schemas:ListSchemas", "schemas:ListSchemaVersions", "schemas:ListTagsForResource", "schemas:SearchSchemas", "scheduler:GetSchedule", "scheduler:GetScheduleGroup", "scheduler:ListSchedules", "scheduler:ListScheduleGroups", "scheduler:ListTagsForResource", "pipes:DescribePipe", "pipes:ListPipes", "pipes:ListTagsForResource" ], "Resource": "*" } ] }
注記

このセクションの情報は CloudWatchEventsReadOnlyAccess ポリシーにも適用されます。ただし、Amazon CloudWatch Events の代わりに Amazon EventBridge を使用することを強くお勧めします。

EventBridge スキーマ固有のマネージドポリシー

スキーマは、EventBridge に送信されるイベントの構造を定義します。EventBridge は、AWS サービスによって生成されるすべてのイベントにスキーマを提供します。EventBridge スキーマに固有の以下の AWS マネージドポリシーを使用できます。

EventBridge スケジューラ固有のマネージドポリシー

Amazon EventBridge スケジューラはサーバーレススケジューラで、一元化されたマネージドサービスからタスクを作成、実行、管理できます。EventBridge スケジューラ固有の AWS マネージドポリシーについては、『EventBridge スケジューラユーザーガイド』の「EventBridge スケジューラの AWS マネージドポリシー」を参照してください。

EventBridge Pipes 固有のマネージドポリシーを使用する

Amazon EventBridge Pipes はイベントソースをターゲットに接続します。Pipes を使用すると、イベント駆動型アーキテクチャを開発する際に専門知識や統合コードが不要になります。これにより、会社のアプリケーション全体の一貫性が確保されます。EventBridge Pipesに固有の以下の AWS マネージドポリシーを使用できます。

  • AmazonEventBridgePipesFullAccess

    Amazon EventBridge Pipes へのフルアクセス権を付与します。

    注記

    このポリシーでは iam:PassRole を提供します。EventBridge Pipes は、呼び出しロールを EventBridge 渡してパイプを作成するために。この権限が必要です。

  • AmazonEventBridgePipesReadOnlyAccess

    Amazon EventBridge Pipes に読み取り専用アクセスを提供します。

  • AmazonEventBridgePipesOperatorAccess

    Amazon EventBridge Pipes への読み取り専用アクセス権とオペレーターアクセス権 (つまり、Pipes の実行を停止および開始する機能) を提供します。

イベントを送信する IAM ロール

イベントをターゲットに中継するには、EventBridge に IAM ロールが必要です。

EventBridge にイベントを送信するために IAM ロールを作成するには
  1. IAM コンソール (https://console.aws.amazon.com/iam/) を開きます。

  2. IAM ロールを作成するには、『IAM ユーザーガイド』の「AWS サービスにアクセス許可を委任するロールの作成」の手順に従います。その手順で、次のように実行します。

    • [Role Name] (ロール名) で、アカウント内で一意の名前を使用します。

    • [Select Role Type] (ロールタイプの選択) で [AWS Service Roles] (AWS サービスロール) を選択し、[Amazon EventBridge] を選択します。これで、ロールを引き受けるための Eventbridge アクセス許可が付与されます。

    • [Attach Policy] (ポリシーのアタッチ) で、[AmazonEventBridgeFullAccess] を選択します。

独自のカスタム IAM ポリシーを作成して、Eventbridge アクションとリソースのための権限を許可することもできます。これらのカスタムポリシーは、それらのアクセス許可が必要な IAM ユーザーまたはグループにアタッチできます。IAM ポリシーの詳細については、「IAM ユーザーガイド」の「IAM ポリシーの概要」を参照してください。カスタム IAM ポリシーの管理と作成の詳細については、『IAM ユーザーガイド』の「IAM ポリシーの管理」を参照してください。

IAM ロールを使用してターゲットにアクセスするために EventBridge に必要なアクセス許可

EventBridge ターゲットには通常、ターゲットを呼び出すためのアクセス権限を EventBridge に付与する IAM ロールが必要です。さまざまな AWS サービスとターゲットのいくつかの例を次に示します。それ以外の場合は、EventBridge コンソールを使用してルールを作成し、新しいロールを作成します。この新しいロールは、対象範囲の広い権限があらかじめ設定されたポリシーで作成されます。

Amazon SQS、Amazon SNS、Lambda、CloudWatch Logs、および EventBridge バスターゲットはロールを使用しないため、EventBridge へのアクセス権限はリソースポリシーを介して付与する必要があります。API Gateway ターゲットは、リソースポリシーまたは IAM ロールのいずれかを使用できます。

ターゲットが API 送信先の場合、指定するロールには次のポリシーを含める必要があります。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "events:InvokeApiDestination" ], "Resource": [ "arn:aws:events:::api-destination/*" ] } ] }

ターゲットが Kinesis ストリームの場合、そのターゲットにイベントデータを送信するために使用されるロールは、次のポリシーを含める必要があります。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kinesis:PutRecord" ], "Resource": "*" } ] }

ターゲットが Systems Manager Run Command で、コマンドに 1 つ以上の InstanceIds 値を指定する場合は、指定するロールに次のポリシーを含める必要があります。

{ "Version": "2012-10-17", "Statement": [ { "Action": "ssm:SendCommand", "Effect": "Allow", "Resource": [ "arn:aws:ec2:region:accountId:instance/instanceIds", "arn:aws:ssm:region:*:document/documentName" ] } ] }

ターゲットが Systems Manager Run Command で、コマンドに 1 つ以上のタグを指定する場合は、指定するロールに次のポリシーを含める必要があります。

{ "Version": "2012-10-17", "Statement": [ { "Action": "ssm:SendCommand", "Effect": "Allow", "Resource": [ "arn:aws:ec2:region:accountId:instance/*" ], "Condition": { "StringEquals": { "ec2:ResourceTag/*": [ "[[tagValues]]" ] } } }, { "Action": "ssm:SendCommand", "Effect": "Allow", "Resource": [ "arn:aws:ssm:region:*:document/documentName" ] } ] }

ターゲットが AWS Step Functions ステートマシンの場合、指定するロールには次のポリシーを含む必要があります。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "states:StartExecution" ], "Resource": [ "arn:aws:states:*:*:stateMachine:*" ] } ] }

ターゲットが Amazon ECS タスクの場合は、指定するロールに次のポリシーを含める必要があります。

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "ecs:RunTask" ], "Resource": [ "arn:aws:ecs:*:account-id:task-definition/task-definition-name" ], "Condition": { "ArnLike": { "ecs:cluster": "arn:aws:ecs:*:account-id:cluster/cluster-name" } } }, { "Effect": "Allow", "Action":"iam:PassRole", "Resource": [ "*" ], "Condition": { "StringLike": { "iam:PassedToService": "ecs-tasks.amazonaws.com" } } }] }

次のポリシーでは、Eventbridge の組み込みターゲットに対して、お客様に代わって Amazon EC2 アクションを実行することを許可します。組み込みのターゲットにルールを作成するには、AWS Management Console を使用する必要があります。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "TargetInvocationAccess", "Effect": "Allow", "Action": [ "ec2:Describe*", "ec2:RebootInstances", "ec2:StopInstances", "ec2:TerminateInstances", "ec2:CreateSnapshot" ], "Resource": "*" } ] }

次のポリシーでは、Eventbridge に対して、お客様のアカウントの Kinesis ストリームにイベントを中継することを許可します。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "KinesisAccess", "Effect": "Allow", "Action": [ "kinesis:PutRecord" ], "Resource": "*" } ] }

カスタマー管理ポリシーの例 : タグ付けを使用してルールへのアクセスを制御する

次の例は EventBridge アクションのアクセス許可を付与するユーザーポリシーを示しています。このポリシーは、Eventbridge API、AWS SDK、または AWS CLI を使用しているときに機能します。

ユーザーによる特定の Eventbridge ルールへのアクセスを許可し、それ以外のルールへのアクセスを禁止することができます。そのためには、両方のルールにタグ付けし、そのタグを参照する IAM ポリシーを使用します。Eventbridge リソースのタグ付けの詳細については、Amazon EventBridge タグ を参照してください。

特定のタグでそのルールにのみアクセスを許可する IAM ポリシーをユーザーに付与することができます。アクセスを許可するルールは、その特定のタグでタグ付けすることで選択します。例えば次のポリシーでは、タグキー Stack の値が Prod のルールにユーザーアクセス権が付与されます。

{ "Statement": [ { "Effect": "Allow", "Action": "events:*", "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/Stack": "Prod" } } } ] }

IAM ポリシーステートメントの詳細については、『IAM ユーザーガイド』の「ポリシーを使用したアクセス制御」を参照してください。

Amazon EventBridge の AWS マネージドポリシーへの更新

このサービスがこれらの変更の追跡を開始してからの、EventBridge の AWS マネージドポリシーへの更新に関する詳細を確認してください。このページの変更に関する自動アラートについては、 [Document history] (ドキュメントの履歴) ページの RSS フィードをサブスクライブしてください。

変更 説明 日付

AmazonEventBridgePipesFullAccess — 新しいポリシーの追加

EventBridge は、EventBridge Pipes を使用するためのフル権限のマネージドポリシーを追加しました。

2022 年 12 月 1 日

AmazonEventBridgePipesReadOnlyAccess — 新しいポリシーの追加

EventBridge は、EventBridge Pipes の情報リソースを閲覧する権限に関するマネージドポリシーを追加しました。

2022 年 12 月 1 日

AmazonEventBridgePipesOperatorAccess — 新しいポリシーの追加

EventBridge は、EventBridge Pipes の情報を表示したり、実行中のパイプを起動または停止したりする権限に関するマネージドポリシーを追加しました。

2022 年 12 月 1 日

AmazonEventBridgeFullAccess — 既存のポリシーへの更新

EventBridge は、EventBridge Pipes の機能を使用するのに必要な権限を含むようにポリシーを更新しました。

2022 年 12 月 1 日

AmazonEventBridgeReadOnlyAccess — 既存のポリシーへの更新

EventBridge は、EventBridge Pipes の情報リソースを閲覧するのに必要な権限を追加しました。

以下のアクションが追加されました。

  • pipes:DescribePipe

  • pipes:ListPipes

  • pipes:ListTagsForResource

2022 年 12 月 1 日

CloudWatchEventsReadOnlyAccess — 既存のポリシーの更新

AmazonEventBridgeReadOnlyAccess に一致するように更新されました。

2022 年 12 月 1 日

CloudWatchEventsFullAccess — 既存のポリシーの更新

AmazonEventBridgeFullAccess に一致するように更新されました。

2022 年 12 月 1 日

AmazonEventBridgeFullAccess — 既存のポリシーへの更新

EventBridge は、スキーマとスケジューラの機能を使用するのに必要な権限を含むようにポリシーを更新しました。

次の権限が追加されました。

  • EventBridge スキーマレジストリアクション

  • EventBridge スケジューラアクション

  • EventBridge スキーマレジストリの iam:CreateServiceLinkedRole 権限

  • EventBridge スケジューラの iam:PassRole 権限

2022 年 11 月 10 日

AmazonEventBridgeReadOnlyAccess — 既存のポリシーへの更新

EventBridge は、スキーマとスケジューラの情報リソースを閲覧するのに必要な権限を追加しました。

以下のアクションが追加されました。

  • schemas:DescribeCodeBinding

  • schemas:DescribeDiscoverer

  • schemas:DescribeRegistry

  • schemas:DescribeSchema

  • schemas:ExportSchema

  • schemas:GetCodeBindingSource

  • schemas:GetDiscoveredSchema

  • schemas:GetResourcePolicy

  • schemas:ListDiscoverers

  • schemas:ListRegistries

  • schemas:ListSchemas

  • schemas:ListSchemaVersions

  • schemas:ListTagsForResource

  • schemas:SearchSchemas

  • scheduler:GetSchedule

  • scheduler:GetScheduleGroup

  • scheduler:ListSchedules

  • scheduler:ListScheduleGroups

  • scheduler:ListTagsForResource

2022 年 11 月 10 日

AmazonEventBridgeReadOnlyAccess — 既存のポリシーへの更新

EventBridge では、エンドポイント情報の表示に必要な許可が追加されました。

以下のアクションが追加されました。

  • events:ListEndpoints

  • events:DescribeEndpoint

2022 年 4 月 7 日

AmazonEventBridgeReadOnlyAccess — 既存のポリシーへの更新

EventBridge では、接続および API 宛先情報の表示に必要な許可が追加されました。

以下のアクションが追加されました。

  • events:DescribeConnection

  • events:ListConnections

  • events:DescribeApiDestination

  • events:ListApiDestinations

2021 年 3 月 4 日

AmazonEventBridgeFullAccess — 既存のポリシーへの更新

EventBridge では、API 送信先の使用に必要な iam:CreateServiceLinkedRole および AWS Secrets Manager 許可を含むようにポリシーが更新されました。

以下のアクションが追加されました。

  • secretsmanager:CreateSecret

  • secretsmanager:UpdateSecret

  • secretsmanager:DeleteSecret

  • secretsmanager:GetSecretValue

  • secretsmanager:PutSecretValue

2021 年 3 月 4 日

EventBridge が変更の追跡を開始

EventBridge が AWS マネージドポリシーの変更の追跡を開始しました。

2021 年 3 月 4 日