-2

ログインとセキュリティの目的でAmazon Cognitoを使用するiOSアプリとウェブサイトがあります。今すぐ認証されたCognitoユーザーだけが通信できるメッセンジャーが必要です。私は1on1の会話(グループチャットなどなし)が必要で、会話ごとに履歴を保存する必要があります。私はSNSやSQSを使うことを考えましたが、それが良いアイデアかどうかは本当に分かりません...AWS経由のメッセンジャー

誰かに提案をしていますか?

答えて

0

Amazon APIGateway、Amazon Lambda、Amazon DynamoDB、Amazon SNS、IOT Websocketを使用してチャットアプリケーションを実装できます。

  • APIGatewayとLambdaを使用して、受信メッセージを実装し、チャットメッセージをDynamoDBに格納します。
  • Lambdaからは、ブラウザクライアントが聴くIOT websocketにもメッセージを公開します。
  • モバイルクライアントにメッセージを公開すると、Lambdaからの通知をプッシュするSNSトピックがトリガーされます。

詳細については、ブログ記事Receiving AWS IoT messages in your browser using websocketsを参照してください。

+0

ありがとうございます。 DynamoDbはメッセージを保存するのに良い考えです。 しかし、私は何とか特定のエントリを保護する必要があるので、通信している2人のCognitoユーザーだけがアクセスできます。 単一のIDにアクセスできるようにするには、単に次のような条件を使用します。 "ForAllValues: "StringEquals":{"dynamodb:LeadingKeys":["$ {cognito-identity.amazonaws.com:sub}"] しかし、私はどのように追加のアイデンティティにアクセスできますか? –

+0

ポリシーレベルで2つのIDを指定することはできません。代わりに、API Gateway Custom Authorizer(Preferred)または統合Lambdaで承認を行います。 – Ashan

+0

API Gateway Authorizerは良いと思われます... EC2でこれを行う方法はありますか?現在、私はEC2 Nodejsですべてをやっていますか、または必要なLambdaですか? –

関連する問題