Permisos del bucket de Amazon S3 para el canal AWS Config de entrega - AWS Config

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.

Permisos del bucket de Amazon S3 para el canal AWS Config de entrega

importante

Esta página trata sobre cómo configurar el Amazon S3 Bucket para el canal AWS Config de entrega. Esta página no trata sobre el tipo AWS::S3::Bucket de recurso que puede grabar la grabadora de AWS Config configuración. Para obtener más información sobre el canal AWS Config de entrega, consulte Administración del canal de entrega.

De forma predeterminada, todos los buckets y objetos de Amazon S3 son privados. Solo el propietario del recurso, que es el Cuenta de AWS que creó el depósito, puede acceder a ese depósito. Sin embargo, el propietario del recurso puede optar por conceder permisos de acceso a otros recursos y usuarios. Una forma de hacerlo es escribir una política de acceso.

Si AWS Config crea un bucket de Amazon S3 automáticamente (por ejemplo, si utiliza la AWS Config consola para configurar su canal de entrega), estos permisos se añaden automáticamente al bucket de Amazon S3. No obstante, si especifica un bucket de Amazon S3 existente, debe asegurarse de que el bucket de S3 tenga los permisos adecuados.

nota

Un objeto no hereda los permisos del bucket en el que se encuentra. Por ejemplo, si crea un bucket y concede permisos de escritura a un usuario, no puede obtener acceso a los objetos de ese usuario a no ser que este le conceda acceso explícitamente.

Permisos necesarios para el bucket de Amazon S3 al utilizar IAM roles

Cuando AWS Config envía información de configuración (archivos de historial e instantáneas) al bucket de Amazon S3 de su cuenta, asume la IAM función que asignó al realizar la configuración AWS Config. Cuando AWS Config envía información de configuración a un bucket de Amazon S3 de otra cuenta, primero intenta usar el IAM rol, pero este intento falla si la política de acceso del bucket no permite el WRITE acceso al IAM rol. En este caso, AWS Config vuelve a enviar la información, esta vez como principal del AWS Config servicio. Antes de que la entrega se realice correctamente, la política de WRITE acceso debe conceder el acceso al nombre config.amazonaws.com principal. AWS Config es entonces el propietario de los objetos que entrega al bucket de S3. Debe asociar una política de acceso, mencionada en el paso 6 que sigue, para el bucket de Amazon S3 en otra cuenta para conceder a AWS Config acceso al bucket de Amazon S3.

Antes de AWS Config poder entregar los registros a su depósito de Amazon S3, AWS Config comprueba si el depósito existe y en qué AWS región se encuentra. AWS Config intenta llamar a Amazon S3 HeadBucketAPIpara comprobar si el bucket existe y obtener la región del bucket. Si no se proporcionan permisos para localizar el depósito al comprobar la ubicación, aparecerá un AccessDenied error en AWS CloudTrail los registros. Sin embargo, la entrega del registro a su bucket de Amazon S3 se lleva a cabo correctamente si no proporciona permisos de ubicación de buckets.

nota

Para conceder el permiso a Amazon S3 HeadBucketAPI, dé permiso para realizar la s3:ListBucket acción como SidAWSConfigBucketExistenceCheck, tal como se menciona en el paso 6 siguiente.

Permisos necesarios para el bucket de Amazon S3 cuando se utilizan roles vinculados a servicios

El rol AWS Config vinculado al servicio no tiene permiso para colocar objetos en los buckets de Amazon S3. Por lo tanto, si lo configuras AWS Config con un rol vinculado a un servicio, AWS Config enviará los elementos de configuración como principal del servicio. AWS Config Deberá adjuntar una política de acceso, como se menciona en el paso 6 a continuación, al bucket de Amazon S3 de su propia cuenta o de otra cuenta para conceder AWS Config acceso al bucket de Amazon S3.

Concesión de AWS Config acceso al Amazon S3 Bucket

