AWS Lambda 授权方

AWS Lambda Authorizer

我在 Lambda 中有一个 graphql 服务器 运行,一切正常,我希望我的端点只能由经过身份验证的用户访问,我的身份验证提供程序是具有 Cognito 用户池和 Facebook 的 Cognito 身份。那么如何检查用户发送请求是否通过身份验证呢?我是 AWS 的新手,所以我的问题可能会让 AWS 专家感到困惑,但我遇到的主要问题是 "how can I check if the request is from authenticated user"?我应该使用 AWS_IAM 作为授权人还是应该自定义授权人?

我最初做的是设置一个自定义授权器来检查来自 congito 的 accessToken 是否有效,但我认为这不是正确的方法,这只适用于 cognito 但不适用于 facebook 用户。

您不需要检查任何东西...在 API 网关中,select 您的 lambda 方法,在方法请求框中,select "Auth: AWS_IAM" 和然后只有登录的 Cognito 用户才能调用您的 lambda 方法