首页 > 解决方案 > 使用 ManagedServiceIdentity 从逻辑应用程序到 Azure 函数时出现 301 永久重定向

问题描述

我有一组基于持久函数模式的 Azure 函数,这可能是导致我的问题的原因。我从逻辑应用 http 操作连接到它们。在我决定尝试使用 AD 保护这些功能之前,这一直很好。我完全按照本指南 - https://docs.microsoft.com/en-us/azure/logic-apps/logic-apps-azure-functions但是当我这样做时,会出现 301 错误。我在函数应用程序中切换 https 设置时搞砸了,这会将错误更改为 302 临时重定向,这让我假设某些东西正在重定向 https 和 http 之间的调用。这只是一个假设,因为我对逻辑应用程序在幕后实际执行的操作的可见性为零。有没有人有这方面的经验并解决了这个问题?我检查了我所有的网址,它们都是 https,我只在功能应用程序中启用了 https。如果我删除功能应用程序上的 azure 广告身份验证,一切正常(使用密钥连接)。谢谢!

标签: azureazure-active-directoryazure-functionsazure-logic-apps

解决方案


好的,在我发现这是未正确返回的 https 片段后,经过更多的挖掘,结果证明 Azure 在使用 linux 高级应用程序服务计划时处理不正确。详细信息在这里https://github.com/Azure/azure-functions-durable-extension/issues/1446但简短的回答是我需要设置应用程序设置 ASPNETCORE_FORWARDEDHEADERS_ENABLED = true。


推荐阅读