Boto の EC2 ビット (Boto v2.8.0、Python v2.6.7) に問題があります。
最初のコマンドは S3 バケットのリストを返します - すべて問題ありません! EC2 インスタンスのリストを取得する 2 番目のコマンドは、「クエリ文字列認証には署名、有効期限、および AWSAccessKeyId パラメータが必要です」という 403 で失敗します。
s3_conn = S3Connection(AWSAccessKeyId, AWSSecretKey)
print s3_conn.get_all_buckets()
ec2_conn = EC2Connection(AWSAccessKeyId, AWSSecretKey)
print ec2_conn.get_all_instances()
また、資格情報はすべて良好です (フル管理者) - Ruby aws-sdk を使用してテストしましたが、EC2 と S3 の両方が正常に動作します。
また、ec2_conn オブジェクトのホスト属性がs3-eu-west-1.amazonaws.com、「s3」であることにも気付きました...? きっとそれは間違っていますか?正しいエンドポイントにレトロに修正しようとしましたが、うまくいきませんでした。
どんな助けでも大歓迎ですありがとう