Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 授予用户访问所有外部存储桶的权限,但不包括我们自己的帐户存储桶_Amazon Web Services_Amazon S3_Amazon Iam - Fatal编程技术网

Amazon web services 授予用户访问所有外部存储桶的权限,但不包括我们自己的帐户存储桶

Amazon web services 授予用户访问所有外部存储桶的权限,但不包括我们自己的帐户存储桶,amazon-web-services,amazon-s3,amazon-iam,Amazon Web Services,Amazon S3,Amazon Iam,我想让IAM用户访问所有外部存储桶-存储桶不在我们自己的帐户中 例如,公共可访问的存储桶或某人授予我们的aws帐户访问权限的存储桶。如果我们帐户中的IAM用户无权访问外部存储桶(通过IAM策略),他们将无法访问该存储桶 但我不能授予他们访问所有bucket的权限,因为这将包括我们自己的bucket—我们不希望某些用户访问这些bucket,或者只授予具有特定权限的访问权限 基本上我想要一个条件,说: IF NOT <MY AWS ACCOUNT> grant s3:* ELS

我想让IAM用户访问所有外部存储桶-存储桶不在我们自己的帐户中

例如,公共可访问的存储桶或某人授予我们的aws帐户访问权限的存储桶。如果我们帐户中的IAM用户无权访问外部存储桶(通过IAM策略),他们将无法访问该存储桶

但我不能授予他们访问所有bucket的权限,因为这将包括我们自己的bucket—我们不希望某些用户访问这些bucket,或者只授予具有特定权限的访问权限

基本上我想要一个条件,说:

IF NOT <MY AWS ACCOUNT> 
    grant s3:*
ELSE
    dont modify existing S3 permissions
如果没有
授予s3:*
其他的
不要修改现有的S3权限

我希望有一个策略,我可以只应用于允许访问所有外部存储桶的用户或角色

您可以向该策略添加一个条件:

编辑:
根据对话和进一步研究,这对IAM用户不起作用。您可以根据
aws:PrincipalTag
向每个bucket添加
DENY
策略,并标记您不想访问的任何用户。

这是什么条件?我想不出有什么东西可以引用Amazon S3 bucket的帐户。是的,这是我的问题,我找不到条件。我能找到的最好的前缀是s3:prefix,但这意味着我所有的桶都需要有相同的前缀。我的用例的最佳实践是什么?你是对的。我曾考虑过一些条件,比如
aws:SourceAccount
,但这种方法的用途有限,在这种情况下不起作用。我认为这是不可能的,因为Amazon S3 ARN不引用帐号。此外,不将帐户ID列为可用条件。您需要此项的特定用例是什么?我可以理解,我希望向用户提供访问第三方存储桶(如共享数据)的凭据,但不希望授予对同一帐户中存储桶的访问权限(出于安全/隐私原因)。但是,有必要授予
s3:
-like权限,以便能够访问外部存储桶。在授予访问权限时,这些要求似乎是相互冲突的。我不在乎他们对其他方有什么访问权限,他们可以打破这些权限。我不想让他们上传/删除/等我们的帐户。检查bucket前缀是否与我的companys前缀不匹配(假设我所有的bucket都使用相同的前缀),然后允许s3:*这样做的唯一方法是什么?一个有趣的难题!我能立即想到的唯一方法是创建一个单独的AWS帐户(没有bucket),并允许他们在该帐户中担任IAM角色。然后可以授予他们大量的S3权限,而不授予对敏感存储桶的访问权限。您是在尝试相同的帐户访问还是跨帐户访问?