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

如何通过Azure应用网关向服务应用传递密钥且不暴露在URL中

解决方案

完全可以实现,核心是通过Azure应用网关的请求重写能力,在网关转发请求到后端函数应用的环节自动注入授权密钥,用户侧访问网关地址时不需要携带任何密钥信息。

具体配置步骤

  • 提前记录对应函数的function级授权密钥,也就是你现有URL中code参数的值:XV2Js97D/Zy5aw6th2hr7iLzFbBiuZ4RfdKuT8nA==
  • 进入Azure门户的应用网关配置页面,找到重写规则配置项,新建一个重写规则集
  • 配置规则匹配条件:按照你的访问场景,设置匹配请求路径为/api/HttpExample即可,如果要覆盖该后端函数应用下的所有函数,可设置匹配路径前缀为/api/*
  • 配置重写动作,二选一即可:
    • 方案1(追加查询参数):操作类型选「追加查询参数」,参数名填code,参数值填你提前记录的函数密钥,勾选「已存在时跳过」选项避免参数冲突
    • 方案2(新增请求头,更推荐):操作类型选「新增HTTP请求头」,头名填x-functions-key,头值填函数密钥。Azure函数原生支持从该请求头读取授权密钥,不需要依赖URL查询参数,安全性更高
  • 将配置好的重写规则集关联到绑定了该函数应用后端的监听器/路由规则上,保存配置等待应用网关生效

验证方式

配置生效后直接访问http://20.0.0.1/api/HttpExample,无需携带code参数即可正常获取函数返回结果,不会返回401未授权错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 07:54:03