You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在AWS控制台隐藏DynamoDB特定敏感属性?

AWS控制台隐藏DynamoDB敏感属性的IAM策略方案

可以通过IAM属性级访问控制实现,但你原来的策略存在逻辑问题,导致控制台操作绕过了限制。

问题根源

你原策略尝试拒绝包含sensitive_attribute的请求,但AWS控制台默认会请求表的所有属性(不指定ProjectionExpression),此时dynamodb:Attributes上下文变量不会被填充,条件不触发,所以拒绝策略完全不起作用,用户仍能看到敏感属性。

正确解决方案

需要调整策略逻辑,强制请求必须指定要访问的属性,同时拒绝包含敏感属性的操作,或者仅允许访问非敏感属性。以下是两种可行方案:

方案一:强制指定属性+拒绝敏感属性

该方案要求用户必须明确选择要查看的属性,同时禁止访问敏感属性,控制台默认的“查看所有属性”操作会被拒绝。

{
  "Version": "2012-10-17",
  "Statement": [
    // 允许指定了ProjectionExpression的合法请求
    {
      "Effect": "Allow",
      "Action": [
        "dynamodb:GetItem",
        "dynamodb:Scan",
        "dynamodb:Query"
      ],
      "Resource": "arn:aws:dynamodb:<region>:<account-id>:table/my-table",
      "Condition": {
        "Null": {
          "dynamodb:Attributes": "false"
        }
      }
    },
    // 拒绝任何包含敏感属性的请求
    {
      "Effect": "Deny",
      "Action": [
        "dynamodb:GetItem",
        "dynamodb:Scan",
        "dynamodb:Query"
      ],
      "Resource": "arn:aws:dynamodb:<region>:<account-id>:table/my-table",
      "Condition": {
        "ForAnyValue:StringEquals": {
          "dynamodb:Attributes": [
            "sensitive_attribute"
          ]
        }
      }
    }
  ]
}

方案二:仅允许访问非敏感属性

该方案直接指定用户可访问的所有非敏感属性,任何包含敏感属性的请求都会被拒绝。

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "dynamodb:GetItem",
        "dynamodb:Scan",
        "dynamodb:Query"
      ],
      "Resource": "arn:aws:dynamodb:<region>:<account-id>:table/my-table",
      "Condition": {
        "ForAllValues:StringEquals": {
          "dynamodb:Attributes": [
            "attr1",
            "attr2",
            "attr3"
            // 替换为你的所有非敏感属性
          ]
        }
      }
    }
  ]
}

控制台操作说明

应用上述策略后,用户在AWS控制台查看表数据时,需要手动在查询/扫描页面的“投影表达式”输入框中填写允许的属性名称,才能正常查看数据;如果尝试直接查看所有属性,会收到权限不足的提示。

目前AWS控制台没有自动过滤敏感属性的功能,必须通过IAM策略限制属性访问,同时用户需配合指定投影表达式来查看合法数据。

内容的提问来源于stack exchange,提问作者mincom

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 19:47:04