无法通过User-Assigned MSI使用@Microsoft.KeyVault引用访问Azure函数配置密钥
解决Azure Function App指定用户分配MSI访问Key Vault的问题
Azure门户配置步骤
- 打开目标Function App的配置页面,切换到应用程序设置标签
- 点击新建应用程序设置
- 名称栏输入:
AZURE_KEYVAULT_REFERENCE_IDENTITY - 值栏粘贴用户分配MSI的资源ID(格式示例:
/subscriptions/{订阅ID}/resourceGroups/{资源组}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{MSI名称},可从用户分配托管标识的概述页面复制) - 确认后保存配置,等待Function App重启生效
验证方法
配置完成后,再次查看Key Vault引用的配置源,系统会切换为使用指定的用户分配MSI访问密钥。若之前MSI的Key Vault访问策略配置正确,此时即可正常读取密钥。
批量配置(可选)
如果需要给多个Function App批量设置,可使用Azure CLI命令:
az functionapp config appsettings set --name <FunctionApp名称> --resource-group <资源组名称> --settings "AZURE_KEYVAULT_REFERENCE_IDENTITY=<用户分配MSI的资源ID>"
前置检查确认
- 已将用户分配MSI添加到所有目标Function App的标识→用户分配列表中
- 该MSI在Key Vault的访问策略中已配置
机密权限的获取权限
内容的提问来源于stack exchange,提问作者Tamaki Sakura
相关产品推荐
相关产品推荐

