如果启用身份验证,Azure 上的查询/标头太大

2024-04-04

我有一个在本地运行良好的节点/快速应用程序。我已将其上传到 Azure Web App,只要我不启用身份验证,它就可以正常工作。当我启用 AAD 身份验证时,应用程序失败并显示状态 500.1011“错误请求”。我的网址中有很多查询参数。如果我充分减少参数的长度,应用程序将再次正常加载。 Azure 中的查询/标头似乎有一些限制?

我已经尝试了几个小时来解决这个问题,但我想我必须承认失败。我想也许this https://stackoverflow.com/questions/11636386/how-to-configure-the-web-config-to-allow-requests-of-any-length会修复它,但看起来并非如此。

这是我当前的 web.config:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <system.webServer>
        <webSocket enabled="true" />
        <handlers>
            <add name="iisnode" path="server.js" verb="*" modules="iisnode"/>
        </handlers>
        <rewrite>
        <rules>
            <rule name="NodeInspector" patternSyntax="ECMAScript" stopProcessing="true">
                <match url="^server.js\/debug[\/]?" />
            </rule>
            <rule name="DynamicContent">
                <conditions>
                    <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="True"/>
                </conditions>
                <action type="Rewrite" url="server.js"/>
            </rule>
        </rules>
        </rewrite>
        <security>
            <requestFiltering>
                <requestLimits maxQueryString="32768" maxUrl="65536"/>
            </requestFiltering>
        </security>
        <httpErrors existingResponse="PassThrough" />
    </system.webServer>
</configuration>

我想我发现了问题。 Node 将最大标头大小从 80kb 减少到 8kb2018年11月 https://www.nearform.com/blog/protecting-node-js-from-uncontrolled-resource-consumption-headers-attacks/.

关于它有很多讨论here https://github.com/nodejs/node/issues/24692 and here https://github.com/Azure/azure-cosmos-js/issues/221.

我尝试增加 max-http-header-size,但无法使其在 Azure 上运行。所以我现在的解决方案是使用旧版本的节点。希望最终能在这些讨论中提出解决方案。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如果启用身份验证,Azure 上的查询/标头太大 的相关文章

