View a markdown version of this page

Cross-service prevenção delegada confusa em AWS - Amazon Connect Customer

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

Cross-service prevenção delegada confusa em AWS

O problema "confused deputy" é um problema 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 executar a ação. Em AWS, a falsificação de identidade entre serviços pode resultar no problema confuso do deputado. Cross-servicea representação 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, AWS fornece ferramentas que ajudam você a proteger seus dados para todos os serviços com diretores de serviços que receberam acesso aos recursos em sua conta.

Recomendamos usar as chaves de contexto de condição aws:SourceAccountglobal aws:SourceArne as chaves de contexto nas políticas de recursos para limitar as permissões que o Connect Customer concede a outro serviço ao recurso. Se você utilizar ambas as chaves de contexto de condição global, o valor aws:SourceAccount e a conta aws:SourceArn no valor deverão utilizar o mesmo ID de conta quando utilizados na mesma instrução de política.

A maneira mais eficaz de se proteger contra o problema de substituto confuso é usar o nome do recurso da Amazon (ARN) exato do recurso que deseja permitir. 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::region-name::your AWS account ID:*

Connect Customer Customer Profiles, multiserviços, prevenção delegada confusa

Os exemplos a seguir mostram políticas que se aplicam aos casos em que outra pessoa está configurada como administradora do Connect Customer Customer Profiles. Utilize essas políticas para evitar o problema “deputy confused”.

Exemplo de política do Connect Customer Customer Profiles para criar domínios do Customer Profile

Exemplo da política Connect Customer Customer Profiles para criar tipos de objeto Customer Profiles

JSON
{ "Version":"2012-10-17", "Statement": { "Sid": "ConfusedDeputyPreventionExamplePolicy", "Effect": "Allow", "Principal": { "Service": "profile.amazonaws.com" }, "Action": [ "kms:GenerateDataKey", "kms:CreateGrant", "kms:Decrypt" ], "Resource": [ "arn:aws:kms:us-east-1:111122223333:key/KeyId" ], "Condition": { "ArnEquals": { "aws:SourceArn": "arn:aws:profile:us-east-1:111122223333:domains/CustomerProfilesDomainName/objects/YourObjectType" }, "StringEquals": { "aws:SourceAccount": "111122223333" } } } }

Exemplo da política Connect Customer Customer Customer Profiles para criar e atualizar filas de mensagens mortas

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "Allow Customer Profiles to publish messages to your queue", "Effect": "Allow", "Principal": { "Service": "profile.amazonaws.com" }, "Action": "sqs:SendMessage", "Resource": "arn:aws:sqs:us-east-1:111122223333:YourDeadLetterQueueName", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333", "aws:SourceArn": "arn:aws:profile:us-east-1:111122223333:domains/CustomerProfileDomainName" } } } ] }

Exemplo da política Connect Customer Customer Profiles para proteger o bucket Amazon S3 usado como parte do processo de resolução de identidade

{ "Sid": "Allow Connect Customer Customer Profiles to put S3 objects to your bucket", "Effect": "Allow", "Principal": { "Service": "profile.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*", "Condition": { "StringEquals": { "aws:SourceAccount": "your AWS account ID" }, "ArnEquals": { "aws:SourceArn": "arn:aws:profile:your region name:your AWS account ID:domains/*" } } }

Connect Customer Voice ID, vários serviços, prevenção delegada confusa

O exemplo do Voice ID a seguir mostra uma política de recursos para aplicar e evitar o problema de substituto confuso.

JSON
{ "Version":"2012-10-17", "Statement": { "Sid": "ConfusedDeputyPreventionExamplePolicy", "Effect": "Allow", "Principal": { "Service": "voiceid.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnEquals": { "aws:SourceArn": "arn:aws:voiceid:us-east-1:111122223333:domain/YourVoiceIDDomain" }, "StringEquals": { "aws:SourceAccount": "111122223333" } } } }

Connect Customer: chat, streaming de mensagens entre serviços, prevenção confusa

O exemplo a seguir do Connect Customer mostra uma política de recursos a ser aplicada para evitar o problema confuso do substituto.

JSON
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "Service":"connect.amazonaws.com" }, "Action":"sns:Publish", "Resource":"arn:aws:sns:us-east-1:111122223333:TopicName", "Condition":{ "StringEquals":{ "aws:SourceAccount":"111122223333" }, "ArnEquals":{ "aws:SourceArn":"arn:aws:connect:us-east-1:111122223333:instance/InstanceId" } } } ] }