WidgetでAmazon署名対応するには?

AmazonのWeb API(Product Advertising API)は8/15までに署名付きリクエストに対応しないといけないんだけど、Webアプリ系は対応したもののWidgetの対応がまだ残っていて一ヶ月切ったけどまだ終わらないぜ。

  1. forumにjavascriptのサンプル載っけてる人がいたので参考にしてみるか
  2. よし、Yahoo Widgetで署名付きリクエスト送信できたぜ!
  3. しかし、WidgetのJavascriptだと秘密キー全開だどうしよう。。。
  4. うーん、Google App Engineで署名つけてリダイレクトするサービスつくってみるか
  5. よっしゃ、Google App Engine経由でも動くようになった。俺天才!(ここまでMacで開発)
  6. Windowsで実行したら文字化けした・・・POSTで飛ばさないけないのか・・・文字化けについて
  7. 「青春ってこんなに険しいんですか?」←イマココ

ちなみに秘密キーをソフトウェアに含んでリリースすることに関してはこちらにAmazonの見解が載っていたりする。

秘密キーまたはパスワードの「公開」の範囲について
勝手にまとめると、

  • 推奨しないけど全部禁止にするのもかわいそうだから含んでリリースしてもいいよ
  • ただ秘密キーは簡単に取れないようにしときなさいよ
  • 秘密キーが抜かれて勝手に使われていることが判明したら直ちにアクセスキーをWebから変更しなさいよ
  • 以上を守れないとそのアクセスキーからのリクエスト全部止めるかもよ

Widgetのプラットフォームはいくつもあるけど、いずれもhtml(xml)とJavascriptから成るものを単にzip化しただけなので、せいぜい秘密キーを暗号化してたものをスクリプト内に記述して実行時に復号化するくらいしか思いつかない。復号化もjavascriptに入ってるので中を改変されて復号したあとのキーをprintなりalertなりで表示されたら終わりなんだけど。

Yahoo WidgetのAmazon系のWidgetはまだ誰も更新されてないっぽいんだけど、みんなどうするんだろう?

人見知りソフトウェアエンジニアです。ビジュアル系、お笑い、Pixarが好き。勢いで吉本超合金おたけびBOTを作った。オールザッツ漫才が放送されない東京在住。

趣味や日常からアウトプットの場としてブログを書いています。自作のWordPressプラグインにGitHub Flavored MarkdownAmazonJSなど。