

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Utilizzo di IAM con backup e ripristino di DynamoDB
<a name="backuprestore_IAM"></a>

Puoi utilizzare AWS Identity and Access Management (IAM) per limitare le azioni di backup e ripristino di Amazon DynamoDB per alcune risorse. Le `RestoreTableFromBackup` APIs operazioni `CreateBackup` e vengono eseguite in base alle singole tabelle.

 Per ulteriori informazioni sull'uso di policy IAM in DynamoDB, consulta [Policy basate su identità per DynamoDB](security_iam_service-with-iam.md#security_iam_service-with-iam-id-based-policies). 

Di seguito sono riportati esempi di policy IAM che è possibile utilizzare per configurare funzionalità specifiche di backup e ripristino in DynamoDB.

## Esempio 1: consentire le CreateBackup azioni e RestoreTableFromBackup
<a name="access-policy-example1"></a>

La seguente policy IAM concede le autorizzazioni per consentire le operazioni DynamoDB `CreateBackup` e `RestoreTableFromBackup` su tutte le tabelle.

------
#### [ JSON ]

****  

```
{
    "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**  
 Le autorizzazioni RestoreTableFromBackup DynamoDB sono necessarie sul backup di origine e le autorizzazioni di lettura e scrittura di DynamoDB sulla tabella di destinazione sono necessarie per ripristinare la funzionalità.  
 Le autorizzazioni RestoreTableToPointInTime DynamoDB sono necessarie nella tabella di origine e le autorizzazioni di lettura e scrittura di DynamoDB sulla tabella di destinazione sono necessarie per ripristinare la funzionalità. 

## Esempio 2: Consenti e nega CreateBackup RestoreTableFromBackup
<a name="access-policy-example2"></a>

La seguente policy IAM concede le autorizzazioni per l'operazione `CreateBackup` e rifiuta l'operazione `RestoreTableFromBackup`:

------
#### [ JSON ]

****  

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

------

## Esempio 3: consentire ListBackups e negare CreateBackup e RestoreTableFromBackup
<a name="access-policy-example3"></a>

La seguente policy IAM concede le autorizzazioni per l'operazione `ListBackups` e rifiuta le operazioni `CreateBackup` e `RestoreTableFromBackup`:

------
#### [ JSON ]

****  

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

------

## Esempio 4: consentire ListBackups e negare DeleteBackup
<a name="access-policy-example4"></a>

La seguente policy IAM concede le autorizzazioni per l'operazione `ListBackups` e rifiuta l'operazione `DeleteBackup`:

------
#### [ JSON ]

****  

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

------

## Esempio 5: Consenti RestoreTableFromBackup e DescribeBackup per tutte le risorse e nega DeleteBackup per un backup specifico
<a name="access-policy-example5"></a>

La seguente policy IAM concede le autorizzazioni per le operazioni `RestoreTableFromBackup` e `DescribeBackup` e rifiuta l'operazione `DeleteBackup` per una risorsa di backup specifica.

------
#### [ JSON ]

****  

```
{
    "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**  
 Le autorizzazioni RestoreTableFromBackup DynamoDB sono necessarie sul backup di origine e le autorizzazioni di lettura e scrittura di DynamoDB sulla tabella di destinazione sono necessarie per ripristinare la funzionalità.  
 Le autorizzazioni RestoreTableToPointInTime DynamoDB sono necessarie nella tabella di origine e le autorizzazioni di lettura e scrittura di DynamoDB sulla tabella di destinazione sono necessarie per ripristinare la funzionalità. 

## Esempio 6: Consenti una tabella specifica CreateBackup
<a name="access-policy-example6"></a>

La seguente policy IAM concede le autorizzazioni per l'operazione `CreateBackup` solo sulla tabella `Movies`:

------
#### [ JSON ]

****  

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

------

## Esempio 7: Consenti ListBackups
<a name="access-policy-example7"></a>

La policy IAM seguente concede le autorizzazioni per l'operazione `ListBackups`:

------
#### [ JSON ]

****  

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

------

**Importante**  
 Non è possibile concedere le autorizzazioni per l’operazione `ListBackups` su una tabella specifica. 

## Esempio 8: consentire l'accesso alle AWS Backup funzionalità
<a name="access-policy-example8"></a>

Avrai bisogno delle autorizzazioni API per l'azione `StartAwsBackupJob` per un backup corretto con caratteristiche avanzate e per l'azione `dynamodb:RestoreTableFromAwsBackup` per ripristinare correttamente il backup.

La seguente policy IAM concede AWS Backup le autorizzazioni per attivare backup con funzionalità e ripristini avanzati. Si noti, inoltre, che se le tabelle sono crittografate, la policy dovrà poter accedere alla [chiave KMS AWS](encryption.usagenotes.html#dynamodb-kms-authz). 

------
#### [ JSON ]

****  

```
{
    "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:111122223333:table/Books"
        },
        {
            "Sid": "AllowRestoreFromAwsBackup",
            "Effect": "Allow",
            "Action": [
                "dynamodb:RestoreTableFromAwsBackup"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## Esempio 9: nega per una tabella di origine RestoreTableToPointInTime specifica
<a name="access-policy-example9"></a>

La seguente policy IAM nega le autorizzazioni per l'azione `RestoreTableToPointInTime` per una tabella di origine specifica: 

------
#### [ JSON ]

****  

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

------

## Esempio 10: Nega RestoreTableFromBackup per tutti i backup per una tabella di origine specifica
<a name="access-policy-example10"></a>

La seguente policy IAM nega le autorizzazioni per l'azione `RestoreTableToPointInTime` per tutti i backup per una tabella di origine specifica: 

------
#### [ JSON ]

****  

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

------