儲存貯體概觀 - Amazon Simple Storage Service

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

儲存貯體概觀

若要將相片、影片、文件等資料上傳至 Amazon S3,您必須先在其中一個 AWS 區域中建立 S3 儲存貯體。

儲存貯體是 Amazon S3 中用於存放物件的容器。您可以在儲存貯體中存放任意數目的物件,並且帳戶中最多可有 100 個儲存貯體。若要查看儲存貯體使用率、儲存貯體配額或請求增加,請造訪 Service Quotas 主控台

如需與 Amazon S3 儲存貯體相關的限制和限制清單,請參閱 儲存貯體配額、限制和限制

每個物件都包含在儲存貯體中。例如,如果名為 的物件存放在美國西部 photos/puppy.jpg (奧勒岡) 區域的儲存amzn-s3-demo-bucket貯體中,則可以使用 URL 定址https://amzn-s3-demo-bucket.s3.us-west-2.amazonaws.com/photos/puppy.jpg。如需詳細資訊,請參閱存取儲存貯體

在實作方面,儲存貯體和物件是 AWS 資源,Amazon S3 APIs為您提供管理這些資源。例如,您可以使用 Amazon S3 建立儲存貯體並上傳物件API。或者,您也可以使用 Amazon S3 主控台執行這些操作,主控台使用 Amazon S3 APIs將請求傳送至 Amazon S3。

本節說明如何使用儲存貯體。如需使用物件的資訊,請參閱「Amazon S3 物件概觀」。

Amazon S3 支援全域儲存貯體,這表示每個儲存貯體名稱在分割區 AWS 區域 內的所有 AWS 帳戶 中都必須是唯一的。分割區是區域的群組。 AWS 目前有三個分割區:aws(標準區域)、aws-cn(中國區域) 和 aws-us-gov (AWS GovCloud (US))。

建立儲存貯體後,在刪除儲存貯體之前,另一個儲存貯體的名稱無法在相同分割區 AWS 帳戶 中使用。建議您不要為了可用性或安全驗證目的而依賴特定的儲存貯體命名慣例。如需儲存貯體命名準則,請參閱「儲存貯體命名規則」。

Amazon S3 會在您指定的區域建立儲存貯體。若要減少延遲、將成本降至最低或解決法規要求,請選擇任何您附近的 AWS 區域 區域。舉例而言,如果您住在歐洲,則在歐洲 (愛爾蘭) 或歐洲 (法蘭克福) 區域建立儲存貯體可能較有利。如需 Amazon S3 區域的清單,請參閱《AWS 一般參考》中的區域與端點

注意

如需將 Amazon S3 Express One Zone 儲存類別與目錄儲存貯體搭配使用的詳細資訊,請參閱 目錄儲存貯體和 S3 Express One Zone目錄儲存貯體概觀

注意

屬於您在特定 中建立之儲存貯體的物件 AWS 區域 絕不會離開該區域,除非您明確將其傳輸至其他區域。例如,存放在歐洲 (愛爾蘭) 區域中的物件絕對會保留在此區域。

關於許可

您可以使用您的 AWS 帳戶根使用者 憑證來建立儲存貯體,並執行任何其他 Amazon S3 操作。不過,我們建議您不要使用 的根使用者憑證 AWS 帳戶 來提出請求,例如建立儲存貯體。相反地,請建立 AWS Identity and Access Management (IAM) 使用者,並授予該使用者完整存取權 (依預設,使用者沒有許可)。

這些使用者稱為「管理員」。您可以使用管理員使用者憑證,而不是帳戶的根使用者憑證,來與 互動 AWS 和執行任務,例如建立儲存貯體、建立使用者,以及授予他們許可。

如需詳細資訊,請參閱 IAM 使用者指南 中的AWS 一般參考安全最佳實務中的IAMAWS 帳戶根使用者 憑證和IAM使用者憑證

AWS 帳戶 建立資源的 擁有該資源。例如,如果您在 中建立IAM使用者, AWS 帳戶 並授予使用者建立儲存貯體的許可,則使用者可以建立儲存貯體。但使用者不擁有儲存貯體;使用者所屬擁有儲存貯體 AWS 帳戶 的 。使用者需要資源擁有者授予其他許可,才能執行任何其他儲存貯體操作。如需管理 Amazon S3 資源許可的詳細資訊,請參閱 Amazon S3 的身分和存取管理

管理儲存貯體的公開存取

透過儲存貯體政策、存取控制清單 (ACLs) 或兩者將公有存取權授予儲存貯體和物件。為協助您管理對 Amazon S3 資源的公開存取,Amazon S3 提供了封鎖公開存取權限設定。Amazon S3 Block Public Access 設定可以覆寫 ACLs 和 儲存貯體政策,以便您可以對這些資源的公開存取強制執行統一限制。您可套用封鎖公開存取設定到您帳戶中的個別儲存貯體或全部儲存貯體。

若要確保封鎖對所有 Amazon S3 儲存貯體和物件的公開存取,在您建立新的儲存貯體時,預設會啟用「封鎖公開存取」的所有四個設定。建議您也為帳戶開啟「封鎖公開存取」的所有四個設定:這些設定會封鎖所有現有和未來儲存貯體的一切公開存取。

套用這些設定前,請確認應用程式無須公用存取權限也可正常運作。如果儲存貯體或物件需要特定層級的公開存取權限 (例如 使用 Amazon S3 託管靜態網站 中所述的託管靜態網站),您可配合儲存體使用案例自訂個別設定。如需詳細資訊,請參閱封鎖對 Amazon S3 儲存體的公開存取權

