Exemples d’utilisation de l’AWS CLI avec QLDB - AWS Command Line Interface

Exemples d’utilisation de l’AWS CLI avec QLDB

Les exemples de code suivants montrent comment réaliser des actions et mettre en œuvre des scénarios courants en utilisant l’AWS Command Line Interface avec QLDB.

Les actions sont des extraits de code de programmes plus larges et doivent être exécutées dans leur contexte. Alors que les actions vous indiquent comment appeler des fonctions de service individuelles, vous pouvez les voir en contexte dans leurs scénarios associés.

Chaque exemple inclut un lien vers le code source complet, où vous trouverez des instructions sur la configuration et l’exécution du code en contexte.

Rubriques

Actions

L’exemple de code suivant montre comment utiliser cancel-journal-kinesis-stream.

AWS CLI

Pour annuler un flux de journal

L’exemple cancel-journal-kinesis-stream suivant annule le flux de journal spécifié à partir d’un registre.

aws qldb cancel-journal-kinesis-stream \ --ledger-name myExampleLedger \ --stream-id 7ISCkqwe4y25YyHLzYUFAf

Sortie :

{ "StreamId": "7ISCkqwe4y25YyHLzYUFAf" }

Pour plus d’informations, consultez Streaming journal data from Amazon QLDB dans le Manuel du développeur Amazon QLDB.

L’exemple de code suivant montre comment utiliser create-ledger.

AWS CLI

Exemple 1 : pour créer un registre avec des propriétés par défaut

L’exemple create-ledger suivant crée un registre avec le nom myExampleLedger et le mode d’autorisations STANDARD. Les paramètres facultatifs pour la protection contre la suppression et la clé AWS KMS n’étant pas spécifiés, ils sont respectivement définis par défaut comme true et comme une clé KMS appartenant à AWS.

aws qldb create-ledger \ --name myExampleLedger \ --permissions-mode STANDARD

Sortie :

{ "State": "CREATING", "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger", "DeletionProtection": true, "CreationDateTime": 1568839243.951, "Name": "myExampleLedger", "PermissionsMode": "STANDARD" }

Exemple 2 : pour créer un registre avec la protection contre les suppressions désactivée, une clé KMS gérée par le client et des balises spécifiées

L’exemple create-ledger suivant crée un registre avec le nom myExampleLedger2 et le mode d’autorisations STANDARD. La fonctionnalité de protection contre la suppression est désactivée, la clé KMS gérée par le client spécifiée est utilisée pour le chiffrement au repos et les balises spécifiées sont attachées à la ressource.

aws qldb create-ledger \ --name myExampleLedger2 \ --permissions-mode STANDARD \ --no-deletion-protection \ --kms-key arn:aws:kms:us-west-2:123456789012:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \ --tags IsTest=true,Domain=Test

Sortie :

