Usar políticas baseadas em identidade no Agendador do EventBridge - Agendador do Amazon EventBridge

Usar políticas baseadas em identidade no Agendador do EventBridge

Por padrão, usuários e funções não têm permissão para criar ou modificar recursos do Agendador do EventBridge. Para conceder permissão aos usuários para executar ações nos recursos que eles precisam, um administrador do IAM pode criar políticas do IAM.

Para saber como criar uma política baseada em identidade do IAM ao usar estes documentos de política em JSON de exemplo, consulte Criar políticas do IAM (console) no Guia do usuário do IAM.

Para obter detalhes sobre ações e tipos de recurso definidos pelo Agendador do EventBridge, incluindo o formato dos ARNs para cada tipo de recurso, consulte Ações, recursos e chaves de condição do Agendador do Amazon EventBridge na Referência de autorização do serviço.

Práticas recomendadas de política

As políticas baseadas em identidade determinam se alguém pode criar, acessar ou excluir recursos do Agendador do EventBridge sua conta. Essas ações podem incorrer em custos para sua Conta da AWS. Ao criar ou editar políticas baseadas em identidade, siga estas diretrizes e recomendações:

  • Comece com as políticas gerenciadas pela AWS e avance para as permissões de privilégio mínimo: para começar a conceder permissões a seus usuários e workloads, use as políticas gerenciadas pela AWS, que concedem permissões para muitos casos de uso comuns. Elas estão disponíveis em seus Conta da AWS. Recomendamos que você reduza ainda mais as permissões definindo políticas gerenciadas pelo cliente da AWS que são específicas para seus casos de uso. Para obter mais informações, consulte Políticas gerenciadas pela AWS ou Políticas gerenciadas pela AWS para funções de trabalho no Guia do usuário do IAM.

  • Aplique permissões de privilégio mínimo: ao definir permissões com as políticas do IAM, conceda apenas as permissões necessárias para executar uma tarefa. Você faz isso definindo as ações que podem ser executadas em recursos específicos sob condições específicas, também conhecidas como permissões de privilégio mínimo. Para obter mais informações sobre como usar o IAM para aplicar permissões, consulte Políticas e permissões no IAM no Guia do usuário do IAM.

  • Use condições nas políticas do IAM para restringir ainda mais o acesso: você pode adicionar uma condição às políticas para limitar o acesso a ações e recursos. Por exemplo, você pode escrever uma condição de política para especificar que todas as solicitações devem ser enviadas usando SSL. Também pode usar condições para conceder acesso a ações de serviço, se elas forem usadas por meio de um AWS service (Serviço da AWS) específico, como o CloudFormation. Para obter mais informações, consulte Elementos da política JSON do IAM: condição no Guia do usuário do IAM.

  • Use o IAM Access Analyzer para validar suas políticas do IAM a fim de garantir permissões seguras e funcionais: o IAM Access Analyzer valida as políticas novas e existentes para que elas sigam a linguagem de política do IAM (JSON) e as práticas recomendadas do IAM. O IAM Access Analyzer oferece mais de cem verificações de política e recomendações práticas para ajudar a criar políticas seguras e funcionais. Para obter mais informações, consulte Validação de políticas do IAM Access Analyzer no Guia do Usuário do IAM.

  • Exigir autenticação multifator (MFA): se houver um cenário que exija usuários do IAM ou um usuário raiz em sua Conta da AWS, ative a MFA para obter segurança adicional. Para exigir MFA quando as operações de API forem chamadas, adicione condições de MFA às suas políticas. Para obter mais informações, consulte Configuração de acesso à API protegido por MFA no Guia do Usuário do IAM.

Para obter mais informações sobre as práticas recomendadas do IAM, consulte Práticas recomendadas de segurança no IAM no Guia do usuário do IAM.

Permissões do Agendador do EventBridge

Para que uma entidade principal do IAM (usuário, grupo ou função) crie agendamentos no Agendador do EventBridge e acesse os recursos do Agendador do EventBridge por meio do console ou da API, a entidade principal deve ter um conjunto de permissões adicionado à sua política de permissões. Você pode configurar essas permissões dependendo da função de trabalho da entidade principal. Por exemplo, um usuário ou função que usa apenas o console do Agendador do EventBridge para visualizar uma lista de agendamentos existentes não precisa ter as permissões necessárias para chamar a operação da API CreateSchedule. Recomendamos personalizar suas permissões baseadas em identidade para fornecer somente o acesso com privilégio mínimo.

