

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

# 在 Amazon S3 主控台中編輯物件中繼資料
<a name="add-object-metadata"></a>

您可以使用 Amazon S3 主控台，透過**複製**動作來編輯現有 S3 物件的中繼資料。若要編輯中繼資料，請將物件複製到相同的目的地，並指定要套用的新中繼資料，以取代物件的舊中繼資料。上傳物件時，Amazon S3 會設定某些中繼資料。例如，`Content-Length` 和 `Last-Modified` 是使用者無法修改的系統定義物件中繼資料欄位。

您也可以在上傳物件時設定使用者定義的中繼資料，並在需求變更時加以取代。例如，您可能有一組最初儲存在 `STANDARD` 儲存類別中的物件。隨著時間的推移，您可能不再需要讓這些資料高度可用。因此，您可透過將 `x-amz-storage-class` 金鑰的值從 `STANDARD` 取代為 `GLACIER`，從而將儲存類別變更為 `GLACIER`。

**注意**  
在 Amazon S3 中取代物件中繼資料時，請考慮下列事項：  
您必須指定要保留的現有中繼資料、要新增的中繼資料，以及要編輯的中繼資料。
如果您的物件小於 5 GB，您可以使用 S3 主控台中的**複製**動作來取代物件中繼資料。如果您的物件大於 5 GB，您可以在使用 [AWS CLI](mpu-upload-object.md#UsingCLImpUpload) 或 [AWS SDK](CopyingObjectsMPUapi.md) 透過分段上傳來複製物件時，取代物件中繼資料。如需詳細資訊，請參閱[使用分段上傳來複製物件](CopyingObjectsMPUapi.md)。
如需取代中繼資料所需的其他許可清單，請參閱[Amazon S3 API 操作所需的許可](using-with-s3-policy-actions.md)。如需授予此許可的範例政策，請參閱[Amazon S3 的身分型政策範例](example-policies-s3.md)。
此動作會建立具有更新設定和上次修改日期的物件*複本*。如果啟用 S3 版本控制，則系統會建立物件的新版本，且現有物件會變成較舊的版本。如果未啟用 S3 版本控制，則物件的新複本會取代原始物件。與變更 屬性的 IAM 角色 AWS 帳戶 相關聯的 也會成為新物件或 （物件版本） 的擁有者。
編輯中繼資料會取代現有金鑰名稱的值。
使用客戶提供的加密金鑰 (SSE-C) 加密的物件無法經由主控台複製。您必須使用 AWS CLI、 AWS SDK 或 Amazon S3 REST API。
使用 Amazon S3 主控台複製物件時，可能會收到錯誤訊息「複製的中繼資料無法驗證。」 主控台會使用標頭來擷取和設定物件的中繼資料。如果您的網路或瀏覽器組態修改網路請求，此行為可能會導致意外中繼資料 (例如修改的 `Cache-Control` 標頭) 寫入您複製的物件。Amazon S3 無法驗證此非預期的中繼資料。  
若要解決此問題，請檢查您的網路和瀏覽器組態，確保標頭不會遭到修改，例如 `Cache-Control`。如需詳細資訊，請參閱[共同責任模式](https://docs.aws.amazon.com/whitepapers/latest/applying-security-practices-to-network-workload-for-csps/the-shared-responsibility-model.html)。

**警告**  
取代資料夾的中繼資料時，請等待**複製**動作完成，再新增物件至資料夾。否則，新物件可能也會被編輯。

下列主題說明如何在 Amazon S3 主控台中使用**複製**動作來取代物件的中繼資料。

## 取代系統定義的中繼資料
<a name="add-object-metadata-system"></a>

您可以取代 S3 物件的一些系統定義中繼資料。如需系統定義的中繼資料以及您可以修改的值清單，請參閱[系統定義的物件中繼資料](UsingMetadata.md#SysMetadata)。

**取代物件的系統定義中繼資料**

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

1. 在左側導覽窗格中，選擇**一般用途儲存貯體**或**目錄儲存貯體**。

1. 在儲存貯體清單中，選擇儲存貯體的名稱，其中包含您要變更的物件。

1. 選取您要變更之物件的核取方塊。

1. 從**動作**功能表上顯示的選項清單中，選擇**複製**。

1. 若要指定目的地路徑，請選擇**瀏覽 S3**，導覽至與來源物件相同的目的地，然後選取目的地核取方塊。選擇右下角的 **Choose destination** (選擇目的地)。

   或者，輸入目的地路徑。

1. 如果您「未」**啟用儲存貯體版本控制，您會看到警告，建議您啟用儲存貯體版本控制，以協助防止意外覆寫或刪除物件。如果您要保留此儲存貯體中所有版本的物件，請選取 **Enable Bucket Versioning** (啟用儲存貯體版本控制)。您也可以在**目的地詳細資訊**中檢視預設加密和物件鎖定內容。

1. 在**其他複製設定**下，選擇**指定設定**以指定**中繼資料**的設定。

1. 捲動至**中繼資料**區段，然後選擇**取代所有中繼資料**。

1. 選擇 **Add metadata** (新增中繼資料)。

1. 對於中繼資料**類型**，請選取**系統定義**。

1. 指定唯一的**金鑰**和中繼資料**值**。

1. 若要編輯其他中繼資料，請選擇**新增中繼資料** 您也可以選擇 **Remove** (移除) 以移除一組 Type-Key-Values。

1. 請選擇 **Copy** (複製)。Amazon S3 會儲存您的中繼資料變更。

## 取代使用者定義的中繼資料
<a name="add-object-metadata-user-defined"></a>

您可以透過結合中繼資料字首 `x-amz-meta-` 和您選擇建立自訂金鑰的名稱來取代物件的使用者定義中繼資料。例如，如果您新增自訂名稱 `alt-name`，則中繼資料金鑰會是 `x-amz-meta-alt-name`。

使用者定義的中繼資料最大可達 2 KB。若要計算使用者定義中繼資料的總大小，須加總 UTF-8 編碼的每個索引鍵和值的位元組數。金鑰與其值都必須符合 US-ASCII 標準。如需詳細資訊，請參閱[使用者定義的物件中繼資料](UsingMetadata.md#UserMetadata)。

**取代物件的使用者定義中繼資料**

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

1. 在導覽窗格中，選擇**儲存貯體**，然後選擇**一般用途儲存貯體**或**目錄儲存貯體**索引標籤。導覽至包含您要變更之物件的 Amazon S3 儲存貯體或資料夾。

1. 選取您要變更之物件的核取方塊。

1. 從**動作**功能表上顯示的選項清單中，選擇**複製**。

1. 若要指定目的地路徑，請選擇**瀏覽 S3**，導覽至與來源物件相同的目的地，然後選取目的地核取方塊。選擇 **Choose destination (選擇目的地)**。

   或者，輸入目的地路徑。

1. 如果您「未」**啟用儲存貯體版本控制，您會看到警告，建議您啟用儲存貯體版本控制，以協助防止意外覆寫或刪除物件。如果您要保留此儲存貯體中所有版本的物件，請選取 **Enable Bucket Versioning** (啟用儲存貯體版本控制)。您也可以在**目的地詳細資訊**中檢視預設加密和物件鎖定內容。

1. 在**其他複製設定**下，選擇**指定設定**以指定**中繼資料**的設定。

1. 捲動至**中繼資料**區段，然後選擇**取代所有中繼資料**。

1. 選擇 **Add metadata** (新增中繼資料)。

1. 對於中繼資料 **Type** (類型)，選擇 **User-defined (使用者定義)**。

1. 在 `x-amz-meta-` 後輸入唯一的自訂**索引鍵**。同時輸入中繼資料**值**。

1. 若要新增其他中繼資料，請選擇 **Add metadata** (新增中繼資料)。您也可以選擇 **Remove** (移除) 以移除一組 Type-Key-Values。

1. 請選擇 **Copy** (複製)。Amazon S3 會儲存您的中繼資料變更。