プロジェクトで、ブラウザから直接 Amazon の DynamoDB にアクセスする必要があります。node.js には aws-sdk-js がありますが、ブラウザ側の JS にはありませんので、Amazon の HTTP API を使用してアクセスしようとしています。これに対する実装はありますか?
署名プロセスに使用できる実装はありますか? ( http://docs.aws.amazon.com/general/latest/gr/sigv4_signing.html )
プロジェクトで、ブラウザから直接 Amazon の DynamoDB にアクセスする必要があります。node.js には aws-sdk-js がありますが、ブラウザ側の JS にはありませんので、Amazon の HTTP API を使用してアクセスしようとしています。これに対する実装はありますか?
署名プロセスに使用できる実装はありますか? ( http://docs.aws.amazon.com/general/latest/gr/sigv4_signing.html )
私のブログの一連の投稿を見てください。パート 3には、AWS API が異なりますが、必要なものをほぼ正確にカバーするコードがあります。ただし、リクエストへの署名が含まれます。
function computeSignature(params, secretAccessKey){
var stringToSign = 'GET\nwebservices.amazon.com\n/onca/xml\n' +
createQueryString(params);
var key = sjcl.codec.utf8String.toBits(secretAccessKey);
var hmac = new sjcl.misc.hmac(key, sjcl.hash.sha256);
var signature = hmac.encrypt(stringToSign);
signature = sjcl.codec.base64.fromBits(signature);
return signature;
}
その投稿には、createQueryString
上記で使用されたコードが含まれています。暗号化機能は、Stanford JavaScript Cryptography Library (sjcl
上記のオブジェクト) によって提供されます。
ブログ シリーズのすべてのコードも Github にあるため、ブログから 1 つずつコピー アンド ペーストする必要はありません。