Используйте одну таблицу DynamoDB с двумя разными приложениями без обслуживания - PullRequest
0 голосов
/ 07 июня 2018

У меня есть работа над DynamoDB, функцией Lambda и безсерверным фреймворком.

У меня есть знания обо всем этом, и я до сих пор учусь этому.

Теперь я хочу сказать, что я написал один без сервераприложение и развернуть в AWS.В этом приложении я создал около 40+ конечных точек (лямбда-функций) и 4 таблицы DynamoDB, такие как A, B, C, D.

Теперь мне нужно создать еще одно отдельное приложение без сервера, и я хочу использовать таблицу DynamoDBА в это приложение, которое я создал в предыдущем безсерверном приложении.

Возможно или нет?Если возможно, то как я могу это реализовать.

Я уже пытаюсь сканировать операцию в это новое приложение, но из-за ошибки вроде

2018-06-07T11:02:19.352Z 3e8b6b27-6a42-11e8-acf9-7f86fa9df706 { AccessDeniedException: User: arn:aws:sts::XXXXXXX:assumed-role/serverless-rest-api-dev-us-east-1-lambdaRole/serverless-rest-api-dev-todoList is not authorized to perform: dynamodb:Scan on resource: arn:aws:dynamodb:us-east-1:XXXXXX:table/A

Здесь мне нужно определить что-нибудьеще, связанные с таблицей A DynamoDB в мой новый serverless.yml?

Пожалуйста, помогите мне здесь, если кто-то найдет решение для этого.Заранее спасибо

Ответы [ 2 ]

0 голосов
/ 08 июня 2018

Я получил решение своей проблемы.

Во-первых, мне нужно проверить ARN table A в секции таблицы AWS DynamoDB, которую я создал в своем первом приложении.

Теперь добавьте, чтоARN в разделе ресурсов файла serverless.yml второго приложения.

Предположим, что мой ARN таблицы A похож на arn:aws:dynamodb:us-east-1:XXXXXX:table/todo-task

Теперь мне нужно добавить этот ARN в файл serverless.yml моего второго приложенияРесурсный раздел.это как

IAMRoleStatement
     - Effect: Allow
           Action:
                - dynamodb:*
           Resource:
                - arn:aws:dynamodb:us-east-1:XXXXXX:table/todo-task
0 голосов
/ 07 июня 2018

Если и приложения, и таблицы DynamoDB расположены в одном регионе, это возможно.Вы должны установить соответствующую роль для второго приложения, чтобы иметь доступ к таблице Dynamo DB.Пожалуйста, проверьте разрешения роли: serverless-rest-api-dev-us-east-1-lambdaRole / serverless-rest-api-dev-todoList

...