在 Amazon 使用基於身份的政策 (IAM 政策) EventBridge - Amazon EventBridge

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

在 Amazon 使用基於身份的政策 (IAM 政策) EventBridge

以身分為基礎的政策是指您連接到 IAM 身分的許可政策。

AWS 受管理的政策 EventBridge

AWS 透過提供由建立和管理的獨立 IAM 政策來解決許多常見使用案例 AWS。受管或預定義政策會針對常用案例授予必要的許可,因此您無須調查需要哪些許可。如需詳細資訊,請參閱《IAM 使用者指南》中的 AWS 受管政策

您可以附加至帳戶中使用者的下列 AWS 受管理政策專用於 EventBridge:

  • AmazonEventBridgeFullAccess— 授予完整存取權限 EventBridge,包括 EventBridge 管道、 EventBridge 結構描述和 EventBridge 排程器。

  • AmazonEventBridgeReadOnlyAccess— 授與對其的唯讀存取權 EventBridge,包括 EventBridge 管道、 EventBridge 結構描述和 EventBridge 排程器。

AmazonEventBridgeFullAccess 政策

此原 AmazonEventBridgeFullAccess 則會授與使用所有 EventBridge 動作的權限,以及下列權限:

  • iam:CreateServiceLinkedRole— EventBridge 需要此權限才能在您的帳戶中建立 API 目的地的服務角色。此權限僅授予 IAM 服務許可,以便在您的帳戶中專門針對 API 目的地建立角色。

  • iam:PassRole— EventBridge 需要此權限才能將呼叫角色傳遞 EventBridge 給呼叫規則目標。

  • 秘密管理員權限 — 當您透過連線資源提供認證以授權 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": "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 EventBridge 而不是 Amazon CloudWatch 活動。

AmazonEventBridgeReadOnlyAccess 政策

此原 AmazonEventBridgeReadOnlyAccess 則會授與使用所有讀取 EventBridge 動作的權限。

下列 JSON 會顯示 AmazonEventBridgeReadOnlyAccess 原則。

