примеру https://github.com/danielcondemarin/serverless-next.js/tree/master/packages/serverless-component/examples/dynamodb-crud (DynamoDB) но вот доступа к базе данных нет. судя по всему, я неправильно задаю доступ. в самой аппе я задал токены AWS_ACCESS_KEY_ID и AWS_SECRET_ACCESS_KEY правильно, ибо все кроме dynamodb работает и деплоится. Но вот при попытке запроса к "апи" - при записи или чтении из БД - выдает ошибку
AccessDeniedException: User: arn:aws:sts::986218822254:assumed-role/dtqef5-6mj1tpm/us-east-1.dtqef5-bsq2e98 is not authorized to perform: dynamodb:PutItem on resource: arn:aws:dynamodb:eu-central-1:986218822254:table/BlogMessages
в IAM я дал полные доступы вроде AmazonDynamoDBFullAccess и AdministratorAccess. Однако меня смутило кое-что другое: в коде ошибки указано мол
User: arn:aws:sts::986218822254 ....
а на сайте амазона указано "arn:aws:iam::986218822254"
в чем отличие sts / iam ?
я думаю к доступу к базе данных стучится лямбда функция - это то же самое и разрешение те же? или я что-то делаю не так?
Add inline policy -> Service: DynamoDB -> Actions: All -> Resources: table - нажми Add ARN и вручную добавь ссылку с таблици DynamoDB у меня такое было когда я в ресурсах просто нажал галочку Any и не работало, после этого добавил вручную ARN и заработало По крайней мере, мне помогло
Обсуждают сегодня