Service-eindpunten en -regels voor virtuele netwerken gebruiken voor servers in Azure SQL Database

Van toepassing op:Azure SQL Database

Virtuele netwerkregels zijn een firewallbeveiligingsfunctie die bepaalt of de server voor je databases en elastische pools in Azure SQL Database communicatie accepteert die vanuit bepaalde subnetten in virtuele netwerken wordt verzonden. Dit artikel legt uit waarom virtuele netwerkregels soms de beste optie zijn om veilig communicatie met je database in SQL Database mogelijk te maken.

Notitie

In dit artikel verwijst server naar de logische server die databases host in de Azure SQL Database.

Als u een regel voor een virtueel netwerk wilt maken, moet er eerst een service-eindpunt van het virtuele netwerk zijn waarnaar de regel moet verwijzen.

Notitie

Microsoft Entra ID voorheen Azure Active Directory (Azure AD) werd genoemd.

Een regel voor een virtueel netwerk maken

Als u alleen een regel voor een virtueel netwerk wilt maken, kunt u verdergaan met de stappen en uitleg verderop in dit artikel.

Details over regels voor virtuele netwerken

In deze sectie worden verschillende details over regels voor virtuele netwerken beschreven.

Slechts één geografische regio

Elk service-eindpunt voor een virtueel netwerk is van toepassing op slechts één Azure-regio. Met het eindpunt kunnen andere regio's geen communicatie van het subnet accepteren.

Elke regel voor een virtueel netwerk is beperkt tot de regio waarop het onderliggende eindpunt van toepassing is.

Serverniveau, niet databaseniveau

Elke regel voor een virtueel netwerk is van toepassing op de hele server, niet alleen op één bepaalde database op de server. Met andere woorden, regels voor virtuele netwerken zijn van toepassing op serverniveau, niet op databaseniveau.

Ip-regels kunnen daarentegen op beide niveaus worden toegepast.

Beveiligingsbeheerrollen

Er is een scheiding van beveiligingsrollen in het beheer van service-eindpunten voor virtuele netwerken. Actie is vereist voor elk van de volgende rollen:

  • netwerkbeheerder (rol Netwerkbijdrager): het eindpunt inschakelen.
  • Databasebeheerder (sql Server-inzender rol): De toegangsbeheerlijst (ACL) bijwerken om het opgegeven subnet toe te voegen aan de server.

Alternatief voor Azure RBAC

De rollen netwerkbeheerder en databasebeheerder hebben meer mogelijkheden dan nodig zijn voor het beheren van regels voor virtuele netwerken. Je hebt slechts een deel van hun capaciteiten nodig.

Je kunt rolgebaseerde toegangscontrole (RBAC) in Azure gebruiken om één aangepaste rol te creëren die alleen de noodzakelijke subset van mogelijkheden heeft. Je kunt de aangepaste rol gebruiken in plaats van de netwerkbeheerder of de databasebeheerder erbij te betrekken. Je beveiligingsblootstellingsoppervlak is kleiner als je een gebruiker toevoegt aan een aangepaste rol dan wanneer je de gebruiker toevoegt aan de andere twee grote beheerdersrollen.

Notitie

In sommige gevallen bevinden de database in SQL Database en het subnet van het virtuele netwerk zich in verschillende abonnementen. In deze gevallen moet u de volgende configuraties controleren:

  • De gebruiker heeft de vereiste machtigingen voor het initiëren van bewerkingen, zoals het inschakelen van service-eindpunten en het toevoegen van een subnet van een virtueel netwerk aan de opgegeven server.
  • Bij beide abonnementen is de Microsoft.Sql aanbieder geregistreerd.

Beperkingen

Voor SQL Database heeft de functie regels voor virtuele netwerken de volgende beperkingen:

  • In de firewall voor uw database in SQL Database verwijst elke regel voor een virtueel netwerk naar een subnet. Je moet al deze verwezen subnetten hosten in dezelfde geografische regio waar de database wordt gehost.
  • Elke server kan maximaal 128 ACL-vermeldingen hebben voor elk virtueel netwerk.
  • Regels voor virtuele netwerken zijn alleen van toepassing op virtuele Netwerken van Azure Resource Manager en niet op klassiek implementatiemodel netwerken.
  • Op de firewall gelden IP-adresbereiken voor de volgende netwerkitems, maar virtuele netwerkregels niet:
  • Beide abonnementen moeten zich in dezelfde Microsoft Entra-tenant bevinden.

Overwegingen bij het gebruik van service-eindpunten

