【问题标题】:Deny Access to a DynamoDB table拒绝访问 DynamoDB 表
【发布时间】:2021-09-08 10:29:22
【问题描述】:

我尝试创建一个拒绝访问 dynamodb 表的策略。

我添加了 ReadOnlyAccess(完整),我希望用户不能读取/使用/将数据放在一个表中

政策如下所示

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Action": [
                "dynamodb:BatchGet*",
                "dynamodb:DescribeStream",
                "dynamodb:DescribeTable",
                "dynamodb:Get*",
                "dynamodb:Query",
                "dynamodb:Scan",
                "dynamodb:BatchWrite*",
                "dynamodb:CreateTable",
                "dynamodb:Delete*",
                "dynamodb:Update*",
                "dynamodb:PutItem"
            ],
            "Effect": "Deny",
            "Resource": "arn:aws:dynamodb:xx-xx-xx:xxxxxxx:table/some-name"
        }
    ]
}

用户现在无法检查 some-name 表中的数据,这很好,但是当我列出这些表时,我看到一堆随机的“加载失败”表。我可以点击它们并访问数据,但我不想看到加载失败(除了可能的名称表)。

我做错了什么?

【问题讨论】:

  • 您能否提供这些“加载失败”消息的示例?屏幕截图,或确切的消息以及它出现在哪里?您还可以使用 AWS CloudTrail 查看控制台发出的哪些 API 调用被拒绝。

标签: amazon-web-services amazon-dynamodb amazon-iam aws-policies


【解决方案1】:

我找不到主要来源,但从这个问题的答案IAM policy to allow access to DynamoDB console for specific tables 来看,所有表可能始终需要“dynamodb:DescribeTable”权限才能使控制台正常工作。

我想这是有道理的,因为我不认为从“ListTables”返回的表可以被限制,如果控制台在受限制的表上执行“DescribeTable”,它会出错。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-12-12
    • 2022-01-09
    • 2012-04-15
    • 2012-11-02
    • 1970-01-01
    • 1970-01-01
    • 2012-05-23
    • 2017-08-19
    相关资源
    最近更新 更多