如何使用IP addresses
向Azure SQL Server
添加多个PowerShell
这样,多个管理员就可以使用SSMS
从他们的计算机连接到数据库。可以通过门户网站完成,但是我们已经关闭了该路线,所有操作都通过PowerShell
我有此代码,但我认为它不符合我们的要求。
$ServerFirewallRule = New-AzSqlServerFirewallRule -ResourceGroupName $ResourceGroupName `
-ServerName $ServerName `
-FirewallRuleName "AllowedIPs" -StartIpAddress $StartIp -EndIpAddress $EndIp
例如
admin 1 ipaddress-1:158。****
admin 2 ipaddress-2:196。****
答案 0 :(得分:0)
请尝试以下将当前客户端IP地址添加到Azure SQL防火墙白名单的PowerShell。您的管理员可以手动运行PowerShell,也可以计划Windows计划任务,该任务可以在计算机启动时运行PowerShell。
$subscriptionName = 'Your Subscription'
$ipGetCommand = 'http://www.iplocation.net/find-ip-address'
$firewallRule = 'My-Home'
$serverName = "Your Server Name";
$webclient = New-Object System.Net.WebClient
$queryResult = $webclient.DownloadString($ipGetCommand)
$queryResult -match '\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b'
$currentPublicIp = $($matches[0])
Select-AzureSubscription -SubscriptionName $subscriptionName
If ((Get-AzureSqlDatabaseServerFirewallRule -ServerName $serverName -RuleName $firewallRule) -eq $null) {
New-AzureSqlDatabaseServerFirewallRule -ServerName $serverName -RuleName $firewallRule -StartIpAddress $currentPublicIp -EndIpAddress $currentPublicIp
}
else {
Set-AzureSqlDatabaseServerFirewallRule -ServerName $serverName -RuleName $firewallRule -StartIpAddress $currentPublicIp -EndIpAddress $currentPublicIp
}