

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.

# Chiffrement au repos dans Amazon QLDB
Chiffrement au repos

**Important**  
Avis de fin de support : les clients existants pourront utiliser Amazon QLDB jusqu'à la fin du support le 31 juillet 2025. Pour plus de détails, consultez [Migrer un registre Amazon QLDB vers Amazon Aurora PostgreSQL](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/).

Toutes les données stockées dans Amazon QLDB sont entièrement chiffrées au repos par défaut. Le *chiffrement QLDB au* repos fournit une sécurité renforcée en chiffrant toutes les données du registre au repos à l'aide des clés de chiffrement dans (). AWS Key Management Service AWS KMS Cette fonctionnalité réduit la lourdeur opérationnelle et la complexité induites par la protection des données sensibles. Avec le chiffrement au repos, vous pouvez créer des applications de registre sensibles à la sécurité qui répondent aux exigences réglementaires et de conformité strictes en matière de chiffrement.

Le chiffrement au repos s'intègre AWS KMS à la gestion de la clé de chiffrement utilisée pour protéger vos registres QLDB. Pour plus d'informations AWS KMS, consultez [AWS Key Management Service les concepts](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html) du *Guide du AWS Key Management Service développeur*.

Dans QLDB, vous pouvez spécifier le type de pour chaque ressource AWS KMS key de registre. Lorsque vous créez un nouveau registre ou que vous mettez à jour un registre existant, vous pouvez choisir l'un des types de clés KMS suivants pour protéger les données de votre registre :
+ *Clé détenue par AWS*— Type de cryptage par défaut. La clé appartient à QLDB (sans frais supplémentaires).
+ *Clé gérée par le client* : la clé est stockée dans votre ordinateur Compte AWS et vous l'avez créée, détenue et gérée. Vous avez le contrôle total de la clé (AWS KMS des frais s'appliquent).

**Note**  
Amazon QLDB a lancé le support pour la AWS KMS keys gestion des clients le 22 juillet 2021. Tous les registres créés avant le lancement sont protégés Clés détenues par AWS par défaut, mais ne sont actuellement pas éligibles au chiffrement au repos à l'aide de clés gérées par le client.  
Vous pouvez consulter l'heure de création de votre registre sur la console QLDB.

Lorsque vous accédez à un registre, QLDB déchiffre les données de manière transparente. Vous pouvez basculer entre la clé gérée par le client Clé détenue par AWS et la clé gérée par le client à tout moment. Il n'est pas nécessaire de modifier le code ou les applications pour utiliser ou gérer des données chiffrées.

Vous pouvez spécifier une clé de chiffrement lorsque vous créez un nouveau registre ou que vous modifiez la clé de chiffrement d'un registre existant à l'aide de l' AWS Management Console API QLDB ou du (). AWS Command Line Interface AWS CLI Pour de plus amples informations, veuillez consulter [Utilisation de clés gérées par le client dans Amazon QLDB](encryption-at-rest.using-cust-keys.md).

**Note**  
Par défaut, Amazon QLDB active automatiquement le chiffrement au repos, sans frais Clés détenues par AWS supplémentaires. Toutefois, AWS KMS des frais s'appliquent pour l'utilisation d'une clé gérée par le client. Pour plus d’informations sur la tarification, consultez [Tarification AWS Key Management Service](https://aws.amazon.com/kms/pricing).  
Le chiffrement QLDB au repos est disponible partout Régions AWS où QLDB est disponible.

**Topics**
+ [

# Chiffrement au repos : comment cela fonctionne dans Amazon QLDB
](encryption-at-rest.how-it-works.md)
+ [

# Utilisation de clés gérées par le client dans Amazon QLDB
](encryption-at-rest.using-cust-keys.md)

# Chiffrement au repos : comment cela fonctionne dans Amazon QLDB
Comment ça marche

