Use as regras e pontos de extremidade de serviço da rede virtual para os servidores no Banco de Dados SQL do AzureUse virtual network service endpoints and rules for servers in Azure SQL Database

APLICA-SE A: Banco de Dados SQL do Azure Azure Synapse Analytics

As regras de rede virtual são um recurso de segurança de firewall que controla se o servidor de seus bancos de dados e pools elásticos no banco de dados SQL do Azure ou nos bancos de dado do pool SQL dedicado (anteriormente conhecido como SQL DW) no Azure Synapse Analytics aceita comunicações enviadas de sub-redes específicas em redes virtuais.Virtual network rules are a firewall security feature that controls whether the server for your databases and elastic pools in Azure SQL Database or for your dedicated SQL pool (formerly SQL DW) databases in Azure Synapse Analytics accepts communications that are sent from particular subnets in virtual networks. Este artigo explica por que as regras de rede virtual são, às vezes, a melhor opção para permitir a comunicação com segurança no banco de dados SQL e no Azure Synapse Analytics.This article explains why virtual network rules are sometimes your best option for securely allowing communication to your database in SQL Database and Azure Synapse Analytics.

Observação

Este artigo se aplica ao banco de dados SQL e ao Azure Synapse Analytics.This article applies to both SQL Database and Azure Synapse Analytics. Para simplificar, o termo banco de dados refere-se a ambos os bancos de dados do SQL e do Azure Synapse Analytics.For simplicity, the term database refers to both databases in SQL Database and Azure Synapse Analytics. Da mesma forma, todas as referências ao servidor referem-se ao SQL Server lógico que hospeda o banco de dados SQL e o Azure Synapse Analytics.Likewise, any references to server refer to the logical SQL server that hosts SQL Database and Azure Synapse Analytics.

Para criar uma regra da rede virtual, primeiro, é preciso que haja um ponto de extremidade de serviço de rede virtual para a regra de referência.To create a virtual network rule, there must first be a virtual network service endpoint for the rule to reference.

Criar uma regra de rede virtualCreate a virtual network rule

Se você quiser criar apenas uma regra de rede virtual, poderá pular para as etapas e explicação mais adiante neste artigo.If you want to only create a virtual network rule, you can skip ahead to the steps and explanation later in this article.

Detalhes sobre as regras da rede virtualDetails about virtual network rules

Esta seção descreve vários detalhes sobre as regras da rede virtual.This section describes several details about virtual network rules.

Apenas uma região geográficaOnly one geographic region

Cada ponto de extremidade de serviço de rede virtual aplica-se a apenas uma região do Azure.Each virtual network service endpoint applies to only one Azure region. O ponto de extremidade não permite que outras regiões aceitem comunicação da sub-rede.The endpoint doesn't enable other regions to accept communication from the subnet.

Qualquer regra da rede virtual é limitada à região à qual seu ponto de extremidade subjacente se aplica.Any virtual network rule is limited to the region that its underlying endpoint applies to.

Nível de servidor, não nível de banco de dadosServer level, not database level

Cada regra de rede virtual se aplica a todo o servidor, não apenas a um banco de dados específico no servidor.Each virtual network rule applies to your whole server, not just to one particular database on the server. Em outras palavras, as regras de rede virtual se aplicam no nível do servidor, não no nível do banco de dados.In other words, virtual network rules apply at the server level, not at the database level.

Por outro lado, as regras de IP podem ser aplicadas em qualquer nível.In contrast, IP rules can apply at either level.

Funções de administração de segurançaSecurity administration roles

Há uma separação de funções de segurança na administração de pontos de extremidade de serviço de rede virtual.There's a separation of security roles in the administration of virtual network service endpoints. A ação é necessária em cada uma das seguintes funções:Action is required from each of the following roles:

  • Administrador de rede (função colaborador de rede ):   Ative o ponto de extremidade.Network Admin (Network Contributor role):  Turn on the endpoint.
  • Administrador de banco de dados (função de colaborador de SQL Server ):   Atualize a lista de controle de acesso (ACL) para adicionar a sub-rede fornecida ao servidor.Database Admin (SQL Server Contributor role):  Update the access control list (ACL) to add the given subnet to the server.

