我有一个 Web 客户端通过 AWS API Gateway 向 AWS Lambda 发出请求。我使用 AWS Cognito 和 Auth0 来对用户进行身份验证。
我的问题与来自 AWS API Gateway 端点的 CORS 响应标头相关,特别是设置为任何“' * '”的 Access-Control-Allow-Origin 响应标头。本文指出了使用任何“' * '”参数的风险,即“黑客可以在我们的后端选择我们的网站来请求任何方法”:(CORS 安全链接)。
虽然 Cognito 的身份验证可以证明发出请求的最终用户就是他所说的人,但 Cognito 的身份验证不一定证明代表用户发出请求的网站是mywebsite.com而不是Attacker.com。
Cognito 是否保证请求来自 mywebsite.com?
是否有一种安全的方法来实现任何“' * '” Access-Control-Allow-Origin 响应标头?