vCloud Director Object Storage Extension 針對值區和物件的作業提供了一組 S3 相容 API。
vCloud Director Object Storage Extension API 支援 AWS 簽章 v4、vCloud Director 授權 Token 和 JSON Web Token (JWT) 驗證方法。
vCloud Director Object Storage Extension API 支援 JSON 和 XML 格式。
依預設,vCloud Director Object Storage Extension 的 S3 API 可於 https://object-storage-extension-host-address/api/v1/s3 取得。根據服務提供者的網路組態,vCloud Director Object Storage Extension 的位址和 S3 API 的根路徑可能會與預設組態不同。
vCloud Director Object Storage Extension S3 API 說明文件可隨產品 (位於 https://object-storage-extension-host-address/docs) 取得,另外也可在 VMware API Explorer (位於 https://code.vmware.com/apis) 的 vCloud Director Object Storage Extension 產品類別下方取得。
使用安全性認證和 vCloud Director Object Storage Extension API
若要瞭解如何使用安全性認證和
vCloud Director Object Storage Extension API,請參閱下列範例。
- 使用 Object Storage Tenant Portal 來建立使用者認證。依預設,新建立的使用者認證會在建立期間啟動。
- 複製存取金鑰和秘密金鑰。
- 記下顯示在 Object Storage Tenant Portal 中的值區名稱。
- 在 API 用戶端中,藉由輸入 API 端點和存取金鑰與安全性金鑰,以使用 AWS 簽章驗證方法來驗證您的 API 要求。
例如,輸入下列連線資訊:
- API 端點:https://vCloud-Director-Object-Storage-Extension-IP-addres:443/api/v1/s3
- 存取金鑰:5a5af54cf34a172a511f
- 秘密金鑰:omSG+UXSoyD1fbdFt0iia3I8I+f0QLSiIn5wpq1L
- 發出 S3 API GET 要求以列出使用者認證擁有者所擁有的所有值區。
以下是 API 要求的範例:
GET /api/v1/s3/ HTTP/1.1 Host: vCloud-Director-Object-Storage-Extension-IP-addres:443 Accept: application/xml X-Amz-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 X-Amz-Date: 20190717T014259Z Authorization: AWS4-HMAC-SHA256 Credential=5a5af54cf34a172a511f/20190717/us-east-1/s3/aws4_request, SignedHeaders=accept;host;x-amz-content-sha256;x-amz-date, Signature=a1a0cfdc34fd4275f567ef673f14d8ff963242d29c13515506a3a913e7f38415 cache-control: no-cache
<listBucketResult> <Name>bucket-name</Name> <KeyCount>1</KeyCount> <MaxKeys>1000</MaxKeys> <Contents> <Key>object-name</Key> <Owner> <ID>system-id-of-the-user</> <DisplayName>display-name-of-the-user</DisplayName> </Owner> <StorageClass>Storage-Class</StorageClass> <Size>object-size-in-KB</Size> <LastModified>last-modified-date</LastModified> </Contents> <IsTruncated>true-or-false</IsTruncated> <ContinuationToken>1-or-0</ContinuationToken> </listBucketResult>
若要取得使用者認證或應用程式認證,請參閱使用安全性認證。