Prevenção do problema do substituto confuso entre serviços - Managed Service for Apache Flink

Anteriormente, o Amazon Managed Service for Apache Flink era conhecido como Amazon Kinesis Data Analytics for Apache Flink.

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

Prevenção do problema do substituto confuso entre serviços

Em AWS, a representaçã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 atuar nos recursos de outro cliente, mesmo sendo que ele não deveria ter as permissões adequadas, resultando em um problema de “confused deputy”.

Para evitar que delegados confusos, AWS fornece ferramentas que ajudam você a proteger seus dados em todos os serviços usando diretores de serviços que receberam acesso aos recursos em sua conta. Esta seção se concentra na prevenção de confused deputies entre serviços, específica ao Managed Service for Apache Flink. No entanto, você pode saber mais sobre esse tópico na seção O problema do “confused deputy” do Guia do usuário do IAM.

No contexto do Managed Service for Apache Flink, recomendamos usar as chaves de contexto de condição SourceAccount global aws: SourceArn e aws: na política de confiança de sua função para limitar o acesso à função somente às solicitações geradas pelos recursos esperados.

Use aws:SourceArn se quiser apenas um recurso associado a acessibilidade de serviço. Use aws:SourceAccount se quiser permitir que qualquer recurso nessa conta seja associado ao uso entre serviços.

O valor de aws:SourceArn deve ser o ARN do recurso usado pelo Managed Service for Apache Flink, que é especificado com o seguinte formato: arn:aws:kinesisanalytics:region:account:resource.

A abordagem recomendada para o problema do confused deputy é usar a chave de contexto de condição global aws:SourceArn com o ARN com recursos completos.

Se você não souber o ARN completo do recurso ou estiver especificando vários recursos, use a chave aws:SourceArn com caracteres curingas (*) para as partes desconhecidas do ARN. Por exemplo: arn:aws:kinesisanalytics::111122223333:*.

As políticas de perfis que você fornece ao Managed Service for Apache Flink, assim como as políticas de confiança dos perfis gerados para você, podem fazer uso dessas chaves.

Para se proteger contra o problema do confused deputy, execute as seguintes tarefas:

Para se proteger contra o problema do confused deputy
  1. Faça login no AWS Management Console e abra o console do IAM em https://console.aws.amazon.com/iam/.

  2. Selecione Perfis e, em seguida, selecione o perfil que você deseja modificar.

  3. Selecione Edit trust policy (Editar política de confiança).

  4. Na página Editar política de confiança, substitua a política JSON padrão por uma política que usa uma ou ambas as chaves de contexto de condição global aws:SourceArn e aws:SourceAccount. Veja os exemplos de políticas a seguir:

  5. Selecione Update policy.

    { "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "Service":"kinesisanalytics.amazonaws.com" }, "Action":"sts:AssumeRole", "Condition":{ "StringEquals":{ "aws:SourceAccount":"Account ID" }, "ArnEquals":{ "aws:SourceArn":"arn:aws:kinesisanalytics:us-east-1:123456789012:application/my-app" } } } ] }