{ "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger2", "DeletionProtection": false, "CreationDateTime": 1568839543.557, "State": "CREATING", "Name": "myExampleLedger2", "PermissionsMode": "STANDARD", "KmsKeyArn": "arn:aws:kms:us-west-2:123456789012:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }

Pour plus d’informations, consultez Opérations de base pour les registres Amazon QLDB dans le Manuel du développeur Amazon QLDB.

  • Pour plus de détails sur l’API, consultez CreateLedger dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser delete-ledger.

AWS CLI

Pour supprimer un registre

L’exemple delete-ledger suivant supprime le registre spécifié.

aws qldb delete-ledger \ --name myExampleLedger

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Opérations de base pour les registres Amazon QLDB dans le Manuel du développeur Amazon QLDB.

  • Pour plus de détails sur l’API, consultez DeleteLedger dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser describe-journal-kinesis-stream.

AWS CLI

Pour décrire un flux de journal

L’exemple describe-journal-kinesis-stream suivant affiche les détails du flux de journal spécifié à partir d’un registre.

aws qldb describe-journal-kinesis-stream \ --ledger-name myExampleLedger \ --stream-id 7ISCkqwe4y25YyHLzYUFAf

Sortie :

{ "Stream": { "LedgerName": "myExampleLedger", "CreationTime": 1591221984.677, "InclusiveStartTime": 1590710400.0, "ExclusiveEndTime": 1590796799.0, "RoleArn": "arn:aws:iam::123456789012:role/my-kinesis-stream-role", "StreamId": "7ISCkqwe4y25YyHLzYUFAf", "Arn": "arn:aws:qldb:us-east-1:123456789012:stream/myExampleLedger/7ISCkqwe4y25YyHLzYUFAf", "Status": "ACTIVE", "KinesisConfiguration": { "StreamArn": "arn:aws:kinesis:us-east-1:123456789012:stream/stream-for-qldb", "AggregationEnabled": true }, "StreamName": "myExampleLedger-stream" } }

Pour plus d’informations, consultez Streaming journal data from Amazon QLDB dans le Manuel du développeur Amazon QLDB.

L’exemple de code suivant montre comment utiliser describe-journal-s3-export.

AWS CLI

Pour décrire une tâche d’exportation de journal

L’exemple describe-journal-s3-export suivant affiche les détails de la tâche d’exportation spécifiée à partir d’un registre.

aws qldb describe-journal-s3-export \ --name myExampleLedger \ --export-id ADR2ONPKN5LINYGb4dp7yZ

Sortie :

{ "ExportDescription": { "S3ExportConfiguration": { "Bucket": "amzn-s3-demo-bucket", "Prefix": "ledgerexport1/", "EncryptionConfiguration": { "ObjectEncryptionType": "SSE_S3" } }, "RoleArn": "arn:aws:iam::123456789012:role/my-s3-export-role", "Status": "COMPLETED", "ExportCreationTime": 1568847801.418, "InclusiveStartTime": 1568764800.0, "ExclusiveEndTime": 1568847599.0, "LedgerName": "myExampleLedger", "ExportId": "ADR2ONPKN5LINYGb4dp7yZ" } }

Pour plus d’informations, consultez Exporting Your Journal in Amazon QLDB dans le Manuel du développeur Amazon QLDB.

  • Pour plus de détails sur l’API, consultez DescribeJournalS3Export dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser describe-ledger.

AWS CLI

Pour décrire un registre

L’exemple describe-ledger suivant affiche les détails du registre spécifié.

aws qldb describe-ledger \ --name myExampleLedger

Sortie :

{ "CreationDateTime": 1568839243.951, "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger", "State": "ACTIVE", "Name": "myExampleLedger", "DeletionProtection": true, "PermissionsMode": "STANDARD", "EncryptionDescription": { "KmsKeyArn": "arn:aws:kms:us-west-2:123456789012:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "EncryptionStatus": "ENABLED" } }

Pour plus d’informations, consultez Opérations de base pour les registres Amazon QLDB dans le Manuel du développeur Amazon QLDB.

  • Pour plus de détails sur l’API, consultez DescribeLedger dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser export-journal-to-s3.

AWS CLI

Pour exporter des blocs du journal vers S3

L’exemple export-journal-to-s3 suivant crée une tâche d’exportation pour des blocs du journal dans une plage de date et d’heure spécifiée à partir d’un registre portant le nom myExampleLedger. La tâche d’exportation écrit les blocs dans un compartiment Amazon S3 spécifié.

aws qldb export-journal-to-s3 \ --name myExampleLedger \ --inclusive-start-time 2019-09-18T00:00:00Z \ --exclusive-end-time 2019-09-18T22:59:59Z \ --role-arn arn:aws:iam::123456789012:role/my-s3-export-role \ --s3-export-configuration file://my-s3-export-config.json

Contenu de my-s3-export-config.json :

{ "Bucket": "amzn-s3-demo-bucket", "Prefix": "ledgerexport1/", "EncryptionConfiguration": { "ObjectEncryptionType": "SSE_S3" } }

Sortie :

{ "ExportId": "ADR2ONPKN5LINYGb4dp7yZ" }

Pour plus d’informations, consultez Exporting Your Journal in Amazon QLDB dans le Manuel du développeur Amazon QLDB.

  • Pour plus de détails sur l’API, consultez ExportJournalToS3 dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser get-block.

AWS CLI

Exemple 1 : pour obtenir un bloc du journal et une preuve à des fins de vérification à l’aide de fichiers d’entrée

L’exemple get-block suivant demande un objet de données de bloc et une preuve provenant du registre spécifié. La demande concerne une adresse de fin du résumé et une adresse de bloc spécifiées.

aws qldb get-block \ --name vehicle-registration \ --block-address file://myblockaddress.json \ --digest-tip-address file://mydigesttipaddress.json

Contenu de myblockaddress.json :

{ "IonText": "{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100}" }

Contenu de mydigesttipaddress.json :

{ "IonText": "{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:123}" }

Sortie :

{ "Block": { "IonText": "{blockAddress:{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100},transactionId:\"FnQeJBAicTX0Ah32ZnVtSX\",blockTimestamp:2019-09-16T19:37:05.360Z,blockHash:{{NoChM92yKRuJAb/jeLd1VnYn4DHiWIf071ACfic9uHc=}},entriesHash:{{l05LOsiKV14SDbuaYnH7uwXzUvqzIwUiRLXGbTyj/nY=}},previousBlockHash:{{7kewBXhpdbClcZKxhVmpoMHpUGOJtWQD0iY2LPfZkYA=}},entriesHashList:[{{eRSwnmAM7WWANWDd5iGOyK+T4tDXyzUq6HZ/0fgLHos=}},{{mHVex/yjHAWjFPpwhBuH2GKXmKJjK2FBa9faqoUVNtg=}},{{y5cCBr7pOAIUfsVQ1j0TqtE97b4b4oo1R0vnYyE5wWM=}},{{TvTXygML1bMe6NvEZtGkX+KR+W/EJl4qD1mmV77KZQg=}}],transactionInfo:{statements:[{statement:\"FROM VehicleRegistration AS r \\nWHERE r.VIN = '1N4AL11D75C109151'\\nINSERT INTO r.Owners.SecondaryOwners\\n VALUE { 'PersonId' : 'CMVdR77XP8zAglmmFDGTvt' }\",startTime:2019-09-16T19:37:05.302Z,statementDigest:{{jcgPX2vsOJ0waum4qmDYtn1pCAT9xKNIzA+2k4R+mxA=}}}],documents:{JUJgkIcNbhS2goq8RqLuZ4:{tableName:\"VehicleRegistration\",tableId:\"BFJKdXgzt9oF4wjMbuxy4G\",statements:[0]}}},revisions:[{blockAddress:{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100},hash:{{mHVex/yjHAWjFPpwhBuH2GKXmKJjK2FBa9faqoUVNtg=}},data:{VIN:\"1N4AL11D75C109151\",LicensePlateNumber:\"LEWISR261LL\",State:\"WA\",PendingPenaltyTicketAmount:90.25,ValidFromDate:2017-08-21,ValidToDate:2020-05-11,Owners:{PrimaryOwner:{PersonId:\"BFJKdXhnLRT27sXBnojNGW\"},SecondaryOwners:[{PersonId:\"CMVdR77XP8zAglmmFDGTvt\"}]},City:\"Everett\"},metadata:{id:\"JUJgkIcNbhS2goq8RqLuZ4\",version:3,txTime:2019-09-16T19:37:05.344Z,txId:\"FnQeJBAicTX0Ah32ZnVtSX\"}}]}" }, "Proof": { "IonText": "[{{l3+EXs69K1+rehlqyWLkt+oHDlw4Zi9pCLW/t/mgTPM=}},{{48CXG3ehPqsxCYd34EEa8Fso0ORpWWAO8010RJKf3Do=}},{{9UnwnKSQT0i3ge1JMVa+tMIqCEDaOPTkWxmyHSn8UPQ=}},{{3nW6Vryghk+7pd6wFCtLufgPM6qXHyTNeCb1sCwcDaI=}},{{Irb5fNhBrNEQ1VPhzlnGT/ZQPadSmgfdtMYcwkNOxoI=}},{{+3CWpYG/ytf/vq9GidpzSx6JJiLXt1hMQWNnqOy3jfY=}},{{NPx6cRhwsiy5m9UEWS5JTJrZoUdO2jBOAAOmyZAT+qE=}}]" } }

Pour plus d’informations, consultez Data Verification in Amazon QLDB dans le Manuel du développeur Amazon QLDB.

Exemple 2 : pour obtenir un bloc du journal et une preuve à des fins de vérification à l’aide de la syntaxe raccourcie

L’exemple get-block suivant demande un objet de données de bloc et une preuve provenant du registre spécifié utilisant la syntaxe raccourcie. La demande concerne une adresse de fin du résumé et une adresse de bloc spécifiées.

aws qldb get-block \ --name vehicle-registration \ --block-address 'IonText="{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100}"' \ --digest-tip-address 'IonText="{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:123}"'

Sortie :

{ "Block": { "IonText": "{blockAddress:{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100},transactionId:\"FnQeJBAicTX0Ah32ZnVtSX\",blockTimestamp:2019-09-16T19:37:05.360Z,blockHash:{{NoChM92yKRuJAb/jeLd1VnYn4DHiWIf071ACfic9uHc=}},entriesHash:{{l05LOsiKV14SDbuaYnH7uwXzUvqzIwUiRLXGbTyj/nY=}},previousBlockHash:{{7kewBXhpdbClcZKxhVmpoMHpUGOJtWQD0iY2LPfZkYA=}},entriesHashList:[{{eRSwnmAM7WWANWDd5iGOyK+T4tDXyzUq6HZ/0fgLHos=}},{{mHVex/yjHAWjFPpwhBuH2GKXmKJjK2FBa9faqoUVNtg=}},{{y5cCBr7pOAIUfsVQ1j0TqtE97b4b4oo1R0vnYyE5wWM=}},{{TvTXygML1bMe6NvEZtGkX+KR+W/EJl4qD1mmV77KZQg=}}],transactionInfo:{statements:[{statement:\"FROM VehicleRegistration AS r \\nWHERE r.VIN = '1N4AL11D75C109151'\\nINSERT INTO r.Owners.SecondaryOwners\\n VALUE { 'PersonId' : 'CMVdR77XP8zAglmmFDGTvt' }\",startTime:2019-09-16T19:37:05.302Z,statementDigest:{{jcgPX2vsOJ0waum4qmDYtn1pCAT9xKNIzA+2k4R+mxA=}}}],documents:{JUJgkIcNbhS2goq8RqLuZ4:{tableName:\"VehicleRegistration\",tableId:\"BFJKdXgzt9oF4wjMbuxy4G\",statements:[0]}}},revisions:[{blockAddress:{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100},hash:{{mHVex/yjHAWjFPpwhBuH2GKXmKJjK2FBa9faqoUVNtg=}},data:{VIN:\"1N4AL11D75C109151\",LicensePlateNumber:\"LEWISR261LL\",State:\"WA\",PendingPenaltyTicketAmount:90.25,ValidFromDate:2017-08-21,ValidToDate:2020-05-11,Owners:{PrimaryOwner:{PersonId:\"BFJKdXhnLRT27sXBnojNGW\"},SecondaryOwners:[{PersonId:\"CMVdR77XP8zAglmmFDGTvt\"}]},City:\"Everett\"},metadata:{id:\"JUJgkIcNbhS2goq8RqLuZ4\",version:3,txTime:2019-09-16T19:37:05.344Z,txId:\"FnQeJBAicTX0Ah32ZnVtSX\"}}]}" }, "Proof": { "IonText": "[{{l3+EXs69K1+rehlqyWLkt+oHDlw4Zi9pCLW/t/mgTPM=}},{{48CXG3ehPqsxCYd34EEa8Fso0ORpWWAO8010RJKf3Do=}},{{9UnwnKSQT0i3ge1JMVa+tMIqCEDaOPTkWxmyHSn8UPQ=}},{{3nW6Vryghk+7pd6wFCtLufgPM6qXHyTNeCb1sCwcDaI=}},{{Irb5fNhBrNEQ1VPhzlnGT/ZQPadSmgfdtMYcwkNOxoI=}},{{+3CWpYG/ytf/vq9GidpzSx6JJiLXt1hMQWNnqOy3jfY=}},{{NPx6cRhwsiy5m9UEWS5JTJrZoUdO2jBOAAOmyZAT+qE=}}]" } }

Pour plus d’informations, consultez Data Verification in Amazon QLDB dans le Manuel du développeur Amazon QLDB.

  • Pour plus de détails sur l’API, consultez GetBlock dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser get-digest.

AWS CLI

Pour obtenir le résumé d’un registre

L’exemple get-digest suivant demande au registre spécifié un résumé du dernier bloc validé du journal.

aws qldb get-digest \ --name vehicle-registration

Sortie :

{ "Digest": "6m6BMXobbJKpMhahwVthAEsN6awgnHK62Qq5McGP1Gk=", "DigestTipAddress": { "IonText": "{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:123}" } }

Pour plus d’informations, consultez Data Verification in Amazon QLDB dans le Manuel du développeur Amazon QLDB.

  • Pour plus de détails sur l’API, consultez GetDigest dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser get-revision.

AWS CLI

Exemple 1 : pour obtenir une révision de document et une preuve à des fins de vérification à l’aide de fichiers d’entrée

L’exemple get-revision suivant demande un objet de données de révision et une preuve provenant du registre spécifié. La demande concerne une adresse de fin du résumé, un ID de document et une adresse de bloc de la révision.

aws qldb get-revision \ --name vehicle-registration \ --block-address file://myblockaddress.json \ --document-id JUJgkIcNbhS2goq8RqLuZ4 \ --digest-tip-address file://mydigesttipaddress.json

Contenu de myblockaddress.json :

{ "IonText": "{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100}" }

Contenu de mydigesttipaddress.json :

{ "IonText": "{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:123}" }

Sortie :

{ "Revision": { "IonText": "{blockAddress:{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100},hash:{{mHVex/yjHAWjFPpwhBuH2GKXmKJjK2FBa9faqoUVNtg=}},data:{VIN:\"1N4AL11D75C109151\",LicensePlateNumber:\"LEWISR261LL\",State:\"WA\",PendingPenaltyTicketAmount:90.25,ValidFromDate:2017-08-21,ValidToDate:2020-05-11,Owners:{PrimaryOwner:{PersonId:\"BFJKdXhnLRT27sXBnojNGW\"},SecondaryOwners:[{PersonId:\"CMVdR77XP8zAglmmFDGTvt\"}]},City:\"Everett\"},metadata:{id:\"JUJgkIcNbhS2goq8RqLuZ4\",version:3,txTime:2019-09-16T19:37:05.344Z,txId:\"FnQeJBAicTX0Ah32ZnVtSX\"}}" }, "Proof": { "IonText": "[{{eRSwnmAM7WWANWDd5iGOyK+T4tDXyzUq6HZ/0fgLHos=}},{{VV1rdaNuf+yJZVGlmsM6gr2T52QvBO8Lg+KgpjcnWAU=}},{{7kewBXhpdbClcZKxhVmpoMHpUGOJtWQD0iY2LPfZkYA=}},{{l3+EXs69K1+rehlqyWLkt+oHDlw4Zi9pCLW/t/mgTPM=}},{{48CXG3ehPqsxCYd34EEa8Fso0ORpWWAO8010RJKf3Do=}},{{9UnwnKSQT0i3ge1JMVa+tMIqCEDaOPTkWxmyHSn8UPQ=}},{{3nW6Vryghk+7pd6wFCtLufgPM6qXHyTNeCb1sCwcDaI=}},{{Irb5fNhBrNEQ1VPhzlnGT/ZQPadSmgfdtMYcwkNOxoI=}},{{+3CWpYG/ytf/vq9GidpzSx6JJiLXt1hMQWNnqOy3jfY=}},{{NPx6cRhwsiy5m9UEWS5JTJrZoUdO2jBOAAOmyZAT+qE=}}]" } }

Pour plus d’informations, consultez Data Verification in Amazon QLDB dans le Manuel du développeur Amazon QLDB.

Exemple 2 : pour obtenir une révision de document et une preuve à des fins de vérification à l’aide de la syntaxe raccourcie

L’exemple get-revision suivant demande un objet de données de révision et une preuve provenant du registre spécifié utilisant la syntaxe raccourcie. La demande concerne une adresse de fin du résumé, un ID de document et une adresse de bloc de la révision.

aws qldb get-revision \ --name vehicle-registration \ --block-address 'IonText="{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100}"' \ --document-id JUJgkIcNbhS2goq8RqLuZ4 \ --digest-tip-address 'IonText="{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:123}"'

Sortie :

{ "Revision": { "IonText": "{blockAddress:{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100},hash:{{mHVex/yjHAWjFPpwhBuH2GKXmKJjK2FBa9faqoUVNtg=}},data:{VIN:\"1N4AL11D75C109151\",LicensePlateNumber:\"LEWISR261LL\",State:\"WA\",PendingPenaltyTicketAmount:90.25,ValidFromDate:2017-08-21,ValidToDate:2020-05-11,Owners:{PrimaryOwner:{PersonId:\"BFJKdXhnLRT27sXBnojNGW\"},SecondaryOwners:[{PersonId:\"CMVdR77XP8zAglmmFDGTvt\"}]},City:\"Everett\"},metadata:{id:\"JUJgkIcNbhS2goq8RqLuZ4\",version:3,txTime:2019-09-16T19:37:05.344Z,txId:\"FnQeJBAicTX0Ah32ZnVtSX\"}}" }, "Proof": { "IonText": "[{{eRSwnmAM7WWANWDd5iGOyK+T4tDXyzUq6HZ/0fgLHos=}},{{VV1rdaNuf+yJZVGlmsM6gr2T52QvBO8Lg+KgpjcnWAU=}},{{7kewBXhpdbClcZKxhVmpoMHpUGOJtWQD0iY2LPfZkYA=}},{{l3+EXs69K1+rehlqyWLkt+oHDlw4Zi9pCLW/t/mgTPM=}},{{48CXG3ehPqsxCYd34EEa8Fso0ORpWWAO8010RJKf3Do=}},{{9UnwnKSQT0i3ge1JMVa+tMIqCEDaOPTkWxmyHSn8UPQ=}},{{3nW6Vryghk+7pd6wFCtLufgPM6qXHyTNeCb1sCwcDaI=}},{{Irb5fNhBrNEQ1VPhzlnGT/ZQPadSmgfdtMYcwkNOxoI=}},{{+3CWpYG/ytf/vq9GidpzSx6JJiLXt1hMQWNnqOy3jfY=}},{{NPx6cRhwsiy5m9UEWS5JTJrZoUdO2jBOAAOmyZAT+qE=}}]" } }

Pour plus d’informations, consultez Data Verification in Amazon QLDB dans le Manuel du développeur Amazon QLDB.

  • Pour plus de détails sur l’API, consultez GetRevision dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser list-journal-kinesis-streams-for-ledger.

AWS CLI

Pour répertorier les flux de journaux d’un registre

L’exemple list-journal-kinesis-streams-for-ledger suivant répertorie les flux de journaux pour le registre spécifié.

aws qldb list-journal-kinesis-streams-for-ledger \ --ledger-name myExampleLedger

Sortie :

{ "Streams": [ { "LedgerName": "myExampleLedger", "CreationTime": 1591221984.677, "InclusiveStartTime": 1590710400.0, "ExclusiveEndTime": 1590796799.0, "RoleArn": "arn:aws:iam::123456789012:role/my-kinesis-stream-role", "StreamId": "7ISCkqwe4y25YyHLzYUFAf", "Arn": "arn:aws:qldb:us-east-1:123456789012:stream/myExampleLedger/7ISCkqwe4y25YyHLzYUFAf", "Status": "ACTIVE", "KinesisConfiguration": { "StreamArn": "arn:aws:kinesis:us-east-1:123456789012:stream/stream-for-qldb", "AggregationEnabled": true }, "StreamName": "myExampleLedger-stream" } ] }

Pour plus d’informations, consultez Streaming journal data from Amazon QLDB dans le Manuel du développeur Amazon QLDB.

L’exemple de code suivant montre comment utiliser list-journal-s3-exports-for-ledger.

AWS CLI

Pour répertorier les tâches d’exportation de journaux pour un registre

L’exemple list-journal-s3-exports-for-ledger suivant répertorie les tâches d’exportation de journaux pour le registre spécifié.

aws qldb list-journal-s3-exports-for-ledger \ --name myExampleLedger

Sortie :

{ "JournalS3Exports": [ { "LedgerName": "myExampleLedger", "ExclusiveEndTime": 1568847599.0, "ExportCreationTime": 1568847801.418, "S3ExportConfiguration": { "Bucket": "amzn-s3-demo-bucket", "Prefix": "ledgerexport1/", "EncryptionConfiguration": { "ObjectEncryptionType": "SSE_S3" } }, "ExportId": "ADR2ONPKN5LINYGb4dp7yZ", "RoleArn": "arn:aws:iam::123456789012:role/qldb-s3-export", "InclusiveStartTime": 1568764800.0, "Status": "IN_PROGRESS" } ] }

Pour plus d’informations, consultez Exporting Your Journal in Amazon QLDB dans le Manuel du développeur Amazon QLDB.

L’exemple de code suivant montre comment utiliser list-journal-s3-exports.

AWS CLI

Pour répertorier les tâches d’exportation de journaux

L’exemple list-journal-s3-exports suivant répertorie les tâches d’exportation de journaux pour tous les registres associés au compte et à la région AWS actuels.

aws qldb list-journal-s3-exports

Sortie :

{ "JournalS3Exports": [ { "Status": "IN_PROGRESS", "LedgerName": "myExampleLedger", "S3ExportConfiguration": { "EncryptionConfiguration": { "ObjectEncryptionType": "SSE_S3" }, "Bucket": "amzn-s3-demo-bucket", "Prefix": "ledgerexport1/" }, "RoleArn": "arn:aws:iam::123456789012:role/my-s3-export-role", "ExportCreationTime": 1568847801.418, "ExportId": "ADR2ONPKN5LINYGb4dp7yZ", "InclusiveStartTime": 1568764800.0, "ExclusiveEndTime": 1568847599.0 }, { "Status": "COMPLETED", "LedgerName": "myExampleLedger2", "S3ExportConfiguration": { "EncryptionConfiguration": { "ObjectEncryptionType": "SSE_S3" }, "Bucket": "amzn-s3-demo-bucket", "Prefix": "ledgerexport1/" }, "RoleArn": "arn:aws:iam::123456789012:role/my-s3-export-role", "ExportCreationTime": 1568846847.638, "ExportId": "2pdvW8UQrjBAiYTMehEJDI", "InclusiveStartTime": 1568592000.0, "ExclusiveEndTime": 1568764800.0 } ] }

Pour plus d’informations, consultez Exporting Your Journal in Amazon QLDB dans le Manuel du développeur Amazon QLDB.

  • Pour plus de détails sur l’API, consultez ListJournalS3Exports dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser list-ledgers.

AWS CLI

Pour répertorier vos registres disponibles

L’exemple list-ledgers suivant répertorie tous les registres associés au compte et à la région AWS actuels.

aws qldb list-ledgers

Sortie :

{ "Ledgers": [ { "State": "ACTIVE", "CreationDateTime": 1568839243.951, "Name": "myExampleLedger" }, { "State": "ACTIVE", "CreationDateTime": 1568839543.557, "Name": "myExampleLedger2" } ] }

Pour plus d’informations, consultez Opérations de base pour les registres Amazon QLDB dans le Manuel du développeur Amazon QLDB.

  • Pour plus de détails sur l’API, consultez ListLedgers dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser list-tags-for-resource.

AWS CLI

Pour répertorier les balises attachées à un registre

L’exemple list-tags-for-resource suivant répertorie toutes les balises associées au registre spécifié.

aws qldb list-tags-for-resource \ --resource-arn arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger

Sortie :

{ "Tags": { "IsTest": "true", "Domain": "Test" } }

Pour plus d’informations, consultez Tagging Amazon QLDB Resources dans le Manuel du développeur Amazon QLDB.

  • Pour plus de détails sur l’API, consultez ListTagsForResource dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser stream-journal-to-kinesis.

AWS CLI

Exemple 1 : pour diffuser des données de journal vers Kinesis Data Streams à l’aide de fichiers d’entrée

L’exemple stream-journal-to-kinesis suivant crée un flux de données de journal dans une plage de dates et d’heures spécifiée à partir d’un registre portant le nom myExampleLedger. Le flux envoie les données à un flux de données Amazon Kinesis spécifié.

aws qldb stream-journal-to-kinesis \ --ledger-name myExampleLedger \ --inclusive-start-time 2020-05-29T00:00:00Z \ --exclusive-end-time 2020-05-29T23:59:59Z \ --role-arn arn:aws:iam::123456789012:role/my-kinesis-stream-role \ --kinesis-configuration file://my-kinesis-config.json \ --stream-name myExampleLedger-stream

Contenu de my-kinesis-config.json :

{ "StreamArn": "arn:aws:kinesis:us-east-1:123456789012:stream/stream-for-qldb", "AggregationEnabled": true }

Sortie :

{ "StreamId": "7ISCkqwe4y25YyHLzYUFAf" }

Pour plus d’informations, consultez Streaming journal data from Amazon QLDB dans le Manuel du développeur Amazon QLDB.

Exemple 2 : pour diffuser des données de journal vers Kinesis Data Streams à l’aide de la syntaxe raccourcie

L’exemple stream-journal-to-kinesis suivant crée un flux de données de journal dans une plage de dates et d’heures spécifiée à partir d’un registre portant le nom myExampleLedger. Le flux envoie les données à un flux de données Amazon Kinesis spécifié.

aws qldb stream-journal-to-kinesis \ --ledger-name myExampleLedger \ --inclusive-start-time 2020-05-29T00:00:00Z \ --exclusive-end-time 2020-05-29T23:59:59Z \ --role-arn arn:aws:iam::123456789012:role/my-kinesis-stream-role \ --stream-name myExampleLedger-stream \ --kinesis-configuration StreamArn=arn:aws:kinesis:us-east-1:123456789012:stream/stream-for-qldb,AggregationEnabled=true

Sortie :

{ "StreamId": "7ISCkqwe4y25YyHLzYUFAf" }

Pour plus d’informations, consultez Streaming journal data from Amazon QLDB dans le Manuel du développeur Amazon QLDB.

  • Pour plus de détails sur l’API, consultez StreamJournalToKinesis dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser tag-resource.

AWS CLI

Pour baliser un registre

L’exemple tag-resource suivant ajoute un ensemble de balises à un registre spécifié.

aws qldb tag-resource \ --resource-arn arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger \ --tags IsTest=true,Domain=Test

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Tagging Amazon QLDB Resources dans le Manuel du développeur Amazon QLDB.

  • Pour plus de détails sur l’API, consultez TagResource dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser untag-resource.

AWS CLI

Pour supprimer des balises d’une ressource

L’exemple untag-resource suivant supprime les balises avec les clés de balise spécifiées d’un registre spécifié.

aws qldb untag-resource \ --resource-arn arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger \ --tag-keys IsTest Domain

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Tagging Amazon QLDB Resources dans le Manuel du développeur Amazon QLDB.

  • Pour plus de détails sur l’API, consultez UntagResource dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser update-ledger-permissions-mode.

AWS CLI

Exemple 1 : pour mettre à jour le mode d’autorisations d’un registre sur STANDARD

L’exemple update-ledger-permissions-mode suivant attribue le mode d’autorisations STANDARD au registre spécifié.

aws qldb update-ledger-permissions-mode \ --name myExampleLedger \ --permissions-mode STANDARD

Sortie :

{ "Name": "myExampleLedger", "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger", "PermissionsMode": "STANDARD" }

Exemple 2 : pour mettre à jour le mode d’autorisations d’un registre sur ALLOW_ALL

L’exemple update-ledger-permissions-mode suivant attribue le mode d’autorisations ALLOW_ALL au registre spécifié.

aws qldb update-ledger-permissions-mode \ --name myExampleLedger \ --permissions-mode ALLOW_ALL

Sortie :

{ "Name": "myExampleLedger", "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger", "PermissionsMode": "ALLOW_ALL" }

Pour plus d’informations, consultez Opérations de base pour les registres Amazon QLDB dans le Manuel du développeur Amazon QLDB.

L’exemple de code suivant montre comment utiliser update-ledger.

AWS CLI

Exemple 1 : pour mettre à jour la propriété de protection contre la suppression d’un registre

L’exemple update-ledger suivant met à jour le registre spécifié pour désactiver la fonctionnalité de protection contre la suppression.

aws qldb update-ledger \ --name myExampleLedger \ --no-deletion-protection

Sortie :

{ "CreationDateTime": 1568839243.951, "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger", "DeletionProtection": false, "Name": "myExampleLedger", "State": "ACTIVE" }

Exemple 2 : pour mettre à jour la clé AWS KMS d’un registre en une clé gérée par le client

L’exemple update-ledger suivant met à jour le registre spécifié pour utiliser une clé KMS gérée par le client pour le chiffrement au repos.

aws qldb update-ledger \ --name myExampleLedger \ --kms-key arn:aws:kms:us-west-2:123456789012:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

Sortie :

{ "CreationDateTime": 1568839243.951, "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger", "DeletionProtection": false, "Name": "myExampleLedger", "State": "ACTIVE", "EncryptionDescription": { "KmsKeyArn": "arn:aws:kms:us-west-2:123456789012:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "EncryptionStatus": "UPDATING" } }

Exemple 3 : pour mettre à jour la clé AWS KMS d’un registre vers une clé détenue par AWS

L’exemple update-ledger suivant met à jour le registre spécifié pour utiliser une clé KMS détenue par AWS pour le chiffrement au repos.

aws qldb update-ledger \ --name myExampleLedger \ --kms-key AWS_OWNED_KMS_KEY

Sortie :

{ "CreationDateTime": 1568839243.951, "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger", "DeletionProtection": false, "Name": "myExampleLedger", "State": "ACTIVE", "EncryptionDescription": { "KmsKeyArn": "AWS_OWNED_KMS_KEY", "EncryptionStatus": "UPDATING" } }

Pour plus d’informations, consultez Opérations de base pour les registres Amazon QLDB dans le Manuel du développeur Amazon QLDB.

  • Pour plus de détails sur l’API, consultez UpdateLedger dans la Référence des commandes de l’AWS CLI.