Använda tjänstslutpunkter för virtuellt nätverk och regler för Azure Database for MySQL

GÄLLER FÖR: Azure Database for MySQL – enskild server

Viktigt!

Azure Database for MySQL – enskild server är på väg att dras tillbaka. Vi rekommenderar starkt att du uppgraderar till en flexibel Azure Database for MySQL-server. Mer information om hur du migrerar till en flexibel Azure Database for MySQL-server finns i Vad händer med Azure Database for MySQL – enskild server?

Regler för virtuellt nätverk är en brandväggssäkerhetsfunktion som styr om din Azure Database for MySQL-server accepterar kommunikation som skickas från vissa undernät i virtuella nätverk. Den här artikeln förklarar varför regeln för virtuellt nätverk ibland är det bästa alternativet för att på ett säkert sätt tillåta kommunikation till din Azure Database for MySQL-server.

Om du vill skapa en regel för virtuellt nätverk måste det först finnas ett virtuellt nätverk (VNet) och en tjänstslutpunkt för virtuellt nätverk som regeln ska referera till.

Kommentar

Den här funktionen är tillgänglig i alla regioner i Azure där Azure Database for MySQL distribueras för Generell användning- och minnesoptimerade servrar. Om det gäller VNet-peering, om trafiken flödar via en gemensam VNet-gateway med tjänstslutpunkter och ska flöda till peer-servern, skapar du en ACL/VNet-regel som gör att Azure Virtual Machines i det virtuella gatewaynätverket får åtkomst till Azure Database for MySQL-servern.

Du kan också överväga att använda Private Link för anslutningar. Private Link tillhandahåller en privat IP-adress i ditt virtuella nätverk för Azure Database for MySQL-servern.

Terminologi och beskrivning

Virtuellt nätverk: Du kan ha virtuella nätverk associerade med din Azure-prenumeration.

Undernät: Ett virtuellt nätverk innehåller undernät. Alla virtuella Azure-datorer som du har tilldelats till undernät. Ett undernät kan innehålla flera virtuella datorer eller andra beräkningsnoder. Beräkningsnoder som ligger utanför det virtuella nätverket kan inte komma åt ditt virtuella nätverk om du inte konfigurerar säkerheten för att tillåta åtkomst.

Tjänstslutpunkt för virtuellt nätverk: En tjänstslutpunkt för virtuellt nätverk är ett undernät vars egenskapsvärden innehåller ett eller flera formella Namn på Azure-tjänsttyp. I den här artikeln är vi intresserade av typnamnet Microsoft.Sql, som refererar till Azure-tjänsten med namnet SQL Database. Den här tjänsttaggen gäller även för Tjänsterna Azure Database for MySQL och PostgreSQL. Det är viktigt att observera att när du tillämpar microsoft.Sql-tjänsttaggen på en VNet-tjänstslutpunkt konfigureras tjänstslutpunktstrafik för alla Azure SQL Database-, Azure Database for MySQL- och Azure Database for PostgreSQL-servrar i undernätet.

Regel för virtuellt nätverk: En regel för virtuellt nätverk för din Azure Database for MySQL-server är ett undernät som visas i åtkomstkontrollistan (ACL) för din Azure Database for MySQL-server. Om du vill vara i ACL:en för din Azure Database for MySQL-server måste undernätet innehålla namnet på typen Microsoft.Sql .

En regel för virtuellt nätverk instruerar din Azure Database for MySQL-server att acceptera kommunikation från varje nod som finns i undernätet.

Fördelar med en regel för virtuellt nätverk

Innan du vidtar åtgärder kan de virtuella datorerna i dina undernät inte kommunicera med din Azure Database for MySQL-server. En åtgärd som upprättar kommunikationen är att skapa en regel för virtuellt nätverk. Grunderna för att välja VNet-regelmetoden kräver en jämförelse-och-kontrast-diskussion som involverar de konkurrerande säkerhetsalternativ som erbjuds av brandväggen.

A. Tillåt åtkomst till Azure-tjänster

Fönstret Anslutningssäkerhet har en ON/OFF-knapp med etiketten Tillåt åtkomst till Azure-tjänster. Inställningen tillåter kommunikation från alla Azure IP-adresser och alla Azure-undernät. Dessa Azure-IP-adresser eller undernät kanske inte ägs av dig. Den här INSTÄLLNINGEN PÅ är förmodligen mer öppen än du vill att Azure Database for MySQL Database ska vara. Funktionen för regel för virtuellt nätverk ger mycket finare detaljerad kontroll.

B. IP-regler

Med Azure Database for MySQL-brandväggen kan du ange IP-adressintervall från vilka kommunikationer accepteras i Azure Database for MySQL Database. Den här metoden passar bra för stabila IP-adresser som ligger utanför det privata Azure-nätverket. Men många noder i det privata Azure-nätverket konfigureras med dynamiska IP-adresser. Dynamiska IP-adresser kan ändras, till exempel när den virtuella datorn startas om. Det vore dåraktigt att ange en dynamisk IP-adress i en brandväggsregel i en produktionsmiljö.

Du kan rädda IP-alternativet genom att hämta en statisk IP-adress för den virtuella datorn. Mer information finns i Konfigurera privata IP-adresser för en virtuell dator med hjälp av Azure Portal.

Den statiska IP-metoden kan dock bli svår att hantera, och den är kostsam när den görs i stor skala. Regler för virtuella nätverk är enklare att upprätta och hantera.

Information om regler för virtuellt nätverk

Det här avsnittet beskriver flera detaljer om regler för virtuella nätverk.

