2012-03-21 3 views
3

は、私が試してみて、経由でメールを送信するためにアマゾンSESを使用していますHTTPポストなど:HTTP経由でAmazon SESメールを送信するために必要なHMAC署名を作成するにはどうすればよいですか?

X-Amzn-Authorization: AWS3-HTTPS AWSAccessKeyId=<Your AWS Access Key ID>, Algorithm=HmacSHA256, Signature=<Signature> 

:それはで構成されてX-AMZN-認証を要求するHTTPヘッダーでしかし

https://email.us-east-1.amazonaws.com/?Action=SendEmail&Source=user%40example.com&Destination.ToAddresses.member.1=allan%40example.com&Message.Subject.Data=This%20is%20the%20subject%20line.&Message.Body.Text.Data=Hello.%20I%20hope%20you%20are%20having%20a%20good%20day. 

私は署名を計算する方法が不思議でしたか?それは単に私の秘密のアクセスキーですか?

ここにAmazon Documentation Siteで示されています。

答えて

4

いいえ - あなたの秘密のアクセスキーは、理由のために秘密です。ワイヤー上を通過させないでください。そうしないとAWSアカウントへの完全なアクセス権が与えられます.S3バケット全体をすべて削除するために使用できます。

署名は「署名された要求」です。要求の内容を取得し、ハッシュキーとして秘密キーを使用して、メッセージ認証コード(HMAC)ハッシュを作成します。あなたの秘密鍵はあなたとAmazonにしか知られていないので、アマゾンがリクエストを受け取ると、彼らはあなたのリクエストの内容を受け取り、あなたの秘密鍵に基づいてハッシュします - もし彼らがあなたの署名されたリクエストと同じハッシュを取得すれば、改ざんされていませんでした。それらが異なる場合、要求は悪意を持って改ざんされているか、または侵害されている可能性があります。ここ

詳細: https://www.jokecamp.com/blog/examples-of-creating-base64-hashes-using-hmac-sha256-in-different-languages/

HMACを計算するためのコードを含みます。

関連する問題