Vérification de l'intégrité des données dans Amazon S3 avec des sommes de contrôle supplémentaires

DIDACTICIEL

Présentation

Les organisations créent des ressources numériques et les transfèrent constamment vers Amazon S3. Ces ressources incluent des images, des fichiers binaires, des rendus de post-production et ainsi de suite, soit autant de ressources stratégiques. Lors du transfert et de l'utilisation des ressources dans les flux de travail, vous devez vérifier que les fichiers n'ont pas été modifiés par la corruption du réseau, une défaillance du disque dur ou d'autres problèmes involontaires. Aujourd'hui, le secteur utilise des algorithmes pour scanner un fichier octet par octet afin de générer une empreinte unique, connue sous le nom de somme de contrôle.
 
Les sommes de contrôle vous permettent de vérifier que les ressources ne sont pas modifiées lors de la copie. L'exécution d'une somme de contrôle consiste à utiliser un algorithme pour itérer de manière séquentielle sur chaque octet d'un fichier.

Amazon S3 propose des sommes de contrôle multiples pour accélérer la vérification de l'intégrité des données. Ces fonctionnalités calculent la somme de contrôle d'un fichier lorsqu'un client charge un objet. Les clients qui effectuent la migration de gros volumes de données vers Amazon S3 souhaitent effectuer ces vérifications d'intégrité en guise de bonne pratique de durabilité, et pour s'assurer que chaque octet est transféré sans modification. Cela permet aux clients de maintenir l'intégrité des données de bout en bout. La somme de contrôle est créée lors du chargement de l'objet, et elle est conservée pendant toute la durée de vie de l'objet. La même somme de contrôle est validée à la fin lorsque l'objet est téléchargé, afin de garantir l'intégrité des données de bout en bout. Les algorithmes supplémentaires pris en charge par Amazon S3 sont : SHA-1, SHA-256, CRC32 et CRC32-C. Grâce à ces nouvelles fonctionnalités de vérification de l'intégrité des données, vous pouvez vérifier que vos fichiers n'ont pas été modifiés lors du transfert des données ou pendant leur chargement ou leur téléchargement.

Votre projet

  • Charger un fichier vers Amazon S3
  • Comparer la somme de contrôle sur Amazon S3 et votre fichier local afin de vérifier l'intégrité des données

Conditions préalables

 Expérience en matière d'utilisation des services AWS

Débutant

 Durée

20 minutes

 Coût

 Éléments requis

Compte AWS

 Services utilisés

 Date de la dernière mise à jour

15 août 2022

Implémentation

Étape 1 : Créer un compartiment Amazon S3

  • 1.1 – Se connecter à la console Amazon S3
    • Si vous ne l'avez pas encore fait, créez un compte AWS.
    • Connectez-vous à la console de gestion AWS en utilisant les informations de votre compte.
    • Dans la barre de recherche des services de la console AWS, saisissez S3. Dans la section des résultats de recherche des services, sélectionnez S3. Vous remarquerez peut-être une option pour S3 Glacier. Cette option s'applique au service Glacier avant l'intégration avec Amazon S3. Nous recommandons aux utilisateurs Amazon S3 Glacier d'utiliser la console Amazon S3 pour une expérience utilisateur améliorée.

  • 1.2 – Créer un compartiment S3
    • Choisissez Buckets (Compartiments) dans le volet gauche du menu Amazon S3, puis le bouton Create bucket (Créer un compartiment).
  • 1.3 –
    • Saisissez un nom descriptif unique au niveau mondial pour votre compartiment. Sélectionnez la région AWS dans laquelle vous souhaitez que votre compartiment soit créé. Le paramètre par défaut Block Public Access (Blocage de l'accès public) convient pour cette charge de travail. Par conséquent, laissez cette section en l'état.
    • Vous pouvez laisser les autres options par défaut. Accédez au bas de la page et choisissez Create bucket (Créer un compartiment).

Étape 2 : Télécharger un fichier et spécifier l'algorithme de somme de contrôle

Maintenant que votre compartiment a été créé et configuré, vous êtes prêt à charger un fichier et à faire calculer la somme de contrôle par Amazon S3.
  • 2.1 – Charger un objet
    • Si vous vous êtes déconnecté de votre session de console de gestion AWS, reconnectez-vous. Accédez à la console S3 et sélectionnez l'option de menu Buckets (Compartiments). Dans la liste des compartiments disponibles, sélectionnez le nom du compartiment que vous venez de créer.
  • 2.2 –
    • Sélectionnez ensuite l'onglet Objects (Objets). Puis, dans la section Objects (Objets), choisissez le bouton Upload (Charger).
  • 2.3 – Ajouter des fichiers
    • Choisissez le bouton Add files (Ajouter des fichiers), puis sélectionnez le fichier que vous souhaitez charger depuis votre navigateur de fichiers.
  • 2.4 – Développer la section Propriétés
    • Rendez-vous au bas de la page pour accéder à la section Properties (Propriétés). Sélectionnez ensuite Properties (Propriétés) et développez la section.
  • 2.5 – Sélectionner des sommes de contrôle supplémentaires
    • Sous Additional checksums (Sommes de contrôle supplémentaires), sélectionnez l'option On (Activé), puis choisissez SHA-256.

Si la taille de votre objet est inférieure à 16 Mo et que vous avez déjà calculé la somme de contrôle SHA-256 (encodée en base64), vous pouvez l'indiquer dans la zone de saisie de la valeur précalculée. Pour utiliser cette fonctionnalité pour des objets d'une taille supérieure à 16 Mo, vous pouvez utiliser l'interface de la ligne de commande ou le kit SDK. Quand Amazon S3 reçoit l'objet, il calcule la somme de contrôle à l'aide de l'algorithme spécifié. Si les valeurs de la somme de contrôle ne correspondent pas, Amazon S3 génère une erreur et rejette le chargement, comme illustré sur la capture d'écran.

  • 2.6 – Télécharger
    • Accédez au bas de la page et choisissez le bouton Upload (Charger).
  • 2.7 –
    • Une fois le chargement terminé, choisissez le bouton Close (Fermer).

Étape 3 : Vérifier la somme de contrôle

  • 3.1 –
    • Choisissez le fichier chargé en sélectionnant le nom. Vous serez redirigé vers la page Properties (Propriétés).
  • 3.2 – Identifier la valeur de la somme de contrôle
    • Naviguez vers le bas de la page des propriétés jusqu'à la section Additional checksums (Sommes de contrôle supplémentaires).
    • Cette section affiche la somme de contrôle encodée en base64 calculée et vérifiée par Amazon S3 lors du chargement.
  • 3.3 – Comparer
    • Pour comparer l'objet sur votre ordinateur local, ouvrez une fenêtre de terminal et accédez à l'emplacement de votre fichier.
    • Utilisez un utilitaire tel que shasum pour calculer le fichier. La commande suivante effectue un calcul en SHA-256 sur le même fichier et convertit la sortie hexadécimale en base64 : shasum -a 256 image.jpg | cut -f1 -d\ | xxd -r -p | base64
    • Par comparaison, cette valeur doit correspondre à celle de la console Amazon S3.

Étape 4 : Nettoyer les ressources

Les étapes suivantes consistent à nettoyer les ressources que vous avez créées dans le cadre de ce didacticiel. Il est recommandé de supprimer les ressources que vous n'utilisez plus, afin de ne pas encourir de frais imprévus.
  • 4.1 – Supprimer l'objet de test
    • Si vous vous êtes déconnecté de votre session de console de gestion AWS, reconnectez-vous. Accédez à la console S3 et sélectionnez l'option de menu Buckets (Compartiments). Tout d'abord, vous devez supprimer l'objet de test dans votre compartiment de test. Sélectionnez le nom du compartiment que vous avez utilisé dans le cadre de ce didacticiel. Cochez la case située à gauche du nom de votre objet de test, puis choisissez le bouton Delete (Supprimer). Sur la page Delete objects (Supprimer des objets), vérifiez que vous avez sélectionné le bon objet à supprimer, puis saisissez Permanently delete (Supprimer définitivement) dans la case de confirmation Permanently delete objects (Supprimer définitivement des objets). Puis, choisissez le bouton Delete object (Supprimer un objet) pour continuer. Ensuite, une bannière vous indique si la suppression a réussi.
  • 4.2 – Supprimer le compartiment de test
    • Pour finir, vous devez supprimer le compartiment de test que vous avez créé. Retournez à la liste des compartiments de votre compte. Sélectionnez le bouton radio à gauche du compartiment que vous avez créé dans le cadre de ce didacticiel, puis choisissez le bouton Delete (Supprimer). Examinez le message d'avertissement. Si vous souhaitez poursuivre la suppression de ce compartiment, saisissez-en le nom dans la case de confirmation Delete bucket (Supprimer un compartiment), puis sélectionnez Delete bucket (Supprimer un compartiment).

Conclusion

Félicitations ! Vous avez appris à charger un fichier sur Amazon S3, à calculer des sommes de contrôle supplémentaires et à comparer la somme de contrôle sur Amazon S3 et votre fichier local afin de vérifier l'intégrité des données.

Cette page vous a-t-elle été utile ?

Étapes suivantes

Pour en savoir plus sur les sommes de contrôle, consultez les ressources suivantes.

Explorer des sommes de contrôle supplémentaires

Pour en savoir plus sur les sommes de contrôle supplémentaires dans Amazon S3, consultez le blog de lancement ainsi que la documentation sur la vérification de l'intégrité des objets.

Découvrir les sommes de contrôle de suivi

Amazon S3 a également introduit les sommes de contrôle de suivi, une nouvelle fonctionnalité d'AWS SDK. Avec les sommes de contrôle de suivi, le kit SDK calcule la somme de contrôle en une seule opération lors du chargement de votre fichier sur Amazon S3. Pour en savoir plus, consultez l'article de blog Building scalable checksums.