Amazon SNS メッセージの署名を検証する - Amazon Simple Notification Service

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon SNS メッセージの署名を検証する

Amazon SNS はメッセージ署名を使用して、HTTP エンドポイントに送信されたメッセージの信頼性を確認します。メッセージの整合性を確保し、なりすましを防ぐには、Amazon SNS メッセージを処理する前に署名を検証する必要があります

Amazon SNS 署名の検証が必要になるタイミング

次のシナリオでは、Amazon SNS メッセージの署名を検証する必要があります。

  • Amazon SNS が HTTP(S) エンドポイントに通知メッセージを送信するとき。

  • Amazon SNS が Subscribe API 呼び出しや Unsubscribe API コールにエンドポイントに確認メッセージを送信するとき。

Amazon SNS は次の 2 つの署名バージョンをサポートしています。

  • SignatureVersion1 – メッセージの SHA1 ハッシュを使用します。

  • SignatureVersion2 – メッセージの SHA256 ハッシュを使用します。このバージョンはセキュリティを強化するため、推奨されるオプションです。

SNS メッセージの署名を正しく検証するには、次のベストプラクティスに従ってください。

  • 不正な傍受攻撃を防ぐために、常に HTTPS を使用して署名証明書を取得します。

  • 証明書が Amazon SNS によって発行されていることを確認します。

  • 証明書の信頼チェーンが有効であることを確認します。

  • 証明書は SNS 署名付き URL から取得する必要があります。

  • メッセージで提供された証明書を、検証せずに信頼してはいけません。

  • なりすましを防ぐために、予期しない TopicArn を含むメッセージは拒否します。

  • Amazon SNS 用の AWS SDK は組み込みの検証ロジックを備えているため、実装ミスのリスクを低減できます。