A lista a seguir mostra os recursos do Agendador do EventBridge e suas ações aceitas correspondentes.

  • Programação

    • scheduler:ListSchedules

    • scheduler:GetSchedule

    • scheduler:CreateSchedule

    • scheduler:UpdateSchedule

    • scheduler:DeleteSchedule

  • Grupo de agendamento

    • scheduler:ListScheduleGroups

    • scheduler:GetScheduleGroup

    • scheduler:CreateScheduleGroup

    • scheduler:DeleteScheduleGroup

    • scheduler:ListTagsForResource

    • scheduler:TagResource

    • scheduler:UntagResource

Você pode usar as permissões do Agendador do EventBridge para criar suas próprias políticas gerenciadas pelo cliente para usar com o Agendador do EventBridge. Você também pode usar as políticas gerenciadas da AWS descritas na seção a seguir para conceder as permissões necessárias para casos de uso comuns sem precisar gerenciar suas próprias políticas.

Políticas gerenciadas da AWS para o Agendador do EventBridge

A AWS resolve muitos casos de uso comuns fornecendo políticas do IAM autônomas criadas e administradas pela AWS. Políticas gerenciadas, ou predefinidas, concedem as permissões necessárias para casos de uso comuns para que você não precise investigar quais permissões são necessárias. Para obter mais informações, consulte Políticas gerenciadas pela AWS no Manual do usuário do IAM. As seguintes políticas gerenciadas pela AWS, que você pode associar a usuários em sua conta, são específicas do Agendador do EventBridge:

  • AmazonEventBridgeSchedulerFullAccess

    Concede permissões para usar todas as ações do Agendador do EventBridge para agendamentos e grupos de agendamentos.

    Para visualizar as permissões dessa política, consulte AmazonEventBridgeSchedulerFullAccess na Referência de políticas gerenciadas pela AWS.

  • AmazonEventBridgeSchedulerReadOnlyAccess

    Concede permissões somente leitura para visualizar detalhes sobre seus agendamentos e grupos de agendamentos.

    Para visualizar as permissões desta política, consulte AmazonEventBridgeSchedulerReadOnlyAccess na Referência de políticas gerenciadas da AWS.

Políticas gerenciadas pelo cliente para o Agendador do EventBridge

Use os exemplos a seguir para criar suas próprias políticas gerenciadas pelo cliente para o Agendador do EventBridge. As políticas gerenciadas pelo cliente permitem que você conceda permissões somente para as ações e recursos necessários para aplicativos e usuários em sua equipe, de acordo com a função de trabalho da entidade principal.

Exemplo: CreateSchedule

Ao criar um novo agendamento, você escolhe se deseja criptografar seus dados no Agendador do EventBridge usando uma Chave pertencente à AWS ou uma chave gerenciada pelo cliente.

A política a seguir permite que uma entidade principal crie um agendamento e aplique criptografia usando uma Chave pertencente à AWS. Com uma Chave pertencente à AWS, a AWS gerencia os recursos no AWS Key Management Service (AWS KMS) para você para que você não precise de permissões adicionais para interagir com o AWS KMS.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Action": [ "scheduler:CreateSchedule" ], "Effect": "Allow", "Resource": [ "arn:aws:scheduler:us-west-2:123456789012:schedule/my-group/my-schedule-name" ] }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::123456789012:role/*", "Condition": { "StringLike": { "iam:PassedToService": "scheduler.amazonaws.com" } } } ] }

Use a política a seguir para permitir que uma entidade principal crie um agendamento e use uma chave gerenciada pelo cliente do AWS KMS para criptografia. Para usar uma chave gerenciada pelo cliente, a entidade principal deve ter permissão para acessar os recursos do AWS KMS da sua conta. Essa política concede acesso a uma única chave KMS especificada para ser usada para criptografar dados no Agendador do EventBridge. Como alternativa, você pode usar um caractere curinga (*) para conceder acesso a todas as chaves em uma conta ou a um subconjunto que corresponda a um determinado padrão de nome.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Action": [ "scheduler:CreateSchedule" ], "Effect": "Allow", "Resource": [ "arn:aws:scheduler:us-east-1:123456789012:schedule/my-group/my-schedule-name" ] }, { "Action": [ "kms:DescribeKey", "kms:GenerateDataKey", "kms:Decrypt" ], "Effect": "Allow", "Resource": [ "arn:aws:kms:us-west-2:123456789012:key/my-key-id" ], "Condition": { "StringLike": { "kms:ViaService": "scheduler.us-east-1.amazonaws.com", "kms:EncryptionContext:aws:scheduler:schedule:arn": "arn:aws:scheduler:us-west-2:123456789012:schedule/my-group/my-schedule-name" } } }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::123456789012:role/*", "Condition": { "StringLike": { "iam:PassedToService": "scheduler.amazonaws.com" } } } ] }

