ARM模板部署的功能应用程序没有主机密钥并引发错误

use*_*060 5 azure azure-deployment azure-resource-manager azure-functions azure-function-app

我在 Azure 中部署了一个函数应用程序,并在尝试“代码 + 测试”->“测试 + 运行”时,我在键下拉列表中只看到一个键 - 默认(功能键):

在此输入图像描述

应用程序密钥部分如下所示:

在此输入图像描述

使用此密钥运行时,我看到 401 未经授权的错误:

在此输入图像描述

它不应该在下拉列表中显示更多数量的键吗?应用程序设置包含

AzureWeb作业存储

FUNCTIONS_EXTENSION_VERSION (~3)

FUNCTIONS_WORKER_RUNTIME

我是否缺少在密钥下拉列表中显示主(主机)密钥的内容?

在此输入图像描述

Jay*_*SFT 0

您是否重新部署(即删除并重新创建)此功能应用程序?解决此问题的最佳方法是重置/创建这些键。

  • 转到 KUDU https://{yourapp}.scm.AzureWebsites.net
  • 调试控制台-> CMD。
  • 进入秘钥路径 d:\home\data\functions\secrets
  • 下载host.json文件进行备份并删除host.json文件
  • 从顶部菜单转到 Process Explorer
  • 右键单击 w3wp.exe 进程 -> Kill

在此输入图像描述 现在,

  • 重新启动您的函数应用程序。
  • 打开 https://{yourapp}.azurewebsites.net
  • 此操作将创建 host.json 并创建新密钥。

您还可以尝试重新启动函数应用程序或将“AzureWebjobsStorage”的值更改为另一个值(更改为不同的存储)并重新启动应用程序。

重要提示:在实施这些步骤之前,请确保更新所有使用这些密钥的相关 API/应用程序,因为您的密钥可能会更改,并且相关应用程序必须相应更新。