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

如何配置IAM角色限制DynamoDB表访问及条件化创建权限?

实现DynamoDB权限精细化控制的IAM策略配置

你可以通过自定义IAM权限策略来实现这个需求,策略会拆分两部分权限:允许创建指定后缀的表,以及允许对目标表执行CRUD操作。以下是具体的策略示例:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "dynamodb:CreateTable",
            "Resource": "arn:aws:dynamodb:*:*:table/*",
            "Condition": {
                "StringLike": {
                    "dynamodb:TableName": "*_user_table"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "dynamodb:GetItem",
                "dynamodb:PutItem",
                "dynamodb:UpdateItem",
                "dynamodb:DeleteItem",
                "dynamodb:Scan",
                "dynamodb:Query"
            ],
            "Resource": [
                "arn:aws:dynamodb:*:*:table/your-specific-existing-table",
                "arn:aws:dynamodb:*:*:table/*_user_table"
            ]
        }
    ]
}

策略细节解释:

  • 创建表权限:
    允许dynamodb:CreateTable动作,Resource设为所有DynamoDB表(*通配符),再通过Condition的StringLike规则限制仅能创建表名以_user_table结尾的表。
  • CRUD权限:
    列出了DynamoDB核心CRUD操作动作,覆盖读取、写入、查询、扫描等场景。Resource部分同时包含你需要授权的特定固定表(替换your-specific-existing-table为实际表名),以及所有以_user_table结尾的表,确保角色能对指定现有表和自己创建的表执行CRUD。

配置步骤:

  1. 登录AWS IAM控制台,找到目标角色。
  2. 点击「添加权限」→「创建内联策略」。
  3. 选择「JSON」模式,粘贴上述策略并根据实际需求修改资源ARN(替换区域、账号ID、特定表名)。
  4. 完成策略命名后保存,附加到目标角色即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 19:52:03