【问题标题】:How to secure an AWS Gateway REST API to be accessed by a publicly accessible web page (React)如何保护 AWS Gateway REST API 可通过可公开访问的网页进行访问 (React)
【发布时间】:2021-07-16 06:24:36
【问题描述】:

我在 AWS API Gateway 中公开了一个 REST API,为一些后端数据提供服务,我计划通过我正在开发的 React UI(只读)和一些管理脚本(非只读)来使用它。我提供的数据目前不敏感,但我想围绕它设置一些基本的安全性,以便只有我(或我编写的应用程序)可以访问和操作它。我的问题是:如何保护 API 以便可公开访问的 UI 可以与之交互?我的第一个冲动是使用 Cognito 用户池/JWT,但我看到的示例总是将其与客户端的某些登录流程联系起来(我没有)。

【问题讨论】:

  • 您能否澄清一下“安全访问 API”是什么意思,无需任何形式的身份验证,例如 cognito?
  • 我不会要求用户登录网页来查看内容。因此,我希望应用程序在后台向 API 进行身份验证以加载数据,但不打扰用户进行任何登录。我想知道这是否是 Cognito 的一个很好的用例,或者我是否应该考虑其他一些事情。
  • 除了登录别无他法。

标签: reactjs amazon-web-services aws-api-gateway amazon-cognito websecurity


【解决方案1】:

您可以在您的 API 网关设置 API 密钥,并在您从 React 前端进行 HTTP 调用时将其设置为您的标头。如果您的标头中没有正确的 API 密钥。它将无法访问。更多细节在这里:https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-06
    • 1970-01-01
    • 2019-01-21
    • 2019-04-29
    相关资源
    最近更新 更多