Alternativa do RBAC do AzureAzure RBAC alternative

As funções de Administrador de banco de dados e Administrador de rede têm mais recursos do que o necessário para gerenciar regras da rede virtual.The roles of Network Admin and Database Admin have more capabilities than are needed to manage virtual network rules. É necessário apenas um subconjunto de seus recursos.Only a subset of their capabilities is needed.

Você tem a opção de usar o controle de acesso baseado em função (RBAC) no Azure para criar uma única função personalizada que tenha apenas o subconjunto necessário de recursos.You have the option of using role-based access control (RBAC) in Azure to create a single custom role that has only the necessary subset of capabilities. A função personalizada pode ser usada em vez de envolver o administrador de rede ou o administrador de banco de dados. A área da superfície de sua exposição de segurança será menor se você adicionar um usuário a uma função personalizada em vez de adicionar o usuário às outras duas principais funções de administrador.The custom role could be used instead of involving either the Network Admin or the Database Admin. The surface area of your security exposure is lower if you add a user to a custom role versus adding the user to the other two major administrator roles.

Observação

Em alguns casos, o banco de dados no banco de dados SQL e a sub-rede da rede virtual estão em assinaturas diferentes.In some cases, the database in SQL Database and the virtual network subnet are in different subscriptions. Nesses casos, você deve garantir as seguintes configurações:In these cases, you must ensure the following configurations:

  • Ambas as assinaturas devem estar no mesmo locatário Azure Active Directory (Azure AD).Both subscriptions must be in the same Azure Active Directory (Azure AD) tenant.
  • O usuário tem as permissões necessárias para iniciar operações, como habilitar pontos de extremidade de serviço e adicionar uma sub-rede de rede virtual ao servidor especificado.The user has the required permissions to initiate operations, such as enabling service endpoints and adding a virtual network subnet to the given server.
  • Ambas as assinaturas devem ter o provedor Microsoft.Sql registrado.Both subscriptions must have the Microsoft.Sql provider registered.

LimitaçõesLimitations

Para o banco de dados SQL, o recurso de regras de rede virtual tem as seguintes limitações:For SQL Database, the virtual network rules feature has the following limitations:

  • No firewall para seu banco de dados no banco de dados SQL, cada regra de rede virtual faz referência a uma sub-rede.In the firewall for your database in SQL Database, each virtual network rule references a subnet. Todas essas sub-redes referenciadas devem ser hospedadas na mesma região geográfica que hospeda o banco de dados.All these referenced subnets must be hosted in the same geographic region that hosts the database.
  • Cada servidor pode ter até 128 entradas de ACL para qualquer rede virtual.Each server can have up to 128 ACL entries for any virtual network.
  • As regras de rede virtual só se aplicam a Azure Resource Manager redes virtuais e não a redes de modelo de implantação clássica .Virtual network rules apply only to Azure Resource Manager virtual networks and not to classic deployment model networks.
  • A ativação de pontos de extremidade de serviço de rede virtual para o banco de dados SQL também habilita os pontos de extremidade do banco de dados do Azure para MySQL e banco de dados do Azure para PostgreSQL.Turning on virtual network service endpoints to SQL Database also enables the endpoints for Azure Database for MySQL and Azure Database for PostgreSQL. Com os pontos de extremidade definidos como on, as tentativas de conexão a partir dos pontos de extremidade para as instâncias do banco de dados do Azure para MySQL ou do banco de dados do Azure para PostgreSQL podem falhar.With endpoints set to ON, attempts to connect from the endpoints to your Azure Database for MySQL or Azure Database for PostgreSQL instances might fail.
    • O motivo subjacente é que o banco de dados do Azure para MySQL e o banco de dados do Azure para PostgreSQL provavelmente não têm uma regra de rede virtual configurada.The underlying reason is that Azure Database for MySQL and Azure Database for PostgreSQL likely don't have a virtual network rule configured. Você deve configurar uma regra de rede virtual para o banco de dados do Azure para MySQL e o banco de dados do Azure para PostgreSQL e a conexão terá sucesso.You must configure a virtual network rule for Azure Database for MySQL and Azure Database for PostgreSQL, and the connection will succeed.
    • Para definir regras de firewall de rede virtual em um servidor lógico do SQL que já está configurado com pontos de extremidade privados, defina negar acesso à rede pública como não.To define virtual network firewall rules on a SQL logical server that's already configured with private endpoints, set Deny public network access to No.
  • No firewall, os intervalos de endereços IP se aplicam aos seguintes itens de rede, mas as regras de rede virtual não:On the firewall, IP address ranges do apply to the following networking items, but virtual network rules don't:

