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.
GuardDuty Protección contra malware para copias de seguridad: permisos de rol de IAM
Se proporcionó el rol de cliente para el análisis de malware
GuardDuty Malware Protection espera que se desempeñe la función de cliente (función de escáner) cuando se inicien los análisis de los recursos de respaldo, es decir, las instantáneas, las AMI y los puntos de EBS/EC2/S3 recuperación. Esta función proporciona los permisos necesarios GuardDuty para realizar el análisis de esos recursos específicos. La política de permisos y la política de confianza para este rol se encuentran enPolítica de permisos y confianza para el puesto. En la sección siguiente se describe por qué se requiere cada uno de estos permisos.
Detalles sobre los permisos
-
ModifySnapshotAttribute- Permite acceder a las instantáneas cifradas con clave no cifradas y gestionadas por el cliente mediante una cuenta de servicio de protección contra GuardDuty malware. -
CreateGrant- Permite a GuardDuty Malware Protection crear y acceder a un volumen de EBS cifrado con clave gestionada por el cliente a partir de la instantánea cifrada con la clave gestionada por el cliente a la que se proporciona acceso a la cuenta de GuardDuty servicio. -
RetireGrant- Permite a GuardDuty Malware Protection retirar las subvenciones que se crearon en la clave gestionada por el cliente para leer instantáneas cifradas -
ReEncryptToyReEncryptFrom- EBS lo exige para dar GuardDuty acceso a las instantáneas cifradas con claves administradas por el cliente y crear volúmenes cifrados a partir de ellas. Si bien es posible que los clientes consideren ReEncryption que una instantánea cuando se comparte es una transición de claves, las instantáneas permanecen inmutables desde el punto de vista del cliente una vez creadas. -
ListSnapshotBlocksyGetSnapshotBlock- Las API de EBS Direct se utilizan para acceder a los bloques de instantáneas de una instantánea cifrada con clave AWS gestionada. Esto se hace porque, de otro modo, no se puede acceder a las instantáneas cifradas con clave AWS gestionada desde varias cuentas. -
Decrypt- Permite descifrar las instantáneas básicas cifradas con clave gestionada por el cliente cuando se descargan a la memoria mediante las API de EBS Direct como parte del escaneo incremental. -
ListChangedBlocks- La API EBS Direct se utiliza en el escaneo incremental de instantáneas para obtener la lista de los bloques modificados entre dos instantáneas. -
DescribeKey- Permite a GuardDuty Malware Protection determinar el ID de clave de la clave AWS gestionada en la cuenta del cliente. -
DescribeImages- Permite describir una AMI para obtener la lista de instantáneas que pertenecen a la AMI. -
DescribeRecoveryPoint- Permite que el servicio obtenga los detalles del punto de recuperación y verifique el tipo de recurso del punto de recuperación. -
CreateBackupAccessPoint,DescribeBackupAccessPoint,DeleteBackupAccessPoint- Permite al servicio crear, describir y eliminar el punto de acceso necesario para acceder a los puntos de recuperación. -
kms:Decrypt- Permite que el servicio acceda a los objetos de un punto de recuperación de S3 durante un análisis del punto de recuperación de S3.
Asegurar el rol
El rol debe configurarse con una política de confianza que confíe en el director del servicio de protección contra GuardDuty malware. Esto garantiza que ningún principal que no sea el GuardDuty servicio pueda asumir este rol. Además, le recomendamos que limite las políticas a recursos específicos en lugar de hacerlo*. Esto incluye los identificadores de instantáneas y los identificadores de claves. De este modo, se asegurará de que el rol brinde acceso solo a esos recursos específicos.
importante
Una configuración incorrecta podría provocar errores de escaneo debido a la falta de permisos.
Cómo utiliza GuardDuty Malware Protection las subvenciones en AWS KMS
GuardDuty Malware Protection requiere subvenciones para usar tus claves de KMS.
Al iniciar un análisis de una instantánea cifrada o de una AMI de EC2 compuesta por instantáneas cifradas, GuardDuty Malware Protection crea subvenciones en su nombre mediante el envío de una CreateGrant solicitud a AWS KMS. Estas subvenciones dan GuardDuty acceso a una clave específica de su cuenta.
GuardDuty La protección contra malware requiere que la subvención utilice la clave gestionada por el cliente para las siguientes operaciones internas:
-
Envíe DescribeKey las solicitudes AWS a para obtener detalles sobre la clave simétrica administrada por el cliente con la que está cifrado el recurso enviado para un análisis de malware.
-
Cree un volumen de EBS a partir de una instantánea cifrada mediante la CreateVolume API y cifre el volumen con la misma clave.
-
Acceda a los bloques de instantáneas de la instantánea a través de la GetSnapshotBlock API durante un escaneo incremental.
-
Envíe solicitudes de descifrado a AWS KMS para descifrar las claves de datos cifradas de modo que puedan usarse para leer los datos de la instantánea durante el escaneo.
Puede revocar la concesión creada o eliminar el acceso del servicio a la clave gestionada por el cliente en cualquier momento. Si lo haces, GuardDuty no podrás acceder a ninguno de los datos cifrados por la clave gestionada por el cliente, lo que afectará a las operaciones que dependen de esos datos.
GuardDuty Protección contra el malware y contexto de cifrado
Un contexto de cifrado es un conjunto opcional de pares clave-valor que pueden contener información contextual adicional sobre los datos.
Al incluir un contexto de cifrado en una solicitud de cifrado de datos, AWS KMS vincula el contexto de cifrado a los datos cifrados. Para descifrar los datos, debe incluir el mismo contexto de cifrado en la solicitud.
GuardDuty La protección contra malware utiliza uno de los dos contextos de cifrado.
Contexto de cifrado 1: La clave esaws:guardduty:id.
"encryptionContext": { "aws:guardduty:id": "snap-11112222333344" }
Este contexto de cifrado se usa con las operaciones de concesión: CreateGrant, Descifrar, GenerateDataKeyWithoutPlaintext,, ReEncryptTo RetireGrant, DescribeKey.
Se crea una concesión en el recurso actual con este contexto de cifrado y operaciones de concesión.
Contexto de cifrado 2: La clave es aws:ebs:id
"encryptionContext": { "aws:ebs:id": "snap-11112222333344" }
Este contexto de cifrado se usa con las operaciones de concesión: ReEncryptFrom, Descifrar, RetireGrant, DescribeKey.
Se crean tres concesiones con estos contextos de cifrado y operaciones de concesión. Una en la instantánea de destino con la operación de ReEncryptFrom concesión. Una segunda en la instantánea de destino con Decrypt, RetireGrant, DescribeKey operaciones. Y una tercera en la instantánea base con las mismas operaciones de concesión que la segunda concesión.
Política de permisos y confianza para el puesto
Política de permisos
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "ebs:ListSnapshotBlocks", "ebs:ListChangedBlocks", "ebs:GetSnapshotBlock" ], "Resource": "arn:aws:ec2:*::snapshot/*" }, { "Sid": "CreateGrantPermissions", "Effect": "Allow", "Action": "kms:CreateGrant", "Resource": "arn:aws:kms:*:*:key/*", "Condition": { "ForAnyValue:StringLike": { "kms:EncryptionContext:aws:guardduty:id": "snap-*", "kms:ViaService": [ "guardduty.*.amazonaws.com", "backup.*.amazonaws.com" ] }, "ForAllValues:StringEquals": { "kms:GrantOperations": [ "Decrypt", "CreateGrant", "GenerateDataKeyWithoutPlaintext", "ReEncryptFrom", "ReEncryptTo", "RetireGrant", "DescribeKey" ] }, "Bool": { "kms:GrantIsForAWSResource": "true" } } }, { "Sid": "CreateGrantPermissionsForReEncryptAndDirectAPIs", "Effect": "Allow", "Action": "kms:CreateGrant", "Resource": "arn:aws:kms:*:*:key/*", "Condition": { "ForAnyValue:StringLike": { "kms:EncryptionContext:aws:ebs:id": "snap-*", "kms:ViaService": [ "guardduty.*.amazonaws.com", "backup.*.amazonaws.com" ] }, "ForAllValues:StringEquals": { "kms:GrantOperations": [ "Decrypt", "ReEncryptTo", "ReEncryptFrom", "RetireGrant", "DescribeKey" ] }, "Bool": { "kms:GrantIsForAWSResource": "true" } } }, { "Effect": "Allow", "Action": [ "ec2:DescribeImages", "ec2:DescribeSnapshots" ], "Resource": "*" }, { "Sid": "ShareSnapshotPermission", "Effect": "Allow", "Action": [ "ec2:ModifySnapshotAttribute" ], "Resource": "arn:aws:ec2:*:*:snapshot/*" }, { "Sid": "ShareSnapshotKMSPermission", "Effect": "Allow", "Action": [ "kms:ReEncryptTo", "kms:ReEncryptFrom" ], "Resource": "arn:aws:kms:*:*:key/*", "Condition": { "StringLike": { "kms:ViaService": "ec2.*.amazonaws.com" } } }, { "Sid": "DescribeKeyPermission", "Effect": "Allow", "Action": "kms:DescribeKey", "Resource": "arn:aws:kms:*:*:key/*" }, { "Sid": "DescribeRecoveryPointPermission", "Effect": "Allow", "Action": [ "backup:DescribeRecoveryPoint" ], "Resource": "*" }, { "Sid": "CreateBackupAccessPointPermissions", "Effect" : "Allow", "Action" : [ "backup:CreateBackupAccessPoint" ], "Resource": "arn:aws:backup:*:*:recovery-point:*" }, { "Sid": "ReadAndDeleteBackupAccessPointPermissions", "Effect" : "Allow", "Action" : [ "backup:DescribeBackupAccessPoint", "backup:DeleteBackupAccessPoint" ], "Resource": "*" }, { "Sid": "KMSKeyPermissionsForInstantAccess", "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource": "arn:aws:kms:*:*:key/*", "Condition": { "StringLike": { "kms:ViaService": "backup.*.amazonaws.com" } } } ] }
Política de confianza
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "malware-protection.guardduty.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }