View a markdown version of this page

Cross-service confundió la prevención policial en AWS - Amazon Connect Customer

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Cross-service confundió la prevención policial en AWS

El problema de la sustitución confusa es un problema de seguridad en el que una entidad que no tiene permiso para realizar una acción puede obligar a una entidad con más privilegios a realizar la acción. En AWS, la suplantación de identidad entre varios servicios puede provocar el confuso problema de un diputado. Cross-servicela suplantación de identidad puede producirse cuando un servicio (el servicio de llamadas) llama a otro servicio (el servicio al que se llama). El servicio que lleva a cabo las llamadas se puede manipular para utilizar sus permisos a fin de actuar en función de los recursos de otro cliente de una manera en la que no debe tener permiso para acceder. Para evitarlo, AWS proporciona herramientas que le ayudan a proteger sus datos en todos los servicios cuyos directores de servicio tengan acceso a los recursos de su cuenta.

Recomendamos utilizar las claves de contexto de condición aws:SourceAccountglobal aws:SourceArny las claves de contexto en las políticas de recursos para limitar los permisos que Connect Customer otorga a otro servicio al recurso. Si se utilizan ambas claves contextuales de condición global, el valor aws:SourceAccount y la cuenta del valor aws:SourceArn deben utilizar el mismo ID de cuenta cuando se utilicen en la misma declaración de política.

La forma más eficaz de protegerse contra el problema del suplente confuso es utilizar el nombre de recurso de Amazon (ARN) exacto del recurso que desea permitir. Si no conoce el ARN completo del recurso o si especifica varios recursos, utiliza la clave de condición de contexto global aws:SourceArn con comodines (*) para las partes desconocidas del ARN. Por ejemplo, arn:aws:servicename::region-name::your AWS account ID:*.

Connect Customer Customer Customer Profiles, prevención de errores confusos entre servicios

Los siguientes ejemplos muestran las políticas que se aplican a los casos en los que otra persona está configurada como administradora de Connect Customer Customer Profiles. Utilice estas políticas para evitar el problema de los suplentes confusos.

Ejemplo de la política Connect Customer Customer Profiles para crear dominios de perfiles de clientes

Ejemplo de la política Connect Customer Customer Profiles para crear tipos de objetos de 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" } } } }

Ejemplo de la política Connect Customer Customer Profiles para crear y actualizar colas de cartas sin salida

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" } } } ] }

Ejemplo de la política de Connect Customer Customer Profiles para proteger el bucket de Amazon S3 utilizado como parte del proceso de resolución de identidad

{ "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 entre servicios, prevención de errores confusos

En el siguiente ejemplo se muestra una política de recursos que se aplica para evitar el problema del suplente 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 mensajes entre servicios

El siguiente ejemplo de Connect Customer muestra una política de recursos que se debe aplicar para evitar el confuso problema de los diputados.

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" } } } ] }