

# Prevenção contra o ataque do “substituto confuso” em todos os serviços
<a name="dd-cross-service-confused-deputy-prevention"></a>

“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. Na AWS, a personificação entre serviços pode resultar no problema do ‘confused deputy’. 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 por meio do serviço chamado 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. 

Você tem três acessos do AWS IoT Device Defender a recursos que podem ser afetados pelo problema de segurança confused deputy, pela execução de auditorias, pelo envio de notificações do SNS sobre violações do perfil de segurança e pela execução de ações de mitigação. Para cada uma dessas ações, os valores de `aws:SourceArn` devem ser os seguintes:
+ Para recursos transmitidos na API [UpdateAccountAuditConfiguration](https://docs.aws.amazon.com/iot/latest/apireference/API_UpdateAccountAuditConfiguration.html) (atributos RoleArn e notificationTarget RoleArn), você deve definir o escopo da política de recursos usando `aws:SourceArn` como `arn:{{arnPartition}}:iot:{{region}}:{{accountId}}:`.
+ Para recursos transmitidos na API [CreateMitigationAction](https://docs.aws.amazon.com/iot/latest/apireference/API_CreateMitigationAction.html) (o atributo RoleArn), você deve definir o escopo da política de recursos usando `aws:SourceArn` como `arn:{{arnPartition}}:iot:{{region}}:{{accountId}}:mitigationaction/{{mitigationActionName}}`.
+  Para recursos transmitidos na API [CreateSecurityProfile](https://docs.aws.amazon.com/iot/latest/apireference/API_CreateSecurityProfile.html) (o atributo alertTargets), você deve definir o escopo da política de recursos usando `aws:SourceArn` como `arn:{{arnPartition}}:iot:{{region}}:{{accountId}}:securityprofile/{{securityprofileName}}`.

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 especificar 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}}:*`.

O exemplo a seguir mostra como é possível usar as chaves de contexto de condição globais `aws:SourceArn` e `aws:SourceAccount` no AWS IoT Device Defender para evitar o problema confused deputy.

------
#### [ JSON ]

****  

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

------