拒绝除特定用户以外的所有用户对EFS的操作

0

【以下的问题经过翻译处理】 我尝试拒绝所有用户对EFS的操作,除了一个特定的用户外。

当我在我的EFS上附加文件系统策略,并使用NotPrincipal的拒绝条目时,我无法像预期的那样访问EFS。

示例文件系统策略:

我的期望是我的角色会话将访问列出的操作,但没有其他人将访问。但是,测试时,甚至我也被拒绝了访问。《如何限制特定IAM角色访问Amazon S3存储桶》建议在这种情况下应使用role ARN和assumed-role ARN,但是在测试时,它不起作用。

按照博客文章中使用的逻辑,我可以创建以下内容:

这似乎按照我的意图工作,但我想了解第一个示例不起作用的理由,因为它更易于使用和理解。

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

【以下的回答经过翻译处理】 你好!这是一个涉及DENY操作和NotPrincipal组合使用的微妙问题。作为AWS的最佳实践,当使用Deny和NotPrincipal元素时——如果NotPrincipal元素缺少角色所属的AWS账户的ARN,则策略可能明确地拒绝访问该AWS账户和该账户中的所有实体,包括你的角色会话和角色。此外,在某些情况下,假定角色用户不能拥有比其父角色更多的权限,并且角色不能拥有比其父AWS账户更多的权限。

在你提供的示例中,由于你使用了aws:userId,AWS账户ID代表AWS账户根用户,而"role_principal_id:my_email@my_domain.com"代表角色会话,这与上述略有不同。

这很可能是你在第一个策略中看到意外结果的原因,因为策略可能会拒绝访问该AWS账户和该账户中的所有实体。AWS文档并没有完全阐明这一点。

profile picture
专家
已回答 5 个月前

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

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

回答问题的准则