【发布时间】:2019-04-17 12:28:54
【问题描述】:
我已经为 sendgrid 设置了一个端点来发送事件通知。但是,服务器设置了基本身份验证,并且事件不会通过,因为它们没有经过身份验证。如何通过 SendGrid 或将 SendGrid 列入白名单来验证这些事件 webhook?
【问题讨论】:
标签: webhooks sendgrid endpoint sendgrid-api-v3
我已经为 sendgrid 设置了一个端点来发送事件通知。但是,服务器设置了基本身份验证,并且事件不会通过,因为它们没有经过身份验证。如何通过 SendGrid 或将 SendGrid 列入白名单来验证这些事件 webhook?
【问题讨论】:
标签: webhooks sendgrid endpoint sendgrid-api-v3
您可以在设置 HTTP POST URL 时使用基本身份验证,方法是将其设置为 https://user:password@this.is.my.test/listening/endpoint 之类的值
其中“user”是基本认证用户名,“password”是用户的基本认证密码。
或者
在设置 HTTP POST URL 时,关闭对您的监听端点的基本身份验证并使用简单的检查来防止随机人员/机器人在您的监听端点执行所有代码,包括查询字符串值:
然后你的监听代码应该做的第一件事是提取查询字符串并检查 "key" = "some_random_value" if is not then just return bad/invalid request。如果查询字符串包含 "key" = "some_random_value" 那么您的代码应该解析正文。它不是防弹的,但应该可以阻止大多数随机请求。
或者
结合这些技术并同时做这件事!
【讨论】: