2

我有一个现有的 VS2010 ASP.NET webforms 站点,我试图在 Azure 上运行它作为客户端的 POC。

我将站点迁移到 VS2012 项目,添加了 Azure 云服务项目,并将站点以及后端数据库部署到 3 个月的试用帐户。

我已将我的开发机器的 IP 地址添加到 Azure db 的防火墙规则中,我可以在本地运行该项目并毫无意外地连接到 Azure db。

在网站的防火墙规则中,我在允许的服务下将 Windows Azure 服务设置为是。除了我的开发机器的规则之外,我没有其他规则。

尝试从部署到 Azure 的站点访问该站点时,出现以下异常:

无法打开登录请求的服务器。不允许 IP 地址为“137.135.65.13”的客户端访问服务器。要启用访问,请使用 SQL Azure 门户或在主数据库上运行 sp_set_firewall_rule 来为此 IP 地址或地址范围创建防火墙规则。此更改最多可能需要五分钟才能生效。用户登录失败。已为该会话分配了跟踪 ID 。当您需要帮助时,将此跟踪 ID 提供给客户支持。

如果我为 azure 服务器 IP 地址添加防火墙规则,该站点可以正常工作,但这不会破坏 Azure 的全部目的吗?不应该让 Azure 服务处理这个问题吗?是否需要额外的配置项,或者我缺少设计中的一些基本内容?我不确定这是否相关,但该站点是由 VS2012 部署为云服务而不是网站,这是问题吗?我还将数据库添加为云服务中的链接资源,但这似乎没有任何效果。

4

2 回答 2

8

将数据库添加为网站的链接资源将解决这个问题,而不必担心防火墙设置。

  1. 在 m.anage.windowsazure.com 中访问您的网站。
  2. 转到链接资源选项卡。
  3. 按页面底部的LINK按钮
  4. 从模式对话框中选择您的数据库
于 2015-06-26T13:57:51.700 回答
2

这是 Azure 中的一个错误。较新的 IP 范围不包含在其样板“Azure 服务”配置或类似配置中。

不幸的是,已经发生了很长时间(至少〜3年)。

也发生在 Web 角色、工作角色和虚拟机上 - 不特定于网站。我们经常在美国东部使用我们的 Web 和 Worker 角色来实现这一点,但在美国北部从未见过一次。

我们的解决方法是添加范围:10.0.0.0-10.255.255.255。可能不是最安全的解决方法,但幸运的是,到目前为止,这仅影响了我们的开发环境,而不是我们的任何生产环境。

于 2013-05-07T09:51:10.187 回答