【发布时间】:2020-06-04 08:48:49
【问题描述】:
您好,我是 AWS 的新手,这是我的困境。
我创建了一个无服务器端点,我创建了一个基于“Node.js”的 lamda 函数(这是一个 POST 请求),配置了 API 网关并创建了舞台,最后给出了端点 URL 供客户端使用资源作为 RESTFul 服务。
用户正在获取数据,一切顺利,直到我发现用户有一个简单的 HTML 页面,其中嵌入了“JQuery”代码,令我惊讶的是,这个页面的 API 密钥嵌入到了请求的标头部分为 "headers: {"x-api-key": }"。
这是实现的理想方式吗?因为我通过打开 HTML 页面在 Chrome 上查看源代码时能够看到键值。
【问题讨论】:
-
我不明白。因此,您创建具有关联
Api key的 API 并将其提供给您的客户端。客户为自己创建了一个简单的网站,该网站使用密钥访问您的 api? -
是的,因为他们会利用这个宁静的资源
-
是的,所以每个找到这个网站的人都可以访问你的api。也许考虑为 api 提供更安全的身份验证机制,例如使用 Cognito 用户池或自定义 lambda 授权。
标签: jquery node.js amazon-web-services aws-lambda aws-api-gateway