Я пытаюсь загрузить изображение на S3 непосредственно из моего приложения, используя роль IAM, в настоящее время с полным доступом к S3. Эти ключи работают из командной строки, а также из скрипта узла, используя тот же код, что и код в приложении. Но когда приложение пытается загрузить, Access Denied
всегда возвращается.
const S3 = require('aws-sdk/clients/s3');
const fs = require('fs');
let bucket = new S3({
secretAccessKey: "XXXXXXXXXXXXXXXXXXXXXXXXXXX",
accessKeyId: "XXXXXXXXXXXXXXXXXXXXX",
Bucket: "app-uploads",
});
const buf = fs.readFileSync('./test.jpg');
var params = {
Key: 'image.jpg',
Body: buf,
ContentEncoding: 'base64',
ContentType: 'image/jpeg',
Bucket: "app-uploads",
};
bucket.putObject(params, function(err, data){
if (err) {
console.log(err);
} else {
console.log('succesfully uploaded the image!');
}
});