おもしろwebサービス開発日記

Ruby や Rails を中心に、web技術について書いています

amazon-ecsに署名認証をつけるようにした

8月15日までにamazonのAPIに署名認証をつけないといけなくなったわけですが、皆さんもう対応されましたか?

Product Advertising API用のRubygemで有名なのものとしては

などがあります。僕はamazon-ecsを使っていたのですが、こちらはまだ署名認証に対応していません。ruby-aawsは対応しているらしいので、そちらに乗り換えようかなーと思ったのですが、どうやらRuby1.8.6では使えないらしいです(1.8.7以上対応)。

というわけで、仕方ないのでamazon-ecsをいじってリクエストに署名認証をつけるようにしました。githubに置いたので、amazon-ecsを使っていてまだ対応してない方はどうぞ。

下記のようにインストールします。

gem source -a http://gems.github.com
sudo gem install willnet-amazon-ecs

githubリポジトリはこちら。
http://github.com/willnet/amazon-ecs/tree/master

githubにまだ慣れてないので何か変なことしてたら教えてくださいー

設定の仕方

下記のような感じで、今回の仕様変更で追加されたSecret Access Keyを追加してください。あとの使い方はこれまでのamazon-ecsと一緒です。

require "rubygems"
require "amazon/ecs"
Amazon::Ecs.options = {
  :aWS_access_key_id => "access_key",
  :country => :jp,
  :secret_access_key => "secret_access_key" # new!!
}

追記

コメントいただいた件を修正しました。多分PowerSearchできるようになってるはず。