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

能否在本地调试已配置Azure Active Directory认证的Azure Functions?

答案

嘿,很高兴你已经搞定了Azure Function的AAD认证部署和基础本地调试!针对你的问题——当然可以在本地调试配置了Azure Active Directory认证的Azure Functions,下面给你梳理具体的操作步骤和注意事项:

第一步:配置本地调试的AAD参数

打开你的Azure Function项目中的local.settings.json文件,添加和Azure部署环境一致的AAD认证配置项,示例如下(根据你的运行时和实际信息调整):

{
  "IsEncrypted": false,
  "Values": {
    "AzureWebJobsStorage": "UseDevelopmentStorage=true",
    "FUNCTIONS_WORKER_RUNTIME": "dotnet", // 换成你实际的运行时,比如nodejs/python
    "AzureAD__ClientId": "<你的AAD应用注册Client ID>",
    "AzureAD__TenantId": "<你的Azure AD租户ID>",
    "AzureAD__IssuerUrl": "https://login.microsoftonline.com/<你的租户ID>/v2.0",
    "AzureAD__AllowedTokenAudiences": ["api://<你的AAD应用注册Client ID>"]
  }
}

这些参数都可以从Azure Portal的应用注册详情页里找到,和你部署到Azure上的配置保持完全一致就好。

第二步:获取本地调试用的AAD访问令牌

本地调试时,你需要拿到有效的AAD令牌才能通过认证,最简单的方式是用Azure CLI获取:
打开终端运行以下命令(替换成你的Client ID):

az account get-access-token --resource "api://<你的Client ID>"

命令会返回包含access_token的JSON结果,复制这个令牌字符串备用。

第三步:发起带认证的本地请求

启动本地Azure Function调试后,用Postman、curl或者其他工具调用本地函数端点,在请求头里添加:
Authorization: Bearer <刚才复制的AAD令牌>
这样就能通过AAD认证,正常访问你的本地函数了。

一些额外注意事项

  • 确保本地函数的运行时版本和Azure上部署的版本一致,避免出现兼容性问题;
  • 如果你的AAD应用注册设置了IP限制、特定重定向URI或者权限范围,记得检查是否允许本地调试环境的访问;
  • 用Visual Studio/VS Code调试时,要确保local.settings.json的修改已经保存,调试器加载了最新的配置。

内容的提问来源于stack exchange,提问作者Mike-E

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 12:07:42