You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Http触发器接收Stripe Webhook的Azure函数应选哪种授权级别?

Azure函数监听Stripe Webhook的授权级别配置建议

保持AuthorizationLevel.Anonymous是正确的选择,原因如下:

  • Stripe的Webhook请求无法携带Azure函数专属的授权密钥(比如function key、admin key),如果使用function/admin/system/user这类需要密钥的授权级别,Stripe的请求会被Azure函数直接拦截,无法触发你的业务逻辑。
  • 你代码中已经通过EventUtility.ConstructEvent验证了Stripe签名,这是Stripe官方推荐的Webhook安全验证方式,足以确保请求来自合法的Stripe服务,避免伪造请求的风险,不需要依赖Azure函数的授权机制做额外防护。

额外安全建议:

  • 确保PlatformWebhookSecret存储在Azure环境变量或密钥保管库中,不要硬编码到代码里,进一步降低密钥泄露风险。

你的当前代码示例(已格式化):

public async Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req, ILogger log)
{
     var json = await new StreamReader(req.Body).ReadToEndAsync();
     var platformWebhookSecret = Environment.GetEnvironmentVariable("PlatformWebhookSecret");
     Event stripeEvent = EventUtility.ConstructEvent(json, req.Headers["Stripe-Signature"], platformWebhookSecret);
     // perform work...
}

内容的提问来源于stack exchange,提问作者chuckd

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 03:12:45