En översikt över säkerhetsfunktionerna för Azure SQL Database och SQL Managed Instance
gäller för:Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Den här artikeln beskriver grunderna för att skydda datanivån för ett program med hjälp av Azure SQL Database, Azure SQL Managed Instanceoch Azure Synapse Analytics. Den säkerhetsstrategi som beskrivs följer den skiktade metoden för försvar på djupet enligt bilden nedan och rör sig utifrån och in:
Notera
Microsoft Entra ID tidigare kallades Azure Active Directory (Azure AD).
Nätverkssäkerhet
Microsoft Azure SQL Database, Azure SQL Managed Instance och Azure Synapse Analytics tillhandahåller en relationsdatabastjänst för moln- och företagsprogram. För att skydda kunddata förhindrar brandväggar nätverksåtkomst till servern tills åtkomst uttryckligen beviljas baserat på IP-adress eller Azure Virtual Network-trafikursprung.
IP-brandväggsregler
IP-brandväggsregler ger åtkomst till databaser baserat på den ursprungliga IP-adressen för varje begäran. Mer information finns i Översikt över Azure SQL Database- och Azure Synapse Analytics-brandväggsregler.
Brandväggsregler för virtuellt nätverk
Tjänstslutpunkter för virtuellt nätverk utöka din virtuella nätverksanslutning via Azure-stamnätet och aktivera Azure SQL Database för att identifiera det virtuella nätverksundernätet som trafiken kommer från. Om du vill tillåta trafik att nå Azure SQL Database använder du SQL -tjänsttaggar för att tillåta utgående trafik via nätverkssäkerhetsgrupper.
Regler för virtuellt nätverk göra det möjligt för Azure SQL Database att endast acceptera kommunikation som skickas från valda undernät i ett virtuellt nätverk.
Not
Kontroll av åtkomst med brandväggsregler gäller inte gäller för SQL Managed Instance. Mer information om nätverkskonfigurationen som behövs finns i Ansluta till en hanterad instans
Åtkomsthantering
Viktig
Hantering av databaser och servrar i Azure styrs av ditt portalanvändarkontos rolltilldelningar. Mer information om den här artikeln finns i rollbaserad åtkomstkontroll i Azure-portalen.
Autentisering
Autentisering är processen för att bevisa att användaren är den som de påstår sig vara. SQL Database och SQL Managed Instance stöder SQL-autentisering och autentisering med Microsoft Entra-ID (tidigare Azure Active Directory). SQL Managed Instance stöder dessutom Windows-autentisering för Microsoft Entra-entiteter.
SQL-autentisering:
SQL-autentisering avser autentisering av en användare vid anslutning till Azure SQL Database eller Azure SQL Managed Instance med användarnamn och lösenord. En serveradmin-inloggning med användarnamn och lösenord måste anges när servern skapas. Med hjälp av dessa autentiseringsuppgifter kan en serveradministratör autentisera till valfri databas på servern eller instansen som databasägare. Därefter kan ytterligare SQL-inloggningar och användare skapas av serveradministratören, vilket gör det möjligt för användare att ansluta med användarnamn och lösenord.
Microsoft Entra-autentisering:
Microsoft Entra-autentisering är en mekanism för att ansluta till Azure SQL Database, Azure SQL Managed Instance och Azure Synapse Analytics med hjälp av identiteter i Microsoft Entra-ID. Med Microsoft Entra-autentisering kan administratörer centralt hantera databasanvändares identiteter och behörigheter tillsammans med andra Azure-tjänster på en central plats. Detta minimerar lösenordslagringen och aktiverar centraliserade principer för lösenordsrotation.
En serveradministratör med namnet Microsoft Entra-administratör måste skapas för att använda Microsoft Entra-autentisering med SQL Database. Mer information finns i Ansluta till SQL Database med Microsoft Entra-autentisering. Microsoft Entra-autentisering stöder både hanterade och federerade konton. De federerade kontona stöder Windows-användare och -grupper för en kunddomän federerad med Microsoft Entra-ID.
Microsoft Entra stöder flera olika autentiseringsalternativ, inklusive multifaktorautentisering, integrerad Windows-autentiseringoch villkorlig åtkomst.
Windows-autentisering för Microsoft Entra-huvudnamn:
Kerberos-autentisering för Microsoft Entra-huvudnamn aktiverar Windows-autentisering för Azure SQL Managed Instance. Windows-autentisering för hanterade instanser gör det möjligt för kunder att flytta befintliga tjänster till molnet samtidigt som de upprätthåller en sömlös användarupplevelse och utgör grunden för infrastrukturmodernisering.
Om du vill aktivera Windows-autentisering för Microsoft Entra-principaler omvandlar du din Microsoft Entra-klientorganisation till en oberoende Kerberos-sfär och skapar ett inkommande förtroende i kundens domän. Lär dig hur Windows-autentisering för Azure SQL Managed Instance implementeras med Microsoft Entra ID och Kerberos.
Viktig
Hantering av databaser och servrar i Azure styrs av ditt portalanvändarkontos rolltilldelningar. Mer information om den här artikeln finns i rollbaserad åtkomstkontroll i Azure-portalen. Kontroll av åtkomst med brandväggsregler gäller inte gäller för SQL Managed Instance. Vänligen se följande artikel om för att ansluta till en hanterad instans för mer information om den nätverkskonfiguration som behövs.
Tillstånd
Auktorisering syftar på att kontrollera åtkomsten till resurser och kommandon i en databas. Detta görs genom att tilldela behörigheter till en användare i en databas i Azure SQL Database eller Azure SQL Managed Instance. Behörigheter hanteras helst genom att lägga till användarkonton i databasroller och tilldela behörigheter på databasnivå till dessa roller. En enskild användare kan också beviljas vissa behörigheter på objektnivå. För mer information, se Inloggningar och användare
Vi rekommenderar att du skapar anpassade roller när det behövs. Lägg till användare i rollen med de minsta behörigheter som krävs för att utföra sin jobbfunktion. Tilldela inte behörigheter direkt till användare. Serveradministratörskontot är medlem i den inbyggda db_owner rollen, som har omfattande behörigheter och bör endast beviljas till få användare med administrativa uppgifter. För att ytterligare begränsa omfånget för vad en användare kan göra kan EXECUTE AS- användas för att ange körningskontexten för den anropade modulen. Att följa dessa bästa metoder är också ett grundläggande steg mot ansvarsfördelning.
Säkerhet på radnivå
Row-Level Security gör det möjligt för kunder att styra åtkomsten till rader i en databastabell baserat på egenskaperna hos användaren som kör en fråga (till exempel gruppmedlemskap eller körningskontext). Row-Level Security kan också användas för att implementera anpassade etikettbaserade säkerhetsbegrepp. För mer information, se Row-Level säkerhet.
Skydd mot hot
SQL Database och SQL Managed Instance skyddar kunddata genom att tillhandahålla funktioner för granskning och hotidentifiering.
SQL-granskning i Azure Monitor-loggar och Event Hubs
SQL Database- och SQL Managed Instance-granskning spårar databasaktiviteter och hjälper till att upprätthålla efterlevnad av säkerhetsstandarder genom att registrera databashändelser i en granskningslogg i ett kundägt Azure-lagringskonto. Med granskning kan användare övervaka pågående databasaktiviteter samt analysera och undersöka historiska aktiviteter för att identifiera potentiella hot eller misstänkt missbruk och säkerhetsöverträdelser. Mer information finns i Kom igång med SQL Database-granskning.
Avancerat hot-skydd
Advanced Threat Protection analyserar loggarna för att identifiera ovanligt beteende och potentiellt skadliga försök att komma åt eller utnyttja databaser. Aviseringar skapas för misstänkta aktiviteter som SQL-inmatning, potentiell datainfiltration och råstyrkeattacker eller avvikelser i åtkomstmönster för att fånga privilegiereskaleringar och användning av autentiseringsuppgifter som har brutits. Aviseringar visas från Microsoft Defender för molnet, där information om misstänkta aktiviteter tillhandahålls och rekommendationer för ytterligare undersökning ges tillsammans med åtgärder för att minimera hotet. Advanced Threat Protection kan aktiveras per server mot en extra avgift. Mer information finns i Komma igång med SQL Database Advanced Threat Protection.
Informationsskydd och kryptering
Säkerhet på transportnivå (kryptering under överföring)
SQL Database, SQL Managed Instance och Azure Synapse Analytics skyddar kunddata genom att kryptera data i rörelse med Transport Layer Security (TLS).
SQL Database, SQL Managed Instance och Azure Synapse Analytics framtvingar kryptering (SSL/TLS) hela tiden för alla anslutningar. Detta säkerställer att alla data krypteras "under överföring" mellan klienten och servern oavsett inställningen för Encrypt eller TrustServerCertificate i anslutningssträngen.
Vi rekommenderar att du i anslutningssträngen som används av programmet anger en krypterad anslutning och inte lita på servercertifikatet. Detta tvingar ditt program att verifiera servercertifikatet och förhindrar därför att ditt program är sårbart för man i mellantypsattackerna.
När du till exempel använder drivrutinen för ADO.NET utförs detta via Encrypt=True och TrustServerCertificate=False. Om du hämtar anslutningssträngen från Azure-portalen har den rätt inställningar.
Viktig
Observera att vissa icke-Microsoft-drivrutiner kanske inte använder TLS som standard eller förlitar sig på en äldre version av TLS (<1.2) för att fungera. I det här fallet kan du fortfarande ansluta till databasen på servern. Vi rekommenderar dock att du utvärderar säkerhetsriskerna med att tillåta sådana drivrutiner och program att ansluta till SQL Database, särskilt om du lagrar känsliga data.
Mer information om TLS och anslutning finns i TLS-överväganden
Transparent datakryptering (kryptering vid vila)
Transparent datakryptering (TDE) för SQL Database, SQL Managed Instance och Azure Synapse Analytics lägger till ett säkerhetslager som skyddar vilande data från obehörig eller offlineåtkomst till rådata eller säkerhetskopior. Vanliga scenarier är stöld av datacenter eller oskyddad bortskaffande av maskinvara eller media, till exempel diskenheter och säkerhetskopieringsband. TDE krypterar hela databasen med hjälp av en AES-krypteringsalgoritm, som inte kräver att programutvecklare gör några ändringar i befintliga program.
I Azure krypteras alla nyligen skapade databaser som standard och databaskrypteringsnyckeln skyddas av ett inbyggt servercertifikat. Certifikatunderhåll och rotation hanteras av tjänsten och kräver inga indata från användaren. Kunder som föredrar att ta kontroll över krypteringsnycklarna kan hantera nycklarna i Azure Key Vault-.
Nyckelhantering med Azure Key Vault
BYOK-stöd (Bring Your Own Key) för Transparent Data Encryption (TDE) gör det möjligt för kunder att ta ansvar för nyckelhantering och rotation med hjälp av Azure Key Vault, Azures molnbaserade externa nyckelhanteringssystem. Om databasens åtkomst till nyckelvalvet återkallas kan en databas inte dekrypteras och läsas in i minnet. Azure Key Vault tillhandahåller en central plattform för nyckelhantering, utnyttjar noggrant övervakade maskinvarusäkerhetsmoduler (HSM) och möjliggör uppdelning av uppgifter mellan hantering av nycklar och data för att uppfylla kraven på säkerhetsefterlevnad.
Always Encrypted (kryptering används)
Always Encrypted är en funktion som är utformad för att skydda känsliga data som lagras i specifika databaskolumner från åtkomst (till exempel kreditkortsnummer, nationella/regionala identifieringsnummer eller data på en behöver veta grund). Detta omfattar databasadministratörer eller andra privilegierade användare som har behörighet att komma åt databasen för att utföra hanteringsuppgifter, men som inte har något affärsbehov av att komma åt de specifika uppgifterna i de krypterade kolumnerna. Data krypteras alltid, vilket innebär att krypterade data dekrypteras endast för bearbetning av klientprogram med åtkomst till krypteringsnyckeln. Krypteringsnyckeln exponeras aldrig för SQL Database eller SQL Managed Instance och kan lagras antingen i Windows Certificate Store eller i Azure Key Vault-.
Dynamisk dataskydd
Dynamisk datamaskering begränsar exponeringen av känsliga data genom att maskera den för icke-privilegierade användare. Dynamisk datamaskering identifierar automatiskt potentiellt känsliga data i Azure SQL Database och SQL Managed Instance och ger användbara rekommendationer för att maskera dessa fält, med minimal påverkan på programskiktet. Det fungerar genom att dölja känsliga data i resultatuppsättningen för en fråga över angivna databasfält, medan data i databasen inte ändras. Mer information finns i Komma igång med dynamisk datamaskering i SQL Database och SQL Managed Instance.
Säkerhetshantering
Sårbarhetsbedömning
Sårbarhetsbedömning är en lättkonfigureringstjänst som kan identifiera, spåra och hjälpa till att åtgärda potentiella sårbarheter i databasen med målet att proaktivt förbättra den övergripande databassäkerheten. Sårbarhetsbedömning (VA) är en del av Microsoft Defender för SQL-erbjudandet, som är ett enhetligt paket för avancerade SQL-säkerhetsfunktioner. Sårbarhetsbedömning kan nås och hanteras via den centrala Microsoft Defender för SQL-portalen.
Dataidentifiering och -klassificering
Dataidentifiering och -klassificering (för närvarande i förhandsversion) ger grundläggande funktioner inbyggda i Azure SQL Database och SQL Managed Instance för identifiering, klassificering och etikettering av känsliga data i dina databaser. Att upptäcka och klassificera dina ytterst känsliga data (företag/ekonomi, sjukvård, personuppgifter osv.) kan spela en avgörande roll i organisationens informationsskyddsstatus. Den kan fungera som infrastruktur för:
- Olika säkerhetsscenarier, till exempel övervakning (granskning) och aviseringar om avvikande åtkomst till känsliga data.
- Kontrollera åtkomsten till och förstärka säkerheten för databaser som innehåller mycket känsliga data.
- Hjälper till att uppfylla datasekretessstandarder och regelefterlevnadskrav.
Mer information finns i Kom igång med dataidentifiering och klassificering.
Efterlevnad
Utöver ovanstående funktioner som kan hjälpa ditt program att uppfylla olika säkerhetskrav, deltar Även Azure SQL Database i regelbundna granskningar och har certifierats mot ett antal efterlevnadsstandarder. Mer information finns i Microsoft Azure Trust Center där du hittar den senaste listan över SQL Database-efterlevnadscertifieringar.
Nästa steg
- En diskussion om användningen av inloggningar, användarkonton, databasroller och behörigheter i SQL Database och SQL Managed Instance finns i Hantera inloggningar och användarkonton.
- För en diskussion om databasauditering, se auditering.
- För en diskussion om hotidentifiering, se hotidentifiering.