使用 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 給呼叫規則目標。

  • 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": "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. 開啟位於 IAM 的 https://console.aws.amazon.com/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設備目標可以使用資源策略或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 SDKs、或 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 日