2009年08月18日
Amazon HMAC-SHA256 変換
Amazon Product Advertising API にて、電子署名 やら 署名認証 やら、対応を
しないと行けない。無理やり? 暫定的な? 対応が、やっと完了しました。
※ Product Advertising API とは、Amazonアソシエイト Webサービス のこと
名称が変更になりました。
WEB系の開発 PHP CGI VisualBasic .net 等々では、簡単にできそうなのだが・・・
マイクロソフト Microsoft 製品関連の エクセル EXCEL や、アクセス Access 等の
VBA 関連とかは、そうそうに簡単にできそうにない。
だから、簡単に短時間でできる、VisualBasic 6.0を使用してやることにしました。
.net でも良かったが・・・ 今からインストールするのが面倒なので、パソコンにある
開発環境で実現させました。数時間で作成完了したので・・・ バグありかも?
Microsoft Internet Controls 利用して htm 経由で変換して HMAC-SHA256 を
取得する方法です。JavaScript サンプルの base64.js jssha256.js を使用して、
早々に作成しました。知識ある方は、直ぐに作れると思います。
以下、作成したプログラム画面 ( 暫定画面 )

・ HMAC-SHA256 変換した内容でホームページのリンクを作成。
・ API の パラメータを分解して ソート表示。
・ Timestamp と Signature を、自動的に付けた内容を表示。
エクセル EXCEL とかの VBA で使用する場合
※ VBA でなくても、Windows で VisualBasic 6.0 が実行できれば使用可能。
・ Amazon HMAC-SHA256 変換プログラムを起動する。
・ VBA から IN ファイルに Product Advertising API パラメタを出力
http://ecs.amazonaws.jp/onca/xml? 以降の 部分を出力。
・ VBA から 処理開始 ファイル を 作成する。
プログラム内で、変換プログラム 終了 待ち処理 を行う。
・ 変換プログラムが、上記 2ファイルで実行を開始。
・ 変換プログラムが、HMAC-SHA256 変換結果を OUT ファイルに出力
・ 変換プログラムが、処理終了 ファイルを作成する。
・ VBA が 処理終了 ファイルで判断して OUT ファイル を元に処理を続行
こんな感じです。既存プログラムに、少し改造で、組み込めました。
まだまだ、使い込んでないので・・・ 何か不都合があるかもしれませんが、
こんなプログラムで良ければ、近々公開する予定です。
Amazon HMAC-SHA256 変換ツール 公開に向けて・・・ 準備中
※ 但し、プログラム画面内に、宿関連の広告 表示が入ります。利用してね。
ご自分で対応できない場合は、利用できないです。また、仮に、不都合 トラブルが
発生しても、責任問題、トラブル対応、損害請求も受け付けません。
また、自分で VisualBasic 6.0 のランタイムがインストールできる方
base64.js jssha256.js をご自分で入手できる方 等々 別途、自分で
いろいろ対応が必要。
しないと行けない。無理やり? 暫定的な? 対応が、やっと完了しました。
※ Product Advertising API とは、Amazonアソシエイト Webサービス のこと
名称が変更になりました。
WEB系の開発 PHP CGI VisualBasic .net 等々では、簡単にできそうなのだが・・・
マイクロソフト Microsoft 製品関連の エクセル EXCEL や、アクセス Access 等の
VBA 関連とかは、そうそうに簡単にできそうにない。
だから、簡単に短時間でできる、VisualBasic 6.0を使用してやることにしました。
.net でも良かったが・・・ 今からインストールするのが面倒なので、パソコンにある
開発環境で実現させました。数時間で作成完了したので・・・ バグありかも?
Microsoft Internet Controls 利用して htm 経由で変換して HMAC-SHA256 を
取得する方法です。JavaScript サンプルの base64.js jssha256.js を使用して、
早々に作成しました。知識ある方は、直ぐに作れると思います。
以下、作成したプログラム画面 ( 暫定画面 )

・ HMAC-SHA256 変換した内容でホームページのリンクを作成。
・ API の パラメータを分解して ソート表示。
・ Timestamp と Signature を、自動的に付けた内容を表示。
エクセル EXCEL とかの VBA で使用する場合
※ VBA でなくても、Windows で VisualBasic 6.0 が実行できれば使用可能。
・ Amazon HMAC-SHA256 変換プログラムを起動する。
・ VBA から IN ファイルに Product Advertising API パラメタを出力
http://ecs.amazonaws.jp/onca/xml? 以降の 部分を出力。
・ VBA から 処理開始 ファイル を 作成する。
プログラム内で、変換プログラム 終了 待ち処理 を行う。
・ 変換プログラムが、上記 2ファイルで実行を開始。
・ 変換プログラムが、HMAC-SHA256 変換結果を OUT ファイルに出力
・ 変換プログラムが、処理終了 ファイルを作成する。
・ VBA が 処理終了 ファイルで判断して OUT ファイル を元に処理を続行
こんな感じです。既存プログラムに、少し改造で、組み込めました。
まだまだ、使い込んでないので・・・ 何か不都合があるかもしれませんが、
こんなプログラムで良ければ、近々公開する予定です。
Amazon HMAC-SHA256 変換ツール 公開に向けて・・・ 準備中
※ 但し、プログラム画面内に、宿関連の広告 表示が入ります。利用してね。
ご自分で対応できない場合は、利用できないです。また、仮に、不都合 トラブルが
発生しても、責任問題、トラブル対応、損害請求も受け付けません。
また、自分で VisualBasic 6.0 のランタイムがインストールできる方
base64.js jssha256.js をご自分で入手できる方 等々 別途、自分で
いろいろ対応が必要。
arudeyo at 16:21│
│アフィリエイト関連