如何限制AWS托管IAM策略的范围?

0

【以下的问题经过翻译处理】 我拥有一个EC2实例,其代码是使用CodePipeline部署的。为了让CodeDeploy可以操作该实例,我已经向实例的IAM角色附加了AWS管理的"AmazonEC2RoleforAWSCodeDeploy"策略。

使用AWS管理的策略的优点在于,对CodeDeploy服务进行更新/更改不需要我更新实例角色。

然而,我意识到,如果实例被攻击者入侵并获取了Shell,策略中的无限范围"Resource": "*"将使攻击者能够针对我的任何S3存储桶执行策略中列出的任何操作。 我如何继续使用AWS管理的策略,并限制它只能访问特定的资源?

profile picture
专家
已提问 5 个月前26 查看次数
1 回答
0

【以下的回答经过翻译处理】 你也可以自定义策略,在如“拒绝所有”之类的策略中列出您需要访问的资源。这样,您就可以继续使用AWS托管的策略(允许访问服务和操作),然后附加自己的策略来定义其范围。实际上,这样很容易出错,请先仔细测试。在最坏的情况下,您还需要定义自己的策略将适用于哪些服务和操作,最终将重写AWS托管的策略:https://repost.aws/questions/QUhdNOg85CQXqqgYdgoMc24g,此外您也可以在resource中,指定该角色可以访问的S3桶,以限制仅访问指定资源。

profile picture
专家
已回答 5 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则