AWS无服务器功能(API网关和Lamda)是否存在安全漏洞?

时间:2020-02-20 04:37:42

标签: jquery node.js amazon-web-services aws-lambda aws-api-gateway

嗨,我是AWS的新手,这是我的难题。

我创建了一个无服务器终结点,我基于“ Node.js”(这是一个POST请求)创建了一个lamda函数,配置了API网关并创建了阶段,最后提供了终结点URL供客户端使用作为RESTFul服务的资源。

用户一直在获取数据,并且一切都进行得很好,直到我发现用户拥有一个简单的HTML页面,并在HTML页面中嵌入了“ JQuery”代码,令我惊讶的是,该页面的API密钥已嵌入到请求的标头部分为“标头:{“ x-api-key”:}“。

这是实现的理想方法吗?因为我通过打开HTML页面在Chrome上查看源代码时就能看到键值。

2 个答案:

答案 0 :(得分:1)

正如阿米特(Amit)正确指出的那样,您与用户共享的api-key仅生成一次并始终使用。无法保证将在何处以及如何使用它。

如果需要严格的安全性,则应使用短暂的临时安全性凭证。这些凭据在短时间内(例如1小时)有效,并且在此之后过期。

这很简单,因为用户将使用其用户名和密码组合通过网页登录,成功登录后,应用程序将收到临时凭证。

这些临时凭据应用于进行API调用。API将在授予对资源的访问权限之前验证凭据。

希望这会有所帮助。

答案 1 :(得分:1)

API密钥不用于安全性。它们主要用于支持使用计划并按客户端处理客户端(API密钥)上的限制。 API密钥不安全,因此不应视为身份验证的手段。