动态阻止IP地址以使用Azure云服务

时间:2018-10-09 17:59:07

标签: asp.net azure ip azure-web-sites

我们有一个Azure云服务(经典),它是我们的Web应用程序。我们如何告诉服务在所有实例上阻止特定IP?

我知道,当通过web.config文件进行设置时,我们可以阻止使用IIS 8+动态IP限制(DIPR)。 Configuring Dynamic IP Restrictions

2个问题是:1)我们无法从应用程序内部添加到始终阻止列表中; 2)即使我可以正常工作,也只能在该实例上使用。

是否无法阻止来自门户的IP过滤器流量? 可以在我们的Cloud Service中进行设置吗?

1 个答案:

答案 0 :(得分:1)

  

是否无法阻止来自门户的IP过滤器流量?可以在我们的Cloud Service中进行设置吗?

每次实例启动时,它都会查看为角色配置的端点,并在防火墙中打开所需的端口。我们在代码中要做的只是简单地禁用这些规则并创建新规则,这些规则仅限于几个IP地址/ IP地址范围

此解决方案的核心是print("1") DispatchQueue.main.async { print("2") DispatchQueue.main.async { print(3) } print("4") } print("5") 类,该类解析IPAddressRestrictionManager.cs中的设置(您可以在部署应用程序时进行修改)并在每个实例上修改防火墙。

首先,您需要安装NuGet软件包:

ServiceConfiguration.cscfg

如果要将PM> Install-Package WindowsAzure.IPAddressRestriction 链接到IPAddressRestrictionManager,则需要在“角色”中添加以下设置:

enter image description here

设置的语法并不难理解:

ServiceConfigurationIPAddressRestriction.Enabled = true

false = =或=-(端口之间的分隔符为“;”)

最后,您需要将所有内容连接到WebRole / WorkerRoler.cs

IPAddressRestriction.Settings

有关更多详细信息,您可以参考此article