拒绝所有用户的访问权,只有一个用户无法访问S3存储桶中的私有文件夹

霍曼巴林

我有一个公共S3存储桶,其中有2个文件夹,public-folder并且private-folder

我希望每个人都可以访问,public-folder并且只希望user1private-folder编程方式进行访问

在S3存储桶中,我添加了以下策略:

{
    "Version": "2012-10-17",
    "Id": "Policy1568654876568",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": "*",
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::my-bucket/*"
        },
        {
            "Effect": "Deny",
            "NotPrincipal": {
                "AWS": [
                    "arn-of-user1"
                ]
            },
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::my-bucket/private-folder/*"
        }
    ]
}

从IAM,我创建了一个user1能够访问存储桶的策略:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Action": [
                "s3:ListBucket"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:s3:::my-bucket"
        },
        {
            "Action": [
                "s3:DeleteObject",
                "s3:GetObject",
                "s3:PutObject"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:s3:::my-bucket/*"
        }
    ]
}

有没有更好的方法可以实现这一目标?是否可以拒绝所有人访问private-folder使用S3策略,然后覆盖我为之定义的使用IAM策略user1

马辛

如果您有public-folder,以下操作难道不会变得更容易,更自然吗private-folder以下内容基于以下事实:存储桶及其对象默认私有

铲斗政策

它允许公众访问public-folder

{
    "Version": "2012-10-17",
    "Id": "Policy1568654876568",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": "*",
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::my-bucket/public-folder/*"
        }
    ]
}

用户政策

它允许在中放置,获取和删除对象private-folder,以及列出存储桶。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Action": [
                "s3:ListBucket"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:s3:::my-bucket"
        },
        {
            "Action": [
                "s3:DeleteObject",
                "s3:GetObject",
                "s3:PutObject"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:s3:::my-bucket/private-folder/*"
        }
    ]
}

是否可以拒绝所有人使用S3策略访问私有文件夹,然后使用我为user1定义的IAM策略覆盖私有文件夹?

明确拒绝将覆盖所有允许。因此,如果您拒绝所有人访问,则无法使用任何IAM策略来允许访问。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Gnu / Linux命令列出所有有权访问一个文件夹的用户

向没有AWS账户的用户授予对AWS S3存储桶/文件夹的访问权限

允许多个用户使用 IAM 角色访问私有 S3 文件夹

S3:如果由另一个用户创建,则用户无法访问自己的s3存储桶中的对象

S3 访问私有存储桶文件

拒绝除应用程序用户以外的所有用户访问AWS S3文件

如何用一些简短的方法将所有文件和文件夹从一个文件夹移到php中S3存储桶的另一个文件夹?

访问 s3 存储桶特定子文件夹内所有文件的对象键

最好有多个s3存储桶或一个带子文件夹的存储桶?

拒绝访问除一个文件夹中的内容以外的所有内容

如何在Linux中为所有用户提供文件夹的写访问权限?

如何从S3存储桶中渲染图像(文件)阻止了前端中的所有公共访问(私有写入,私有读取)

如何从Amazon S3存储桶中的文件夹中获取所有文件?

对用户组的AWS访问S3存储桶的文件夹

S3存储:将存储桶文件夹设为私有

如何授予新用户访问现有用户中的文件/文件夹的权限

有没有办法通过python在已经存在的S3存储桶中创建一个文件夹?

Amazon S3存储:可以在私有存储桶中列出公共文件夹吗?

以root用户(=存储桶拥有者)在AWS S3存储桶上放置存储桶策略时拒绝访问

将所有用户的所有ini文件从一个文件夹复制到另一个文件夹

是否授予所有用户访问包括新文件的文件夹的权限?

使用图形访问所有用户一个驱动器文件

如何拒绝子用户只能编辑一个字段且只有管理员有权控制访问此字段的权限...?

无法从私有Google云作曲家访问AWS s3存储桶

除了某些事件发生时,如何使所有用户无法访问React中的路由

S3存储桶策略,用于设置引用URL可读的文件夹,以及仅对AWS用户可用的另一个文件夹

允许所有用户在HDD中创建文件夹,但只有所有者可以读取/写入/删除自己的文件夹

如何在一个Google云端硬盘文件夹中访问所有文件?

限制有关私有和公共的S3子文件夹级别存储桶策略