存取 Amazon S3 儲存貯體
您可以使用 Amazon S3 主控台、AWS Command Line Interface、AWS SDK 或 Amazon S3 REST API 來存取 Amazon S3 儲存貯體。每個存取 S3 儲存貯體的方法都支援特定使用案例。如需詳細資訊,請參閱下列區段。
使用案例
根據 Amazon S3 儲存貯體的使用案例,存取儲存貯體中的基礎資料時適用不同的建議方法。下列清單包含存取資料的常見使用案例。
-
靜態網站 – 您可以使用 Amazon S3 託管靜態網站。在此使用案例中,您可以將 S3 儲存貯體設定為像網站一般運作。如需逐步在 Amazon S3 上託管網站的範例,請參閱 教學課程:在 Amazon S3 上設定靜態網站。
若要託管已啟用「封鎖公用存取」等安全設定的靜態網站,建議您使用具有原始存取控制 (OAC) 的 Amazon CloudFront,並實作其他安全標頭,例如 HTTPS。如需詳細資訊,請參閱安全靜態網站入門。
-
共用資料集 – 當您在 Amazon S3 上進行擴展時,常會採用多租戶模型;在這種模式中,您可以將不同的終端客戶或業務單位指派給共用儲存貯體內的唯一字首。藉由使用 Amazon S3 Access Points,您可以針對需要存取共用資料集的每個應用程式,將一個大型儲存貯體政策劃分為個別、獨立的存取點政策。此方法可讓您更輕鬆地專注於為應用程式建置正確的存取政策,而不會影響到任何其他應用程式在共用資料集內執行的動作。如需詳細資訊,請參閱「使用存取點管理對共用資料集的存取」。
-
高輸送量工作負載 – 適用於 Amazon S3 的掛載點是高輸送量的開放原始碼檔案用戶端,可將 Amazon S3 儲存貯體掛載為本機檔案系統。使用掛載點可讓您的應用程式透過像是開啟和讀取等檔案系統操作,存取儲存在 Amazon S3 中的物件。掛載點會自動將這些操作轉換成 S3 物件 API 呼叫,讓您的應用程式透過檔案介面存取 Amazon S3 的彈性儲存和輸送量。如需詳細資訊,請參閱「使用適用於 Amazon S3 的掛載點」。
-
多區域應用程式 – Amazon S3 多區域存取點可提供全域端點,其中應用程式可用來滿足來自多個 AWS 區域 的 S3 儲存貯體的請求。您可以使用多區域存取點,進而使用與單一區域中使用的相同架構來建置多區域應用程式,然後在全球任何地方執行這些應用程式。多區域存取點不會透過公有網際網路傳送請求,而是提供內建的網路恢復能力,並加速對 Amazon S3 的網際網路請求。如需詳細資訊,請參閱「使用多區域存取點管理多區域流量」。
-
安全殼層 (SSH) 檔案傳輸通訊協定 (SFTP) – 如果您嘗試透過網際網路安全地傳輸敏感資料,您可以在 Amazon S3 儲存貯體使用已啟用 SFTP 的伺服器。AWS SFTP 是一種支援 SSH 完整安全性和驗證功能的網路通訊協定。透過此通訊協定,您可以更精細地控制使用者身分、許可和金鑰,或是使用 IAM 政策來管理存取權。若要將已啟用 SFTP 的伺服器與 Amazon S3 儲存貯體建立關聯,請務必先建立已啟用 SFTP 的伺服器。然後,請設定使用者帳戶,並將伺服器與 Amazon S3 儲存貯體建立關聯。如需此程序的逐步解說,請參閱 AWS 部落格中的 AWS Transfer for SFTP – 適用於 Amazon S3 的全受管 SFTP 服務
。
Amazon S3 主控台
主控台是可用來管理 Amazon S3 和 AWS 資源的 Web 型使用者介面。透過 Amazon S3 主控台,您可以輕鬆存取儲存貯體及修改儲存貯體的屬性。您也可以使用主控台 UI 執行多數的儲存貯體操作,而無須撰寫任何程式碼。
如果您已註冊 AWS 帳戶,則可以登入 Amazon S3 主控台並從 Amazon S3 主控台首頁選擇 S3 來存取 Amazon S3 主控台。您也可以使用下列連結來直接存取:https://console.aws.amazon.com/s3/
AWS CLI
您可以使用 AWS CLI 在系統的命令列發出命令或建置指令碼,以執行 AWS (包括 S3) 任務。例如,若需要存取多個儲存貯體,可以使用 AWS CLI 自動執行常見和重複性任務,以節省時間。隨著組織的擴展,常見動作能否製成指令碼和可否重複使用,是常見的考量。
AWS CLI
AWS SDK
AWS 提供了 SDK (軟體開發套件),該套件包含適用於各種程式設計語言和平台 (Java、Python、Ruby、.NET、iOS、Android 等) 的程式庫及範本程式碼。AWS 軟體開發套件提供便捷方法來建立對 S3 和 AWS 的程式化存取。Amazon S3 是一個 REST 服務。您可以使用 AWS SDK 程式庫 (其中包裝基礎 Amazon S3 REST API),將請求傳送至 Amazon S3,從而簡化程式設計任務。例如,開發套件會負責的工作諸如計算簽章、以密碼演算法簽署請求、管理錯誤以及自動重試請求。如需 AWS 開發套件的其他資訊 (包括如何下載並安裝開發套件),請參閱 AWS 工具
與 Amazon S3 的每次互動,可以經過驗證身分或是匿名進行。如果目前使用 AWS 開發套件,程式庫會運算您提供之金鑰中的簽章,以進行驗證。如需如何向 Amazon S3 提出請求的詳細資訊,請參閱提出請求。
Amazon S3 REST API
Amazon S3 的架構設計成非程式設計語言相關,並使用 AWS 支援的界面來存放與擷取物件。您可以透過使用 Amazon S3 REST API 以程式化設計方式存取 S3 和 AWS。REST API 是 Amazon S3 的 HTTP 界面。藉助 REST API,您可以使用標準 HTTP 要求來建立、擷取與刪除儲存貯體與物件。
若要使用 REST API,您可以使用支援 HTTP 的任何工具組。您甚至可以使用瀏覽器來擷取物件,只要物件是可匿名讀取即可。
REST API 使用標準 HTTP 標頭與狀態碼,因此標準瀏覽器與工具組會如預期般運作。在某些區域中,我們已新增功能至 HTTP (例如,我們已新增標頭來支援存取控制)。在此情況下,我們會盡力以符合標準 HTTP 使用風格的方式來新增功能。
如果直接在應用程式中呼叫 REST API,您必須撰寫程式碼來運算簽章,並將其新增至要求。如需如何向 Amazon S3 提出請求的詳細資訊,請參閱 Amazon S3 API 參考中的提出請求。