我希望使用API Gateway + Lambda + Cognito用户池来构建一个简单的REST API。
这个API将有两种用途。第一种是支持基本的Web应用程序(托管在CloudFront + S3上)。Web应用程序的身份验证使用Cognito登录/注册流程并托管,已经可以正常工作(通过API网关设置为使用用户池认证器)。
第二种方法是让客户使用REST API与系统通信。
例如,客户端可能使用Web应用程序配置工作流程,然后使用API调用该工作流程。
什么是推荐的方法来验证API以与后端服务一起使用?
传统上,我期望使用API密钥+密钥令牌来实现此目的。我没有问题在API Gateway界面中创建API密钥,但我无法看到任何方式将其链接到特定用户,也无法看到指定API密钥旁边的秘密令牌的任何方法。
假设上述内容是可能的,那么我如何设置它以便可以在Web应用程序上使用基于JWT的方法,并在API密钥+秘密令牌用于客户时使用。
编辑:此外,我注意到应用程序客户端具有ID和密钥。它们是否打算用于第三方API身份验证(类似于其他系统让您创建应用程序以进行API访问的方式)?我有些怀疑,因为每个用户池限制25个应用程序客户端,尽管它是软限制...