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á.
Destinos de API como alvos na Amazon EventBridge
EventBridge Os destinos da API são endpoints HTTPS que você pode invocar como destino de uma regra de barramento de eventos, ou canal, da mesma forma que você invoca um AWS serviço ou recurso como destino. Usando destinos de API, você pode rotear eventos entre AWS serviços, aplicativos integrados de software como serviço (SaaS) e aplicativos públicos ou privados usando chamadas de API.
Quando você especifica um destino de API como destino de regra ou canal, EventBridge invoca o endpoint HTTPS para qualquer evento que corresponda ao padrão de evento especificado na regra ou canal e, em seguida, entrega as informações do evento com a solicitação. Com EventBridge, você pode usar qualquer método HTTP, exceto CONNECT e TRACE para a solicitação. Os métodos HTTP mais comuns a serem usados são PUT e POST.
Também é possível usar transformadores de entrada para personalizar o evento de acordo com os parâmetros de um endpoint HTTP específico. Para obter mais informações, consulte Transformação EventBridge de insumos da Amazon.
EventBridge Os destinos da API usam conexões para definir o método e as credenciais de autorização e a conectividade de rede a EventBridge serem usados ao se conectar a um determinado endpoint HTTPS. As conexões oferecem suporte tanto ao público quanto ao privado APIs. Para obter mais informações, consulte Conexões.
nota
EventBridge Atualmente, os destinos de API oferecem suporte apenas a nomes de domínio público com certificados publicamente confiáveis para endpoints HTTPS ao usar o modo privado APIs. Os destinos da API não oferecem suporte a TLS mútuo (mTLS).
Importante
EventBridge as solicitações para um endpoint de destino da API devem ter um tempo limite máximo de execução do cliente de 5 segundos. Se o endpoint de destino levar mais de 5 segundos para responder, o EventBridge tempo limite da solicitação será atingido. EventBridge as novas tentativas atingiram o tempo limite das solicitações até os máximos configurados em sua política de repetição.
Para ônibus de eventos, por padrão, os máximos são 24 horas e 185 vezes.
Para tubulações, as novas tentativas são determinadas pelo tipo de fonte de tubulação e sua configuração. EventBridge tentará novamente até que o evento expire na origem ou que a idade máxima do evento ou as tentativas de repetição configuradas tenham sido atingidas.
Após o número máximo de tentativas, os eventos são enviados para sua fila de mensagens não entregues, se você tiver uma. Caso contrário, o evento será descartado.
O seguinte vídeo demonstra o uso do destino da API:
Perfil vinculado ao serviço para destinos de API
Quando você cria uma conexão para um destino de API, uma função vinculada ao serviço chamada AWS ServiceRoleForAmazonEventBridgeApiDestinationsé adicionada à sua conta. EventBridge usa a função vinculada ao serviço para criar e armazenar um segredo no Secrets Manager. Para conceder as permissões necessárias à função vinculada ao serviço, EventBridge anexe a AmazonEventBridgeApiDestinationsServiceRolePolicypolítica à função. A política limita as permissões concedidas somente às necessárias para que o perfil interaja com o segredo da conexão. Nenhuma outra permissão está incluída, e o perfil só pode interagir com as conexões em sua conta para gerenciar o segredo.
A política a seguir é a AmazonEventBridgeApiDestinationsServiceRolePolicy
.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "secretsmanager:CreateSecret", "secretsmanager:UpdateSecret", "secretsmanager:DescribeSecret", "secretsmanager:DeleteSecret", "secretsmanager:GetSecretValue", "secretsmanager:PutSecretValue" ], "Resource": "arn:aws:secretsmanager:*:*:secret:events!connection/*" } ] }
Para obter mais informações sobre funções vinculadas a serviços, consulte Usando funções vinculadas a serviços no Guia do Usuário do IAM.
Disponibilidade de regiões
A função AmazonEventBridgeApiDestinationsServiceRolePolicy
vinculada ao serviço é suportada nas seguintes regiões: AWS
-
Leste dos EUA (Norte da Virgínia)
-
Leste dos EUA (Ohio)
-
Oeste dos EUA (Norte da Califórnia)
-
Oeste dos EUA (Oregon)
-
África (Cidade do Cabo)
-
Ásia-Pacífico (Hong Kong)
-
Ásia-Pacífico (Mumbai)
-
Ásia-Pacífico (Osaka)
-
Ásia-Pacífico (Seul)
-
Ásia-Pacífico (Singapura)
-
Ásia-Pacífico (Sydney)
-
Ásia-Pacífico (Tóquio)
-
Canadá (Central)
-
Europa (Frankfurt)
-
Europa (Irlanda)
-
Europa (Londres)
-
Europa (Milão)
-
Europa (Paris)
-
Europa (Estocolmo)
-
América do Sul (São Paulo)
-
China (Ningxia)
-
China (Pequim)
Cabeçalhos em solicitações para destinos da API
A seção a seguir detalha como EventBridge manipula cabeçalhos HTTP em solicitações para destinos de API.
Cabeçalhos incluídos nas solicitações para destinos de API
Além dos cabeçalhos de autorização definidos para a conexão usada para um destino de API, EventBridge inclui os seguintes cabeçalhos em cada solicitação.
Chave de cabeçalho | Valor de cabeçalho |
---|---|
User-Agent |
Amazon/EventBridge/ApiDestinations |
Content-Type |
Se nenhum valor personalizado de Content-Type for especificado, EventBridge inclua o seguinte valor padrão como Content-Type: application/json; charset=utf-8 |
Intervalo |
bytes=0-1048575 |
Accept-Encoding |
gzip,deflate |
Conexão |
feche |
Content-Length |
Um cabeçalho de entidade que indica o tamanho do corpo da entidade, em bytes, enviado ao destinatário. |
Host |
Um cabeçalho de solicitação que especifica o host e o número da porta do servidor para o qual a solicitação está sendo enviada. |
Cabeçalhos que não podem ser substituídos em solicitações para destinos de API
EventBridge não permite que você substitua os seguintes cabeçalhos:
-
User-Agent
-
Intervalo
Os cabeçalhos são EventBridge removidos das solicitações para os destinos da API
EventBridge remove os seguintes cabeçalhos para todas as solicitações de destino da API:
-
A-IM
-
Accept-Charset
-
Accept-Datetime
-
Accept-Encoding
-
Cache-Control
-
Conexão
-
Content-Encoding
-
Content-Length
-
Conteúdo- MD5
-
Data
-
Expect
-
Encaminhado
-
De
-
Host
-
HTTP2-Configurações
-
If-Match
-
If-Modified-Since
-
If-None-Match
-
If-Range
-
If-Unmodified-Since
-
Max-Forwards
-
Origem
-
Pragma
-
Proxy-Authorization
-
Intervalo
-
Referer
-
TE
-
Trailer
-
Transfer-Encoding
-
User-Agent
-
Upgrade
-
Via
-
Aviso
Códigos de erro de destino da API
Quando EventBridge tenta entregar um evento para um destino de API e ocorre um erro, EventBridge faça o seguinte:
-
Tenta novamente os eventos associados aos códigos de erro
401
407
,409
,429
, e.5xx
-
Não repete eventos associados aos códigos de erro
1xx
,2xx
,3xx
, e4xx
(exceto os mencionados acima).
EventBridge Os destinos da API leem o cabeçalho de resposta HTTP padrão Retry-After
para descobrir quanto tempo esperar antes de fazer uma solicitação de acompanhamento. Para barramentos de eventos, EventBridge escolhe o valor mais conservador entre a política de repetição definida e o Retry-After
cabeçalho. Se Retry-After
o valor for negativo, EventBridge interrompe a tentativa de entrega desse evento.
Como a taxa de invocação afeta a entrega do evento
Se a taxa de invocação for definida por segundo para um valor muito menor do que o número de invocações geradas, os eventos podem não ser entregues dentro do tempo de repetição de 24 horas para eventos. Por exemplo, se definir a taxa de invocação para 10 invocações por segundo, mas milhares de eventos por segundo forem gerados, você rapidamente terá um acúmulo de eventos para entregar que excede 24 horas. Para garantir que nenhum evento seja perdido, configure uma fila de mensagens não entregues para enviar eventos com invocações com falha para que seja possível processar os eventos posteriormente. Para obter mais informações, consulte Usando filas de cartas mortas para processar eventos não entregues em EventBridge.