I use Cloudmailin in a Heroku app
CloudMailin allows you to receive incoming email messages in your web app via an HTTP POST request
In my case, Cloudmailin is configured on receiving emails to POST them to myapp.heroku.com/incoming_url
.
I note that anyone can skip the middleman and POST to /incoming_url
to stimulate my app to act as if it received an email. Since my app sends an email in consequence, I'm concerned it could be abused to send spam.
I'd like my app to authenticate the HTTP requests were genuinely made from Cloudmailin (or me). Perhaps Cloudmailin could sign its HTTP requests somehow (in a HTTP header or in the querystring)