如何从S3权限选项卡中删除“被授权者”用户?

时间:2012-01-18 01:53:18

标签: permissions amazon-s3 amazon-web-services amazon-iam

这实际上是一个两部分问题:

我在“Grantee”下拉列表中看到一些用户在AWS控制台中编辑S3权限。

  1. 这些用户来自哪里?
  2. 如何删除它们?
  3. 他们不在IAM,所以我不确定他们来自哪里。

2 个答案:

答案 0 :(得分:4)

受让人可以是AWS账户(您可能过去添加的)或预定义的AWS“组”,例如“Authenticated Users”,“All Users”或“Log Delivery”。有关详细信息,请参阅AWS文档中的ACL Overview

要从给定文件(或一组文件)中删除授权,您可以使用PUT Object acl操作。

目前尚不清楚文档中为了从“Grantee”列表中删除用户需要执行的操作。我进行了一些测试,这就是S3的行为方式:

  • 如果您使用S3管理控制台选择文件并向新用户添加权限(尚未在您的受助者列表中),使用他的电子邮件地址(确保该电子邮件属于有效的亚马逊帐户),该用户不会转到桶ACL,但转到对象ACL。此用户也会永久访问Grantees列表(即使他的友好名称,而不是他的电子邮件地址,也会显示在那里)。
  • 如果您从AWS控制台注销并再次登录,则该用户仍在Grantees列表中,您可以授予他其他对象的权限。
  • 如果删除给定用户对每个对象的权限,请注销并再次登录,用户将不再显示在Grantees列表中。
  • 如果您将某个用户添加到Bucket ACL(通过API或通过AWS控制台),则该用户将始终位于该承诺上的对象的Grantees列表中。

这使我认为Grantees列表包含存储桶ACL中的完整用户列表以及对存储桶中对象具有权限的用户缓存(如果删除这些权限,则会在注销时清除)。

因此,我会首先尝试从您的存储桶的ACL中删除您不想要的用户,然后(当然是通过API)删除这些用户对存储桶中对象的权限。

答案 1 :(得分:0)

如果您在IAM中找不到特定的受让人名称,则可能是与您自己对应的默认受让人。其名称与您的AWS Forum nickname相同。