标签: azure-application-gateway

为什么我应该使用Service Fabric Reverse Proxy而不是Azure App Gateway与SF Cluster通信?

这是一个很长的问题,有一些权衡取舍,我敢肯定.在这个文档区域:

不能给我足够自信地回答上面的问题.

因此,他们说:"Azure应用程序网关(AG)尝试再次解析服务地址,并在无法访问服务时重试该请求".

我知道Service Fabric Reverse Proxy(RP)是如何通过封装解析循环来实现这一点的.AG也有此功能吗?无论如何,AG也是一个反向代理.

因此,对于进入SF群集的外部流量至关重要,为什么我会使用另一个(我知道RP也允许群集内通信,这是一个很好的选择).

reverse-proxy azure azure-service-fabric azure-application-gateway

6
推荐指数
1
解决办法
3855
查看次数

滚动网站更新/Azure 应用程序网关

我正在尝试将滚动网站更新配置到 IIS Web 场以实现零停机部署。我无法确定阻止流量从应用程序网关路由到 VMSS 实例的合理方法。

任何应用程序网关更新似乎都需要 45 分钟,因此这实际上并不可行。

如果我为应用程序网关设置一个简短的健康探测轮询和不健康阈值限制,并使用 app_offline.htm 文件使 IIS 响应错误,用户可能仍会在应用程序网关认为实例不健康之前收到 app_offline.htm 页面。

我真的更喜欢告诉应用程序网关停止向实例 x 提供流量,更新实例,然后告诉应用程序网关恢复到实例的路由流量。

我在这里错过了什么吗?有没有办法使用应用程序网关执行滚动零停机部署?

iis azure azure-application-gateway

6
推荐指数
0
解决办法
282
查看次数

Azure应用程序网关WAF阻止常见的ASP.Net核心请求

我已经Azure Application Gateway + WAF在Azure WebApp上运行的ASP.Net Core应用程序的前面配置了一个。我OWASP 3.0在“预防”模式下并在其中设置了默认规则。

我的问题是,通过WAF的每个请求都以一种或另一种方式失败,并且某些默认规则集返回403 - Forbidden status

通过WAF日志,我发现很少有规则失败。

  1. 已识别的SQL十六进制编码

    {
        "message": "Warning. Pattern match \"(?i:(?:\\\\A|[^\\\\d])0x[a-f\\\\d]{3,}[a-f\\\\d]*)+\" at REQUEST_COOKIES:ASP.Net_Auth.",
        "data": "Matched Data: H0XAa4 found within REQUEST_COOKIES:AspNetCore.Auth: CfDJ8El_2vmJILFHjQYUCDWwttioV16BAlL12KiQnTLGZztGtA8P0xbo1MosAgmrkUk4IQ7pF5O4ZMJbmRHsHxYHq842rq_hr8FUyMhAMo_5mQ-C_5jBrkRWqUGrYHMa6fVIj4xtGOfku...",
    }
    
    Run Code Online (Sandbox Code Playgroud)
  2. 检测到SQL注释序列

    "message": "SQL Comment Sequence Detected.",
    "details": {
            "message": "Warning. Pattern match \"(/\\\\*!?|\\\\*/|[';]--|--[\\\\s\\\\r\\\\n\\\\v\\\\f]|(?:--[^-]*?-)|([^\\\\-&])#.*?[\\\\s\\\\r\\\\n\\\\v\\\\f]|;?\\\\x00)\" at REQUEST_COOKIES:.AspNetCore.Identity.Application.",
            "data": "Matched Data: --Z35d...- found within REQUEST_COOKIES:.AspNetCore.Identity.Application: CfDJ8El_2vmJILFHjQYUCDWwttihjUTpJneEVE1l-3UeTx...",
            "file": "rules/REQUEST-942-APPLICATION-ATTACK-SQLI.conf",
            "line": "1053"
    }
    
    Run Code Online (Sandbox Code Playgroud)
  3. 超出PCRE限制

    {
        "requestUri": "/api/ping?_=240477821",
        "message": "Execution error - PCRE limits exceeded (-8): (null)."
    }
    
    Run Code Online (Sandbox Code Playgroud)

网址/ …

azure asp.net-core azure-application-gateway azure-web-app-firewall

6
推荐指数
1
解决办法
786
查看次数

我应该选择 Azure 应用程序网关还是负载均衡器或前门或流量管理器?

我有一个使用 Angular 8 和 Asp.net Core Web API 开发的 SaaS Web 应用程序。我已将 web api 部署到 azure web 应用程序,并将 angular 前端 web 应用程序部署到另一个 azure web 应用程序。

用户来自中国和澳大利亚等国家。我想要区域负载平衡,就像中国用户在 china azure 区域使用 web 应用程序,澳大利亚用户使用澳大利亚 azure 区域 web 应用程序一样,以便它具有最佳性能。Azure SQL DB 将位于一处(在澳大利亚)。

此外,我想防止对 Web 前端应用程序和 Web api 的攻击,例如 d-dos、Web 抓取和 SQL 注入。对于网页抓取,我想从一个 ip 添加访问速率限制。

你能告诉我应该使用什么服务吗?我在博客上看到了关于 azure 应用程序网关、azure 负载均衡器、azure 前门和 azure 流量管理器的内容。这对我来说有点混乱。我需要一个基于我这个真实世界场景的最佳实践。我应该使用其中一项服务还是应该使用多项服务?

azure-web-app-service azure-application-gateway azure-load-balancer azure-front-door

6
推荐指数
1
解决办法
3559
查看次数

