Amazon web services 当IAM角色定义出错时,在yaml文件中提供对象数组(或序列映射)

Amazon web services 当IAM角色定义出错时,在yaml文件中提供对象数组(或序列映射),amazon-web-services,yaml,amazon-iam,serverless-framework,Amazon Web Services,Yaml,Amazon Iam,Serverless Framework,我正在使用无服务器框架在现有堆栈中定义一个新的Lambda。为了使主体和我的主serevrless.yml文件保持最低权限,我尝试在单独的yaml文件中为每个函数提供权限(使用“每个函数无服务器iam角色”插件)。到目前为止,这种方法一直很有效,因为每个函数都需要对单个资源执行一些操作。但是现在我尝试提供一个对SQS和SES具有权限的函数,并且在尝试部署时遇到以下错误: IAroleStatements应该是一个对象数组,其中每个对象都有Effect、Action/NotAction、Resou

我正在使用无服务器框架在现有堆栈中定义一个新的Lambda。为了使主体和我的主serevrless.yml文件保持最低权限,我尝试在单独的yaml文件中为每个函数提供权限(使用“每个函数无服务器iam角色”插件)。到目前为止,这种方法一直很有效,因为每个函数都需要对单个资源执行一些操作。但是现在我尝试提供一个对SQS和SES具有权限的函数,并且在尝试部署时遇到以下错误:

IAroleStatements应该是一个对象数组,其中每个对象都有Effect、Action/NotAction、Resource/NotResource字段。具体来说,语句0缺少以下属性:Effect、Action/NotAction、Resource/NotResource

serverless.yml:

sendSupportMessage:
    handler: src/handlers/sendSupportMessage.handler
    maximumEventAge: 60
    maximumRetryAttempts: 1
    iamRoleStatements:
      - ${file(iam/sendSupportMessageIAM.yml):sendSupportMessageIAM}
    events:
      - sqs:
          arn: ${self:custom.SupportMessagesQueue.arn}
          batchSize: 1
sendSupportMessageIAM.yml:

sendSupportMessageIAM:
  - Effect: Allow
    Action:
      - sqs:ReceiveMessage
    Resource: ${self:custom.SupportMessagesQueue.arn}
  - Effect: Allow
    Action:
      - ses:SendEmail
    Resource: arn:aws:ses:*

这是一个类似的问题。你看到了吗?我看到了,但据我所知(我对无服务器框架还是新手),这不是同一个问题。链接问题中的OP试图合并两个文件,而我提供的是一个具有不同资源权限的文件。为了澄清这一点,如果我只是将所需的权限放在函数定义下的主serverless.yml文件中,它就可以工作了。如果我尝试从sendSupportMessageIAM.yml导入相同的内容,则会出错。。。