GitHub Action部署Terraform时Lambda权限读取遇AccessDeniedException
问题解决:Lambda权限部署的AccessDeniedException修复
你需要为GitHub Actions使用的IAM角色添加以下Lambda相关权限:
- lambda:AddPermission:用于创建Lambda权限策略(对应Terraform创建
aws_lambda_permission资源的操作) - lambda:GetPolicy:Terraform会在创建后读取Lambda的权限策略来验证部署结果,这个是触发该错误的核心缺失项
完整的IAM策略示例:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lambda:AddPermission", "lambda:GetPolicy" ], "Resource": [ "arn:aws:lambda:<你的AWS区域>:<你的AWS账号ID>:function:<你的Lambda函数名称>" ] } ] }
补充说明
如果需要管理多个Lambda函数,可将Resource字段设置为更宽泛的范围(比如arn:aws:lambda:<你的AWS区域>:<你的AWS账号ID>:function:*),但建议遵循最小权限原则,仅授权目标函数的ARN。
内容的提问来源于stack exchange,提问作者Ganesan C
相关产品推荐
相关产品推荐

