我目前正在使用SendGrid的入站解析Webhook向我的应用程序发送电子邮件。通过将URL指向我的应用程序已公开的端点,我已经能够使其工作。 SendGrid只是以JSON格式HTTP POST请求的形式将电子邮件发送到此终结点,而我只是在内部处理每个请求。

我的问题是,既然现在可以正常工作,如何确保只有SendGrid可以使用此端点?目前,任何人都可以使用此HTTP POST端点并假装已将电子邮件发送到应用程序。

我可以让SendGrid发送某种唯一密钥来标识自己吗?有什么方法可以限制IP地址吗?

最佳答案

您可以通过两种方式保护端点。 SendGrid的webhooks支持基本身份验证(例如https://user:[email protected]/endpoint)。您还可以实现一个唯一密钥,在对请求执行操作之前要进行检查(例如https://example.com/endpoint?key=123)。

但是,简单的答案就是您添加到URL中的任何内容都可以充当SendGrid的唯一身份验证。

关于sendgrid - SendGrid传入邮件Webhook-如何保护端点,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20865673/

10-14 09:58