使用从逻辑应用程序到 azure 函数的 ManagedServiceIdentity 时的 301 永久重定向
301 Permanent Redirect when using ManagedServiceIdentity from logic app to azure function
我有一组基于持久函数模式构建的 Azure 函数,这可能是我遇到问题的原因。我正在从逻辑应用程序 http 操作连接到它们。在我决定尝试使用 AD 保护这些功能之前,这一切都很好。我完全按照本指南 - https://docs.microsoft.com/en-us/azure/logic-apps/logic-apps-azure-functions 但是当我这样做时,出现 301 错误。我在函数应用程序中切换 https 设置搞砸了,这将错误更改为 302 临时重定向,这让我假设某些东西正在重定向 https 和 http 之间的调用。这只是一个假设,因为我对逻辑应用程序在幕后实际执行的操作的了解为零。有没有人有这方面的经验并解决了问题?我已经检查了我所有的网址,它们都是 https,我只在函数应用程序中启用了 https。如果我删除函数应用程序上的 azure ad 身份验证,一切正常(使用密钥连接)。谢谢!
好吧,在我发现是 https 部分没有被正确返回后,经过更多的挖掘,事实证明 Azure 在使用 linux 高级应用程序服务计划时处理不正确。详细信息在这里 https://github.com/Azure/azure-functions-durable-extension/issues/1446 但简短的回答是我需要设置应用程序设置 ASPNETCORE_FORWARDEDHEADERS_ENABLED = true.
我有一组基于持久函数模式构建的 Azure 函数,这可能是我遇到问题的原因。我正在从逻辑应用程序 http 操作连接到它们。在我决定尝试使用 AD 保护这些功能之前,这一切都很好。我完全按照本指南 - https://docs.microsoft.com/en-us/azure/logic-apps/logic-apps-azure-functions 但是当我这样做时,出现 301 错误。我在函数应用程序中切换 https 设置搞砸了,这将错误更改为 302 临时重定向,这让我假设某些东西正在重定向 https 和 http 之间的调用。这只是一个假设,因为我对逻辑应用程序在幕后实际执行的操作的了解为零。有没有人有这方面的经验并解决了问题?我已经检查了我所有的网址,它们都是 https,我只在函数应用程序中启用了 https。如果我删除函数应用程序上的 azure ad 身份验证,一切正常(使用密钥连接)。谢谢!
好吧,在我发现是 https 部分没有被正确返回后,经过更多的挖掘,事实证明 Azure 在使用 linux 高级应用程序服务计划时处理不正确。详细信息在这里 https://github.com/Azure/azure-functions-durable-extension/issues/1446 但简短的回答是我需要设置应用程序设置 ASPNETCORE_FORWARDEDHEADERS_ENABLED = true.