Azure SQL Server防火墙IP地址范围

时间:2012-09-27 16:28:13

标签: azure

从Azure MySQL迁移到SQL Server我需要指定一系列可以访问Db的IP地址。

输入的范围是0.0.0.0到255.255.255.255可以吗?是否有一系列IP地址可以为我提供“全部允许”。它对我来说不实用,知道请求将来自哪里,并不断更新数据库防火墙规则。

5 个答案:

答案 0 :(得分:10)

  

输入的范围是0.0.0.0到255.255.255.255可以吗?是否有一系列IP地址可以为我提供“全部允许”。它对我来说不太实用,知道请求将来自哪里,并不断更新数据库防火墙规则。

是的,这将允许从每个IP地址访问您的SQL Azure数据库,但肯定不建议这样做。当您提到您不知道从哪里收到请求时,您是指对您的应用程序的请求还是连接到数据库的请求?如果是对您的应用程序的请求,则您实际上不需要指定此范围。您可以指定0.0.0.0,这将允许您在Windows Azure中运行的应用程序访问此数据库。

答案 1 :(得分:2)

每次您希望从新IP连接时,我建议使用PowerShell / Azure命令行工具为mac(http://azure.microsoft.com/en-us/documentation/articles/command-line-tools/)运行脚本。

如果使用命令行工具使用Mac链接Azure订阅,则:

#!/bin/bash

externalIP=$(curl -s icanhazip.com)

ruleName="temp$externalIP"

echo "$externalIP"

azure sql firewallrule create [ServerName] "$ruleName" "$externalIP" "$externalIP"

将其保存为azureip.sh并从终端运行。

如果使用Windows,则有许多使用PowerShell

的例子

答案 2 :(得分:1)

我建议您阅读此tutorial,他将帮助您了解如何创建数据库级规则和允许从Azure访问。

答案 3 :(得分:0)

它的旧版本只是到了这里,我想在Azure SQL数据库服务器(配置选项卡)下允许服务为是或否。将其切换为是

答案 4 :(得分:0)

添加到Ronald的解决方案,删除现有的临时规则并使用ipv4端点。

#!/bin/bash

server="yourservername"
azure sql firewallrule list $server | awk '{print $2}'  | grep temp | while read line ; do azure sql firewallrule delete $server  $line -q ; done

externalIP=$(curl -s ipv4.icanhazip.com)

ruleName="temp$externalIP"


azure sql firewallrule create $server "$ruleName" "$externalIP" "$externalIP"