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 confusa entre serviços em Stacks AWS OpsWorks
Importante
O AWS OpsWorks Stacks serviço chegou ao fim da vida útil em 26 de maio de 2024 e foi desativado para clientes novos e existentes. É altamente recomendável que os clientes migrem suas cargas de trabalho para outras soluções o mais rápido possível. Se você tiver dúvidas sobre migração, entre em contato com a AWS Support equipe no AWS re:POST
O problema de "confused deputy" é uma questão de segurança em que uma entidade que não tem 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 no problema confuso do deputado. 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, a AWS fornece ferramentas que ajudam você a proteger seus dados para todos os serviços com entidades principais de serviço que receberam acesso aos recursos em sua conta.
Recomendamos usar as chaves de contexto de condição aws:SourceAccount
global aws:SourceArn
e as chaves de contexto nas políticas de acesso às pilhas para limitar as permissões que o AWS OpsWorks Stacks concede a outro serviço às pilhas. Se o valor de aws:SourceArn
não contém ID da conta, como um ARN do bucket do Amazon S3, você deve usar ambas as chaves de contexto de condição global para limitar as permissões. Se você usa ambas as chaves de contexto de condição global, e o valor aws:SourceArn
contém o ID da conta, o valor aws:SourceAccount
e a conta no valor aws:SourceArn
deverão utilizar a mesma ID de conta quando na mesma declaração de política. Use aws:SourceArn
se quiser que apenas uma pilha seja associada ao acesso entre serviços. Use aws:SourceAccount
se quiser permitir que qualquer pilha nessa conta seja associada ao uso entre serviços.
O valor de aws:SourceArn
deve ser o ARN de uma AWS OpsWorks pilha.
A maneira mais eficaz de se proteger contra o problema do substituto confuso é usar a chave de contexto de condição global aws:SourceArn
da pilha do AWS OpsWorks
Stacks com o ARN completo do recurso. Se você não souber o ARN completo ou estiver especificando várias pilhas ARNs, 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 seção a seguir mostra como você pode usar as chaves de contexto de condição aws:SourceAccount
global aws:SourceArn
e as chaves de contexto no AWS OpsWorks Stacks para evitar o confuso problema auxiliar.
Evite explorações confusas de delegados no Stacks AWS OpsWorks
Esta seção descreve como você pode ajudar a evitar explorações secundárias confusas no AWS OpsWorks
Stacks e inclui exemplos de políticas de permissões que você pode anexar à função do IAM que você está usando para acessar AWS OpsWorks o Stacks. Como prática recomendada de segurança, sugerimos adicionar as chaves de condição aws:SourceArn
e aws:SourceAccount
às relações de confiança que seu perfil do IAM possui com outros serviços. As relações de confiança permitem que AWS OpsWorks as Stacks assumam a função de realizar ações em outros serviços que são necessárias para criar ou gerenciar suas pilhas de AWS OpsWorks Stacks.
Para editar relações de confiança para adicionar chaves de condição aws:SourceArn
e aws:SourceAccount
Abra o console do IAM em https://console.aws.amazon.com/iam/
. -
No painel de navegação à esquerda, escolha Roles.
-
Na caixa Pesquisar, pesquise a função que você usa para acessar AWS OpsWorks as pilhas. A função AWS gerenciada é
aws-opsworks-service-role
. -
Na página Resumo do perfil, escolha a guia Relações de confiança.
-
Na guia Relacionamentos de confiança, escolha Editar política de confiança.
-
Na página Editar política de confiança, adicione pelo menos uma das chaves de condição
aws:SourceArn
ouaws:SourceAccount
à política. Useaws:SourceArn
para restringir a relação de confiança entre serviços cruzados (como Amazon EC2) e pilhas a pilhas de AWS OpsWorks pilhas específicas AWS OpsWorks , o que é mais restritivo. Adicioneaws:SourceAccount
para restringir a relação de confiança entre serviços cruzados e AWS OpsWorks pilhas às pilhas em uma conta específica, o que é menos restritivo. Veja um exemplo a seguir. Observe que, se você usar as duas chaves de condição, os IDs da conta deverão ser os mesmos.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "opsworks.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012" }, "ArnEquals": { "arn:aws:opsworks:us-east-2:123456789012:stack/EXAMPLEd-5699-40a3-80c3-22c32EXAMPLE/" } } } ] }
-
Quando terminar de adicionar as permissões à política, escolha Atualizar política.
Veja a seguir exemplos adicionais de funções que limitam o acesso às pilhas usando aws:SourceArn
e aws:SourceAccount
.
Tópicos
Exemplo: acessando pilhas em uma região específica
A seguinte declaração de relação de confiança e função acessa qualquer pilha de AWS OpsWorks Stacks na região Leste dos EUA (Ohio) (). us-east-2
Observe que a região está especificada no valor ARN de aws:SourceArn
, mas o valor do ID da pilha é um curinga (*).
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "opsworks.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012" }, "ArnEquals": { "aws:SourceArn": "arn:aws:opsworks:us-east-2:123456789012:stack/*" } } } ] }
Exemplo: adicionar mais de um ARN de pilha ao aws:SourceArn
O exemplo a seguir limita o acesso a uma matriz de duas pilhas de AWS OpsWorks pilhas na ID da conta 123456789012.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "opsworks.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012" }, "ArnEquals": { "aws:SourceArn": [ "arn:aws:opsworks:us-east-2:123456789012:stack/
unique_ID1
", "arn:aws:opsworks:us-east-2:123456789012:stack/unique_ID2
" ] } } } ] }