繁体   English   中英

如何使用 Azure 门户内的设置限制对应用服务的访问

[英]How to restrict access to an App Service using a setting inside the Azure Portal

我们有一个在 Azure 中部署为应用服务的 Web 应用。 我们希望通过拥有一个 IP 地址白名单来限制对它的访问,这些白名单可以在某些 Azure 应用服务设置中完成,而不是在项目内部的web.config中完成。

目前,这就是我们在我们的环境中进行 IP 地址限制的方式。

  • 生产:我们为应用服务设置了 VNet 集成。 我们将NSG附加到VNet's Subnet ,我们可以从NSG控制入站和出站访问。
  • 暂存:我们的web.config中有以下配置块,其中包含允许访问暂存服务器中的应用服务的白名单 IP 地址。

     <security> <ipSecurity allowUnlisted="false" denyAction="NotFound"> <add allowed="true" ipAddress="some ip address" subnetMask="255.255.255.254"></add> <add allowed="true" ipAddress="some ip address" subnetMask="255.255.255.254"></add> </ipSecurity> </security>
  • 开发(本地):我们必须在本地开发机器中取消注释<security>配置块,因为我们并不真正需要它。 它会导致错误,请参见下面的屏幕截图。

在此处输入图片说明

这是 HttpFailre_09-07-33.html 的一些内容

Module         IpRestrictionModule
Notification   BeginRequest
Handler        aspNetCore
Error Code     0x80070021
Config Error   This configuration section cannot be used at this path. This happens when the section is locked at a parent level. Locking is either by default (overrideModeDefault="Deny"), or set explicitly by a location tag with overrideMode="Deny" or the legacy allowOverride="false".

我们想从 web.config 中完全删除这个<security>块,因为另一个原因,我们不希望 IP 地址到达生产环境。

而且,我们不允许在我们的临时服务器中进行 VNet 集成(管理的东西,呃!削减成本!)。

那么有没有办法限制 Azure 应用服务中的 IP 地址?

那么有没有办法限制 Azure 应用服务中的 IP 地址?

1.我们可以使用web.config来限制IP地址,正如你所说

2.我们可以从IIS管理器连接到一个WebApp,我们可以很容易地配置限制IP。 更多详细信息请参阅博客

3.我们可以使用REST API来做到这一点,我们可以使用 Azure Resource Exploer( https://resources.azure.com/ )轻松做到这一点。 我们也可以使用 PowerShell cmdlet 详细信息来做到这一点,请参阅另一个SO Thread 以下是有关如何使用 azure 资源浏览器执行此操作的简单步骤。

一种。 打开 azure 资源浏览器,选择对应的网站配置 web 选项,点击编辑按钮。

在此处输入图片说明

将 ipSecurityRestrictions 更改为数组值。

在此处输入图片说明 在此处输入图片说明

C。 单击“放置”按钮发送请求。

在此处输入图片说明

配置错误此配置部分不能在此路径使用

如果我们不解锁处理程序,我们需要解锁处理程序,更多信息请参考另一个SO Thread 以下是从 SO 线程中截取的内容。

1) 在连接树(在 IIS 中)中,转到您的服务器节点,然后转到您的网站。

2) 对于网站,在右侧窗口中,您将看到管理下的配置编辑器。

3) 双击配置编辑器。

4) 在打开的窗口中,您会在顶部找到部分的下拉菜单。 从下拉列表中选择“system.webServer/handlers”。

5)在右侧,还有一个下拉菜单。 >选择“ApplicationHost.Config”

6) 在最右侧的窗格中,您会在“部分”标题下找到“解锁部分”。 点击那个。

7) 一旦 applicationHost 上的处理程序被解锁,您的网站应该可以正常运行。

可以使用 powershell Az 模块命令在 Azure 应用服务上配置 VNet/子网类型访问限制 - Add-AzWebAppAccessRestrictionRule

https://docs.microsoft.com/en-us/powershell/module/az.websites/add-azwebappaccessrestrictionrule?view=azps-3.2.0

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM