Comment assurer la sécurité des fichiers de mon compartiment Amazon S3 ?

Dernière mise à jour : 03/12/2021

Je veux m'assurer que mes compartiments et objets Amazon Simple Storage Service (Amazon S3) sont sécurisés. Comment limiter les autorisations d'accès à mes ressources Amazon S3 ? Comment puis-je contrôler l'accès à ces ressources ?

Brève description

Pour vous assurer que vos fichiers et vos compartiments Amazon S3 sont sécurisés, suivez ces bonnes pratiques :

Solution

Restreindre l'accès à vos ressources S3

Par défaut, tous les compartiments S3 sont privés et seuls les utilisateurs auxquels l'accès a été explicitement accordé peuvent y accéder.

Restreignez l'accès à vos compartiments ou objets S3 en procédant comme suit :

  • L’écriture des stratégies utilisateur IAM qui spécifie que les utilisateurs peuvent accéder à des compartiments et des objets spécifiques. Les politiques IAM fournissent un moyen de gérer par programme les autorisations Amazon S3 de plusieurs utilisateurs. Pour plus d'informations sur la création et le test de stratégies utilisateur, consultez Générateur de stratégie AWS et Simulateur de stratégie IAM.
  • Écriture de stratégies de compartiment qui définissent l’accès à des compartiments et des objets spécifiques. Vous pouvez utiliser une stratégie de compartiment pour accorder des accès entre plusieurs comptes AWS, accorder des autorisations publiques ou anonymes et autoriser ou bloquer l'accès en fonction des conditions. Pour plus d'informations sur la création et le test des politiques de compartiment, consultez Générateur de politiques AWS.
    Remarque : vous pouvez utiliser une déclaration de refus dans une politique de compartiment pour restreindre l'accès à des utilisateurs IAM spécifiques. Vous pouvez restreindre l'accès même si l'accès est accordé aux utilisateurs dans une politique IAM.
  • Utilisation d'accès public Amazon S3 Block comme moyen centralisé de limiter l'accès public. Les paramètres Block Public Access remplacent les stratégies de compartiment et les autorisations d'objet. Veillez à activer Block Public Access (Bloquer l'accès public) pour tous les comptes et compartiments pour lesquels vous ne voulez pas autoriser un accès public.
  • Définissez des listes de contrôle d'accès (ACL) sur vos compartiments et objets.
    Remarque : si vous devez gérer les autorisations par programme, utilisez des stratégies IAM ou de compartiment à la place des listes ACL. Cependant, vous pouvez utiliser des listes ACL lorsque votre stratégie de compartiment dépasse la taille de fichier maximale 20 Ko. Ou bien, vous pouvez utiliser des listes ACL pour accorder l'accès pour les journaux d'accès du serveur Amazon S3 ou les journaux Amazon CloudFront.

Tenez compte des bonnes pratiques suivantes lorsque vous utilisez des listes ACL pour sécuriser vos ressources :

  • Assurez-vous de consulter es autorisations ACL qui permettent des opérations Amazon S3 sur un compartiment ou un objet. Pour la liste des autorisations ACL et les actions qu'elles autorisent, consultez Quelles autorisations est-il possible d'accorder ?
  • Soyez strict quant aux personnes qui peuvent disposer d'un accès en lecture et en écriture sur vos compartiments.
  • Réfléchissez bien à votre cas d'utilisation avant d'accorder un accès en lecture au groupe Everyone (Tout le monde), car cet accès permet à quiconque d'accéder à un compartiment ou un objet.
  • N’utilisez jamais un accès en Écriture au groupe Tous. Ce paramètre permet à tout le monde d’ajouter des objets à votre compartiment, et vous seriez facturé pour cela. Ce paramètre permet également à n'importe quel utilisateur de supprimer des objets dans le compartiment.
  • N'accordez jamais l'accès en écriture au groupe Any authenticated AWS user (N'importe quel utilisateur AWS authentifié). Ce groupe comprend toutes les personnes disposant d’un compte AWS actif, et pas seulement les utilisateurs IAM dans votre compte. Pour contrôler l’accès des utilisateurs IAM à votre compte, utilisez plutôt la stratégie IAM. Pour plus d’informations sur la façon sont Amazon S3 évalue les stratégies IAM, consultez Comment Amazon S3 autorise une demande.

En plus d’utiliser les stratégies, Block Public Access et les ACL, vous pouvez également restreindre l’accès à des opérations de spécifiques ainsi:

  • Activez la MFA Delete (Suppression MFA) qui impose aux utilisateurs de s'authentifier à l'aide d'un périphérique Authentification multi-facteur (MFA) pour pouvoir supprimer un objet ou désactiver la gestion des versions d'un compartiment.
  • Définissez MFA-protected API access (Accès API protégé par MFA) qui impose aux utilisateurs de s'authentifier avec un appareil MFA AWS pour pouvoir exécuter certaines opérations API Amazon S3.
  • Si vous partagez provisoirement un objet S3 avec un autre utilisateur, créez une URL pré enregistré pour accorder un accès limité dans le temps à l’objet. Pour plus d'informations, consultez Partage d'un objet avec d'autres utilisateurs.

Surveillez vos ressources S3

Vous pouvez activer la journalisation et contrôler vos ressources S3 de la manière suivante :

Utilisez le chiffrement pour protéger vos données

Si votre cas d’utilisation exige le chiffrement pendant une transmission, Amazon S3 prend en charge le protocole HTTPS, qui chiffre les données en transit depuis et vers Amazon S3. Tous les SDK AWS et outils AWS utilisent HTTPS par défaut.
Remarque : si vous utilisez des outils tiers pour interagir avec Amazon S3, contactez les développeurs pour vérifier que leurs outils prennent également en charge le protocole HTTPS.

Si votre cas d'utilisation exige le chiffrement des données au repos, Amazon S3 permet le chiffrement côté serveur (SSE). Les options SSE sont SSE-S3, SSE-KMS ou SSE-C. Vous pouvez spécifier les paramètres SSE au moment où vous inscrivez les objets dans le compartiment. Vous pouvez également activer le chiffrement par défaut sur votre compartiment avec SSE-S3 ou SSE-KMS.

Si votre cas d'utilisation nécessite le chiffrement côté client, consultez Protection des données en utilisant le chiffrement côté client.