Amazon Simple Storage Service - 開發人員指南...Amazon Simple Storage Service...

847
Amazon Simple Storage Service 開發人員指南 API 版本 2006-03-01

Transcript of Amazon Simple Storage Service - 開發人員指南...Amazon Simple Storage Service...

  • Amazon Simple Storage Service開發人員指南

    API 版本 2006-03-01

  • Amazon Simple Storage Service 開發人員指南

    Amazon Simple Storage Service: 開發人員指南Copyright © 2020 Amazon Web Services, Inc. and/or its affiliates. All rights reserved.

    Amazon 的商標和商業外觀不得用於任何非 Amazon 的產品或服務,或以任何可能造成客戶混淆、以任何貶低或貶低Amazon 的方式使用 Amazon 的商標和商業外觀。所有其他非 Amazon 擁有的商標均為其各自擁有者的財產,這些商標可能與 Amazon 有關或無關,或與 Amazon 有連結或贊助。

  • Amazon Simple Storage Service 開發人員指南

    Table of Contents什麼是 Amazon S3? .......................................................................................................................... 1

    如何...? .................................................................................................................................... 1介紹 .................................................................................................................................................. 2

    Amazon S3 概觀與本指南 ............................................................................................................ 2使用 Amazon S3 的優點 .............................................................................................................. 2Amazon S3 概念 ........................................................................................................................ 2

    儲存貯體 ............................................................................................................................ 3物件 .................................................................................................................................. 3金鑰 .................................................................................................................................. 3區域 .................................................................................................................................. 3Amazon S3 資料一致性模式 ................................................................................................. 4

    Amazon S3 功能 ........................................................................................................................ 5儲存體方案 ........................................................................................................................ 6儲存貯體政策 ..................................................................................................................... 6AWS Identity and Access Management .................................................................................. 7存取控制清單 ..................................................................................................................... 7版本控制 ............................................................................................................................ 7操作 .................................................................................................................................. 7

    Amazon S3 應用程式開發界面 (API) .............................................................................................. 7REST 界面 ........................................................................................................................ 8SOAP 界面 ........................................................................................................................ 8

    支付 Amazon S3 ........................................................................................................................ 8相關服務 .................................................................................................................................... 8

    提出要求 ............................................................................................................................................ 9關於存取金鑰 ............................................................................................................................. 9

    AWS 帳戶存取金鑰 ............................................................................................................. 9IAM 使用者存取金鑰 ............................................................................................................ 9暫時安全登入資料 .............................................................................................................. 10

    要求端點 .................................................................................................................................. 10透過 IPv6 提出請求 ................................................................................................................... 10

    IPv6 入門 ......................................................................................................................... 10在 IAM 原則中使用 IPv6 地址 ............................................................................................. 11測試 IP 地址相容性 ........................................................................................................... 12使用雙堆疊端點 ................................................................................................................. 13

    使用 AWS 開發套件提出請求 ...................................................................................................... 16使用 AWS 帳戶或 IAM 使用者登入資料 ................................................................................ 16使用 IAM 使用者暫時性登入資料 .......................................................................................... 23使用聯合身分使用者暫時登入資料 ........................................................................................ 31

    使用 REST API 提出要求 ........................................................................................................... 40為 REST API 請求建構 S3 主機名稱 .................................................................................... 40虛擬主辦式和路徑式請求 .................................................................................................... 40雙重堆疊端點 (REST API) .................................................................................................. 41儲存貯體的虛擬託管 .......................................................................................................... 41要求重新導向與 REST API ................................................................................................. 46

    儲存貯體 .......................................................................................................................................... 49建立儲存貯體 ............................................................................................................................ 49

    Amazon S3 主控台 ........................................................................................................... 50REST API ........................................................................................................................ 50AWS 開發套件 .................................................................................................................. 50關於許可 .......................................................................................................................... 50

    管理儲存貯體的公開存取 ............................................................................................................ 51存取儲存貯體 ............................................................................................................................ 51

    虛擬託管型存取 ................................................................................................................. 51路徑型存取 ....................................................................................................................... 52

    API 版本 2006-03-01iii

  • Amazon Simple Storage Service 開發人員指南

    透過 IPv6 存取 S3 儲存貯體 ............................................................................................... 52透過 S3 存取點存取儲存貯體 .............................................................................................. 52使用 S3:// 存取儲存貯體 ..................................................................................................... 52

    儲存貯體組態選項 ...................................................................................................................... 53法規與限制 ............................................................................................................................... 54

    命名規則 .......................................................................................................................... 55建立儲存貯體的範例 .................................................................................................................. 55

    使用 Amazon S3 主控台 .................................................................................................... 56使用適用於 Java 的 AWS 開發套件 ..................................................................................... 56使用適用於 .NET 的 AWS 開發套件 ..................................................................................... 57使用適用於 Ruby 第 3 版的 AWS 開發套件 ........................................................................... 58使用其他 AWS 開發套件 .................................................................................................... 59

    刪除或清空儲存貯體 .................................................................................................................. 59刪除儲存貯體 .................................................................................................................... 59清空儲存貯體 .................................................................................................................... 61

    儲存貯體的預設加密 .................................................................................................................. 62如何設定 Amazon S3 預設儲存貯體加密 ............................................................................... 62對跨帳戶操作使用加密 ....................................................................................................... 63搭配使用預設加密與複寫 .................................................................................................... 63使用 CloudTrail 與 CloudWatch 監視預設加密 ........................................................................ 64詳細資訊 .......................................................................................................................... 64

    Transfer Acceleration ................................................................................................................. 64為什麼要使用 Transfer Acceleration? .................................................................................. 64入門 ................................................................................................................................ 65使用 Amazon S3 Transfer Acceleration 的要求 ...................................................................... 66Transfer Acceleration 範例 ................................................................................................. 66

    申請者付款儲存貯體 .................................................................................................................. 70使用主控台設定 ................................................................................................................. 71使用 REST API 設定 ......................................................................................................... 71收費詳細資訊 .................................................................................................................... 73

    存取控制 .................................................................................................................................. 74帳單與用量報告 ......................................................................................................................... 74

    帳單報告 .......................................................................................................................... 74用量報告 .......................................................................................................................... 76了解帳單與用量報告 .......................................................................................................... 77使用成本分配標籤 .............................................................................................................. 84

    存取點 ............................................................................................................................................. 86建立存取點 ............................................................................................................................... 86

    命名 Amazon S3 存取點的規則 ........................................................................................... 86建立受限於 Virtual Private Cloud 的存取點 ............................................................................ 87管理存取點的公開存取 ....................................................................................................... 88配置使用存取點的 IAM 原則 ................................................................................................ 89

    使用存取點 ............................................................................................................................... 93存取點與 S3 操作和 AWS 服務的相容性 ............................................................................... 93監控與記錄 ....................................................................................................................... 94範例 ................................................................................................................................ 95

    法規與限制 ............................................................................................................................... 96物件 ................................................................................................................................................ 97

    物件金鑰與中繼資料 .................................................................................................................. 97物件金鑰 .......................................................................................................................... 98物件中繼資料 .................................................................................................................. 100

    儲存體方案 ............................................................................................................................. 102經常存取物件的儲存體方案 ................................................................................................ 102自動最佳化經常存取物件與不常存取物件的儲存體方案 ........................................................... 102不常存取物件的儲存體方案 ................................................................................................ 103封存物件的儲存體方案 ...................................................................................................... 103Amazon S3 on Outposts 的儲存方案 .................................................................................. 104

    API 版本 2006-03-01iv

  • Amazon Simple Storage Service 開發人員指南

    比較 Amazon S3 儲存方案 ................................................................................................ 104設定物件的儲存體方案 ...................................................................................................... 105

    子資源 ................................................................................................................................... 105S3 版本控制 ........................................................................................................................... 106物件標記 ................................................................................................................................ 108

    與物件標記相關的 API 操作 .............................................................................................. 109物件標記及其他資訊 ......................................................................................................... 110管理物件標籤 .................................................................................................................. 113

    生命週期管理 .......................................................................................................................... 116何時需要使用生命週期設定? ............................................................................................. 116如何設定生命週期? ......................................................................................................... 117其他考量 ........................................................................................................................ 117生命週期組態元素 ............................................................................................................ 122生命週期組態範例 ............................................................................................................ 128設定生命週期組態 ............................................................................................................ 137

    跨來源資源分享 (CORS) ........................................................................................................... 146跨來源資源分享:使用案例情境 ......................................................................................... 146如何在儲存貯體上設定 CORS? ......................................................................................... 146Amazon S3 如何評估儲存貯體上的 CORS 組態? ................................................................ 150正在啟用 CORS .............................................................................................................. 150對 CORS 進行故障診斷 .................................................................................................... 155

    可對物件執行的操作 ................................................................................................................. 156取得物件 ........................................................................................................................ 156上傳物件 ........................................................................................................................ 164複製物件 ........................................................................................................................ 204列出物件金鑰 .................................................................................................................. 214刪除物件 ........................................................................................................................ 220從物件中選取內容 ............................................................................................................ 238還原封存物件 .................................................................................................................. 242查詢已封存物件 ............................................................................................................... 246

    儲存方案分析 .................................................................................................................................. 250如何設定儲存方案分析 .............................................................................................................. 250儲存方案分析 .......................................................................................................................... 251如何匯出儲存體方案分析資料? ................................................................................................. 253

    儲存體方案分析匯出檔案配置 ............................................................................................. 254Amazon S3 分析 REST API ...................................................................................................... 254

    Amazon S3 on Outposts .................................................................................................................. 255Amazon S3 on Outposts 入門 ................................................................................................... 255

    訂購 Outpost .................................................................................................................. 255設定 Outpost 上的 S3 ...................................................................................................... 256

    法規與限制 ............................................................................................................................. 256規格 .............................................................................................................................. 256支援的 API 操作 .............................................................................................................. 256不支援的 Amazon S3 功能 ................................................................................................ 257

    將 IAM 與 S3 on Outposts 搭配使用 .......................................................................................... 258適用於 S3 on Outposts 的 ARN ......................................................................................... 258

    使用 S3 on Outposts ............................................................................................................... 259存取 S3 on Outposts ....................................................................................................... 260

    範例 ...................................................................................................................................... 261S3 on Outposts 範例 - 使用 AWS CLI ................................................................................ 261S3 on Outposts 範例 - 使用適用於 Java 的開發套件 ............................................................. 266

    安全性 ........................................................................................................................................... 285資料保護 ................................................................................................................................ 285

    網際網路隱私權 ............................................................................................................... 286資料加密 ........................................................................................................................ 286

    Identity and Access Management .............................................................................................. 319管理對 Amazon S3 資源的存取簡介 ................................................................................... 319

    API 版本 2006-03-01v

  • Amazon Simple Storage Service 開發人員指南

    Amazon S3 資源存取選項 ................................................................................................. 319概觀 .............................................................................................................................. 320Amazon S3 如何授權要求 ................................................................................................. 325使用提供之存取政策選項的準則 ......................................................................................... 331演練範例:管理存取 ......................................................................................................... 333使用儲存貯體政策與使用者政策 ......................................................................................... 357使用 ACL 管理存取 .......................................................................................................... 455使用 S3 物件擁有權控制上傳物件的擁有權 .......................................................................... 467封鎖公開存取 .................................................................................................................. 469

    記錄和監控 ............................................................................................................................. 476合規驗證 ................................................................................................................................ 477

    清查 .............................................................................................................................. 478彈性 ...................................................................................................................................... 485

    備份加密 ........................................................................................................................ 486版本控制 ........................................................................................................................ 486鎖定物件 ........................................................................................................................ 507

    基礎設施安全 .......................................................................................................................... 513組態與漏洞分析 ....................................................................................................................... 513儲存貯體擁有者條件 ................................................................................................................. 513

    何時使用儲存貯體擁有者條件 ............................................................................................. 514驗證儲存貯體擁有者 ......................................................................................................... 514範例 .............................................................................................................................. 514法規與限制 ..................................................................................................................... 516

    安全最佳實務 .......................................................................................................................... 516Amazon S3 預防性安全最佳實務 ........................................................................................ 517Amazon S3 監控和稽核最佳實務 ........................................................................................ 519

    S3 批次作業 ................................................................................................................................... 521術語 ...................................................................................................................................... 521批次操作基本知識 .................................................................................................................... 521

    任務運作方式 .................................................................................................................. 522指定資訊清單 .................................................................................................................. 522

    建立任務 ................................................................................................................................ 523建立任務請求 .................................................................................................................. 523建立任務回應 .................................................................................................................. 524授予批次操作的許可 ......................................................................................................... 524

    操作 ...................................................................................................................................... 529放置物件複製 .................................................................................................................. 530初始化還原物件 ............................................................................................................... 530叫用 Lambda 函數 ........................................................................................................... 531PUT 物件 ACL ................................................................................................................ 538PUT 物件標記 ................................................................................................................. 538管理物件鎖定保留日期 ...................................................................................................... 539管理物件鎖定法務保存 ...................................................................................................... 539

    管理任務 ................................................................................................................................ 540列出任務 ........................................................................................................................ 540檢視任務詳細資訊 ............................................................................................................ 541使用標籤控制存取和標記任務 ............................................................................................. 541指派任務優先順序 ............................................................................................................ 542任務狀態 ........................................................................................................................ 542追蹤任務失敗 .................................................................................................................. 543通知和記錄日誌 ............................................................................................................... 544完成報告 ........................................................................................................................ 544

    範例 ...................................................................................................................................... 544使用 AWS CLI 的批次操作範例 .......................................................................................... 544使用 Java 的批次操作範例 ................................................................................................ 557任務標籤範例 .................................................................................................................. 571完成報告範例 .................................................................................................................. 575

    API 版本 2006-03-01vi

  • Amazon Simple Storage Service 開發人員指南

    跨帳戶複製範例 ............................................................................................................... 577建立 EventBridge 規則以檢視批次操作任務事件 .................................................................... 582

    託管靜態網站 .................................................................................................................................. 585網站端點 ................................................................................................................................ 585

    網站端點範例 .................................................................................................................. 586新增 DNS CNAME .......................................................................................................... 586搭配 Route 53 使用自訂網域 ............................................................................................. 587網站端點與 REST API 端點之間的主要差異 ......................................................................... 587

    使用主控台設定儲存貯體 ........................................................................................................... 587啟用網站託管 .................................................................................................................. 587設定索引文件 .................................................................................................................. 588設定網站存取許可 ............................................................................................................ 590(選擇性) 記錄 Web 流量 ................................................................................................... 593(選用) 配置自訂錯誤文件 ................................................................................................... 593(選用) 設定重新導向 ......................................................................................................... 595

    以程式設計方式設定儲存貯體 ..................................................................................................... 602使用適用於 Java 的 AWS 開發套件 .................................................................................... 602使用適用於 .NET 的 AWS 開發套件 .................................................................................... 603使用適用於 PHP 的開發套件 ............................................................................................. 605使用 REST API ............................................................................................................... 605

    範例演練 ................................................................................................................................ 606設定靜態網站 .................................................................................................................. 606使用自訂網域配置靜態網站 ................................................................................................ 610

    通知 .............................................................................................................................................. 625概觀 ...................................................................................................................................... 625如何啟用事件通知 .................................................................................................................... 626事件通知類型與目的地 .............................................................................................................. 627

    支援的事件類型 ............................................................................................................... 628支援的目標 ..................................................................................................................... 628

    使用物件金鑰名稱篩選設定通知 ................................................................................................. 629以物件金鑰名稱篩選的有效通知組態範例 ............................................................................. 629無效字首/尾碼重疊的通知組態範例 ...................................................................................... 631

    授予許可以將事件通知訊息發佈至目標 ........................................................................................ 633授與叫用 AWS Lambda 函數的權限 ................................................................................... 633授予許可以將訊息發佈到 SNS 主題或 SQS 佇列 .................................................................. 633

    範例演練:使用 SNS 或 SQS 新增儲存貯體通知 .......................................................................... 635演練摘要 ........................................................................................................................ 635步驟 1:建立 Amazon SQS 佇列 ....................................................................................... 636步驟 2:建立 Amazon SNS 主題 ....................................................................................... 637步驟 3:將通知組態新增至儲存貯體 .................................................................................... 638步驟 4:測試設定 ............................................................................................................ 640

    事件訊息結構 .......................................................................................................................... 640複寫 .............................................................................................................................................. 644

    物件複寫的類型 ....................................................................................................................... 644為什麼要使用複寫 .................................................................................................................... 644CRR 使用時機 ........................................................................................................................ 644SRR 使用時機 ........................................................................................................................ 645複寫需求 ................................................................................................................................ 645Amazon S3 複寫的內容? ......................................................................................................... 646

    複寫內容為何? ............................................................................................................... 646未複寫內容為何? ............................................................................................................ 647複寫現有物件 .................................................................................................................. 648相關主題 ........................................................................................................................ 648

    設定複寫的概觀 ....................................................................................................................... 648複寫組態概觀 .................................................................................................................. 649設定複寫的許可 ............................................................................................................... 657

    其他複寫組態 .......................................................................................................................... 660

    API 版本 2006-03-01vii

  • Amazon Simple Storage Service 開發人員指南

    使用 S3 複寫時間控制來達到合規要求 ................................................................................ 660變更複本擁有者 ............................................................................................................... 662複寫加密的物件 ............................................................................................................... 664

    複寫演練 ................................................................................................................................ 669範例 1:設定相同帳戶內的儲存貯體。 ................................................................................. 669範例 2:設定不同帳戶內的儲存貯體 .................................................................................... 678範例 3:變更複本擁有者 ................................................................................................... 678範例 4:複寫加密的物件 ................................................................................................... 682範例 5:S3 複寫時間控制 (S3 RTC) ................................................................................... 687

    複寫狀態資訊 .......................................................................................................................... 689相關主題 ........................................................................................................................ 691

    故障排除複寫 .......................................................................................................................... 691相關主題 ........................................................................................................................ 692

    複寫其他考量事項 .................................................................................................................... 692生命週期組態與物件複本 ................................................................................................... 692版本控制組態與複寫組態 ................................................................................................... 692記錄日誌組態與複寫組態 ................................................................................................... 693CRR 與目標區域 ............................................................................................................. 693暫停複寫 ........................................................................................................................ 693相關主題 ........................................................................................................................ 693

    要求路由 ........................................................................................................................................ 694要求重新導向與 REST API ....................................................................................................... 694

    DNS 路由 ....................................................................................................................... 694暫時要求重新導向 ............................................................................................................ 695永久性要求重新導向 ......................................................................................................... 696要求重新導向範例 ............................................................................................................ 697

    DNS 考量 ............................................................................................................................... 697最佳化 Amazon S3 效能 ................................................................................................................... 698

    效能指導方針 .......................................................................................................................... 698測量效能 ........................................................................................................................ 699水平擴展 ........................................................................................................................ 699使用位元組範圍擷取 ......................................................................................................... 699重試請求 ........................................................................................................................ 699在同一區域結合 Amazon S3 與 Amazon EC2 ...................................................................... 699使用 Transfer Acceleration 將延遲最小化 ............................................................................ 699使用最新的 AWS 軟體開發套件 ......................................................................................... 700

    效能設計模式 .......................................................................................................................... 700快取經常存取的內容 ......................................................................................................... 700適用於對延遲敏感之應用程式的逾時和重試 .......................................................................... 701水平擴展和請求並行化 ...................................................................................................... 701加速地理上不同的資料傳輸 .............................................................................................. 702

    監控 .............................................................................................................................................. 703監控工具 ................................................................................................................................ 703

    自動化工具 ..................................................................................................................... 703手動工具 ........................................................................................................................ 703

    使用 CloudWatch 監控指標 ....................................................................................................... 704指標與維度 ..................................................................................................................... 704Amazon S3 CloudWatch 的儲存貯體每日儲存指標 ................................................................ 705Amazon S3 CloudWatch 請求指標 ..................................................................................... 705Amazon S3 CloudWatch 複寫指標 ..................................................................................... 708Amazon S3 on Outposts CloudWatch 指標 ......................................................................... 708Amazon S3 CloudWatch 維度 ........................................................................................... 709存取 CloudWatch 指標 ..................................................................................................... 710相關資源 ........................................................................................................................ 711

    儲存貯體的指標組態 ................................................................................................................. 711CloudWatch 指標盡力交付 ................................................................................................ 711篩選指標組態 .................................................................................................................. 712

    API 版本 2006-03-01viii

  • Amazon Simple Storage Service 開發人員指南

    如何新增指標組態 ............................................................................................................ 712使用 Amazon S3 進行記錄 ....................................................................................................... 713使用 AWS CloudTrail 記錄 API 呼叫 .......................................................................................... 714

    CloudTrail 中的 Amazon S3 資訊 ....................................................................................... 714搭配 Amazon S3 伺服器存取日誌和 CloudWatch Logs 使用 CloudTrail 日誌 .............................. 718範例:Amazon S3 日誌檔案項目 ........................................................................................ 718相關資源 ........................................................................................................................ 720

    使用 CloudTrail 來識別 Amazon S3 請求 .................................................................................... 720CloudTrail 如何擷取對 Amazon S3 提出的請求 .................................................................... 721為 S3 儲存貯體和物件啟用 CloudTrail 事件記錄 ................................................................... 721在 CloudTrail 日誌中識別對 Amazon S3 提出的請求 ............................................................. 721使用 AWS CloudTrail 來識別 Amazon S3 簽章第 2 版請求 ..................................................... 723使用 CloudTrail 來識別對 Amazon S3 物件的存取 ................................................................ 725相關資源 ........................................................................................................................ 720

    BitTorrent ....................................................................................................................................... 728BitTorrent 交付的收費方式 ........................................................................................................ 728使用 BitTorrent 擷取存放在 Amazon S3 中的物件 ......................................................................... 728使用 Amazon S3 和 BitTorrent 發佈內容 ..................................................................................... 729

    錯誤處理 ........................................................................................................................................ 730REST 錯誤回應 ....................................................................................................................... 730

    回應標頭 ........................................................................................................................ 730錯誤回應 ........................................................................................................................ 731

    SOAP 錯誤回應 ...................................................................................................................... 731Amazon S3 錯誤的最佳實務 ...................................................................................................... 732

    重試 InternalError ............................................................................................................ 732針對重複出現的 SlowDown 錯誤微調應用程式 ...................................................................... 732隔離錯誤 ........................................................................................................................ 732

    Amazon S3 疑難排解 ....................................................................................................................... 733按症狀對 Amazon S3 進行疑難排解 ........................................................................................... 733

    儲存貯體如有啟用版本控制,對該儲存貯體請求的 HTTP 503 回應數明顯增加 ............................ 733存取設定了 CORS 的儲存貯體時發生未預期的行為 ............................................................... 733

    取得 AWS Support 所需的 Amazon S3 請求 ID ............................................................................ 733使用 HTTP 取得要求 ID ................................................................................................... 734使用 Web 瀏覽器取得要求 ID ............................................................................................ 734使用 AWS 開發套件取得要求 ID ........................................................................................ 734使用 AWS CLI 取得請求 ID ............................................................................................... 736

    相關主題 ................................................................................................................................ 736Server access logging (伺服器存取記錄日誌) ....................................................................................... 737

    如何啟用伺服器存取記錄 ........................................................................................................... 737.................................................................................................................................... 738

    日誌物件金鑰格式 .................................................................................................................... 738交付日誌的方式? .................................................................................................................... 738伺服器日誌交付最佳作法 ........................................................................................................... 739儲存貯體記錄狀態變更會在一段時間後生效 .................................................................................. 739使用主控台啟用記錄 ................................................................................................................. 739以程式設計方式啟用記錄 ........................................................................................................... 739

    啟用記錄 ........................................................................................................................ 739為 Log Delivery 群組授予 WRITE 與 READ_ACP 許可 .......................................................... 740範例:適用於 .NET 的 AWS 開發套件 ................................................................................. 740

    記錄格式 ................................................................................................................................ 742複製操作的其他記錄 ......................................................................................................... 746客戶存取記錄資訊 ............................................................................................................ 750可擴展伺服器存取記錄格式的程式設計考量 .......................................................................... 750

    刪除日誌檔案 .......................................................................................................................... 750相關資源 ........................................................................................................................ 751

    使用 Amazon S3 存取日誌來識別 Amazon S3 請求 ...................................................................... 751為請求啟用 Amazon S3 存取日誌 ...................................................................................... 751

    API 版本 2006-03-01ix

  • Amazon Simple Storage Service 開發人員指南

    使用 Amazon Athena 在 Amazon S3 存取日誌中查詢請求 ...................................................... 753使用 Amazon S3 記錄檔來識別 SigV2 請求 ......................................................................... 755使用 Amazon S3 日誌檔來識別物件存取 ............................................................................. 755相關資源 ........................................................................................................................ 756

    AWS 開發套件與 Explorer ................................................................................................................ 757在請求身份驗證中指定 Signature 版本 ........................................................................................ 758

    Amazon S3 適用的 AWS Signature 第 2 版已結束 (已廢除) .................................................... 759從 Signature 第 2 版遷移至 Signature 第 4 版 ...................................................................... 760

    設定 AWS CLI ........................................................................................................................ 763使用適用於 Java 的 AWS 開發套件 ............................................................................................ 763

    Java API 組織 ................................................................................................................ 764測試 Amazon S3 Java 程式碼範例 ..................................................................................... 764

    使用適用於 .NET 的 AWS 開發套件 ............................................................................................ 764.NET API 組織 ................................................................................................................ 765執行 Amazon S3 .NET 程式碼範例 ..................................................................................... 765

    使用適用於 PHP 的 AWS 開發套件及執行 PHP 範例 .................................................................... 765適用於 PHP 的 AWS 開發套件層級 ................................................................................... 766執行 PHP 範例 ............................................................................................................... 766相關資源 ........................................................................................................................ 766

    使用適用於 Ruby 的 AWS 開發套件 - 第 3 版 .............................................................................. 766Ruby API 組織 ................................................................................................................ 766測試 Ruby 指令碼範例 ..................................................................................................... 767

    使用適用於 Python (Boto) 的 AWS 開發套件 ............................................................................... 767使用適用於 iOS 和 Android 的 AWS Mobile SDK ......................................................................... 768

    詳細資訊 ........................................................................................................................ 768使用 AWS Amplify JavaScript 程式庫 ......................................................................................... 768

    詳細資訊 ........................................................................................................................ 768附錄 .............................................................................................................................................. 769

    附錄 A:使用 SOAP API .......................................................................................................... 769常見的 SOAP API 元素 .................................................................................................... 769對 SOAP 要求進行身分驗證 .............................................................................................. 769使用 SOAP 設定存取政策 ................................................................................................. 770

    附錄 B:驗證要求 (AWS Signature 第 2 版) ................................................................................ 771使用 REST API 驗證範例 ................................................................................................. 772簽署與驗證 REST 要求 .................................................................................................... 773使用 POST 的瀏覽器型上傳 .............................................................................................. 782

    資源 .............................................................................................................................................. 797SQL 參考 ....................................................................................................................................... 798

    SELECT 命令 ......................................................................................................................... 798SELECT 清單 ................................................................................................................. 798FROM 子句 .................................................................................................................... 798WHERE 子句 .................................................................................................................. 800LIMIT 子句 (僅限 Amazon S3 Select 使用) .......................................................................... 801屬性存取 ........................................................................................................................ 801區分大小寫的標頭/屬性名稱 ............................................................................................... 802使用預留關鍵字做為使用者定義的條件 ................................................................................ 802純量表達式 ..................................................................................................................... 803

    資料類型 ................................................................................................................................ 803資料類型轉換 .................................................................................................................. 803支援的資料類型 ............................................................................................................... 803

    運算子 ................................................................................................................................... 804邏輯運算子 ..................................................................................................................... 804比較運算子 ..................................................................................................................... 804模式比對運算子 ............................................................................................................... 804單一運算子 ..................................................................................................................... 805數學運算子 ..................................................................................................................... 805運算子優先順序 ............................................................................................................... 805

    API 版本 2006-03-01x

  • Amazon Simple Storage Service 開發人員指南

    預留關鍵字 ............................................................................................................................. 805SQL 函數 ............................................................................................................................... 809

    彙總函數 (僅限 Amazon S3 Select 使用) ............................................................................. 809條件函數 ........................................................................................................................ 810轉換函數 ........................................................................................................................ 812日期函數 ........................................................................................................................ 813字串函數 ........................................................................................................................ 818

    文件歷史記錄 .................................................................................................................................. 822舊版更新 ................................................................................................................................ 825

    AWS 詞彙表 ................................................................................................................................... 836

    API 版本 2006-03-01xi

  • Amazon Simple Storage Service 開發人員指南如何...?

    什麼是 Amazon S3?Amazon Simple Storage Service (Amazon S3) 是網際網路儲存服務。此服務旨在降低開發人員進行網路規模運算的難度。

    Amazon S3 具有一個簡單的 Web 服務介面,可讓您隨時從 Web 上的任何位置存放和擷取任意數量的資料。它可讓任何開發人員存取相同的高擴展、可靠、快速、經濟實惠的資料儲存基礎設施,而 Amazon 使用此基礎設施來執行它自己的全球網站網路。此服務的目的是要盡可能增加擴展的好處,並將這些好處傳遞給開發人員。

    本指南說明 Amazon S3 的核心概念 (例如儲存貯體、存取點和物件),以及如何使用 Amazon S3 應用程式設計介面 (API) 來處理這些資源。

    如何...?資訊 相關章節

    一般產品概念與定價 Amazon S3

    取得 Amazon S3 快速實作簡介 Amazon Simple Storage Service 入門指南

    了解 Amazon S3 重要術語與概念 Amazon S3 簡介 (p. 2)

    如何使用儲存貯體? 使用 Amazon S3 儲存貯體 (p. 49)

    如何使用存取點? 使用 Amazon S3 存取點管理資料存取 (p. 86)

    如何使用物件? 使用 Amazon S3 物件 (p. 97)

    如何提出要求? 提出要求 (p. 9)

    如何管理資源存取? Amazon S3 中的身分和存取管理 (p. 319)

    API 版本 2006-03-011

    http://aws.amazon.com/s3/https://docs.aws.amazon.com/AmazonS3/latest/gsg/

  • Amazon Simple Storage Service 開發人員指南Amazon S3 概觀與本指南

    Amazon S3 簡介這篇 Amazon Simple Storage Service (Amazon S3) 簡介提供此 Web 服務的詳細摘要。閱讀本節之後,您應該會充分了解該服務所提供的功能,以及其如何符合您的業務需求。

    主題• Amazon S3 概觀與本指南 (p. 2)• 使用 Amazon S3 的優點 (p. 2)• Amazon S3 概念 (p. 2)• Amazon S3 功能 (p. 5)• Amazon S3 應用程式開發界面 (API) (p. 7)• 支付 Amazon S3 (p. 8)• 相關服務 (p. 8)

    Amazon S3 概觀與本指南Amazon S3 具有一個簡單的 Web 服務界面,可讓您隨時從 Web 上的任何位置存放和擷取任意數量的資料。

    本指南說明如何傳送要求來建立儲存貯體、存放與擷取物件,以及管理資源的許可。該指南也會說明存取控制與身分驗證程序。存取控制定義誰可以存取 Amazon S3 中的物件與儲存貯體,以及存取類型 (例如 READ與 WRITE)。身分驗證程序會驗證嘗試存取 Amazon Web Services (AWS) 之使用者的身分。

    使用 Amazon S3 的優點Amazon S3 內建一組著重於簡潔與健全性的基本功能。以下為使用 Amazon S3 的一些優點:

    • 建立儲存貯體 – 建立並命名存放資料的儲存貯體。儲存貯體是 Amazon S3 中用於資料儲存的基本容器。• 存放資料 – 在儲存貯體中存放無限量的資料。您可以將任意數量的物件上傳到 Amazon S3 儲存貯體。每

    個物件最多可包含 5 TB 的資料。每個物件會透過開發人員指派的唯一金鑰來存放與擷取。• 下載資料 — 下載您的資料或讓他人這麼做。隨時下載您的資料或允取其他人這樣做。• 許可 – 允許或拒絕其他人將資料上傳或下載到您的 Amazon S3 儲存貯體。將上傳與下載許可授予三種使

    用者類型。身分驗證機制可協助保護資料不受未經授權的存取。• 標準界面 – 使用專為搭配任何網際網路開發工具組所設計的標準型 REST 與 SOAP 界面。

    Note

    HTTP 上的 SOAP 支援已淘汰,但仍可透過 HTTPS 取得。SOAP 不支援新的 Amazon S3 功能。建議您使用 REST API 或 AWS 開發套件。

    Amazon S3 概念本節說明您需要了解才能有效使用 Amazon S3 的重要概念與術語。這些概念與術語會依您最可能遇到的順序來呈現。

    主題• 儲存貯體 (p. 3)

    API 版本 2006-03-012

  • Amazon Simple Storage Service 開發人員指南儲存貯體

    • 物件 (p. 3)• 金鑰 (p. 3)• 區域 (p. 3)• Amazon S3 資料一致性模式 (p. 4)

    儲存貯體儲存貯體是 Amazon S3 中用於存放物件的容器。每個物件都包含在儲存貯體中。例如,如果名為 photos/puppy.jpg 的物件存放在美國西部 (奧勒岡) 區域的 awsexamplebucket1 儲存貯體中,則可以使用 URLhttps://awsexamplebucket1.s3.us-west-2.amazonaws.com/photos/puppy.jpg 定址。

    儲存貯體提供數種用途:

    • 以最高層級來組織 Amazon S3 命名空間。• 它們可以識別負責儲存體和資料傳輸費用的帳戶。• 它們可在存取控制中扮演角色。• 它們可以充當用量報告中的彙總單位。

    您可以設定儲存貯體,以便在特定 AWS 區域中建立它們。如需詳細資訊,請參閱存取儲存貯體 (p. 51)。您也可以設定儲存貯體,以便在每次新增物件時,Amazon S3 都會產生唯一的版本 ID 並指派給物件。如需詳細資訊,請參閱使用版本控制 (p. 486)。

    如需儲存貯體的詳細資訊,請參閱「使用 Amazon S3 儲存貯體 (p. 49)」。

    物件物件是存放在 Amazon S3 中的基本實體。物件是由物件資料與中繼資料構成。資料部分對 Amazon S3 而言不透明。中繼資料是一組成對的名稱與數值,會說明該物件。其中包括一些預設中繼資料 (如上次修改日期)以及標準 HTTP 中繼資料 (如 Content-Type)。您也可以在存放物件時指定自訂中繼資料。

    在儲存貯體中,每個物件都是由金鑰 (名稱) 與版本 ID 來唯一識別。如需詳細資訊,請參閱金鑰 (p. 3)與使用版本控制 (p. 486)。

    金鑰金鑰是表示儲存貯體中物件的唯一識別符。儲存貯體的每個物件只能有一個金鑰。儲存貯體、金鑰和版本 ID的組合專門識別每個物件。因此,您可以將 Amazon S3 視為「儲存貯體 + 金鑰 + 版本」與物件本身之間的基本資料對應。Amazon S3 中的每個物件可透過 Web 服務端點、儲存貯體名稱、金鑰及版本 (選擇性) 的組合來唯一定址。例如,在 URL https://doc.s3.amazonaws.com/2006-03-01/AmazonS3.wsdl 中,「doc」是儲存貯體的名稱,而「2006-03-01/AmazonS3.wsdl」是金鑰。

    如需物件金鑰的詳細資訊,請參閱物件金鑰。

    區域您可以選擇地理 AWS 區域供 Amazon S3 存放您建立的儲存貯體。您可以選擇區域以最佳化延遲、降低成本或因應法規需求。除非您明確地將存放在區域中的物件傳輸到其他區域,否則物件絕對不會離開該區域。例如,存放在歐洲 (愛爾蘭) 區域的物件絕不會離開此區域。

    Note

    您僅可在針對您帳戶啟用的 AWS 區域中存取 Amazon S3 及其功能。

    如需 Amazon S3 區域和端點的清單,請參閱《AWS 一般參考》中的區域與端點。

    API 版本 2006-03-013

    https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keyshttps://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region

  • Amazon Simple Storage Service 開發人員指南Amazon S3 資料一致性模式

    Amazon S3 資料一致性模式Amazon S3 針對您在所有區域中 S3 儲存貯體中的新物件 PUT 提供先寫後讀一致性,但需注意一點。那就是如果您在物件建立之前提出金鑰名稱的 HEAD 或 GET 請求,然後在那之後不久建立物件,則由於最終一致性,後續 GET 可能不會傳回物件。

    Amazon S3 為所有區域中的覆寫 PUT 與 DELETE 提供最終一致性。

    單一金鑰的更新不可部分完成。舉例來說,如果您 PUT 到現有的金鑰,後續讀取可能會傳回舊的資料或更新後的資料,但絕不會傳回損毀或部分資料。

    Amazon S3 在 AWS 資料中心內的多部伺服器上複寫資料,達到高可用性。如果 PUT 要求成功,則您的資料已安全地存放。不過,變更的相關資訊必須複寫遍及整個 Amazon S3,這可能需要一些時間,因此您可能觀察到下列行為:

    • 一個處理序將新物件寫入 Amazon S3,並立即列出其儲存貯體內的金鑰。在完全傳播變更之前,物件可能不會出現在清單中。

    • 一個處理序會取代現有的物件,並立即嘗試讀取該物件。在完全傳播變更之前,Amazon S3 可能會傳回先前的資料。

    • 一個處理序會刪除現有的物件,並立即嘗試讀取該物件。在完全傳播刪除之前,Amazon S3 可能會傳回已刪除的資料。

    • 一個處理序會刪除現有的物件,並立即列出其儲存貯體內的金鑰。在完全傳播刪除之前,Amazon S3 可能會列出已刪除的物件。

    Note

    • Amazon S3 目前不支援並行更新的物件鎖定。如果同時對相同的金鑰提出兩個 PUT 要求,會優先使用具有最新時間戳記的要求。如果這是問題,您需要在應用程式中內建物件鎖定機制。

    物件鎖住與 S3 物件鎖定功能不同。透過 S3 物件鎖定,您可以使用單寫多讀 (WORM) 模型存放物件,在固定時間內或永遠避免刪除或覆寫物件。如需更多詳細資訊,請參閱 the section called“鎖定物件” (p. 507)。

    • 更新是以金鑰為基礎。無法跨金鑰進行不可部分完成的更新。例如,您無法更新某個需要更新另一個金鑰的金鑰,除非您將這項功能設計到應用程式中。

    儲存貯體組態具有類似的最終一致性模型,並具有相同的警告。例如,如果您刪除儲存貯體並立即列出所有儲存貯體,刪除的儲存貯體可能仍會出現在清單中。

    下表說明最終一致讀取與一致性讀取的特性。

    最終一致讀取 一致性讀取

    可能過時的讀取 無過時的讀取

    最低讀取延遲 可能偏高的讀取延遲

    最高的讀取輸送量 可能偏低的讀取輸送量

    並行應用程式本節提供多個用戶端寫入至相同項目時的最終一致性與一致性讀取要求範例。

    在此範例中,會完成 W1 (寫入 1) 與 W2 (寫入 2),再開始 R1 (讀取 1) 與 R2 (讀取 2)。針對一致性讀取,R1與 R2 都會傳回 color = ruby。針對最終一致讀取,根據經過的時間,R1 與 R2 可能會傳回 color =red 或 color = ruby。

    API 版本 2006-03-014

  • Amazon Simple Storage Service 開發人員指南Amazon S3 功能

    在下一個範例中,W2 會在開始 R1 之後才完成。因此,R1 可能會針對一致性讀取或最終一致讀取傳回color = ruby 或 color = garnet。此外,根據經過的時間,最終一致讀取可能不會傳回任何結果。

    針對一致性讀取,R2 會傳回 color = garnet。針對最終一致讀取,根據經過的時間長短,R2 可能會傳回 color = ruby 或 color = garnet。

    在上一個範例中,用戶端 2 在 Amazon S3 傳回 W1 成功之前執行 W2,因此最終值的結果未知 (color =garnet 或 color = brick)。任何後續讀取 (一致性讀取或最終一致) 可能會傳回任一值。此外,根據經過的時間,最終一致讀取可能不會傳回任何結果。

    Amazon S3 功能本節說明 Amazon S3 的重要功能。

    API 版本 2006-03-015

  • Amazon Simple Storage Service 開發人員指南儲存體方案

    主題• 儲存體方案 (p. 6)• 儲存貯體政策 (p. 6)• AWS Identity and Access Management (p. 7)• 存取控制清單 (p. 7)• 版本控制 (p. 7)• 操作 (p. 7)

    儲存體方案Amazon S3 針對不同使用案例提供各式各樣的儲存類別。其中包括 Amazon S3 STANDARD,為一般用途儲存體,適用於經常存取的資料;Amazon S3 STANDARD_IA,適用於長期存放但不常存取的資料;以及S3 Glacier,適用於長期封存。

    如需更多詳細資訊,請參閱 Amazon S3 儲存類別 (p. 102)。

    儲存貯體政策儲存貯體政策會根據各種條件,提供儲存貯體與物件的集中存取控制,包括 Amazon S3 操作、請求者、資源與請求的各方面 (例如,IP 地址)。這些政策會以存取政策語言表示,並可集中管理許可。附加到儲存貯體的許可會套用至儲存貯體擁有者帳戶擁有的所有儲存貯體物件。

    個人與公司都可使用儲存貯體政策。公司向 Amazon S3 註冊時會建立「帳戶」。之後,公司就相當於帳戶。帳戶會負責公司 (及其員工) 所建立之 AWS 資源的帳務。帳戶可授予儲存貯體政策許可,並根據各種條件將許可指派給員工。例如,帳戶可建立政策來將寫入存取授予使用者。

    • 至特定 S3 儲存貯體• 從帳戶的公司網路• 營業期間

    帳戶可將有限的讀取與寫入存取授予某位使用者,但同時允許另一位使用者建立與刪除儲存貯體。帳戶可允許數個現場辦公室將其每日報告存放在單一儲存貯體中。它可允許每個辦公室只寫入至特定的一組名稱 (例如,"Nevada/*" 或 "Utah/*"),以及只從辦公室的 IP 地址範圍寫入。

    不同於存取控制清單 (稍後所述) 只能新增 (授予) 個別物件的許可,政策可以新增或拒絕儲存貯體內所有物件 (或物件子集) 的許可。帳戶可以透過一個要求,來設定儲存貯體中任意數目物件的許可。帳戶可以在Amazon Resource Name (ARN) 及其他值上使用萬用字元 (類似於規則表達式運算子)。然後,帳戶可以控制對以常用字首開頭或以特定副檔名 (例如 .html) 結尾之物件群組的存取。

    只有儲存貯體擁有者可建立政策與儲存貯體的關聯。以存取原則語言撰寫的政策允許或拒絕請求的依據如下:

    • Amazon S3 儲存貯體操作 (例如 PUT ?acl) 與物件操作 (例如 PUT Object 或 GET Object)• 要求者• 政策中指定的條件

    帳戶可根據特定 Amazon S3 操作 (例如 GetObject、GetObjectVersion、DeleteObject 或DeleteBucket) 來控制存取。

    這些條件可以是 IP 地址、CIDR 表示法中的 IP 地址範圍、日期、使用者代理程式、HTTP 推薦網站與傳輸(HTTP 與 HTTPS) 等等。

    如需更多詳細資訊,請參閱 使用儲存貯體政策與使用者政策 (p. 357)。

    API 版本 2006-03-016

    https://docs.aws.amazon.com/general/latest/gr/glos-chap.html#keyprefix

  • Amazon Simple Storage Service 開發人員指南AWS Identity and Access Management

    AWS Identity and Access Management您可以使用 AWS Identity and Access Management (IAM) 來管理對 Amazon S3 資源的存取。

    例如,您可以搭配使用 IAM 與 Amazon S3,以控制使用者或使用者群組對 AWS 帳戶所擁有之 Amazon S3儲存貯體特定部分的存取類型。

    如需 IAM 的詳細資訊,請參閱下列各項:

    • AWS Identity and Access Management (IAM)• 入門• IAM 使用者指南

    存取控制清單您可以使用存取控制清單 (ACL) 來控制您每個儲存貯體與物件的存取。如需更多詳細資訊,請參閱 使用ACL 管理存取 (p. 455)。

    版本控制您可以使用版本控制,在相同的儲存貯體中保留物件的多個版本。如需詳細資訊,請參閱 物件版本控制 (p. 106)。

    操作以下為透過 API 執行的最常見操作。

    常見操作

    • 建立儲存貯體 – 建立並命名您自己的儲存貯體,以存放您的物件。• 撰寫物件 – 透過建立或覆寫物件來存放資料。寫入物件時,您可以在儲存貯體的命名空間中指定唯一金

    鑰。此時也適合指定任何所需的物件存取控制。• 讀取物件 – 讀回資料。您可以透過 HTTP 或 BitTorrent 下載資料。• 刪除物件 – 刪除您的部分資料。• 列出金鑰 – 列出其中一個儲存貯體包含的金鑰。您可以依據字首篩選金鑰清單。

    本指南從頭到尾詳細說明這些操作和其他所有功能。

    Amazon S3 應用程式開發界面 (API)Amazon S3 架構設計成非程式設計語言相關,並使用 AWS 支援的界面來存放與擷取物件。

    Amazon S3 提供 REST 與 SOAP 界面。這些界面很類似,但有些差異。例如,在 REST 界面中,中繼資料是以 HTTP 標頭傳回。由於我們最多只支援 4 KB (不包括本文) 的 HTTP 要求,因此您可以提供的中繼資料量有限。

    Note

    HTTP 上的 SOAP 支援已淘汰,但仍可透過 HTTPS 取得。SOAP 不支援新的 Amazon S3 功能。建議您使用 REST API 或 AWS 開發套件。

    API 版本 2006-03-017

    http://aws.amazon.com/iam/https://docs.aws.amazon.com/IAM/latest/UserGuide/getting-started.htmlhttps://docs.aws.amazon.com/IAM/latest/UserGuide/

  • Amazon Simple Storage Service 開發人員指南REST 界面

    REST 界面REST API 是 Amazon S3 的 HTTP 界面。透過 REST,您可以使用標準 HTTP 要求來建立、擷取與刪除儲存貯體與物件。

    您可以使用支援 HTTP 的任何工具組來使用 REST API。您甚至可以使用瀏覽器來擷取物件,只要物件是可匿名讀取即可。

    REST API 使用標準 HTTP 標頭與狀態碼,因此標準瀏覽器與工具組會如預期般運作。在某些區域中,我們已新增功能至 HTTP (例如,我們已新增標頭來支援存取控制)。在此情況下,我們會盡力以符合標準 HTTP使用風格的方式來新增功能。

    SOAP 界面Note

    HTTP 上的 SOAP 支援已淘汰,但仍可透過 HTTPS 取得。SOAP 不支援新的 Amazon S3 功能。建議您使用 REST API 或 AWS 開發套件。

    SOAP API 提供使用文件常值編碼的 SOAP 1.1 界面。SOAP 的最常見用法包括下載 WSDL (請參閱https://doc.s3.amazonaws.com/2006-03-01/AmazonS3.wsdl)、使用 SOAP 工具組 (例如 Apache Axis 或Microsoft .NET) 來建立繫結,然後撰寫程式碼以使用繫結呼叫 Amazon S3。

    支付 Amazon S3Amazon S3 定價旨在讓您不需要規劃應用程式的儲存體需求。大多數儲存體提供者會強制您購買預先決定的儲存空間與網路傳輸容量:如果您超過容量,您的服務會關閉或必須支付很高的超額費用。如果未超過該容量,您仍會支付全額使用費用。

    Amazon S3 只會按實際用量收費,不會有任何隱藏費用與超額費用。這提供開發人員可隨其業務變動成本的服務,同時享受 AWS 基礎設施的成本優勢。

    將任何內容存放在 Amazon S3 之前,您必須向服務註冊,並提供每月底付費的付款方式。開始使用服務時,沒有安裝費。到了月底,則會自動向您的付款方式收取該月所使用服務的費用。

    如需有關支付 Amazon S3 儲存的資訊,請參閱 Amazon S3 定價。

    相關服務將資料載入至 Amazon S3 之後,您可以搭配其他 AWS 服務使用資料。以下為您可能最常使用的服務:

    • Amazon Elastic Compute Cloud (Amazon EC2) – 此 Web 服務在雲端提供虛擬運算資源。如需詳細資訊,請參閱 Amazon EC2 產品詳細資訊頁面。

    • Amazon EMR – 此服務可讓企業、研究員、資料分析師與開發人員,輕鬆地以符合成本效益的方式來處理相當大量的資料。採用 Web 規模的 Amazon EC2 與 Amazon S3 基礎設施上運作的託管 Hadoop 框架。如需詳細資訊,請參閱 Amazon EMR 產品詳細資訊頁面。

    • AWS Snowball – 此服務使用實體儲存裝置,避開網際網路,更快速地將大量資料傳入和傳出 AWS。每個 AWS Snowball 裝置類型傳輸資料的速度都高於網際網路。這趟運送由區域運送業者來運送裝置中的資料。如需詳細資訊,請參閱 AWS Snowball 產品詳細資訊頁面。

    API 版本 2006-03-018

    https://doc.s3.amazonaws.com/2006-03-01/AmazonS3.wsdlhttp://aws.amazon.com/s3/pricing/http://aws.amazon.com/ec2/http://aws.amazon.com/elasticmapreduce/http://aws.amazon.com/snowball

  • Amazon Simple Storage Service 開發人員指南關於存取金鑰

    提出要求主題

    • 關於存取金鑰 (p. 9)• 要求端點 (p. 10)• 透過 IPv6 向 Amazon S3 提出請求 (p. 10)• 使用 AWS 開發套件提出請求 (p. 16)• 使用 REST API 提出要求 (p. 40)

    Amazon S3 是一個 REST 服務。您可以使用 REST API 或 AWS 開發套件 (請參閱範例程式碼與程式庫) 包裝函式程式庫,傳送請求至 Amazon S3,該包裝函式程式庫會包裝基礎 Amazon S3 REST API,簡化程式設計工作。

    與 Amazon S3 的每次互動,可以經過驗證身份或是匿名進行。身分驗證是確認嘗試存取 Amazon WebServices (AWS) 產品之申請者身分的過程。經過身分驗證的要求,必須包含能驗證要求傳送者身分的簽章值。就某部分而言,簽章值產生自申請者的 AWS 存取金鑰 (存取金鑰 ID 與私密存取金鑰)。如需取得您的AWS 存取金鑰的更多資訊,請參閱 AWS 一般參考中的如何取得安全登入資料?。

    若目前使用 AWS 開發套件,程式庫會運算您提供之金鑰中的簽章。但如果直接在應用程式中呼叫 RESTAPI,您必須撰寫程式碼來運算簽章,並將其新增至要求。

    關於存取金鑰以下各節會檢閱您可用於驗證要求的存取金鑰類型。

    AWS 帳戶存取金鑰帳戶存取金鑰提供對帳戶擁有之 AWS 資源的完整存取權。以下為存取金鑰範例:

    • 存取金鑰 ID (20 個字元的英數字串)。例如:AKIAIOSFODNN7EXAMPLE• 私密存取金鑰 (40 個字元的字串)。例如:wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

    存取金鑰 ID 可找出獨一的 AWS 帳戶。您可以使用這些存取金鑰,將驗證請求傳送至 Amazon S3 。

    IAM 使用者存取金鑰您可以為公司建立一個 AWS 帳戶,但該組織內可能有數名員工需要存取組織的 AWS 資源。分享您的 AWS帳戶存取金鑰會降低安全性,而為每名員工建立個別的 AWS 帳戶又不實際。而且您也無法輕易地分享像是儲存貯體與物件等資源,因為它們皆屬不同帳戶所擁有。若要分享資源,您必須授予許可,這是額外進行的工作。

    在這類情況下,您可以使用 AWS Identity and Access Management (IAM) 在您的 AWS 帳戶下,以其本身的存取金鑰建立使用者,並為使用者連線授予適當資源存取許可的 IAM 使用者原則。為加強管理這些使用者,您可利用 IAM 建立使用者群組,並授予會套用到該群組內所有使用者的群組層級許可。

    這些使用者稱為 IAM 使用者,而您可於 AWS 內建立及管理。父帳戶能控制使用者存取 AWS 的能力。IAM使用者建立的任何資源,都由父 AWS 帳戶控制,且由其付費。這些 IAM 使用者會使用自己的安全登入資料,將經過身份驗證的請求傳送至 Amazon S3。如需在 AWS 帳戶下建立和管理使用者的詳細資訊,請移至AWS Identity and Access Management 產品詳細資訊頁面。

    API 版本 2006-03-019

    http://aws.amazon.com/codehttps://docs.aws.amazon.com/general/latest/gr/getting-aws-sec-creds.htmlhttp://aws.amazon.com/iam/

  • Amazon Simple Storage Service 開發人員指南暫時安全登入資料

    暫時安全登入資料除了以使用者自己的存取金鑰建立 IAM 使用者之外,您也可利用 IAM 將暫時性安全登入資料 (暫時性存取金