Considerações ao usar pontos de extremidade de serviçoConsiderations when you use service endpoints

Ao usar pontos de extremidade de serviço para o banco de dados SQL, examine as seguintes considerações:When you use service endpoints for SQL Database, review the following considerations:

  • São necessários IPs públicos de saída para o banco de dados SQL do Azure.Outbound to Azure SQL Database public IPs is required. Os NSGs (grupos de segurança de rede) devem ser abertos para IPs de banco de dados SQL para permitir a conectividade.Network security groups (NSGs) must be opened to SQL Database IPs to allow connectivity. Você pode fazer isso usando as marcas de serviço NSG para o banco de dados SQL.You can do this by using NSG service tags for SQL Database.

ExpressRouteExpressRoute

Se você usar o ExpressRoute de seu local, para emparelhamento público ou emparelhamento da Microsoft, você precisará identificar os endereços IP de NAT que são usados.If you use ExpressRoute from your premises, for public peering or Microsoft peering, you'll need to identify the NAT IP addresses that are used. Para emparelhamento público, cada circuito do ExpressRoute usará dois endereços IP de NAT, que serão aplicados ao tráfego do serviço do Azure quando o tráfego entrar no backbone da rede do Microsoft Azure.For public peering, each ExpressRoute circuit by default uses two NAT IP addresses applied to Azure service traffic when the traffic enters the Microsoft Azure network backbone. Para o emparelhamento da Microsoft, os endereços IP de NAT que são usados são fornecidos pelo cliente ou pelo provedor de serviços.For Microsoft peering, the NAT IP addresses that are used are provided by either the customer or the service provider. Para permitir o acesso aos recursos do serviço, você deve permitir estes endereços IP públicos na configuração do firewall de IP do recurso.To allow access to your service resources, you must allow these public IP addresses in the resource IP firewall setting. Para localizar os endereços IP do circuito do ExpressRoute de emparelhamento público, abra um tíquete de suporte com o ExpressRoute por meio do Portal do Azure.To find your public peering ExpressRoute circuit IP addresses, open a support ticket with ExpressRoute via the Azure portal. Para saber mais sobre NAT para o emparelhamento público e da Microsoft para o ExpressRoute, confira requisitos de NAT para o emparelhamento público do Azure.To learn more about NAT for ExpressRoute public and Microsoft peering, see NAT requirements for Azure public peering.

Para permitir a comunicação de seu circuito com o banco de dados SQL, você deve criar regras de rede IP para os endereços IP públicos de seu NAT.To allow communication from your circuit to SQL Database, you must create IP network rules for the public IP addresses of your NAT.

Impacto do uso de pontos de extremidade de serviço de rede virtual com o armazenamento do AzureImpact of using virtual network service endpoints with Azure Storage

O Armazenamento do Azure implementou o mesmo recurso que permite que você limite a conectividade à sua conta de Armazenamento do Azure.Azure Storage has implemented the same feature that allows you to limit connectivity to your Azure Storage account. Se você optar por usar esse recurso com uma conta de armazenamento do Azure que o banco de dados SQL está usando, poderá encontrar problemas.If you choose to use this feature with an Azure Storage account that SQL Database is using, you can run into issues. Em seguida, há uma lista e uma discussão sobre os recursos do banco de dados SQL e do Azure Synapse Analytics afetados por isso.Next is a list and discussion of SQL Database and Azure Synapse Analytics features that are affected by this.

