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 extra 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. Utför följande steg för att säkra anslutningar ska lyckas:
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.
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änstsidan i fältet Offentlig IP-adress/DNS-namnetikett i Azure Portal.
FQDN är vanligtvis formaterat som
<your-VM-name>.<region>.cloudapp.azure.com
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.
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.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 kan du hämta 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.
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.
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 bästa praxis att konfigurera nätverkssäkerhetsgruppen (NSG) 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.
Följande steg och länkar 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.
Hämta IP-adressen för din söktjänst. Se följande avsnitt för instruktioner.
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.
Begränsa nätverksåtkomsten till Azure AI Search
Vi rekommenderar starkt att du begränsar åtkomsten till IP-adressen för din söktjänst och IP-adressintervallet AzureCognitiveSearch
fö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 AzureCognitiveSearch
tjänsttaggar. IP-adressintervallet uppdateras varje vecka.
Ta med Azure Portal IP-adresser
Om du använder Azure Portal 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.net
du , som är domänen för trafikhanteraren. Tidsgränsen för begäran uppnås, 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 Portal i din region.
Komplettera nätverkssäkerhet med tokenautentisering
Brandväggar och nätverkssäkerhet är ett första steg för att förhindra obehörig åtkomst till data och åtgärder. Auktorisering bör vara nästa steg.
Vi rekommenderar rollbaserad åtkomst, där Användare och grupper för Microsoft Entra-ID tilldelas till roller som avgör läs- och skrivåtkomst till din tjänst. Se Ansluta till Azure AI Search med hjälp av rollbaserade åtkomstkontroller för en beskrivning av inbyggda roller och instruktioner för att skapa anpassade roller.
Om du inte behöver nyckelbaserad autentisering rekommenderar vi att du inaktiverar API-nycklar och använder rolltilldelningar exklusivt.
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.