{ "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 EventBridge 而不是 Amazon CloudWatch 活動。

EventBridge 結構描述特定的受管理的

結構描述定義傳送至的事件結構 EventBridge。 EventBridge 為 AWS 服務產生的所有事件提供結構描述。下列是可用的 EventBridge 結構描述特定的 AWS 受管理策略:

EventBridge 排程器特定的受管政策

Amazon EventBridge Scheduler 是無伺服器排程器,可讓您從單一中央受管服務建立、執行和管理任務。對於排程器特定的 AWS 受管理策略,請參閱《 EventBridge 排程器使用指南》中的「 EventBridge 排程EventBridge 器」的AWS 受管理策略。

EventBridge 特定管道的受管政策

Amazon EventBridge 管道將事件來源連接到目標。開發事件驅動架構時,管道可減少對專業知識和整合程式碼的需求。這有助於確保您公司應用程式的一致性。以下是可用的 AWS 管道專用的受 EventBridge 管策略:

傳送事件的 IAM 角色

若要將事件轉送至目標, EventBridge 需要 IAM 角色。

若要建立 IAM 角色以將事件傳送至 EventBridge
  1. 前往 https://console.aws.amazon.com/iam/ 開啟 IAM 主控台。

  2. 若要建立 IAM 角色,請按照 IAM 使用者指南中的建立角色以將許可委派給 AWS 服務中的步驟進行操作。按照步驟執行時,請執行下列操作:

    • 角色名稱中,使用您帳戶中的唯一名稱。

    • [選取角色類型] 中,選擇 [AWS 服務角色],然後選擇 Amazon EventBridge。這將授予 EventBridge 權限來擔任該角色。

    • 在 [附加原則] 中,選擇AmazonEventBridgeFullAccess

您也可以建立自己的自訂 IAM 政策,以允許 EventBridge 動作和資源的許可。您可以將這些自訂政策連接至需要這些許可的 IAM 使用者或群組。如需關於 IAM 政策的詳細資訊,請參閱《IAM 使用者指南》中的 IAM 政策概觀。如需關於管理和建立自訂 IAM 政策的詳細資訊,請參閱《IAM 使用者指南》中的管理 IAM 政策

使用 IAM 角色存 EventBridge 取目標所需的許可

EventBridge 目標通常需要授與呼叫目標權限的 IAM 角色。 EventBridge 以下是各種 AWS 服務和目標的一些例子。對於其他人,請使用 EventBridge 控制台來創建一個規則並創建一個新的角色,該角色將使用具有預先配置適當範圍的權限的策略來創建。

Amazon SQS、Amazon SNS、Lambda、 CloudWatch 日誌和 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,而且您為該命令指定一或多個 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 運行命令,而且您為該命令指定一或多個標籤,則您指定的角色必須包含下列政策:

{ "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 受管理策略更新詳細資料。如需有關此頁面變更的自動警示,請訂閱「 EventBridge 文件歷史記錄」頁面上的 RSS 摘要。

變更 描述 日期

AmazonEventBridgeFullAccess-更新的政策

AWS GovCloud (US) Regions 只

由於未使用以下權限,因此不包括:

  • iam:CreateServiceLinkedRole EventBridge 結構描述登錄的權限

2024年5月9日

AmazonEventBridgeSchemasFullAccess-更新的政策

AWS GovCloud (US) Regions 只

由於未使用以下權限,因此不包括:

  • iam:CreateServiceLinkedRole EventBridge 結構描述登錄的權限

2024年5月9日

AmazonEventBridgePipesFullAccess-添加了新策略

EventBridge 為使用管道的完整權限添加了託 EventBridge 管策略。

2022 年 12 月 1 日

AmazonEventBridgePipesReadOnlyAccess-添加了新策略

EventBridge 為查看 EventBridge 管道信息資源的權限添加了託管策略。

2022 年 12 月 1 日

AmazonEventBridgePipesOperatorAccess-添加了新策略

EventBridge 添加了管理策略,用於查看 EventBridge 管道信息的權限,以及啟動和停止運行管道。

2022 年 12 月 1 日

AmazonEventBridgeFullAccess – 更新現有政策

EventBridge 更新策略以包含使用 EventBridge 管道功能所需的權限。

2022 年 12 月 1 日

AmazonEventBridgeReadOnlyAccess – 更新現有政策

EventBridge 添加了查看 EventBridge 管道信息資源所需的權限。

已新增下列動作:

  • pipes:DescribePipe

  • pipes:ListPipes

  • pipes:ListTagsForResource

2022 年 12 月 1 日

CloudWatchEventsReadOnlyAccess – 更新現有政策

已更新以匹配 AmazonEventBridgeReadOnlyAccess。

2022 年 12 月 1 日

CloudWatchEventsFullAccess – 更新現有政策

已更新以匹配 AmazonEventBridgeFullAccess。

2022 年 12 月 1 日

AmazonEventBridgeFullAccess – 更新現有政策

EventBridge 已更新原則,以包含使用結構描述和排程器功能所需的權限。

已新增下列許可:

  • EventBridge 綱要登錄動作

  • EventBridge 排程器動作

  • iam:CreateServiceLinkedRole EventBridge 結構描述登錄的權限

  • iam:PassRole EventBridge 排程器的權限

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 更新政策以包含iam:CreateServiceLinkedRole和使用 API 目的地所需的 AWS Secrets Manager 權限。

已新增下列動作:

  • secretsmanager:CreateSecret

  • secretsmanager:UpdateSecret

  • secretsmanager:DeleteSecret

  • secretsmanager:GetSecretValue

  • secretsmanager:PutSecretValue

2021 年 3 月 4 日

EventBridge 開始追蹤變更

EventBridge 開始追蹤其 AWS 受管理策略的變更。

2021 年 3 月 4 日