Разрешить лямбда-доступ к конкретному S3 Bucket в конфигурации без сервера

Как я могу разрешить конкретной лямбде доступ к определенному сегменту s3 в serverless.yml?

Например, я портирую функцию загрузки файлов в lambda, используя без сервера. Чтобы загрузить файл в конкретное ведро s3, мне нужно разрешить lambda доступ к этому ведру s3. Как я могу сделать это в serverless.yml?

1 ответ

Решение

Из Serverless Framework - Руководство по AWS Lambda - IAM:

Чтобы добавить особые права к этой общесервисной роли, определите операторы в provider.iamRoleStatements которые будут объединены в сгенерированную политику.

service: new-service

provider:
  name: aws
  iamRoleStatements:
    -  Effect: "Allow"
       Action:
         - "s3:PutObject"
       Resource:
         Fn::Join:
           - ""
           - - "arn:aws:s3:::"
             - Ref: ServerlessDeploymentBucket
Другие вопросы по тегам