Удаление MFA в первую очередь предназначено для предотвращения случайной потери данных из-за удаления или перезаписи.
Для удаления MFA требуется корзина с версиями, потому что, если корзина не имеет версий, вы можете навсегда «удалить» любой объект (т. е. вы можете стереть его содержимое) просто перезаписав объект, что делается путем создания нового объекта с тем же ключом - так что требование MFA для удаления в этом случае не будет sh реальным цель, поскольку было бы тривиально переопределить или обойти это, случайно или специально.
При активном удалении MFA (и активном версионировании, как требуется), вы все равно можете «перезаписать» объект, создав новый объект с тем же ключом, но это на самом деле не перезаписать. Данные не теряются, потому что предыдущая текущая версия объекта просто становится предыдущей версией объекта. Его содержимое сохраняется в корзине, и изменение «перезаписи» можно отменить, удалив вновь созданную версию (конечно, с MFA), которая автоматически переводит самую последнюю предыдущую версию объекта обратно в текущую версию объект.
Но управление версиями может быть приостановлено в корзине, что вернет нас к той же проблеме, и поэтому для удаления MFA также требуется использование MFA, если вы пытаетесь приостановить управление версиями в корзине.
В зависимости от того, что вы пытаетесь выполнить sh, требование MFA для всех вызовов API может быть более подходящим, чем удаление MFA:
Примечание
Удаление MFA и доступ через API, защищенный MFA, - это функции, предназначенные для защиты различных сценариев ios. Вы настраиваете удаление MFA для корзины, чтобы гарантировать, что данные в вашей корзине не могут быть случайно удалены. Защищенный MFA доступ к API используется для обеспечения другого фактора аутентификации (кода MFA) при доступе к конфиденциальным ресурсам Amazon S3. Вы можете требовать, чтобы любые операции с этими ресурсами Amazon S3 выполнялись с временными учетными данными, созданными с помощью MFA.
https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html#MultiFactorAuthenticationDelete