我们有一个在Azure中部署为App Service的Web应用程序。我们希望通过提供一个白名单的IP地址来限制对它的访问,这些IP地址可以在某些Azure应用服务设置中完成,而不是在项目内的web.config
中完成。
目前,这就是我们在环境中进行IP地址限制的方式。
NSG
附加到VNet's
Subnet
,并从NSG
我们可以控制入站和出站访问。 暂存:我们的web.config
中包含以下配置块,其中包含允许在我们的登台服务器中访问App Service的白名单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 App Service中限制IP地址?
答案 0 :(得分:7)
那么有没有办法在Azure App Service中限制IP地址?
1.我们可以使用web.config来限制你提到的IP地址
2.我们可以从IIS管理器连接到WebApp,我们可以轻松配置限制IP。更多详细信息请参考blog。
3.我们可以使用REST API来执行此操作,我们可以使用Azure资源管理器(https://resources.azure.com/)轻松完成此操作。我们也可以使用PowerShell cmdlet详细信息,请参阅另一个SO Thread。以下是有关如何使用azure resource explorer执行此操作的简单步骤。
一个。打开azure资源浏览器并选择相应的网站配置网页选项,然后单击编辑按钮。
湾将ipSecurityRestrictions更改为数组值。
℃。点击设置按钮发送请求。
配置错误此配置部分不能在此路径中使用
如果我们不解锁处理程序,我们需要解锁处理程序,更多信息请参考另一个SO Thread。以下是来自SO线程的剪辑。
1)在连接树(在IIS中)中,转到您的服务器节点,然后转到您的网站。
2)对于网站,在右侧窗口中,您将看到管理下的配置编辑器。
3)双击配置编辑器。
4)在打开的窗口中,您会看到一个下拉部分。选择&#34; system.webServer / handlers&#34;从下拉开始。
5)在右侧,还有另一个下拉。 &gt;选择&#34; ApplicationHost.Config&#34;
6)在最右边的窗格中,您会找到&#34;解锁部分&#34;在&#34;部分&#34;标题。点击它。
7)一旦applicationHost处理程序解锁,您的网站就可以正常运行。
答案 1 :(得分:0)
可以使用powershell Az模块命令- Add-AzWebAppAccessRestrictionRule
在Azure App Service上配置VNet /子网类型访问限制。