Azure Synapse Analytics polybase e instrução de cópiaAzure Synapse Analytics PolyBase and COPY statement

O polybase e a instrução de cópia são normalmente usados para carregar dados no Azure Synapse Analytics de contas de armazenamento do Azure para a ingestão de dados de alta taxa de transferência.PolyBase and the COPY statement are commonly used to load data into Azure Synapse Analytics from Azure Storage accounts for high throughput data ingestion. Se a conta de armazenamento do Azure para a qual você está carregando dados limita o acesso somente a um conjunto de sub-redes de rede virtual, a conectividade quando você usa o polybase e a instrução de cópia para a conta de armazenamento serão interrompidas.If the Azure Storage account that you're loading data from limits accesses only to a set of virtual network subnets, connectivity when you use PolyBase and the COPY statement to the storage account will break. Para habilitar cenários de importação e exportação usando o COPY e o polybase com o Azure Synapse Analytics se conectando ao armazenamento do Azure que é protegido para uma rede virtual, siga as etapas nesta seção.For enabling import and export scenarios by using COPY and PolyBase with Azure Synapse Analytics connecting to Azure Storage that's secured to a virtual network, follow the steps in this section.

Pré-requisitosPrerequisites

  • Instale o Azure PowerShell usando este guia.Install Azure PowerShell by using this guide.
  • Se você tiver uma conta de uso geral v1 ou de armazenamento de BLOBs do Azure, primeiro será necessário atualizar para a versão de uso geral v2 seguindo as etapas em atualizar para uma conta de armazenamento de uso geral v2.If you have a general-purpose v1 or Azure Blob Storage account, you must first upgrade to general-purpose v2 by following the steps in Upgrade to a general-purpose v2 storage account.
  • Você deve ter permitir que os serviços confiáveis da Microsoft acessem essa conta de armazenamento ativada no menu de configurações de firewalls e redes virtuais da conta de armazenamento do Azure.You must have Allow trusted Microsoft services to access this storage account turned on under the Azure Storage account Firewalls and Virtual networks settings menu. Habilitar essa configuração permitirá que o polybase e a instrução de cópia se conectem à conta de armazenamento usando a autenticação forte em que o tráfego de rede permanece no backbone do Azure.Enabling this configuration will allow PolyBase and the COPY statement to connect to the storage account by using strong authentication where network traffic remains on the Azure backbone. Para obter mais informações, consulte este guia.For more information, see this guide.

Importante

O módulo Azure Resource Manager do PowerShell ainda tem suporte do banco de dados SQL, mas todo o desenvolvimento futuro é para o módulo AZ. Sql.The PowerShell Azure Resource Manager module is still supported by SQL Database, but all future development is for the Az.Sql module. O módulo AzureRM continuará a receber as correções de bugs até pelo menos dezembro de 2020.The AzureRM module will continue to receive bug fixes until at least December 2020. Os argumentos para os comandos no módulo Az e nos módulos AzureRm são substancialmente idênticos.The arguments for the commands in the Az module and in the AzureRm modules are substantially identical. Para saber mais sobre a compatibilidade entre eles, confira Apresentação do novo módulo Az do Azure PowerShell.For more about their compatibility, see Introducing the new Azure PowerShell Az module.