Endast en geografisk region

Varje tjänstslutpunkt för virtuellt nätverk gäller endast för en Azure-region. Slutpunkten gör det inte möjligt för andra regioner att acceptera kommunikation från undernätet.

Alla regler för virtuella nätverk är begränsade till den region som dess underliggande slutpunkt gäller för.

Servernivå, inte databasnivå

Varje regel för virtuellt nätverk gäller för hela Azure Database for MySQL-servern, inte bara för en viss databas på servern. Med andra ord gäller regeln för virtuellt nätverk på servernivå, inte på databasnivå.

Roller för säkerhetsadministration

Det finns en uppdelning av säkerhetsroller i administrationen av tjänstslutpunkter för virtuellt nätverk. Åtgärden krävs från var och en av följande roller:

  • Nätverksadministratör: Aktivera slutpunkten.
  • Databasadministratör: Uppdatera åtkomstkontrollistan (ACL) för att lägga till det angivna undernätet till Azure Database for MySQL-servern.

Azure RBAC-alternativ:

Rollerna nätverksadministratör och databasadministratör har fler funktioner än vad som behövs för att hantera regler för virtuella nätverk. Endast en delmängd av deras funktioner behövs.

Du kan välja att använda rollbaserad åtkomstkontroll i Azure (Azure RBAC) i Azure för att skapa en enda anpassad roll som bara har den nödvändiga delmängden av funktionerna. Den anpassade rollen kan användas i stället för att involvera antingen nätverksadministratören eller databasadministratören. Säkerhetsexponeringens yta är lägre om du lägger till en användare i en anpassad roll, jämfört med att lägga till användaren i de andra två större administratörsrollerna.

Kommentar

I vissa fall finns Azure Database for MySQL och VNet-undernätet i olika prenumerationer. I dessa fall måste du se till att följande konfigurationer:

  • Båda prenumerationerna måste finnas i samma Microsoft Entra-klientorganisation.
  • Användaren har de behörigheter som krävs för att initiera åtgärder, till exempel att aktivera tjänstslutpunkter och lägga till ett VNet-undernät till den angivna servern.
  • Kontrollera att både prenumerationen har Microsoft.Sql - och Microsoft.DBforMySQL-resursprovidern registrerad. Mer information finns i resource-manager-registration

Begränsningar

För Azure Database for MySQL har funktionen regler för virtuella nätverk följande begränsningar:

  • En webbapp kan mappas till en privat IP-adress i ett VNet/undernät. Även om tjänstslutpunkter är aktiverade från det angivna virtuella nätverket/undernätet har anslutningar från webbappen till servern en offentlig IP-källa i Azure, inte en VNet-/undernätskälla. Om du vill aktivera anslutning från en webbapp till en server som har VNet-brandväggsregler måste du tillåta att Azure-tjänster får åtkomst till servern på servern.

  • I brandväggen för Azure Database for MySQL refererar varje regel för virtuella nätverk till ett undernät. Alla dessa refererade undernät måste finnas i samma geografiska region som är värd för Azure Database for MySQL.

  • Varje Azure Database for MySQL-server kan ha upp till 128 ACL-poster för ett visst virtuellt nätverk.

  • Regler för virtuellt nätverk gäller endast för virtuella Azure Resource Manager-nätverk. och inte till klassiska distributionsmodellnätverk .

  • Om du aktiverar tjänstslutpunkter för virtuella nätverk till Azure Database for MySQL med hjälp av microsoft.Sql-tjänsttaggen kan du även använda slutpunkterna för alla Azure Database-tjänster: Azure Database for MySQL, Azure Database for PostgreSQL, Azure SQL Database och Azure Synapse Analytics.

  • Stöd för VNet-tjänstslutpunkter är endast för Generell användning- och minnesoptimerade servrar.

  • Om Microsoft.Sql är aktiverat i ett undernät anger det att du bara vill använda VNet-regler för att ansluta. Brandväggsregler som inte är virtuella nätverk för resurser i det undernätet fungerar inte.

  • I brandväggen gäller IP-adressintervall för följande nätverksobjekt, men regler för virtuella nätverk gör det inte:

ExpressRoute

Om ditt nätverk är anslutet till Azure-nätverket via expressroute konfigureras varje krets med två offentliga IP-adresser på Microsoft Edge. De två IP-adresserna används för att ansluta till Microsoft-tjänster, till exempel till Azure Storage, med hjälp av offentlig Azure-peering.

Om du vill tillåta kommunikation från kretsen till Azure Database for MySQL måste du skapa IP-nätverksregler för de offentliga IP-adresserna för dina kretsar. För att hitta de offentliga IP-adresserna för din ExpressRoute-krets öppnar du ett supportärende med ExpressRoute med hjälp av Azure Portal.

Lägga till en VNET-brandväggsregel på servern utan att aktivera VNET-tjänstslutpunkter

Att bara ange en brandväggsregel för virtuella nätverk hjälper inte till att skydda servern till det virtuella nätverket. Du måste också aktivera VNet-tjänstslutpunkter för att säkerheten ska börja gälla. När du aktiverar tjänstslutpunkter, upplever ditt VNet-undernät driftstopp tills övergången har slutförts från Av till . Detta gäller särskilt för stora virtuella nätverk. Du kan använda flaggan IgnoreMissingServiceEndpoint för att minska eller eliminera stilleståndstiden under övergången.

Du kan ange flaggan IgnoreMissingServiceEndpoint med hjälp av Azure CLI eller portalen.

Nästa steg

Artiklar om hur du skapar VNet-regler finns i: