azure - 使用 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 广告身份验证,一切正常(使用密钥连接)。谢谢!
解决方案
好的,在我发现这是未正确返回的 https 片段后,经过更多的挖掘,结果证明 Azure 在使用 linux 高级应用程序服务计划时处理不正确。详细信息在这里https://github.com/Azure/azure-functions-durable-extension/issues/1446但简短的回答是我需要设置应用程序设置 ASPNETCORE_FORWARDEDHEADERS_ENABLED = true。
推荐阅读
- go - How to marshal struct to XML with alphabetically-sorted elements?
- python - 如何将 unicode 符号添加到提交按钮
- android - adb 命令使用 workmanager 列出所有计划的工作
- swift - '?在 case let 声明中打开一个可选的?
- java - 以线程安全的方式有效地使用 BufferedImage?
- unity3d - 什么是 vprog 纹理,为什么 GLES20 不支持它们?
- codeigniter - cronjob 未使用 codeigniter 运行
- java - UnsupportedOperationException:改用 StringFactory
- monaco-editor - 如何自定义 JSON 模式悬停?
- sql - 更新B表后如何从A表中取一个属性值到B表?