

# MFA 削除の設定
<a name="MultiFactorAuthenticationDelete"></a>

Amazon S3 バケットで S3 バージョニングを行うときに、*MFA (多要素認証) Delete* が有効になるようにバケットを設定すれば、セキュリティをさらに強化できます。この設定を行うと、バケット所有者は、特定のバージョンを削除したりバケットのバージョニング状態を変更したりするリクエストに、2 つの認証形式を含めることが必要になります。

MFA Delete では、以下のいずれかの操作で追加の認証が必要になります。
+ バケットのバージョニング状態を変更する
+ オブジェクトバージョンを完全に削除する

MFA Delete では、2 つの認証形式の組み合わせが必要になります。
+ セキュリティ認証情報
+ 有効なシリアル番号、スペース、および承認済みの認証デバイスに表示される 6 桁のコードを連結した文字

MFA Delete は、このようにして、認証情報に不正なアクセスがあった場合などにセキュリティを強化します。MFA 削除は、削除アクションを開始したユーザーに MFA コードを使って MFA デバイスの物理的所有を証明するように要求したり、削除アクションに摩擦とセキュリティのレイヤーをさらに追加したりすることで、バケットの偶発的な削除を防ぎます。

MFA 削除が有効になっているバケットを特定するには、Amazon S3 ストレージレンズメトリクスを使用できます。S3 ストレージレンズは、オブジェクトストレージの使用状況とアクティビティを組織全体で可視化するために使用できるクラウドストレージの分析機能です。詳細については、「[S3 Storage Lens を使用したストレージのアクティビティと使用状況の評価](https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens?icmpid=docs_s3_user_guide_MultiFactorAuthenticationDelete.html)」を参照してください。メトリクスの完全なリストについては、「[S3 ストレージレンズメトリクスに関する用語集](https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_metrics_glossary.html?icmpid=docs_s3_user_guide_MultiFactorAuthenticationDelete.html)」を参照してください。

バケット所有者、バケットを作成した AWS アカウント (ルートアカウント)、およびすべての承認されたユーザーは、バージョニングを有効にすることができます。ただし、MFA Delete を有効化できるのは、バケット所有者 (ルートアカウント) のみです。詳細については、AWS セキュリティブログの「[MFA を使用した AWS へのアクセスの保護](https://aws.amazon.com/blogs/security/securing-access-to-aws-using-mfa-part-3/)」を参照してください。

**注記**  
バージョニングで MFA Delete を使用するには、`MFA Delete` を有効にします。ただし、AWS マネジメントコンソール を使用して `MFA Delete` を有効にすることはできません。AWS Command Line Interface (AWS CLI) または API を使用する必要があります。  
バージョニングで MFA Delete を使用する例については、トピック [バケットでのバージョニングの有効化](manage-versioning-examples.md) の具体例のセクションを参照してください。  
ライフサイクル設定で MFA 削除を使用することはできません。ライフサイクル設定と、それらが他の設定とやり取りする方法の詳細については、「[S3 ライフサイクルは他のバケット設定とどのように相互作用するか](lifecycle-and-other-bucket-config.md)」を参照してください。

MFA 削除を有効または無効にするには、バケットのバージョニングの設定に使用するものと同じ API を使用します。Amazon S3 では、バケットのバージョニング状態を保存しているものを同じ*バージョニング*サブリソースに、MFA Delete の設定が保存されます。

```
<VersioningConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/"> 
  <Status>VersioningState</Status>
  <MfaDelete>MfaDeleteState</MfaDelete>  
</VersioningConfiguration>
```

MFA Delete を使用するときは、ハードウェアデバイスまたは仮想 MFA デバイスを使用して認証コードを生成します。次の例は、生成された認証コードがハードウェアデバイスに表示されている様子を示しています。

![\[ハードウェアデバイスに表示される、生成された認証コードの例\]](http://docs.aws.amazon.com/ja_jp/AmazonS3/latest/userguide/images/MFADevice.png)


MFA Delete と MFA で保護された API アクセスは、異なるシナリオで保護を行うことを目的とした機能です。バケットに MFA Delete を設定することで、バケット内のデータが誤って削除されることのないようにします。MFA で保護された API アクセスは、Amazon S3 の機密リソースにアクセスする場合に、別の認証要素（MFA コード）を適用するために使用します。これらの Amazon S3 リソースに対するすべてのオペレーションが、MFA を使用した一時証明書によって実行されるように要求できます。例については、「[MFA が必要](example-bucket-policies.md#example-bucket-policies-MFA)」を参照してください。

認証デバイスの購入およびアクティベートの方法の詳細については、「[多要素認証](https://aws.amazon.com/iam/details/mfa/)」を参照してください。

## S3 バージョニングを有効にして MFA 削除を設定するには
<a name="enable-versioning-mfa-delete"></a>

### の使用AWS CLI
<a name="enable-versioning-mfa-delete-cli"></a>

シリアル番号は、MFA デバイスを一意に識別する番号です。物理 MFA デバイスの場合、これはデバイスに提供される一意のシリアル番号です。仮想 MFA デバイスの場合、シリアル番号はデバイス ARN です。次のコマンドを使用するには、*ユーザー入力用プレースホルダー*をユーザー自身の情報に置き換えます。

次の例では、物理的な MFA デバイスのバケットで S3 バージョニングと多要素認証 (MFA) 削除を有効にします。物理的な MFA デバイスの場合、`--mfa` パラメータで、MFA デバイスのシリアル番号、スペース文字、および認証デバイスに表示される値の連結を渡します。

```
aws s3api put-bucket-versioning --bucket amzn-s3-demo-bucket1 --versioning-configuration Status=Enabled,MFADelete=Enabled --mfa "SerialNumber 123456"
```

次の例では、仮想 MFA デバイスのバケットで S3 バージョニングと多要素認証 (MFA) 削除を有効にします。仮想 MFA デバイスの場合、`--mfa` パラメータで、MFA デバイスの ARN、スペース文字、および認証デバイスに表示される値の連結を渡します。

```
aws s3api put-bucket-versioning --bucket amzn-s3-demo-bucket1 --versioning-configuration Status=Enabled,MFADelete=Enabled --mfa "arn:aws:iam::account-id:mfa/root-account-mfa-device 123789"
```

詳細については、AWS rePost の記事、「[Amazon S3 バケットの MFA 削除を有効にするにはどうすればよいですか?](https://repost.aws/knowledge-center/s3-bucket-mfa-delete)」を参照してください。

### REST API の使用
<a name="enable-versioning-mfa-delete-rest-api"></a>

Amazon S3 REST API を使用したルーティングルールの設定の詳細については、[Amazon Simple Storage Service API リファレンス](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketVersioning.html)の「*PutBucketVersioning*」を参照してください。