

# マルチリージョンアクセスポイントを使用したリクエスト
<a name="MultiRegionAccessPointRequests"></a>

他のリソースと同様に、Amazon S3 マルチリージョンアクセスポイントには、Amazon リソースネーム (ARN) があります。これらの ARN を使用することで、AWS Command Line Interface (AWS CLI)、AWS SDK、または Amazon S3 API を使用してマルチリージョンのアクセスポイントにリクエストを指示できます。これらの ARN を使用して、アクセスコントロールポリシーでマルチリージョンアクセスポイントを識別することもできます。マルチリージョンアクセスポイント ARN にマルチリージョンアクセスポイントの名前が含まれたり、公開されたりすることはありません。ARN の詳細については、「*AWS 全般のリファレンス*」の「[Amazon リソースネーム (ARN)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)」を参照してください。

**注記**  
マルチリージョンアクセスポイントのエイリアスと ARN は互換的に使用できません。

マルチリージョンアクセスポイント ARN は、以下の形式を使用します。

 `arn:aws:s3::account-id:accesspoint/MultiRegionAccessPoint_alias`

以下に、マルチリージョンアクセスポイント ARN の例をいくつか示します。
+ `arn:aws:s3::123456789012:accesspoint/mfzwi23gnjvgw.mrap` は、AWS アカウント `123456789012` が所有する、エイリアス `mfzwi23gnjvgw.mrap` を持つマルチリージョンアクセスポイントを表します。
+ `arn:aws:s3::123456789012:accesspoint/*` は、アカウント `123456789012` 内のすべてのマルチリージョンアクセスポイントを表します。この ARN は、アカウント `123456789012` のすべてのマルチリージョンアクセスポイントと一致しますが、ARN に AWS リージョン が含まれていないため、リージョンの Amazon S3 Access Points とは一致しません。これとは対照的に、ARN `arn:aws:s3:us-west-2:123456789012:accesspoint/*` は、リージョン `us-west-2` にあるアカウント `123456789012` のすべてのリージョンの Amazon S3 Access Points とは一致しますが、マルチリージョンアクセスポイントとは一致しません。

マルチリージョンアクセスポイントを介してアクセスされるオブジェクトの ARN は、以下の形式を使用します。

 `arn:aws:s3::account_id:accesspoint/MultiRegionAccessPoint_alias//key`

マルチリージョンアクセスポイント ARN と同様に、マルチリージョンアクセスポイントを介してアクセスされるオブジェクトの ARN には AWS リージョン は含まれません。次に例を示します。
+ `arn:aws:s3::123456789012:accesspoint/mfzwi23gnjvgw.mrap//-01` は、アカウント `123456789012` が所有する、エイリアス `mfzwi23gnjvgw.mrap` を持つマルチリージョンアクセスポイントを通じてアクセスされる、`-01` を表します。
+ `arn:aws:s3::123456789012:accesspoint/mfzwi23gnjvgw.mrap//*` は、アカウント `123456789012` で、エイリアス `mfzwi23gnjvgw.mrap` を持ち、マルチリージョンアクセスポイントを通じてアクセスできるすべてのオブジェクトを表します。
+ `arn:aws:s3::123456789012:accesspoint/mfzwi23gnjvgw.mrap//-01/finance/*` は、アカウント `123456789012` で、エイリアス `mfzwi23gnjvgw.mrap` を持ち、マルチリージョンアクセスポイントの `-01/finance/` でアクセスできるすべてのオブジェクトを表します。

## マルチリージョンアクセスポイントのホスト名
<a name="MultiRegionAccessPointHostnames"></a>

マルチリージョンアクセスポイントのホスト名を使用して、マルチリージョンアクセスポイントを介して Amazon S3 のデータにアクセスできます。パブリックインターネットからこのホスト名にリクエストを送信できます。マルチリージョンアクセスポイントに 1 つ以上のインターネットゲートウェイを設定している場合は、仮想プライベートクラウド (VPC) からこのホスト名にリクエストを送信することもできます。マルチリージョンアクセスポイントで使用する VPC インターフェイスエンドポイントの作成の詳細については、「[AWS PrivateLink で使用するマルチリージョンアクセスポイントの設定](MultiRegionAccessPointsPrivateLink.md)」を参照してください。

また、VPC エンドポイントを使用して VPC からマルチリージョンアクセスポイント経由でリクエストを行うには、AWS PrivateLink を使用することができます。AWS PrivateLink を使用してマルチリージョンアクセスポイントへのリクエストを行う場合、`region.vpce.amazonaws.com` で終わるエンドポイント固有のリージョンのドメインネームシステム (DNS) を直接使用することはできません。このホスト名には証明書が関連付けられていないため、直接使用することはできません。ただし、引き続き、VPC エンドポイントのパブリックドメインネームシステム (DNS) 名を `CNAME` または `ALIAS` ターゲットとして使用することはできます。あるいは、エンドポイントでプライベートドメインネームシステム (DNS) を有効にし、このセクションで説明されているように、標準のマルチリージョンアクセスポイント `MultiRegionAccessPoint_alias.accesspoint.s3-global.amazonaws.com` ドメインネームシステム (DNS) 名を使用することもできます。

マルチリージョンアクセスポイント経由で API for Amazon S3 データオペレーション (例えば `GetObject`) にリクエストする場合、リクエストのホスト名は次のようになります。

`MultiRegionAccessPoint_alias.accesspoint.s3-global.amazonaws.com` 

例えば、エイリアス `mfzwi23gnjvgw.mrap` を持つマルチリージョンアクセスポイントを介して `GetObject` リクエストを行うには、ホスト名 `mfzwi23gnjvgw.mrap.accesspoint.s3-global.amazonaws.com` に対してクエストを行います。ホスト名の `s3-global` 部分は、このホスト名が特定のリージョン用ではないことを示しています。

マルチリージョンアクセスポイントを使用したリクエストの作成は、単一リージョンアクセスポイントを使用したリクエストの作成と似ています。ただし、以下の違いを考慮する必要があります。
+  マルチリージョンアクセスポイント ARN に AWS リージョン は含まれません。フォーマット `arn:aws:s3::account-id:accesspoint/MultiRegionAccessPoint_alias` に従います。
+  API オペレーションを介して行われたリクエスト (これらのリクエストに ARN を使用する必要はありません) では、マルチリージョンアクセスポイントは異なるエンドポイントスキームを使用します。スキームは `MultiRegionAccessPoint_alias.accesspoint.s3-global.amazonaws.com` です。例えば、`mfzwi23gnjvgw.mrap.accesspoint.s3-global.amazonaws.com` です。単一リージョンアクセスポイントとの相違点に注意してください。
  + マルチリージョンアクセスポイントのホスト名は、マルチリージョンアクセスポイント名ではなく、エイリアスを使用します。
  + マルチリージョンアクセスポイントのホスト名には、所有者の AWS アカウント ID は含まれません。
  + マルチリージョンアクセスポイントのホスト名には、AWS リージョン は含まれません。
  + マルチリージョンアクセスポイントのホスト名には、`s3.amazonaws.com` の代わりに `s3-global.amazonaws.com` が含まれます。
