AWS / S3 – 创build一个用户(通过控制台)授予r / w桶权限为1桶?

我有一个Amazon Web Services S3存储桶,我想用于android数据同步应用程序“ FolderSync ”。

为此,我想为新用户设置有限的烫发桶。

在AWSpipe理控制台中,我可以创build用户,但我可以find的唯一与S3相关的权限分配给该用户:

  • AmazonS3FullAccess(“通过AWSpipe理控制台提供对所有存储桶的完全访问权限”。)
  • AmazonS3ReadOnlyAccess(“通过AWSpipe理控制台提供对所有存储桶的只读访问权限”。)

这两个听起来都不像我想要的(我不想通过控制台访问这个用户,我不希望它为'所有桶')。

如果我没有为此用户设置任何权限,则会收到警告消息,但除此之外,我可以完成用户创build,但是当我然后转到存储区以将权限分配给该用户时,新用户不会显示在下拉列表中列表(如下所示)。

在这里输入图像说明

必须有办法做到这一点 – 任何人都可以帮忙吗?

被授予者可以是AWS账户或预定义的Amazon S3组之一。 对于您的情况,build议将S3政策和IAM政策结合起来,以加强您的资产安全。 因此,授予用户访问特定s3存储桶的权限应如下进行:

1-转到S3服务,select您的存储桶并编辑权限:创build一个自定义策略,如下所示:

{ "Version": "2012-10-17", "Id": "S3-Account-Permissions", "Statement": [{ "Sid": "1", "Effect": "Allow", "Principal": {"AWS": [{"AWS":"arn:aws:iam::account-number-without-hyphens:user/username"]}, "Action": "s3:*", "Resource": [ "arn:aws:s3:::mybucket", "arn:aws:s3:::mybucket/*" ] }] } 

2-导航到IAM服务并创build自定义策略。 以下是政策应该如何:

 { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:*" ], "Resource": "arn:aws:s3:::mybucket/", "Resource": "arn:aws:s3:::mybucket/*" } ] } 

3-将新创build的策略附加到用户

在另一个评论中提供的策略将不允许在S3控制台上列出桶,也不允许在桶中显示文件的任何其他应用。 这是一个IAM策略允许用户只访问一个指定的桶并限制其他所有内容。

 { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:ListAllMyBuckets", "Resource": "arn:aws:s3:::*" }, { "Effect": "Allow", "Action": "s3:*", "Resource": [ "arn:aws:s3:::bucket", "arn:aws:s3:::bucket/*", ] }, { "Effect": "Deny", "NotAction": "s3:*", "NotResource": [ "arn:aws:s3:::bucket", "arn:aws:s3:::bucket/*" ] } }