Nginx读取机密和webhook头

Nginx读取机密和webhook头,nginx,github,proxy,reverse-proxy,Nginx,Github,Proxy,Reverse Proxy,Github的Webhook正在通过Nginx代理 webhook使用secret,标头作为X-Hub-Signature-256发送 我想发出Nginx过滤请求,也就是说,我需要Nginx获取webhook头的值,并将其与$SECRET\u令牌进行比较。如果这个秘密是正确的,它将发送200,如果不是,则发送403 我曾想过这样的事情,但我能找到一种方法来实现它: server { listen 80; server_name _; location /payload {

Github的Webhook正在通过Nginx代理

webhook使用secret,标头作为X-Hub-Signature-256发送

我想发出Nginx过滤请求,也就是说,我需要Nginx获取webhook头的值,并将其与$SECRET\u令牌进行比较。如果这个秘密是正确的,它将发送200,如果不是,则发送403

我曾想过这样的事情,但我能找到一种方法来实现它:

server {
  listen 80;
  server_name _;

  location /payload {
      
      #Read the header sent by the webhook (header name: X-Hub-Signature-256)
      #If the header content matches $SECRET_TOKEN I defined on Nginx then return 200
      #Else, return 403 
  }
}
请帮助实现这个伪代码,因为我在网上找不到任何示例


提前感谢。

您好,我会将此逻辑包含在webhook本身中(它将更容易编码和维护,如果有一天同一个NGINX开始提供其他服务,它也有意义)。