

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

# EBS 直接 APIs概念
<a name="ebsapi-elements"></a>

以下是開始使用 EBS 直接 APIs 之前，您應該了解的重要概念。

## 快照
<a name="ebsapi-snapshots"></a>

快照是從 EBS 磁碟區備份資料的主要方法。使用 EBS 直接 API，您也可以將內部部署磁碟的資料備份至快照。為了節省儲存體成本，連續快照是增量式，只會包含自上一個快照之後變更的磁碟區資料。如需詳細資訊，請參閱[Amazon EBS 快照](ebs-snapshots.md)。

**注意**  
EBS APIs 不支援 上的公有快照和本機快照 AWS Outposts。

## 區塊
<a name="ebsapi-blocks"></a>

區塊是快照內的資料片段。每個快照可以包含數千個區塊。快照中的所有區塊都是固定大小。

## 區塊索引
<a name="ebsapi-block-indexes"></a>

區塊索引是一個邏輯索引，單位為 `512` KiB 區塊。若要識別區塊索引，請將邏輯磁碟區中資料的邏輯位移除以區塊大小 (資料的邏輯位移/`524288`)。資料的邏輯位移必須為 `512` KiB 對齊。

## 區塊標記
<a name="ebsapi-block-tokens"></a>

區塊標記是快照中區塊的識別雜湊，用於定位區塊資料。EBS 直接 API 傳回的區塊標記是暫時的。它們會在為他們指定的到期時間戳記上變更，或者如果您執行相同快照集的另一個清單快照集或清單 Change DBlock 請求。

## 檢查總和
<a name="ebsapi-checksum"></a>

檢查總和是從資料區塊衍生的小型基準，用於偵測在傳輸或儲存期間導致的錯誤。EBS 直接 API 使用檢查總和來驗證資料完整性。當您從 EBS 快照讀取資料時，此服務會針對每個傳輸的資料區塊提供 Base64 編碼的 SHA256 檢查總和，供您進行驗證。將資料寫入 EBS 快照時，您必須為每個傳輸的資料區塊提供 Base64 編碼的 SHA256 檢查總和。此服務會使用提供的檢查總和來驗證接收的資料。如需詳細資訊，請參閱本主題後述的「[使用 EBS 直接 APIs 檢查總和來驗證快照資料](ebsapis-using-checksums.md)」。

## 加密
<a name="ebsapi-encryption"></a>

加密會將資料轉換成無法讀取的程式碼，只有有權存取用來加密資料 KMS 金鑰 的人才能解讀這些程式碼。您可以使用 EBS 直接 API 讀取和寫入加密的快照，但有一些限制。如需詳細資訊，請參閱本主題後述的「[EBS 直接 APIs加密結果](ebsapis-using-encryption.md)」。

## API 動作
<a name="ebsapi-actions"></a>

EBS 直接 API 由六個動作組成。有三個讀取動作和三個寫入動作。讀取動作為：
+ **ListSnapshotBlocks** – 傳回指定快照中區塊的區塊索引和區塊字符
+ **ListChangedBlocks** – 傳回相同磁碟區/快照關係的兩個指定快照之間不同的區塊索引和區塊字符。
+ **GetSnapshotBlock** – 針對指定的快照 ID、區塊索引和區塊字符傳回區塊中的資料。

寫入動作為：
+ **StartSnapshot** – 以現有快照的增量快照或新快照的形式啟動快照。啟動的快照將保持待處理狀態，直至使用 CompleteSnapshot 操作完成快照。
+ **PutSnapshotBlock** – 以個別區塊的形式，將資料新增至已啟動的快照。您必須為傳輸的資料區塊指定 Base64 編碼的 SHA256 檢查總和。傳輸完成後，該服務將驗證檢查總和。若服務運算的檢查總和與您指定的不相符，則請求失敗。
+ **CompleteSnapshot** – 完成處於待定狀態的已啟動快照。然後將快照變更為完成狀態。

## Signature 第 4 版簽署
<a name="ebsapis-using-sigv4"></a>

Signature 第 4 版是將身分驗證資訊新增至 HTTP 傳送之 AWS 請求的程序。為了安全起見，對 的大多數請求 AWS 都必須使用存取金鑰簽署，該金鑰包含存取金鑰 ID 和私密存取金鑰。這兩種金鑰通常稱為您的安全憑證。如需有關如何獲取帳戶憑證的資訊，請參閱 [AWS 安全憑證](https://docs.aws.amazon.com/IAM/latest/UserGuide/security-creds.html)。

如果您打算手動建立 HTTP 請求，您必須學習如何簽署它們。當您使用 AWS Command Line Interface (AWS CLI) 或其中一個 AWS SDKs 來發出請求時 AWS，這些工具會自動使用您在設定工具時指定的存取金鑰來簽署請求。在使用這些工具時，您不必知道如何自行簽署請求。

如需詳細資訊，請參閱《*IAM 使用者指南*》中的[簽署 AWS API 請求](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv.html)。