Base de Dados SQL do Azure Network Access controls

Aplica-se a: Base de Dados SQL do Azure

Quando cria um servidor lógico usando o Quickstart: Create a single database for Base de Dados SQL do Azure, obtém um endpoint público no formato: yourservername.database.windows.net.

Por padrão, o servidor lógico nega todas as conexões para garantir a segurança. Você pode usar um ou mais dos seguintes controles de acesso à rede para permitir seletivamente o acesso a um banco de dados por meio do ponto de extremidade público

  • regras de firewall baseadas em IP: Utilize esta funcionalidade para permitir explicitamente conexões de um endereço IP específico. Por exemplo, a partir de máquinas locais ou de um intervalo de endereços IP, especificando o endereço IP inicial e final.

  • Permitir que os serviços e recursos do Azure acessem este servidor: Quando habilitado, outros recursos dentro do limite do Azure podem acessar o Banco de Dados SQL. Por exemplo, uma Máquina Virtual do Azure pode acessar os recursos do Banco de Dados SQL.

Também pode permitir acesso privado à base de dados a partir de redes virtuais através de:

  • Regras de firewall de rede virtual: use esse recurso para permitir o tráfego de uma rede virtual específica dentro do limite do Azure.

  • de Link Privado: use esse recurso para criar um ponto de extremidade privado para o servidor lógico no Azure dentro de uma rede virtual específica.

Importante

Este artigo não se aplica a Instância Gerenciada SQL. Para obter mais informações sobre a configuração de rede, consulte conectando-se à Instância Gerenciada SQL do Azure .

Regras de firewall IP

As regras de firewall baseadas em IP são um recurso do servidor lógico no Azure que impede todo o acesso ao seu servidor até que você adicione explicitamente endereços IP das máquinas cliente.

Existem dois tipos de regras de firewall:

  • Regras de firewall no nível de servidor: Essas regras se aplicam a todos os bancos de dados no servidor. Eles podem ser configurados por meio do portal do Azure, PowerShell ou comandos T-SQL, como sp_set_firewall_rule.
  • Regras de firewall no nível de banco de dados: Essas regras se aplicam a bancos de dados individuais e só podem ser configuradas usando comandos T-SQL como sp_set_database_firewall_rule

A seguir estão as restrições para nomear regras de firewall:

  • O nome da regra de firewall não pode estar vazio.
  • Ele não pode conter os seguintes caracteres: <, >, *, %, &, :, \\, /, ?.
  • Não pode terminar com um ponto final (.).
  • O nome da regra de firewall não pode exceder 128 caracteres.

Qualquer tentativa de criar regras de firewall que não atendam a essas restrições falha com uma mensagem de erro. Quaisquer modificações feitas nas regras de firewall baseadas em IP existentes podem levar até 5 minutos para entrar em vigor.

Permitir serviços do Azure

Por padrão, durante a criação de um novo servidor lógico a partir do portal do Azure, Permitir que os serviços e recursos do Azure acessem esse servidor está desmarcada e não habilitada. Essa configuração aparece quando a conectividade é permitida via ponto de extremidade público.

Você também pode alterar essa configuração por meio da configuração Rede depois que o servidor lógico for criado da seguinte maneira:

Captura de tela da página gerenciar configurações de firewall do servidor.

Quando Permitir que os serviços e recursos do Azure acedam a este servidor está habilitado, o seu servidor permite comunicações de todos os recursos dentro do limite do Azure , independentemente de fazerem parte da sua subscrição. Nos bastidores, uma regra especial de firewall no nível do servidor é adicionada que começa e termina com o endereço IP de 0.0.0.0.

Em muitos casos, ativar a configuração é mais permissivo do que a maioria dos clientes deseja. Talvez você queira desmarcar essa configuração e substituí-la por regras de firewall IP mais restritivas ou usar uma das opções para acesso privado.

Importante

Verificar Permitir que os serviços e recursos do Azure acedam a este servidor adiciona uma regra de firewall baseada em IP com endereços IP de início e fim de 0.0.0.0.

No entanto, isso afeta as seguintes funcionalidades que correm em máquinas virtuais no Azure que não fazem parte da sua rede virtual e se ligam à base de dados através de um endereço IP do Azure.

