我们有一个Azure云服务(经典),它是我们的Web应用程序。我们如何告诉服务在所有实例上阻止特定IP?
我知道,当通过web.config文件进行设置时,我们可以阻止使用IIS 8+动态IP限制(DIPR)。 Configuring Dynamic IP Restrictions
2个问题是:1)我们无法从应用程序内部添加到始终阻止列表中; 2)即使我可以正常工作,也只能在该实例上使用。
是否无法阻止来自门户的IP过滤器流量? 可以在我们的Cloud Service中进行设置吗?
答案 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
,则需要在“角色”中添加以下设置:
设置的语法并不难理解:
ServiceConfiguration
或IPAddressRestriction.Enabled = true
false
= =或=-(端口之间的分隔符为“;”)
最后,您需要将所有内容连接到WebRole / WorkerRoler.cs
IPAddressRestriction.Settings
有关更多详细信息,您可以参考此article。