EtapasSteps

  1. Se você tiver um pool SQL dedicado autônomo, Registre seu SQL Server com o Azure AD usando o PowerShell:If you have a standalone dedicated SQL pool, register your SQL server with Azure AD by using PowerShell:

    Connect-AzAccount
    Select-AzSubscription -SubscriptionId <subscriptionId>
    Set-AzSqlServer -ResourceGroupName your-database-server-resourceGroup -ServerName your-SQL-servername -AssignIdentity
    

    Essa etapa não é necessária para pools SQL dedicados em um espaço de trabalho do Azure Synapse Analytics.This step isn't required for dedicated SQL pools within an Azure Synapse Analytics workspace.

  2. Se você tiver um espaço de trabalho do Azure Synapse Analytics, registre a identidade gerenciada pelo sistema do seu espaço de trabalho:If you have an Azure Synapse Analytics workspace, register your workspace's system-managed identity:

    1. Vá para o espaço de trabalho do Azure Synapse Analytics na portal do Azure.Go to your Azure Synapse Analytics workspace in the Azure portal.
    2. Vá para o painel identidades gerenciadas .Go to the Managed identities pane.
    3. Verifique se a opção permitir pipelines está habilitada.Make sure the Allow Pipelines option is enabled.
  3. Crie uma conta de armazenamento de uso geral v2 seguindo as etapas em criar uma conta de armazenamento.Create a general-purpose v2 Storage Account by following the steps in Create a storage account.

    Observação

  4. Em sua conta de armazenamento, vá para controle de acesso (iam) e selecione Adicionar atribuição de função.Under your storage account, go to Access Control (IAM), and select Add role assignment. Atribua a função de colaborador de dados do blob de armazenamento ao servidor ou espaço de trabalho que hospeda seu pool SQL dedicado, que você registrou com o Azure AD.Assign the Storage Blob Data Contributor Azure role to the server or workspace hosting your dedicated SQL pool, which you've registered with Azure AD.

    Observação

    Somente membros com privilégio de proprietário na conta de armazenamento podem executar esta etapa.Only members with Owner privilege on the storage account can perform this step. Para várias funções internas do Azure, consulte funções internas do Azure.For various Azure built-in roles, see Azure built-in roles.

  5. Para habilitar a conectividade do polybase com a conta de armazenamento do Azure:To enable PolyBase connectivity to the Azure Storage account:

    1. Crie uma chave mestra de banco de dados se você não tiver criado uma anteriormente.Create a database master key if you haven't created one earlier.

      CREATE MASTER KEY [ENCRYPTION BY PASSWORD = 'somepassword'];
      
    2. Crie uma credencial no escopo do banco de dados com Identity = ' identidade de serviço gerenciada '.Create a database-scoped credential with IDENTITY = 'Managed Service Identity'.

      CREATE DATABASE SCOPED CREDENTIAL msi_cred WITH IDENTITY = 'Managed Service Identity';
      

      Observação

      • Não é necessário especificar o segredo com uma chave de acesso de armazenamento do Azure porque esse mecanismo usa a identidade gerenciada nos bastidores.There's no need to specify SECRET with an Azure Storage access key because this mechanism uses Managed Identity under the covers.
      • O nome da identidade deve ser ' identidade de serviço gerenciada ' para que a conectividade do polybase funcione com uma conta de armazenamento do Azure protegida em uma rede virtual.The IDENTITY name should be 'Managed Service Identity' for PolyBase connectivity to work with an Azure Storage account secured to a virtual network.
    3. Crie uma fonte de dados externa com o abfss:// esquema para se conectar à sua conta de armazenamento de uso geral v2 usando o polybase.Create an external data source with the abfss:// scheme for connecting to your general-purpose v2 storage account using PolyBase.

      CREATE EXTERNAL DATA SOURCE ext_datasource_with_abfss WITH (TYPE = hadoop, LOCATION = 'abfss://myfile@mystorageaccount.dfs.core.windows.net', CREDENTIAL = msi_cred);
      

      Observação

      • Se você já tiver tabelas externas associadas a uma conta de armazenamento de blob v1 ou de uso geral, deverá primeiro descartar essas tabelas externas.If you already have external tables associated with a general-purpose v1 or Blob Storage account, you should first drop those external tables. Em seguida, descarte a fonte de dados externa correspondente.Then drop the corresponding external data source. Em seguida, crie uma fonte de dados externa com o abfss:// esquema que se conecta a uma conta de armazenamento de uso geral v2, como mostrado anteriormente.Next, create an external data source with the abfss:// scheme that connects to a general-purpose v2 storage account, as previously shown. Em seguida, recrie todas as tabelas externas usando essa nova fonte de dados externa.Then re-create all the external tables by using this new external data source. Você pode usar o Assistente para gerar e publicar scripts para gerar a facilidade de criar scripts para todas as tabelas externas.You could use the Generate and Publish Scripts Wizard to generate create-scripts for all the external tables for ease.
      • Para obter mais informações sobre o abfss:// esquema, consulte usar o URI de Azure data Lake Storage Gen2.For more information on the abfss:// scheme, see Use the Azure Data Lake Storage Gen2 URI.
      • Para obter mais informações sobre como criar uma fonte de dados externa, consulte este guia.For more information on CREATE EXTERNAL DATA SOURCE, see this guide.
    4. Consultar normalmente usando tabelas externas.Query as normal by using external tables.

