无法从Azure网站连接到Azure DB

时间:2013-05-07 00:33:39

标签: asp.net sql-server azure

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

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

我已将我的开发机器的IP地址添加到Azure数据库的防火墙规则中,我可以在本地运行该项目并连接到Azure数据库而不会发生任何事故。

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

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

  

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

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

2 个答案:

答案 0 :(得分:8)

将数据库添加为WebSite的链接资源将解决问题,而不必使用防火墙设置。

  1. 访问m.anage.windowsazure.com上的网站。
  2. 转到链接资源标签。
  3. 按页面底部的 LINK 按钮
  4. 从模态对话框中选择您的数据库

答案 1 :(得分:2)

这是Azure中的一个错误。更新的IP范围不包含在他们的锅炉板“Azure服务”配置中,或类似的东西。

Been happening for a long time (at least ~3 years), unfortunately.

发生Web角色,工作者角色和虚拟机 - 不是特定于网站。我们经常在美国东部通过我们的网络和工作者角色来实现这一点,但在美国北部从未见过它。

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