AWS API网关自定义授权程序未运行

Gre*_*Rox 5 aws-lambda aws-api-gateway

我创建了一个Lambda函数,我在其中一个API端点的方法请求中将其配置为"自定义身份验证".当我使用AWS API网关的"测试"功能时,我在日志输出中看不到Lambda函数的任何输出.

我已经"部署"了API.

但是有些事情正在发生,因为当我使用配置的自定义域名命中api端点时,我得到了

{"message":"Unauthorized"}

但是,如果我从此端点中删除"自定义身份验证"并点击相同的端点,则可以正常工作!

我启用了cloudwatch日志记录,这似乎表明lambda函数没有被调用,但apiGateway日志组也没有,但是,必须发生一些事情,我只是看不到它.

任何人都能指出我如何调试这个方向吗?

小智 9

  1. API网关测试调用功能不会调用任何授权者,而是直接调用您的集成.
  2. 您可以使用API​​网关控制台上"授权程序"选项卡中提供的授权程序测试调用来独立测试lambda授权程序.
  3. 您的lambda函数必须返回包含主体标识符(principalId)的响应和包含策略语​​句列表的策略文档.

有关这方面的更详细文档可以在这里找到.

Ritisha.

  • 一定要在你的头文件中加入“Authorization: Bearer your_token”,否则授权者不会被调用。 (3认同)