Auditoria de blob do banco de dados SQLSQL Database blob auditing

A auditoria de blob envia por push logs de auditoria para sua própria conta de armazenamento.Blob auditing pushes audit logs to your own storage account. Se essa conta de armazenamento usar o recurso de pontos de extremidade de serviço de rede virtual, a conectividade do banco de dados SQL com a conta de armazenamento será interrompida.If this storage account uses the virtual network service endpoints feature, connectivity from SQL Database to the storage account will break.

Adicionar uma regra de firewall de rede virtual ao servidorAdd a virtual network firewall rule to your server

Há muito tempo, antes que esse recurso fosse aprimorado, era necessário ativar os pontos de extremidade de serviço de rede virtual antes de implementar uma regra de rede virtual ao vivo no firewall.Long ago, before this feature was enhanced, you were required to turn on virtual network service endpoints before you could implement a live virtual network rule in the firewall. Os pontos de extremidade relacionados a uma determinada sub-rede de rede virtual a um banco de dados no banco de dados SQL.The endpoints related a given virtual network subnet to a database in SQL Database. A partir de janeiro de 2018, você pode burlar esse requisito definindo o sinalizador IgnoreMissingVNetServiceEndpoint .As of January 2018, you can circumvent this requirement by setting the IgnoreMissingVNetServiceEndpoint flag. Agora, você pode adicionar uma regra de firewall de rede virtual ao seu servidor sem ativar os pontos de extremidade de serviço de rede virtual.Now, you can add a virtual network firewall rule to your server without turning on virtual network service endpoints.

Simplesmente definir uma regra de firewall não ajuda a proteger o servidor.Merely setting a firewall rule doesn't help secure the server. Você também deve ativar os pontos de extremidade de serviço de rede virtual para que a segurança entre em vigor.You must also turn on virtual network service endpoints for the security to take effect. Quando você ativa pontos de extremidade de serviço, sua sub-rede de rede virtual apresenta tempo de inatividade até que conclua a transição de desativado para ativado.When you turn on service endpoints, your virtual network subnet experiences downtime until it completes the transition from turned off to on. Esse período de inatividade é especialmente verdadeiro no contexto de grandes redes virtuais.This period of downtime is especially true in the context of large virtual networks. Use o sinalizador IgnoreMissingVNetServiceEndpoint para reduzir ou eliminar o tempo de inatividade durante a transição.You can use the IgnoreMissingVNetServiceEndpoint flag to reduce or eliminate the downtime during transition.

Defina o sinalizador IgnoreMissingVNetServiceEndpoint usando o PowerShell.You can set the IgnoreMissingVNetServiceEndpoint flag by using PowerShell. Para obter mais informações, consulte PowerShell para criar um ponto de extremidade de serviço de rede virtual e uma regra para o banco de dados SQL.For more information, see PowerShell to create a virtual network service endpoint and rule for SQL Database.

Erros 40914 e 40615Errors 40914 and 40615

O erro de conexão 40914 está relacionado às regras de rede virtual, conforme especificado no painel Firewall no portal do Azure.Connection error 40914 relates to virtual network rules, as specified on the Firewall pane in the Azure portal. O erro 40615 é semelhante, exceto pelo fato de que ele está relacionado às regras de endereço IP no firewall.Error 40615 is similar, except it relates to IP address rules on the firewall.

