Conexões do indexador com uma instância do SQL Server em uma máquina virtual do Azure
Ao configurar um indexador SQL do Azure para extrair conteúdo de um banco de dados em uma máquina virtual do Azure, etapas adicionais são necessárias para conexões seguras.
Uma conexão da Pesquisa de IA do Azure com a instância do SQL Server em uma máquina virtual é uma conexão pública com a Internet. Para que as conexões seguras sejam bem-sucedidas, execute as seguintes etapas:
Obtenha um certificado de um provedor de Autoridade de Certificação para o nome de domínio totalmente qualificado da instância do SQL Server na máquina virtual.
Instale o certificado na máquina virtual.
Depois de instalar o certificado em sua VM, você estará pronto para concluir as etapas a seguir neste artigo.
Nota
Atualmente, as colunas Sempre Criptografadas não são suportadas pelos indexadores do Azure AI Search.
Habilitar conexões criptografadas
O Azure AI Search requer um canal criptografado para todas as solicitações de indexador em uma conexão pública com a Internet. Esta seção lista as etapas para fazer isso funcionar.
Verifique as propriedades do certificado para verificar se o nome do assunto é o FQDN (nome de domínio totalmente qualificado) da VM do Azure.
Você pode usar uma ferramenta como CertUtils ou o snap-in Certificados para exibir as propriedades. Você pode obter o FQDN na seção Essentials da página de serviço VM, no campo Endereço IP público/rótulo de nome DNS, no portal do Azure.
O FQDN é normalmente formatado como
<your-VM-name>.<region>.cloudapp.azure.com
Configure o SQL Server para usar o certificado usando o Editor do Registro (regedit).
Embora o SQL Server Configuration Manager seja usado com frequência para essa tarefa, você não pode usá-lo para esse cenário. Ele não encontrará o certificado importado porque o FQDN da VM no Azure não corresponde ao FQDN conforme determinado pela VM (ele identifica o domínio como o computador local ou o domínio de rede ao qual ele ingressou). Quando os nomes não corresponderem, use regedit para especificar o certificado.
No regedit, navegue até esta chave do Registro:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\[MSSQL13.MSSQLSERVER]\MSSQLServer\SuperSocketNetLib\Certificate
.A
[MSSQL13.MSSQLSERVER]
parte varia de acordo com a versão e o nome da instância.Defina o valor da chave Certificate para a impressão digital (sem espaços) do certificado TLS/SSL importado para a VM.
Existem várias maneiras de obter a impressão digital, algumas melhores do que outras. Se você copiá-lo do snap-in Certificados no MMC, poderá escolher um caractere principal invisível conforme descrito neste artigo de suporte, o que resulta em um erro ao tentar uma conexão. Existem várias soluções alternativas para corrigir esse problema. O mais fácil é retroceder e, em seguida, redigitar o primeiro caractere da impressão digital para remover o caractere principal no campo de valor da chave no regedit. Como alternativa, você pode usar uma ferramenta diferente para copiar a impressão digital.
Conceda permissões à conta de serviço.
Verifique se a conta de serviço do SQL Server recebeu a permissão apropriada na chave privada do certificado TLS/SSL. Se você ignorar esta etapa, o SQL Server não será iniciado. Você pode usar o snap-in Certificados ou CertUtils para esta tarefa.
Reinicie o serviço do SQL Server.
Ligar ao SQL Server
Depois de configurar a conexão criptografada exigida pelo Azure AI Search, conecte-se à instância por meio de seu ponto de extremidade público. O artigo a seguir explica os requisitos de conexão e a sintaxe:
Configurar o grupo de segurança de rede
É uma prática recomendada configurar o NSG (grupo de segurança de rede) e o ponto de extremidade do Azure correspondente ou a Lista de Controle de Acesso (ACL) para tornar sua VM do Azure acessível a outras partes. É provável que você já tenha feito isso antes para permitir que sua própria lógica de aplicativo se conecte à sua VM do SQL Azure. Não é diferente para uma conexão do Azure AI Search com sua VM do SQL Azure.
As etapas e links a seguir fornecem instruções sobre a configuração do NSG para implantações de VM. Use estas instruções para ACL um ponto de extremidade de serviço de pesquisa com base em seu endereço IP.
Obtenha o endereço IP do seu serviço de pesquisa. Consulte a secção seguinte para obter instruções.
Adicione o endereço IP de pesquisa à lista de filtros IP do grupo de segurança. Um dos seguintes artigos explica as etapas:
O endereçamento IP pode representar alguns desafios que são facilmente superados se você estiver ciente do problema e das possíveis soluções alternativas. As seções restantes fornecem recomendações para lidar com problemas relacionados a endereços IP na ACL.
Restringir o acesso à rede ao Azure AI Search
É altamente recomendável restringir o acesso ao endereço IP do seu serviço de pesquisa e ao intervalo de endereços IP da marca de serviço na ACL em vez de tornar suas VMs do AzureCognitiveSearch
SQL Azure abertas a todas as solicitações de conexão.
Você pode descobrir o endereço IP fazendo ping no FQDN (por exemplo, <your-search-service-name>.search.windows.net
) do seu serviço de pesquisa. Embora seja possível que o endereço IP do serviço de pesquisa mude, é improvável que ele mude. O endereço IP tende a ser estático durante o tempo de vida do serviço.
Você pode descobrir o intervalo de endereços IP da etiqueta de serviço usando arquivos JSON para download ou por meio da API de descoberta de AzureCognitiveSearch
marca de serviço. O intervalo de endereços IP é atualizado semanalmente.
Incluir os endereços IP do portal do Azure
Se você estiver usando o portal do Azure para criar um indexador, deverá conceder ao portal do Azure acesso de entrada à sua máquina virtual do SQL Azure. Uma regra de entrada no firewall exige que você forneça o endereço IP do portal do Azure.
Para obter o endereço IP do portal do Azure, ping stamp2.ext.search.windows.net
, que é o domínio do gerenciador de tráfego. A solicitação expira, mas o endereço IP é visível na mensagem de status. Por exemplo, na mensagem "Pinging azsyrie.northcentralus.cloudapp.azure.com [52.252.175.48]", o endereço IP é "52.252.175.48".
Clusters em diferentes regiões se conectam a diferentes gerentes de tráfego. Independentemente do nome de domínio, o endereço IP retornado do ping é o correto a ser usado ao definir uma regra de firewall de entrada para o portal do Azure em sua região.
Complemente a segurança da rede com autenticação de token
Firewalls e segurança de rede são um primeiro passo para impedir o acesso não autorizado a dados e operações. A autorização deve ser o seu próximo passo.
Recomendamos o acesso baseado em função, onde os usuários e grupos do Microsoft Entra ID são atribuídos a funções que determinam o acesso de leitura e gravação ao seu serviço. Consulte Conectar-se à Pesquisa de IA do Azure usando controles de acesso baseados em função para obter uma descrição das funções internas e instruções para criar funções personalizadas.
Se você não precisar de autenticação baseada em chave, recomendamos desativar as chaves de API e usar atribuições de função exclusivamente.
Próximos passos
Com a configuração fora do caminho, agora você pode especificar um SQL Server na VM do Azure como a fonte de dados para um indexador do Azure AI Search. Para obter mais informações, consulte Dados de índice do Azure SQL.