使用基于路径的路由在应用程序网关后面反应应用程序

我目前有多个基于反应的应用程序。我试图在他们面前放置一个网关,所以我有 www.url.com/one 指向一个应用程序,www.url.com/two 指向另一个应用程序。我可以构建应用程序并单独部署它们没有问题,但是当我在它们前面放置一个网关以设置基于路径的路由时,react 应用程序找不到它生成的 css 或 js。

我试图在我的 package.json 中添加一个到“主页”设置的路径,这改变了代码中的相对路径,但页面仍然找不到 css/js 文件。然后我意识到我可能不得不打开一个规则,以便我可以路由到他们,但是当我这样做时,我收到错误“Uncaught SyntaxError:Unexpected token '<'”,当我查看时,我看到我的应用程序出于某种原因不会将类型添加到它生成的脚本引用标记中,它看起来像这样:

我的网关中一个应用程序的规则如下所示:

lists      /lists               lispool    shhttpset
staticjs   /lists/static/js/*   lispool    shhttpset
staticcss  /lists/static/css/*  lispool    shhttpset
Run Code Online (Sandbox Code Playgroud)

在这一点上,我不知道该尝试什么。我可以看到 react 正在生成它期望位于相同 URL 的文件,当我在它前面添加一个带有路径的网关时,它真的很困惑。如果有更好的架构,我愿意为这些文件或其他文件使用 CDN。有谁知道如何使这项工作?提前致谢。

reactjs azure-application-gateway

6
推荐指数
0
解决办法
469
查看次数

使用应用程序网关方案在 Azure API 管理中保留客户端 IP 地址

我在此设置中配置了 Azure 应用程序网关API 管理https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-integrate-internal-vnet-appgateway - 应用程序网关是公共端点和仅定义的路由传递到 API 管理。

我想使用该ip-filter策略来限制对某些 IP 地址的调用。但是,当呼叫通过应用程序网关传入时,原始客户端 IP 地址将丢失或混淆为 IP 0.0.0.0

有没有办法保留原始客户端 IP 地址并将其从应用程序网关传递到 API 管理?

azure-api-management azure-application-gateway

6
推荐指数
1
解决办法
3345
查看次数

如何正确配置 Azure 应用程序网关重写 URL 规则?

我们正在使用 azure 应用程序网关将请求路由host/client到特定的客户端应用程序 (.NET Core)。这样client1被路由到server1/client1,client2被路由到server2/client2等等。我们使用 URL 路径映射来解析每个客户端的确切服务器。

应用程序网关在每个侦听器的 URL 路径映射中限制为 100 个路径。这迫使我们将客户端应用程序的数量保持在较低水平。最近我们重写了我们的应用程序以支持多个租户。所以现在我们可以使用单个应用程序处理多个客户端的请求。我们的新路由看起来像server/app/client. 不过,我们希望以与以下相同的方式保留最终客户端 URL:host/client

接下来我的想法是:使用应用程序网关重写集,并根据请求将 URL 路径值替换/client/app/client; 但似乎无论我在这些规则中设置什么,我都会得到相同的回应。在我看来,重写规则被简单地忽略了。即使是基本的,不包含任何if逻辑。 例如:

超级简单的规则 ——

  • 所以我的问题是是否可以在应用应用程序网关规则之前更新请求 URL?

很高兴在这里得到一些帮助。

routes azure azure-application-gateway

6
推荐指数
1
解决办法
2096
查看次数

Azure API 管理提供的 API 网关和 Azure 应用程序网关有什么区别?

我是 Azure 的新手,我浏览了 Azure 官方文档。

  • 我想了解的是Azure API Management 提供的API Gateway 和Azure Application Gateway 的区别和相似之处?

  • 什么时候需要在API Gateway(API管理提供)前面加上Application Gateway?

    • 当 API Gateway 正常托管时。
    • 当 API 网关托管在 VNet 中时。
  • 我们什么时候需要在应用程序网关前面使用 Azure Front Door?

  • 我们需要在什么场景下链接Azure Front Door --> Application Gateway --> API Gateway,而不是我们不能这样做Azure Front Door --> API Gateway,如果是在什么场景下?

我想根据以下两个计算解决方案了解上述问题的解决方案:

  • 当我的 API 托管在容器中时。
  • 当我的 API 仅由 Azure Functions 组成时。

azure azure-api-management microservices azure-application-gateway azure-front-door

6
推荐指数
1
解决办法
3636
查看次数

Azure 应用程序网关 - 有什么理由让 Azure 防火墙落后?

我在 Azure API 管理前面有 Azure 应用程序网关,并且可以看到,在 Internet 上的大多数可用方案中,Azure 应用程序网关和 Azure API 管理之间都有防火墙。

由于 Azure 应用程序网关本身就是一个防火墙,是否有任何理由将 Azure 防火墙置于其后面。

firewall azure azure-application-gateway

6
推荐指数
1
解决办法
5000
查看次数

将应用服务证书与 Azure 应用程序网关结合使用

在 Azure 中创建应用服务证书以为应用程序网关启用 SSL。已使用自签名 .pfx 证书在应用程序网关上配置 SSL 以测试功能,但希望采用更强大、自动续订和 Microsoft 托管的解决方案。

但是,“应用程序服务证书”似乎与通用证书不同,并且在尝试将证书从密钥保管库添加到应用程序网关时,不会显示在应用程序网关上的侦听器选项配置页面上。

有什么方法可以在应用程序网关中重复使用此证书吗?

ssl azure azure-application-gateway

6
推荐指数
1
解决办法
4645
查看次数