Uso de IAM con las funcionalidades de copia de seguridad y restauración de DynamoDB - Amazon DynamoDB

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.

Uso de IAM con las funcionalidades de copia de seguridad y restauración de DynamoDB

Puede utilizar AWS Identity and Access Management (IAM) para restringir las acciones de backup y restauración de Amazon DynamoDB para algunos recursos. Las API CreateBackup y RestoreTableFromBackup operan para cada tabla.

Para obtener más información sobre el uso de políticas de IAM en DynamoDB, consulte Políticas basadas en identidad de DynamoDB.

A continuación, se proporcionan ejemplos de políticas de IAM que puede utilizar para configurar funcionalidades de backup y restauración específicas en DynamoDB.

Ejemplo 1: permitir las acciones CreateBackup y RestoreTableFromBackup

La política de IAM siguiente concede permisos para permitir las acciones CreateBackup y RestoreTableFromBackup de DynamoDB en todas las tablas:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:CreateBackup", "dynamodb:RestoreTableFromBackup", "dynamodb:PutItem", "dynamodb:UpdateItem", "dynamodb:DeleteItem", "dynamodb:GetItem", "dynamodb:Query", "dynamodb:Scan", "dynamodb:BatchWriteItem" ], "Resource": "*" } ] }
importante

Los permisos RestoreTableFromBackup de DynamoDB son necesarios en la copia de seguridad de origen, y los permisos de lectura y escritura de DynamoDB en la tabla de destino son necesarios para la funcionalidad de restauración.

Los permisos RestoreTableToPointInTime de DynamoDB son necesarios en la tabla de origen, y los permisos de lectura y escritura de DynamoDB en la tabla de destino son necesarios para la funcionalidad de restauración.

Ejemplo 2: permitir la acción CreateBackup y denegar la acción RestoreTableFromBackup

La política de IAM siguiente concede permisos para la acción CreateBackup y deniega la acción RestoreTableFromBackup:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": ["dynamodb:CreateBackup"], "Resource": "*" }, { "Effect": "Deny", "Action": ["dynamodb:RestoreTableFromBackup"], "Resource": "*" } ] }

Ejemplo 3: permitir la acción ListBackups y denegar las acciones CreateBackup y RestoreTableFromBackup

La política de IAM siguiente concede permisos para la acción ListBackups y deniega las acciones CreateBackup y RestoreTableFromBackup:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": ["dynamodb:ListBackups"], "Resource": "*" }, { "Effect": "Deny", "Action": [ "dynamodb:CreateBackup", "dynamodb:RestoreTableFromBackup" ], "Resource": "*" } ] }

Ejemplo 4: permitir la acción ListBackups y denegar la acción DeleteBackup

La política de IAM siguiente concede permisos para la acción ListBackups y deniega la acción DeleteBackup:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": ["dynamodb:ListBackups"], "Resource": "*" }, { "Effect": "Deny", "Action": ["dynamodb:DeleteBackup"], "Resource": "*" } ] }

Ejemplo 5: permitir las acciones RestoreTableFromBackup y DescribeBackup para todos los recursos y denegar la acción DeleteBackup para una copia de seguridad concreta

La siguiente política de IAM concede permisos para las acciones RestoreTableFromBackup y DescribeBackup y deniega la acción DeleteBackup para un recurso de backup concreto:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:DescribeBackup", "dynamodb:RestoreTableFromBackup", ], "Resource": "arn:aws:dynamodb:us-east-1:123456789012:table/Music/backup/01489173575360-b308cd7d" }, { "Effect": "Allow", "Action": [ "dynamodb:PutItem", "dynamodb:UpdateItem", "dynamodb:DeleteItem", "dynamodb:GetItem", "dynamodb:Query", "dynamodb:Scan", "dynamodb:BatchWriteItem" ], "Resource": "*" }, { "Effect": "Deny", "Action": [ "dynamodb:DeleteBackup" ], "Resource": "arn:aws:dynamodb:us-east-1:123456789012:table/Music/backup/01489173575360-b308cd7d" } ] }
importante

Los permisos RestoreTableFromBackup de DynamoDB son necesarios en la copia de seguridad de origen, y los permisos de lectura y escritura de DynamoDB en la tabla de destino son necesarios para la funcionalidad de restauración.

Los permisos RestoreTableToPointInTime de DynamoDB son necesarios en la tabla de origen, y los permisos de lectura y escritura de DynamoDB en la tabla de destino son necesarios para la funcionalidad de restauración.

Ejemplo 6: permitir la acción CreateBackup para una tabla concreta

La siguiente política de IAM concede permisos para la acción CreateBackup únicamente en la tabla Movies:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": ["dynamodb:CreateBackup"], "Resource": [ "arn:aws:dynamodb:us-east-1:123456789012:table/Movies" ] } ] }

Ejemplo 7: Permitir la acción ListBackups

La siguiente política de IAM concede permisos para la acción ListBackups:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": ["dynamodb:ListBackups"], "Resource": "*" } ] } }
importante

No puede conceder permisos para la acción ListBackups en una tabla concreta.

Ejemplo 8: permitir el acceso a las características de AWS Backup

Necesitará permisos de API para la acción StartAwsBackupJob para realizar correctamente una copia de seguridad con características avanzadas y la acción dynamodb:RestoreTableFromAwsBackup para restaurar correctamente esa copia de seguridad.

Las siguiente política de IAM concede a AWS Backup los permisos para activar copias de seguridad con características avanzadas y restauraciones. Tenga en cuenta también que si las tablas están cifradas, la política necesitará acceso a la clave de AWS KMS.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DescribeQueryScanBooksTable", "Effect": "Allow", "Action": [ "dynamodb:StartAwsBackupJob", "dynamodb:DescribeTable", "dynamodb:Query", "dynamodb:Scan" ], "Resource": "arn:aws:dynamodb:us-west-2:account-id:table/Books" }, { "Sid": "AllowRestoreFromAwsBackup", "Effect": "Allow", "Action": ["dynamodb:RestoreTableFromAwsBackup"], "Resource": "*" }, ] }

Ejemplo 9: Denegar RestoreTableToPointInTime para una tabla de origen específica

La siguiente política de IAM deniega los permisos para la acción RestoreTableToPointInTime para una tabla de origen específica:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "dynamodb:RestoreTableToPointInTime" ], "Resource": "arn:aws:dynamodb:us-east-1:123456789012:table/Music" } ] }

Ejemplo 10: Denegar RestoreTableFromBackup para una tabla de origen específica

La siguiente política de IAM deniega permisos para la acción RestoreTableToPointInTime de todas las copias de seguridad correspondiente a una tabla de origen específica:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "dynamodb:RestoreTableFromBackup" ], "Resource": "arn:aws:dynamodb:us-east-1:123456789012:table/Music/backup/*" } ] }