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

如何编写CLI脚本为Azure函数应用启用Azure AD身份提供商认证

为Azure函数应用配置Azure AD身份验证的CLI操作指南
  • 前置准备:
    • 安装最新版Azure CLI,执行az login登录到Azure账号,切换到目标订阅
    • 提前记录以下参数:资源组名称、目标函数应用名称、Azure AD租户ID

完整可执行CLI脚本

步骤1:定义通用变量(替换为你的实际参数即可)

RESOURCE_GROUP_NAME="你的资源组名"
FUNCTION_APP_NAME="你的函数应用名"
TENANT_ID="你的Azure AD租户ID"
# 可自定义AAD应用的显示名称
AAD_APP_NAME="${FUNCTION_APP_NAME}-aad-auth"

步骤2:启用函数应用内置身份验证(Easy Auth),禁用匿名访问

az functionapp auth update \
  --name $FUNCTION_APP_NAME \
  --resource-group $RESOURCE_GROUP_NAME \
  --enabled true \
  --unauthenticated-client-action RedirectToLoginPage \
  --token-store true

步骤3:配置Azure AD为身份提供商

# 创建AAD应用注册,获取客户端ID
AAD_CLIENT_ID=$(az ad app create \
  --display-name $AAD_APP_NAME \
  --sign-in-audience AzureADMyOrg \
  --web-redirect-uris "https://${FUNCTION_APP_NAME}.azurewebsites.net/.auth/login/aad/callback" \
  --query appId \
  --output tsv)

# 生成AAD应用客户端密钥,示例有效期为1年,可自定义时间
AAD_CLIENT_SECRET=$(az ad app credential reset \
  --id $AAD_CLIENT_ID \
  --end-date $(date -d "+1 year" +%Y-%m-%d) \
  --query password \
  --output tsv)

# 将AAD配置绑定到函数应用的身份验证规则
az functionapp auth microsoft update \
  --name $FUNCTION_APP_NAME \
  --resource-group $RESOURCE_GROUP_NAME \
  --client-id $AAD_CLIENT_ID \
  --client-secret $AAD_CLIENT_SECRET \
  --issuer "https://login.microsoftonline.com/${TENANT_ID}/v2.0" \
  --allowed-audiences $AAD_CLIENT_ID

配置验证

  • 执行az functionapp auth show --name $FUNCTION_APP_NAME --resource-group $RESOURCE_GROUP_NAME,返回结果中enabled字段为true即代表身份验证已启用
  • 直接访问函数应用默认域名,未登录状态下会自动跳转到Azure AD登录页,代表配置生效

注意事项

  • 生产环境建议将客户端密钥存储在Azure Key Vault中,不要明文写在脚本内
  • 如果使用自定义域名,需要将https://<自定义域名>/.auth/login/aad/callback添加到AAD应用注册的重定向URI列表中
  • 如需允许多租户或个人微软账号登录,可将AAD应用的sign-in-audience参数修改为AzureADMultipleOrgs或AzureADandPersonalMicrosoftAccount

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 16:36:01