Prevenção do problema do substituto confuso entre serviços - AWS IoT SiteWise

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

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 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, 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 aws:SourceArnas chaves de contexto de condição aws:SourceAccountglobal nas políticas de recursos para limitar as permissões que AWS IoT SiteWise concedem outro serviço ao recurso. Se o valor aws:SourceArn não contiver o ID da conta, como um nome do recurso da Amazon (ARN) do bucket do Amazon S3, você deverá usar ambas as chaves de contexto de condição global para limitar as permissões. Se você utilizar ambas as chaves de contexto de condição global, e o valor aws:SourceArn contiver o ID da conta, o valor aws:SourceAccount e a conta no valor aws:SourceArn deverão utilizar o mesmo ID de conta quando utilizados na mesma declaração da política.

  • 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 recurso AWS IoT SiteWise do cliente associado à sts:AssumeRole solicitação.

A maneira mais eficaz de se proteger contra o problema do substituto confuso é 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 da condição de contexto global aws:SourceArn com curingas (*) para as partes desconhecidas do ARN. Por exemplo, arn:aws:servicename:*:123456789012:*.

exemplo — Prevenção confusa de delegado

O exemplo a seguir mostra como você pode usar as chaves de contexto de condição aws:SourceAccount global aws:SourceArn e as chaves de contexto AWS IoT SiteWise para evitar o confuso problema substituto.

{ "Version": "2012-10-17", "Statement": { "Sid": "ConfusedDeputyPreventionExamplePolicy", "Effect": "Allow", "Principal": { "Service": "iotsitewise.amazonaws.com" }, "Action": "sts:AssumeRole", "Resource": [ "arn:aws:iotsitewise:::ResourceName/*" ], "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:iotsitewise:*:123456789012:*" }, "StringEquals": { "aws:SourceAccount": "123456789012" } } } }