Erro 40914Error 40914

Texto da mensagem: "Não é possível abrir o servidor '[nome-do-servidor]' solicitado pelo logon.Message text: "Cannot open server '[server-name]' requested by the login. O cliente não tem permissão para acessar o servidor. "Client is not allowed to access the server."

Descrição do erro: o cliente está em uma sub-rede que tem pontos de extremidade de servidor de rede virtual.Error description: The client is in a subnet that has virtual network server endpoints. Mas o servidor não tem nenhuma regra de rede virtual que conceda à sub-rede o direito de se comunicar com o banco de dados.But the server has no virtual network rule that grants to the subnet the right to communicate with the database.

Resolução de erro: No painel Firewall do portal do Azure, use o controle de regras de rede virtual para Adicionar uma regra de rede virtual para a sub-rede.Error resolution: On the Firewall pane of the Azure portal, use the virtual network rules control to add a virtual network rule for the subnet.

Erro 40615Error 40615

Texto da mensagem: "Não é possível abrir {0} o servidor ' ' solicitado pelo logon.Message text: "Cannot open server '{0}' requested by the login. O cliente com o endereço IP ' {1} ' não tem permissão para acessar o servidor. "Client with IP address '{1}' is not allowed to access the server."

Descrição do erro: O cliente está tentando se conectar de um endereço IP que não está autorizado a se conectar ao servidor.Error description: The client is trying to connect from an IP address that isn't authorized to connect to the server. O Firewall do servidor não tem nenhuma regra de endereço IP que permita que um cliente se comunique do endereço IP fornecido ao banco de dados.The server firewall has no IP address rule that allows a client to communicate from the given IP address to the database.

Resolução de erro: digite o endereço IP do cliente como uma regra de IP.Error resolution: Enter the client's IP address as an IP rule. Use o painel Firewall no portal do Azure para realizar essa etapa.Use the Firewall pane in the Azure portal to do this step.

Usar o portal para criar uma regra de rede virtualUse the portal to create a virtual network rule

Esta seção ilustra como você pode usar o portal do Azure para criar uma regra de rede virtual em seu banco de dados no banco de dados SQL.This section illustrates how you can use the Azure portal to create a virtual network rule in your database in SQL Database. A regra diz ao banco de dados para aceitar a comunicação de uma determinada sub-rede que foi marcada como um ponto de extremidade de serviço de rede virtual.The rule tells your database to accept communication from a particular subnet that's been tagged as being a virtual network service endpoint.

Observação

Se você pretende adicionar um ponto de extremidade de serviço às regras de firewall de rede virtual do seu servidor, primeiro verifique se os pontos de extremidade de serviço estão ativados para a sub-rede.If you intend to add a service endpoint to the virtual network firewall rules of your server, first ensure that service endpoints are turned on for the subnet.

Se os pontos de extremidade de serviço não estiverem ativados para a sub-rede, o portal solicitará que você os habilite.If service endpoints aren't turned on for the subnet, the portal asks you to enable them. Selecione o botão habilitar no mesmo painel no qual você adiciona a regra.Select the Enable button on the same pane on which you add the rule.

Alternativa do PowerShellPowerShell alternative

Um script também pode criar regras de rede virtual usando o cmdlet do PowerShell New-AzSqlServerVirtualNetworkRule ou AZ Network vnet Create.A script can also create virtual network rules by using the PowerShell cmdlet New-AzSqlServerVirtualNetworkRule or az network vnet create. Se você estiver interessado, consulte PowerShell para criar um ponto de extremidade de serviço de rede virtual e uma regra para o banco de dados SQL.If you're interested, see PowerShell to create a virtual network service endpoint and rule for SQL Database.

Alternativa de API RESTREST API alternative

