【问题标题】:How do I fix arn:aws:sts Appsync Role?如何修复 arn:aws:sts Appsync 角色?
【发布时间】:2019-10-15 06:08:42
【问题描述】:

我试图替换我的 Appsync API 中的一个表,现在我收到了这个错误:

User: arn:aws:sts::164370900240:assumed-role/User-role-likbfqoe4zd3zd7bz5bl2y4z6i-test/APPSYNC_ASSUME_ROLE is not authorized to perform: dynamodb:PutItem on resource: arn:aws:dynamodb:us-east-1:164370900240:table/User-site-test (Service: AmazonDynamoDBv2; Status Code: 400; Error Code: AccessDeniedException; Request ID: ...)

我不知道如何解决这个问题。我没有看到具有该 ID 的 IAM 角色。我该怎么办?

【问题讨论】:

  • 检查 APPSYNC_ASSUME_ROLE 作为将项目放入 dynamodb 表的权限,与我们分享策略 json

标签: amazon-web-services aws-appsync


【解决方案1】:

您分配给 AppSync 数据源(AppSync 使用该角色代表您调用 DynamoDB 表)的 IAM 角色似乎有一个旧策略,该策略授予它对旧表而不是新表的权限。要确定是否是这种情况,您可以转到 AppSync 控制台的数据源页面,选择相关数据源并记下分配给数据源的角色名称。获得 IAM 角色的名称后,转到 IAM 控制台,选择角色,然后编辑策略。如果策略中表的名称与新表的名称不匹配,请更新它。

另一个选项是从 AppSync 中删除数据源,然后重新创建它,同时告诉控制台为您创建一个新角色。通过 AppSync 控制台创建时,新角色将自动正确地作用于新表。

【讨论】:

    猜你喜欢
    • 2019-10-19
    • 2018-08-19
    • 2017-08-20
    • 2023-03-13
    • 2021-08-03
    • 1970-01-01
    • 2018-10-13
    相关资源
    最近更新 更多