*Amazon Product Advertising API で認証付きリクエストを送るための概要

公式のドキュメント

認証付きリクエストの目的

Authentication is a process for identifying and verifying who is sending a request. The following table shows a simplified version of an authentication process.

  1. The sender obtains the necessary credential.
  2. The sender sends a request with the credential to the recipient.
  3. The recipient uses the credential to verify the sender truly sent the request.
  4. If yes, the recipient processes the request. If no, the recipient rejects the request and responds accordingly.
http://docs.amazonwebservices.com/AWSECommerceService/latest/DG/WhatIsAuthentication.html

認証付きリクエストの生成から結果の取得の簡単な流れ

  1. The sender obtains the necessary credential.
  2. The sender sends a request with the credential to the recipient.
  3. The recipient uses the credential to verify the sender truly sent the request.
  4. If yes, the recipient processes the request. If no, the recipient rejects the request and responds accordingly.
http://docs.amazonwebservices.com/AWSECommerceService/latest/DG/WhatIsAuthentication.html

認証付きリクエストの生成に新たに必要になった Secret Access Key

Amazon Web Servicesのページにアクセスをし、画面右上にある「Your Account」にマウスを移動する。
メニューが表示されるので「Access Identifiers」に移動し、Secret Access Key を確認する。

REST でアクセスする場合のプログラム的な変更

  1. 従来のクエリに追加する Timestamp をの追加 (形式: 2009-08-10T23:08:59Z)
  2. クエリの名称を昇順でソートする
  3. ソート後のクエリを SHA256 hash algorithm で暗号化する
  4. 暗号化したクエリをBase64で符号化する
  5. 平文のクエリにBase64で符号化したクエリを URL エンコードして、Signature クエリの変数として追加する
  6. 結合したクエリをリクエストする
SOAP の場合は下記を参照