如何解决IAM角色定义错误时,在yaml文件中提供对象数组或序列映射
我正在使用无服务器框架在现有堆栈中定义新的Lambda。为了保持最少的特权主体和我的主要serevrless.yml文件清理器,我试图为每个函数在单独的yaml文件中提供权限(使用“ serverless-iam-roles-per-function”插件)。直到现在,当每个功能都需要在单个资源上执行某些操作时,此操作效果良好。但是现在我试图提供一个具有SQS和SES权限的函数,并且在尝试部署时遇到以下错误:
iamRoleStatements应该是对象数组,其中每个对象都具有“效果”,“动作” /“非动作”,“资源” /“非资源”字段。具体来说,语句0缺少以下属性:效果,动作/非动作,资源/非资源
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:*
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。