Prevención de la sustitución confusa entre servicios - Amazon ECR

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.

Prevención de la sustitución confusa entre servicios

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 servicios puede provocar el confuso problema de un diputado. La suplantación entre servicios puede producirse cuando un servicio (el servicio que lleva a cabo las 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 lo ayudan a proteger sus datos para todos los servicios con entidades principales de servicio a las que se les ha dado acceso a los recursos de su cuenta.

Recomendamos utilizar las claves de contexto de condición aws:SourceAccountglobal aws:SourceArno las claves de contexto en las políticas de recursos para limitar los permisos que Amazon ECR concede a otro servicio al recurso. Utilice aws:SourceArn si desea que solo se asocie un recurso al acceso entre servicios. Utilice aws:SourceAccount si quiere permitir que cualquier recurso de esa cuenta se asocie al uso entre servicios.

La forma más eficaz de protegerse contra el confuso problema de los diputados es utilizar la clave de contexto ARN de la condición aws:SourceArn global con todo el recurso. Si no conoce la totalidad ARN del recurso o si está especificando varios recursos, utilice la clave de condición del contexto aws:SourceArn global con caracteres comodín (*) para las partes desconocidas del ARN recurso. Por ejemplo, arn:aws:servicename:region:123456789012:*.

Si el aws:SourceArn valor no contiene el ID de la cuenta, como un bucket de Amazon S3ARN, debe usar ambas claves de contexto de condición global para limitar los permisos.

El valor aws:SourceArn debe ser  ResourceDescription.

El siguiente ejemplo muestra cómo puedes usar las claves de contexto de condición aws:SourceAccount global aws:SourceArn y las claves de contexto de una política de ECR repositorio de Amazon para permitir el AWS CodeBuild acceso a las ECR API acciones de Amazon necesarias para la integración con ese servicio y, al mismo tiempo, evitar el confuso problema de los diputados.

{ "Version":"2012-10-17", "Statement":[ { "Sid":"CodeBuildAccess", "Effect":"Allow", "Principal":{ "Service":"codebuild.amazonaws.com" }, "Action":[ "ecr:BatchGetImage", "ecr:GetDownloadUrlForLayer" ], "Condition":{ "ArnLike":{ "aws:SourceArn":"arn:aws:codebuild:region:123456789012:project/project-name" }, "StringEquals":{ "aws:SourceAccount":"123456789012" } } } ] }