Comment activer la suppression MFA pour mon compartiment Amazon S3 ?
Je souhaite activer la suppression par authentification multifactorielle (MFA) pour mon compartiment Amazon Simple Storage Service (Amazon S3) afin de protéger mes objets contre les suppressions involontaires.
Brève description
Avec Amazon S3 MFA Delete, vous pouvez empêcher les suppressions accidentelles d'objets. Si vous n'activez pas la suppression MFA, toute personne disposant de l'une des autorisations suivantes peut supprimer définitivement un objet Amazon S3 :
- Mot de passe de l'utilisateur root
- Informations d'identification d'un utilisateur ou d'un rôle AWS Identity and Access Management (IAM) suffisamment privilégié
Une fois que vous avez activé la suppression MFA, seul l'utilisateur root peut supprimer définitivement les versions des objets ou modifier la configuration de gestion des versions sur votre compartiment S3. L'utilisateur root doit être authentifié auprès d'un appareil MFA pour effectuer cette action.
Remarque : La suppression MFA n'est prise en charge que sur les compartiments dans lesquels la gestion des versions est activé. Le propriétaire du compartiment, le compte AWS qui a créé le compartiment et tous les utilisateurs IAM autorisés peuvent activer la gestion des versions. Toutefois, seul le propriétaire du compartiment du compte root peut activer la suppression MFA.
Pour activer la suppression MFA pour votre compartiment, procédez comme suit :
- Générez une clé d'accès et une clé secrète pour l'utilisateur root.
- Activez un appareil de suppression MFA pour l'utilisateur root.
- Configurez l'interface de la ligne de commande AWS (AWS CLI) avec les informations d'identification de l'utilisateur root.
- Utilisez l'API PutBucketVersioning pour activer la fonctionnalité de suppression MFA.
- Vérifiez que la suppression de l'authentification MFA fonctionne. N'oubliez pas de supprimer vos clés d'accès root.
Remarque : Si vous recevez des erreurs lors de l'exécution des commandes de l'AWS CLI, assurez-vous que vous utilisez la version la plus récente de l'AWS CLI.
Résolution
Générez une clé d'accès et une clé secrète pour l'utilisateur root
Suivez les instructions de la section Création de clés d'accès pour l'utilisateur root.
Une fois que vous avez créé ces clés, vous recevez un avertissement expliquant que vous n'avez qu'une seule possibilité de les consulter ou de les télécharger. Vous ne pourrez pas récupérer ces clés ultérieurement. Veillez donc à les enregistrer pour configurer l'interface de ligne de commande AWS.
Activer un appareil MFA pour l'utilisateur root
Si aucun appareil MFA n'est activé pour l'utilisateur root, suivez les instructions de la section Activer un appareil MFA virtuel pour l'utilisateur root de votre compte AWS (console).
Si vous possédez déjà un appareil MFA activé pour l'utilisateur root, notez l'ARN.
Configurez l'interface de ligne de commande AWS avec les informations d'identification root
Exécutez la commande de configuration de l'interface de ligne de commande AWS.
- Lorsque vous êtes invité à saisir l'ID de clé d'accès AWS (Exemple : AKIAEXAMPLEABCQWE), collez l'ID de clé d'accès de l'utilisateur root que vous avez téléchargé à l'étape 1.
- Lorsque vous êtes invité à saisir la clé d'accès secrète AWS de l'utilisateur root, collez l'ID de la clé d'accès secrète. Vous pouvez trouver ces informations dans le fichier qui contient les informations d'identification de l'utilisateur root.
- (Facultatif) Lorsque vous faites la promotion pour le nom de région par défaut, vous pouvez ignorer le message et appuyer sur Entrée.
- (Facultatif) Lorsque vous êtes invité à indiquer le format de sortie par défaut, vous pouvez ignorer et appuyer sur Entrée.
Important : Si vous avez configuré des profils nommés sur l'interface de la ligne de commande AWS, vous devez créer un autre profil pour les informations d'identification de l'utilisateur root.
Pour configurer un profil nommé, exécutez la commande suivante :
aws configure --profile root_user
Utilisez l'API PutBucketVersioning pour activer la fonctionnalité de suppression du MFA S3
Pour activer la suppression MFA, exécutez la commande put-bucket-versioning :
aws s3api put-bucket-versioning --bucket mybucketname --versioning-configuration MFADelete=Enabled,Status=Enabled --mfa "arn:aws:iam::(accountnumber):mfa/root-account-mfa-device (pass)"
Exemple :
aws s3api put-bucket-versioning --bucket mybucketname --versioning-configuration MFADelete=Enabled,Status=Enabled --mfa "arn:aws:iam::1XXXXXXX6789:mfa/root-account-mfa-device 123789"
Dans cet exemple, 123789 est l'exemple de code à six chiffres généré avec le périphérique MFA.
Si vous avez utilisé un profil nommé pour l'utilisateur root, exécutez la commande suivante :
aws s3api put-bucket-versioning --bucket mybucketname --versioning-configuration MFADelete=Enabled,Status=Enabled --mfa "arn:aws:iam::1XXXXXXX6789:mfa/root-account-mfa-device 123789" --profile root_user
Si la commande aboutit, vous n'obtenez aucun résultat. Si vous recevez un message d'erreur, assurez-vous d'avoir installé la dernière version de l'interface de ligne de commande AWS. Vérifiez également que vous utilisez l'utilisateur root et que le code MFA et l'ARN sont valides.
Vérifiez que la suppression du MFA fonctionne
Vérifiez la console Amazon S3 pour vous assurer que la gestion des versions est activé pour le compartiment.
Pour vérifier que la suppression MFA est activée, utilisez l'API GetBucketVersioning :
aws s3api get-bucket-versioning --bucket mybucketname { "Status": "Enabled", "MFADelete": "Enabled" }
Après avoir activé la suppression MFA pour le compartiment, vous devez inclure l'en-tête de demande dans toutes les suppressions d'objets à venir pour supprimer définitivement une version d'objet. La valeur de l'en-tête est la chaîne du numéro de série de votre dispositif d'authentification, un espace et le code d'authentification qui y est affiché. Pour plus d'informations, consultez la section Suppression d'un objet d'un compartiment doté d'une fonctionnalité de suppression MFA. Vous pouvez utiliser l'option --mfa de la commande delete-object pour inclure la valeur de l'en-tête.
Si vous essayez de supprimer une version d'objet dans votre compartiment sans MFA, l'erreur suivante s'affiche. Cette erreur s'affiche également lorsque vous utilisez un utilisateur IAM pour essayer de supprimer la version de l'objet :
aws s3api delete-object --bucket mybucketname --key myobjectkey --version-id 3HL4kqCxf3vjVBH40Nrjkd An error occurred (AccessDenied) when calling the DeleteObject operation: Mfa Authentication must be used for this request
Pour utiliser l'utilisateur root pour supprimer une version d'un objet dans un compartiment avec la suppression MFA activée, exécutez la commande suivante :
aws s3api delete-object --bucket mybucketnme --key myobjectkey --version-id 3HLkqCxf3vjVBH40Nrjkd --mfa "arn:aws:iam::(accountnumber):mfa/root-account-mfa-device (pass)" { "VersionId": "3HLkqCxf3vjVBH40Nrjkd" }
Remarque : Les utilisateurs ou les rôles IAM de votre compte AWS qui disposent de l'autorisation s3:DeleteObject peuvent toujours envoyer une demande de suppression d'objet réussie aux objets de votre compartiment sans spécifier d'ID de version. Dans un compartiment avec gestion des versions, cette demande crée un marqueur de suppression. La version actuelle de l'objet est conservée en tant que version précédente. La seule façon de supprimer définitivement un objet dans ces compartiments est de spécifier l'ID de version de la version de l'objet dans la demande de suppression de l'objet. Lorsque la suppression MFA est activée, seul l'utilisateur root peut supprimer les objets du compartiment en fonction de la version. L'utilisateur root doit également authentifier la demande auprès du dispositif MFA de l'utilisateur root.
Pour des raisons de sécurité, une fois que vous avez activé la suppression MFA, procédez comme suit :
- Invalidez et supprimez les informations d'identification de l'utilisateur root qui sont stockées sur votre AWS CLI. Les informations d'identification de l'interface de ligne de commande AWS sont stockées dans le dossier de configuration de votre système d'exploitation. Pour plus d'informations, consultez la section Configuration et paramètres du fichier d'informations d'identification.
- Utilisez la console de gestion AWS pour supprimer les clés d'accès de l'utilisateur root. Pour obtenir des instructions, consultez la section Suppression des clés d'accès pour l'utilisateur root.
Informations connexes
Contenus pertinents
- Réponse acceptéedemandé il y a 9 moislg...
- demandé il y a 3 moislg...
- demandé il y a un anlg...
- demandé il y a un moislg...
- AWS OFFICIELA mis à jour il y a 2 ans
- AWS OFFICIELA mis à jour il y a un an
- AWS OFFICIELA mis à jour il y a 2 ans
- AWS OFFICIELA mis à jour il y a un an