The PHP SDK has a class for validating SNS messages received: https://docs.aws.amazon.com/aws-sdk-php/v3/api/namespace-Aws.Sns.html
Would you all want this on the python side of things? I'm rolling my own currently for a python project
I don't know if this is something we would be interested in offhand. I would have to look at the PHP one. Feel free to make a pull request where we can discuss it while looking at the code.
Actually, I dug into it this weekend and found that between versions of the PHP SDK they actually split it out into a different repo:
https://github.com/aws/aws-php-sns-message-validator
I also found two python validators already in the community:
https://github.com/nathforge/validatesns
https://github.com/zircote/bona-fides
And I'm not sure we need a third.
Glad you found something that might work for you. Closing this out.
Actually I'm wondering why this functionality isn't desired to be builtin to boto? The SNS documentation for HTTP signature verification suggests When possible, use one of the supported AWS SDKs for Amazon SNS to validate and verify messages.
Googling around I found examples in the AWS SDKs for PHP, Java, and Ruby. I'm just curious why not Python?
This confuses me as well -- if this is the official SDK isn't the intent to maintain feature parity?
I also agree; this should be available in boto3.
I agree as well. This should be built in to boto3
I have this need too. I just put together a repo if anyone else needs it.
https://github.com/wlwg/sns-message-validator
Are there any chances it will be in official version or at least as a separate package as for other languages ? https://github.com/aws?utf8=%E2%9C%93&q=message+validator&type=&language= 馃檹
Most helpful comment
Actually I'm wondering why this functionality isn't desired to be builtin to boto? The SNS documentation for HTTP signature verification suggests
When possible, use one of the supported AWS SDKs for Amazon SNS to validate and verify messages.Googling around I found examples in the AWS SDKs for PHP, Java, and Ruby. I'm just curious why not Python?