Skydda din Azure SQL-databas

gäller för:Azure SQL Database

Azure SQL Database är en fullt hanterad plattform som tjänst (PaaS)-databasmotor som hanterar de flesta databashanteringsfunktioner, såsom uppgradering, patchning, säkerhetskopiering och övervakning, utan användarens inblandning. Eftersom den ofta lagrar kritisk affärsdata, inklusive kundregister, finansiell information och immateriella rättigheter, är det avgörande att säkra din Azure SQL Database för att skydda mot dataintrång, obehörig åtkomst och överträdelser av efterlevnad.

Den här artikeln ger säkerhetsrekommendationer för att hjälpa till att skydda din Azure SQL Database-installation.

Säkerhetsrekommendationerna i den här artikeln implementerar Nulová dôvera (Zero Trust) principer: "Verifiera explicit", "Använd åtkomst med minst behörighet" och "Anta intrång". Omfattande vägledning om Noll förtroende finns i Vägledningscenter för noll förtroende.

Minska attackytan och minska hoten

Eftersom Azure SQL Database är en hanterad PaaS-motor, förstärker Microsoft operativsystemet och infrastrukturen. Ditt ansvar ligger i att minska den applikations- och datayta som exponeras för attacker samt att upptäcka hot tidigt.

  • Kör SQL-sårbarhetsbedömningar: Använd SQL-sårbarhetsbedömning för att upptäcka, följa och åtgärda potentiella felkonfigurationer och sårbarheter i databasen. Schemalägg återkommande skanningar och agera utifrån den baslinje som upprättas. Mer information finns i SQL-sårbarhetsbedömning.

  • Skydda mot SQL-injektion: Använd parameteriserade frågor och lagrade procedurer i dina applikationer, och koppla aldrig ihop användarinmatning i SQL-satser. SQL-injektion är fortfarande en av de vanligaste attackvektorerna mot databasapplikationer. För mer information, se SQL-injektion.

  • Tillämpa försvar på djupet: Kombinera nätverksisolering, identitetskontroller, dataskydd och övervakning så att ingen enskild kontroll är en enda felpunkt. För mer information, se Playbook för att ta upp vanliga säkerhetskrav.

Nätverkssäkerhet

Nätverkssäkerhet för Azure SQL Database hjälper till att förhindra obehöriga anslutningar och minskar exponeringen för attacker så att endast betrodda källor kan nå dina databaser.

  • Använd privata endpoints: Koppla upp dig mot din Azure SQL Database över privata IP-adresser genom att använda Azure Private Link för att undvika att din databas exponeras mot det publika internet. Privat anslutning minskar attackytan och risken för dataexfiltration. Mer information finns i Azure Private Link för Azure SQL Database.

  • Inaktivera tillgång till offentligt nätverk: När du förlitar dig på privata endpoints, inaktivera public network access helt så att alla anslutningar går via den privata endpointen. Mer information finns i Neka åtkomst till offentligt nätverk.

  • Konfigurera brandväggsregler på servernivå: Kontrollera åtkomst till din logiska server i Azure med IP-brandväggsregler som specificerar vilka adresser eller intervall som kan anslutas, enligt principen om minsta privilegium. Mer information finns i Azure SQL Database och Azure Synapse IP-brandväggsregler.

  • Konfigurera brandväggsregler på databasnivå: För mer detaljerad kontroll, konfigurera databasnivå-brandväggsregler som gäller för enskilda databaser och aktivera åtkomstpolicyer per databas. För mer information, se Databasnivå-IP-brandväggsregler.

  • Begränsa trafiken till specifika virtuella nätverk: Använd virtuella nätverksregler för att tillåta trafik endast från specifika subnät inom dina Azure-virtuella nätverk, vilket lägger till nätverksisolering utöver IP-baserade regler. Mer information finns i Regler för virtuellt nätverk för Azure SQL Database.

  • Sätt minsta TLS-version: Konfigurera den logiska serverns minsta TLS-version till 1.2 eller högre så att anslutningar som använder äldre, svagare protokoll avvisas. För mer information, se Minimum TLS-version.

  • Välj en lämplig anslutningspolicy: Använd proxyanslutningspolicyn när du vill att all trafik ska flöda genom gatewayen på en enda port istället för att exponera utbudet av backend-nodportar, och använd Redirect för lägre latens från Azure. Förstå avvägningarna innan du åsidosätter standarden. Mer information finns i Anslutningsarkitektur för Azure SQL Database.

Identitets- och åtkomsthantering

Starka identitets- och autentiseringskontroller begränsar åtkomsten till dina Azure SQL Database-resurser till auktoriserade användare och applikationer, med centraliserad identitetshantering och enklare kontroll av kontolivscykeln.

Autentisering och kontohantering

  • Konfigurera en Microsoft Entra-administratör: Utse en Microsoft Entra-administratör för din logiska server för att möjliggöra centraliserad identitetshantering och avancerade autentiseringspolicys. Mer information finns i Konfigurera Microsoft Entra-autentisering.

  • Använd Microsoft Entra-autentisering: Föredra Microsoft Entra-autentisering framför SQL-autentisering för centraliserad identitetshantering och tillgång till funktioner som villkorlig åtkomst och multifaktorautentisering. Mer information finns i Microsoft Entra-autentisering.

  • Inaktivera SQL-autentisering när det är möjligt: För maximal säkerhet, kräv att alla anslutningar använder Microsoft Entra-autentisering och stäng av SQL-autentisering, vilket eliminerar risken för svaga eller komprometterade SQL-lösenord. Mer information finns i Endast Microsoft Entra-autentisering.

  • Skapa användare av inneslutna databaser: Koppla innehållna databasanvändare till Microsoft Entra-identiteter eller grupper istället för serverinloggningar när det är möjligt, vilket förenklar behörighetshantering och minskar serveråtkomst. Mer information finns i Oberoende databasanvändare.

  • Upprätthåll multifaktorautentisering: Kräv multifaktorautentisering (MFA) via villkorlig åtkomst för Microsoft Entra-identiteter som administrerar och ansluter till den logiska servern, vilket lägger till ett skyddslager utöver lösenord. För mer information, se Hur multifaktorautentisering fungerar.

  • Tillämpa villkorlig åtkomst: Använd villkorlig åtkomst för att kontrollera åtkomst baserat på användarens plats, enhetsefterlevnad och risk, och ger adaptiv säkerhet för varje åtkomstförsök. Mer information finns i Villkorlig åtkomst.

  • Använd en hanterad identitet för den logiska servern: Tilldela en systemtilldelad eller användartilldelad hanterad identitet till den logiska servern så att den kan nå Azure Key Vault (för TDE:s kundhanterade nycklar) och Azure Storage (för revision) utan lagrade hemligheter. För mer information, se Managed identity i Microsoft Entra for Azure SQL.

  • Upprätthåll starka lösenordspolicys: Om du använder SQL-autentisering, kräv komplexa lösenord som inte lätt kan gissas, rotera dem regelbundet och undvik att återanvända dem mellan konton. Mer information finns i Lösenordsprincip.

Privilegierad åtkomst

  • Ge minsta privilegium: Ge användarna endast de minsta behörigheter som krävs för deras jobbfunktioner och granska behörigheter regelbundet. Mer information finns i Komma igång med behörigheter för databasmotorn.

  • Separata administrativa roller: Undvik att ge breda administratörsrättigheter till alla administratörer. Använd detaljerade behörigheter och uppdelning av uppgifter över administrativa funktioner. Mer information finns i Behörigheter.

  • Tilldela åtkomst med databasroller: Använd inbyggda och anpassade databasroller för att implementera rollbaserad säkerhet, och tilldela användare roller istället för att ge individuella behörigheter. Mer information finns i Roller på databasnivå.

  • Använd Azure RBAC för hanteringsoperationer: Kontrollera åtkomst till Azure SQL Database-hanteringsoperationer med Azure rollbaserad åtkomstkontroll, skapa anpassade roller som endast ger de behörigheter som behövs för specifika uppgifter. För mer information se Azure-inbyggda roller för databaser.

  • Tillhandahålla just-in-time-privilegierad åtkomst: Använd Microsoft Entra Privileged Identity Management (PIM) för att ge tidsbegränsad, godkännandebaserad åtkomst till administrativa roller så att användare endast har höjda rättigheter när det behövs. Mer information finns i Privileged Identity Management( Privileged Identity Management).

  • Övervaka privilegierade aktiviteter: Aktivera granskning för att spåra åtgärder utförda av privilegierade konton, granska loggar för misstänkta förändringar och larma vid känsliga operationer. Mer information finns i Granskning för Azure SQL Database.