不過,高度建議將「封鎖公開存取」保持啟用狀態。如果您想要啟用所有四個封鎖公開存取設定並託管靜態網站,您可以使用 Amazon CloudFront 原始伺服器存取控制 (OAC)。Amazon CloudFront 提供設定安全靜態網站所需的功能。Amazon S3 靜態網站僅支援HTTP端點。Amazon CloudFront 使用 Amazon S3 的耐用儲存體,同時提供額外的安全標頭,例如 HTTPS。HTTPS 透過加密正常HTTP請求並防止常見網路攻擊來增加安全性。

如需詳細資訊,請參閱 Amazon CloudFront 開發人員指南 中的安全靜態網站入門

注意

如果您在列出儲存貯體及其公用存取設定時看到 Error,則您可能沒有所需的許可。確保您已將下列許可新增至您的使用者或角色政策:

s3:GetAccountPublicAccessBlock s3:GetBucketPublicAccessBlock s3:GetBucketPolicyStatus s3:GetBucketLocation s3:GetBucketAcl s3:ListAccessPoints s3:ListAllMyBuckets

在極少數狀況下,請求也可能因 AWS 區域 中斷而失敗。

儲存貯體組態選項

Amazon S3 支援各種設定儲存貯體的選項。例如,您可以設定儲存貯體處理網站託管、新增組態來管理儲存貯體中的物件生命週期,以及設定儲存貯體記錄所有對儲存貯體的存取。此外,Amazon S3 也支援子資源,讓您可以存放及管理儲存貯體組態資訊。您可以使用 Amazon S3 API 來建立和管理這些子資源。不過,您也可以使用 主控台或 AWS SDKs。

注意

也有物件層級的組態。例如,您可以透過設定該物件特定的存取控制清單 (ACL) 來設定物件層級許可。

這些會當成子資源參考,因為它們存在於特定的儲存貯體或物件內容中。下表列出子資源,讓您管理儲存貯體專用組態。

子資源 描述

cors (跨來源資源共享)

您可以設定儲存貯體允許跨來源要求。

如需詳細資訊,請參閱「使用跨來源資源共用 (CORS)」。

event notification

您可以讓儲存貯體傳送指定儲存貯體事件的通知。

如需詳細資訊,請參閱Amazon S3 事件通知

lifecycle

您可以為已妥善定義生命週期的儲存貯體物件,定義生命週期規則。例如,您可以定義一項規則,建立物件後將它封存一年,或建立物件 10 年後將它刪除。

如需詳細資訊,請參閱「管理物件的生命週期」。

位置

建立儲存貯體時,您可以指定要 Amazon S3 建立儲存貯體 AWS 區域 的位置。Amazon S3 會將此資訊存放在位置子資源中,並提供 API 供您擷取此資訊。

logging

記錄日誌能讓您追蹤存取儲存貯體的要求。每筆存取日誌記錄都會提供有關單一存取要求的詳細資訊,例如要求者、儲存貯體名稱、要求時間、要求動作、回應狀態及錯誤代碼 (若出現錯誤)。存取記錄資訊在安全與存取稽核中相當實用。您也可藉由該資訊了解自己的客戶群,並掌握 Amazon S3 帳單相關資料。 

如需詳細資訊,請參閱「使用伺服器存取記錄記錄要求」。

物件鎖定

您必須為儲存貯體啟用 S3 物件鎖定,才能使用該功能。您也可以選擇設定預設保留模式和保留期,並套用至位於儲存貯體中的新物件。

如需詳細資訊,請參閱使用物件鎖定鎖定物件

政策和 ACL(存取控制清單)

所有資源 (例如儲存貯體與物件) 預設都是私有的。Amazon S3 支援儲存貯體政策和存取控制清單 (ACL) 選項,可讓您授予和管理儲存貯體層級許可。Amazon S3 會將許可資訊存放在「policy」與「acl」子資源中。

如需詳細資訊,請參閱Amazon S3 的身分和存取管理

複寫

複寫是跨不同或相同 AWS 區域的儲存貯體自動非同步的物件複製。如需詳細資訊,請參閱在 區域內和跨 區域複寫物件

requestPayment

根據預設, AWS 帳戶 建立儲存貯體的 (儲存貯體擁有者) 會支付從儲存貯體下載的費用。使用此子資源,儲存貯體擁有者可以指定要求下載的人支付下載的費用。Amazon S3 提供 API供您管理此子資源。

如需詳細資訊,請參閱使用儲存體傳輸和用量的申請者付款儲存貯體

tagging

您可以將成本分配標籤新增至儲存貯體,以分類和追蹤 AWS 成本。Amazon S3 提供的「tagging」子資源可讓您存放及管理儲存貯體上的標籤。使用您套用至儲存貯體的標籤, 會 AWS 產生成本分配報告,其中包含標籤彙總的使用量和成本。

如需詳細資訊,請參閱Amazon S3 的帳單和用量報告

transfer acceleration

Transfer Acceleration 可讓用戶端與 S3 儲存貯體間的長距離檔案傳輸作業變得迅速、簡單又安全。Transfer Acceleration 利用 Amazon 的全域分佈邊緣位置 CloudFront。

如需詳細資訊,請參閱使用 Amazon S3 Transfer Acceleration 設定快速安全的檔案傳輸

versioning

版本控制能幫助您復原意外的覆寫與刪除。

建議使用版本控制作為最佳實務,以復原錯誤刪除或覆寫的物件。

如需詳細資訊,請參閱「使用 S3 版本控制保留多個版本的物件」。

website

您可以設定您的儲存貯體處理靜態網站託管。Amazon S3 會透過建立「website」子資源來存放此組態。

如需詳細資訊,請參閱使用 Amazon S3 託管靜態網站