Я создаю веб-сервис, который помогает копировать папки из s3 пользователя в нашу корзину S3 через AWS CLI.Он содержит функции загрузки и экспорта.Я хотел бы знать, есть ли способ настроить это без внесения изменений в консоль AWS.
Вот то, что я пробовал на данный момент для загрузки:
В передней части,попросите пользователя указать имя группы и имя файла, которое он хочет передать.Также добавьте ключ доступа IAM и секретный ключ в конфигурацию AWS.
// Configure aws with your accessKeyId and your secretAccessKey
aws.config.update({
accessKeyId: process.env.AWS_ACCESS_KEY_ID,
secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY,
region: process.env.REGION,
bucket: process.env.S3_BUCKET
});
// Now lets export this function so we can call it from somewhere else
exports.sign_s3 = (req,res) => {
// S3 bucket setup
s3 = new aws.S3();
var sourceBucket = req.body.bucket;
var destinationBucket = "destination";
var objectKey = req.body.file;
var copySource = sourceBucket + "/" + objectKey;
var copyParams = { Bucket: destinationBucket, CopySource: copySource, Key: objectKey
};
s3.copyObject(copyParams, function(err, data) {
if (err) {
console.log(err, err.stack);
} else {
console.log("S3 object copy successful.");
}
});
};
Но если вы заметите, некоторые из упомянутых выше шагов настраиваются вручную.Мне нужно отменить процесс экспорта , и теперь пользователь должен создать пользователя IAM и дать доступ и секретный ключ вместе с номером своей учетной записи.Как заставить их сделать это, не выходя из моего пользовательского интерфейса, который, как утверждается, не использует консоль AWS, и насколько безопасно делиться вышеуказанной информацией?
Обновление: как внести изменения в учетную запись пользователя AWS, используяAPI?