Le *chiffrement QLDB au repos chiffre vos données à l'aide de la norme de chiffrement avancée 256 bits (AES-256*). Cela permet de sécuriser vos données contre tout accès non autorisé au stockage sous-jacent. Toutes les données stockées dans les registres QLDB sont chiffrées au repos par défaut. Le chiffrement côté serveur est transparent, ce qui signifie qu'il n'est pas nécessaire de modifier les applications. 

Encryption at rest s'intègre à AWS Key Management Service (AWS KMS) pour gérer la clé de chiffrement utilisée pour protéger vos registres QLDB. Lorsque vous créez un nouveau registre ou que vous mettez à jour un registre existant, vous pouvez choisir l'un des types de AWS KMS clés suivants :
+ *Clé détenue par AWS*— Type de cryptage par défaut. La clé appartient à QLDB (sans frais supplémentaires).
+ *Clé gérée par le client* : la clé est stockée dans votre ordinateur Compte AWS et vous l'avez créée, détenue et gérée. Vous avez le contrôle total de la clé (AWS KMS des frais s'appliquent).

**Topics**
+ [

## Clé détenue par AWS
](#encryption-at-rest.aws-owned)
+ [

## Clé gérée par le client
](#encryption-at-rest.customer-managed)
+ [

## Comment Amazon QLDB utilise les subventions dans AWS KMS
](#encryption-at-rest.grants)
+ [

## Rétablir les subventions dans AWS KMS
](#encryption-at-rest.restoring-grants)
+ [

## Considérations relatives au chiffrement au repos
](#encryption-at-rest.considerations)

## Clé détenue par AWS


Clés détenues par AWS ne sont pas stockés dans votre Compte AWS. Elles font partie d'un ensemble de clés KMS qui AWS possède et gère pour une utilisation multiple Comptes AWS. Services AWS peut être utilisé Clés détenues par AWS pour protéger vos données.

Vous n'avez pas besoin de créer ou de gérer Clés détenues par AWS. Toutefois, vous ne pouvez ni consulter, ni suivre Clés détenues par AWS, ni auditer leur utilisation. Aucuns frais mensuels ni frais d'utilisation ne vous sont facturés Clés détenues par AWS, et ils ne sont pas pris en compte dans les AWS KMS quotas de votre compte.

Pour plus d’informations, consultez [Clés détenues par AWS](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-owned-cmk) dans le *Guide du développeur AWS Key Management Service *.

## Clé gérée par le client


Les clés gérées par le client sont des clés KMS Compte AWS que vous créez, détenez et gérez. Vous avez un contrôle total sur ces clés KMS. QLDB prend uniquement en charge les clés KMS de chiffrement symétriques.

Utilisez une clé gérée par le client pour obtenir les fonctions suivantes.
+ Définition et gestion des politiques clés, des politiques IAM et des autorisations pour contrôler l'accès à la clé
+ Activation et désactivation de la clé
+ Matériau cryptographique rotatif pour la clé
+ Création de tags clés et d'alias
+ Planification de la suppression de la clé
+ Importer votre propre matériel clé ou utiliser un magasin de clés personnalisé que vous possédez et gérez
+ Utilisation AWS CloudTrail d'Amazon CloudWatch Logs pour suivre les demandes auxquelles QLDB envoie AWS KMS en votre nom

Pour plus d'informations, consultez [Clés gérées par le client](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) dans le *Guide du développeur AWS Key Management Service * (langue française non garantie).

Les clés gérées par le client [sont facturées](https://aws.amazon.com/kms/pricing/) pour chaque appel d'API, et AWS KMS des quotas s'appliquent à ces clés KMS. Pour plus d'informations, consultez la section [Quotas de AWS KMS ressources ou de demandes](https://docs.aws.amazon.com/kms/latest/developerguide/limits.html).

Lorsque vous spécifiez une clé gérée par le client comme clé KMS pour un registre, toutes les données du registre stockées dans les journaux et dans le stockage indexé sont protégées par la même clé gérée par le client.

**Clés gérées par le client inaccessibles**

Si vous désactivez votre clé gérée par le client, planifiez sa suppression ou révoquez les autorisations relatives à la clé, le statut du chiffrement de votre registre devient le même. `KMS_KEY_INACCESSIBLE` Dans cet état, le registre est altéré et n'accepte aucune demande de lecture ou d'écriture. Une clé inaccessible empêche tous les utilisateurs et le service QLDB de chiffrer ou de déchiffrer les données et d'effectuer des opérations de lecture et d'écriture dans le registre. QLDB doit avoir accès à votre clé KMS pour que vous puissiez continuer à accéder à votre registre et pour éviter toute perte de données.

**Important**  
Un registre altéré revient automatiquement à l'état actif une fois que vous avez rétabli les autorisations sur la clé ou après avoir réactivé la clé qui a été désactivée.  
Cependant, la suppression d'une clé gérée par le client est *irréversible*. Une fois qu'une clé est supprimée, vous ne pouvez plus accéder aux registres protégés par cette clé, et **les données deviennent définitivement irrécupérables**.

Pour vérifier l'état de chiffrement d'un registre, utilisez l'opération AWS Management Console ou l'[DescribeLedger](ledger-management.basics.md#ledger-management.basics.describe)API.

## Comment Amazon QLDB utilise les subventions dans AWS KMS
Comment QLDB utilise les subventions

QLDB *nécessite* des autorisations pour utiliser votre clé gérée par le client. Lorsque vous créez un registre protégé par une clé gérée par le client, QLDB crée des subventions en votre nom en envoyant des demandes à. [CreateGrant](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateGrant.html) AWS KMS AWS KMS Les autorisations sont utilisées pour donner à QLDB l'accès à une clé KMS chez un client. Compte AWS Pour plus d'informations, consultez [Utilisation des attributions](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html) dans le *Guide du développeur AWS Key Management Service *.

QLDB a besoin des autorisations nécessaires pour utiliser votre clé gérée par le client pour les opérations suivantes : AWS KMS 
+ [DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html)— Vérifiez que la clé KMS de chiffrement symétrique spécifiée est valide.
+ [GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)— Générez une clé de données symétrique unique que QLDB utilise pour chiffrer les données au repos dans votre registre.
+ [Déchiffrer](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) : déchiffrez la clé de données chiffrée par votre clé gérée par le client.
+ [Chiffrer — Chiffrez](https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html) le texte brut en texte chiffré à l'aide de la clé gérée par le client.

Vous pouvez révoquer une autorisation pour supprimer l'accès du service à la clé gérée par le client à tout moment. Dans ce cas, la clé devient inaccessible et QLDB perd l'accès à toutes les données du registre protégées par la clé gérée par le client. Dans cet état, le registre est altéré et n'accepte aucune demande de lecture ou d'écriture tant que vous n'avez pas rétabli les autorisations sur la clé.

## Rétablir les subventions dans AWS KMS
Rétablir les subventions

Pour rétablir les autorisations sur une clé gérée par le client et récupérer l'accès à un registre dans QLDB, vous pouvez mettre à jour le registre et spécifier la même clé KMS. Pour obtenir des instructions, veuillez consulter [Mise à jour AWS KMS key d'un registre existant](encryption-at-rest.using-cust-keys.md#encryption-at-rest.using-cust-keys.update).

## Considérations relatives au chiffrement au repos
Considérations

Tenez compte des points suivants lorsque vous utilisez le chiffrement au repos dans QLDB :
+ Le chiffrement au repos côté serveur est activé par défaut sur toutes les données du registre QLDB et ne peut pas être désactivé. Vous ne pouvez pas chiffrer uniquement un sous-ensemble de données dans un registre.
+ La fonction de chiffrement au repos chiffre uniquement les données lorsque qu'elles sont statiques (au repos) sur un support de stockage permanent. Si la sécurité des données est un problème pour les données en transit ou en cours d'utilisation, vous devrez peut-être prendre les mesures supplémentaires suivantes :
  + *Données en transit* : toutes vos données dans QLDB sont cryptées pendant le transfert. Par défaut, les communications à destination et en provenance de QLDB utilisent le protocole HTTPS, qui protège le trafic réseau en utilisant le cryptage SSL (Secure Sockets Layer) /Transport Layer Security (TLS).
  + *Données en cours d'utilisation* : protégez vos données avant de les envoyer à QLDB en utilisant le chiffrement côté client.

Pour savoir comment implémenter des clés gérées par le client pour les registres, passez à[Utilisation de clés gérées par le client dans Amazon QLDB](encryption-at-rest.using-cust-keys.md).

# Utilisation de clés gérées par le client dans Amazon QLDB
Utilisation de clés gérées par le client

Vous pouvez utiliser l'API AWS Management Console, le AWS Command Line Interface (AWS CLI) ou l'API QLDB pour spécifier les nouveaux registres et AWS KMS key les registres existants dans Amazon QLDB. Les rubriques suivantes décrivent comment gérer et surveiller l'utilisation de vos clés gérées par le client dans QLDB.

**Topics**
+ [

## Prérequis
](#encryption-at-rest.using-cust-keys.prereqs)
+ [

## Spécifier le AWS KMS key pour un nouveau registre
](#encryption-at-rest.using-cust-keys.specify)
+ [

## Mise à jour AWS KMS key d'un registre existant
](#encryption-at-rest.using-cust-keys.update)
+ [

## Surveillance de votre AWS KMS keys
](#encryption-at-rest.using-cust-keys.monitor)

## Prérequis


Avant de pouvoir protéger un registre QLDB avec une clé gérée par le client, vous devez d'abord créer la clé dans (). AWS Key Management Service AWS KMS Vous devez également spécifier une politique clé qui permet à QLDB de créer des subventions à AWS KMS key ce sujet en votre nom.

**Création d'une clé gérée par le client**  
Pour créer une clé gérée par le client, suivez les étapes décrites dans la section [Création de clés KMS de chiffrement symétriques](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk) dans le *guide du AWS Key Management Service développeur*. [QLDB ne prend pas en charge les clés asymétriques.](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html)

**Définition d'une politique de clé**  
Les politiques clés constituent le principal moyen de contrôler l'accès aux clés gérées par le client dans AWS KMS. Chaque clé gérée par le client doit avoir exactement une politique clé. Les déclarations dans le document de politique de clé déterminent qui a l'autorisation d'utiliser la clé KMS et la façon dont ils peuvent l'utiliser. Pour plus d'informations, consultez la section [Utilisation de politiques clés dans AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html).  
Vous pouvez définir une politique clé lorsque vous créez votre clé gérée par le client. Pour modifier une politique clé pour une clé gérée par le client existante, voir [Modifier une politique clé](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying.html).  
Pour autoriser QLDB à utiliser votre clé gérée par le client, la politique clé doit inclure des autorisations pour les actions suivantes : AWS KMS   
+ [kms : CreateGrant](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateGrant.html) — Ajoute une [autorisation](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html) à une clé gérée par le client. Accorde un accès de contrôle à une clé KMS spécifiée.

  Lorsque vous créez ou mettez à jour un registre avec une clé gérée par le client spécifiée, QLDB crée des autorisations qui permettent d'accéder aux opérations de [subvention dont elle a besoin](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#terms-grant-operations). Les opérations de subvention incluent les suivantes :
  + [GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)
  + [Decrypt (Déchiffrer)](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html)
  + [Encrypt (Chiffrer)](https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html)
+ [kms : DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html) — Renvoie des informations détaillées sur une clé gérée par le client. QLDB utilise ces informations pour valider la clé.
**Exemple de politique clé**  
Voici un exemple de politique clé que vous pouvez utiliser pour QLDB. Cette politique permet aux principaux autorisés à utiliser QLDB depuis le `111122223333` compte d'appeler les opérations `CreateGrant` et sur `DescribeKey` la ressource. `arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`  
Pour utiliser cette politique, remplacez *us-east-1**111122223333*, et *1234abcd-12ab-34cd-56ef-1234567890ab* dans l'exemple par vos propres informations.  

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid" : "Allow access to principals authorized to use Amazon QLDB",
            "Effect" : "Allow",
            "Principal" : {
                "AWS" : "*"
            },
            "Action" : [
                "kms:DescribeKey",
                "kms:CreateGrant"
            ],
            "Resource" : "arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
            "Condition" : {
                "StringEquals" : {
                    "kms:ViaService" : "qldb.us-east-1.amazonaws.com",
                    "kms:CallerAccount" : "111122223333"
                }
            }
        }
    ]
}
```

## Spécifier le AWS KMS key pour un nouveau registre


Procédez comme suit pour spécifier une clé KMS lorsque vous créez un nouveau registre à l'aide de la console QLDB ou du. AWS CLI

Vous pouvez spécifier une clé gérée par le client à l'aide d'un ID, d'un alias ou d'un Amazon Resource Name (ARN). Pour en savoir plus, consultez la section [Identifiants clés (KeyId)](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id) dans le *guide du AWS Key Management Service développeur*.

**Note**  
Les clés inter-régions ne sont pas prises en charge. La clé KMS spécifiée doit être identique Région AWS à celle de votre registre.

### Création d'un registre (console)


1. [Connectez-vous à la AWS Management Console console Amazon QLDB et ouvrez-la à l'adresse /qldb. https://console.aws.amazon.com](https://console.aws.amazon.com/qldb)

1. Choisissez **Create Ledger.**

1. Sur la page **Create Ledger**, procédez comme suit :
   + **Informations sur le registre** — Entrez un **nom de registre** unique parmi tous les livres du livre actuel Compte AWS et de la région.
   + **Mode autorisations** — Choisissez un mode d'autorisations à attribuer au registre :
     + **Tout autoriser**
     + **Standard** (*recommandé*)
   + **Chiffrer les données au repos** : choisissez le type de clé KMS à utiliser pour le chiffrement au repos :
     + **Utiliser une clé KMS AWS possédée** — Utilisez une clé KMS détenue et gérée par vous AWS en votre nom. Il s'agit de l'option par défaut qui ne nécessite aucune configuration supplémentaire.
     + **Choisissez une autre AWS KMS clé** : utilisez une clé KMS de chiffrement symétrique dans le compte que vous créez, possédez et gérez.

       Pour créer une nouvelle clé à l'aide de la AWS KMS console, choisissez **Créer une AWS KMS clé**. Pour plus d'informations, consultez [Création de clés KMS de chiffrement symétriques](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk) dans le *Guide du développeur AWS Key Management Service *.

       Pour utiliser une clé KMS existante, choisissez-en une dans la liste déroulante ou spécifiez un ARN de clé KMS.

1. Lorsque les paramètres sont tels que vous le souhaitez, choisissez **Create ledger**.

   **Vous pouvez accéder à votre registre QLDB lorsque son statut devient Actif.** Cela peut prendre plusieurs minutes.

### Création d'un registre ()AWS CLI


Utilisez le AWS CLI pour créer un registre dans QLDB avec la clé Clé détenue par AWS par défaut ou une clé gérée par le client.

**Example — Pour créer un registre avec la valeur par défaut Clé détenue par AWS**  

```
aws qldb create-ledger --name my-example-ledger --permissions-mode STANDARD
```

**Example — Pour créer un registre avec une clé gérée par le client**  

```
aws qldb create-ledger \
    --name my-example-ledger \
    --permissions-mode STANDARD \
    --kms-key arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
```

## Mise à jour AWS KMS key d'un registre existant


Vous pouvez également utiliser la console QLDB ou mettre à jour AWS CLI la clé KMS d'un registre existant en une clé gérée par le client à Clé détenue par AWS tout moment.

**Note**  
Amazon QLDB a lancé le support pour la AWS KMS keys gestion des clients le 22 juillet 2021. Tous les registres créés avant le lancement sont protégés Clés détenues par AWS par défaut, mais ne sont actuellement pas éligibles au chiffrement au repos à l'aide de clés gérées par le client.  
Vous pouvez consulter l'heure de création de votre registre sur la console QLDB.

Les principales modifications apportées à QLDB sont asynchrones. Le registre est entièrement accessible sans aucun impact sur les performances pendant le traitement de la modification clé. Le temps nécessaire pour mettre à jour une clé varie en fonction de la taille du registre.

Vous pouvez spécifier une clé gérée par le client à l'aide d'un ID, d'un alias ou d'un Amazon Resource Name (ARN). Pour en savoir plus, consultez la section [Identifiants clés (KeyId)](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id) dans le *guide du AWS Key Management Service développeur*.

**Note**  
Les clés inter-régions ne sont pas prises en charge. La clé KMS spécifiée doit être identique Région AWS à celle de votre registre.

### Mettre à jour un registre (console)


1. [Connectez-vous à la AWS Management Console console Amazon QLDB et ouvrez-la à l'adresse /qldb. https://console.aws.amazon.com](https://console.aws.amazon.com/qldb)

1. Dans le volet de navigation, choisissez **Ledgers**.

1. Dans la liste des livres, sélectionnez le livre que vous souhaitez mettre à jour, puis choisissez **Modifier** le registre.

1. Sur la page **Modifier le registre**, choisissez le type de clé KMS à utiliser pour le chiffrement au repos :
   + **Utiliser une clé KMS AWS possédée** — Utilisez une clé KMS détenue et gérée par vous AWS en votre nom. Il s'agit de l'option par défaut qui ne nécessite aucune configuration supplémentaire.
   + **Choisissez une autre AWS KMS clé** : utilisez une clé KMS de chiffrement symétrique dans le compte que vous créez, possédez et gérez.

     Pour créer une nouvelle clé à l'aide de la AWS KMS console, choisissez **Créer une AWS KMS clé**. Pour plus d'informations, consultez [Création de clés KMS de chiffrement symétriques](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk) dans le *Guide du développeur AWS Key Management Service *.

     Pour utiliser une clé KMS existante, choisissez-en une dans la liste déroulante ou spécifiez un ARN de clé KMS.

1. Choisissez **Confirmer les modifications**.

### Mettre à jour un registre ()AWS CLI


Utilisez le AWS CLI pour mettre à jour un registre existant dans QLDB avec la clé Clé détenue par AWS par défaut ou une clé gérée par le client.

**Example — Pour mettre à jour un registre avec la valeur par défaut Clé détenue par AWS**  

```
aws qldb update-ledger --name my-example-ledger --kms-key AWS_OWNED_KMS_KEY
```

**Example — Pour mettre à jour un registre avec une clé gérée par le client**  

```
aws qldb update-ledger \
    --name my-example-ledger \
    --kms-key arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
```

## Surveillance de votre AWS KMS keys


Si vous utilisez une clé gérée par le client pour protéger vos registres Amazon QLDB, vous pouvez utiliser [ CloudWatch Amazon](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html) Logs pour [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html)suivre les demandes auxquelles QLDB envoie en votre nom. AWS KMS Pour plus d'informations, consultez la section [Surveillance AWS KMS keys](https://docs.aws.amazon.com/kms/latest/developerguide/monitoring-overview.html) dans le *guide du AWS Key Management Service développeur*.

Les exemples suivants sont des entrées de CloudTrail journal pour les opérations `CreateGrant``GenerateDataKey`,`Decrypt`,`Encrypt`, et`DescribeKey`.

**CreateGrant**  
Lorsque vous spécifiez une clé gérée par le client pour protéger votre registre, QLDB `CreateGrant` envoie des demandes en votre nom pour autoriser l'accès AWS KMS à votre clé KMS. En outre, QLDB utilise cette opération pour supprimer `RetireGrant` des autorisations lorsque vous supprimez un registre.  
Les autorisations créées par QLDB sont spécifiques à un registre. Le principal de la `CreateGrant` demande est l'utilisateur qui a créé la table.  
L'événement qui enregistre l'opération `CreateGrant` est similaire à l'exemple d'événement suivant. Les paramètres incluent l'Amazon Resource Name (ARN) de la clé gérée par le client, le principal du bénéficiaire et le principal sortant (le service QLDB), ainsi que les opérations couvertes par la subvention.  

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AKIAIOSFODNN7EXAMPLE:sample-user",
        "arn": "arn:aws:sts::111122223333:assumed-role/Admin/sample-user",
        "accountId": "111122223333",
        "accessKeyId": "AKIAI44QH8DHBEXAMPLE",
        "sessionContext": {
            "sessionIssuer": {
                "type": "Role",
                "principalId": "AKIAIOSFODNN7EXAMPLE",
                "arn": "arn:aws:iam::111122223333:role/Admin",
                "accountId": "111122223333",
                "userName": "Admin"
            },
            "webIdFederationData": {},
            "attributes": {
                "mfaAuthenticated": "false",
                "creationDate": "2021-06-04T21:37:11Z"
            }
        },
        "invokedBy": "qldb.amazonaws.com"
    },
    "eventTime": "2021-06-04T21:40:00Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "CreateGrant",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "qldb.amazonaws.com",
    "userAgent": "qldb.amazonaws.com",
    "requestParameters": {
        "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
        "granteePrincipal": "qldb.us-west-2.amazonaws.com",
        "operations": [
            "DescribeKey",
            "GenerateDataKey",
            "Decrypt",
            "Encrypt"
        ],
        "retiringPrincipal": "qldb.us-west-2.amazonaws.com"
    },
    "responseElements": {
        "grantId": "b3c83f999187ccc0979ef2ff86a1572237b6bba309c0ebce098c34761f86038a"
    },
    "requestID": "e99188d7-3b82-424e-b63e-e086d848ed60",
    "eventID": "88dc7ba5-4952-4d36-9ca8-9ab5d9598bab",
    "readOnly": false,
    "resources": [
        {
            "accountId": "111122223333",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "111122223333"
}
```

**GenerateDataKey**  
Lorsque vous spécifiez une clé gérée par le client pour protéger votre registre, QLDB crée une clé de données unique. Il envoie une `GenerateDataKey` demande AWS KMS qui spécifie la clé gérée par le client pour le registre.  
L'événement qui enregistre l'opération `GenerateDataKey` est similaire à l'exemple d'événement suivant. L'utilisateur est le compte de service QLDB. Les paramètres incluent l'ARN de la clé gérée par le client, un spécificateur de clé de données qui nécessite une longueur de 32 octets et le contexte de chiffrement qui identifie le nœud interne de hiérarchie des clés.  

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AWSService",
        "invokedBy": "qldb.amazonaws.com"
    },
    "eventTime": "2021-06-04T21:40:01Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "GenerateDataKey",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "qldb.amazonaws.com",
    "userAgent": "qldb.amazonaws.com",
    "requestParameters": {
        "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
        "numberOfBytes": 32,
        "encryptionContext": {
            "key-hierarchy-node-id": "LY4HWMnkeZWKYi6MlitVJC",
            "key-hierarchy-node-version": "1"
        }
    },
    "responseElements": null,
    "requestID": "786977c9-e77c-467a-bff5-9ad5124a4462",
    "eventID": "b3f082cb-3e75-454e-bf0a-64be13075436",
    "readOnly": true,
    "resources": [
        {
            "accountId": "111122223333",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "111122223333",
    "sharedEventID": "26688de5-0b1c-43d3-bc4f-a18029b08446"
}
```

**Decrypt**  
Lorsque vous accédez à un registre, QLDB appelle `Decrypt` l'opération pour déchiffrer la clé de données stockée dans le registre afin de pouvoir accéder aux données cryptées du registre.  
L'événement qui enregistre l'opération `Decrypt` est similaire à l'exemple d'événement suivant. L'utilisateur est le compte de service QLDB. Les paramètres incluent l'ARN de la clé gérée par le client et le contexte de chiffrement qui identifie le nœud interne de hiérarchie des clés.  

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AWSService",
        "invokedBy": "qldb.amazonaws.com"
    },
    "eventTime": "2021-06-04T21:40:56Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "Decrypt",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "qldb.amazonaws.com",
    "userAgent": "qldb.amazonaws.com",
    "requestParameters": {
        "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
        "encryptionAlgorithm": "SYMMETRIC_DEFAULT",
        "encryptionContext": {
            "key-hierarchy-node-id": "LY4HWMnkeZWKYi6MlitVJC",
            "key-hierarchy-node-version": "1"
        }
    },
    "responseElements": null,
    "requestID": "28f2dd18-3cc1-4fe2-82f7-5154f4933ebf",
    "eventID": "603ad5d4-4744-4505-9c21-bd4a6cbd4b20",
    "readOnly": true,
    "resources": [
        {
            "accountId": "111122223333",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "111122223333",
    "sharedEventID": "7b6ce3e3-a764-42ec-8f90-5418c97ec411"
}
```

**Encrypt**  
QLDB appelle l'opération pour crypter `Encrypt` le texte brut en texte chiffré à l'aide de votre clé gérée par le client.  
L'événement qui enregistre l'opération `Encrypt` est similaire à l'exemple d'événement suivant. L'utilisateur est le compte de service QLDB. Les paramètres incluent l'ARN de la clé gérée par le client et le contexte de chiffrement qui spécifie l'identifiant unique interne du registre.  

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AWSService",
        "invokedBy": "qldb.amazonaws.com"
    },
    "eventTime": "2021-06-04T21:40:01Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "Encrypt",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "qldb.amazonaws.com",
    "userAgent": "qldb.amazonaws.com",
    "requestParameters": {
        "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
        "encryptionContext": {
            "LedgerId": "F6qRNziJLUXA4Vy2ZUv8YY"
        },
        "encryptionAlgorithm": "SYMMETRIC_DEFAULT"
    },
    "responseElements": null,
    "requestID": "b2daca7d-4606-4302-a2d7-5b3c8d30c64d",
    "eventID": "b8aace05-2e37-4fed-ae6f-a45a1c6098df",
    "readOnly": true,
    "resources": [
        {
            "accountId": "111122223333",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "111122223333",
    "sharedEventID": "ce420ab0-288e-4b4f-aee8-541e18a28aa5"
}
```

**DescribeKey**  
QLDB appelle `DescribeKey` l'opération pour déterminer si la clé KMS que vous avez spécifiée existe dans Compte AWS la région et.  
L'événement qui enregistre l'opération `DescribeKey` est similaire à l'exemple d'événement suivant. Le principal est l'utilisateur Compte AWS qui a spécifié la clé KMS. Les paramètres incluent l'ARN de la clé gérée par le client.  

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AKIAIOSFODNN7EXAMPLE:sample-user",
        "arn": "arn:aws:sts::111122223333:assumed-role/Admin/sample-user",
        "accountId": "111122223333",
        "accessKeyId": "AKIAI44QH8DHBEXAMPLE",
        "sessionContext": {
            "sessionIssuer": {
                "type": "Role",
                "principalId": "AKIAIOSFODNN7EXAMPLE",
                "arn": "arn:aws:iam::111122223333:role/Admin",
                "accountId": "111122223333",
                "userName": "Admin"
            },
            "webIdFederationData": {},
            "attributes": {
                "mfaAuthenticated": "false",
                "creationDate": "2021-06-04T21:37:11Z"
            }
        },
        "invokedBy": "qldb.amazonaws.com"
    },
    "eventTime": "2021-06-04T21:40:00Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "DescribeKey",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "qldb.amazonaws.com",
    "userAgent": "qldb.amazonaws.com",
    "requestParameters": {
        "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
    },
    "responseElements": null,
    "requestID": "a30586af-c783-4d25-8fda-33152c816c36",
    "eventID": "7a9caf07-2b27-44ab-afe4-b259533ebb88",
    "readOnly": true,
    "resources": [
        {
            "accountId": "111122223333",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "111122223333"
}
```