Internamente, os cmdlets do PowerShell para ações de rede virtual do SQL chamam APIs REST.Internally, the PowerShell cmdlets for SQL virtual network actions call REST APIs. É possível chamar as APIs REST diretamente.You can call the REST APIs directly.

Pré-requisitosPrerequisites

Você já deve ter uma sub-rede marcada com o nome específico do tipo de ponto de extremidade de serviço de rede virtual relevante para o banco de dados SQL.You must already have a subnet that's tagged with the particular virtual network service endpoint type name relevant to SQL Database.

etapas do portal do AzureAzure portal steps

  1. Entre no portal do Azure.Sign in to the Azure portal.

  2. Procure e selecione servidores SQL e, em seguida, selecione o servidor.Search for and select SQL servers, and then select your server. Em segurança, selecione firewalls e redes virtuais.Under Security, select Firewalls and virtual networks.

  3. Defina permitir acesso aos serviços do Azure como desativado.Set Allow access to Azure services to OFF.

    Importante

    Se você deixar o controle definido como ativado, o servidor aceitará a comunicação de qualquer sub-rede dentro do limite do Azure.If you leave the control set to ON, your server accepts communication from any subnet inside the Azure boundary. Essa é a comunicação que se origina de um dos endereços IP que são reconhecidos como aqueles dentro de intervalos definidos para os data centers do Azure.That is communication that originates from one of the IP addresses that's recognized as those within ranges defined for Azure datacenters. Deixar o controle definido como on pode ser o acesso excessivo de um ponto de vista de segurança.Leaving the control set to ON might be excessive access from a security point of view. O recurso de ponto de extremidade de serviço Rede Virtual do Microsoft Azure em coordenação com o recurso de regras de rede virtual do banco de dados SQL pode reduzir sua área de superfície de segurança.The Microsoft Azure Virtual Network service endpoint feature in coordination with the virtual network rules feature of SQL Database together can reduce your security surface area.

  4. Selecione + Adicionar existente na seção redes virtuais .Select + Add existing in the Virtual networks section.

    Captura de tela que mostra a seleção de + adicionar existente (ponto de extremidade de sub-rede, como uma regra SQL).

  5. No novo painel criar/atualizar , preencha as caixas com os nomes dos recursos do Azure.In the new Create/Update pane, fill in the boxes with the names of your Azure resources.

    Dica

    Você deve incluir o prefixo de endereço correto para sua sub-rede.You must include the correct address prefix for your subnet. Você pode encontrar o valor do prefixo de endereço no Portal.You can find the Address prefix value in the portal. Ir para todos os recursos > todos os tipos > redes virtuais.Go to All resources > All types > Virtual networks. O filtro exibe suas redes virtuais.The filter displays your virtual networks. Selecione sua rede virtual e, em seguida, selecione sub-redes.Select your virtual network, and then select Subnets. A coluna intervalo de endereços tem o prefixo de endereço de que você precisa.The ADDRESS RANGE column has the address prefix you need.

    Captura de tela que mostra o preenchimento em caixas para a nova regra.

  6. Selecione o botão OK próximo à parte inferior do painel.Select the OK button near the bottom of the pane.

  7. Consulte a regra de rede virtual resultante no painel Firewall .See the resulting virtual network rule on the Firewall pane.

    Captura de tela que mostra a nova regra no painel Firewall.

Observação

O status ou os estados a seguir se aplicam às regras:The following statuses or states apply to the rules:

  • Pronto: indica que a operação iniciada foi bem-sucedida.Ready: Indicates that the operation you initiated has succeeded.
  • Falha: indica que a operação iniciada falhou.Failed: Indicates that the operation you initiated has failed.
  • Excluído: aplica-se somente à operação de exclusão e indica que a regra foi excluída e não se aplica mais.Deleted: Only applies to the Delete operation and indicates that the rule has been deleted and no longer applies.
  • Em andamento: indica que a operação está em andamento.InProgress: Indicates that the operation is in progress. A regra antiga é aplicável enquanto a operação está nesse estado.The old rule applies while the operation is in this state.

Próximas etapasNext steps