如何使Aamzon API Gateway仅接受来自特定主机的请求

时间:2017-03-15 05:05:09

标签: python-2.7 amazon-web-services aws-lambda aws-api-gateway

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

在此域中,我发出了运行无服务器lambda函数以执行特定任务的请求。

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

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

1 个答案:

答案 0 :(得分:4)

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

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

如果您担心计费过多,可以在api密钥上设置使用计划,并将其限制为每天/每周/每月x次呼叫。

API网关支持多种身份验证机制

相关问题