Wanneer u service-eindpunten voor SQL Database gebruikt, bekijkt u de volgende overwegingen:

  • Voor uitgaand verkeer naar de openbare IP-adressen van Azure SQL Database is vereist. Je moet netwerkbeveiligingsgroepen (NSG's) openen voor SQL Database IP's om connectiviteit mogelijk te maken. U kunt dit doen met behulp van NSG-servicetags voor SQL Database.

ExpressRoute

Als u ExpressRoute vanaf uw locatie gebruikt, voor publieke peering of Microsoft-peering, moet u de gebruikte NAT-IP-adressen identificeren. Voor openbare peering gebruikt elk ExpressRoute-circuit standaard twee NAT IP-adressen die worden toegepast op Azure-serviceverkeer wanneer het verkeer de Microsoft Azure-netwerk-backbone binnenkomt. Voor Microsoft-peering levert de klant of de dienstverlener de gebruikte NAT-IP-adressen. Als u toegang tot uw serviceresources wilt toestaan, moet u deze openbare IP-adressen toestaan in de ip-firewallinstelling van de resource. Als u de IP-adressen van uw ExpressRoute-circuit voor openbare peering wilt vinden, open een ondersteuningsticket voor ExpressRoute via Azure Portal. Zie NAT-vereisten voor openbare ExpressRoute- en Microsoft-peeringvoor meer informatie over NAT voor openbare en Microsoft-peering.

Als u communicatie van uw circuit naar SQL Database wilt toestaan, moet u IP-netwerkregels maken voor de openbare IP-adressen van uw NAT.

Impact van het gebruik van service-eindpunten voor virtuele netwerken met Azure Storage

Azure Storage ondersteunt virtuele netwerkservice-endpoints die de connectiviteit beperken tot een opslagaccount. Als SQL Database een account met deze configuratie gebruikt, bekijk dan de impact op blob-auditing.

Azure SQL Database auditing to blob storage

Azure SQL-controle kan SQL-auditlogboeken schrijven naar uw eigen opslagaccount. Als dit opslagaccount gebruikmaakt van de service-eindpuntenfunctie van het virtuele netwerk, raadpleegt u hoe u een audit kunt schrijven naar een opslagaccount achter VNet en firewall.

Een firewallregel voor een virtueel netwerk toevoegen aan uw server

Voordat deze functie werd verbeterd, moest je virtuele netwerkservice-endpoints inschakelen voordat je een live virtuele netwerkregel in de firewall kon implementeren. De eindpunten hebben een bepaald subnet van een virtueel netwerk gerelateerd aan een database in SQL Database. Vanaf januari 2018 kun je deze eis omzeilen door de IgnoreMissingVNetServiceEndpoint vlag te zetten. U kunt nu een firewallregel voor een virtueel netwerk toevoegen aan uw server zonder service-eindpunten voor virtuele netwerken in te schakelen.

Het instellen van een firewallregel helpt niet om de server te beveiligen. U moet ook service-eindpunten voor virtuele netwerken inschakelen om de beveiliging van kracht te laten worden. Wanneer u service-eindpunten inschakelt, ondervindt het subnet van het virtuele netwerk downtime totdat de overgang van uitgeschakeld naar aan is voltooid. Deze periode van downtime geldt met name in de context van grote virtuele netwerken. Je kunt de IgnoreMissingVNetServiceEndpoint vlag gebruiken om de stilstand tijdens de overgang te verminderen of te elimineren.

Je kunt de IgnoreMissingVNetServiceEndpoint vlag instellen met PowerShell. Zie PowerShell voor het maken van een service-eindpunt en regel voor een virtueel netwerk voor SQL Databasevoor meer informatie.

Azure Portal gebruiken om een regel voor een virtueel netwerk te maken

In deze sectie ziet u hoe u de Azure Portal kunt gebruiken om een regel voor virtuele netwerken te maken in uw database in SQL Database. De regel vertelt je database om communicatie te accepteren van een bepaald subnet dat je als service-eindpunt voor virtueel netwerk hebt getagd.

Notitie

Om een service-endpoint toe te voegen aan de virtuele netwerk-firewallregels van je server, zorg je er eerst voor dat service-endpoints voor het subnet zijn ingeschakeld.

Als service-eindpunten niet zijn ingeschakeld voor het subnet, wordt u door de portal gevraagd deze in te schakelen. Selecteer de knop Inschakelen in hetzelfde deelvenster waarop u de regel toevoegt.

Voorwaarden

U moet al een subnet hebben dat is gelabeld met het specifieke service-eindpunt van het virtuele netwerk typenaam relevant voor SQL Database.

Stappen in Azure Portal

  1. Meld u aan bij de Azure Portal.

  2. Zoek en selecteer SQL-servers, en kies vervolgens uw server. Selecteer onder de secties Securityen Networking.

  3. Controleer op het tabblad Openbare toegang of Openbare netwerktoegang is ingesteld op Netwerken selecteren, anders zijn de Virtuele netwerken-instellingen verborgen. Selecteer + Bestaand virtueel netwerk toevoegen in de sectie Virtuele netwerken.

    Schermopname van de eigenschappen van logische servers voor netwerken.

  4. In het nieuwe deelvenster maken/bijwerken vult u de vakken in met de namen van uw Azure-resources.

    Tip

    U moet het juiste adresvoorvoegsel voor uw subnet opnemen. U vindt het adresvoorvoegsel met de waarde in het portal. Ga naar Alle resources>Alle typen>Virtuele Netwerken. Het filter geeft uw virtuele netwerken weer. Selecteer uw virtuele netwerk en selecteer vervolgens Subnetten. De kolom ADRESBEREIK bevat het adresvoorvoegsel dat u nodig hebt.

    Schermopname van het invullen van vakken voor de nieuwe regel.

  5. Bekijk de resulterende regel voor virtuele netwerken in het deelvenster Firewall.

    Schermopname van de nieuwe regel in het deelvenster Firewall.

  6. Stel in dat Azure-services en -resources toegang hebben tot deze server op Nee.

    Belangrijk

    Als u de optie Toestaan dat Azure-services en -resources toegang hebben tot deze server aangevinkt laat, accepteert uw server communicatie van elk subnet binnen het Azure-netwerk. Die communicatie komt van een van de IP-adressen dat wordt herkend als behorend tot de bereiken die voor Azure-datacenters zijn gedefinieerd. Het is mogelijk dat het ingeschakelde besturingselement te veel toegang heeft vanuit een beveiligingspunt. De service-eindpuntfunctie van Microsoft Azure Virtual Network in coördinatie met de functie regels voor virtuele netwerken van SQL Database kan uw beveiligingsoppervlak verminderen.

  7. Selecteer de knop OK onderaan het deelvenster.

Notitie

De volgende statussen of toestanden zijn van toepassing op de regels:

  • Klaar: Geeft aan dat de bewerking die je hebt gestart is geslaagd.
  • Mislukt: Geeft aan dat de operatie die je hebt gestart is mislukt.
  • Verwijderd: Alleen van toepassing op de Delete operatie en geeft aan dat de regel is verwijderd en niet langer van toepassing is.
  • InProgress: Geeft aan dat de bewerking wordt uitgevoerd. De oude regel is van toepassing terwijl de bewerking deze status heeft.

PowerShell gebruiken om een regel voor een virtueel netwerk te maken

Je kunt een script gebruiken om virtuele netwerkregels te maken door de PowerShell-cmdlet New-AzSqlServerVirtualNetworkRule of az network vnet create te gebruiken. Zie PowerShell voor het maken van een service-eindpunt en regel voor een virtueel netwerk voor SQL Databasevoor meer informatie.

REST API gebruiken om een regel voor een virtueel netwerk te maken

Intern roepen de PowerShell-cmdlets voor acties voor virtuele SQL-netwerken REST API's aan. U kunt de REST API's rechtstreeks aanroepen. Zie Regels voor virtuele netwerken: Bewerkingenvoor meer informatie.

Problemen met foutcodes 40914 en 40615 oplossen

Verbindingsfout 40914 heeft betrekking op regels voor virtuele netwerken, zoals opgegeven in het deelvenster Firewall in Azure Portal.
Fout 40615 is vergelijkbaar, maar heeft betrekking op IP-adresregels op de firewall.

Fout 40914

berichttekst: 'Kan server niet openen'[servernaam]' aangevraagd door de aanmelding. Client heeft geen toegang tot de server.

Beschrijving van fout: De client bevindt zich in een subnet met servereindpunten voor virtuele netwerken. Maar de server heeft geen virtuele netwerkregel die het subnet het recht geeft om met de database te communiceren.

Foutoplossing: Gebruik in het deelvenster Firewall van Azure Portal het besturingselement regels voor virtuele netwerken om een regel voor een virtueel netwerk toe te voegen voor het subnet.

Fout 40615

berichttekst: 'Kan server niet openen '{0}' aangevraagd door de aanmelding. Client met IP-adres '{1}' heeft geen toegang tot de server.'

Beschrijving van fout: De client probeert verbinding te maken vanaf een IP-adres dat niet is geautoriseerd om verbinding te maken met de server. De serverfirewall heeft geen IP-adresregel waarmee een client kan communiceren van het opgegeven IP-adres naar de database.

Foutoplossing: voer het IP-adres van de klant in als een IP-regel. Gebruik het Firewall-paneel in het Azure-portaal om deze stap te voltooien.

Virtual network service endpoints for Azure Synapse Analytics

Voor meer informatie, zie Virtual network service endpoints and rules for Azure Synapse Analytics.