AWS SAM:访问被拒绝异常:无法确定要授权的服务/操作名称



我在我的API网关上收到以下错误以及502。

Endpoint response body before transformations: <AccessDeniedException>
<Message>Unable to determine service/operation name to be authorized</Message>
</AccessDeniedException>

经过一些测试,此问题似乎只出现在使用授权方 Lambda 的终端节点上。授权方成功完成并发生所有转换,然后将请求发送到 lambda。

当前设置: 将 AWS-SAM 与嵌套堆栈结合使用

我尝试过的事情:
通过 aws-cli 手动向 lambda 添加权限,没有响应。
包括 https://github.com/awslabs/serverless-application-model/issues/59 中所述的调用权限

我目前的"解决方法"是手动进入 API 网关 -> 集成请求,然后选择编辑 Lambda 函数并选中该框(没有任何更改(。完成此操作后,在我再次从头开始构建堆栈之前,问题不会再次出现。

看起来问题出在 API Swagger yml 文件上。如文档中所述,x-amazon-apigateway-integration 必须是 lamba 集成的 POST。

最新更新