即使对管理员也隐藏S3存储桶

时间:2018-11-08 22:14:47

标签: amazon-web-services amazon-s3

是否可以向所有人(包括管理员级别的用户)(一个用户(非管理员)除外)隐藏一个S3 AWS存储桶?我设法创建了一个只有一个用户可以访问的存储桶,但这仍然不能阻止管理员使用它并查看内容。这是用于包含敏感的HR材料,因此只有分配的HR人员才能查看。

3 个答案:

答案 0 :(得分:3)

使用Deny策略阻止其他用户(按照@jarmod)是很好的做法,但它不会阻止存储桶可见,也不会阻止管理员撤消该策略。

另一种方法是创建一个单独的AWS账户,然后将存储桶放入该其他账户。然后,向该帐户添加存储桶策略,以授予原始帐户中的IAM用户访问权限。

这将“隐藏”原始帐户中所有用户的存储桶。

答案 1 :(得分:2)

即使您能够使用AWS上的管理员级凭据保护存储桶免受用户攻击,这些管理员级用户也可以修改存储桶上的权限以获得访问权限。也许考虑加密?

答案 2 :(得分:1)

您是否考虑过S3存储桶策略,该策略拒绝访问除HR用户和将数据填充到S3存储桶中的任何HR自动化流程之外的所有人,例如:

{
    "Version": "2012-10-17",
    "Id": "Policy53216968",
    "Statement": [
        {
            "Sid": "Deny access except HR users and automation",
            "Effect": "Deny",
            "NotPrincipal": {
                "AWS": [
                    "arn:aws:iam::123456789012:user/hr-user",
                    "arn:aws:iam::123456789012:role/hr-role",
                    "arn:aws:iam::123456789012:role/hr-automation-role"
                ]
            },
            "Action": "s3:*",
            "Resource": "arn:aws:s3:::mybucket"
        }
    ]
}

请谨慎使用此类政策。如果您输入有误,则可以轻松地将所有人(包括Admin用户)从存储桶中锁定。在这种情况下,您将需要使用root帐户来恢复对存储桶的访问。

注意:此策略不向HR用户和自动化过程授予任何权限。它只是拒绝所有非人力资源的使用。您仍然需要以通常的方式(IAM政策)授予HR权限。