Uw Azure SQL Managed Instance beveiligen

Van toepassing op:Azure SQL Managed Instance

Azure SQL Managed Instance is een volledig beheerde PaaS-database-engine (Platform as a Service) die bijna 100% compatibiliteit biedt met de nieuwste SQL Server Database Engine. Het combineert het beste van SQL Server met de operationele voordelen van een volledig beheerde service. Omdat het vaak kritieke bedrijfsgegevens opslaat, waaronder klantrecords, financiële informatie en intellectueel eigendom, is het beveiligen van uw SQL Managed Instance essentieel voor de bescherming tegen gegevensschendingen, onbevoegde toegang en nalevingsschendingen.

Dit artikel bevat richtlijnen voor het beveiligen van uw Azure SQL Managed Instance-implementatie.

Netwerkbeveiliging

Netwerkbeveiliging voor SQL Managed Instance helpt onbevoegde verbindingen te voorkomen, blootstelling aan aanvallen te verminderen en ervoor te zorgen dat alleen vertrouwde bronnen uw databases kunnen bereiken via de juiste netwerkisolatie en toegangsbeheer.

  • Implementeren in een toegewezen virtueel netwerk: plaats uw beheerde exemplaar in een toegewezen subnet in uw virtuele netwerk om netwerkisolatie te bieden en de verkeersstroom te beheren. Dit zorgt ervoor dat uw database wordt geïsoleerd van andere resources en wordt beveiligd door netwerkgrenzen. Zie Vereisten voor virtuele netwerken voor meer informatie.

  • Netwerkbeveiligingsgroepen (NSG's) configureren: pas NSG's toe op het subnet van uw met SQL beheerde exemplaar om inkomend en uitgaand verkeer te beheren. Beperk toegang tot alleen vereiste poorten en bronnen om de aanvalsoppervlak te minimaliseren. Zie Netwerkbeveiligingsgroepen voor meer informatie.

  • Gebruik indien mogelijk privé-eindpunten: maak verbinding met uw met SQL beheerde exemplaar via privé-IP-adressen om te voorkomen dat uw database beschikbaar wordt gemaakt op het openbare internet. Privéconnectiviteit vermindert het risico op externe aanvallen en gegevensexfiltratie. Zie Privé-eindpuntconnectiviteit voor meer informatie.

  • Schakel openbare eindpunten standaard uit: schakel alleen openbare eindpunten in als dit absoluut noodzakelijk is voor uw architectuur. Wanneer deze optie is ingeschakeld, gebruikt u strikte firewallregels om alleen de toegang tot geautoriseerde IP-adressen te beperken. Zie het overzicht van het openbare eindpunt voor meer informatie.

  • Implement ExpressRoute of VPN voor hybride connectiviteit: gebruik Azure ExpressRoute of site-naar-site-VPN voor beveiligde, privéverbindingen tussen uw on-premises netwerk en Azure. Dit zorgt ervoor dat gegevens niet via het openbare internet gaan. Zie Connectiviteitsarchitectuur voor meer informatie.

  • Verbindingsversleuteling inschakelen: configureer alle clientverbindingen om versleuteling tijdens overdracht te gebruiken. SQL Managed Instance biedt standaard ondersteuning voor TLS 1.2, zodat gegevens worden beveiligd tijdens het verplaatsen tussen clients en de database. TLS 1.3 is ook beschikbaar voor SQL Managed Instance. Zie Verbindingsbeveiliging voor meer informatie.

Identiteitsbeheer

Sterke besturingselementen voor identiteit en verificatie zorgen ervoor dat alleen geautoriseerde gebruikers en toepassingen toegang hebben tot uw SQL Managed Instance resources, terwijl gecentraliseerd identiteitsbeheer wordt geboden en het beheer van de levenscyclus van accounts eenvoudiger wordt.

  • Configure a Microsoft Entra admin: Wijs een Microsoft Entra-beheerder aan voor uw beheerde SQL-exemplaar om gecentraliseerd identiteitsbeheer en geavanceerde beveiligingsfuncties mogelijk te maken. Deze beheerder kan toegangs- en verificatiebeleid beheren. Zie Microsoft Entra admin voor meer informatie.

  • Gebruik Microsoft Entra verificatie: Geef de voorkeur aan Microsoft Entra verificatie via SQL-verificatie voor gecentraliseerd identiteitsbeheer en eenvoudiger beheer van de levenscyclus van accounts. Microsoft Entra ID biedt superieure beveiliging en biedt geavanceerde functies zoals voorwaardelijke toegang. Zie Configure Microsoft Entra authentication voor meer informatie.

  • Ingesloten databasegebruikers maken: Gebruik ingesloten databasegebruikers die zijn toegewezen aan Microsoft Entra groepen in plaats van aanmeldingen op serverniveau, indien mogelijk. Dit vereenvoudigt het beheer van machtigingen en verbetert de beveiliging door de noodzaak van toegang op serverniveau te elimineren. Zie Uw database draagbaar maken met behulp van ingesloten databasesvoor meer informatie.

  • Meervoudige verificatie inschakelen: meervoudige verificatie vereisen voor beheerdersaccounts en bevoegde gebruikers om een extra beveiligingslaag toe te voegen dan wachtwoorden. Zie Meervoudige verificatie (MFA) voor meer informatie.

  • Beheerde identiteiten gebruiken voor toepassingen: beheerde identiteiten inschakelen voor Azure resources, zodat toepassingen kunnen worden geverifieerd zonder referenties op te slaan. Hierdoor hoeft u geen verbindingsreeksen met ingesloten wachtwoorden te beheren. Voor meer informatie, zie Beheerde identiteiten voor Azure-resources.

  • Sterk wachtwoordbeleid afdwingen: als u SQL-verificatie gebruikt, moet u complexe wachtwoorden vereisen die niet eenvoudig kunnen worden geraden. Implementeer beleidsregels voor wachtwoordrotatie en vermijd hergebruik van wachtwoorden in verschillende accounts. Zie Wachtwoordbeleid voor meer informatie.

Bevoegde toegang

Het beheren van bevoegde toegang voorkomt onbevoegde wijzigingen, vermindert de impact van gecompromitteerde accounts en zorgt ervoor dat beheeracties correct worden bewaakt en beheerd.

  • Toegang tot minimale bevoegdheden implementeren: verwijs gebruikers alleen de minimale machtigingen die nodig zijn om hun taakfuncties uit te voeren. Controleer en pas de machtigingen regelmatig aan om het principe van minimale bevoegdheden te handhaven. Zie Aan de slag met machtigingen voor database-engine voor meer informatie.

  • Afzonderlijke beheerdersrollen: Vermijd het verlenen van beheerdersrechten aan alle databasebeheerders. Gebruik indien mogelijk gedetailleerdere machtigingen, zoals CONTROL SERVER, en implementeer scheiding van taken tussen verschillende beheerfuncties. Zie Machtigingen voor meer informatie.

  • Gebruik Azure op rollen gebaseerd toegangsbeheer (RBAC): Implementeer Azure RBAC om de toegang tot beheerbewerkingen van SQL Managed Instance te beheren. Maak aangepaste rollen die alleen de benodigde machtigingen bieden voor specifieke beheertaken. Zie Azure RBAC voor SQL Managed Instance voor meer informatie.

  • Bevoegde activiteiten bewaken: schakel controle in om alle acties bij te houden die worden uitgevoerd door bevoegde accounts. Controleer regelmatig auditlogboeken op verdachte activiteiten of niet-geautoriseerde wijzigingen. Zie SQL Server Audit in Azure SQL Managed Instance voor meer informatie.

  • Gebruik serverrollen voor database-niveau toegang: Gebruik ingebouwde serverrollen en maak aangepaste rollen om rolgebaseerde beveiliging te implementeren. Gebruikers toewijzen aan rollen in plaats van afzonderlijke machtigingen te verlenen om het beheer te vereenvoudigen en fouten te verminderen. Zie Functies op serverniveauvoor meer informatie.

Gegevensbescherming

Gegevensbescherming beschermt uw gegevens via versleuteling, toegangsbeheer en gegevensclassificatie om onbevoegde openbaarmaking, manipulatie of verlies van gevoelige informatie te voorkomen.

  • Enable Transparent Data Encryption (TDE): Gebruik TDE om uw database, logboek- en back-upbestanden in rust te versleutelen. Overweeg het gebruik van door de klant beheerde sleutels in Azure Key Vault voor extra controle over versleutelingssleutels. Zie Transparent Data Encryption voor meer informatie.

  • Implementeer Always Encrypted voor gevoelige gegevens: Gebruik Always Encrypted om zeer gevoelige gegevens in gebruik, at rest en in transit te beveiligen. Dit zorgt ervoor dat zelfs databasebeheerders gevoelige gegevens niet in tekst zonder opmaak kunnen bekijken. Zie Always Encrypted voor meer informatie.

  • Grootboek gebruiken in SQL Managed Instance: Grootboek inschakelen om een onveranderbaar record van wijzigingen in gevoelige gegevens te maken, waardoor manipulatie-duidelijke logboekregistratie mogelijk is. Zie Grootboekoverzicht voor meer informatie.

  • Dynamische gegevensmaskering gebruiken: dynamische gegevensmaskering toepassen om gevoelige gegevens te verdoezelen voor niet-gemachtigde gebruikers terwijl de gegevensfunctionaliteit voor toepassingen behouden blijft. Dit helpt onbevoegde toegang tot gevoelige informatie te voorkomen. Zie Dynamische gegevensmaskering voor meer informatie.

  • Gevoelige gegevens classificeren en labelen: GEBRUIK SQL-gegevensdetectie en -classificatie om gevoelige gegevens in uw databases te identificeren, classificeren en labelen. Dit maakt betere beveiliging en nalevingsrapportage mogelijk. Zie Gegevensdetectie en -classificatie voor meer informatie.

  • Beveiliging op kolomniveau implementeren: verleen machtigingen op kolomniveau om de toegang tot gevoelige gegevens te beperken. Geef alleen SELECT-, UPDATE- of VERWIJZINGEN-machtigingen op voor gebruikers die specifiek toegang nodig hebben tot gevoelige kolommen. Zie Een kolom met gegevens versleutelen voor meer informatie.

  • Gebruik Row-Level Security (RLS):implementeer RLS om ervoor te zorgen dat gebruikers alleen toegang hebben tot gegevensrijen die relevant zijn voor hen. Dit biedt beveiliging op toepassingsniveau zonder dat er aanzienlijke wijzigingen in de toepassing nodig zijn. Zie Row-Level Security voor meer informatie.

Back-up en herstel

Betrouwbare back-up- en herstelprocessen beschermen uw gegevens tegen verlies als gevolg van storingen, rampen of aanvallen, terwijl u ervoor zorgt dat u aan uw hersteltijd- en puntdoelstellingen kunt voldoen.

  • Controleer de automatische back-upconfiguratie: zorg ervoor dat geautomatiseerde back-ups correct zijn geconfigureerd en dat de bewaarperioden voldoen aan de vereisten van uw bedrijf. Azure SQL Managed Instance biedt standaard geautomatiseerde back-ups met configureerbare bewaarperioden tot 35 dagen. Back-upopslag is onafhankelijk van exemplaaropslag en is niet beperkt in grootte. Zie Automatische back-ups voor meer informatie.

  • Back-upactiviteit bewaken: houd bij wanneer geautomatiseerde back-ups worden uitgevoerd op uw met SQL beheerde exemplaar om ervoor te zorgen dat back-upbewerkingen worden voltooid. Zie Back-upactiviteit bewaken voor meer informatie.

  • Geografisch redundante back-upopslag gebruiken: geografisch redundante opslag configureren voor back-ups om te beschermen tegen regionale rampen. Dit zorgt ervoor dat uw gegevens kunnen worden hersteld, zelfs als uw primaire regio niet meer beschikbaar is. Zie Back-upopslagredundantie voor meer informatie.

  • Test back-up- en herstelprocedures: test regelmatig uw back-up- en herstelprocedures om ervoor te zorgen dat ze correct werken en voldoen aan uw beoogde hersteltijd. Controleer of herstelde databases volledig functioneel zijn en dat de gegevensintegriteit behouden blijft. Zie Herstel naar een bepaald tijdstip voor meer informatie.

  • Eigen back-up- en herstelmogelijkheden gebruiken: profiteer van systeemeigen back-up en herstel vanuit Azure Blob Storage voor migratiescenario's. U kunt alleen volledige back-ups maken en herstellen vanuit .bak bestanden (SQL Server 2005+). Back-up alleen kopiëren is niet mogelijk als de database is versleuteld door door de service beheerde TDE. Zie Systeemeigen herstel vanuit URL-voor meer informatie.

  • Beleid voor langetermijnretentie implementeren: langetermijnretentie voor back-ups configureren voor nalevingsvereisten die de standaardretentieperiode overschrijden. Dit zorgt ervoor dat u kunt voldoen aan wettelijke vereisten voor het bewaren van gegevens. Zie Langetermijnretentie van back-ups voor meer informatie.

Bewaking en detectie van bedreigingen

Uitgebreide bewaking en detectie van bedreigingen helpen u bij het identificeren van beveiligingsproblemen, het detecteren van afwijkende activiteiten en het snel reageren op mogelijke bedreigingen voor uw beheerde SQL-exemplaar.

  • Enable Microsoft Defender for SQL: Configureer Microsoft Defender voor SQL om ongebruikelijke en mogelijk schadelijke pogingen te detecteren om toegang te krijgen tot uw databases of ze uit te buiten. Dit biedt geavanceerde mogelijkheden voor beveiliging tegen bedreigingen, waaronder evaluatie van beveiligingsproblemen en detectie van bedreigingen. Zie Microsoft Defender voor SQL voor meer informatie.

  • Configure Advanced Threat Protection: stel Advanced Threat Protection in om specifieke bedreigingen te detecteren, waaronder mogelijke SQL-injectie, toegang vanaf ongebruikelijke locaties of datacenters, toegang vanaf onbekende principals en brute force SQL-referenties. Configureer e-mailmeldingen en opslagaccounts voor bedreigingswaarschuwingen. Zie Configure Advanced Threat Protection voor meer informatie.

  • Sql-controle configureren: uitgebreide controle inschakelen om database-gebeurtenissen bij te houden en naar Azure Storage, Log Analytics of Event Hubs te schrijven. Dit biedt gedetailleerde logboeken voor beveiligingsanalyse en nalevingsrapportage. Zie SQL Server Audit in Azure SQL Managed Instance voor meer informatie.

  • Set up Azure Monitor: Gebruik Azure Monitor om metrische platformgegevens, diagnostische logboeken te verzamelen en aangepaste waarschuwingen te maken voor uw met SQL beheerde exemplaar. Bewaak het resourceverbruik, de metrische prestatiegegevens en beveiligingsgebeurtenissen op een centrale locatie. Zie Monitor Azure SQL Managed Instance voor meer informatie.

  • Waarschuwingen voor metrische gegevens maken: waarschuwingen instellen voor verdachte activiteiten, mislukte aanmeldingspogingen, ongebruikelijke databasetoegangspatronen en drempelwaarden voor resourceverbruik. Waarschuwingsmetriek is beschikbaar op het niveau van de SQL-managed instance, niet voor afzonderlijke databases. Zie Maakwaarschuwingen voor SQL Managed Instance voor meer informatie.

  • Gebruik SQL-evaluatie van beveiligingsproblemen: voer regelmatig evaluaties van beveiligingsproblemen uit om onjuiste beveiligingsconfiguraties en mogelijke beveiligingsproblemen in uw database te identificeren. Herstel geïdentificeerde problemen onmiddellijk om een sterk beveiligingspostuur te behouden. Zie SQL-evaluatie van beveiligingsproblemen voor meer informatie.

  • Bewaken met dynamische beheerweergaven (DMV's):gebruik DMV's om de prestaties te bewaken, geblokkeerde query's, resourceknelpunten en beveiligingsgerelateerde activiteiten te detecteren. DMVs bieden gedetailleerde inzichten in database-engine-bewerkingen en beveiligingsgebeurtenissen. Zie Bewaking Azure SQL Managed Instance prestaties met dynamische beheerweergaven voor meer informatie.

  • Implementeer Query Store monitoring: schakel Query Store in om queryprestaties over tijd te volgen, prestatieregressies op te sporen en query-uitvoeringspatronen te monitoren. Hiermee kunt u ongebruikelijk querygedrag detecteren dat mogelijk beveiligingsproblemen aangeeft. Voor meer informatie kunt u Monitor performance by using the Query Store raadplegen.

  • Uitgebreide gebeurtenissen gebruiken voor gedetailleerde bewaking: Uitgebreide gebeurtenissen (XEvents) implementeren voor lage overhead, gedetailleerde bewaking van databaseactiviteiten, waaronder beveiligingsgebeurtenissen en prestatieproblemen. XEvents bieden gedetailleerdere bewaking dan SQL Profiler met minder invloed op de prestaties. Zie Uitgebreide gebeurtenissenvoor meer informatie.

  • Set up Database watcher (preview): Overweeg database-watcher te gebruiken voor uitgebreide workloadbewaking met gecentraliseerde dashboards en gedetailleerde prestatie-inzichten in uw Azure SQL-omgeving. Voor meer informatie, zie Monitor Azure SQL workloads met databasebewaker (preview).

Naleving en bestuur

Het onderhouden van naleving en governance zorgt ervoor dat uw SQL Managed Instance implementatie voldoet aan wettelijke vereisten en beveiligingsbeleid van de organisatie via de juiste controles en documentatie.

  • Apply Azure Policy voor governance: Gebruik Azure Policy om de beveiligingsnormen van de organisatie af te dwingen en een consistente configuratie te garanderen voor alle beheerde SQL-instanties. Aangepast beleid maken voor specifieke nalevingsvereisten. Overweeg beleidsregels voor het afdwingen van Microsoft Entra-only verificatie, redundantie van back-upopslag en vereisten voor gegevenslocatie. Zie Azure Policy voor SQL Managed Instance voor meer informatie.

  • Alleen-Microsoft Entra-verificatie afdwingen: Gebruik Azure Policy om te vereisen dat nieuwe SQL-beheerde instanties enkel Microsoft Entra-verificatie gebruiken, waarmee SQL-verificatie uitgeschakeld is voor verbeterde beveiliging. Dit biedt gecentraliseerd identiteitsbeheer en elimineert beveiligingsproblemen op basis van wachtwoorden. Zie Azure-beleid gebruiken om alleen Microsoft Entra-authenticatie af te dwingen voor meer informatie.

  • Implementatiestrategie voor resourcetags: pas consistente Azure tags toe om het eigendom van resources, omgevingsclassificatie, kostencentra en nalevingsvereisten te identificeren. Gebruik tags voor geautomatiseerd beheer, kosten bijhouden en resourcebeheer. Zie Ontwikkeling van uw naamgevings- en tagstrategie voor Azure resources voor meer informatie.

  • Leverage-Microsoft Purview voor gegevensbeheer: integreren met Microsoft Purview voor gegevensclassificatie, herkomsttracering en geïntegreerde gegevensbeheer in uw gegevensomgeving. Gebruik vertrouwelijkheidslabels en beleid ter preventie van gegevensverlies om geclassificeerde gegevens te beveiligen. Zie Microsoft Purview Informatiebeveiliging voor meer informatie.

  • Documentbeveiligingsprocedures: behoud uitgebreide documentatie over uw beveiligingsprocedures, reactieplannen voor incidenten en beleidsregels voor toegangsbeheer. Regelmatig documentatie controleren en bijwerken om de huidige procedures en nalevingsvereisten weer te geven. Zie Best practices voor beveiliging voor meer informatie.

  • Voer regelmatig beveiligingsevaluaties uit: voer periodieke beveiligingsevaluaties uit om uw beveiligingspostuur te evalueren en gebieden voor verbetering te identificeren. Neem penetratietests en evaluatie van beveiligingsproblemen op in uw beveiligingsprogramma. Documentherstelinspanningen voor nalevingsrapportage. Zie sql-evaluatie van beveiligingsproblemen voor meer informatie.

  • Audittrails onderhouden: zorg ervoor dat alle beheeracties en gegevenstoegang correct worden geregistreerd en dat audittrails worden bijgehouden voor de vereiste bewaarperiode. Beveilig auditlogboeken tegen manipulatie of onbevoegde toegang. Retentie van auditlogboeken configureren op basis van wettelijke vereisten (SOX, PCI DSS). Zie Controleoverzicht voor meer informatie.

  • Meet nalevingsstandaarden voor regelgeving: Azure SQL Managed Instance ondersteunt naleving van verschillende regelgevingskaders, waaronder ISO 27001, PCI DSS, FedRAMP en SOX. Controleer en implementeer controles die specifiek zijn voor de vereisten van uw branche. Zie Azure compliancedocumentatie voor meer informatie.

  • Resourcevergrendelingen gebruiken: Resourcevergrendelingen toepassen om onbedoeld verwijderen of wijzigen van kritieke SQL Managed Instance-resources te voorkomen. Dit helpt de configuratie-integriteit te behouden en voorkomt ongeautoriseerde wijzigingen die de naleving kunnen beïnvloeden. Zie Resourcevergrendelingen voor meer informatie.

  • Monitor met Azure Advisor: gebruik Azure Advisor om persoonlijke aanbevelingen te ontvangen voor beveiliging, kostenoptimalisatie, prestaties en operationele uitmuntendheid. Controleer en implementeer regelmatig aanbevelingen van de adviseur om de best practices te handhaven. Zie Azure Advisor voor meer informatie.

Automatische interne connectiviteitstests

Azure SQL Managed Instance voert automatische interne connectiviteitstests uit om de betrouwbaarheid van de service te bewaken en de detectie van problemen te versnellen. Deze tests worden elke 10 seconden uitgevoerd vanaf interne IP-adressen in het subnet van het SQL Managed Instance en hebben een te verwaarlozen invloed op de prestaties van de netwerkdoorvoer en service. Met één test wordt end-to-end-connectiviteit gevalideerd door een aanmelding met een bekende mislukte referentie (AzureSQLConnectivityChecker) uit te voeren, waarmee verwachte mislukte aanmeldingsgegevens worden gegenereerd in auditlogboeken, uitgebreide gebeurtenissen en SQL-foutenlogboeken. Deze vermeldingen zijn normaal en geven geen beveiligingsprobleem aan. Zie Automatische interne connectiviteitstests voor meer informatie, waaronder het identificeren van testhandtekeningen in uw logboeken.

Zie Beveiligingsbest practices voor Azure SQL Managed Instance en het Overzicht van de beveiligingsmogelijkheden van Azure SQL Managed Instance voor uitgebreide beveiligingsrichtlijnen.