Exemplo: GetSchedule

Use a política a seguir para permitir que uma entidade principal obtenha informações sobre um agendamento.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Action": [ "scheduler:GetSchedule" ], "Effect": "Allow", "Resource": [ "arn:aws:scheduler:us-west-2:123456789012:schedule/my-group/my-schedule-name" ] } ] }

Exemplo: UpdateSchedule

Use as políticas a seguir para permitir que uma entidade principal atualize um agendamento chamando a ação scheduler:UpdateSchedule. Da mesma forma que CreateSchedule, a política depende se o agendamento usa uma Chave pertencente à AWS do AWS KMS ou uma chave gerenciada pelo cliente para criptografia. Para um agendamento configurado com uma Chave pertencente à AWS, use a seguinte política:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Action": [ "scheduler:UpdateSchedule" ], "Effect": "Allow", "Resource": [ "arn:aws:scheduler:us-west-2:123456789012:schedule/my-group/my-schedule-name" ] }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::123456789012:role/*", "Condition": { "StringLike": { "iam:PassedToService": "scheduler.amazonaws.com" } } } ] }

Para um agendamento configurado com uma chave gerenciada pelo cliente, use a política a seguir. Essa política inclui permissões adicionais que permitem que uma entidade principal acesse recursos do AWS KMS em sua conta:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Action": [ "scheduler:UpdateSchedule" ], "Effect": "Allow", "Resource": [ "arn:aws:scheduler:us-east-1:123456789012:schedule/my-group/my-schedule-name" ] }, { "Action": [ "kms:DescribeKey", "kms:GenerateDataKey", "kms:Decrypt" ], "Effect": "Allow", "Resource": [ "arn:aws:kms:us-west-2:123456789012:key/my-key-id" ], "Condition": { "StringLike": { "kms:ViaService": "scheduler.us-east-1.amazonaws.com", "kms:EncryptionContext:aws:scheduler:schedule:arn": "arn:aws:scheduler:us-east-1:123456789012:schedule/my-group/my-schedule-name" } } }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::123456789012:role/*", "Condition": { "StringLike": { "iam:PassedToService": "scheduler.amazonaws.com" } } } ] }

Exemplo: DeleteScheduleGroup

Use a política a seguir para permitir que uma entidade principal exclua um grupo de agendamentos. Ao excluir um grupo, você também exclui os agendamentos associados a esse grupo. A entidade principal que exclui o grupo deve ter permissão para também excluir os agendamentos associados a esse grupo. Essa política concede uma permissão da entidade principal para chamar a ação scheduler:DeleteScheduleGroup nos grupos de agendamentos especificados, bem como em todos as agendamentos do grupo:

nota

O Agendador do EventBridge não aceita a especificação de permissões em nível de recurso para agendamentoss individuais. Por exemplo, a declaração a seguir é inválida e não deve ser incluída em sua política.

"Resource": "arn:aws:scheduler:us-west-2:123456789012:schedule/my-group/my-schedule-name"

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "scheduler:DeleteSchedule", "Resource": "arn:aws:scheduler:us-west-2:123456789012:schedule/my-group/*" }, { "Effect": "Allow", "Action": "scheduler:DeleteScheduleGroup", "Resource": "arn:aws:scheduler:us-west-2:123456789012:schedule/my-group/*" }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::123456789012:role/*", "Condition": { "StringLike": { "iam:PassedToService": "scheduler.amazonaws.com" } } } ] }

Atualizações de políticas gerenciadas da AWS

Alteração Descrição Data

AmazonEventBridgeSchedulerFullAccess: nova política gerenciada.

O Agendador do EventBridge adiciona suporte a uma nova política gerenciada que concede aos usuários acesso total a todos os recursos, incluindo agendamentos e grupos de agendamentos.

10 de novembro de 2022

AmazonEventBridgeSchedulerReadOnlyAccess: nova política gerenciada.

O Agendador do EventBridge adiciona suporte a uma nova política gerenciada que concede aos usuários acesso de somente leitura a todos os recursos, incluindo agendamentos e grupos de agendamentos.

10 de novembro de 2022

O Agendador do EventBridge começou a monitorar alterações

O Agendador do EventBridge começou a monitorar as alterações para as políticas gerenciadas da AWS.

10 de novembro de 2022