Ищете лучший способ доступа к базам данных SQL Azure? - PullRequest
2 голосов
/ 15 мая 2019

Сейчас, когда я хочу получить доступ к своим базам данных в MS Azure SQL, мне нужно войти в систему и добавить свой IP-адрес в список IP-адресов в брандмауэре, и только после этого я могу выполнять запросы.

Есть ли лучший способ, с помощью которого я могу проверить, чтобы мой компьютер всегда имел доступ к БД, не добавляя себя в белый список брандмауэра каждый раз.

Я знаю, что получение фиксированного IP-адреса самостоятельно или добавление диапазона IP-адресов 0.0.0.0 - 255.255.255.255 по существу решило бы проблему, но есть ли другие варианты?

1 Ответ

1 голос
/ 15 мая 2019

Вы можете просто запустить следующий скрипт PowerShell, чтобы автоматически создать для вас правило брандмауэра, затем вам просто нужно запустить SQL Server Management Studio или Azure Data Studio для подключения к базе данных SQL Azure.

Этот скрипт добавит ваш текущий IP в белый список брандмауэра.

$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
}

Вы также можете создать на своем компьютере задачу по расписанию для запуска PowerShell при запуске компьютера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...