我目前的情况: 我在S3 / CloudFront上有一个React网站,使用API Gateway作为后端。该站点使用aws放大库来帮助认证AWS Cognito用户池。我有一个API网关授权程序设置,可以针对认知用户池进行授权。
我的目标: 为想要将API集成到其代码中的用户生成API密钥/秘密。然后,用户可以使用提供密钥/秘密的http请求,从自己的代码中访问支持网站的API端点。也许可以使用从API网关生成的SDK,如果这样做有助于对秘密消息进行签名(即使那是如何工作的)。
我的问题: API Gateway可以生成API密钥,但是看起来API Gateway不支持秘密。即使我确实使用了内置的API密钥,也可以对Cognito用户池和API密钥使用相同的API端点吗?密钥有限制,甚至应该用于用户API应用程序密钥?
在我的最终资源lambda中,我还依赖于客户端在标头中传递accesstoken,以便我可以正确地从congito获取用户名并在Dynamo中查找用户数据(我认为您无法从cognito中获取用户名仅包含IDToken)。也许有办法解决这个问题。