Serviço de Importação e Exportação

O serviço de importação/exportação não funciona quando Permitir que os serviços e recursos do Azure acedam a este servidor não está ativado. No entanto, você pode contornar o problema executando manualmente SqlPackage de uma VM do Azure ou executando a exportação diretamente em seu código usando a API DACFx.

Sincronização de Dados

Para usar o recurso de sincronização de dados com Permitir que os serviços e recursos do Azure acessem este servidor não habilitado, é necessário criar entradas de regras de firewall individuais para adicionar endereços IP da tag de serviço Sql para a região que hospeda o banco de dados Hub . Adicione essas regras de firewall no nível de servidor aos servidores que hospedam bancos de dados Hub e Member (que podem estar em regiões diferentes).

Use o seguinte script do PowerShell para gerar endereços IP correspondentes à marca de serviço SQL para a região Oeste dos EUA.

PS C:\>  $serviceTags = Get-AzNetworkServiceTag -Location eastus2
PS C:\>  $sql = $serviceTags.Values | Where-Object { $_.Name -eq "Sql.WestUS" }
PS C:\> $sql.Properties.AddressPrefixes.Count
70
PS C:\> $sql.Properties.AddressPrefixes
13.86.216.0/25
13.86.216.128/26
13.86.216.192/27
13.86.217.0/25
13.86.217.128/26
13.86.217.192/27

Dica

Get-AzNetworkServiceTag retorna o intervalo global para SQL Service Tag apesar de especificar o parâmetro Location. Certifique-se de filtrá-lo para a região que hospeda o banco de dados do Hub usado pelo seu grupo de sincronização

A saída do script do PowerShell está na notação CIDR (Roteamento de Inter-Domain sem classe). Isso precisa ser convertido para um formato de endereço IP inicial e final usando Get-IPrangeStartEnd.ps1 como este:

PS C:\> Get-IPrangeStartEnd -ip 52.229.17.93 -cidr 26
start        end
-----        ---
52.229.17.64 52.229.17.127

Você pode usar o seguinte script do PowerShell para converter todos os endereços IP do CIDR para o formato de endereço IP inicial e final.

PS C:\>foreach( $i in $sql.Properties.AddressPrefixes) {$ip,$cidr= $i.split('/') ; Get-IPrangeStartEnd -ip $ip -cidr $cidr;}
start          end
-----          ---
13.86.216.0    13.86.216.127
13.86.216.128  13.86.216.191
13.86.216.192  13.86.216.223

Agora você pode adicioná-los como regras de firewall distintas e, em seguida, desabilitar a configuração Permitir que os serviços e recursos do Azure acessem esse servidor.

Tag de serviço Sql

Tags de serviço podem ser usadas em regras de segurança e rotas de clientes para o Banco de dados SQL. As tags de serviço podem ser usadas em grupos de segurança de rede, Firewall do Azure e rotas definidas pelo usuário, especificando-as no campo de origem ou destino de uma regra de segurança.
A marca de serviço Sql consiste em todos os endereços IP que estão sendo usados pelo Banco de dados SQL. A tag é ainda segmentada por regiões. Por exemplo, Sql.WestUS lista todos os endereços IP usados pelo Banco de dados SQL no oeste dos EUA.

A marca de serviço Sql consiste em endereços IP necessários para estabelecer conectividade com o Banco de dados SQL, conforme documentado em Gateway IP addresses. Além disso, uma marca de serviço também será associada a qualquer tráfego de saída do Banco de dados SQL usado em recursos como:

Marca de serviço SqlManagement

A marca de serviço SqlManagement é usada para operações de plano de controle no Banco de dados SQL.

Regras de firewall de rede virtual

Usar pontos de extremidade de serviço de rede virtual e regras para servidores no Banco de Dados SQL do Azure são alternativas mais fáceis para estabelecer e gerir o acesso a partir de uma sub-rede específica que contém as suas VMs.

Private Link permite que você se conecte a um servidor através de um ponto final privado. Um ponto de extremidade privado é um endereço IP privado dentro de uma sub-rede e rede virtual específica.

Controlos de acesso à rede no Azure Synapse Analytics

Para informações sobre controlos de acesso à rede no Azure Synapse Analytics, consulte Controlos de acesso à rede.