+ マルチリージョンアクセスポイントのリクエストは、署名バージョン 4A (SigV4A) を使用して署名する必要があります。AWS SDK を使用時する場合、SDK は Sigv4 を SigV4A に自動的に変換します。そのため、ご使用の [AWS SDK ](https://docs.aws.amazon.com/sdkref/latest/guide/feature-s3-mrap.html) が、グローバル AWS リージョン リクエストの署名に使用される署名実装として SigV4AA をサポートしていることを確認してください。SigV4A の詳細については、「*AWS 全般のリファレンス*」の「[AWS API リクエストの署名](https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html)」を参照してください。

## マルチリージョンアクセスポイントと Amazon S3 Transfer Acceleration
<a name="MultiRegionAccessPointsAndTransferAcceleration"></a>

Amazon S3 Transfer Acceleration は、バケットへの高速データ転送を実現する機能です。Transfer Acceleration は個々のバケットレベルで設定されます。Transfer Acceleration の詳細については、「[Amazon S3 Transfer Acceleration を使用した高速かつ安全なファイル転送の設定](transfer-acceleration.md)」を参照してください。

マルチリージョンアクセスポイントは、Transfer Acceleration と同様の高速転送メカニズムを使用して、大きなオブジェクトを AWS ネットワークで送信します。このため、マルチリージョンアクセスポイント経由でリクエストを送信する場合、Transfer Acceleration を使用する必要はありません。この転送パフォーマンスの向上は、マルチリージョンアクセスポイントに自動的に組み込まれます。

**Topics**
+ [マルチリージョンアクセスポイントのホスト名](#MultiRegionAccessPointHostnames)
+ [マルチリージョンアクセスポイントと Amazon S3 Transfer Acceleration](#MultiRegionAccessPointsAndTransferAcceleration)
+ [アクセス許可](MultiRegionAccessPointPermissions.md)
+ [マルチリージョンアクセスポイントの制約および制限事項](MultiRegionAccessPointRestrictions.md)
+ [マルチリージョンアクセスポイントリクエストのルーティング](MultiRegionAccessPointRequestRouting.md)
+ [Amazon S3 マルチリージョンアクセスポイントフェイルオーバーコントロール](MrapFailover.md)
+ [マルチリージョンアクセスポイントで使用するためのレプリケーションの設定](MultiRegionAccessPointBucketReplication.md)
+ [マルチリージョンアクセスポイントでのサポートされている API オペレーションの使用](MrapOperations.md)
+ [マルチリージョンアクセスポイントから基盤となるリソースへのリクエストのモニタリングとログ記録](MultiRegionAccessPointMonitoring.md)

# アクセス許可
<a name="MultiRegionAccessPointPermissions"></a>

Amazon S3 マルチリージョンアクセスポイントは、複数の AWS リージョン の Amazon S3 バケットへのデータアクセスを簡素化します。マルチリージョンアクセスポイントは、Amazon S3 のデータアクセスオブジェクトのオペレーション (`GetObject` や `PutObject` など) を実行するために使用できる名前付きのグローバルエンドポイントです。各マルチリージョンアクセスポイントは、グローバルエンドポイントを介したすべてのリクエストについて、個別のアクセス許可とネットワークコントロールを設定できます。

各マルチリージョンアクセスポイントは、基になるバケットにアタッチされたバケットポリシーと連動して機能するカスタマイズされたアクセスポリシーを適用することもできます。クロスアカウントリクエストが成功するには、次のポリシーでオペレーションが許可されている必要があります。
+ マルチリージョンアクセスポイントポリシー
+ 基になる AWS Identity and Access Management (IAM) ポリシー
+ 基になるバケットポリシー (リクエストのルーティング先)

**注記**  
同じアカウントリクエストの場合、適切なアクセス許可を付与する基盤となる IAM ポリシーのみが必要です。

マルチリージョンアクセスポイントポリシーは、特定の IAM ユーザーまたはグループからのリクエストのみを受け入れるように設定できます。これを行う方法の例については、「[マルチリージョンアクセスポイントポリシーの例](#MultiRegionAccessPointPolicyExamples)」の例 2 を参照してください。Virtual Private Cloud (VPC) からのリクエストだけを受け入れるようにマルチリージョンアクセスポイントポリシーを設定することで、プライベートネットワークへの Amazon S3 データアクセスを制限できます。

例えば、次のようになります。`AppDataReader` というユーザーを AWS アカウントで使用して、マルチリージョンアクセスポイントを介して `GetObject` リクエストを行うとします。リクエストが拒否されないようにするために、マルチリージョンアクセスポイントと、マルチリージョンアクセスポイントの基盤となる各バケットによって `AppDataReader` ユーザーに `s3:GetObject` 許可を付与する必要があります。`AppDataReader` は、この許可を付与しないバケットからデータを取得できません。

**重要**  
バケットのアクセスコントロールをマルチリージョンアクセスポイントポリシーに委任しても、バケット名または Amazon リソースネーム (ARN) を使用してバケットに直接アクセスする場合のバケットの動作は変わりません。バケットに対して直接行われるすべてのオペレーションは、以前と同じように動作します。マルチリージョンアクセスポイントポリシーに含めた制限は、そのマルチリージョンアクセスポイントを介したリクエストにのみ適用されます。

## マルチリージョンアクセスポイントへのパブリックアクセスの管理
<a name="MultiRegionAccessPointPublicAccess"></a>

マルチリージョンアクセスポイントは、 マルチリージョンアクセスポイントごとに独立したブロックパブリックアクセス設定をサポートしています。 マルチリージョンアクセスポイントを作成するときに、その マルチリージョンアクセスポイントに適用するブロックパブリックアクセス設定を指定できます。

**注記**  
マルチリージョンアクセスポイントの個別のパブリックアクセスをブロックする設定が無効になっていても、(自分のアカウントの) **[このアカウントのブロックパブリックアクセス設定]** または **[外部バケットのブロックパブリック設定]** は引き続き適用されます。

マルチリージョンアクセスポイントを介して行われたリクエストについて、Amazon S3 は以下に対するブロックパブリックアクセス設定を評価します。
+ マルチリージョンアクセスポイント
+ 基になるバケット (外部バケットを含む)
+ マルチリージョンアクセスポイントを所有するアカウント
+ 基になるバケットを所有するアカウント (外部アカウントを含む)

これらの設定のいずれかで、リクエストをブロックする必要があることが示されると、Amazon S3 はリクエストを拒否します。Amazon S3 ブロックパブリックアクセス機能の詳細については、「[Amazon S3 ストレージへのパブリックアクセスのブロック](access-control-block-public-access.md)」を参照してください。

**重要**  
デフォルトでは、マルチリージョンアクセスポイントに対してすべてのブロックパブリックアクセス設定が有効になります。 マルチリージョンアクセスポイントに適用したくない設定がある場合は、明示的に無効にする必要があります。  
マルチリージョンアクセスポイントを作成した後にブロックパブリックアクセス設定を変更することはできません。

## マルチリージョンアクセスポイントのパブリックアクセスブロック設定の表示
<a name="viewing-bpa-mrap-settings"></a>

**マルチリージョンアクセスポイントのパブリックアクセスブロック設定を表示するには**

1. 

   AWS マネジメントコンソール にサインインし、Amazon S3 コンソール [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/) を開きます。

1. ナビゲーションペインで、**[Multi-Region Access Points]** (マルチリージョンアクセスポイント) を選択します。

1. 確認するマルチリージョンアクセスポイントの名前を選択します。

1. [**アクセス許可**] タブを選択します。

1. **[Block Public Access settings for this Multi-Region Access Point]** (このマルチリージョンアクセスポイントのパブリックアクセス設定をブロック) で、マルチリージョンアクセスポイントのブロックパブリックアクセス設定を確認します。
**注記**  
マルチリージョンアクセスポイントを作成した後、ブロックパブリックアクセス設定を編集することはできません。したがって、パブリックアクセスをブロックする場合は、マルチリージョンアクセスポイントを作成する前に、パブリックアクセスがなくてもアプリケーションが正しく動作することを確認してください。

## マルチリージョンアクセスポイントポリシーの使用
<a name="use-mrap-policy"></a>

次のマルチリージョンアクセスポイントポリシーの例では、IAM ユーザーに対して、マルチリージョンアクセスポイントのファイルを一覧表示およびダウンロードするアクセス権限を付与しています。このポリシーの例を実行するには、`user input placeholders` をユーザー自身の情報に置き換えます。

------
#### [ JSON ]

****  

```
 {
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Effect":"Allow",
         "Principal":{
            "AWS":"arn:aws:iam::123456789012:user/JohnDoe" 
         },
         "Action":[
            "s3:ListBucket",
            "s3:GetObject"
         ],
         "Resource":[
            "arn:aws:s3::111122223333:accesspoint/MultiRegionAccessPoint_alias",
            "arn:aws:s3::111122223333:accesspoint/MultiRegionAccessPoint_alias/object/*"
         ]
      }
   ]
}
```

------

AWS Command Line Interface (AWS CLI) を使用して、マルチリージョンアクセスポイントポリシーを指定されたマルチリージョンアクセスポイントに関連付けるには、次の `put-multi-region-access-point-policy` コマンドを使用します。このコマンド例を実行するには、`user input placeholders` をユーザー自身の情報に置き換えます。各マルチリージョンアクセスポイントに設定できるポリシーは 1 つだけなので、`put-multi-region-access-point-policy` アクションをリクエストすると、指定されたマルチリージョンアクセスポイントに関連付けられている既存のポリシーがすべて置き換えられます。

------
#### [ AWS CLI ]

```
aws s3control put-multi-region-access-point-policy
--account-id 111122223333
--details { "Name": "amzn-s3-demo-bucket-MultiRegionAccessPoint", "Policy": "{ \"Version\": \"2012-10-17\", \"Statement\": { \"Effect\": \"Allow\", \"Principal\": { \"AWS\": \"arn:aws:iam::111122223333:root\" }, \"Action\": [\"s3:ListBucket\", \"s3:GetObject\"], \"Resource\": [ \"arn:aws:s3::111122223333:accesspoint/MultiRegionAccessPoint_alias", \"arn:aws:s3::111122223333:accesspoint/MultiRegionAccessPoint_alias/object/*\" ] } }" }
```

------

前のオペレーションの結果をクエリするには、次のコマンドを使用します。

------
#### [ AWS CLI ]

```
aws s3control describe-multi-region-access-point-operation
--account-id 111122223333
--request-token-arn requestArn
```

------

マルチリージョンアクセスポイントポリシーを取得するには、次のコマンドを使用します。

------
#### [ AWS CLI ]

```
aws s3control get-multi-region-access-point-policy
--account-id 111122223333
--name=amzn-s3-demo-bucket-MultiRegionAccessPoint
```

------

## マルチリージョンアクセスポイントポリシーの編集
<a name="editing-mrap-policy"></a>

マルチリージョンアクセスポイントポリシー (JSON で記述) は、このマルチリージョンアクセスポイントで使用する Amazon S3 バケットへのストレージアクセスを提供します。特定のプリンシパルがマルチリージョンアクセスポイントでさまざまなアクションを実行することを許可または拒否できます。リクエストがマルチリージョンアクセスポイントを介してバケットにルーティングされると、マルチリージョンアクセスポイントとバケットの両方のアクセスポリシーが適用されます。より制限の厳しいアクセスポリシーが常に優先されます。

**注記**  
バケットに他のアカウントが所有するオブジェクトが含まれている場合、マルチリージョンアクセスポイントのポリシーは他の AWS アカウント が所有するオブジェクトには適用されません。

マルチリージョンアクセスポイントポリシーを適用した後、ポリシーを削除することはできません。ポリシーを編集するか、既存のポリシーを上書きする新しいポリシーを作成することができます。

**マルチリージョンアクセスポイントポリシーを編集するには**



1. AWS マネジメントコンソール にサインインし、Amazon S3 コンソール [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/) を開きます。

1. ナビゲーションペインで、**[Multi-Region Access Points]** (マルチリージョンアクセスポイント) を選択します。

1. ポリシーを編集するマルチリージョンアクセスポイントの名前を選択します。

1. **[アクセス許可]** タブを選択します。

1. **[Multi-Region Access Point policy]** (マルチリージョンアクセスポイントポリシー) セクションまでスクロールします。**[Edit]** (編集) を選択し、ポリシーを更新します。

1. **[Edit Multi-Region Access Point policy]** (マルチリージョンアクセスポイントポリシーの編集) ページが表示されます。ポリシーをテキストフィールドに直接入力するか、**[Add statement]** (ステートメントの追加) を選択してドロップダウンリストからポリシーの要素を選択できます。
**注記**  
コンソールに、マルチリージョンアクセスポイントの Amazon リソースネーム (ARN) が自動的に表示されます。これをポリシーで使用できます。マルチリージョンアクセスポイントポリシーの例については、「[マルチリージョンアクセスポイントポリシーの例](#MultiRegionAccessPointPolicyExamples)」を参照してください。

## マルチリージョンアクセスポイントポリシーの例
<a name="MultiRegionAccessPointPolicyExamples"></a>

Amazon S3 マルチリージョンアクセスポイントは、AWS Identity and Access Management (IAM) リソースポリシーをサポートします。これらのポリシーを使用して、リソース、ユーザー、その他の条件別にマルチリージョンアクセスポイントの使用を制御することができます。アプリケーションやユーザーがマルチリージョンアクセスポイントを介してオブジェクトにアクセスできるようにするには、マルチリージョンアクセスポイントと基になるバケットの両方が同じアクセスを許可している必要があります。

マルチリージョンアクセスポイントと基になるバケットの両方に同じアクセスを許可するには、次のいずれかを実行します。
+ **(推奨)** Amazon S3 マルチリージョンアクセスポイントを使用する際のアクセスコントロールを簡素化するには、Amazon S3 バケットのアクセスコントロールをマルチリージョンアクセスポイントに委任します。これを行う方法の例については、このセクションの例 1 を参照してください。
+ マルチリージョンアクセスポイントポリシーに含まれているものと同じアクセス許可を、基になるバケットのポリシーに追加します。

**重要**  
バケットのアクセスコントロールをマルチリージョンアクセスポイントポリシーに委任しても、バケット名または Amazon リソースネーム (ARN) を使用してバケットに直接アクセスする場合のバケットの動作は変わりません。バケットに対して直接行われるすべてのオペレーションは、以前と同じように動作します。マルチリージョンアクセスポイントポリシーに含めた制限は、そのマルチリージョンアクセスポイントを介したリクエストにのみ適用されます。

**Example 1 - (同じアカウントまたはクロスアカウントの) バケットポリシーで特定のマルチリージョンアクセスポイントへのアクセスを委任する**  
以下のバケットポリシーの例では、特定のマルチリージョンアクセスポイントにフルバケットアクセスを付与しています。したがって、このバケットへのすべてのアクセスは、そのマルチリージョンアクセスポイントに添付されているポリシーによってコントロールされます。バケットへの直接アクセスを必要としないすべてのユースケースでは、この方法でバケットを設定することをお勧めします。このバケットポリシー構造は、同じアカウントまたは別のアカウントのマルチリージョンアクセスポイントに使用できます。    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement" : [
    {
        "Effect": "Allow",
        "Principal" : { "AWS": "*" },
        "Action" : "*",
        "Resource" : [ "arn:aws:s3:::amzn-s3-demo-bucket", "arn:aws:s3:::amzn-s3-demo-bucket/*"],
        "Condition": {
            "StringEquals" : { "s3:DataAccessPointArn" : "arn:aws:s3::111122223333:accesspoint/example-multi-region-access-point" }
        }
    }]
}
```
アクセス権を付与する複数のマルチリージョンアクセスポイントがある場合は、必ず個々のマルチリージョンアクセスポイントを一覧表示してください。

**Example 2 – マルチリージョンアクセスポイントポリシーでマルチリージョンアクセスポイントにアカウントアクセスを付与する**  
以下のマルチリージョンアクセスポイントポリシーでは、*`MultiRegionAccessPoint_ARN`* によって定義されたマルチリージョンアクセスポイントに含まれるオブジェクトを表示および読み取る `123456789012` アクセス許可をアカウントに付与します。    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
       "Effect": "Allow",
       "Principal": {
          "AWS": "arn:aws:iam::111122223333:user/JohnDoe"
       },
       "Action": [
          "s3:ListBucket",
          "s3:GetObject"
       ],
       "Resource": [ 
          "arn:aws:s3::111122223333:accesspoint/MultiRegionAccessPoint_alias",
          "arn:aws:s3::111122223333:accesspoint/MultiRegionAccessPoint_alias/object/*"
       ]
     }
  ]
}
```

**Example 3 – バケットのリスト取得を許可するマルチリージョンアクセスポイントポリシー**  
以下のマルチリージョンアクセスポイントポリシーでは、*`MultiRegionAccessPoint_ARN`* によって定義されたマルチリージョンアクセスポイントに含まれるオブジェクトを表示する `123456789012` アクセス許可をアカウントに付与します。

# マルチリージョンアクセスポイントの制約および制限事項
<a name="MultiRegionAccessPointRestrictions"></a>

Amazon S3 のマルチリージョンアクセスポイントには以下の制約と制限事項があります。

## 名前とエイリアス
<a name="MultiRegionAccessPointRestrictions-Names"></a>

マルチリージョンアクセスポイント名は、次の要件を満たしている必要があります。
+  1 つの AWS アカウント内で一意である。
+  数字または小文字で始める。
+  3～50 文字の長さにする。
+ 名前をハイフン (`-`) で開始または終了することはできません。
+ 下線 (`_`)、大文字、ピリオド (`.`) は使用できません。
+  作成後に編集することはできません。

マルチリージョンアクセスポイントエイリアス (マルチリージョンアクセスポイント名とは異なる) はAmazon S3 によって自動的に生成され、編集または再利用することはできません。マルチリージョンアクセスポイントのエイリアスとマルチリージョンアクセスポイント名の違い、およびそれぞれの命名規則の詳細については、「[Amazon S3 マルチリージョンアクセスポイントの命名規則](multi-region-access-point-naming.md)」を参照してください。

## マルチリージョンアクセスポイントの使用
<a name="MultiRegionAccessPointRestrictions-Access"></a>

ゲートウェイエンドポイントを使用して、マルチリージョンアクセスポイントを介してデータにアクセスすることはできません。ただし、インターフェイスエンドポイントを使用して、マルチリージョンアクセスポイントを介してデータにアクセスすることはできます。AWS PrivateLink を使用するには、VPC エンドポイントを作成する必要があります。詳細については、「[AWS PrivateLink で使用するマルチリージョンアクセスポイントの設定](MultiRegionAccessPointsPrivateLink.md)」を参照してください。ただし、IPv6 はサポートされていないことに注意してください。

Amazon CloudFront でマルチリージョンアクセスポイントを使用するには、マルチリージョンアクセスポイントを `Custom Origin` ディストリビューションタイプとして設定する必要があります。さまざまなオリジンタイプの詳細については、「[CloudFront ディストリビューションでのさまざまなオリジンの使用](https://docs.aws.amazon.com//AmazonCloudFront/latest/DeveloperGuide/DownloadDistS3AndCustomOrigins.html)」を参照してください。Amazon CloudFront でのマルチリージョンアクセスポイントの使用については、*AWS ストレージブログ*の「[Building an active-active, proximity-based application across multiple Regions](https://aws.amazon.com/blogs/storage/building-an-active-active-latency-based-application-across-multiple-regions/)」を参照してください。

**注記**  
S3 on Outposts バケットはサポートされていません。

## AWS API リクエストの署名
<a name="MultiRegionAccessPointRestrictions-Signing"></a>

AWS API リクエストに署名するには、マルチリージョンアクセスポイントが以下の最小要件を満たしている必要があります。

**注記**  
マルチリージョンアクセスポイントは、匿名リクエストをサポートしていません。
+ Transport Layer Security (TLS) バージョン 1.2 のサポート。
+ 署名バージョン 4 (SigV4A) のサポート – このバージョンの SigV4 では、複数の AWS リージョンに対してリクエストに署名できます。この機能は、いくつかのリージョンのいずれかからデータにアクセスする可能性がある API 操作に役立ちます。AWS SDK を使用する場合、認証情報を提供すると、マルチリージョンアクセスポイントへのリクエストでは、追加の設定なしで署名バージョン 4A が使用されます。必ず SigV4A アルゴリズムと [AWS SDK](https://docs.aws.amazon.com/sdkref/latest/guide/feature-s3-mrap.html) との互換性を確認してください。SigV4A の詳細については、「*AWS 全般のリファレンス*」の「[AWS API リクエストの署名](https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html)」を参照してください。
**注記**  
例えば AWS Identity and Access Management IAM ロールを使用する場合など、一時的なセキュリティ認証情報で SigV4A を使用するには、必ずリージョン AWS Security Token Service (AWS STS) でエンドポイントから一時的認証情報を要求してください。グローバル AWS STS エンドポイント (`sts.amazonaws.com`) から一時的な認証情報をリクエストする場合は、まず、グローバルエンドポイントに対するセッショントークンのリージョンの互換性をすべての AWS リージョンで有効に設定する必要があります。詳細については、*IAM ユーザーガイド*の 「[AWS リージョン での AWS STS の管理](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html)」を参照してください。

## Amazon S3 API オペレーション
<a name="MultiRegionAccessPointRestrictions-API"></a>
+ `CopyObject` は、マルチリージョンアクセスポイント ARN を使用する場合にのみ送信先としてサポートされます。
+ S3 バッチオペレーション機能はサポートされていません。

## AWS SDK
<a name="MultiRegionAccessPointRestrictions-SDKs"></a>

一部の AWS SDK はサポートされていません。マルチリージョンアクセスポイントでどの AWS SDK がサポートされているかを確認するには、「[AWS SDK との互換性](https://docs.aws.amazon.com/sdkref/latest/guide/feature-s3-mrap.html#s3-mrap-sdk-compat)」を参照してください。

## サービスクォータ
<a name="MultiRegionAccessPointRestrictions-Quotas"></a>

以下のサービスクォータの制限に注意してください。
+ アカウントごとに、最大 100 のマルチリージョンアクセスポイントです。
+ 1 つのマルチリージョンアクセスポイントには、17 リージョンの制約があります。

## マルチリージョンアクセスポイントの作成、削除、変更
<a name="MultiRegionAccessPointRestrictions-Modifying"></a>

マルチリージョンアクセスポイントを作成、削除、または変更する場合は、次のルールと制限に注意してください。
+ マルチリージョンアクセスポイントの作成後は、マルチリージョンアクセスポイント設定でのバケットの追加、変更、または削除はできません。バケットを変更するには、マルチリージョンアクセスポイント全体を削除し、新しいリージョンアクセスポイントを作成する必要があります。マルチリージョンアクセスポイントのクロスアカウントバケットが削除された場合、このバケットを再接続する唯一の方法は、そのアカウントで同じ名前とリージョンを使用してバケットを再作成することです。
+ マルチリージョンアクセスポイントで使用されている (同じアカウントにある) 基になるバケットは、マルチリージョンアクセスポイントを削除した後でのみ削除できます。

## リージョンのサポート
<a name="MultiRegionAccessPointRestrictions-RegionSupport"></a>

**コントロールプレーンリクエスト**

マルチリージョンアクセスポイントの作成または保守のすべてのコントロールプレーンリクエストは、`US West (Oregon)` リージョンにルーティングされる必要があります。マルチリージョンアクセスポイントのデータプレーンリクエストでは、リージョンを指定する必要はありません。

マルチリージョンアクセスポイントのフェイルオーバーコントロールプレーンの場合、リクエストは次の 5 つのサポートされているリージョンのいずれかにルーティングされる必要があります。
+ `US East (N. Virginia)`
+ `US West (Oregon)`
+ `Asia Pacific (Sydney)`
+ `Asia Pacific (Tokyo)`
+ `Europe (Ireland)`

**デフォルトで有効なリージョン**

マルチリージョンアクセスポイントは、次のデフォルト AWS リージョン (AWS アカウント で[デフォルトで有効](https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-regions.html)となっている) でバケットをサポートします。
+ `US East (N. Virginia)`
+ `US East (Ohio)`
+ `US West (N. California)`
+ `US West (Oregon)`
+ `Asia Pacific (Mumbai)`
+ `Asia Pacific (Osaka)`
+ `Asia Pacific (Seoul)`
+ `Asia Pacific (Singapore)`
+ `Asia Pacific (Sydney)`
+ `Asia Pacific (Tokyo)`
+ `Canada (Central)`
+ `Europe (Frankfurt)`
+ `Europe (Ireland)`
+ `Europe (London)`
+ `Europe (Paris)`
+ `Europe (Stockholm)`
+ `South America (São Paulo)`

**AWS オプトインリージョン**

マルチリージョンアクセスポイントは、次のオプトイン AWS リージョン (AWS アカウント では[デフォルトで無効](https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-regions.html)となっている) のバケットもサポートします。
+ `Africa (Cape Town)`
+ `Asia Pacific (Hong Kong)`
+ `Asia Pacific (Jakarta)`
+ `Asia Pacific (Melbourne)`
+ `Asia Pacific (Hyderabad)`
+ `Canada West (Calgary)`
+ `Europe (Zurich)`
+ `Europe (Milan)`
+ `Europe (Spain)`
+ `Israel (Tel Aviv)`
+ `Middle East (Bahrain)`
+ `Middle East (UAE)`

**注記**  
オプトインリージョンを有効にしても追加コストはかかりません。ただし、マルチリージョンアクセスポイントでリソースを作成または使用すると、料金が発生します。

マルチリージョンアクセスポイントを設定または作成するときは、オプトインリージョンを手動で有効にする必要があります。マルチリージョンアクセスポイントのオプトインリージョンにおける動作の詳細については、「[マルチリージョンアクセスポイントのオプトインリージョンの設定](ConfiguringMrapOptInRegions.md)」を参照してください。AWS アカウントでオプトインリージョンを有効にする方法については、「*AWSアカウント管理リファレンスガイド*」の「[Enable or disable a Region for standalone accounts](https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-regions.html#manage-acct-regions-enable-standalone)」を参照してください。

# マルチリージョンアクセスポイントリクエストのルーティング
<a name="MultiRegionAccessPointRequestRouting"></a>

 マルチリージョンアクセスポイントを介してリクエストを行うと、Amazon S3 は、マルチリージョンアクセスポイントに関連付けられたバケットのうち、どのバケットが最も近くにあるかを決定します。Amazon S3 は、リクエストをそのバケットに送信します。これは、配置されている AWS リージョンに関わりません。

マルチリージョンアクセスポイントが最も近くにあるバケットにリクエストをルーティングすると、Amazon S3 はリクエストをそのバケットに直接送信したかのように処理します。マルチリージョンアクセスポイントは、Amazon S3 バケットのデータコンテンツを認識しません。そのため、リクエストを受け取ったバケットには、リクエストされたデータが含まれていない可能性があります。マルチリージョンアクセスポイントに関連付けられた Amazon S3 バケットに一貫性のあるデータセットを作成するには、S3 クロスリージョンレプリケーション (CRR) を設定できます。その後、どのバケットも リクエストを正常に処理します。

 Amazon S3 は、次のルールに従って、マルチリージョンアクセスポイントリクエストを送信します。
+ Amazon S3 は、近接の度合いに応じてリクエストが実行されるように最適化します。マルチリージョンアクセスポイントでサポートされているバケットを調べて、最も近いバケットにリクエストをリレーします。
+ リクエストが既存のリソース (例えば、`GetObject`) を指定しても、Amazon S3 は、リクエストを実行するときにオブジェクトの名前を考慮*しません*。つまり、マルチリージョンアクセスポイントの 1 つのバケットにオブジェクトが存在する場合でも、リクエストはそのオブジェクトを含まないバケットにルーティングできるということです。この状況では、クライアント  に 404 エラーメッセージが返されます。

  404 エラーを避けるには、バケットに S3 クロスリージョンレプリケーション (CRR) を設定することをお勧めします。レプリケーションにより、目的のオブジェクトがマルチリージョンアクセスポイントのバケットには存在するが、リクエストがルーティングされた特定のバケットに存在しない場合に発生する可能性のある問題を解決できます。レプリケーション設定については、「[マルチリージョンアクセスポイントで使用するためのレプリケーションの設定](MultiRegionAccessPointBucketReplication.md)」を参照してください。

  必要な特定のオブジェクトを使用してリクエストが確実に受理されるようにするには、バケットのバージョニングを有効にし、リクエストにバージョン ID を含めることもお勧めします。このアプローチにより、探しているオブジェクトの正しいバージョンを確実に取得できます。バージョニングを有効にしたバケットでは、誤って上書きしても、オブジェクトを復旧できます。詳細については、「[S3 バケットでのバージョニングの使用](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Versioning.html)」を参照してください。
+ リクエストがリソースを作成するものである場合 (例えば、`PutObject` または `CreateMultipartUpload`)、Amazon S3 は最も近いバケットを使用してリクエストを実行します。例えば、世界中のどこからでも動画のアップロードをサポートしたい動画会社があるとします。ユーザーが `PUT` リクエストをマルチリージョンアクセスポイントに送信すると、オブジェクトは最も近くにあるバケットに配置されます。アップロードした動画を世界中の他のユーザーが最短のレイテンシーでダウンロードできるようにするには、CRR と双方向レプリケーションを使用できます。CRR を双方向レプリケーションと使用すると、マルチリージョンアクセスポイントに関連付けられたすべてのバケットのコンテンツを同期された状態に維持します。マルチリージョンアクセスポイントでのレプリケーションの使用の詳細については、「[マルチリージョンアクセスポイントで使用するためのレプリケーションの設定](MultiRegionAccessPointBucketReplication.md)」を参照してください。

# Amazon S3 マルチリージョンアクセスポイントフェイルオーバーコントロール
<a name="MrapFailover"></a>

Amazon S3 マルチリージョンアクセスポイントのフェイルオーバーコントロールを使用すると、リージョン別トラフィックが中断してもビジネス継続性を維持できると同時に、アプリケーションをマルチリージョンアーキテクチャにしてコンプライアンスと冗長性のニーズを満たすことができます。リージョン別トラフィックが中断された場合は、マルチリージョンアクセスポイントのフェイルオーバーコントロールを使用して、Amazon S3 マルチリージョンアクセスポイントの背後にあるどの AWS リージョン がデータアクセスとストレージのリクエストを処理するかを選択できます。

フェイルオーバーをサポートするには、マルチリージョンアクセスポイントをアクティブ/パッシブ構成に設定できます。トラフィックは通常の状態ではアクティブリージョンに流れ、パッシブリージョンはフェイルオーバー用にスタンバイになります。

例えば、選択した AWS リージョン へのフェイルオーバーを行うには、プライマリ (アクティブ) リージョンからのトラフィックをセカンダリ (パッシブ) リージョンに移行します。このようなアクティブ/パッシブ構成では、一方のバケットはアクティブでトラフィックを受け入れますが、もう一方のバケットはパッシブでトラフィックを受け入れません。パッシブバケットは災害対策に使用されます。フェイルオーバーを開始すると、すべてのトラフィック (`GET` や `PUT` リクエストなど) はアクティブ状態 (1 つのリージョン内) のバケットに送られ、パッシブ状態のバケット (別のリージョン内) から離れます。

S3 クロスリージョンレプリケーション (CRR) を双方向のレプリケーションルールで有効にしている場合、フェイルオーバー中もバケットを同期された状態にしておくことができます。さらに、アクティブ/アクティブ設定で CRR を有効にしている場合、Amazon S3 マルチリージョンアクセスポイントは、最も近いバケットの場所からデータを取得できるため、アプリケーションのパフォーマンスが向上します。

## AWS リージョン のサポート
<a name="RegionSupport"></a>

Amazon S3 マルチリージョンアクセスポイントのフェイルオーバーコントロールにより、S3 バケットはマルチリージョンアクセスポイントがサポートされている [17 リージョン](https://docs.aws.amazon.com/AmazonS3/latest/userguide/MultiRegionAccessPointRestrictions.html)のいずれにも存在することができます。フェイルオーバーは、任意の 2 つのリージョンで一度に開始できます。

**注記**  
フェイルオーバーは一度に 2 つのリージョン間でのみ開始されますが、マルチリージョンアクセスポイントでは、同時に複数のリージョンのルーティングステータスを個別に更新できます。

以下のトピックでは、Amazon S3 マルチリージョンアクセスポイントフェイルオーバーコントロールの使用方法と管理方法について説明します。

**Topics**
+ [AWS リージョン のサポート](#RegionSupport)
+ [Amazon S3 マルチリージョンアクセスポイントルーティング状態](FailoverConfiguration.md)
+ [Amazon S3 マルチリージョンアクセスポイントアクセスポイントフェイルオーバーコントロールの使用](UsingFailover.md)
+ [Amazon S3 マルチリージョンアクセスポイントフェイルオーバーコントロールのエラー](mrap-failover-errors.md)

# Amazon S3 マルチリージョンアクセスポイントルーティング状態
<a name="FailoverConfiguration"></a>

Amazon S3 マルチリージョンアクセスポイントのフェイルオーバー設定は、マルチリージョンアクセスポイントで使用される AWS リージョン のルーティングステータスを決定します。Amazon S3 マルチリージョンアクセスポイントは、アクティブ/アクティブ状態またはアクティブ/パッシブ状態に設定できます。
+ **アクティブ/アクティブ** — アクティブ/アクティブ設定では、すべてのリクエストはマルチリージョンアクセスポイントの最も近い AWS リージョン に自動的に送信されます。マルチリージョンアクセスポイントをアクティブ/アクティブ状態に設定すると、すべてのリージョンがトラフィックを受信できます。アクティブ/アクティブ設定でトラフィックの中断が発生した場合、ネットワークトラフィックはアクティブリージョンのいずれかに自動的にリダイレクトされます。
+ **アクティブ/パッシブ** — アクティブ/パッシブ設定では、マルチリージョンアクセスポイントのアクティブリージョンはトラフィックを受信し、パッシブリージョンはトラフィックを受信しません。災害がある状況で S3 フェイルオーバーコントロールを使用してフェイルオーバーを開始する場合は、災害対策計画のテストと実行中に、マルチリージョンアクセスポイントをアクティブ/パッシブ設定にセットアップします。

# Amazon S3 マルチリージョンアクセスポイントアクセスポイントフェイルオーバーコントロールの使用
<a name="UsingFailover"></a>

このセクションでは、AWS マネジメントコンソール を使用して、Amazon S3 マルチリージョンアクセスポイントフェイルオーバーコントロールを管理および使用する方法について説明します。

AWS マネジメントコンソール のマルチリージョンアクセスポイントの詳細ページの **[Failover configuration]** (フェイルオーバーの設定) セクションには、**[Edit routing status]** (ルーティングステータスの編集) と**[Failover]** (フェイルオーバー) の 2 つのフェイルオーバーコントロールがあります。これらのコントロールは以下のように使用できます。
+ **[Edit routing status]** (ルーティングステータスの編集) — **[Edit routing status]** (ルーティングステータスの編集) を選択すると、マルチリージョンアクセスポイントの 1 回のリクエストで最大 17 の AWS リージョン ルーティングステータスを手動で編集できます。**[Edit routing status]** (ルーティングステータスの編集) は次の目的で使用できます。
  + マルチリージョンアクセスポイントの 1 つ以上のリージョンのルーティングステータスを設定または編集する
  + 2 つのリージョンをアクティブ/パッシブ状態に設定してマルチリージョンアクセスポイントのフェイルオーバー設定を作成する
  + リージョンを手動でフェイルオーバーする
  + リージョン間でトラフィックを手動で切り替える
+ **[Failover]** (フェイルオーバー) — **[Failover]** (フェイルオーバー) を選択してフェイルオーバーを開始すると、既にアクティブ/パッシブ状態に設定されている 2 つのリージョンのルーティングステータスが更新されるだけです。**[Failover]** (フェイルオーバー) を選択して開始したフェイルオーバー中に、2 つのリージョン間のルーティングステータスが自動的に切り替わります。

## マルチリージョンアクセスポイントの、リージョンのルーティングステータスの編集
<a name="editing-mrap-routing-status"></a>

マルチリージョンアクセスポイントの詳細ページの **[Failover configuration]** (フェイルオーバー設定) セクションで **[Edit routing status]** (ルーティングステータスの編集) を選択すると、マルチリージョンアクセスポイントの 1 回のリクエストで最大 17 AWS リージョン のルーティングステータスを手動で更新できます。ただし、**[Failover]** (フェイルオーバー) を選択してフェイルオーバーを開始すると、既にアクティブ/パッシブ状態に設定されている 2 つのリージョンのルーティングステータスのみが更新されます。**[Failover]** (フェイルオーバー) を選択して開始したフェイルオーバーの間、2 つのリージョン間のルーティングステータスが自動的に切り替わります。

**[Edit routing status]** (ルーティングステータスの編集) (以下の手順で説明) は、次の目的で使用できます。
+ マルチリージョンアクセスポイントの 1 つ以上のリージョンのルーティングステータスを設定または編集する
+ 2 つのリージョンをアクティブ/パッシブ状態に設定してマルチリージョンアクセスポイントのフェイルオーバー設定を作成する
+ リージョンを手動でフェイルオーバーする
+ リージョン間でトラフィックを手動で切り替える

### S3 コンソールの使用
<a name="update-mrap-routing-console"></a>

**マルチリージョンアクセスポイントのリージョンのルーティングステータスを更新するには**



1. AWS マネジメントコンソールにサインインします。

1. Amazon S3 コンソール ([https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)) を開きます。

1. ナビゲーションペインで、**[Multi-Region Access Points]** (マルチリージョンアクセスポイント) を選択します。

1. 更新するマルチリージョンアクセスポイントを選択します。

1. **[Replication and failover]** (レプリケーションとフェイルオーバー) タブを選択します。

1. ルーティングステータスを編集するリージョンを 1 つ以上選択します。
**注記**  
フェイルオーバーを開始するには、マルチリージョンアクセスポイントで少なくとも 1 つの AWS リージョン を **[Active]** (アクティブ) に、1 つのリージョンを **[Passive]** (パッシブ) に指定する必要があります。

1. **[Edit routing status]** (ルーティングステータスの編集) を選択します。

1. 表示されるダイアログボックスで、各リージョンの **[Routing status]** (ルーティングステータス)として **[Active]** (アクティブ) または **[Passive]** (パッシブ) を選択します。

   アクティブな状態では、トラフィックがリージョンにルーティングされます。パッシブな状態では、トラフィックがリージョンに誘導されなくなります。

   マルチリージョンアクセスポイントのフェイルオーバー設定を作成する場合、またはフェイルオーバーを開始する場合は、マルチリージョンアクセスポイントで少なくとも 1 つの AWS リージョン を **[Active]** (アクティブ) に、1 つのリージョンを **[Passive]** (パッシブ) に指定する必要があります。

1. **[Save routing status]** (ルーティングステータスを保存) を選択します。トラフィックがリダイレクトされるまでに約 2 分かかります。

マルチリージョンアクセスポイントの AWS リージョン のルーティングステータスを送信すると、ルーティングステータスの変更を検証できます。これらの変更を検証するには、Amazon CloudWatch の [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) にアクセスして、アクティブリージョンとパッシブリージョン間の Amazon S3 データリクエストトラフィック (`GET` および `PUT` リクエストなど) のシフトをモニタリングします。フェイルオーバー中に既存の接続は終了しません。既存の接続は、成功または失敗のステータスに達するまで継続されます。

### の使用AWS CLI
<a name="update-mrap-routing-cli"></a>

**注記**  
マルチリージョンアクセスポイント AWS CLI のルーティングコマンドは、次の 5 つのリージョンのいずれかに対して実行できます。  
`ap-southeast-2`
`ap-northeast-1`
`us-east-1`
`us-west-2`
`eu-west-1`

次のコマンド例では、現在のマルチリージョンアクセスポイントのルート設定を更新します。バケットのアクティブまたはパッシブステータスを更新するには、`TrafficDialPercentage` の値をアクティブの場合は `100` に、パッシブの場合は `0` に設定します。この例では、`amzn-s3-demo-bucket1` がアクティブに設定され、*amzn-s3-demo-bucket2* がパッシブに設定されています。このコマンド例を実行するには、`user input placeholders` をユーザー自身の情報に置き換えます。

```
aws s3control submit-multi-region-access-point-routes
--region ap-southeast-2 
--account-id 123456789012 
--mrap MultiRegionAccessPoint_ARN
--route-updates Bucket=amzn-s3-demo-bucket1,TrafficDialPercentage=100
                Bucket=amzn-s3-demo-bucket2
,TrafficDialPercentage=0
```

次のコマンド例では、更新されたマルチリージョンアクセスポイントのルーティング設定を取得します。このコマンド例を実行するには、`user input placeholders` をユーザー自身の情報に置き換えます。

```
aws s3control get-multi-region-access-point-routes
--region eu-west-1
--account-id 123456789012
--mrap MultiRegionAccessPoint_ARN
```

## フェイルオーバーの開始
<a name="InitiatingFailover"></a>

マルチリージョンアクセスポイントの詳細ページの **[Failover configuration]** (フェイルオーバー設定) セクションで **[Failover]** (フェイルオーバー) を選択してフェイルオーバーを開始すると、Amazon S3 リクエストトラフィックは自動的に代替の AWS リージョン に移行されます。フェイルオーバープロセスは 2 分以内に完了します。

フェイルオーバーは、(マルチリージョンアクセスポイントがサポートされている [17 のリージョン](https://docs.aws.amazon.com/AmazonS3/latest/userguide/MultiRegionAccessPointRestrictions.html)のうち) 任意の 2 つの AWS リージョン で一度に開始できます。その後、フェイルオーバーイベントが AWS CloudTrail にログインされます。フェイルオーバーが完了すると、Amazon S3 トラフィックと、Amazon CloudWatch の新しいアクティブリージョンへのトラフィックルーティングの更新をモニタリングできます。

**重要**  
データレプリケーション中にすべてのメタデータとオブジェクトをバケット間で同期させるには、フェイルオーバーコントロールを設定する前に、双方向のレプリケーションルールを作成し、レプリカ変更の同期を有効にすることをお勧めします。  
双方向のレプリケーションルールにより、トラフィックがフェイルオーバーする Amazon S3 バケットにデータが書き込まれると、そのデータがソースバケットにレプリケートされます。レプリカ変更の同期により、双方向のレプリケーション中にオブジェクトメタデータもバケット間で確実に同期されます。  
フェイルオーバーをサポートするレプリケーションの設定については、「[マルチリージョンアクセスポイントで使用するためのレプリケーションの設定](MultiRegionAccessPointBucketReplication.md)」を参照してください。

**レプリケートされたバケット間のフェイルオーバーを開始するには**

1. AWS マネジメントコンソールにサインインします。

1. Amazon S3 コンソール ([https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)) を開きます。

1. 左のナビゲーションペインで、**[Multi-Region Access Points]** (マルチリージョンアクセスポイント) を選択します。

1. フェイルオーバーを開始するために使用する、マルチリージョンアクセスポイントを選択します。

1. **[Replication and failover]** (レプリケーションとフェイルオーバー) タブを選択します。

1. **[Failover configuration]** (フェイルオーバー設定) セクションまでスクロールして、AWS リージョン を 2 つ選択します。
**注記**  
フェイルオーバーを開始するには、マルチリージョンアクセスポイントで少なくとも 1 つの AWS リージョン を **[Active]** (アクティブ) に、1 つのリージョンを **[Passive]** (パッシブ) に指定する必要があります。アクティブな状態では、トラフィックがリージョンに誘導されます。パッシブな状態では、トラフィックがリージョンへ誘導されなくなります。

1. [**フェイルオーバー**] を選択します。

1. ダイアログボックスで、再度 **[Failover]** (フェイルオーバー) を選択して、フェイルオーバープロセスを開始します。このプロセス中に、2 つのリージョンのルーティングステータスが自動的に切り替わります。新しいトラフィックはすべてアクティブになったリージョンに誘導され、トラフィックはパッシブになったリージョンへ誘導されなくなります。トラフィックがリダイレクトされるまでに約 2 分かかります。

   フェイルオーバープロセスを開始すると、トラフィックの変化を検証できます。これらの変更を検証するには、Amazon CloudWatch の [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) にアクセスして、アクティブリージョンとパッシブリージョン間の Amazon S3 データリクエストトラフィック (`GET` および `PUT` リクエストなど) のシフトをモニタリングします。フェイルオーバー中に既存の接続は終了しません。既存の接続は、成功または失敗のステータスになるまで継続されます。

## Amazon S3 マルチリージョンアクセスポイントアクセスポイントルーティングコントロールを表示する
<a name="viewing-mrap-routing-controls"></a>

### S3 コンソールの使用
<a name="viewing-mrap-routing-console"></a>

**Amazon S3 マルチリージョンアクセスポイントのルーティングコントロールを表示するには**



1. AWS マネジメントコンソールにサインインします。

1. Amazon S3 コンソール ([https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)) を開きます。

1. 左のナビゲーションペインで、**[Multi-Region Access Points]** (マルチリージョンアクセスポイント) を選択します。

1. 確認するマルチリージョンアクセスポイントを選択します。

1. **[Replication and failover]** (レプリケーションとフェイルオーバー) タブを選択します。このページには、マルチリージョンアクセスポイントのルーティング設定の詳細と概要、関連するレプリケーションルール、およびレプリケーションメトリクスが表示されます。リージョンのルーティングステータスは、**[Failover configuration]** (フェイルオーバー設定) セクションで確認できます。

### の使用AWS CLI
<a name="viewing-mrap-routing-cli"></a>

次の例の AWS CLI コマンドでは、指定されたリージョンの、現在のマルチリージョンアクセスポイントのルート設定  を取得します。このコマンドの例を実行するには、`user input placeholders` をユーザー自身の情報に置き換えます。

```
aws s3control get-multi-region-access-point-routes
--region eu-west-1
--account-id 123456789012 
--mrap MultiRegionAccessPoint_ARN
```

**注記**  
このコマンドは、次の 5 つのリージョンに対してのみ実行できます。  
`ap-southeast-2`
`ap-northeast-1`
`us-east-1`
`us-west-2`
`eu-west-1`

# Amazon S3 マルチリージョンアクセスポイントフェイルオーバーコントロールのエラー
<a name="mrap-failover-errors"></a>

マルチリージョンアクセスポイントのフェイルオーバー設定を更新すると、次のいずれかのエラーが発生する可能性があります。
+ HTTP 400 Bad Request: このエラーは、フェイルオーバー設定の更新中に無効なマルチリージョンアクセスポイント ARN を入力した場合に発生する可能性があります。マルチリージョンアクセスポイント ARN は、マルチリージョンアクセスポイントポリシーを確認することで確認できます。マルチリージョンアクセスポイントポリシーを確認または更新するには、「[マルチリージョンアクセスポイントポリシーの編集](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingFailover.html#editing-mrap-policy)」を参照してください。このエラーは、Amazon S3 マルチリージョンアクセスポイントのフェイルオーバーコントロールの更新中に空の文字列またはランダムな文字列を使用した場合にも発生する可能性があります。必ずマルチリージョンアクセスポイント ARN 形式を使用してください。

  `arn:aws:s3::account-id:accesspoint/MultiRegionAccessPoint_alias` 
+ HTTP 503 Slow Down: このエラーは、短期間に送信するリクエストが多すぎる場合に発生します。拒否されたリクエストはエラーになります。
+ HTTP 409 Conflict: このエラーは、2 つ以上の同時ルート設定更新リクエストが 1 つのマルチリージョンアクセスポイントを対象としている場合に発生します。最初のリクエストは成功しますが、他のリクエストはエラーで失敗します。
+ HTTP 405 Method Not Allowed: このエラーは、フェイルオーバーの開始時に AWS リージョン が 1 つしかないマルチリージョンアクセスポイントを選択した場合に発生します。フェイルオーバーを開始する前に、2 つのリージョンを選択する必要があります。それ以外の場合は、エラーが返ります。

# マルチリージョンアクセスポイントで使用するためのレプリケーションの設定
<a name="MultiRegionAccessPointBucketReplication"></a>

マルチリージョンアクセスポイントエンドポイントに対してリクエストを行うと、Amazon S3 は、最も近接したバケットにリクエストを自動的にルーティングします。この決定を行う際には、Amazon S3 ではリクエストの内容は考慮されません。オブジェクトの `GET` へのリクエストを行う場合、リクエストが、このオブジェクトのコピーを持たないバケットにルーティングされる可能性もあります。その場合は、HTTP ステータスコード 404 (見つかりません) エラーが表示されます。マルチリージョンアクセスポイントのリクエストルーティングの詳細については、「[マルチリージョンアクセスポイントリクエストのルーティング](MultiRegionAccessPointRequestRouting.md)」を参照してください。

リクエストを受け取るバケットに関係なく、マルチリージョンアクセスポイントでオブジェクトを取得できるようにするには、Amazon S3 クロスリージョンレプリケーションを設定する必要があります。

 例えば、3 つのバケットを持つマルチリージョンアクセスポイントについて考えてみましょう。
+ オブジェクト `my-image.jpg` を含む、リージョン `US West (Oregon)` の `amzn-s3-demo-bucket1` という名前のバケット 
+ オブジェクト `my-image.jpg` を含む、リージョン `Asia Pacific (Mumbai)` の `amzn-s3-demo-bucket2` という名前のバケット 
+ オブジェクト`my-image.jpg` を含まないリージョン `Europe (Frankfurt)` の `amzn-s3-demo-bucket` という名前のバケット 

このような状況では、オブジェクト `my-image.jpg` に対して `GetObject` リクエストを行った場合、そのリクエストの成功は、どのバケットがリクエストを受け取ったかによって異なります。Amazon S3 はリクエストの内容を考慮しないため、バケットが最も近接していると応答する場合、`GetObject` リクエストを `amzn-s3-demo-bucket` バケットにルーティングします。オブジェクトがマルチリージョンアクセスポイントのバケット内にある場合でも、リクエストを受け取った個々のバケットにオブジェクトが含まれていないため、404 Not Found エラーが発生します。

クロスリージョンレプリケーション (CRR) を有効にすると、この結果を回避できます。適切なレプリケーションルールを使用すると、`my-image.jpg` オブジェクトは `amzn-s3-demo-bucket` バケットにコピーされます。そのため、Amazon S3 がリクエストをそのバケットにルーティングすれば、オブジェクトを取得できるようになります。

レプリケーションは、マルチリージョンアクセスポイントに割り当てられているバケットでは通常どおりに機能します。Amazon S3 は、マルチリージョンアクセスポイントにあるバケットに対して特別なレプリケーション処理を実行しません。バケットでレプリケーションを設定する方法については、「[ライブレプリケーションの設定の概要](replication-how-setup.md)」を参照してください。

**マルチリージョンアクセスポイントでのレプリケーションの使用に関する推奨事項**  
マルチリージョンアクセスポイントでの操作時にレプリケーションパフォーマンスを最大限に高めたい場合は、次のことをお勧めします。
+ S3 Replication Time Control (S3 RTC) を設定します。S3 RTC を使用して、予測可能な時間枠内で異なるリージョン間でデータをレプリケートできます。S3 RTC は、Simple Storage Service (Amazon S3) 内に保存されている新規オブジェクトの 99.99% を 15 分以内にレプリケートします (サービスレベルアグリーメントに基づく)。詳細については、「[S3 Replication Time Control (S3 RTC)を使用してコンプライアンス要件を満たす](replication-time-control.md)」を参照してください。S3 RTC を使用するための追加料金はかかります。詳細については、「[Amazon S3 の料金](https://aws.amazon.com/s3/pricing/)」を参照してください。
+ また、双方向レプリケーションを有効にして、マルチリージョンアクセスポイントを介してバケットが更新されるときにバケットの同期を維持することをサポートします。詳細については、「[マルチリージョンアクセスポイント用の双方向レプリケーションルールを作成する](mrap-create-two-way-replication-rules.md)」を参照してください。
+ クロスアカウントのマルチリージョンアクセスポイントを作成して、AWS アカウント データを別のバケットに複製します。このアプローチでは、アカウントレベルで分離できるため、ソースバケット以外のさまざまなリージョンのさまざまなアカウントからデータにアクセスして、データを複製できます。クロスアカウントのマルチリージョンアクセスポイントの設定には、追加費用はかかりません。バケットの所有者であっても、マルチリージョンアクセスポイントを所有していない場合、データ転送とリクエストの費用のみがかかります。マルチリージョンアクセスポイントの所有者の場合は、データルーティングとインターネットアクセラレーションの費用がかかります。詳細については、「[Amazon S3 の料金](https://aws.amazon.com/s3/pricing/)」を参照してください。
+ 各レプリケーションルールでレプリカ変更同期を有効にすると、オブジェクトへのメタデータの変更も同期されます。詳細については、「[レプリカ変更の同期の有効化する](https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication-for-metadata-changes.html#enabling-replication-for-metadata-changes)」を参照してください。
+ Amazon CloudWatch メトリクスを有効にして、[レプリケーションイベントをモニタリング](https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication-metrics.html)します。CloudWatch メトリクス料金が適用されます。詳細については、「[Amazon CloudWatch の料金](https://aws.amazon.com/cloudwatch/pricing/)」を参照してください。

**Topics**
+ [マルチリージョンアクセスポイント用の一方向レプリケーションルールを作成する](mrap-create-one-way-replication-rules.md)
+ [マルチリージョンアクセスポイント用の双方向レプリケーションルールを作成する](mrap-create-two-way-replication-rules.md)
+ [マルチリージョンアクセスポイント用のレプリケーションルールを表示する](mrap-view-replication-rules.md)

# マルチリージョンアクセスポイント用の一方向レプリケーションルールを作成する
<a name="mrap-create-one-way-replication-rules"></a>

レプリケーションルールでは、異なるバケット間でオブジェクトを自動的に非同期コピーできます。一方向レプリケーションルールを使用すると、1 つの AWS リージョン のソースバケットから別のリージョンの送信先バケットにデータを完全に、確実にレプリケートできます。一方向レプリケーションを設定する場合は、レプリケート元バケット (*amzn-s3-demo-bucket*) からレプリケート先バケット (*amzn-s3-demo-bucket*) へのレプリケーションルールが作成されます。これらの一方向レプリケーションルールは、すべてのレプリケーションルールと同様に、Amazon S3 バケット全体に適用することも、オブジェクトのサブセットをプレフィックスまたはオブジェクトタグでフィルタリングして適用することも可能です。

**重要**  
ユーザーがレプリケート先バケット内のオブジェクトのみを使用する場合は、一方向レプリケーションを使用することをお勧めします。ユーザーがレプリケート先バケットのオブジェクトをアップロードまたは変更する場合は、双方向レプリケーションを使用してすべてのバケットを同期させてください。また、マルチリージョンアクセスポイントをフェイルオーバーに使用する場合は、双方向レプリケーションをお勧めします。双方向レプリケーションを設定するには、「[マルチリージョンアクセスポイント用の双方向レプリケーションルールを作成する](mrap-create-two-way-replication-rules.md)」を参照してください。

**マルチリージョンアクセスポイント用の一方向レプリケーションルールを作成するには**

1. AWS マネジメントコンソール にサインインし、Amazon S3 コンソール [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/) を開きます。

1. ナビゲーションペインで、**[Multi-Region Access Points]** (マルチリージョンアクセスポイント) を選択します。

1. マルチリージョンアクセスポイント名を選択します。

1. **[Replication and failove]** (レプリケーションとフェイルオーバー) タブを選択します。

1. **[Replication rules]** (レプリケーションルール) セクションまでスクロールして、**[Create replication rules]** (レプリケーションルールの作成) を選択します。レプリケーションルールを作成するための十分なアクセス権限があることを確認してください。権限がないと、バージョニングが無効になります。
**注記**  
レプリケーションルールは、自分が所有するアカウントのバケットに対してのみ作成できます。外部バケットのレプリケーションルールを作成するには、バケットの所有者がそれらのバケットのレプリケーションルールを作成する必要があります。

1. **[レプリケーションルールの作成]** ページで、**[1 つ以上のレプリケート元バケットから 1 つ以上のレプリケート先バケットにオブジェクトをレプリケート]** テンプレートを選択します。
**重要**  
このテンプレートを使用してレプリケーションルールを作成すると、バケットに既に割り当てられている既存のレプリケーションルールが置き換えられます。  
既存のレプリケーションルールを置き換える代わりに追加または変更するには、コンソールで各バケットの **[Management]** (管理) タブに移動し、**[Replication rules]** (レプリケーションルール) セクションでルールを編集します。AWS CLI (SDK)、または REST API を使用して、既存のレプリケーションルールを追加または変更することもできます。詳細については、「[レプリケーション設定ファイル要素](replication-add-config.md)」を参照してください。

1. **[送信元と送信先]** セクションの **[レプリケート元バケット]** で、オブジェクトのレプリケート元となるバケットを 1 つ以上選択します。レプリケーション用に選択したすべてのバケット (レプリケート元とレプリケート先) では S3 バージョニングが有効になっている必要があり、各バケットは異なる AWS リージョン に配置されている必要があります。オブジェクトのバージョニングを管理する方法の詳細については、「[S3 バケットでのバージョニングの使用](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Versioning.html)」を参照してください。

   **[レプリケート先バケット]** セクションで、オブジェクトのレプリケート先となるバケットを 1 つ以上選択します。

1. **[Replication rule configuration]** (レプリケーションルール設定) セクションで、作成時にレプリケーションルールを**[Enabled]** (有効) にするか **[Disabled]** (無効) にするかを選択します。
**注記**  
**[Replication rule name]** (レプリケーションルール名) ボックスに名前を入力することはできません。レプリケーションルール名は、レプリケーションルールを作成したときの構成に基づいて生成されます。

1. **[Scope]** (スコープ) セクションで、レプリケーションに適したスコープを選択します。
   + バケット全体をレプリケートするには、**[Apply to all objects in the bucket]** (バケット内のすべてのオブジェクトに適用) を選択します。
   + バケットのオブジェクトのサブセットをレプリケートするには、**[Limit the scope of this rule using one or more filters]** (1 つまたは複数のフィルターを使用してこのルールの適用範囲を制限します) を選択します。

     プレフィックス、オブジェクトタグ、またはその両方の組み合わせでフィルターできます。
     + 同じ文字列で始まる名前 (`pictures` など) をもつすべてのオブジェクトにレプリケーションを制限するには、**[Prefix]** (プレフィクス) ボックスにプレフィックスを入力します。

       フォルダの名前をプレフィックスとして入力する場合は、`/` (スラッシュ) などの区切り文字を使用して、階層のレベルを示す必要があります (例:`pictures/`)。プレフィックスの詳細については、「[プレフィックスを使用してオブジェクトを整理する](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-prefixes.html)」を参照してください。
     + 1 つまたは複数のオブジェクトタグを持つすべてのオブジェクトをレプリケートするには、**[Add tag]** (タグを追加) を選択し、ボックスにキーと値のペアを入力します。別のタグを追加するには、この手順を繰り返します。オブジェクトタグの詳細については、[タグを使用したオブジェクトの分類](object-tagging.md)を参照してください。

1. **[Additional replication options]** (その他のレプリケーションオプション) セクションまでスクロールして、適用するレプリケーションオプションを選択します。
**注記**  
以下のオプションの適用をお勧めします。  
**S3 Replication Time Control (S3 RTC)** – 予測可能な時間枠内で異なるリージョン間でデータをレプリケートするには、S3 Replication Time Control (S3 RTC) を使用します。S3 RTC は、Simple Storage Service (Amazon S3) 内に保存されている新規オブジェクトの 99.99% を 15 分以内にレプリケートします (サービスレベルアグリーメントに基づく)。詳細については、「[S3 Replication Time Control (S3 RTC)を使用してコンプライアンス要件を満たす](replication-time-control.md)」を参照してください。
**レプリケーションメトリクスと通知** – Amazon CloudWatch メトリクスを有効にして、レプリケーションイベントをモニタリングできます。
**削除マーカーのレプリケーション** — S3 の削除オペレーションによって作成された削除マーカーがレプリケートされます。ライフサイクルルールによって作成された削除マーカーはレプリケートされません。詳細については、「[バケット間での削除マーカーのレプリケーション](https://docs.aws.amazon.com/AmazonS3/latest/userguide/delete-marker-replication.html)」を参照してください。
S3 RTC と CloudWatch のレプリケーションメトリクスと通知には追加料金がかかります。詳細については、「[Amazon S3 の料金](https://aws.amazon.com/s3/pricing/)」および「[Amazon CloudWatch の料金](https://aws.amazon.com/cloudwatch/pricing/)」を参照してください。

1. 既存のレプリケーションルールを置き換える新しいレプリケーションルールを作成する場合は、**[Create replication rules] (レプリケーションルールを作成) を選択すると、既存のレプリケーションルールが上書きされることに同意します**。

1. **[レプリケーションルールの作成]** を選択し、新しい一方向レプリケーションルールを作成して保存します。

# マルチリージョンアクセスポイント用の双方向レプリケーションルールを作成する
<a name="mrap-create-two-way-replication-rules"></a>

レプリケーションルールでは、異なるバケット間でオブジェクトを自動的に非同期コピーできます。双方向レプリケーションルールは、異なる AWS リージョン にあるデータが複数のバケット間で完全に同期されることを保証します。双方向レプリケーションを設定する場合、レプリケート元バケット (DOC-EXAMPLE-BUCKET-1) から、レプリカが含まれているバケット (DOC-EXAMPLE-BUCKET-2) に対するレプリケーションルールを作成します。次に、レプリカを含むバケット (DOC-EXAMPLE-BUCKET-2) からレプリケート元バケット (DOC-EXAMPLE-BUCKET-1) に対する 2 つ目のレプリケーションルールを作成します。

これらの双方向レプリケーションルールは、すべてのレプリケーションルールと同様に、Amazon S3 バケット全体に適用することも、オブジェクトのサブセットをプレフィックスまたはオブジェクトタグでフィルタリングして適用することも可能です。各レプリケーションルールで[レプリカ変更同期を有効にする](https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication-for-metadata-changes.html#enabling-replication-for-metadata-changes)と、オブジェクトへのメタデータの変更も同期されます。Amazon S3 コンソール、AWS CLI、AWS SDK、Amazon S3 REST API、または AWS CloudFormation を使用して、レプリカ変更の同期を有効にすることができます。

Amazon CloudWatch のオブジェクトとオブジェクトメタデータのレプリケーションの進行状況をモニタリングするには、S3 レプリケーションメトリクスと通知を有効にします。詳細については、「[レプリケーションメトリクスと Amazon S3 イベント通知による、進捗状況のモニタリング](https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication-metrics.html)」を参照してください。

**マルチリージョンアクセスポイント用の双方向レプリケーションルールを作成するには**



1. AWS マネジメントコンソール にサインインし、Amazon S3 コンソール [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/) を開きます。

1. ナビゲーションペインで、**[Multi-Region Access Points]** (マルチリージョンアクセスポイント) を選択します。

1. 更新するマルチリージョンアクセスポイントの名前を選択します。

1. **[Replication and failove]** (レプリケーションとフェイルオーバー) タブを選択します。

1. **[Replication rules]** (レプリケーションルール) セクションまでスクロールして、**[Create replication rules]** (レプリケーションルールの作成) を選択します。

1. **[Create replication rules]** (レプリケーションルールの作成) ページで、**[Replicate objects among all specified buckets]** (指定されたすべてのバケット間でオブジェクトをレプリケート) テンプレートを選択します。**[Replicate objects among all specified buckets]** (指定されたすべてのバケット間でオブジェクトをレプリケート) テンプレートは、バケットの双方向レプリケーション (フェイルオーバー機能付き) を設定します。
**重要**  
このテンプレートを使用してレプリケーションルールを作成すると、バケットに既に割り当てられている既存のレプリケーションルールが置き換えられます。  
既存のレプリケーションルールを置き換える代わりに追加または変更するには、コンソールで各バケットの **[Management]** (管理) タブに移動し、**[Replication rules]** (レプリケーションルール) セクションでルールを編集します。AWS CLI、AWS SDK、または Amazon S3 REST API を使用して既存のレプリケーションルールを追加または変更することもできます。詳細については、「[レプリケーション設定ファイル要素](replication-add-config.md)」を参照してください。

1. **[Buckets]** (バケット) セクションで、オブジェクトの複製元となるバケットを少なくとも 2 つ選択します。レプリケーション用に選択したすべてのバケットで S3 バージョニングが有効になっている必要があり、各バケットは異なる AWS リージョン にある必要があります。オブジェクトのバージョニングを管理する方法の詳細については、「[S3 バケットでのバージョニングの使用](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Versioning.html)」を参照してください。
**注記**  
レプリケーションを確立するために必要な読み取り権限とレプリケート権限があることを確認してください。権限がないと、エラーが発生します。詳細については、「[IAM ロールの作成](https://docs.aws.amazon.com/AmazonS3/latest/userguide/setting-repl-config-perm-overview.html)」を参照してください。

1. **[Replication rule configuration]** (レプリケーションルール設定) セクションで、作成時にレプリケーションルールを**[Enabled]** (有効) にするか **[Disabled]** (無効) にするかを選択します。
**注記**  
**[Replication rule name]** (レプリケーションルール名) ボックスに名前を入力することはできません。レプリケーションルール名は、レプリケーションルールを作成したときの構成に基づいて生成されます。

1. **[Scope]** (スコープ) セクションで、レプリケーションに適したスコープを選択します。
   + バケット全体をレプリケートするには、**[Apply to all objects in the bucket]** (バケット内のすべてのオブジェクトに適用) を選択します。
   + バケットのオブジェクトのサブセットをレプリケートするには、**[Limit the scope of this rule using one or more filters]** (1 つまたは複数のフィルターを使用してこのルールの適用範囲を制限します) を選択します。

     プレフィックス、オブジェクトタグ、またはその両方の組み合わせでフィルターできます。
     + 同じ文字列で始まる名前 (`pictures` など) をもつすべてのオブジェクトにレプリケーションを制限するには、**[Prefix]** (プレフィクス) ボックスにプレフィックスを入力します。

       フォルダの名前をプレフィックスとして入力する場合は、最後の文字に `/` (スラッシュ) を使用する必要があります (例: `pictures/`)。
     + 1 つまたは複数のオブジェクトタグを持つすべてのオブジェクトをレプリケートするには、**[Add tag]** (タグを追加) を選択し、ボックスにキーと値のペアを入力します。別のタグを追加するには、この手順を繰り返します。オブジェクトタグの詳細については、[タグを使用したオブジェクトの分類](object-tagging.md)を参照してください。

1. **[Additional replication options]** (その他のレプリケーションオプション) セクションまでスクロールして、適用するレプリケーションオプションを選択します。
**注記**  
特にマルチリージョンアクセスポイントをフェイルオーバーをサポートするように設定する場合は、次のオプションを適用することをお勧めします。  
**S3 Replication Time Control (S3 RTC)** – 予測可能な時間枠内で異なるリージョン間でデータをレプリケートするには、S3 Replication Time Control (S3 RTC) を使用します。S3 RTC は、Simple Storage Service (Amazon S3) 内に保存されている新規オブジェクトの 99.99% を 15 分以内にレプリケートします (サービスレベルアグリーメントに基づく)。詳細については、「[S3 Replication Time Control (S3 RTC)を使用してコンプライアンス要件を満たす](replication-time-control.md)」を参照してください。
**レプリケーションメトリクスと通知** – Amazon CloudWatch メトリクスを有効にして、レプリケーションイベントをモニタリングできます。
**削除マーカーのレプリケーション** — S3 の削除オペレーションによって作成された削除マーカーがレプリケートされます。ライフサイクルルールによって作成された削除マーカーはレプリケートされません。詳細については、「[バケット間での削除マーカーのレプリケーション](https://docs.aws.amazon.com/AmazonS3/latest/userguide/delete-marker-replication.html)」を参照してください。
**レプリカ変更同期** – 各レプリケーションルールでレプリカ変更同期を有効にすると、オブジェクトへのメタデータの変更も同期されます。詳細については、「[レプリカ変更の同期の有効化する](https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication-for-metadata-changes.html#enabling-replication-for-metadata-changes)」を参照してください。
S3 RTC と CloudWatch のレプリケーションメトリクスと通知には追加料金がかかります。詳細については、「[Amazon S3 の料金](https://aws.amazon.com/s3/pricing/)」および「[Amazon CloudWatch の料金](https://aws.amazon.com/cloudwatch/pricing/)」を参照してください。

1. 既存のレプリケーションルールを置き換える新しいレプリケーションルールを作成する場合は、**[Create replication rules] (レプリケーションルールを作成) を選択すると、既存のレプリケーションルールが上書きされることに同意します**。

1. **[Create replication rules] ** (レプリケーションルールを作成) を選択し、新しい双方向レプリケーションルールを作成して保存します。

# マルチリージョンアクセスポイント用のレプリケーションルールを表示する
<a name="mrap-view-replication-rules"></a>

マルチリージョンアクセスポイントでは、一方向レプリケーションルールまたは双方向レプリケーションルールを設定できます。レプリケーションルールの管理方法の詳細については、「[Amazon S3 コンソールを使用したレプリケーションルールの管理](https://docs.aws.amazon.com/AmazonS3/latest/userguide/disable-replication.html)」を参照してください。

**マルチリージョンアクセスポイント用のレプリケーションルールを表示するには**



1. AWS マネジメントコンソール にサインインし、Amazon S3 コンソール [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/) を開きます。

1. ナビゲーションペインで、**[Multi-Region Access Points]** (マルチリージョンアクセスポイント) を選択します。

1. マルチリージョンアクセスポイント名を選択します。

1. **[Replication and failover]** (レプリケーションとフェイルオーバー) タブを選択します。

1. **[レプリケーションルール]** セクションまで、下にスクロールします。このセクションには、マルチリージョンアクセスポイント用に作成されたすべてのレプリケーションルールが一覧表示されます。
**注記**  
別のアカウントから、このマルチリージョンアクセスポイントにバケットを追加した場合、そのバケットのレプリケーションルールを表示するにはバケット所有者からの `s3:GetBucketReplication` 権限が必要です。

# マルチリージョンアクセスポイントでのサポートされている API オペレーションの使用
<a name="MrapOperations"></a>

 Amazon S3 は、マルチリージョンアクセスポイントを管理するための一連オペレーションを提供します。Amazon S3 は、これらのオペレーションの一部を同期的に処理し、一部を非同期的に処理します。非同期オペレーションを呼び出すと、Amazon S3 は最初にリクエストされたオペレーションを同期的に承認します。承認が成功すると、リクエストされたオペレーションの進行状況と結果を追跡するために使用できるトークンが Amazon S3 から返されます。

**注記**  
Amazon S3 コンソールを介して実行されるリクエストは常に同期されます。コンソールは、リクエストが完了するまで待機してから、別のリクエストを送信できるようにします。

コンソールを使用するか、AWS CLI、AWS SDK、または REST API で `DescribeMultiRegionAccessPointOperation` を使用して、非同期オペレーションの現在のステータスと結果を表示できます。Amazon S3 は、非同期オペレーションへの応答で追跡用トークンを提供します。その追跡用トークンを、`DescribeMultiRegionAccessPointOperation` への引数として含めます。追跡用トークンを含めると、Amazon S3 はその後、エラーや関連するリソース情報を含む、指定されたオペレーションの現在のステータスと結果を返します。Amazon S3 は `DescribeMultiRegionAccessPointOperation` オペレーションを同期的に実行します。

マルチリージョンアクセスポイントの作成または保守のすべてのコントロールプレーンリクエストは、`US West (Oregon)` リージョンにルーティングされる必要があります。マルチリージョンアクセスポイントのデータプレーンリクエストでは、リージョンを指定する必要はありません。マルチリージョンアクセスポイントのフェイルオーバーコントロールプレーンの場合、リクエストは 5 つのサポートされているリージョンのいずれかにルーティングされる必要があります。マルチリージョンアクセスポイントのサポートされているリージョンの詳細については、「[マルチリージョンアクセスポイントの制約および制限事項](MultiRegionAccessPointRestrictions.md)」を参照してください。

さらに、`s3:ListAllMyBuckets` アクセス許可を、ユーザー、ロール、またはマルチリージョンアクセスポイントを管理するためのリクエストを作成する他の AWS Identity and Access Management (IAM) エンティティに付与します。

以下の例は、Amazon S3 の互換性のあるオペレーションでマルチリージョンアクセスポイントを使用する方法を示しています。

**Topics**
+ [マルチリージョンアクセスポイントと AWS のサービス および AWS SDK との互換性](#mrap-api-support)
+ [S3 オペレーションとマルチリージョンアクセスポイントの互換性](#mrap-operations-support)
+ [マルチリージョンアクセスポイントのルーティング設定を表示する](#query-mrap-routing-configuration)
+ [基になる Amazon S3 バケットポリシーを更新する](#update-underlying-bucket-policy)
+ [マルチリージョンアクセスポイントのルート設定を更新する](#update-mrap-route-configuration)
+ [マルチリージョンアクセスポイントのバケットへのオブジェクトの追加](#add-bucket-mrap)
+ [マルチリージョンアクセスポイントからのオブジェクトの取得](#get-object-mrap)
+ [マルチリージョンアクセスポイントの基礎となるバケットに保存されているオブジェクトのリスト表示](#list-objects-mrap)
+ [マルチリージョンアクセスポイントで署名付き URL を使用する](#use-presigned-url-mrap)
+ [マルチリージョンアクセスポイントでリクエスタ支払いが設定されたバケットを使用する](#use-requester-pays-mrap)

## マルチリージョンアクセスポイントと AWS のサービス および AWS SDK との互換性
<a name="mrap-api-support"></a>

Amazon S3 バケット名を必要とするアプリケーションで、マルチリージョンアクセスポイントを使用するには、AWS SDK を使用してリクエストするときにマルチリージョンアクセスポイントの Amazon リソースネーム (ARN) を使用します。AWS SDK がマルチリージョンのアクセスポイントと互換性があるかどうかを確認するには、「[AWS SDK との互換性](https://docs.aws.amazon.com/sdkref/latest/guide/feature-s3-mrap.html#s3-mrap-sdk-compat)」を参照してください。

## S3 オペレーションとマルチリージョンアクセスポイントの互換性
<a name="mrap-operations-support"></a>

次の Amazon S3 データプレーン API オペレーションを使用して、マルチリージョンアクセスポイントに関連付けられているバケット内のオブジェクトに対してアクションを実行できます。以下の S3 オペレーションでは、マルチリージョンアクセスポイント ARN を使用できます。
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjectTagging.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjectTagging.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectLegalHold.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectLegalHold.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectRetention.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectRetention.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadObject.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectAcl.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectAcl.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectLegalHold.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectLegalHold.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectRetention.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectRetention.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectTagging.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectTagging.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html)

**注記**  
マルチリージョンアクセスポイントは、マルチリージョンアクセスポイント ARN を使用する場合に限り、マルチリージョンアクセスポイントを宛先とするコピー操作をサポートします。

マルチリージョンアクセスポイントの作成と管理には、次の Amazon S3 コントロールプレーンオペレーションを使用できます。
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateMultiRegionAccessPoint.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateMultiRegionAccessPoint.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeMultiRegionAccessPointOperation.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeMultiRegionAccessPointOperation.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPoint.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPoint.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPointPolicy.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPointPolicy.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPointPolicyStatus.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPointPolicyStatus.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPointRoutes.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetMultiRegionAccessPointRoutes.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListMultiRegionAccessPoints.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListMultiRegionAccessPoints.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutMultiRegionAccessPointPolicy.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutMultiRegionAccessPointPolicy.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_SubmitMultiRegionAccessPointRoutes.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_SubmitMultiRegionAccessPointRoutes.html)

## マルチリージョンアクセスポイントのルーティング設定を表示する
<a name="query-mrap-routing-configuration"></a>

------
#### [ AWS CLI ]

次のコマンド例では、マルチリージョンアクセスポイントのルート設定を取得して、バケットの現在のルーティングステータスを確認できるようにします。このコマンド例を実行するには、`user input placeholders` をユーザー自身の情報に置き換えます。

```
aws s3control get-multi-region-access-point-routes
--region eu-west-1
--account-id 111122223333
--mrap arn:aws:s3::111122223333:accesspoint/abcdef0123456.mrap
```

------
#### [ SDK for Java ]

次の SDK for Java コードは、マルチリージョンアクセスポイントのルート設定を取得して、バケットの現在のルーティングステータスを確認できるようにします。この構文例を実行するには、`user input placeholders` をユーザー自身の情報に置き換えます。

```
S3ControlClient s3ControlClient = S3ControlClient.builder()
    .region(Region.US_EAST_1)
    .credentialsProvider(credentialsProvider)
    .build();
 
GetMultiRegionAccessPointRoutesRequest request = GetMultiRegionAccessPointRoutesRequest.builder()
    .accountId("111122223333")
    .mrap("arn:aws:s3::111122223333:accesspoint/abcdef0123456.mrap")
    .build();
 
GetMultiRegionAccessPointRoutesResponse response = s3ControlClient.getMultiRegionAccessPointRoutes(request);
```

------
#### [ SDK for JavaScript ]

次の SDK for JavaScript コードは、マルチリージョンアクセスポイントのルート設定を取得して、バケットの現在のルーティングステータスを確認できるようにします。この構文例を実行するには、`user input placeholders` をユーザー自身の情報に置き換えます。

```
const REGION = 'us-east-1'
 
const s3ControlClient = new S3ControlClient({
  region: REGION
})
 
export const run = async () => {
  try {
    const data = await s3ControlClient.send(
      new GetMultiRegionAccessPointRoutesCommand({
        AccountId: '111122223333',
        Mrap: 'arn:aws:s3::111122223333:accesspoint/abcdef0123456.mrap',
      })
    )
    console.log('Success', data)
    return data
  } catch (err) {
    console.log('Error', err)
  }
}
 
run()
```

------
#### [ SDK for Python ]

次の SDK for Python コードは、マルチリージョンアクセスポイントのルート設定を取得して、バケットの現在のルーティングステータスを確認できるようにします。この構文例を実行するには、`user input placeholders` をユーザー自身の情報に置き換えます。

```
s3.get_multi_region_access_point_routes(
        AccountId=111122223333,
        Mrap=arn:aws:s3::111122223333:accesspoint/abcdef0123456.mrap)['Routes']
```

------

## 基になる Amazon S3 バケットポリシーを更新する
<a name="update-underlying-bucket-policy"></a>

適切なアクセスを許可するには、基になる Amazon S3 バケットポリシーも更新する必要があります。以下の例では、アクセスコントロールをマルチリージョンアクセスポイントポリシーに委任します。マルチリージョンアクセスポイントポリシーにアクセスコントロールを委任すると、マルチリージョンアクセスポイントを介してリクエストを行うときバケットポリシーがアクセスコントロールに使用されなくなります。

マルチリージョンアクセスポイントポリシーにアクセスコントロールを委任するバケットポリシーの例を次に示します。このバケットポリシーの例を実行するには、`user input placeholders` をユーザー自身の情報に置き換えます。このポリシーを AWS CLI `put-bucket-policy` コマンドを使用して適用するには、次の例に示すように、ポリシーをファイルに保存します (例：`policy.json`)。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": { 
        "AWS": "arn:aws:iam::444455556666:root" 
      },
      "Action": [
        "s3:GetObject",
        "s3:PutObject",
        "s3:DeleteObject",
        "s3:ListBucket"
      ],
      "Resource": [
        "arn:aws:s3:::amzn-s3-demo-bucket",
        "arn:aws:s3:::amzn-s3-demo-bucket/*"
      ],
      "Condition": {
        "StringEquals": {
          "s3:DataAccessPointAccount": "444455556666"
        }
      }
    }
  ]
}
```

------

次の `put-bucket-policy` 例では、更新された S3 バケットポリシーを S3 バケットに関連付けます。

```
aws s3api put-bucket-policy
  --bucket amzn-s3-demo-bucket
  --policy file:///tmp/policy.json
```

## マルチリージョンアクセスポイントのルート設定を更新する
<a name="update-mrap-route-configuration"></a>

以下のコマンド例では、マルチリージョンアクセスポイントのルート設定も更新します。マルチリージョンアクセスポイントのルートコマンドは、次の 5 つのリージョンに対して実行できます。
+ `ap-southeast-2`
+ `ap-northeast-1`
+ `us-east-1`
+ `us-west-2`
+ `eu-west-1`

マルチリージョンアクセスポイントのルーティング設定では、バケットをアクティブまたはパッシブのルーティングステータスに設定できます。アクティブバケットはトラフィックを受信しますが、パッシブバケットは受信しません。バケットの `TrafficDialPercentage` 値を `100` に設定するとアクティブ、`0` に設定するとパッシブになり、バケットのルーティングステータスを設定できます。

------
#### [ AWS CLI ]

以下のコマンド例では、マルチリージョンアクセスポイントのルーティング設定も更新します。この例では、`amzn-s3-demo-bucket1` がアクティブステータスに設定され、`amzn-s3-demo-bucket2` がパッシブに設定されています。このコマンドの例を実行するには、`user input placeholders` をユーザー自身の情報に置き換えます。

```
aws s3control submit-multi-region-access-point-routes
--region ap-southeast-2 
--account-id 111122223333
--mrap arn:aws:s3::111122223333:accesspoint/abcdef0123456.mrap
--route-updates Bucket=amzn-s3-demo-bucket1,TrafficDialPercentage=100
                Bucket=amzn-s3-demo-bucket2,TrafficDialPercentage=0
```

------
#### [ SDK for Java ]

次の SDK for Java コードは、マルチリージョンアクセスポイントのルーティング設定も更新します。この構文例を実行するには、`user input placeholders` をユーザー自身の情報に置き換えます。

```
S3ControlClient s3ControlClient = S3ControlClient.builder()
    .region(Region.ap-southeast-2)
    .credentialsProvider(credentialsProvider)
    .build();
 
SubmitMultiRegionAccessPointRoutesRequest request = SubmitMultiRegionAccessPointRoutesRequest.builder()
    .accountId("111122223333")
    .mrap("arn:aws:s3::111122223333:accesspoint/abcdef0123456.mrap")
    .routeUpdates(
        MultiRegionAccessPointRoute.builder()
            .region("eu-west-1")
            .trafficDialPercentage(100)
            .build(),
        MultiRegionAccessPointRoute.builder()
            .region("ca-central-1")
            .bucket("111122223333")
            .trafficDialPercentage(0)
            .build()
    )
    .build();
 
SubmitMultiRegionAccessPointRoutesResponse response = s3ControlClient.submitMultiRegionAccessPointRoutes(request);
```

------
#### [ SDK for JavaScript ]

次の SDK for JavaScript コードは、マルチリージョンアクセスポイントのルート設定も更新します。この構文例を実行するには、`user input placeholders` をユーザー自身の情報に置き換えます。

```
const REGION = 'ap-southeast-2'
 
const s3ControlClient = new S3ControlClient({
  region: REGION
})
 
export const run = async () => {
  try {
    const data = await s3ControlClient.send(
      new SubmitMultiRegionAccessPointRoutesCommand({
        AccountId: '111122223333',
        Mrap: 'arn:aws:s3::111122223333:accesspoint/abcdef0123456.mrap',
        RouteUpdates: [
          {
            Region: 'eu-west-1',
            TrafficDialPercentage: 100,
          },
          {
            Region: 'ca-central-1',
            Bucket: 'amzn-s3-demo-bucket1',
            TrafficDialPercentage: 0,
          },
        ],
      })
    )
    console.log('Success', data)
    return data
  } catch (err) {
    console.log('Error', err)
  }
}
 
run()
```

------
#### [ SDK for Python ]

次の SDK for Python コードは、マルチリージョンアクセスポイントのルート設定も更新します。この構文例を実行するには、`user input placeholders` をユーザー自身の情報に置き換えます。

```
s3.submit_multi_region_access_point_routes(
        AccountId=111122223333,
        Mrap=arn:aws:s3::111122223333:accesspoint/abcdef0123456.mrap, 
        RouteUpdates= [{
            'Bucket': amzn-s3-demo-bucket,
            'Region': ap-southeast-2, 
            'TrafficDialPercentage': 10
        }])
```

------

## マルチリージョンアクセスポイントのバケットへのオブジェクトの追加
<a name="add-bucket-mrap"></a>

マルチリージョンアクセスポイントに関連付けられているバケットにオブジェクトを追加するには、[https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html) オペレーションを使用できます。マルチリージョンアクセスポイントのすべてのバケットを同期させるには、[[クロスリージョンレプリケーション]](MultiRegionAccessPointBucketReplication.md) を有効にします。

**注記**  
このオペレーションを使用するには、マルチリージョンアクセスポイントの `s3:PutObject` アクセス許可が必要です。マルチリージョンアクセスポイントのアクセス許可の要件の詳細については、「[アクセス許可](MultiRegionAccessPointPermissions.md)」を参照してください。

------
#### [ AWS CLI ]

次の例のデータプレーンリクエストは、指定されたマルチリージョンアクセスポイントに *`example.txt`* をアップロードします。この例を実行するには、*`user input placeholders`* をユーザー自身の情報に置き換えます。

```
aws s3api put-object --bucket arn:aws:s3::123456789012:accesspoint/abcdef0123456.mrap --key example.txt --body example.txt
```

------
#### [ SDK for Java ]

```
S3Client s3Client = S3Client.builder()
        .build();
        
PutObjectRequest objectRequest = PutObjectRequest.builder()
        .bucket("arn:aws:s3::123456789012:accesspoint/abcdef0123456.mrap")
        .key("example.txt")
        .build();

s3Client.putObject(objectRequest, RequestBody.fromString("Hello S3!"));
```

------
#### [ SDK for JavaScript ]

```
const client = new S3Client({});

async function putObjectExample() {
    const command = new PutObjectCommand({
        Bucket: "arn:aws:s3::123456789012:accesspoint/abcdef0123456.mrap",
        Key: "example.txt",
        Body: "Hello S3!",
    });
    
    try {
        const response = await client.send(command);
        console.log(response);
    } catch (err) {
        console.error(err);
    }
}
```

------
#### [ SDK for Python ]

```
import boto3

client = boto3.client('s3')
client.put_object(
    Bucket='arn:aws:s3::123456789012:accesspoint/abcdef0123456.mrap',
    Key='example.txt',
    Body='Hello S3!'
)
```

------

## マルチリージョンアクセスポイントからのオブジェクトの取得
<a name="get-object-mrap"></a>

マルチリージョンアクセスポイントからオブジェクトを取得するには、[https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html) オペレーションを使用できます。

**注記**  
この API オペレーションを使用するには、マルチリージョンアクセスポイントの `s3:GetObject` アクセス許可が必要です。マルチリージョンアクセスポイントのアクセス許可の要件の詳細については、「[アクセス許可](MultiRegionAccessPointPermissions.md)」を参照してください。

------
#### [ AWS CLI ]

次のデータプレーンリクエストの例では、指定されたマルチリージョンアクセスポイントから *`example.txt`* を取得し、それを *`downloaded_example.txt`* としてダウンロードします。この例を実行するには、*`user input placeholders`* をユーザー自身の情報に置き換えます。

```
aws s3api get-object --bucket arn:aws:s3::123456789012:accesspoint/abcdef0123456.mrap --key example.txt downloaded_example.txt
```

------
#### [ SDK for Java ]

```
S3Client s3 = S3Client
   .builder()
   .build();

GetObjectRequest getObjectRequest = GetObjectRequest.builder()
    .bucket("arn:aws:s3::123456789012:accesspoint/abcdef0123456.mrap")
    .key("example.txt")
    .build();

s3Client.getObject(getObjectRequest);
```

------
#### [ SDK for JavaScript ]

```
const client = new S3Client({})

async function getObjectExample() {
    const command = new GetObjectCommand({
        Bucket: "arn:aws:s3::123456789012:accesspoint/abcdef0123456.mrap",
        Key: "example.txt"
    });
    
    try {
        const response = await client.send(command);
        console.log(response);
    } catch (err) {
        console.error(err);
    }
}
```

------
#### [ SDK for Python ]

```
import boto3

client = boto3.client('s3')
client.get_object(
    Bucket='arn:aws:s3::123456789012:accesspoint/abcdef0123456.mrap',
    Key='example.txt'
)
```

------

## マルチリージョンアクセスポイントの基礎となるバケットに保存されているオブジェクトのリスト表示
<a name="list-objects-mrap"></a>

マルチリージョンアクセスポイントの基礎となるバケットに保存されたオブジェクトのリストを返すには、[https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html) オペレーションを使用します。次のコマンド例では、マルチリージョンアクセスポイントの ARN を使用して、マルチリージョンアクセスポイントのすべてのオブジェクトがリスト表示されます。この場合、マルチリージョンアクセスポイントの ARN は次のようになります。

`arn:aws:s3::123456789012:accesspoint/abcdef0123456.mrap`

**注記**  
この API オペレーションを使用するには、マルチリージョンアクセスポイントと基礎となるバケットの `s3:ListBucket` アクセス許可が必要です。マルチリージョンアクセスポイントのアクセス許可の要件の詳細については、「[アクセス許可](MultiRegionAccessPointPermissions.md)」を参照してください。

------
#### [ AWS CLI ]

次のデータプレーンリクエストの例では、ARN で指定されたマルチリージョンアクセスポイントの基礎となるバケット内のオブジェクトをリスト表示します。この例を実行するには、*`user input placeholders`* をユーザー自身の情報に置き換えます。

```
aws s3api list-objects-v2 --bucket arn:aws:s3::123456789012:accesspoint/abcdef0123456.mrap
```

------
#### [ SDK for Java ]

```
S3Client s3Client = S3Client.builder()
        .build();
        
String bucketName = "arn:aws:s3::123456789012:accesspoint/abcdef0123456.mrap";

ListObjectsV2Request listObjectsRequest = ListObjectsV2Request
    .builder()
    .bucket(bucketName)
    .build();

 s3Client.listObjectsV2(listObjectsRequest);
```

------
#### [ SDK for JavaScript ]

```
const client = new S3Client({});

async function listObjectsExample() {
    const command = new ListObjectsV2Command({
        Bucket: "arn:aws:s3::123456789012:accesspoint/abcdef0123456.mrap",
    });
    
    try {
        const response = await client.send(command);
        console.log(response);
    } catch (err) {
        console.error(err);
    }
}
```

------
#### [ SDK for Python ]

```
import boto3

client = boto3.client('s3')
client.list_objects_v2(
    Bucket='arn:aws:s3::123456789012:accesspoint/abcdef0123456.mrap'
)
```

------

## マルチリージョンアクセスポイントで署名付き URL を使用する
<a name="use-presigned-url-mrap"></a>

署名付き URL を使用すると、他のユーザーが Amazon S3 マルチリージョンアクセスポイントを介して Amazon S3 バケットにアクセスするための URL を生成することができます。署名付き URL を作成したら、その署名付き URL を S3 アップロード (`PutObject`) や S3 ダウンロード (`GetObject`) などの特定のオブジェクトアクションに関連付けます。署名付き URL を共有すると、URL へのアクセス権を持つユーザーは、URL に埋め込まれたアクションを、元の署名ユーザーであるかのように実行できます。

署名付き URL には有効期限があります。有効期限に達すると、URL は機能しなくなります。

署名付き URL で S3 マルチリージョンアクセスポイントを使用する前に、Sigv4A アルゴリズムと [AWS SDK との互換性](https://docs.aws.amazon.com/sdkref/latest/guide/feature-s3-mrap.html#s3-mrap-sdk-compat)を確認してください。ご使用の SDK バージョンが、グローバル AWS リージョン リクエストの署名に使用される署名実装として SigV4AA をサポートしていることを確認してください。Amazon S3 での署名付き URL の使用について詳しくは、「[Sharing objects by using presigned URL](https://docs.aws.amazon.com/AmazonS3/latest/userguide/ShareObjectPreSignedURL.html)」(署名付き URL を使用してオブジェクトを共有する) を参照してください。

以下の例は、署名付き URL と共にマルチリージョンアクセスポイントを使用する方法を示しています。これらの例を使用するには、*`user input placeholders`* をユーザー自身の情報に置き換えます。

------
#### [ AWS CLI ]

```
aws s3 presign arn:aws:s3::123456789012:accesspoint/MultiRegionAccessPoint_alias/example-file.txt
```

------
#### [ SDK for Python ]

```
import logging
import boto3
from botocore.exceptions import ClientError

s3_client = boto3.client('s3',aws_access_key_id='xxx',aws_secret_access_key='xxx')
s3_client.generate_presigned_url(HttpMethod='PUT',ClientMethod="put_object", Params={'Bucket':'arn:aws:s3::123456789012:accesspoint/abcdef0123456.mrap','Key':'example-file'})
```

------
#### [ SDK for Java ]

```
S3Presigner s3Presigner = S3Presigner.builder()
    .credentialsProvider(StsAssumeRoleCredentialsProvider.builder()
        .refreshRequest(assumeRole)
        .stsClient(stsClient)
        .build())
    .build();

GetObjectRequest getObjectRequest = GetObjectRequest.builder()
    .bucket("arn:aws:s3::123456789012:accesspoint/abcdef0123456.mrap")
    .key("example-file")
    .build();

GetObjectPresignRequest preSignedReq = GetObjectPresignRequest.builder()
    .getObjectRequest(getObjectRequest)
    .signatureDuration(Duration.ofMinutes(10))
    .build();

PresignedGetObjectRequest presignedGetObjectRequest = s3Presigner.presignGetObject(preSignedReq);
```

------

**注記**  
SigV4A を一時的なセキュリティ認証情報と共に使用する場合、例えば IAM ロールを使用する場合には、必ずグローバルエンドポイントではなく、AWS Security Token Service (AWS STS) 内のリージョンエンドポイントから一時的認証情報をリクエストしてください。AWS STS (`sts.amazonaws.com`) にグローバルエンドポイントを使用すると、AWS STS はグローバルエンドポイントから、Sig4A ではサポートされていない一時的な認証情報を生成します。その結果、エラーが発生します。この問題を解決するには、[AWS STS 用のリージョンエンドポイント](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html#id_credentials_region-endpoints)にリストされているいずれかのエンドポイントを使用してください。

## マルチリージョンアクセスポイントでリクエスタ支払いが設定されたバケットを使用する
<a name="use-requester-pays-mrap"></a>

マルチリージョンアクセスポイントに関連付けられている S3 [バケットがリクエスタ支払いを使用するように設定](https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysExamples.html)されている場合、リクエスタはバケットリクエスト、ダウンロードおよびマルチリージョンアクセスポイントに関連する費用を支払います。詳細については、「[Amazon S3 の料金](https://aws.amazon.com/s3/pricing/)」を参照してください。

リクエスタ支払いバケットに接続されたマルチリージョンアクセスポイントへのデータプレーンリクエストの例を次に示します。

------
#### [ AWS CLI ]

リクエスタ支払いバケットに接続したマルチリージョンアクセスポイントからオブジェクトをダウンロードするには、[https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3api/get-object.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3api/get-object.html) リクエストの一部として `--request-payer requester` を指定する必要があります。また、バケット内のファイルの名前と、ダウンロードファイルを保存する場所を指定する必要があります。

```
aws s3api get-object --bucket MultiRegionAccessPoint_ARN --request-payer requester --key example-file-in-bucket.txt example-location-of-downloaded-file.txt 
```

------
#### [ SDK for Java ]

リクエスタ支払いバケットに接続したマルチリージョンアクセスポイントからオブジェクトをダウンロードするには、`GetObject` リクエストの一部として `RequestPayer.REQUESTER` を指定する必要があります。また、バケット内のファイルの名前と、ファイルを保存する場所を指定する必要があります。

```
GetObjectResponse getObjectResponse = s3Client.getObject(GetObjectRequest.builder()
    .key("example-file.txt")
    .bucket("arn:aws:s3::
123456789012:accesspoint/abcdef0123456.mrap")
    .requestPayer(RequestPayer.REQUESTER)
    .build()
).response();
```

------

# マルチリージョンアクセスポイントから基盤となるリソースへのリクエストのモニタリングとログ記録
<a name="MultiRegionAccessPointMonitoring"></a>

Amazon S3 は、マルチリージョンアクセスポイントを介して行われたリクエストと、アクセスポイントを管理する API オペレーションに対するリクエスト (`CreateMultiRegionAccessPoint` や `GetMultiRegionAccessPointPolicy` など) をログに記録します。マルチリージョンアクセスポイントを介して Amazon S3 に行われたリクエストは、アクセスポイントのホスト名と共に、Amazon S3 サーバーのアクセスログと AWS CloudTrail のログに表示されます。アクセスポイントのホスト名は、`MRAP_alias.accesspoint.s3-global.amazonaws.com` という形式になります。例えば、次のバケットとマルチリージョンアクセスポイントの設定があるとします。
+ オブジェクト `my-image.jpg` を含む、リージョン `us-west-2` の `my-bucket-usw2` という名前のバケット。
+ オブジェクト `my-image.jpg` を含む、リージョン `ap-south-1` の `my-bucket-aps1` という名前のバケット。
+  `my-image.jpg` という名前のオブジェクト を含まないリージョン `eu-central-1` の `my-bucket-euc1` という名前のバケット。
+  名前が `my-mrap` であり、エイリアスが `mfzwi23gnjvgw.mrap` であるマルチリージョンアクセスポイントは、3 つのバケットすべてからのリクエストを満たすように設定されています。
+  お客様の AWS アカウント ID は `123456789012` です。

バケットから `my-image.jpg` を直接取得するリクエストは、ホスト名 `bucket_name.s3.Region.amazonaws.com` と共にログに表示されます。

代わりにマルチリージョンアクセスポイント経由でリクエストを行うと、Amazon S3 は最初に、異なるリージョン内のバケットのうち、どれが最も近いかを判断します。Amazon S3 は、リクエストを処理するために使用するバケットを決定した後、そのバケットにリクエストを送信し、マルチリージョンアクセスポイントのホスト名を使用してオペレーションを記録します。この例では、Amazon S3 がリクエストを `my-bucket-aps1` にリレーした場合、ログはホスト名 `mfzwi23gnjvgw.mrap.accesspoint.s3-global.amazonaws.com` を使用して、`my-bucket-aps1` から、`my-image.jpg` に対して成功した `GET` リクエストを反映します。

**重要**  
マルチリージョンアクセスポイントは、基になるバケットのデータコンテンツを認識しません。そのため、リクエストを受け取ったバケットには、リクエストされたデータが含まれていない可能性があります。例えば、Amazon S3 が `my-bucket-euc1` バケットが最も低いと判断した場合、ログはホスト名 `mfzwi23gnjvgw.mrap.accesspoint.s3-global.amazonaws.com` を使用して、`my-bucket-euc1` から `my-image.jpg` に対して失敗した `GET` リクエストを反映します。リクエストが代わりに `my-bucket-usw2` にルーティングされると、ログは成功した `GET` リクエストを表示します。

 Amazon S3 サーバーのアクセスログの詳細については、「[サーバーアクセスログによるリクエストのログ記録](ServerLogs.md)」を参照してください。AWS CloudTrail の詳細については、*AWS CloudTrail ユーザーガイド* の [AWS CloudTrail とは](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) を参照してください。

## マルチリージョンアクセスポイント管理 API オペレーションに対するリクエストのモニタリングとログ記録
<a name="MonitoringMultiRegionAccessPointAPIs"></a>

Amazon S3 は、`CreateMultiRegionAccessPoint` および `GetMultiRegionAccessPointPolicy` など、マルチリージョンアクセスポイントを管理するたいくつかの API オペレーションを提供します。AWS Command Line Interface (AWS CLI)、AWS SDK、または Amazon S3 REST API を使用して、これらの API オペレーションにリクエストを実行すると、Amazon S3 はこれらのリクエストを非同期的に処理します。リクエストに対して適切な許可がある場合、Amazon S3 は、リクエストに対してトークンを返します。このトークンは、`DescribeAsyncOperation` が実行中の非同期オペレーションのステータスを表示するのに役立ちます。Amazon S3 は、`DescribeAsyncOperation` リクエストを同期的に処理します。非同期リクエストのステータスを表示するには、Amazon S3 コンソール、AWS CLI、SDK、または REST API を使用できます。

**注記**  
コンソールには、過去 14 日以内に行われた非同期リクエストのステータスのみが表示されます。古いリクエストのステータスを表示するには、AWS CLI、SDK、または REST API を使用します。

 非同期管理オペレーションは、次の状態のいずれかになります。

NEW  
 Amazon S3 がリクエストを受け取り、オペレーションの実行準備を進めています。

IN\$1PROGRESS  
 Amazon S3 は現在、オペレーションを実行しています。

SUCCESS  
 オペレーションは成功しました。応答には、`CreateMultiRegionAccessPoint` リクエストのマルチリージョンアクセスポイントのエイリアスなど、関連情報が含まれます。

FAILED  
 このオペレーションは失敗しました。応答には、リクエストが失敗した理由を示すエラーメッセージが含まれます。

## AWS CloudTrail とマルチリージョンアクセスポイントの使用
<a name="MultiRegionAccessPointCloudTrail"></a>

AWS CloudTrail を使用して、AWS インフラストラクチャ全体のアカウントアクティビティを表示、検索、ダウンロード、アーカイブ、分析、応答できます。マルチリージョンのアクセスポイントと CloudTrail のログ記録では、次のことを識別できます。
+ 誰が、または何が、どのアクションを実行したか
+ どのリソースに基づいて処理が行われたか
+ イベントが発生した時刻
+ イベントに関するその他の詳細

このログ記録情報は、マルチリージョンアクセスポイントを通じて発生したアクティビティの分析と対応に役立ちます。

### マルチリージョンアクセスポイントの AWS CloudTrail のセットアップ方法
<a name="MultiRegionAccessPointCTSetup"></a>

マルチリージョンアクセスポイントの作成または保守に関するオペレーションで CloudTrail ログを有効にするには、米国西部 (オレゴン) リージョン内のイベントを記録するように CloudTrail ログを設定する必要があります。リクエストの実行時にどのリージョンにいるか、またはマルチリージョンアクセスポイントがどのリージョンをサポートしているかに関係なく、この方法でログ記録設定をセットアップする必要があります。マルチリージョンアクセスポイントを作成または維持するためのすべてのリクエストは、米国西部 (オレゴン) リージョンを通じてルーティングされます。このリージョンを既存の追跡に追加するか、このリージョンとマルチリージョンアクセスポイントに関連付けられたすべてのリージョンを含む新しい追跡を作成することをお勧めします。

Amazon S3 は、マルチリージョンアクセスポイントを介して行われたすべてのリクエストと、アクセスポイントを管理する API に対するリクエスト (`CreateMultiRegionAccessPoint` や `GetMultiRegionAccessPointPolicy` など) をログに記録します。マルチリージョンアクセスポイントを介してこれらのリクエストを記録すると、マルチリージョンアクセスポイントのホスト名を使用して AWS CloudTrail ログに表示されます。例えば、マルチリージョンのアクセスポイントを介してバケットにエイリアス `mfzwi23gnjvgw.mrap` でリクエストを行った場合、CloudTrail ログのエントリのホスト名は `mfzwi23gnjvgw.mrap.accesspoint.s3-global.amazonaws.com` になります。

マルチリージョンアクセスポイントは、リクエストを最も近いバケットにルーティングします。この動作のため、マルチリージョンアクセスポイントの CloudTrail ログを見ると、基となるバケットに対してリクエストが行われていることがわかります。ここうしたリクエストの一部は、マルチリージョンアクセスポイントを経由しない、バケットへの直接リクエストである場合があります。トラフィックを確認するときは、この点に注意してください。バケットがマルチリージョンアクセスポイントにある場合でも、マルチリージョンアクセスポイントを経由しなくても、そのバケットに対してリクエストを直接行うことができます。

マルチリージョンアクセスポイントの作成と管理には、非同期イベントがあります。非同期リクエストでは、CloudTrail ログに完了イベントはありません。リクエストの再試行の詳細については、「[マルチリージョンアクセスポイント管理 API オペレーションに対するリクエストのモニタリングとログ記録](#MonitoringMultiRegionAccessPointAPIs)」を参照してください。

 AWS CloudTrail の詳細については、*AWS CloudTrail ユーザーガイド* の [AWS CloudTrail とは](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) を参照してください。