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

如何通过编程方式修改Azure函数应用的环境变量值?

使用Azure.ResourceManager.AppService设置函数应用的环境变量

函数应用的环境变量对应应用设置,可以通过Azure.ResourceManager.AppService库直接操作,步骤如下:

1. 安装必要的NuGet包

确保项目中安装了以下包:

Install-Package Azure.ResourceManager.AppService
Install-Package Azure.Identity

2. 核心操作代码

using Azure.Identity;
using Azure.ResourceManager;
using Azure.ResourceManager.AppService;
using Azure.ResourceManager.AppService.Models;

// 初始化ArmClient(使用默认Azure凭据,本地开发用az login,生产用托管标识)
var armClient = new ArmClient(new DefaultAzureCredential());

// 定义资源信息
string subscriptionId = "你的订阅ID";
string resourceGroupName = "你的资源组名称";
string functionAppName = "你的函数应用名称";

// 获取函数应用的资源对象
var subscription = armClient.GetSubscriptionResource(new ResourceIdentifier($"/subscriptions/{subscriptionId}"));
var resourceGroup = subscription.GetResourceGroup(resourceGroupName);
var functionApp = resourceGroup.GetWebSite(functionAppName);

// 获取当前应用设置
var siteConfig = await functionApp.GetSiteConfigAsync();
var currentSettings = siteConfig.Value.Properties.AppSettings.ToDictionary(s => s.Name, s => s.Value);

// 添加或更新自定义环境变量
currentSettings["YOUR_CUSTOM_VAR_NAME"] = "自定义值";

// 构建更新请求
var updateConfig = new SiteConfigProperties
{
    AppSettings = currentSettings.Select(kv => new NameValuePair(kv.Key, kv.Value)).ToList()
};

// 提交更新
await functionApp.UpdateSiteConfigAsync(new SiteConfigPatch { Properties = updateConfig });

关键说明

  • 身份验证:DefaultAzureCredential会自动适配本地开发(Azure CLI登录)、Azure托管标识等场景,无需硬编码密钥。
  • 应用设置与环境变量的关系:函数应用中配置的应用设置会自动映射为运行时的环境变量,所以修改AppSettings等同于设置环境变量。
  • 增量更新:如果只想更新单个变量,不需要覆盖所有设置,可以先获取现有集合,修改后再提交。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 17:38:11