gpt4 book ai didi

python-2.7 - 如何让 Amazon API Gateway 只接受来自特定主机的请求

转载 作者:行者123 更新时间:2023-12-03 18:30:06 24 4
gpt4 key购买 nike

所以我的问题是我在 AWS Lambda 中创建了一个 lambda 函数并链接到 api 网关。所以我想确保对 lambda 函数的请求只发生在我的域 www.example.com

在这个域中,我请求运行无服务器 lambda 函数来执行特定任务。

有没有办法确保仅从我的域或主机接受 api 请求。

另外,我使用 Python 2.7 来编写 lambda 函数,如果有任何替代方法请给我建议,我是 Python 和 AWS Lambda 的新手。

最佳答案

如果您担心浏览器向 www.example.com 上的 api 发出请求,那么如果您没有允许其他域发出请求的 CORS header ,则不会发生这种情况。但是在浏览器之外,任何人仍然可以向您的 APt 发出请求。

但是,您可以对 api 调用进行身份验证。这可以是您客户端上的简单 api key ,也可以是临时凭证(调用 STS 以获取角色的凭证)以调用您的 api。但是经过努力,有人(查看您的源代码并复制调用机制)仍然可以调用您的 api。如果您只允许经过身份验证的用户(使用某些名称/密码进行身份验证并在 api 网关上强制执行)进行 api 调用,则可以增加所需的工作量。

如果您担心被多收费,您可以在您的 api key 上设置一个使用计划,并将其限制为每天/每周/每月的 x 次调用。

API Gateway 支持多种认证机制

  • IAM 身份验证 https://aws.amazon.com/premiumsupport/knowledge-center/iam-authentication-api-gateway/
  • API key http://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-setup-api-key-with-console.html
  • Cognito 用户池 http://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-integrate-with-cognito.html
  • 关于python-2.7 - 如何让 Amazon API Gateway 只接受来自特定主机的请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42801491/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com