0
我想實現一個圖像的卸載只使用rest api的亞馬遜s3。我已經看過他們的文檔,但問題是我只使用臨時證書,該證書將過期約一個小時。下面是響應簽名不匹配s3上傳對象
{
accessKey: "mykey"
secretKey: "mysecret"
token: "mytemptoken"
expiry: 1381128021000
}
我的政策
POLICY_JSON = { "expiration": "2013-12-03T12:29:27.000Z",
"conditions": [
["eq", "$bucket", this.get('bucket')],
["starts-with", "$key", this.get('key')],
{"acl": this.get('acl')},
{"success_action_redirect": this.get('successActionRedirect')},
["starts-with", "$Content-Type", this.get('contentType')]
]
};
這裏是我試過到目前爲止: 使用Chrome提前休息客戶端我進入這個網址:https://mybucket.s3.amazonaws.com/avatars/[email protected]與
Authorization: AWS mykey:CXp5qqO6q552VDYUI0aBlSd/pTs=
x-amz-security-token: mytemptoken
x-amz-date: Mon, 07 OCt 2013 06:20:37 GMT
的的頭結果是:403 Forbidden和其說的SignatureDoesNotMatch。有沒有人能夠使用s3的Rest Api來完成對象的上傳(不使用SDK的)。客戶問我是否有可能只用javascript來構建它。這可能嗎?
嗨,感謝您的回答。是的,我在我的授權標題上添加了簽名。我使用以下代碼生成了我的簽名:var policyBase64 = Base64.encode(JSON.stringify(POLICY_JSON)); var signature = b64_hmac_sha1(secret,policyBase64); –
現在工作嗎? – Satish
不行,它仍然說SignatureDoesNotMatch。你能看看我的政策json嗎?我的政策有什麼缺失嗎?我使用臨時憑證,因此我在標題上添加了x-amz-security-token。 –