

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

# 使用 還原 S3 資料 AWS Backup
<a name="restoring-s3"></a>

您可以將您使用 備份的 S3 資料還原 AWS Backup 至 S3 Standard 儲存類別。您可以還原儲存貯體中的所有物件或特定物件。您可以將其還原至現有或新的儲存貯體。

## Amazon S3 還原許可
<a name="s3-restore-permissions"></a>

開始還原資源之前，請確定您使用的角色具有足夠的許可。

如需詳細資訊，請參閱下列政策項目：

1. [https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSBackupServiceRolePolicyForS3Restore.html](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSBackupServiceRolePolicyForS3Restore.html)

1. [https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSBackupServiceRolePolicyForRestores.html](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSBackupServiceRolePolicyForRestores.html)

1. [的受管政策 AWS Backup](security-iam-awsmanpol.md)

## Amazon S3 還原考量事項
<a name="s3-restore-considerations"></a>
+ 如果在備份期間啟用 ACLs，還原的目的地儲存貯體必須啟用 ACLs，否則還原任務會失敗。
+ 如果已在目的地儲存貯體上啟用封鎖公開存取，則還原任務會成功完成，但具有公有 ACLs物件不會還原。
+ 如果目的地儲存貯體具有具有相同名稱或版本 ID 的物件，則會略過物件的還原。
+ 當您還原至原始 S3 儲存貯體時，
  + AWS Backup 不會執行破壞性還原，這表示無論版本為何， AWS Backup 都不會將物件放入儲存貯體中，取代已存在的物件。
  + 目前版本中的刪除標記會視為物件不存在，因此可能會發生還原。
  + AWS Backup 在還原期間不會從儲存貯體刪除物件 （不含刪除標記） （例如：目前在儲存貯體中不存在的金鑰將保留在備份期間）。
+ **還原跨區域複本**
  + 雖然 S3 備份可跨區域複製，但還原任務只會在原始備份或複本所在的相同區域中進行。  
**Example**  

    **範例：**在美國東部 （維吉尼亞北部） 區域中建立的 S3 儲存貯體可以複製到加拿大 （中部） 區域。您可以使用位於美國東部 (維吉尼亞北部) 區域的原始儲存貯體起始還原任務並還原至該區域，也可以使用位於加拿大 (中部) 區域的複本起始還原任務並還原至該區域。
  + 原始加密方法無法用來還原從其他 區域複製的復原點 （備份）。跨區域複製 AWS KMS 加密不適用於 Amazon S3 資源；而是針對還原任務使用不同的加密類型。

## 還原 ACLs和物件標籤
<a name="s3-restore-acl-options"></a>

還原 Amazon S3 資料時，您可以選擇 ACLs 是否為還原的一部分。

如果復原點中有可用的 ACLs，您可以選擇使用還原 ACLs設定來還原或排除 ACLs；如果 ACL 不在備份中，則無論設定為何，都無法還原ACLs。如果您嘗試在啟用 ACls的情況下建立還原任務，但它們不是備份的一部分，您可能會看到錯誤，例如 `Unable to restore Access Control Lists (ACLs) for bucket because backup was created with the 'BackupACLs' option disabled. Please proceed with restoring without ACLs`。

如果物件標籤包含在原始備份中，則會自動還原物件標籤

**注意**  
在沒有 ACLs的情況下還原復原點  
如果您嘗試從排除 ACLs的備份 AWS CLI 還原 ACLs，還原操作將會失敗，並顯示無效還原參數的錯誤訊息。

## 還原多個版本
<a name="s3-restore-versions"></a>

根據預設， 只會 AWS Backup 還原物件的最新版本。您可以選擇還原其他或所有版本的物件。

如需如何使用 AWS Backup 主控台還原 10 個最新版本或所有版本，請參閱下一節中的步驟 6。

如需以程式設計方式還原時要包含的中繼資料詳細資訊，請參閱本頁[透過 還原 Amazon S3 復原點 AWS CLI](#s3-restore-cli)稍後的 。

## 透過 AWS Backup 主控台還原
<a name="s3-restore-console"></a>

**若要使用主控台還原 Amazon S3 資料 AWS Backup ：**

1. 在 https：//[https://console.aws.amazon.com/backup](https://console.aws.amazon.com/backup) 開啟 AWS Backup 主控台。

1. 在導覽窗格中，選擇 **受保護的資源**，然後選取您要還原的 Amazon S3 資源 ID。

1. 在 **資源詳細資訊** 頁面上，您會看到所選資源 ID 的復原點清單。若要還原資源：

   1. 在 **備份** 窗格中，選擇資源的復原點 ID。

   1. 在窗格右上角，選擇 **Restore (還原)**。

      (或者，您可以前往備份保存庫，找到復原點，然後依序按一下 **動作** 和 **還原**。)

1. 如果您要還原連續備份，請在 **還原時間** 窗格中，選取下列任一選項：

   1. 接受預設值，以還原至**最近可還原的時間**。

   1. **指定要還原的日期和時間**。

1. 在 **設定** 窗格中，指定要**還原整個儲存貯體**還是執行**項目層級還原**。

   1. 如果您選擇**項目層級還原**，您可以透過指定每個項目唯一識別該物件的 [S3 URI](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-bucket-intro.html)，為每個還原任務還原最多 5 個項目 （儲存貯體中的物件或資料夾）。

      (如需 S3 儲存貯體 URI 的詳細資訊，請參閱《Amazon Simple Storage Service 使用者指南》**中的《[存取儲存貯體的方法](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-bucket-intro.html)》。)

   1. 選擇 **新增項目** 以指定要還原的其他項目。

1. 根據預設，只會還原物件的最新版本。您可以還原最多 10 個最新版本，或還原物件的所有版本。從下拉式選單中選取您的偏好設定。

1. 選擇您的 **還原目的地**。您可以**還原至來源儲存貯體**、**使用現有的儲存貯體**或**建立新的儲存貯體**。
**注意**  
您的還原目的地儲存貯體必須已開啟版本控制。如果您選取的儲存貯體不符合此要求， 會 AWS Backup 通知您。

   1. 如果您選擇**使用現有儲存貯**體，請從顯示目前 AWS 區域內所有現有儲存貯體的選單中選取目的地 S3 儲存貯體。

   1. 如果您選擇 **建立新的儲存貯體**，請輸入**新的儲存貯體名稱**。建立儲存貯體之後，您可以修改 BPA （封鎖公開存取） 和 S3 版本控制預設設定。

1. 對於 S3 儲存貯體中的物件加密，您可以選擇**還原的物件加密**。**使用原始加密金鑰 (預設)**、**Amazon S3 金鑰 (SSE-S3)** 或 **AWS Key Management Service 金鑰 (SSE-KMS)**。

   這些設定僅適用於 S3 儲存貯體中物件的加密。這不會影響儲存貯體本身的加密。

   1. **使用原始加密金鑰 （預設）** 會還原具有來源物件所用相同加密金鑰的物件。如果來源物件未加密，此方法會在不加密的情況下還原物件。

      此還原選項可讓您選擇替代加密金鑰來加密還原物件 （如果原始金鑰無法使用）。

   1. 如果您選擇 **Amazon S3 金鑰 (SSE-S3)**，則不需要指定任何其他選項。

   1. 如果您選擇**AWS Key Management Service 金鑰 (SSE-KMS)**，您可以進行下列選擇：**AWS 受管金鑰 (aws/s3)**、**從您的 AWS KMS 金鑰中選擇**，或**輸入 AWS KMS 金鑰 ARN**。

      1. 如果您選擇 **AWS 受管金鑰 (aws/s3)**，則不需要指定任何其他選項。

      1. 如果您**從 AWS KMS 金鑰中選擇**，請從下拉式選單中選取金鑰 AWS KMS 。或者，選擇 **建立金鑰**。

      1. 如果您**輸入 AWS KMS 金鑰 ARN**，請在文字方塊中輸入 ARN。或者，選擇 **建立金鑰**。

1. 在 **Restore role (還原角色)** 窗格中，選擇 AWS Backup 在此次還原中具有的 IAM 角色。

1. 選擇 **Restore backup (還原備份)**。**Restore jobs (還原任務)** 窗格隨即出現。頁面頂端的訊息提供還原任務的相關資訊。

## 透過 還原 Amazon S3 復原點 AWS CLI
<a name="s3-restore-cli"></a>

請使用 `[StartRestoreJob](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_StartRestoreJob.html)`。您可以在 Amazon S3 還原期間指定下列中繼資料：

```
// Mandatory metadata:
DestinationBucketName // The destination bucket for your restore.
        
// Optional metadata:
RestoreACLs // Boolean. If ACLs were part of the backup, include and set to TRUE. If the backup 
does not include ACLs and this parameter is included, set to FALSE.
EncryptionType // The type of encryption to encrypt your restored objects. Options are original (same encryption as the original object), SSE-S3, or SSE-KMS).
ItemsToRestore // A list of up to five paths of individual objects to restore. Only required for item-level restore.
KMSKey // Specifies the SSE-KMS key to use. Only needed if encryption is SSE-KMS.
RestoreLatestVersionsUpTo // Include this optional parameter to multiple versions.
RestoreTime // The restore time (only valid for continuous recovery points where it is required, in format 2021-11-27T03:30:27Z).
```

`RestoreLatestVersionsUpTo` 是選用的中繼資料金鑰/值對。根據預設，如果省略此選項，則會還原最新版本。包含此中繼資料以還原物件的其他版本。接受的值為：
+ `1` （還原最新版本）
+ `n` ，其中 *n* 是大於 1 的任何正整數。將還原物件的最新版本 *n*。如果物件的實際版本計數小於 *n*，則會針對該物件還原該版本的數量。
+ `all` （還原所有版本）

## 復原點狀態
<a name="s3-recovery-point-status"></a>

復原點會有一個狀態來表示其狀態。

`EXPIRED` 狀態表示復原點已超過其保留期間，但 AWS Backup 缺少許可或無法刪除它。若要手動刪除這些復原點，請參閱《入門》**的《清理資源》**一節中的《[步驟 3：刪除復原點](https://docs.aws.amazon.com/aws-backup/latest/devguide/gs-cleanup-resources.html#cleanup-backups)》。

`STOPPED` 狀態會出現在連續備份，其中使用者已採取某些動作，導致連續備份停用。這可能是由於移除許可、關閉版本控制、關閉傳送至 Amazon EventBridge 的事件，或停用 AWS Backup設定的 EventBridge 規則所造成。

若要解決 `STOPPED` 狀態，請確定已具備所有必要許可，並且已在 S3 儲存貯體上啟用版本控制。一旦符合這些條件，下次執行備份規則就會建立新的連續復原點。不需要刪除狀態為「已停止」的復原點。

## S3 還原訊息
<a name="s3-restore-messages"></a>

當還原任務完成或失敗時，您可能會看到下列訊息。下表可協助您判斷狀態訊息的可能原因。


| 案例 | 任務狀態 | 訊息 | 範例 | 
| --- | --- | --- | --- | 
| 無法還原所有物件。 | `FAILED` | 「沒有物件從 **RecoveryPointARN** 還原至儲存**貯**體。若要收到這些失敗的通知，請啟用 SNS 事件通知。」 |  用來啟動還原任務的角色沒有將物件放入目的地儲存貯體的許可。 還原角色沒有許可來驗證目標儲存貯體中是否存在物件版本。  | 
| 一或多個 （但並非所有） 物件無法還原。 | COMPLETED (已完成) |  「一或多個物件無法從 **RecoveryPointARN** 還原至儲存**貯**體。若要收到這些失敗的通知，請啟用 SNS 事件通知。」  |  用來啟動還原任務的角色無法存取一或多個原始物件所使用的 KMS 金鑰。  | 
| 沒有要還原的物件。 | COMPLETED (已完成) | 「沒有符合 **RecoveryPointARN** 還原請求的物件。」 |  要還原之來源儲存貯體的復原點 （備份） 沒有物件。 用於還原任務的字首不會與任何物件對應。  | 