预览版AWS AppSync不被IAM识别,如何创建全访问DynamoDB的IAM角色?
解决AppSync预览阶段IAM角色创建问题
当AppSync处于预览阶段时,IAM控制台确实可能不会把它列为可选的可信服务实体,这时候咱们得手动配置信任策略来绕开这个限制。下面是具体的操作步骤:
1. 创建带自定义信任策略的IAM角色
- 打开IAM控制台,进入「角色」页面,点击「创建角色」
- 在「选择受信任的实体类型」中,选择自定义信任策略(不要选AWS服务选项,因为预览阶段它不在列表里)
- 粘贴以下信任策略JSON,这个策略明确允许AppSync服务扮演该角色:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "appsync.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
- 点击「下一步」,给角色起个清晰的名字(比如
AppSyncDynamoDBFullAccessRole),完成角色创建。
2. 附加DynamoDB完全访问权限
- 回到刚创建的角色详情页,切换到「权限」标签,点击「添加权限」→「附加策略」
- 在策略列表里搜索
AmazonDynamoDBFullAccess,选中这个托管策略后点击「附加策略」 - 如果你后续需要更精细的权限控制(而非完全访问),也可以自定义策略,只开放AppSync实际需要的DynamoDB操作(比如
dynamodb:GetItem、dynamodb:PutItem等),但根据你的需求,直接用完全访问策略最省心。
额外提醒
- 确保你的AWS账户拥有创建IAM角色和附加策略的权限
- 等AppSync正式发布后,IAM控制台会自动识别它,到时候就可以直接通过服务选择来创建角色了,但当前预览阶段手动配置是最可靠的方案
内容的提问来源于stack exchange,提问作者Sepehr Sobhani
相关产品推荐
相关产品推荐

