我们想限制ec2实例被黑客入侵的风险。实例需要执行的具有AWS特权的唯一功能是上传到S3。具体来说,我们在aws-sdk
中使用javascript
库,如下所示:
let s3 = new AWS.S3({
accessKeyId: ID,
secretAccessKey: SECRET,
region: REGION
});
然后我们上传:
s3.upload(params, function(err, data) {
if (err) {
throw `S3 uploading failed on ${fname} : ${err}`;
}
console.log(`Uploaded ${msgIn.length} bytes to ${fname} successfully at S3 ${data.Location}`);
});
但是该aws
键具有执行AWS中几乎所有功能的完整权限。我们无法拥有..所以我调查了IAM
-具有正确的限制类型:
我希望从该AWS
创建IAM role
访问密钥。能做到吗?还是有其他方法可以使用aws-sdk
来仅获得s3的受限权限?
答案 0 :(得分:2)
请参见Using an IAM Role to Grant Permissions to Applications Running on Amazon EC2 Instances。
本质上: