この質問は、 EC2 API への REST API 呼び出しを機能させるという以前の質問のフォローアップです。
それがうまくいったので、私はそれを一般化したいと思い、いくつかのことを試しました. たとえば、地域名でフィルタリングしてリクエストを作成しようとしました
https://ec2.amazonaws.com/?Action=DescribeRegions
&RegionName.1=us-east-1
&RegionName.2=eu-west-1
ドキュメントに表示されます。
署名は簡単でした。RegionName を署名要求のアルファベット順に貼り付けて、それらがない場合と同じようにすべてに署名します。それはうまくいきました。
そこで、ドキュメントで提供されている 2 番目の例に進みました。
https://ec2.amazonaws.com/?Action=DescribeRegions
&Filter.1.Name=endpoint
&Filter.1.Value.1=*ap*
OK、必要に応じて、アルファベット順に並べ替えられた場所にある署名パラメーターにフィルターを入れようとしました...
char * signing_parameters_template =
"AWSAccessKeyId=%s&"
"Action=DescribeRegions&"
"Filter.1.Name=endpoint&"
"Filter.1.Value=*ap*&"
"SignatureMethod=HmacSHA256&"
"SignatureVersion=2&"
"Timestamp=%s&"
"Version=2013-08-15";
そしてそれに署名します。署名が一致しないというエラーが表示されます。私はこれのバリエーションをたくさん試しましたが、うまくいきません。
フィルターを含むリクエストに署名するにはどうすればよいですか?