LoginSignup
0
0

More than 3 years have passed since last update.

S3 MFA Delete

Last updated at Posted at 2020-06-21

S3 MFA Deleteとは

S3でオブジェクトを削除(※)する際にMFA認証を必須とする機能。
※ ここでいう削除は特定バージョンの削除。表面的なファイル削除は可能。

  • 該当S3バケットのバージョニングが有効になっていることが前提条件
  • マネジメントコンソール上でMFA認証は行えないため、同設定を行った場合、CLIからのみしか操作ができない
  • 利用可能なMFA認証はrootアカウントのMFAデバイスのみとなる
  • MFA Deleteが有効になっている際はバージョニングの無効化不可

ユーザの誤操作でバージョンが消失することを防ぎたい場合に有効か。

やってみる

注意:rootアカウントのアクセスキー/シークレットアクセスキーは作業完了次第、消す!

1.事前準備

rootアカウントのアクセスキーID/シークレットアクセスキーをIAMから発行。またMFAデバイスのARNを控えておく。

2.設定用profileの作成

rootアカウントで操作するための設定用profileを用意する(終わったら速やかに消す)

% aws configure --profile mfa-delete
AWS Access Key ID [None]: [rootアカウントのアクセスキーID]
AWS Secret Access Key [None]: [rootアカウントのシークレットアクセスキー]
Default region name [None]: ap-northeast-1
Default output format [None]:

3.MFA Delete有効化

以下コマンドでMFA Deleteを有効化する。

% aws s3api put-bucket-versioning --bucket [バケット名] --versioning-configuration Status=Enabled,MFADelete=Enabled --mfa '[MFAデバイスのARN] [MFAデバイスのトークン]' --profile mfa-delete

4.結果確認

マネジメントコンソールからバージョンの削除を行ってもできない。

また、バージョニングの無効化ができない
image.png

5.後片付け

やめたいときはDisabledに戻す

% aws s3api put-bucket-versioning --bucket [バケット名] --versioning-configuration Status=Disabled,MFADelete=Enabled --mfa '[MFAデバイスのARN] [MFAデバイスのトークン]' --profile mfa-delete

rootアカウントのアクセスキーとprofileも忘れずに削除!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0