Indexerareanslutningar till en SQL Server-instans på en virtuell Azure-dator

När du konfigurerar en Azure SQL-indexerare för att extrahera innehåll från en databas på en virtuell Azure-dator krävs ytterligare steg för säkra anslutningar.

En anslutning från Azure AI Search till SQL Server-instansen på en virtuell dator är en offentlig Internetanslutning. För att säkra anslutningar ska lyckas måste du uppfylla följande krav:

  • Hämta ett certifikat från en certifikatutfärdare för det fullständigt kvalificerade domännamnet för SQL Server-instansen på den virtuella datorn.

  • Installera certifikatet på den virtuella datorn.

När du har installerat certifikatet på den virtuella datorn är du redo att slutföra följande steg i den här artikeln.

Kommentar

Always Encrypted-kolumner stöds för närvarande inte av Azure AI Search-indexerare.

Aktivera krypterade anslutningar

Azure AI Search kräver en krypterad kanal för alla indexeringsbegäranden via en offentlig Internetanslutning. I det här avsnittet visas stegen för att få det här att fungera.

  1. Kontrollera certifikatets egenskaper för att kontrollera att ämnesnamnet är det fullständigt kvalificerade domännamnet (FQDN) för den virtuella Azure-datorn.

    Du kan använda ett verktyg som CertUtils eller snapin-modulen Certifikat för att visa egenskaperna. Du kan hämta FQDN från avsnittet Essentials för vm-tjänsten i fältet Offentlig IP-adress/DNS-namnetikett i Azure-portalen.

    FQDN är vanligtvis formaterat som <your-VM-name>.<region>.cloudapp.azure.com

  2. Konfigurera SQL Server för att använda certifikatet med hjälp av Registereditorn (regedit).

    Även om Konfigurationshanteraren för SQL Server ofta används för den här uppgiften kan du inte använda den i det här scenariot. Det kommer inte att hitta det importerade certifikatet eftersom FQDN för den virtuella datorn i Azure inte matchar det fullständiga domännamnet som bestäms av den virtuella datorn (den identifierar domänen som antingen den lokala datorn eller nätverksdomänen som den är ansluten till). När namn inte matchar använder du regedit för att ange certifikatet.

    1. I regedit bläddrar du till den här registernyckeln: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\[MSSQL13.MSSQLSERVER]\MSSQLServer\SuperSocketNetLib\Certificate.

      Delen [MSSQL13.MSSQLSERVER] varierar beroende på version och instansnamn.

    2. Ange värdet för certifikatnyckeln till tumavtrycket (utan blanksteg) för TLS/SSL-certifikatet som du importerade till den virtuella datorn.

    Det finns flera sätt att få tumavtrycket, vissa bättre än andra. Om du kopierar det från snapin-modulen Certifikat i MMC får du förmodligen ett osynligt inledande tecken enligt beskrivningen i den här supportartikeln, vilket resulterar i ett fel när du försöker ansluta. Det finns flera lösningar för att åtgärda problemet. Det enklaste är att backspace över och sedan skriva om det första tecknet i tumavtrycket för att ta bort det inledande tecknet i nyckelvärdefältet i regedit. Du kan också använda ett annat verktyg för att kopiera tumavtrycket.

  3. Bevilja behörigheter till tjänstkontot.

    Kontrollera att SQL Server-tjänstkontot har beviljats lämplig behörighet för den privata nyckeln för TLS/SSL-certifikatet. Om du förbiser det här steget startar inte SQL Server. Du kan använda snapin-modulen Certifikat eller CertUtils för den här uppgiften.

  4. Starta om SQL Server-tjänsten.

Anslut till SQL Server

När du har konfigurerat den krypterade anslutning som krävs av Azure AI Search ansluter du till instansen via dess offentliga slutpunkt. I följande artikel förklaras anslutningskraven och syntaxen:

Konfigurera nätverkssäkerhetsgruppen

Det är inte ovanligt att konfigurera nätverkssäkerhetsgruppen och motsvarande Azure-slutpunkt eller åtkomstkontrollista (ACL) för att göra din virtuella Azure-dator tillgänglig för andra parter. Chansen är stor att du har gjort det tidigare för att tillåta din egen programlogik att ansluta till din virtuella SQL Azure-dator. Det är inte annorlunda för en Azure AI Search-anslutning till din virtuella SQL Azure-dator.

Länkarna nedan innehåller instruktioner om NSG-konfiguration för VM-distributioner. Använd dessa instruktioner för att ACL en söktjänstslutpunkt baserat på dess IP-adress.

  1. Hämta IP-adressen för din söktjänst. Se följande avsnitt för instruktioner.

  2. Lägg till IP-adressen för sökning i IP-filterlistan för säkerhetsgruppen. I någon av följande artiklar beskrivs stegen:

IP-adressering kan innebära några utmaningar som enkelt kan lösas om du är medveten om problemet och potentiella lösningar. De återstående avsnitten innehåller rekommendationer för hantering av problem som rör IP-adresser i ACL.

Vi rekommenderar starkt att du begränsar åtkomsten till IP-adressen för din söktjänst och IP-adressintervallet AzureCognitiveSearchför tjänsttaggen i ACL i stället för att göra dina virtuella SQL Azure-datorer öppna för alla anslutningsbegäranden.

Du kan ta reda på IP-adressen genom att pinga FQDN (till exempel <your-search-service-name>.search.windows.net) för din söktjänst. Även om det är möjligt att söktjänstens IP-adress ändras är det osannolikt att den ändras. IP-adressen tenderar att vara statisk under tjänstens livslängd.

Du kan ta reda på IP-adressintervallet för tjänsttaggen med hjälp av nedladdningsbara JSON-filer eller via API:et för identifiering av AzureCognitiveSearchtjänsttaggar. IP-adressintervallet uppdateras varje vecka.

Inkludera IP-adresser för Azure AI Search-portalen

Om du använder Azure-portalen för att skapa en indexerare måste du ge portalen inkommande åtkomst till din virtuella SQL Azure-dator. En regel för inkommande trafik i brandväggen kräver att du anger IP-adressen för portalen.

Om du vill hämta portalens IP-adress pingar stamp2.ext.search.windows.netdu , som är domänen för trafikhanteraren. Begäran överskrider tidsgränsen, men IP-adressen visas i statusmeddelandet. I meddelandet "Pinging azsyrie.northcentralus.cloudapp.azure.com [52.252.175.48]" i meddelandet "Pinging azsyrie.northcentralus.cloudapp.azure.com [52.252.175.48".

Kluster i olika regioner ansluter till olika trafikhanterare. Oavsett domännamnet är IP-adressen som returneras från pingen den rätta att använda när du definierar en inkommande brandväggsregel för Azure-portalen i din region.

Nästa steg

Med konfigurationen ur vägen kan du nu ange en SQL Server på en virtuell Azure-dator som datakälla för en Azure AI Search-indexerare. Mer information finns i Indexdata från Azure SQL.