

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Effectuez des opérations DynamoDB CRUD avec Step Functions
<a name="connect-ddb"></a>

Vous pouvez intégrer Step Functions à DynamoDB pour effectuer des opérations CRUD sur une table DynamoDB. Cette page répertorie les DynamoDB pris en charge et fournit un `Task` exemple d'état permettant de récupérer un élément depuis APIs DynamoDB.

Pour en savoir plus sur l'intégration aux AWS services dans Step Functions, consultez [Intégration des services ](integrate-services.md) et[Transmission de paramètres à une API de service dans Step Functions](connect-parameters.md).

**Principales fonctionnalités de l'intégration optimisée de DynamoDB**  
Il n'existe aucune optimisation spécifique pour le modèle [Réponse à la requête](connect-to-resource.md#connect-default) d'intégration.
[Attendre un rappel avec un jeton de tâche](connect-to-resource.md#connect-wait-token)le modèle d'intégration n'est pas pris en charge.
Seules [https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_GetItem.html](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_GetItem.html)les actions [https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutItem.html](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutItem.html), [https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateItem.html](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateItem.html), et [https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DeleteItem.html](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DeleteItem.html)API sont disponibles grâce à une intégration optimisée. D'autres actions d'API, telles que celles [https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_CreateTable.html](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_CreateTable.html)disponibles à l'aide de l'intégration du SDK AWS DynamoDB. 

Voici un exemple d'`Task`état qui extrait un message de DynamoDB.

```
"Read next Message from DynamoDB": {
    "Type": "Task",
    "Resource": "arn:aws:states:::dynamodb:getItem",
    "Arguments": {
        "TableName": "DYNAMO_DB_TABLE_NAME",
        "Key": {
            "MessageId": {"S": "{% $List[0] %}"}
        }
    }
```

Pour voir cet état dans un exemple pratique, consultez le modèle de [Transférez des enregistrements de données avec LambdaDynamoDB, et Amazon SQS](sample-project-transfer-data-sqs.md) démarrage.

**Différences entre les préfixes d'exception**  
Lorsque les connexions DynamoDB standard rencontrent une erreur, le préfixe d'exception est (cas mixte). `DynamoDb`  
Pour les intégrations optimisées, le préfixe d'exception sera `DynamoDB` (majuscules`DB`). 

**Quota pour les données d'entrée ou de résultat**  
Lors de l'envoi ou de la réception de données entre services, l'entrée ou le résultat maximal pour une tâche est de 256 KiB de données sous forme de chaîne codée en UTF-8. Consultez [Quotas liés aux exécutions par les machines de l'État](service-quotas.md#service-limits-state-machine-executions).

## DynamoDB optimisé APIs
<a name="connect-dynamodb-api"></a>
+ [https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_GetItem.html](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_GetItem.html)
+ [https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutItem.html](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutItem.html)
+ [https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DeleteItem.html](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DeleteItem.html)
+ [https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateItem.html](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateItem.html)

**Les paramètres in Step Functions sont exprimés en PascalCase**  
Même si l'API de service native se trouve dans CamelCase, par exemple l'`startSyncExecution`action d'API, vous spécifiez des paramètres PascalCase dans, tels que :. `StateMachineArn`

## Politiques IAM pour appeler DynamoDB
<a name="dynamo-iam"></a>

Les exemples de modèles suivants montrent comment AWS Step Functions générer des politiques IAM en fonction des ressources contenues dans la définition de votre machine d'état. Pour plus d’informations, consultez [Comment Step Functions génère des politiques IAM pour les services intégrés](service-integration-iam-templates.md) et [Découvrez les modèles d'intégration des services dans Step Functions](connect-to-resource.md).

*Ressources statiques*

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "dynamodb:GetItem",
                "dynamodb:PutItem",
                "dynamodb:UpdateItem",
                "dynamodb:DeleteItem"
            ],
            "Resource": [
                "arn:aws:dynamodb:us-east-1:123456789012:table/myTableName"
            ]
        }
    ]
}
```

*Ressources dynamiques*

****  

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

*Pour plus d'informations sur les politiques IAM pour toutes les actions d'API DynamoDB, consultez la section [Politiques IAM avec DynamoDB dans le manuel du développeur Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/using-identity-based-policies.html).* *En outre, pour plus d'informations sur les politiques IAM pour PartiQL pour DynamoDB, consultez la section [Politiques IAM avec PartiQL pour DynamoDB dans le manuel du développeur Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ql-iam.html).*