アクセスキーを使用してみましたが、問題なく動作しますが、代わりにアクセスキーに乗って役割を使用しようとしていますが、アクセスキーに乗ったら。私がお返しに得るのはwww.aws.amazon.com
const AWS = require('aws-sdk');
const s3 = new AWS.S3();
const params = {Bucket: config.bucket, Expires: config.time, Key};
const url = s3.getSignedUrl('getObject', params);
console.log('The URL is', url);
ec2にアクセスしてcliコマンドaws s3 presign s3://bucket/path/file
を実行することで、自分のロールが正しく設定されていることを確認しました。これは正常に機能しますが、署名されたURLを取得しますが、これは自分のロールが正しいことを意味しますね。
アドバイス/ヘルプを事前に感謝します。
getSignedUrl()
IAMロールを使用する場合、同期的に使用することはできません。
注:このメソッドを同期的に(コールバックなしで)呼び出す場合は、静的または以前に解決された資格情報があることを確認する必要があります。そうしないと、要求に適切に署名されない可能性があります。これを保証できない場合(非同期認証情報プロバイダー、つまりEC2 IAMロールを使用している場合)、常に非同期コールバックを使用してこのメソッドを呼び出す必要があります。
https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/S3.html#getSignedUrl-property
s3.getSignedUrl('getObject', params, function (err, url) {
console.log('The URL is', url);
});
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加