Dataskydd

Dataskydd skyddar din information genom kryptering, maskering och klassificering för att förhindra obehörig utlämnande, manipulation eller förlust av känslig information.

  • Aktivera Transparent Data Encryption (TDE): Kryptera din databas, logga och säkerhetskopiera filer i vila. TDE är aktiverat som standard för nya databaser; använd kundhanterade nycklar i Azure Key Vault för ytterligare kontroll över krypteringsnycklar. För mer information, se Transparent datakryptering (TDE) och TDE med kundhanterade nycklar.

  • Skydda känslig data med Alltid krypterad: Använd alltid krypterad data för att skydda mycket känslig data vid användning, vila och överföring, så att även administratörer inte kan se klartextvärden. Använd säkra enklaver för rikare funktionalitet. Mer information finns i Always Encrypted.

  • Skapa manipulationssäker data med huvudboken: Möjliggör att huvudboken skapar en oföränderlig, kryptografiskt verifierbar registrering av förändringar i känslig data, vilket kan hjälpa till att uppfylla regulatoriska krav. Mer information finns i Ledger.

  • Maskera känslig data med dynamisk datamaskering: Använd dynamisk datamaskering för att dölja känslig data för icke-privilegierade användare samtidigt som funktionaliteten för applikationer bevaras, utan att ändra applikationskod. Mer information finns i Dynamisk datamaskning.

  • Klassificera och märk känslig data: Använd SQL Data Discovery and Classification för att identifiera, klassificera och märka känslig data så att funktioner som revision och maskering kan använda metadata och du kan rapportera var känslig data finns. Mer information finns i Dataidentifiering och -klassificering.

  • Begränsa åtkomst med kolumnnivåbehörigheter: Bevilja eller neka behörigheter på kolumnnivå så att endast användare som behöver en känslig kolumn kan läsa eller ändra den. För mer information, se GRANT-objektbehörigheter.

  • Begränsa rader med Row-Level Security (RLS): Implementera RLS så att användare endast kan komma åt de datarader som är relevanta för dem, vilket ger applikationsnivå säkerhet som är idealisk för multitenant-scenarier. För mer information, se Row-Level Security.

Loggning och övervakning

Omfattande loggning och övervakning hjälper dig att upptäcka avvikande aktivitet, undersöka incidenter och visa efterlevnad för dina databaser.

  • Aktivera Microsoft Defender för SQL: Slå på Microsoft Defender för SQL för att upptäcka ovanliga och potentiellt skadliga försök att komma åt eller utnyttja dina databaser, inklusive sårbarhetsbedömning och avancerat hotskydd. Mer information finns i Microsoft Defender för SQL.

  • Integrera med Microsoft Defender för molnet: Använd Microsoft Defender för molnet för centraliserad säkerhetshantering, säkerhetsrekommendationer och integrerat hotskydd över dina Azure-resurser. För mer information, se Microsoft Defender för SQL i Defender för molnet.

  • Konfigurera hotskyddsvarningar: Sätt upp varningar för misstänkt aktivitet såsom SQL-injektionsförsök, avvikande åtkomstmönster och brute-force-autentisering, och dirigera notiser till rätt mottagare. För mer information, se Avancerat hotskydd.

  • Aktivera granskning: Konfigurera granskning för att spåra databashändelser och skriv dem till en Log Analytics-arbetsyta, Azure Storage eller Event Hubs. Granska både servernivå- och databasnivåhändelser för full täckning. Mer information finns i Granskning för Azure SQL Database.

  • Strömma diagnostiska loggar: Konfigurera diagnostiska inställningar för att skicka loggar, inklusive säkerhetskategorier såsom SQLSecurityAuditEvents, till Azure Monitor Logs, Event Hubs eller Azure Storage för lagring och analys. För mer information, se Monitor Azure SQL Database with Azure Monitor.

  • Granska revisionsloggar regelbundet: Etablera en process för att granska revisionsloggar för misstänkt aktivitet, med fokus på privilegierade kontoåtgärder, misslyckade autentiseringsförsök och tillgång till känslig data. Mer information finns i Granskning för Azure SQL Database.

