

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à.

# Dynamo DBv2
<a name="dynamodb-v2-rule-action"></a>

L'azione Dynamo DBv2 (`dynamoDBv2`) scrive tutto o parte di un messaggio MQTT in una tabella Amazon DynamoDB. Ogni attributo nel payload viene scritto in una colonna separata del database Dynamo DB.

## Requisiti
<a name="dynamodb-v2-rule-action-requirements"></a>

Questa operazione della regola presenta i seguenti requisiti:
+ Un ruolo IAM che AWS IoT può assumere per eseguire l'operazione. `dynamodb:PutItem` Per ulteriori informazioni, consulta [Concedere a qualsiasi AWS IoT regola l'accesso richiesto](iot-create-role.md).

  Nella AWS IoT console, puoi scegliere o creare un ruolo che consenta di AWS IoT eseguire questa azione relativa alla regola.
+ Il payload del messaggio MQTT deve contenere una chiave di livello root corrispondente alla chiave di partizione primaria della tabella e una chiave di livello root corrispondente alla chiave di ordinamento primaria della tabella, se definita.
+ Se si utilizza una chiave gestita dal cliente AWS KMS key (chiave KMS) per crittografare i dati inattivi in DynamoDB, il servizio deve disporre dell'autorizzazione a utilizzare la chiave KMS per conto del chiamante. Per ulteriori informazioni, consulta [Chiave KMS gestita dal cliente](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/encryption.howitworks.html#managed-cmk-customer-managed) nella *Guida introduttiva di Amazon DynamoDB*.

## Parameters
<a name="dynamodb-v2-rule-action-parameters"></a>

Quando si crea una AWS IoT regola con questa azione, è necessario specificare le seguenti informazioni:

`putItem`  
Un oggetto che specifica la tabella Dynamo DB in cui verranno scritti i dati del messaggio. Questo oggetto deve contenere le seguenti informazioni:    
`tableName`  
Nome della tabella DynamoDB.  
Supporta [modelli sostitutivi](iot-substitution-templates.md): solo API AWS CLI 

`roleARN`  
Il ruolo IAM che permette l'accesso alla tabella DynamoDB. Per ulteriori informazioni, consulta [Requisiti](#dynamodb-v2-rule-action-requirements).  
Supporta [modelli di sostituzione](iot-substitution-templates.md): no

I dati scritti nella tabella Dynamo DB sono il risultato dell'istruzione SQL della regola.

## Esempi
<a name="dynamodb-v2-rule-action-examples"></a>

Il seguente esempio JSON definisce un'azione Dynamo DBv2 in una regola. AWS IoT 

```
{
    "topicRulePayload": {
        "sql": "SELECT * AS message FROM 'some/topic'", 
        "ruleDisabled": false,
        "awsIotSqlVersion": "2016-03-23",
        "actions": [
            {
                "dynamoDBv2": {
                    "putItem": {
                        "tableName": "my_ddb_table"
                    },
                    "roleArn": "arn:aws:iam::123456789012:role/aws_iot_dynamoDBv2", 
                }
            }
        ]
    }
}
```

Il seguente esempio JSON definisce un'azione DynamoDB con modelli di sostituzione in una regola. AWS IoT 

```
{
    "topicRulePayload": {
        "sql": "SELECT * FROM 'some/topic'",
        "ruleDisabled": false,
        "awsIotSqlVersion": "2015-10-08",
        "actions": [
            {
                "dynamoDBv2": {
                    "putItem": {
                        "tableName": "${topic()}"
                    },
                    "roleArn": "arn:aws:iam::123456789012:role/aws_iot_dynamoDBv2"
                }
            }
        ]
    }
}
```

## Consulta anche
<a name="dynamodb-v2-rule-action-see-also"></a>
+ [Cos'è Amazon DynamoDB?](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/) nella *Guida per gli sviluppatori di Amazon DynamoDB*
+ [Guida introduttiva su DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GettingStartedDynamoDB.html) nella *Guida per gli sviluppatori di Amazon DynamoDB*