Prevenção do problema do substituto confuso entre serviços - AWS SimSpace Weaver

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

Oproblema confuso de delegadoé um problema de segurança em que uma entidade que não tem permissão para realizar uma ação pode enganar uma entidade com mais privilégios para realizar a ação. Na AWS, a personificação entre serviços pode resultar no problema do substituto confuso. 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 o uso das chaves de contexto de condição global aws:SourceArn e aws:SourceAccount em políticas de recursos para limitar as AWS SimSpace Weaverpermissões que o concede a outro serviço no recurso para o 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 que apenas um recurso seja associado ao acesso entre serviços. Use aws:SourceAccount se quiser permitir que qualquer recurso nessa conta seja associado ao uso entre serviços.

O valor de aws:SourceArn deve utilizar o ARN da extensã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 da extensão ou estiver especificando várias extensões, use a chave de condição de contexto global aws:SourceArn com curingas (*) para as partes desconhecidas do ARN. Por exemplo, arn:aws:simspaceweaver:*:111122223333:*.

O exemplo a seguir mostra como é possível usar as chaves de contexto de condição globais aws:SourceArn e aws:SourceAccount no SimSpace Weaver para evitar o problema confused deputy. Esta política só permitiráSimSpace Weaverpara assumir a função quando a solicitação vem da conta de origem especificada e é fornecida com o ARN especificado. Nesse caso,SimSpace Weaversó pode assumir a função para solicitações de simulações na própria conta do solicitante (111122223333) e somente na região especificada (us-oeste-2).

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "simspaceweaver.amazonaws.com" ] }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" }, "StringLike": { "aws:SourceArn": "arn:aws:simspaceweaver:us-west-2:111122223333:simulation/*" } } } ] }

Uma maneira mais segura de escrever essa política é incluir o nome da simulação noaws:SourceArn, conforme mostrado no exemplo a seguir, que restringe a política a uma simulação chamadaMyProjectSimulation_22-10-04_22_10_15:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "simspaceweaver.amazonaws.com" ] }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" }, "StringLike": { "aws:SourceArn": "arn:aws:simspaceweaver:us-west-2:111122223333:simulation/MyProjectSimulation_22-10-04_22_10_15" } } } ] }

Quando seuaws:SourceArninclui explicitamente um número de conta, você pode omitir oConditionteste de elemento para oaws:SourceAccount(veja oGuia do usuário do IAMpara obter mais informações), como na seguinte política simplificada:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "simspaceweaver.amazonaws.com" ] }, "Action": "sts:AssumeRole", "Condition": { "StringLike": { "aws:SourceArn": "arn:aws:simspaceweaver:us-west-2:111122223333:simulation/MyProjectSimulation_22-10-04_22_10_15" } } } ] }