我们如何在网络浏览器中使用AWS Kinesis

How can we use AWS Kinesis in a web browser?

本文关键字:AWS Kinesis 浏览器 网络 我们      更新时间:2024-06-17

我们如何在web浏览器中使用AWS Kinesis?

我对AWS Kinesis Stream很感兴趣,想知道我是否可以使用它将用户的活动日志直接从浏览器发送到AWS。

AWS提供了一个可在web浏览器中执行的JavaScript SDK,但根据其文档,该SDK需要凭据信息,因此,我认为在我的用例中使用它是不安全的。

我应该在他们的浏览器和AWS Kinesis之间放置代理服务器吗?或者在这种情况下有没有安全的方法来使用AWS Kinesis?

您有两个选项可以直接从用户的浏览器使用JS SDK,而无需在代码中嵌入凭据或强制用户登录服务:

第一个是使用AWS Cognito。您可以在JS代码中嵌入几行代码,这些代码将标识您想要使用的身份池。在服务端,您为未经身份验证的用户定义了能够写入Kinesis的角色。您可以在这篇博客文章中看到更多详细信息:https://blogs.aws.amazon.com/javascript/post/Tx1F7FO6GDAIXD3/Authentication-with-Amazon-Cognito-in-the-Browser

第二个选项是在用户和Kinesis流之间设置API-Gateway。网关是一种托管服务,您可以将其定义为"开放",无需身份验证,并且网关可以是有权写入Kinesis流的网关。最简单的方法是使用Lambda函数,该函数还可以在将事件放入流之前对其进行转换/清理。请参阅服务文档中的更多详细信息:http://docs.aws.amazon.com/apigateway/latest/developerguide/getting-started.html