Siga estos pasos para añadir una política de acceso al bucket de Amazon S3 en su cuenta o en otra cuenta. La política de acceso permite AWS Config enviar información de configuración a un bucket de Amazon S3.

  1. Inicie sesión AWS Management Console con la cuenta que tiene el bucket de S3.

  2. Abra la consola Amazon S3 en https://console.aws.amazon.com/s3/.

  3. Seleccione el depósito que quiere usar AWS Config para entregar los elementos de configuración y, a continuación, elija Propiedades.

  4. Elija Permisos.

  5. Elija Edit Bucket Policy.

  6. Copie la siguiente política en la ventana Bucket Policy Editor (Editor de política de bucket):

    importante

    Como práctica recomendada de seguridad a la hora de permitir el AWS Config acceso a un bucket de Amazon S3, le recomendamos encarecidamente que restrinja el acceso en la política del bucket con AWS:SourceAccount esta condición. Si su política de bucket actual no sigue esta práctica recomendada de seguridad, le recomendamos encarecidamente que edite esa política de bucket para incluir esta protección. Esto garantiza que AWS Config se conceda el acceso únicamente en nombre de los usuarios esperados.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AWSConfigBucketPermissionsCheck", "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": "s3:GetBucketAcl", "Resource": "arn:aws:s3:::targetBucketName", "Condition": { "StringEquals": { "AWS:SourceAccount": "sourceAccountID" } } }, { "Sid": "AWSConfigBucketExistenceCheck", "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::targetBucketName", "Condition": { "StringEquals": { "AWS:SourceAccount": "sourceAccountID" } } }, { "Sid": "AWSConfigBucketDelivery", "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::targetBucketName/[optional] prefix/AWSLogs/sourceAccountID/Config/*", "Condition": { "StringEquals": { "s3:x-amz-acl": "bucket-owner-full-control", "AWS:SourceAccount": "sourceAccountID" } } } ] }
    nota

    Cuando concedas permisos a tu IAM función en lugar del nombre principal del AWS Config servicio (SPN), asegúrate de que tu IAM función tenga PutObjectACL permisos en un segmento multicuenta para evitar errores de permisos insuficientes. Consulta un ejemplo de política de IAM roles en IAMPolítica de roles para su bucket de S3.

  7. Cambie los siguientes valores de la política del bucket:

    • targetBucketName — El nombre del bucket de Amazon S3 al que se AWS Config entregarán los elementos de configuración.

    • [optional] prefix — Una adición opcional a la clave de objeto de Amazon S3 que ayuda a crear una organización similar a una carpeta en el bucket.

    • sourceAccountID — El ID de la cuenta que AWS Config entregará los elementos de configuración al bucket de destino.

  8. Elija Save (Guardar) y, a continuación, Close (Cerrar).

Puede utilizar la condición AWS:SourceAccount de la política de buckets de Amazon S3 anterior para restringir que la entidad principal del servicio de Config solo interactúe con el bucket de Amazon S3 cuando realice operaciones en nombre de cuentas específicas. Si tiene pensado configurar AWS Config varias cuentas de la misma organización para entregar los elementos de configuración a un único bucket de Amazon S3, le recomendamos que utilice IAM funciones en lugar de funciones vinculadas a servicios para poder utilizar claves de AWS Organizations condiciones como. AWS:PrincipalOrgID Para obtener más información sobre la administración de los permisos de acceso para utilizarlos con un IAM rol AWS Config, consulte Permisos para el IAM rol asignado a. AWS Config Para obtener más información sobre la administración de los permisos de acceso AWS Organizations, consulte Administrar los permisos de acceso de su AWS organización.

AWS Config también admite la AWS:SourceArn condición que restringe al director del servicio Config a interactuar únicamente con el bucket de Amazon S3 cuando realiza operaciones en nombre de canales de AWS Config entrega específicos. Al usar el AWS Config servicio principal, la AWS:SourceArn propiedad siempre estará configurada arn:aws:config:sourceRegion:sourceAccountID:* en sourceRegion la región del canal de entrega y sourceAccountID en el ID de la cuenta que contiene el canal de entrega. Para obtener más información sobre los canales de AWS Config entrega, consulte Administración del canal de entrega. Por ejemplo, añada la siguiente condición para restringir que la entidad principal del servicio de Config interactúe con su bucket de Amazon S3 únicamente en nombre de un canal de entrega de la región us-east-1 de la cuenta 123456789012: "ArnLike": {"AWS:SourceArn": "arn:aws:config:us-east-1:123456789012:*"}.