Configurando o Agendador do Amazon EventBridge
Antes de usar o Agendador do EventBridge, é necessário executar as etapas a seguir.
Tópicos
Cadastrar para AWS
Se você ainda não tem uma Conta da AWS, siga as etapas a seguir para criar uma.
Como cadastrar uma Conta da AWS
Abra https://portal.aws.amazon.com/billing/signup
. Siga as instruções online.
Parte do procedimento de inscrição envolve receber uma chamada telefônica ou uma mensagem de texto e inserir um código de verificação pelo teclado do telefone.
Quando você se inscreve para uma Conta da AWS, um Usuário raiz da conta da AWS é criado. O usuário-raiz tem acesso a todos os Serviços da AWS e recursos na conta. Como prática recomendada de segurança, atribua o acesso administrativo a um usuário e use somente o usuário-raiz para executar tarefas que exigem acesso de usuário-raiz.
Criar um usuário do IAM
Para criar um usuário administrador, selecione uma das opções a seguir.
| Selecionar uma forma de gerenciar o administrador | Para | Por | Você também pode |
|---|---|---|---|
| Centro de Identidade do IAM (Recomendado) |
Usar credenciais de curto prazo para acessar a AWS. Isso está de acordo com as práticas recomendadas de segurança. Para obter informações sobre as práticas recomendadas, consulte Práticas recomendadas de segurança no IAM no Guia do usuário do IAM. |
Seguindo as instruções em Conceitos básicos no Guia do usuário do AWS IAM Identity Center. | Configurar o acesso programático, com base em Definição da autenticação do AWS IAM Identity Center com a AWS CLI no Guia do usuário da versão 2 da AWS Command Line Interface. |
| No IAM (Não recomendado) |
Usar credenciais de longo prazo para acessar a AWS. | Seguindo as instruções em Criar um acesso de emergência para um usuário do IAM no Guia do usuário do IAM. | Configurar o acesso programático, com base em Gerenciar chaves de acesso para usuários do IAM no Guia do usuário do IAM. |
Políticas gerenciadas pelo uso
Na etapa anterior, você configurou um usuário do IAM com as credenciais para acessar seus recursos da AWS. Na maioria dos casos, para usar o Agendador do EventBridge com segurança, recomendamos que você crie usuários, grupos ou funções separados somente com as permissões necessárias para usar o Agendador do EventBridge. O Agendador do EventBridge aceita as políticas gerenciadas a seguir para casos de uso comuns.
-
AmazonEventBridgeSchedulerFullAccess: concede acesso total ao Agendador do EventBridge usando o console e a API.
-
AmazonEventBridgeSchedulerReadOnlyAccess: concede acesso somente leitura ao Agendador do EventBridge.
Você pode anexar essas políticas gerenciadas às suas entidades principais do IAM da mesma forma que anexou a política de AdministratorAccess na etapa anterior. Para obter mais informações sobre como gerenciar o acesso ao Agendador do EventBridge usando políticas do IAM baseadas em identidade, consulte Usar políticas baseadas em identidade no Agendador do EventBridge.
Configurar o perfil de execução
Um perfil de execução é um perfil do IAM que o Agendador do EventBridge assume para interagir com outros Serviços da AWS em seu nome. Você anexa políticas de permissão a essa função para conceder ao Agendador do EventBridge acesso para invocar destinos.
Você também pode criar uma nova função de execução ao usar o console para criar uma nova agenda. Se você usa o console, o Agendador do EventBridge cria uma função em seu nome com permissões com base no destino escolhido. Quando o Agendador do EventBridge cria uma função para você, a política de confiança da função inclui chaves de condição que limitam quais entidades principais podem assumir a função em seu nome. Isso evita o potencial problema de segurança delegada confusa.
As etapas a seguir descrevem como criar uma nova função de execução e como conceder acesso ao Agendador do EventBridge para invocar um destino. Este tópico descreve as permissões para destinos modelados populares. Para obter informações sobre como adicionar permissões para outros destinos, consulte Usar destinos modelados no Agendador do EventBridge.
Para criar um perfil de execução de do com a AWS CLI
-
Copie a seguinte política JSON de assumir a função e salve-a localmente como
Scheduler-Execution-Role.json. Essa política de confiança permite que o Agendador do EventBridge assuma a função em seu nome.Importante
Para configurar uma função de execução em um ambiente de produção, recomendamos a implementação de salvaguardas adicionais para evitar problemas de segurança delegada confusa. Para obter mais informações e um exemplo de política, consulte Prevenção de confused deputy no Agendador do EventBridge.
-
Do AWS Command Line Interface (AWS CLI), insira o seguinte comando para criar uma nova função: Substitua
pelo nome que você deseja atribuir a essa função.SchedulerExecutionRole$aws iam create-role --role-nameSchedulerExecutionRole--assume-role-policy-document file://Scheduler-Execution-Role.jsonSe o teste for bem-sucedido, você verá o seguinte resultado:
{ "Role": { "Path": "/", "RoleName": "Scheduler-Execution-Role", "RoleId": "BR1L2DZK3K4CTL5ZF9EIL", "Arn": "arn:aws:iam::123456789012:role/SchedulerExecutionRole", "CreateDate": "2022-03-10T18:45:01+00:00", "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "scheduler.amazonaws.com" }, "Action": "sts:AssumeRole" } ] } } }
-
Para criar uma nova política que permita que o Agendador do EventBridge invoque um destino, escolha um dos seguintes destinos comuns: Copie a política de permissão JSON e salve-a localmente como um arquivo
.json. -
Execute o seguinte comando para criar a nova política de permissão: Substitua
pelo nome que você deseja atribuir a essa política.PolicyName$aws iam create-policy --policy-namePolicyName--policy-document file://PermissionPolicy.jsonSe for bem-sucedido, você verá o seguinte resultado: Observe o ARN da política. Você usa esse ARN na próxima etapa para anexar a política à nossa função de execução.
{ "Policy": { "PolicyName": "PolicyName", "CreateDate": "2022-03-015T19:31:18.620Z", "AttachmentCount": 0, "IsAttachable": true, "PolicyId": "ZXR6A36LTYANPAI7NJ5UV", "DefaultVersionId": "v1", "Path": "/", "Arn": "arn:aws:iam::123456789012:policy/PolicyName", "UpdateDate": "2022-03-015T19:31:18.620Z" } }
-
Para associar a política à sua função de execução, execute o comando a seguir. Substitua
pelo ARN da política que você criou na etapa anterior. Substituayour-policy-arnpelo nome da sua função de execução.SchedulerExecutionRole$aws iam attach-role-policy --policy-arnyour-policy-arn--role-nameSchedulerExecutionRoleA operação
attach-role-policynão retorna uma resposta na linha de comando.
Configurar um destino
Antes de criar um agendamento do Agendador do EventBridge, você precisa de pelo menos uma meta para seu agendamento invocar. Você pode usar um recurso existente da AWS ou criar outro. As etapas a seguir mostram como criar uma nova fila padrão do Amazon SQS com CloudFormation.
Criar uma nova fila do Amazon SQS
-
Copie o modelo JSON CloudFormation a seguir e salve-o localmente como
SchedulerTargetSQS.json.{ "AWSTemplateFormatVersion": "2010-09-09", "Resources": { "MyQueue": { "Type": "AWS::SQS::Queue", "Properties": { "QueueName": "MyQueue" } } }, "Outputs": { "QueueName": { "Description": "The name of the queue", "Value": { "Fn::GetAtt": [ "MyQueue", "QueueName" ] } }, "QueueURL": { "Description": "The URL of the queue", "Value": { "Ref": "MyQueue" } }, "QueueARN": { "Description": "The ARN of the queue", "Value": { "Fn::GetAtt": [ "MyQueue", "Arn" ] } } } } -
Da AWS CLI, execute o comando a seguir para criar uma pilha CloudFormation a partir do modelo
Scheduler-Target-SQS.json.$aws cloudformation create-stack --stack-nameScheduler-Target-SQS--template-body file://Scheduler-Target-SQS.jsonSe o teste for bem-sucedido, você verá o seguinte resultado:
{ "StackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/Scheduler-Target-SQS/1d2af345-a121-12eb-abc1-012e34567890" } -
Execute o comando a seguir para visualizar as informações resumidas da sua pilha CloudFormation. Essas informações incluem o status da pilha e as saídas especificadas no modelo.
$aws cloudformation describe-stacks --stack-nameScheduler-Target-SQSSe for bem-sucedido, o comando cria a fila Amazon SQS e retorna a seguinte saída:
{ "Stacks": [ { "StackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/Scheduler-Target-SQS/1d2af345-a121-12eb-abc1-012e34567890", "StackName": "Scheduler-Target-SQS", "CreationTime": "2022-03-17T16:21:29.442000+00:00", "RollbackConfiguration": {}, "StackStatus": "CREATE_COMPLETE", "DisableRollback": false, "NotificationARNs": [], "Outputs": [ { "OutputKey": "QueueName", "OutputValue": "MyQueue", "Description": "The name of the queue" }, { "OutputKey": "QueueARN", "OutputValue": "arn:aws:sqs:us-west-2:123456789012:MyQueue", "Description": "The ARN of the queue" }, { "OutputKey": "QueueURL", "OutputValue": "https://sqs.us-west-2.amazonaws.com/123456789012/MyQueue", "Description": "The URL of the queue" } ], "Tags": [], "EnableTerminationProtection": false, "DriftInformation": { "StackDriftStatus": "NOT_CHECKED" } } ] }
Posteriormente neste guia, você usará o valor de
QueueARNpara configurar a fila como destino para o Agendador do EventBridge.
Próximas etapas
Depois de concluir a etapa de configuração, use o guia de introdução para criar seu primeiro Agendador do EventBridge Scheduler e invocar um destino.