

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 透過多區域存取點提出請求
<a name="MultiRegionAccessPointRequests"></a>

類似於其他資源，Amazon S3 多區域存取點具有 Amazon Resource Name (ARN)。您可以使用這些 ARNs，透過 AWS Command Line Interface (AWS CLI)、 AWS SDKs 或 Amazon S3 API 將請求導向多區域存取點。您也可以使用這些 ARN 來識別存取控制政策中的多區域存取點。多區域存取點 ARN 不會包含或揭露多區域存取點的名稱。如需 ARN 的詳細資訊，請參閱《AWS 一般參考》**中的 [Amazon Resource Name (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` 代表由 擁有的具有別名 `mfzwi23gnjvgw.mrap`的多區域存取點 AWS 帳戶 `123456789012`。
+ `arn:aws:s3::123456789012:accesspoint/*` 代表帳戶 `123456789012` 下的所有多區域存取點。此 ARN 與帳戶 `123456789012` 的所有多區域存取點相符，但不符合任何區域 Amazon S3 Access Points，因為 ARN 不包含 AWS 區域。此 ARN `arn:aws:s3:us-west-2:123456789012:accesspoint/*` 與帳戶 `123456789012` 的區域 `us-west-2` 中的所有區域 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 中的資料。請求可以從公有網際網路導向至這個主機名稱。如果您已針對多區域存取點設定一或多個網際網路閘道，則請求也可以從公有網際網路或虛擬私有雲端 (VPC)導向至這個主機名稱。如需建立 VPC 介面端點以搭配使用多區域存取點的詳細資訊，請參閱 [設定多區域存取點以搭配 使用 AWS PrivateLink](MultiRegionAccessPointsPrivateLink.md)。

若要使用 VPC 端點，從 VPC 透過多區域存取點提出請求，您可以使用 AWS PrivateLink。當您使用 向多區域存取點提出請求時 AWS PrivateLink，您無法直接使用以 結尾的端點特定區域 DOMAIN NAME SYSTEM (DNS) 名稱`region.vpce.amazonaws.com`。此主機名稱不會具有與其相關聯的憑證，因此無法直接使用它。您仍然可以使用 VPC 端點的公有 網域名稱系統 (DNS) 名稱作為 `CNAME` 或 `ALIAS` 目標。或者，您可以在端點上啟用私有 網域名稱系統 (DNS)，並使用標準的多區域存取點 `MultiRegionAccessPoint_alias.accesspoint.s3-global.amazonaws.com` 網域名稱系統 (DNS) 名稱，如本節所述。

當您透過多區域存取點，對 API 進行 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-global.amazonaws.com` 而非 `s3.amazonaws.com`。
+ 多區域存取點請求必須使用簽章版本 4A (SigV4A) 進行簽署。當您使用 AWS SDKs時，軟體開發套件會自動將 SigV4 轉換為 SigV4A。因此，請確認您的 [AWS SDK 支援](https://docs.aws.amazon.com/sdkref/latest/guide/feature-s3-mrap.html) SigV4a 作為簽署實作，用來簽署全域 AWS 區域 請求。如需 SigV4A 的詳細資訊，請參閱《》中的[簽署 AWS API 請求](https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html)*AWS 一般參考*。

## 多區域存取點和 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 多區域存取點可以簡化多個 Amazon S3 儲存貯體的資料存取 AWS 區域。多區域存取點是具名全域端點，您可以用來執行 Amazon S3 資料存取物件操作，例如 `GetObject` 和 `PutObject`。每個多區域存取點都可對透過全域端點提出的任何請求具有不同的許可和網路控制。

每個多區域存取點也可以強制執行自訂的存取政策，該政策可結合附加至基礎儲存貯體的儲存貯體政策運作。跨帳戶請求要成功，下列政策都必須允許操作：
+ 多區域存取點政策
+ underlying AWS Identity and Access Management (IAM) 政策
+ 基礎儲存貯體政策 (請求的路由位置)

**注意**  
對於相同帳戶請求，只需要授予適當存取權的基礎 IAM 政策。

您可以將任何多區域存取點政策設定為僅接受來自特定 IAM 使用者或群組的請求。如需如何執行此操作的範例，請參閱 [多區域存取點政策範例](#MultiRegionAccessPointPolicyExamples) 中的範例 2。若要限制只能透過私有網絡存取 Amazon S3 資料，您可以將多區域存取點政策設定為僅接受來自虛擬私有雲端 (VPC) 的請求。

例如，假設您使用`AppDataReader` AWS 帳戶中名為 的使用者，透過多區域存取點提出`GetObject`請求。為了協助確保請求不會遭到拒絕，`AppDataReader` 使用者必須透過多區域存取點及多區域存取點下的每個儲存貯體獲授予 `s3:GetObject` 許可。`AppDataReader` 將無法從任何未授予此許可的儲存貯體中擷取資料。

**重要**  
透過儲存貯體名稱或 Amazon Resource Name (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 管理主控台 ，並在 [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)：// 開啟 Amazon S3 主控台。

1. 在左導覽窗格中，選擇 **Multi-Region Access Points** (多區域存取點)。

1. 選擇您要檢閱的多區域存取點名稱。

1. 選擇**許可**索引標籤。

1. 在 **Block Public Access settings for this 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`。每個多區域存取點只能有一個政策，因此對 `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 管理主控台 ，並在 [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)：// 開啟 Amazon S3 主控台。

1. 在左導覽窗格中，選擇 **Multi-Region Access Points** (多區域存取點)。

1. 選擇您要編輯其政策的多區域存取點名稱。

1. 選擇**許可**索引標籤。

1. 向下捲動至 **Multi-Region Access Point policy** (多區域存取點政策)。選擇 **Edit** (編輯)來更新政策 (以 JSON 表示)。

1. **Edit Multi-Region Access Point policy** (編輯多區域存取點政策) 頁面即會出現。您可以直接將政策輸入文字欄位中，也可以選擇 **Add statement** (新增陳述式)，從下拉式清單中選取政策元素。
**注意**  
主控台會自動顯示多區域存取點的 Amazon Resource Name (ARN)，您可以在政策中使用該 ARN。例如多區域存取點政策，請見 [多區域存取點政策範例](#MultiRegionAccessPointPolicyExamples)。

## 多區域存取點政策範例
<a name="MultiRegionAccessPointPolicyExamples"></a>

Amazon S3 多區域存取點支援 AWS Identity and Access Management (IAM) 資源政策。您可以使用這些政策，依資源、使用者或其他條件控制多區域存取點的使用。若要讓應用程式或使用者能夠透過多區域存取點存取物件，多區域存取點和基礎儲存貯體都必須允許該相同的存取。

若要允許同時對多區域存取點和基礎儲存貯體的存取，請執行下列其中一項操作：
+ **(建議)** 若要在使用 Amazon S3 多區域存取點時簡化存取控制，請將 Amazon S3 儲存貯體的存取控制委派給多區域存取點。如需如何執行此操作的範例，請參閱本節中的範例 1。
+ 將多區域存取點政策中的相同許可新增至基礎儲存貯體政策。

**重要**  
透過儲存貯體名稱或 Amazon Resource Name (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 - 在您的多區域存取點政策中將帳戶存取權授予多區域存取點**  
下列多區域存取點政策允許帳戶 `123456789012` 許可，以列出和讀取由 *`MultiRegionAccessPoint_ARN`* 定義多區域存取點中包含的物件。    
****  

```
{
  "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 - 允許儲存貯體清單的多區域存取點政策**  
下列多區域存取點政策允許帳戶 `123456789012` 許可，以列出由 *`MultiRegionAccessPoint_ARN`* 定義多區域存取點中包含的物件。

# 多區域存取點約束與限制
<a name="MultiRegionAccessPointRestrictions"></a>

Amazon S3 中的多區域存取點具有以下約束與限制：

## 名稱和別名
<a name="MultiRegionAccessPointRestrictions-Names"></a>

多區域存取點名稱必須符合下列要求：
+  在單一 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 儲存體部落格》**上的[跨多個區域建置主動-主動鄰近型應用程式](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 時，請提供您的登入資料，而對多區域存取點的請求將使用 Signature 第 4A 版，無需其他組態。請務必檢查您的 [AWS SDK](https://docs.aws.amazon.com/sdkref/latest/guide/feature-s3-mrap.html) 與 SigV4a 演算法的相容性。如需 SigV4A 的詳細資訊，請參閱《》中的[簽署 AWS API 請求](https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html)*AWS 一般參考*。
**注意**  
若要搭配臨時安全登入資料使用 SigV4A，例如使用 AWS Identity and Access Management (IAM) 角色時，您可以從 Regional AWS Security Token Service (AWS STS) 端點請求臨時登入資料。如果您從全域 AWS STS 端點請求臨時憑證 (`sts.amazonaws.com`)，則必須先將全域端點工作階段權杖的區域相容性設定為在所有 AWS 區域中有效。如需詳細資訊，請參閱《*IAM 使用者指南*[AWS STS 》中的在 中管理 AWS 區域](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html) 。

## Amazon S3 API 操作
<a name="MultiRegionAccessPointRestrictions-API"></a>
+ 只有在使用多區域存取點 ARN 時，才支援 `CopyObject` 做為目的地。
+ 不支援 S3 Batch Operations 功能。

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

不支援 AWS SDKs。若要確認多區域存取點支援哪些 AWS SDKs，請參閱[與 AWS SDKs相容性](https://docs.aws.amazon.com/sdkref/latest/guide/feature-s3-mrap.html#s3-mrap-sdk-compat)。

## Service Quotas
<a name="MultiRegionAccessPointRestrictions-Quotas"></a>

請注意下列服務配額限制：
+ 每個帳戶最多可有 100 個多區域存取點。
+ 單一多區域存取點的限制為 17 個區域。

## 建立、刪除或修改多區域存取點
<a name="MultiRegionAccessPointRestrictions-Modifying"></a>

當您建立、刪除或修改多區域存取點時，請注意下列規則和限制：
+ 建立多區域存取點之後，您就無法從多區域存取點組態新增、修改或刪除儲存貯體。若要變更儲存貯體，您必須刪除整個多區域存取點並新建一個。如果刪除多區域存取點中的跨帳戶儲存貯體，重新連接此儲存貯體的唯一方法是，使用該帳戶中相同的名稱與區域，重新建立儲存貯體。
+ 只有在刪除多區域存取點之後，才能刪除多區域存取點中使用的基礎儲存貯體 (位在相同帳戶中)。

## 區域支援
<a name="MultiRegionAccessPointRestrictions-RegionSupport"></a>

**控制平面請求**

所有建立或維護多區域存取點的控制平面請求，都必須路由至 `US West (Oregon)` 區域。對於多區域存取點資料平面請求，不需要指定區域。

對於多區域存取點容錯移轉控制平面，請求必須路由至這五個受支援區域的其中一個。
+ `US East (N. Virginia)`
+ `US West (Oregon)`
+ `Asia Pacific (Sydney)`
+ `Asia Pacific (Tokyo)`
+ `Europe (Ireland)`

**預設啟用的區域**

您的多區域存取點支援下列預設 AWS 區域 （預設會在[您的 中啟用](https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-regions.html)) 中的儲存貯體 AWS 帳戶：
+ `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 區域 （預設會在[您的 中停用](https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-regions.html)) 中的儲存貯體 AWS 帳戶：
+ `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 帳戶管理參考指南*》中的[啟用或停用獨立帳戶的 區域](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 在滿足請求時*不會*考慮物件的名稱。這表示即便一個物件存在於多區域存取點的一個儲存貯體中，您的請求仍可以被路由到不包含該物件的儲存貯體。這樣一來，系統將會向用戶端  傳回 404 錯誤訊息。

  為避免 404 錯誤，建議您為儲存貯體設定 S3 跨區域複寫 (CRR)。當您想要的物件位於多區域存取點的儲存貯體中，但它不位於請求要路由到的特定儲存貯體中時，複寫便有助於解決潛在問題。如需設定複寫的詳細資訊，請參閱 [設定複寫以搭配多區域存取點使用](MultiRegionAccessPointBucketReplication.md)。

  為了確保使用您想要的特定物件來滿足您的請求，也建議您開啟儲存貯體版本控制，並在請求中包含版本 ID。這個方式有助於確保您擁有所要尋找的物件的正確版本。啟用版本控制的儲存貯體也可讓您復原意外覆寫的物件。如需更多詳細資訊，請參閱[在 S3 儲存貯體中使用 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` 請求) 都會導向至處於主動狀態的儲存貯體 (位於某個區域)，並遠離處於被動狀態的儲存貯體 (位於另一個區域)。

如果您已使用雙向複寫規則啟用 S3 跨區域複寫 (CRR)，則可以在容錯移轉期間將您的儲存貯體保持同步。此外，如果您已在主動-主動組態中啟用 CRR，Amazon S3 多區域存取點也可以從最接近的儲存貯體位置擷取資料，進而改善應用程式效能。

## AWS 區域 支援
<a name="RegionSupport"></a>

使用 Amazon S3 多區域存取點容錯移轉控制，您的 S3 儲存貯體可以位於支援多區域存取點的 [17 個區域](https://docs.aws.amazon.com/AmazonS3/latest/userguide/MultiRegionAccessPointRestrictions.html)中的任何一個區域。您可以一次跨任何兩個區域啟動容錯移轉。

**注意**  
雖然一次只能在兩個區域之間啟動容錯移轉，但您可以在多區域存取點中同時個別更新多個區域的路由狀態。

下列主題示範如何使用和管理 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 管理主控台：**編輯路由狀態**和**容錯移轉**。您可以如下使用這些控制項：
+ **編輯路由狀態** – 您可以選擇編輯路由狀態，在多區域存取點的單一請求 AWS 區域 中手動**編輯高達 17 的路由狀態**。您可以基於作下列用途使用 **Edit routing status** (編輯路由狀態)：
  + 設定或編輯多區域存取點中一或多個區域的路由狀態
  + 將兩個區域設定為處於主動-被動狀態，來建立多區域存取點的容錯移轉組態
  + 手動容錯移轉您的區域
  + 在區域之間手動切換流量
+ **Failover** (容錯移轉) - 當您選擇 **Failover** (容錯移轉) 來啟動容錯移轉時，只會更新已設定為處於主動-被動狀態之兩個區域的路由狀態。在您透過選擇 **Failover** (容錯移轉) 所啟動的容錯移轉期間，會自動切換兩個區域之間的路由狀態。

## 設定多區域存取點中區域的路由狀態
<a name="editing-mrap-routing-status"></a>

您可以透過在多區域存取點詳細資訊頁面上的**容錯移轉組態**區段 AWS 區域 中選擇**編輯路由狀態，在多區域存取點的單一請求中手動更新最多 17 個路由狀態**。不過，當您選擇 **Failover** (容錯移轉) 來啟動容錯移轉時，只會更新已設定為處於主動-被動狀態之兩個區域的路由狀態。在您透過選擇 **Failover** (容錯移轉) 所啟動的容錯移轉期間，會自動切換兩個區域之間的路由狀態。

您可以基於下列用途使用 **Edit routing status** (編輯路由狀態) (如下列程序所述)：
+ 設定或編輯多區域存取點中一或多個區域的路由狀態
+ 將兩個區域設定為處於主動-被動狀態，來建立多區域存取點的容錯移轉組態
+ 手動容錯移轉您的區域
+ 在區域之間手動切換流量

### 使用 S3 主控台
<a name="update-mrap-routing-console"></a>

**更新多區域存取點中區域的路由狀態**



1. 登入 AWS 管理主控台。

1. 開啟位於 [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/) 的 Amazon S3 主控台。

1. 在左導覽窗格中，選擇 **Multi-Region Access Points** (多區域存取點)。

1. 選擇您要更新的多區域存取點。

1. 選擇 **Replication and failover** (複寫和容錯移轉) 索引標籤。

1. 選取一或多個您要編輯其路由狀態的區域。
**注意**  
若要啟動容錯移轉，必須至少 AWS 區域 將一個 指定為**作用中**，並且必須在多區域存取點中將一個區域指定為**被動**。

1. 選擇 **Edit routing status** (編輯路由狀態)。

1. 在出現的對話方塊中，針對每個區域的 **Routing status** (路由狀態) 選取 **Active** (主動) 或 **Passive** (被動)。

   主動狀態允許將流量路由至該區域。被動狀態阻止任何流量導向至該地區。

   如果您要為多區域存取點建立容錯移轉組態或啟動容錯移轉， AWS 區域 則必須至少將一個 指定為**作用中**，且多區域存取點中必須將一個區域指定為**被動**。

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 路由命令：  
`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 分鐘內完成。

您可以 AWS 區域 一次跨任兩個 （支援多區域存取點的 [17 個區域中](https://docs.aws.amazon.com/AmazonS3/latest/userguide/MultiRegionAccessPointRestrictions.html)) 啟動容錯移轉。然後，容錯移轉事件會記錄在 AWS CloudTrail中。容錯移轉完成後，您可以在 Amazon CloudWatch 中監控 Amazon S3 流量，以及新主動區域的任何流量路由更新。

**重要**  
若要在資料複寫期間跨儲存貯體將所有中繼資料和物件保持同步，建議您建立雙向複寫規則，並啟用複本修改同步，然後再設定您的容錯移轉控制。  
雙向複寫規則有助於確保將資料寫入流量容錯移轉至其中的 Amazon S3 儲存貯體時，該資料隨後會複寫回來源儲存貯體。複本修改同步有助於確保在雙向複寫期間，物件中繼資料也會在儲存貯體之間同步。  
如需設定複寫以支援容錯移轉的詳細資訊，請參閱 [設定複寫以搭配多區域存取點使用](MultiRegionAccessPointBucketReplication.md)。

**在複寫的儲存貯體之間啟動容錯移轉**

1. 登入 AWS 管理主控台。

1. 開啟位於 [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/) 的 Amazon S3 主控台。

1. 在左導覽窗格中，選擇 **Multi-Region Access Points** (多區域存取點)。

1. 選擇您要用來啟動容錯移轉的多區域存取點。

1. 選擇 **Replication and failover** (複寫和容錯移轉) 索引標籤。

1. 向下捲動至 **Failover configuration** (容錯移轉組態) 區段，然後選取兩個 AWS 區域。
**注意**  
若要啟動容錯移轉，必須至少 AWS 區域 將一個 指定為**作用中**，且必須在多區域存取點中將一個區域指定為**被動**。主動狀態允許將流量導向至某個區域。被動狀態阻止任何流量導向至該地區。

1. 選擇 **Failover (容錯移轉)**。

1. 在對話方塊中，再次選擇 **Failover** (容錯移轉) 來啟動容錯移轉程序。在此過程中，會自動切換兩個區域的路由狀態。所有新流量都會導向到變成主動的區域，並且流量會阻止導向至變成被動的區域。重新導向流量大約需要 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. 開啟位於 [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/) 的 Amazon 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
```

**注意**  
此命令只能針對下列五個區域執行：  
`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 錯誤的請求如果您在更新容錯移轉組態時輸入無效的多區域存取點 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 速度變慢：如果您在短時間內傳送太多請求，就會發生此錯誤。遭拒的請求會導致錯誤。
+ HTTP 409 衝突：當兩個以上並行路由組態更新請求將單一多區域存取點設為目標時，就會發生此錯誤。第一個請求成功，但任何其他請求都會失敗並顯示錯誤。
+ 不允許 HTTP 405 方法：當您在啟動容錯移轉時選取只有一個 的多區域存取點 AWS 區域 時，會發生此錯誤。您必須選取兩個區域，然後才能啟動容錯移轉。否則會傳回一個錯誤。

# 設定複寫以搭配多區域存取點使用
<a name="MultiRegionAccessPointBucketReplication"></a>

當您對多區域存取點端點提出請求時，Amazon S3 會自動將請求路由到最接近您的儲存貯體。在做出這個決策時，Amazon S3 不會考慮請求的內容。如果您向 `GET` 物件提出請求，則您的請求可能會被路由到沒有此物件複本的儲存貯體。如果發生這種情況，您會收到 HTTP 狀態碼 404 (找不到) 錯誤。如需有關多區域存取點請求路由的詳細資訊，請參閱 [多區域存取點請求路由](MultiRegionAccessPointRequestRouting.md)。

如果您希望多區域存取點能夠擷取物件，而不管哪個儲存貯體收到請求，則您必須設定 Amazon S3 跨區域複寫 (CRR)。

 例如，請考慮具有三個儲存貯體的多區域存取點：
+ 區域 `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` 

在此情況下，如果您對物件 `my-image.jpg` 提出 `GetObject` 請求，則該請求的成功與否取決於哪個儲存貯體會收到您的請求。由於 Amazon S3 不會考慮請求的內容，因此可能會將您的 `GetObject` 請求路由到 `amzn-s3-demo-bucket` 儲存貯體 (如果該儲存貯體回應最接近)。即使您的物件位於多區域存取點的儲存貯體中，您也會收到 404 (找不到) 錯誤，因為接收請求的個別儲存貯體沒有該物件。

啟用跨區域複寫 (CRR) 可協助避免此結果。使用適當的複製規則，`my-image.jpg` 物件便會複製到 `amzn-s3-demo-bucket` 儲存貯體。因此，如果 Amazon S3 將您的請求路由到該儲存貯體，您現在可以擷取物件。

對指派給多區域存取點的儲存貯體，複寫功能會正常運作。Amazon S3 不會對位於多區域存取點中的儲存貯體執行任何特殊複寫處理。如需有關在您的儲存貯體中設定複寫的詳細資訊，請參閱 [設定即時複寫概觀](replication-how-setup.md)。

**搭配多區域存取點使用複寫的建議**  
如需在使用多區域存取點時取得最佳的複寫效能，建議您採取下列動作：
+ 設定 S3 複寫時間控制 (S3 RTC)。若要在可預測的時間範圍內跨不同區域複寫您的資料，您可以使用 S3 RTC。S3 RTC 會在 15 分鐘內，複寫 99.99% 在 Amazon S3 中存放的新物件 (由服務水準協議支援)。如需詳細資訊，請參閱[使用 S3 複寫時間控制來滿足合規要求](replication-time-control.md)。對於 S3 RTC 需另外付費。如需詳細資訊，請參閱 [Amazon S3 定價](https://aws.amazon.com/s3/pricing/)。
+ 使用雙向複寫，以支援在透過多區域存取點更新儲存貯體時，保持儲存貯體同步。如需詳細資訊，請參閱[針對您的多區域存取點建立雙向複寫規則](mrap-create-two-way-replication-rules.md)。
+ 建立跨帳戶多區域存取點，將資料複寫到個別 AWS 帳戶中的儲存貯體。此方法提供帳戶層級的分隔，因此可以從來源儲存貯體以外，不同區域的不同帳戶存取和複寫資料。設定跨帳戶多區域存取點無需額外費用。如果您是儲存貯體擁有者，但不擁有多區域存取點，則只需支付資料傳輸和請求費用。多區域存取點擁有者需支付資料路由和網際網路加速費用。如需詳細資訊，請參閱 [Simple Storage Service (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>

複寫規則可讓物件跨區域進行自動和非同步複製。單向複寫規則有助於確保資料完全從一個來源儲存貯體複寫 AWS 區域 到另一個區域中的目的地儲存貯體。當設定單向複寫時，會建立從來源儲存貯體 (*amzn-s3-demo-bucket*) 複寫至目的地儲存貯體 (*amzn-s3-demo-bucket*) 的複寫規則。如同所有複寫規則，您可以將單向複寫規則套用至整個 Amazon S3 儲存貯體，也可以套用至由字首或物件索引標籤篩選的物件子集。

**重要**  
如果您的使用者只會使用目的地儲存貯體中的物件，建議您使用單向複寫。如果您的使用者要上傳或修改目的地儲存貯體中的物件，請使用雙向複寫，保持所有儲存貯體同步。如果您打算將多區域存取點用於容錯移轉，建議您使用雙向複寫。若要設定雙向複寫，請參閱 [針對您的多區域存取點建立雙向複寫規則](mrap-create-two-way-replication-rules.md)。

**針對您的多區域存取點建立單向複寫規則**

1. 登入 AWS 管理主控台 ，並在 [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)：// 開啟 Amazon S3 主控台。

1. 在左導覽窗格中，選擇 **Multi-Region Access Points** (多區域存取點)。

1. 選擇多區域存取點名稱。

1. 選擇 **Replication and failover** (複寫和容錯移轉) 索引標籤。

1. 向下捲動至 **Replication rules** (複寫規則)，然後選擇 **Create replication rules** (建立複寫規則)。請確保您有足夠的權限建立複寫規則，否則版本控制將遭停用。
**注意**  
您只能針對帳戶內的儲存貯體建立複寫規則。若要為外部儲存貯體建立複寫規則，儲存貯體擁有者必須為這些儲存貯體建立複寫規則。

1. 在**建立複寫規則**頁面上，選擇**將物件從一或多個來源儲存貯體複寫到一或多個目的地儲存貯體**範本。
**重要**  
當您使用此範本建立複寫規則時，它們會取代任何已指派給儲存貯體的現有複寫規則。  
若要新增或修改任何現有的複寫規則，而不是取代它們，請前往主控台中每個儲存貯體的 **Management** (管理) 索引標籤，然後在 **Replication rules** (複寫規則) 區段中編輯規則。您也可以使用 、 SDKs 或 REST API AWS CLI來新增或修改現有的複寫規則。如需詳細資訊，請參閱[複寫組態檔案元素](replication-add-config.md)。

1. 在**來源和目的地**區段中，請在**來源儲存貯體**下，選取一或多個您要從中複寫物件的儲存貯體。針對複寫選擇的所有儲存貯體 (來源和目的地) 都必須啟用 S3 版本控制，且每個儲存貯體必須位於不同的 AWS 區域中。如需 S3 版本控制的詳細資訊，請參閱[在 Amazon S3 儲存貯體中使用儲存貯體](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Versioning.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** (使用一或多個篩選器限制此規則的範圍)。

     您可以使用字首、物件索引標籤或兩者的組合來篩選物件。
     + 若要限制複寫名稱以相同字串 (例如，`pictures`) 開頭的所有物件，請在 **Prefix** (字首) 方塊中輸入字首。

       如果您輸入的字首是資料夾名稱，請務必使用 `/` (正斜線) 等分隔符號來表示階層 (例如，`pictures/`)。如需詳細了解字首，請參閱[使用字首組織物件](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-prefixes.html)。
     + 若要複寫具有一個或多個物件索引標籤的所有物件，請選擇 **Add tag** (新增標籤)，然後在方塊中輸入鍵/值對。若要新增另一個索引標籤，請重複此程序，。如需物件標籤的詳細資訊，請參閱 [使用標籤為物件分類](object-tagging.md)。

1. 向下捲動至 **Additional replication options** (其他複寫選項) 區段，然後選取您要套用的複寫選項。
**注意**  
建議您套用下列選項：  
**Replication time control (RTC)** (複寫時間控制 (RTC)) - 若要在可預測的時間範圍內跨不同區域複寫您的資料，您可以使用 S3 複寫時間控制 (S3 RTC)。S3 RTC 會在 15 分鐘內，複寫 99.99% 在 Amazon S3 中存放的新物件 (由服務水準協議支援)。如需詳細資訊，請參閱[使用 S3 複寫時間控制來滿足合規要求](replication-time-control.md)。
**Replication metrics and notifications** (複寫指標和通知) - 啟用 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. 如果您正在撰寫新的複寫規則，取代現有複寫規則，請選取 **I acknowledge that by choosing Create replication rules, these existing replication rules will be overwritten ** (我確認藉由選擇 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) 的第二個複寫規則。

如同所有複寫規則，您可以將雙向複寫規則套用至整個 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 SDKs、Amazon S3 REST API 或 啟用複本修改同步 AWS CloudFormation。

若要監控 Amazon CloudWatch 中物件和物件中繼資料的複寫進度，請啟用 S3 複寫指標和通知。如需詳細資訊，請參閱[使用複寫指標和 Amazon S3 事件通知監控進度](https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication-metrics.html)。

**針對您的多區域存取點建立雙向複寫規則**



1. 登入 AWS 管理主控台 ，並在 [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)：// 開啟 Amazon S3 主控台。

1. 在左導覽窗格中，選擇 **Multi-Region Access Points** (多區域存取點)。

1. 選擇您要更新的多區域存取點名稱。

1. 選擇 **Replication and failover** (複寫和容錯移轉) 索引標籤。

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 SDKs或 Amazon S3 REST API AWS CLI來新增或修改現有的複寫規則。如需詳細資訊，請參閱[複寫組態檔案元素](replication-add-config.md)。

1. 在 **Buckets** (儲存貯體) 區段中，至少選取兩個您要從中複寫物件的儲存貯體。針對複寫選擇的所有儲存貯體都必須啟用 S3 版本控制，且每個儲存貯體必須位於不同的 AWS 區域中。如需 S3 版本控制的詳細資訊，請參閱[在 Amazon 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** (使用一或多個篩選器限制此規則的範圍)。

     您可以使用字首、物件索引標籤或兩者的組合來篩選物件。
     + 若要限制複寫名稱以相同字串 (例如，`pictures`) 開頭的所有物件，請在 **Prefix** (字首) 方塊中輸入字首。

       如果您輸入的字首是資料夾名稱，您必須使用 `/` (正斜線) 作為最後一個字元 (例如，`pictures/`)。
     + 若要複寫具有一個或多個物件索引標籤的所有物件，請選擇 **Add tag** (新增標籤)，然後在方塊中輸入鍵/值對。若要新增另一個索引標籤，請重複此程序，。如需物件標籤的詳細資訊，請參閱 [使用標籤為物件分類](object-tagging.md)。

1. 向下捲動至 **Additional replication options** (其他複寫選項) 區段，然後選取您要套用的複寫選項。
**注意**  
建議您套用下列選項，尤其是當您打算將多區域存取點設定為支援容錯移轉時：  
**Replication time control (RTC)** (複寫時間控制 (RTC)) - 若要在可預測的時間範圍內跨不同區域複寫您的資料，您可以使用 S3 複寫時間控制 (S3 RTC)。S3 RTC 會在 15 分鐘內，複寫 99.99% 在 Amazon S3 中存放的新物件 (由服務水準協議支援)。如需詳細資訊，請參閱[使用 S3 複寫時間控制來滿足合規要求](replication-time-control.md)。
**Replication metrics and notifications** (複寫指標和通知) - 啟用 Amazon CloudWatch 指標，以監控複寫事件。
**刪除標記複寫** — 複寫由 S3 刪除操作建立的刪除標記。由生命週期規則建立的刪除標記不會複寫。如需詳細資訊，請參閱[在儲存貯體間複寫刪除標記](https://docs.aws.amazon.com/AmazonS3/latest/userguide/delete-marker-replication.html)。
**Replica modification sync** (複本修改同步) - 針對每個複寫規則啟用複本修改同步，也會將您物件的中繼資料變更保持同步。如需詳細資訊，請參閱[啟用複本修改同步](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. 如果您正在撰寫新的複寫規則，取代現有複寫規則，請選取 **I acknowledge that by choosing Create replication rules, these existing replication rules will be overwritten ** (我確認藉由選擇 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 管理主控台 ，並在 [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)：// 開啟 Amazon 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 主控台提出的請求始終同步。主控台會等到請求完成後，才會允許您提交其他請求。

您可以使用 主控台檢視非同步操作的目前狀態和結果，也可以`DescribeMultiRegionAccessPointOperation`在 、 AWS CLI AWS SDKs或 REST API 中使用 。Amazon S3 會在回應非同步操作時提供追蹤字符。您可以將該追蹤字符作為 `DescribeMultiRegionAccessPointOperation` 的參數。當您包括追蹤字符時，Amazon S3 接著會傳回指定操作的目前狀態和結果，包括任何錯誤或相關的資源資訊。Amazon S3 會同步執行 `DescribeMultiRegionAccessPointOperation` 操作。

所有建立或維護多區域存取點的控制平面請求，都必須路由至 `US West (Oregon)` 區域。對於多區域存取點資料平面請求，不需要指定區域。對於多區域存取點容錯移轉控制平面，請求必須路由至五個受支援區域的其中一個。如需多區域存取點支援區域的詳細資訊，請參閱[多區域存取點約束與限制](MultiRegionAccessPointRestrictions.md)。

此外，您必須將 `s3:ListAllMyBuckets`許可授予提出管理多區域存取點請求的使用者、角色或其他 AWS Identity and Access Management (IAM) 實體。

下列範例示範如何在 Amazon S3 中搭配相容操作使用多區域存取點。

**Topics**
+ [多區域存取點與 AWS 服務 和 AWS SDKs相容性](#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 SDKs相容性
<a name="mrap-api-support"></a>

若要將多區域存取點與需要 Amazon S3 儲存貯體名稱的應用程式搭配使用，請在使用 AWS SDK 提出請求時使用多區域存取點的 Amazon Resource Name (ARN)。若要檢查哪些 AWS SDKs 與多區域存取點相容，請參閱與 [AWS SDKs的相容性](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 ]

下列適用於 Java 的 SDK 程式碼會擷取您的多區域存取點路由組態，以便您可以查看儲存貯體目前的路由狀態。若要使用此範例語法，請以您自己的資訊取代 `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 ]

下列適用於 JavaScript 的 SDK 程式碼會擷取您的多區域存取點路由組態，以便您可以查看儲存貯體目前的路由狀態。若要使用此範例語法，請以您自己的資訊取代 `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 ]

下列適用於 Python 的 SDK 程式碼會擷取您的多區域存取點路由組態，以便您可以查看儲存貯體目前的路由狀態。若要使用此範例語法，請以您自己的資訊取代 `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>

下列範例命令會更新多區域存取點路由組態。可以針對下列五個區域執行多區域存取點路由命令：
+ `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 ]

下列適用於 Java 的 SDK 程式碼會更新您的多區域存取點路由組態。若要使用此範例語法，請以您自己的資訊取代 `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 ]

下列適用於 JavaScript 的 SDK 程式碼會更新您的多區域存取點路由組態。若要使用此範例語法，請以您自己的資訊取代 `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 ]

下列適用於 Python 的 SDK 程式碼會更新您的多區域存取點路由組態。若要使用此範例語法，請以您自己的資訊取代 `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 來產生一個 URL，允許其他人透過 Amazon S3 多區域存取點存取 Amazon S3 儲存貯體。當建立預先簽章的 URL 時，您會將其與 S3 上傳 (`PutObject`) 或 S3 下載 (`GetObject`) 等特定物件動作建立關聯。您可以共用預先簽章的 URL，且擁有存取權的任何人都可以執行嵌入 URL 中的動作，如同原始簽章使用者一樣。

預先簽章的 URL 具有到期日。過了到期時間，URL 將不再運作起作用。

在您搭配預先簽章的 URL 使用 S3 多區域存取點之前，請先檢查 [AWS SDK](https://docs.aws.amazon.com/sdkref/latest/guide/feature-s3-mrap.html#s3-mrap-sdk-compat) 與 SigV4a 演算法的相容性。驗證您的 SDK 版本是否支援 SigV4a 作為簽署實作，用來簽署全域 AWS 區域 請求。如需搭配 Amazon S3 使用預先簽章 URL 的詳細資訊，請參閱[使用預先簽章的 URL 共用物件](https://docs.aws.amazon.com/AmazonS3/latest/userguide/ShareObjectPreSignedURL.html)。

下列範例示範如何搭配預先簽章的 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 角色時，請確定您向 in AWS Security Token Service (AWS STS) 的區域端點請求臨時登入資料，而不是全域端點。如果您使用全域端點 for 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)，請求者將支付儲存貯體請求、下載和任何多區域存取點的相關費用。如需詳細資訊，請參閱 [Simple Storage Service (Amazon S3) 定價](https://aws.amazon.com/s3/pricing/)。

以下範例是多區域存取點的資料平面請求，該多區域存取點連接至請求者付款儲存貯體。

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

若要從連接至請求者付款儲存貯體的多區域存取點下載物件，您必須將 `--request-payer requester` 指定為 [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) 請求的一部分。您也必須指定儲存貯體中檔案的名稱，以及應存放下載檔案的位置。

```
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 ]

若要從連接至請求者付款儲存貯體的多區域存取點下載物件，您必須將 `RequestPayer.REQUESTER` 指定為 `GetObject` 請求的一部分。您也必須指定儲存貯體中檔案的名稱，以及儲存檔案的位置。

```
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`。例如，假設您有下列儲存貯體和多區域存取點組態：
+ 區域 `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-image.jpg` 的物件。
+  名為 `my-mrap` 且別名為 `mfzwi23gnjvgw.mrap` 的多區域存取點被設定為可滿足來自所有三個儲存貯體的請求。
+  AWS 您的帳戶 ID 為 `123456789012`。

透過任何儲存貯體直接擷取 `my-image.jpg` 的請求會顯示在您的日誌中，其主機名稱為 `bucket_name.s3.Region.amazonaws.com`。

如果您改為透過多區域存取點提出請求，Amazon S3 會先判定不同區域中的哪個儲存貯體最接近。在 Amazon S3 判定要使用哪個儲存貯體來完成請求後，它會將請求傳送到該儲存貯體，並使用多區域存取點主機名稱記錄操作。在此範例中，如果 Amazon S3 將請求轉送到 `my-bucket-aps1`，您的日誌會反映來自 `my-bucket-aps1` 且針對 `my-image.jpg` 的成功 `GET` 請求，其中使用了 `mfzwi23gnjvgw.mrap.accesspoint.s3-global.amazonaws.com` 的主機名稱。

**重要**  
多區域存取點不知道基礎儲存貯體的資料內容。因此，取得請求的儲存貯體可能不包含請求的資料。例如，如果 Amazon S3 判定 `my-bucket-euc1` 儲存貯體最接近，您的日誌將反映來自 `my-bucket-euc1` 且針對 `my-image.jpg` 的失敗 `GET` 請求，其中使用了 `mfzwi23gnjvgw.mrap.accesspoint.s3-global.amazonaws.com` 的主機名稱。如果請求被路由到 `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 提供數個可管理多區域存取點的 API 操作，例如 `CreateMultiRegionAccessPoint` 和 `GetMultiRegionAccessPointPolicy`。當您使用 AWS Command Line Interface (AWS CLI)、 AWS SDKs或 Amazon S3 REST API 向這些 API 操作提出請求時，Amazon S3 會以非同步方式處理這些請求。如果您擁有請求的適當許可，Amazon S3 會傳回這些請求的字符。您可以搭配使用此字符與 `DescribeAsyncOperation`，從而協助您檢視正在進行的非同步操作狀態。Amazon S3 會同步處理 `DescribeAsyncOperation` 請求。若要檢視非同步請求的狀態，您可以使用 Amazon S3 主控台、 AWS CLI SDK SDKs 或 REST API。

**注意**  
主控台只會顯示過去 14 天內提出的非同步請求的狀態。若要檢視較舊請求的狀態，請使用 AWS CLI、 SDKs或 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)。