Efterlevnad och styrning

Styrningskontroller hjälper dig att visa regulatorisk efterlevnad och upprätthålla konsekventa säkerhetskonfigurationer över dina databaser.

  • Följ regulatorisk efterlevnad med Microsoft Defender för molnet: Använd regulatorisk efterlevnadsdashboard för att jämföra dina databaser med standarder som PCI DSS, ISO 27001 och SOC, samt för att spåra åtgärd av felande kontroller. För mer information, se Regulatorisk efterlevnadsdashboard.

  • Upprätthåll konfigurationer med Azure Policy: Tilldela inbyggda Azure Policy-definitioner för Azure SQL Database för att granska och upprätthålla kontroller som TDE, revision, privata endpoints och Microsoft Entra-endast autentisering. För mer information, se Azure Policy inbyggda definitioner för Azure SQL Database.

  • Styr känslig data med Microsoft Purview: Registrera och skanna Azure SQL Database i Microsoft Purview för att katalogisera, klassificera och styra känslig data över hela din datagrupp. För mer information, se Koppla till och hantera Azure SQL Database i Microsoft Purview.

  • Använd Microsoft molnsäkerhetsbenchmark: Använd Microsoft cloud security benchmark som en Azure-omfattande baslinje för att prioritera och validera de kontroller du applicerar på Azure SQL Database. För mer information, se Microsoft cloud security benchmark.

Säkerhetskopiering och återställning

Tillförlitliga säkerhetskopierings- och återställningsprocesser skyddar dina data från förlust på grund av fel, katastrofer eller attacker. De hjälper dig också att nå dina återhämtningsmål.

  • Verifiera automatisk backupkonfiguration: Bekräfta att automatiserade backuper är konfigurerade och att retention uppfyller dina krav. Azure SQL Database tillhandahåller automatiska säkerhetskopior som standard med konfigurerbar lagring från 1 till 35 dagar. Mer information finns i Automatiserade säkerhetskopieringar.

  • Konfigurera backuplagringsredundans: Välj den backuplagringsredundans som matchar din tillgänglighet och dina katastrofåterställningsbehov: lokalt redundant (LRS), zonredundant (ZRS), geo-redundant (GRS) eller geozon-redundant (GZRS). Mer information finns i Redundans för säkerhetskopiering av lagring.

  • Använd långsiktig lagring för efterlevnad: Konfigurera långtidslagring (LTR) för att lagra fullständiga säkerhetskopior i upp till 10 år när efterlevnad kräver lagring utöver standardperioden. Mer information finns i Långsiktig kvarhållning.

  • Testa säkerhetskopierings- och återställningsprocedurer: Testa regelbundet återställningar för att bekräfta att de uppfyller dina återställningstidsmål och att återställda databaser fungerar fullt ut med intakt data. Mer information finns i Återställa en databas.

  • Implementera geo-återställning för katastrofåterställning: Använd geo-återställning för att återställa en databas från geo-redundanta säkerhetskopior till valfri Azure-region, och skydda mot regionala avbrott. Mer information finns i Geo-återställning.

  • Övervaka säkerhetskopieringsaktivitet: Följ säkerhetskopieringsoperationer och konfigurera varningar vid fel med hjälp av Azure Monitor. Mer information finns i Övervaka och felsöka lagringsförbrukning för säkerhetskopiering.