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

本地部署Azure Function的函数密钥查找方法咨询

本地Docker部署Azure Functions获取Function级授权密钥的解决方法

1. 通过Azure Functions Core Tools直接获取密钥

不管是本地直接运行还是Docker部署的Functions,都可以用func命令查看密钥:

  • 若能直接访问函数应用代码目录,执行:
    func keys list --host
    
  • 若为Docker运行的容器,先进入容器内部再执行命令:
    docker exec -it <你的函数容器ID/名称> func keys list --host
    
    输出结果里的master(主密钥)或default(默认函数密钥),就是你需要的x-functions-key值。

2. 查看容器内的密钥存储文件

本地Docker部署的Functions默认用文件存储密钥,路径是容器内的/home/site/data/secrets。你可以通过挂载目录的方式把密钥同步到本地:
在docker-compose.yml的服务配置里添加卷挂载:

services:
  your-function-app:
    # 其他配置...
    volumes:
      - ./local-secrets:/home/site/data/secrets

重启容器后,本地local-secrets文件夹里会生成密钥文件,打开master或default文件,里面的内容就是可用密钥。

3. 常见误区排查

  • 不要用DataProtection-Keys的XML文件:这些是.NET数据保护组件的密钥,和Functions的授权密钥完全无关,自然无法通过验证。
  • 检查请求头格式:确保x-functions-key的拼写正确,值前后没有多余空格,请求头没有被其他代理或中间件篡改。
  • 查看容器日志:如果还是401,执行docker logs <你的函数容器名>,检查是否有密钥加载失败的错误信息,确认Functions服务正常启动。

测试验证

用curl快速验证密钥是否有效:

curl -H "x-functions-key: <获取到的密钥>" http://localhost:<函数端口>/api/<你的函数名称>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 21:39:56