View a markdown version of this page

Funções do IAM para enviar eventos para destinos na Amazon EventBridge - Amazon EventBridge

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Funções do IAM para enviar eventos para destinos na Amazon EventBridge

Para retransmitir eventos para alvos, EventBridge precisa de uma função do IAM.

Para criar uma função do IAM para enviar eventos para EventBridge
  1. Abra o console do IAM em https://console.aws.amazon.com/iam/.

  2. Para criar uma função do IAM, siga as etapas em Criar uma função para delegar permissões a um AWS serviço no Guia do usuário do IAM. À medida que você realizar as etapas, observe o seguinte:

    • Em Nome do perfil, use um nome que seja exclusivo em sua conta.

    • Em Selecionar tipo de função, escolha AWS Service Roles e, em seguida, escolha Amazon EventBridge. Isso concede EventBridge permissões para assumir a função.

    • Em Anexar política, escolha AmazonEventBridgeFullAccess.

Você também pode criar suas próprias políticas personalizadas do IAM para permitir permissões para EventBridge ações e recursos. Você pode anexar essas políticas personalizadas a usuários ou grupos do IAM que exijam essas permissões. Para obter mais informações sobre políticas do IAM, consulte Visão geral das políticas do IAM no Guia do usuário do IAM. Para obter mais informações sobre o gerenciamento e a criação de políticas personalizadas do IAM, consulte Gerenciamento de políticas do IAM no Guia do usuário do IAM.

Permissões necessárias EventBridge para acessar alvos usando funções do IAM

EventBridge Os destinos geralmente exigem funções do IAM que concedam permissão EventBridge para invocar o destino. A seguir estão alguns exemplos de vários AWS serviços e alvos. Para outros, use o EventBridge console para criar uma regra e criar uma nova função que será criada com uma política com permissões bem definidas pré-configuradas.

Amazon SQS, Amazon SNS, CloudWatch Lambda, Logs e destinos de barramento não usam funções EventBridge , e EventBridge as permissões devem ser concedidas por meio de uma política de recursos. Os destinos do API Gateway podem usar políticas de recursos ou perfis do IAM.

Destinos de API

Se o destino for um destino da API, a função especificada por você deverá incluir uma política com a seguinte instrução:

  • Efeito: Allow

  • Ação: events:InvokeApiDestination

  • Recurso: arn:aws:events:*:*:api-destination/*

Streams do Kinesis

Se o destino for um fluxo do Kinesis, a função usada para enviar dados do evento para o destino deverá incluir a seguinte instrução:

  • Efeito: Allow

  • Ação: kinesis:PutRecord

  • Recurso: *

Comandos de execução do Systems Manager

Se o destino for o comando de execução do Systems Manager e você especificar um ou mais valores InstanceIds para o comando, a função especificada deverá incluir uma política com a seguinte instrução:

  • Efeito: Allow

  • Ação: ssm:SendCommand

  • Recursos: arn:aws:ec2:us-east-1:accountId:instance/instanceIds, arn:aws:ssm:us-east-1:*:document/documentName

Se o destino for o comando de execução do Systems Manager e você especificar uma ou mais tags para o comando, a função especificada por você deverá incluir uma política com estas duas ações:

  • Efeito: Allow

  • Ação: ssm:SendCommand

  • Recursos: arn:aws:ec2::accountId:instance/*

  • Condição:

    "StringEquals": { "ec2:ResourceTag/*": [ "[[tagValues]]" ] }

And:

  • Efeito: Allow

  • Ação: ssm:SendCommand

  • Recursos: arn:aws:ssm:us-east-1:*:document/documentName

Máquinas de estado do Step Functions

Se o destino for uma máquina de AWS Step Functions estado, a função especificada deverá incluir uma política com o seguinte:

  • Efeito: Allow

  • Ação: states:StartExecution

  • Recurso: arn:aws:states:*:*:stateMachine:*

Tarefas do Amazon ECS

Se o destino for uma tarefa do Amazon ECS, o perfil especificado deverá incluir a seguinte política:

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

A política a seguir permite que alvos EventBridge incorporados executem ações do Amazon EC2 em seu nome. Você precisa usar o Console de gerenciamento da AWS para criar regras com alvos integrados.

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

A política a seguir permite EventBridge retransmitir eventos para os streams do Kinesis em sua conta.

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

Exemplo de política gerenciada pelo cliente: uso de marcações para controlar o acesso às regras

O exemplo a seguir mostra uma política de usuário que concede permissões para EventBridge ações. Essa política funciona quando você usa AWS SDKs a EventBridge API ou AWS CLI a.

Você pode conceder aos usuários acesso a EventBridge regras específicas e, ao mesmo tempo, impedir que eles acessem outras regras. Para fazer isso, marque ambos os conjuntos de regras e use as políticas do IAM que se referem a essas tags. Para obter mais informações sobre a marcação de EventBridge recursos, consulteRecursos de marcação na Amazon EventBridge.

É possível conceder uma política do IAM a um usuário para permitir acesso apenas às regras com uma determinada tag. As regras são escolhidas para conceder acesso ao marcá-las com esta tag específica. Por exemplo, a política a seguir concede acesso a regras com o valor Prod para a chave de tag Stack.

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

Para obter mais informações sobre como usar instruções de política do IAM, consulte Controlar o acesso usando políticas no Manual do usuário do IAM.