Как исправить роль arn: aws: sts Appsync? - PullRequest
0 голосов
/ 14 октября 2019

Я попытался заменить одну из таблиц в моем 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: ...)

Я понятия не имею, как это исправить. Я не вижу роли IAM с этим идентификатором. Что мне делать?

1 Ответ

1 голос
/ 15 октября 2019

Похоже, что роль IAM, назначенная вами источнику данных AppSync, который используется AppSync для вызова вашей таблицы DynamoDB от вашего имени, имеет старую политику, которая дает ему разрешение для старой таблицы, но не для новой таблицы. Чтобы выяснить, так ли это, вы можете перейти на страницу источника данных консоли AppSync, выбрать нужный источник данных и записать имя роли, назначенной источнику данных. Получив имя роли IAM, перейдите в консоль IAM, выберите роль и измените политику. Если имя таблицы в политике не совпадает с именем новой таблицы, обновите его.

Другой вариант - удалить источник данных из AppSync, а затем воссоздать его, сказав консоли, чтобы она создала новый. роль для вас. Новая роль будет правильно распределена по новой таблице автоматически при создании через консоль AppSync.

...