Conceder permissão ao Amazon Managed Service for Prometheus para enviar mensagens de alerta para seu tópico do Amazon SNS - Amazon Managed Service para Prometheus

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á.

Conceder permissão ao Amazon Managed Service for Prometheus para enviar mensagens de alerta para seu tópico do Amazon SNS

Você deve conceder permissão ao Amazon Managed Service for Prometheus para enviar mensagens ao seu tópico do Amazon SNS. A declaração de política a seguir dará essa permissão. Inclui uma Condition declaração para ajudar a evitar um problema de segurança conhecido como problema confuso do deputado. A declaração Condition restringe o acesso ao tópico do Amazon SNS para permitir somente operações provenientes dessa conta específica e do workspace do Amazon Managed Service for Prometheus. Para obter mais informações sobre o problema confused deputy, veja Prevenção contra o ataque do “substituto confuso” em todos os serviços.

Para dar permissão ao Amazon Managed Service for Prometheus para enviar mensagens para seu tópico do Amazon SNS
  1. Abra o console do Amazon SNS em https://console.aws.amazon.com/sns/v3/home.

  2. No painel de navegação, escolha Tópicos.

  3. Escolha o nome do tópico que você está usando com o Amazon Managed Service for Prometheus.

  4. Selecione a opção Editar.

  5. Escolha Política de acesso e adicione a seguinte declaração de política à política existente.

    { "Sid": "Allow_Publish_Alarms", "Effect": "Allow", "Principal": { "Service": "aps.amazonaws.com" }, "Action": [ "sns:Publish", "sns:GetTopicAttributes" ], "Condition": { "ArnEquals": { "aws:SourceArn": "workspace_ARN" }, "StringEquals": { "AWS:SourceAccount": "account_id" } }, "Resource": "arn:aws:sns:region:account_id:topic_name" }

    [Opcional] Se o tópico do Amazon SNS estiver habilitado para a criptografia do lado do serviço (SSE), você precisa permitir que o Amazon Managed Service for Prometheus envie mensagens para esse tópico criptografado adicionando as kms:Decrypt permissões kms:GenerateDataKey* e à política de chaves da AWS KMS chave usada para criptografar o tópico.

    Por exemplo, você pode adicionar o seguinte à política:

    { "Statement": [{ "Effect": "Allow", "Principal": { "Service": "aps.amazonaws.com" }, "Action": [ "kms:GenerateDataKey*", "kms:Decrypt" ], "Resource": "*" }] }

    Para obter mais informações, consulte AWS Permissões KMS para Tópico SNS.

  6. Escolha Salvar alterações.

nota

Por padrão, o Amazon SNS cria a política de acesso com a condição em AWS:SourceOwner. Para mais informações, consulte a política de acesso do SNS.

nota

O IAM segue a primeira regra mais restritiva da política. Em seu tópico do SNS, se houver um bloco de política mais restritivo do que o bloco documentado na política do Amazon SNS, não será concedida a permissão na política do tópico. Para avaliar a sua política e saber quais as concessões, consulte a Lógica de avaliação da política.

Prevenção contra o ataque do “substituto confuso” em todos os serviços

“Confused deputy” é um problema de segurança no qual uma entidade sem permissão para executar uma ação pode coagir uma entidade mais privilegiada a executá-la. Em AWS, a falsificação de identidade entre serviços pode resultar em um problema confuso de delegado. A personificação entre serviços pode ocorrer quando um serviço (o serviço de chamada) chama outro serviço (o serviço chamado). O serviço de chamada pode ser manipulado de modo a usar suas permissões para atuar nos recursos de outro cliente de uma forma na qual ele não deveria ter permissão para acessar. Para evitar isso, AWS fornece ferramentas que ajudam você a proteger seus dados para todos os serviços com diretores de serviços que receberam acesso aos recursos em sua conta.

Recomendamos o uso das chaves de contexto de condição global aws:SourceArn e aws:SourceAccount nas políticas de recursos para restringir as permissões do recurso que o Amazon Managed Service for Prometheus Amazon concede ao Amazon SNS. Se você utilizar ambas as chaves de contexto de condição global, o valor aws:SourceAccount e a conta no valor aws:SourceArn deverão utilizar o mesmo ID de conta quando utilizados na mesma instrução de política.

O valor de aws:SourceArn deve ser o ARN do workspace do Amazon Managed Service for Prometheus.

A maneira mais eficaz de se proteger do problema ‘confused deputy’ é usar a chave de contexto de condição global aws:SourceArn com o ARN completo do recurso. Se você não souber o ARN completo do recurso ou se estiver especificando vários recursos, use a chave de condição de contexto global aws:SourceArn com curingas (*) para as partes desconhecidas do ARN. Por exemplo, arn:aws:servicename::123456789012:*.

A política mostrada em Conceder permissão ao Amazon Managed Service for Prometheus para enviar mensagens de alerta para seu tópico do Amazon SNS como usar as chaves de contexto de condição globais aws:SourceArn e aws:SourceAccount no Amazon Managed Service for Prometheus para evitar o problema confused deputy.