本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 REST API 驗證請求 (AWS 簽章版本 2)
使用 REST 存取 Amazon S3 時,必須在您的請求中提供下列項目,才可驗證請求:
請求元素
-
AWS 存取金鑰 ID – 每個請求必須包含您用來傳送請求之身分的存取金鑰 ID。
-
簽章 – 每個請求都必須包含有效的請求簽章,否則會拒絕請求。
使用您的私密存取金鑰即可計算出請求簽章,而該私密存取金鑰只有您和 AWS 知道。
-
時間戳記 – 每個請求都必須包含建立請求的日期和時間,以 UTC 字串表示。
-
日期 – 每個請求都必須包含請求的時間戳記。
視目前使用的 API 動作之不同,您可以改為提供要求過期日期與時間,或是與時間戳記一起提供。請參閱特定動作的驗證主題,以了解所需要的資訊為何。
以下是對傳給 Amazon S3 的請求進行身分驗證的一般步驟。假設您已有必要的安全性登入資料、存取金鑰 ID,以及私密存取金鑰。
|
1 |
建構 請求 AWS。 |
|
2 |
使用私密存取金鑰計算簽章。 |
|
3 |
將請求傳送至 Amazon S3。在要求中放入您的存取金鑰 ID 及簽章。Amazon S3 會執行接下來的三個步驟。 |
|
4 |
Amazon S3 使用存取金鑰 ID 來查詢您的私密存取金鑰。 |
|
5 |
Amazon S3 按照您對請求中傳送的簽章所使用的計算演算法,採用同樣的演算法來計算請求資料及私密存取金鑰中的簽章。 |
|
6 |
如果 Amazon S3 產生的簽章與請求中傳送的簽章相符,該請求即視為真實。若比對失敗,則會捨棄請求,Amazon S3 會傳回錯誤回應。 |
詳細的驗證資訊
如需 REST 驗證的詳細資訊,請參閱「簽署和驗證 REST 請求 (AWS 簽章版本 2)」。