随机推荐

  • 保护 Django 站点中的静态媒体访问

    我正在建立一个注册用户可以上传文件的网站 然后通过 Apache 提供这些文件 只有登录的用户才应该能够访问这些文件 我读过了这一页 http docs djangoproject com en dev howto apache auth
  • 如何通过字符和字数检测字符串中是否包含印地语 (devnagri)

    下面是一个示例字符串 string abcde abcde 我需要检查该字符串是否包含任何印地语 梵文 内容 如果包含 则检查字符和单词的数量 我猜带有 unicode 字符类的正则表达式可以工作http www regular expre
  • 使用 ggplot2 绘制发散堆积条形图

    有没有办法使用ggplot2创建发散的堆积条形图 如下图右侧所示 可重现示例的数据 library ggplot2 library scales library reshape dat lt read table text ONE TWO
  • 如何检查 MPMediaItem 是否仅包含音频的 MPMediaType?

    我希望我需要进行按位比较 但我不清楚 Objective C 语法是如何完成的 MPMediaType 的枚举定义如下 我需要做的是确保 MPMediaItem 根本不是视频 因为尽管我使用媒体查询过滤到 MPMediaTypeAnyAud
  • 使用 C# 在预先打印的纸张表单上的特定位置打印文本

    我需要在打印纸的特定位置打印纸张文本 原因是打印是在已打印的表单上完成的 其中包含名字和姓氏等字段 因此 当我得到这个人的名字时 它应该以纸质形式打印在分配的空间内 想知道是否有任何现有的库允许我使用 X 和 Y 坐标等坐标系在特定位置进行
  • Maven - 在 Eclipse 中抑制覆盖托管版本警告

    我在用spring boot 并且遇到了类似于所描述的错误here https stackoverflow com q 14730329 2860319 我将以下内容添加到我的 pom xml 中
  • 逆向工程iOS天气应用程序UI组件[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我正在尝试写下 iOS 天气应用程序的摘要 我感兴趣的主要组件在下图中标记为 1 2 3 4 和 5 UI 应获取如下 一个 ViewContr
  • 如果行中的特定单元格不为空,则格式化整行

    我想根据其中的特定单元格是否为空来格式化整行 我希望条件格式能够遍历所有行 并在该行中的 C 列不为空时添加背景颜色 我该如何解决 为了说明假设 整行 包含 A Z 列 请尝试格式 条件格式 自定义公式是 C1 lt gt 与您选择的格式和
  • 何时使用表达式混合创建用户控件

    因此 我正在开发一个新应用程序 并且我正在使用 Expression Blend 第一次 来创建布局和样式等 但我有一个关于何时要创建用户控件的问题 我有一个蛀虫 我想用它作为很多东西的背景 但它实际上是边框中的边框 然后我们将把任何控件放
  • 如何使用 Exchange Web 服务 (EWS) API 通过共享邮箱发送电子邮件

    我正在使用 MS Exchange Web 服务 API 通过共享邮箱发送电子邮件 发送电子邮件可以工作 但它们不会保存在已发送的项目中 如下所示 手动执行此操作 项目保存在已发送项目中 但通过我的代码不会保存它们 using Micros
  • 循环变量文件名[重复]

    这个问题在这里已经有答案了 我正在使用 Fortran 对分成许多文件的庞大数据集进行计算 文件的名称是 maltoLyo12per reimage set1 traj maltoLyo12per reimage set2 traj mal
  • 使用 angularjs 将多个对象发送到 webapi

    我的 ASP NET WebApi 应用程序中有以下控制器 Route api PutItem HttpPut public IHttpActionResult PutItem Guid id Item item if ModelState
  • 如何在TabControl.ContentTemplate中添加新的用户控件?

    我不太愿意在中添加用户控件的新实例TabControl ContentTemplate 我的 Xaml 在这里
  • 软件版本编号遵循什么规则? [复制]

    这个问题在这里已经有答案了 我一直在开发一些软件并想给它版本号 我该怎么做呢 为什么有些软件有两个版本 比如1 3v1 1 或者有些有 3 个数字 4 0 1 这一切背后的方法是什么 Thanks 我见过的常用方法是X Y Z 一般对应ma
  • 单元测试作为构建的一部分

    我有一个 CMake 项目 分为三个部分 我的库的编译 编译许多单元测试程序来测试这些库的每个精确子部分 使用这些库编译程序示例 My question is about the 2nd part My unit tests executa
  • 如何使用 django-filters 重命名(在 API 中公开)过滤器字段名称?

    正如问题所述 我正在尝试重命名 API 中公开的过滤器字段名称 我有以下型号 class Championship Model class Group Model championship ForeignKey Championship c
  • qwt 图表示例 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 大家好 我正在使用 qwt 我是新手 我想使用 qwt 和 qt 创建者绘制图表 我不知道要在我的 qt 项目中包含哪些库来绘制图表 我已
  • 在 Python 中下载、解压并读取 gzip 文件

    我想在 Python 中下载 提取和迭代文本文件 而无需创建临时文件 基本上 这个管道 但是在 python 中 curl ftp ftp theseed org genomes SEED SEED fasta gz gunzip proc
  • Array.prototype.filter.call(forms, function(form) 这是做什么的?

    我很难完全理解这段代码是如何工作的 这只是表单验证代码复制并从引导程序粘贴 我的问题从这一行开始 var 验证 Array prototype filter call forms function form 在我看来 它正在创建一个名为va
  • 如果启用身份验证,Azure 上的查询/标头太大

    我有一个在本地运行良好的节点 快速应用程序 我已将其上传到 Azure Web App 只要我不启用身份验证 它就可以正常工作 当我启用 AAD 身份验证时 应用程序失败并显示状态 500 1011 错误请求 我的网址中有很多查询参数 如果