Amazon EventBridge 的操作、资源和条件键
Amazon EventBridge(服务前缀:events
)提供以下服务特定的资源、操作和条件上下文键以在 IAM 权限策略中使用。
参考:
Amazon EventBridge 定义的操作
您可以在 IAM 策略语句的 Action
元素中指定以下操作。可以使用策略授予在 AWS 中执行操作的权限。您在策略中使用一项操作时,通常使用相同的名称允许或拒绝对 API 操作或 CLI 命令的访问。但在某些情况下,单一动作可控制对多项操作的访问。还有某些操作需要多种不同的动作。
操作表的资源类型列指示每项操作是否支持资源级权限。如果该列没有任何值,您必须在策略语句的 Resource
元素中指定策略应用的所有资源(“*”)。通过在 IAM policy 中使用条件来筛选访问权限,以控制是否可以在资源或请求中使用特定标签键。如果操作具有一个或多个必需资源,则调用方必须具有使用这些资源来使用该操作的权限。必需资源在表中以星号 (*) 表示。如果您在 IAM policy 中使用 Resource
元素限制资源访问权限,则必须为每种必需的资源类型添加 ARN 或模式。某些操作支持多种资源类型。如果资源类型是可选的(未指示为必需),则可以选择使用一种可选资源类型。
操作表的条件键列包括可以在策略语句的 Condition
元素中指定的键。有关与服务资源关联的条件键的更多信息,请参阅资源类型表的条件键列。
注意
资源条件键在资源类型表中列出。您可以在操作表的资源类型(* 为必需)列中找到应用于某项操作的资源类型的链接。资源类型表中的资源类型包括条件密钥列,这是应用于操作表中操作的资源条件键。
有关下表中各列的详细信息,请参阅操作表。
操作 | 描述 | 访问级别 | 资源类型(* 为必需) | 条件键 | 相关操作 |
---|---|---|---|---|---|
ActivateEventSource | 授予激活合作伙伴事件源的权限 | Write | |||
CancelReplay | 授予取消重播的权限 | Write | |||
CreateApiDestination | 授予创建新 api 目标的权限 | Write | |||
CreateArchive | 授予创建新存档的权限 | Write | |||
CreateConnection | 授予创建新连接的权限 | 写入 | |||
CreateEndpoint | 授予权限以创建终端节点 | 写入 | |||
CreateEventBus | 授予创建事件总线的权限 | Write | |||
CreatePartnerEventSource | 授予创建合作伙伴事件源的权限 | Write | |||
DeactivateEventSource | 授予停用事件源的权限 | Write | |||
DeauthorizeConnection | 授予取消连接授权的权限,删除其存储的授权密钥 | Write | |||
DeleteApiDestination | 授予删除 api 目标的权限 | Write | |||
DeleteArchive | 授予删除存档的权限 | Write | |||
DeleteConnection | 授予权限以删除连接 | 写入 | |||
DeleteEndpoint | 授予权限以删除终端节点 | 写入 | |||
DeleteEventBus | 授予删除事件总线的权限 | Write | |||
DeletePartnerEventSource | 授予删除合作伙伴事件源的权限 | Write | |||
DeleteRule | 授予删除规则的权限 | Write | |||
DescribeApiDestination | 授予检索 api 目标详细信息的权限 | Read | |||
DescribeArchive | 授予检索存档详细信息的权限 | Read | |||
DescribeConnection | 授予检索连接详细信息的权限 | 读取 | |||
DescribeEndpoint | 授予权限以检索有关终端节点的详细信息 | 读取 | |||
DescribeEventBus | 授予检索事件总线详细信息的权限 | Read | |||
DescribeEventSource | 授予检索事件源详细信息的权限 | Read | |||
DescribePartnerEventSource | 授予检索合作伙伴事件源详细信息的权限 | Read | |||
DescribeReplay | 授予检索重播详细信息的权限 | Read | |||
DescribeRule | 授予检索规则详细信息的权限 | Read | |||
DisableRule | 授予禁用规则的权限 | 写入 | |||
EnableRule | 授予启用规则的权限 | 写入 | |||
InvokeApiDestination [仅权限] | 授予调用 api 目标的权限 | Write | |||
ListApiDestinations | 授予检索 api 目标列表的权限 | List | |||
ListArchives | 授予检索存档列表的权限 | List | |||
ListConnections | 授予权限以检索连接列表 | 列出 | |||
ListEndpoints | 授予检索终端节点列表的权限 | 列出 | |||
ListEventBuses | 授予检索账户中事件总线列表的权限 | 列出 | |||
ListEventSources | 授予检索与此账户共享的事件源列表的权限 | List | |||
ListPartnerEventSourceAccounts | 授予检索与事件源关联的 AWS 账户 ID 列表的权限 | List | |||
ListPartnerEventSources | 授予检索合作伙伴事件源列表的权限 | List | |||
ListReplays | 授予检索重播列表的权限 | List | |||
ListRuleNamesByTarget | 授予检索与目标关联的规则名称列表的权限 | List | |||
ListRules | 授予检索账户中 Amazon EventBridge 规则列表的权限 | List | |||
ListTagsForResource | 授予检索与 Amazon EventBridge 资源关联的标签列表的权限 | List | |||
ListTargetsByRule | 授予检索针对规则定义的目标列表的权限 | List | |||
PutEvents | 授予向 Amazon EventBridge 发送自定义事件的权限 | Write | |||
PutPartnerEvents | 授予向 Amazon EventBridge 发送自定义事件的权限 | Write | |||
PutPermission | 授予使用 PutPermission 操作的权限,以向另一个 AWS 账户 授予将事件放入默认事件总线的权限 | Permissions management | |||
PutRule | 授予权限以创建或更新规则 | 写入 | |||
PutTargets | 授予权限以向规则添加目标 | Write | |||
RemovePermission | 授予权限以撤销另一个 AWS 账户 将事件放入默认事件总线的权限 | Permissions management | |||
RemoveTargets | 授予将目标从规则中删除的权限 | 写入 | |||
RetrieveConnectionCredentials [仅权限] | 授予检索来自连接的凭证的权限 | 写入 | |||
StartReplay | 授予启动存档重播的权限 | Write | |||
TagResource | 授予向 Amazon EventBridge 资源添加标签的权限 | 标记 | |||
TestEventPattern | 授予测试事件模式是否与提供的事件匹配的权限 | 读取 | |||
UntagResource | 授予从 Amazon EventBridge 资源中删除标签的权限 | Tagging | |||
UpdateApiDestination | 授予更新 api 目标的权限 | Write | |||
UpdateArchive | 授予更新存档的权限 | Write | |||
UpdateConnection | 授予权限以更新连接 | 写入 | |||
UpdateEndpoint | 授予权限以更新终端节点 | 写入 | |||
UpdateEventBus | 授予权限以更新事件总线 | 写入 |
Amazon EventBridge 定义的资源类型
以下资源类型是由该服务定义的,可以在 IAM 权限策略语句的 Resource
元素中使用这些资源类型。操作表中的每个操作指定了可以使用该操作指定的资源类型。您也可以在策略中包含条件键,从而定义资源类型。这些键显示在资源类型表的最后一列。有关下表中各列的详细信息,请参阅资源类型表。
资源类型 | ARN | 条件键 |
---|---|---|
event-source |
arn:${Partition}:events:${Region}::event-source/${EventSourceName}
|
|
event-bus |
arn:${Partition}:events:${Region}:${Account}:event-bus/${EventBusName}
|
|
rule-on-default-event-bus |
arn:${Partition}:events:${Region}:${Account}:rule/${RuleName}
|
|
rule-on-custom-event-bus |
arn:${Partition}:events:${Region}:${Account}:rule/${EventBusName}/${RuleName}
|
|
archive |
arn:${Partition}:events:${Region}:${Account}:archive/${ArchiveName}
|
|
replay |
arn:${Partition}:events:${Region}:${Account}:replay/${ReplayName}
|
|
connection |
arn:${Partition}:events:${Region}:${Account}:connection/${ConnectionName}
|
|
api-destination |
arn:${Partition}:events:${Region}:${Account}:api-destination/${ApiDestinationName}
|
|
endpoint |
arn:${Partition}:events:${Region}:${Account}:endpoint/${EndpointName}
|
|
create-snapshot |
arn:${Partition}:events:${Region}:${Account}:target/create-snapshot
|
|
reboot-instance |
arn:${Partition}:events:${Region}:${Account}:target/reboot-instance
|
|
stop-instance |
arn:${Partition}:events:${Region}:${Account}:target/stop-instance
|
|
terminate-instance |
arn:${Partition}:events:${Region}:${Account}:target/terminate-instance
|
Amazon EventBridge 的条件键
Amazon EventBridge 定义以下可以在 IAM policy 的 Condition
元素中使用的条件键。您可以使用这些键进一步细化应用策略语句的条件。有关下表中各列的详细信息,请参阅条件键表。
要查看适用于所有服务的全局条件键,请参阅可用的全局条件键。
条件键 | 描述 | 类型 |
---|---|---|
aws:RequestTag/${TagKey} | 根据每个标签的允许值集筛选对事件总线和规则操作的访问权限 | String |
aws:ResourceTag/${TagKey} | 根据与资源关联的标签值筛选对事件总线和规则操作的访问权限 | String |
aws:TagKeys | 按请求中的标签筛选对事件总线和规则操作的访问权限 | 字符串数组 |
events:EventBusArn | 按可以与 CreateEndpoint 和 UpdateEndpoint 操作终端节点关联的事件总线的 ARN 筛选访问 | ArrayOfARN |
events:ManagedBy | 按AWS服务筛选访问权限。如果某个规则由AWS服务代表您创建,则值是创建规则的服务的委托人名称 | String |
events:TargetArn | 根据可放入规则的目标的 ARN 筛选对 PutTargets 操作的访问权限。TargetARN 不包括 DeadLetterConfigArn | ArrayOfARN |
events:creatorAccount | 根据创建规则的账户筛选对规则操作的访问权限 | String |
events:detail-type | 根据事件详细类型的文字字符串筛选对 PutEvents 和 PutRule 操作的访问权限 | String |
events:detail.eventTypeCode | 根据事件的 detail.eventTypeCode 字段的文字字符串筛选对 PutRule 操作的访问权限 | String |
events:detail.service | 根据事件的 detail.service 字段的文字字符串筛选对 PutRule 操作的访问权限 | String |
events:detail.userIdentity.principalId | 根据事件的 detail.useridentity.principalid 字段的文字字符串筛选对 PutRule 操作的访问权限 | String |
events:eventBusInvocation | 根据事件是通过 API 还是跨账户总线调用生成的来筛选对 PutEvents 操作的访问权限 | String |
events:source | 根据生成事件的AWS服务或AWS合作伙伴事件源筛选对 PutEvents 和 PutRule 操作的访问权限。匹配事件的 source 字段的文字字符串 | 字符串数组 |