azure - 如何在交换插槽后保留 Azure Functions 的应用程序 key ?

标签 azure azure-devops azure-functions

我在 azure 中有此资源。

  • (fa-001) 函数应用(资源 A)
  • (fa-001/slot) 应用服务(插槽)(资源 B)

这两个资源的网址如下。

在本地运行时,我需要使用默认的应用程序 key 才能访问这些功能。
所以网址如下所示。

我最初在 POSTMAN 上执行了该 url,没有出现任何问题。
现在,我在 azure devops 中有一个 yaml 脚本,它将交换此资源的插槽。
我执行了 yaml 脚本。

资源 A 将成为资源 B
资源 B 将成为资源 A

我在 POSTMAN 上再次执行了这些 URL,但得到了 401 响应。

但是如果我交换代码,我就可以毫无问题地访问该网址。

交换 Azure 功能槽时是否可以保留应用程序 key ?
如果有办法的话,怎么办?

最佳答案

请检查我已完成的以下解决方法:

  • 在门户中创建了 Azure Functions .NET 6 应用程序,并具有 2 个部署槽:生产槽和暂存槽。

生产槽 - ProdHttpTrigger 暂存槽 - StagingHttpTrigger

这些是这 2 个插槽中不同的应用程序 key :

enter image description here

交换后:

功能在插槽之间发生了变化,但应用程序 key 没有变化(Code=Value)。

每次交换时, key 都不会改变,并且两个插槽都使用相同的 key

在交换插槽并将应用程序设置 AzureWebJobsSecretStorageTypefiles 期间,这些 key 将被重置。

您还可以使用功能键来创建该 API/触发器的自定义键值对,并且与应用程序键类似,它适用于两个插槽。

关于azure - 如何在交换插槽后保留 Azure Functions 的应用程序 key ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73060746/

相关文章:

azure - Azure 上的动态文件托管

Azure Service Fabric - VSTS 上的持续集成

github - 提交时如何同步VSTS和Github存储库

azure - 输出绑定(bind)并生成function.json

c# - 如何使用 Azure Functions 输出绑定(bind)设置服务总线消息的 MessageId?

Azure 通知中心 - 推送给多个设备上的一个用户

Azure - 无法自动扩展,因为找不到监控数据

python-3.x - 如何强制本地 Azure 函数服务器使用 HTTP 2.0 而不是 1.1?

ios - 如何在管道azure devops iOS项目中的私有(private)pod中设置凭据

azure - 我无法在 azure 中访问我的应用程序设置