【发布时间】:2019-03-04 02:37:32
【问题描述】:
首先,我对 AWS 很陌生。从非常基本的 API Gateway + Lambda 集成开始。以下是我的用例。
使用 API 网关创建 Lambda 代理集成请求,GET 请求输出通过查询参数传递的 2 个数字的加法。现在,如果我访问这个 API Gateway 端点,我会得到想要的结果。
现在我已经创建了自定义授权器,它又是对另一个 lambda 的调用。 因此,请求将在访问 API 网关端点之前由授权者 lambda 进行验证。在这种情况下,根本不会调用授权方。
我已为 API 网关和 lambda 启用 Cloudwatch 日志,所以以下是我面临的问题,
到 API Gateway 端点的 Cloudwatch 日志未显示对自定义授权方 lambda 的调用。
在 lambda 组中正确查看到端点 lambda 的日志,但在授权方 lambda 中无法看到相同的日志。
我遵循了以下 AWS 文档,似乎没有任何帮助。
https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-use-lambda-authorizer.html
以下是 API 网关配置。配置的授权方有一个名为“授权”的标头令牌,API 的使用者应在调用端点时提供授权令牌,该端点应该由授权方进行验证。
API 网关日志 - 直接调用配置的 Lambda,无需调用 Authorizer。
【问题讨论】:
-
你的代码是什么样的?
-
@RobertHarvey - 我已经使用 API Gateway 配置更新了帖子,它基本上是 Authorizer Lambda 中的简单令牌验证代码。但是在弄清楚代码之前,我无法找到调用 Authorizer 的日志。提前致谢。
-
您是否查看了“poc-simple-authorizer”lambda 函数日志以确认它没有被调用?
-
@Rajesh - 正如我在 #2 中所述,“poc-simple-authorizer”的执行日志没有记录。当我调用 API Gateway 端点时,无论是在网关日志还是在单个授权方 lambda 函数日志中。
-
如果授权人日志不可见,那么我的初步问题是 - 在与授权人进行更改后,您是否部署了 API?
标签: amazon-web-services aws-lambda aws-api-gateway