Amazon Simple Notification Service(SNS) とは

Amazon Simple Notification Service

Amazon Simple Notification Service (Amazon SNS) は、配信者から受信者 (または生産者から消費者) へのメッセージ配信を提供するマネージドサービスです。 発行者は、論理アクセスポイントおよび通信チャネルであるトピックにメッセージを送信することで、受信者と非同期的に通信します。 クライアントは、Amazon Kinesis Data Firehose、Amazon SQS、AWS Lambda、HTTP、E メール、モバイルプッシュ通知、モバイルテキストメッセージ (SMS) などのサポートされたエンドポイントを使用して SNS トピックにサブスクライブし発行されたメッセージを受信できます。

特徴と機能

Application-to-Application (A2A) メッセージング

Amazon Kinesis Data Firehose 配信ストリーム、Lambda 関数、Amazon SQS キュー、HTTP/S エンドポイント、AWS Event Fork Pipelines などの受信者をサポートしています。

Application-to-Person の通知

モバイルアプリケーション、携帯電話番号、E メールアドレスなどの受信者へのユーザー通知を提供します。

標準および FIFO トピック

メッセージの順序を厳格に保ち、メッセージグループを定義し、メッセージの重複を防止します。FIFO トピックをサブスクライブできるのは、Amazon SQS FIFO キューのみです。 メッセージの配信順序やメッセージの重複が重要でない場合は、標準トピックを使用します。サポートされているすべての配信プロトコルは、スタンダードトピックにサブスクライブできます。

メッセージの耐久性

Amazon SNS では、メッセージの耐久性を実現するために連携するいくつかの戦略を使用しています。

  • 公開されたメッセージは、地理的に分離された複数のサーバおよびデータセンターの間で保存されます。
  • サブスクライブされたエンドポイントが利用できない場合、Amazon SNS は配信の再試行ポリシーを実行します。
  • 配信再試行ポリシーが終了する前に配信されなかったメッセージを保持するには、デッドレターキューを作成できます。

メッセージのアーカイブと分析

Kinesis Data Firehose 配信ストリームを SNS トピックにサブスクライブできます。これにより、Amazon Simple Storage Service (Amazon S3) バケット、Amazon Redshift テーブルなどのアーカイブと分析エンドポイントへ通知を送信することができます。

メッセージ属性

メッセージ属性により、メッセージに関する構造化メタデータを提供することができます。Amazon SNS メッセージ属性。

メッセージのフィルター処理

デフォルトでは、 各受信者は、トピックに対して発行されたすべてのメッセージを受信します。メッセージのサブセットを受信する場合、受信者はトピックのサブスクリプションにフィルターポリシーを割り当てる必要があります。受信メッセージ属性がフィルターポリシー属性と一致すると、メッセージはサブスクライブされたエンドポイントに配信されます。それ以外の場合、メッセージは除外されます。

メッセージセキュリティ

サーバー側の暗号化は、Amazon SNS トピックに保存されているメッセージの内容を保護します。これには、AWS KMS が提供する暗号化キーを使用します。

注意

Amazon SNS トピックを作成する

個人を特定できる情報 (PII) などの機密情報や秘匿性の高い情報はトピック名に追加しないでください。トピック名は、CloudWatch Logs を含む他の Amazon Web Services のサービスからアクセスできます。トピック名は、プライベートデータや機密データとして使用することを意図していません。