2016-04-13 15 views
5

Wie können wir AWS Kinesis in einem Webbrowser verwenden?Wie können wir AWS Kinesis in einem Webbrowser verwenden?

Ich bin interessiert an AWS Kinesis Stream und frage mich, ob ich es verwenden kann, um Aktivitätsprotokolle von Benutzern direkt von ihren Browsern an AWS zu senden.

AWS bietet a JavaScript SDK, die in einem Webbrowser ausführbar ist, aber das SDK benötigt gemäß seinem Dokument Anmeldeinformationen, aufgrund derer ich denke, es ist nicht sicher, es in meinem Anwendungsfall zu verwenden.

Sollte ich Proxy-Server zwischen ihren Browsern und AWS Kinesis setzen? Oder gibt es eine sichere Möglichkeit, AWS Kinesis in einem solchen Fall zu verwenden?

+1

Das SDK bietet Haken zum Arbeiten mit Kinesis, was bedeutet, dass es sicher zu bedienen ist. Die einzige Sache ist, Rollen und Berechtigungen richtig zu konfigurieren. – VonD

+0

Vielen Dank für Ihren guten Rat! –

Antwort

6

Sie haben mehr Möglichkeiten direkt das JS SDK zu verwenden, um von den Browsern der Benutzer ohne Berechtigungsnachweise in Ihrem Code einbetten oder Ihre Benutzer dazu zwingen, in einen Dienst anzumelden:

Die erste ist AWS zu verwenden Cognito . Sie können einige Codezeilen in Ihren JS-Code einbetten, die den Identitätspool identifizieren, den Sie verwenden möchten. Auf der Serviceseite definieren Sie die Rolle für nicht authentifizierte Benutzer, um in Kinesis schreiben zu können. Sie können mehr Details in diesem Blogbeitrag sehen: https://blogs.aws.amazon.com/javascript/post/Tx1F7FO6GDAIXD3/Authentication-with-Amazon-Cognito-in-the-Browser

Die zweite Möglichkeit ist, API-Gateway zwischen Ihren Benutzern und dem Kinesis-Strom zu setzen. Das Gateway ist ein verwalteter Dienst, den Sie als "offen" ohne Authentifizierung definieren können, und das Gateway kann mit der Berechtigung zum Schreiben in Ihren Kinesis-Stream versehen sein. Der einfachste Weg besteht darin, eine Lambda-Funktion zu verwenden, die auch die Ereignisse transformieren/bereinigen kann, bevor sie in den Stream eingefügt werden. Weitere Details finden Sie in den Servicedokumentationen: http://docs.aws.amazon.com/apigateway/latest/developerguide/getting-started.html

+0

Vielen Dank! –

+0

API Gateway scheint genau die Lösung, die ich will !!! –

+0

Ist das API Gateway nicht extrem teuer für einen solchen Anwendungsfall? Stellen Sie sich vor, Sie senden 1 000 000 Ereignisgewichtung je 1ko: API Gateway kostet 3,5 $ und Kinesis Firehose kostet 0,0038 $ (EU-West-Tarifierung). @Gut berechne ich die Kosten falsch? – Hugo

Verwandte Themen