我可以限制谁访问我的Azure网站给美国人?

时间:2018-02-02 20:07:15

标签: asp.net-mvc azure ip-address subnet azureportal

我想限制只能在美国看到并访问我网站的人!我知道我可以将IP地址限制为仅在我的web.config文件中提供的IP地址。是否有一些子网掩码或我可以在下面使用的东西来定义所有美国IP地址,或者我可以在Azure门户中配置一些Azure设置吗?

离。



<system.webServer>
  <security>
    <ipSecurity allowUnlisted="false" denyAction="NotFound">
      <add allowed="true" ipAddress="24.130.112.11" subnetMask="255.255.0.0" />
      <add allowed="true" ipAddress="73.92.189.234" subnetMask="255.255.0.0" />
    </ipSecurity>
  </security>
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:1)

您可以在Azure门户中配置Azure设置,以根据任何地区的IP地址限制访问。

我建议你可以使用MaxMind.GeoIP2这样的nuget包,它可以提供 GeoIP查找功能,根据客户端IP地址获取国家和城市等位置信息。

这种方法比查找美国的所有IP地址范围和子网掩码并将其列入白名单要好。

答案 1 :(得分:0)

据我所知,这是限制Azure中IP收件人的唯一方法。您还可以使用Azure应用服务中的IP Restrictions菜单添加或删除限制。

但是,我认为限制可以按地区(IP地址)访问您网站的用户的方法不是正确的解决方案。这似乎是一个不必要的复杂问题,可能会遇到技术问题和逻辑问题。您是否希望在旧金山工作但在城外工作的人只能在办公室访问您的网站?

我认为有一些更合适,更易于管理的解决方案,例如:

  • 提示用户(如果他们之前从未访问过您的网站),并显示一条消息,指出该网站位于test / alpha / beta网站,仅供X用户使用(英语,大都市工作人员等)。
  • 询问有关您的说明(语言,地区,位置等)的登录信息,并将其重定向到正确的位置或让他们优雅地离开网站
  • 将Beta密钥分发给您想要访问您网站的任何人。您可以非常具体地了解您的邀请对象,特别是如果您考虑到某个特定人群,这可能比仅仅拥有一个非常庞大的用户群更有价值。