Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
SQL Server is een relationeel databasebeheersysteem (RDBMS) dat kritieke bedrijfsgegevens opslaat en beheert voor toepassingen, analyses en rapportage. Omdat het vaak gevoelige informatie bevat, zoals klantrecords, financiële gegevens en intellectueel eigendom, is het beveiligen van SQL Server essentieel om uw organisatie te beschermen tegen gegevensschendingen, onbevoegde toegang en nalevingsrisico's.
Dit artikel bevat richtlijnen voor het beveiligen van uw SQL Server.
In de aanbevelingen voor beveiliging in dit artikel worden zero Trust-principes geïmplementeerd: 'Expliciet verifiëren', 'Minimale toegang tot bevoegdheden gebruiken' en 'Inbreuk aannemen'. Zie het Zero Trust Guidance Center voor uitgebreide richtlijnen voor Zero Trust.
Verminder het aanvalsoppervlak en beperk dreigingen
Minimaliseer wat blootgesteld is en versterk tegen bekende aanvalspatronen om het risico te verkleinen dat een kwetsbaarheid wordt bereikt of benut.
Beperk ingeschakelde functies om de kwetsbaarheid voor aanvallen te verminderen: schakel alleen de SQL Server-functies in die vereist zijn voor uw omgeving. Zie Surface Area Configuration voor meer informatie.
Bekijk en beperk veelvoorkomende bedreigingen: Bescherm tegen SQL-injectie, side-channel-aanvallen, brute force, wachtwoordspray en ransomware door aanbevolen procedures te volgen voor invoervalidatie, patching en toegangsbeheer. Zie SQL-injectie en Ransomware-aanvallen voor meer informatie.
Diepgaande beveiliging implementeren: gebruik meerdere beveiligingsmogelijkheden die zijn gericht op verschillende beveiligingsbereiken om uitgebreide bescherming te bieden tegen verschillende bedreigingen. Zie de aanbevolen procedures voor SQL Server-beveiliging voor meer informatie.
Netwerkbeveiliging
Het beveiligen van netwerktoegang tot SQL Server helpt onbevoegde verbindingen te voorkomen, vermindert blootstelling aan aanvallen en zorgt ervoor dat alleen vertrouwde bronnen uw databases kunnen bereiken.
Beperk inkomend verkeer met firewalls en NSG's: Beperk de netwerktoegang tot SQL Server door de Windows Firewall te configureren voor toegang tot de Database Engine. Voor SQL Server in virtuele Azure-machines (VM's) gebruikt u Azure Firewall en Netwerkbeveiligingsgroepen (NSG's) om deze beperkingen af te dwingen.
Versleutel verbindingen met SQL Server: Configureer de SQL Server Database Engine om verbindingen te versleutelen met behulp van een certificaat. Versleuteling beschermt data tijdens het verzenden tegen afluisteren en manipulatie. Zie Verbindingen met SQL Server Database Engine versleutelen voor meer informatie.
Veilig extern beheer: gebruik versleutelde protocollen (zoals TLS 1.3) voor alle externe verbindingen. Zie TLS 1.3 configureren voor meer informatie.
Maak verbinding met SQL Server met strikte versleuteling: SQL Server 2022 heeft de
strictversleutelingsoptie geïntroduceerd. Hiervoor moeten alle verbindingen gebruikmaken van versleuteling. Deze optie helpt ervoor te zorgen dat alle data tijdens het verzenden beschermd is. Zie Verbinding maken met SQL Server met strikte versleuteling voor meer informatie.
Identiteits- en toegangsbeheer
Sterke authenticatie en least-privilege autorisatie helpen ervoor te zorgen dat alleen geautoriseerde gebruikers en applicaties toegang hebben tot SQL Server-bronnen.
Authenticatie en accountbeheer
Gebruik Windows-verificatie of Microsoft Entra-verificatie: Voorkeur voor Windows-verificatie of Microsoft Entra-verificatie via SQL-verificatie voor gecentraliseerd identiteitsbeheer en eenvoudiger beheer van de levenscyclus van accounts. Zie Een verificatiemodus kiezen voor meer informatie.
Gebruik door groepen beheerde serviceaccounts (gMSA) voor services: gebruik gMSA om referenties voor serviceaccounts automatisch en veilig te beheren. Zie Group-Managed Overzicht van serviceaccounts voor meer informatie.
Sterk wachtwoordbeleid afdwingen: als u SQL-verificatie gebruikt, moet u complexe wachtwoorden vereisen die niet eenvoudig kunnen worden geraden en niet worden gebruikt voor andere accounts. Werk regelmatig wachtwoorden bij en dwing Active Directory-beleid af. Zie Sterke wachtwoorden voor meer informatie.
Gebruik indien nodig ingesloten databasegebruikers: Overweeg ingesloten databasegebruikers voor toepassingen die verificatie op databaseniveau nodig hebben zonder dat aanmeldingen op serverniveau nodig zijn. Zie Ingesloten databasegebruikers voor meer informatie.
Bevoegde toegang
Geef de vereiste minimale machtigingen: wijs het laagste niveau van bevoegdheden toe dat nodig is voor elke gebruiker of service. Controleer en pas de machtigingen regelmatig aan om minimale bevoegdheden te behouden. Zie Aan de slag met machtigingen voor database-engine voor meer informatie.
Afzonderlijke databasebeheerders (DBA) en
sysadminrollen: Vermijd het verlenen vansysadminrechten aan alle DBA's. Gebruik waar mogelijk de machtiging CONTROL SERVER , omdat deze machtigingen respecteertDENYen gedetailleerder beheer mogelijk maakt. Overweeg een scheiding van taken die de toegang tot de virtuele machine beperken, de mogelijkheid om u aan te melden bij het besturingssysteem, de mogelijkheid om fouten en controlelogboeken te wijzigen, en de mogelijkheid om toepassingen en/of functies te installeren. Zie Machtigingen (Database Engine) voor meer informatie.Bevoegde activiteiten bewaken en controleren: schakel controle in om wijzigingen bij te houden die zijn aangebracht door bevoegde accounts en logboeken regelmatig te controleren op verdachte activiteiten. Zie SQL Server Audit (Database Engine)voor meer informatie.
Rolscheiding implementeren: Active Directory-gebruikers in AD-groepen plaatsen, AD-groepen toewijzen aan SQL Server-rollen en SQL Server-rollen de minimale machtigingen verlenen die vereist zijn voor toepassingen. Zie Aan de slag met machtigingen voor database-engine voor meer informatie.
Gegevensbescherming
Het beveiligen van gegevens die in rust zijn en onderweg is essentieel om ongeoorloofde openbaarmaking of manipulatie te voorkomen.
Gevoelige informatie versleutelen met Always Encrypted: Gebruik Always Encrypted en Always Encrypted met beveiligde enclaves om gevoelige gegevens in SQL Server te beveiligen. Geef de voorkeur aan gerandomiseerde versleuteling voor sterkere beveiliging. Zie Always Encrypted voor meer informatie.
Gebruik TDE (Transparent Data Encryption) voor databasebestanden: Schakel TDE in om database-, back-up- en tempdb-bestanden te versleutelen, zodat gegevens worden beveiligd als er inbreuk is gemaakt op fysieke media. Zie TDE -(Transparent Data Encryption) voor meer informatie.
Gevoelige gegevens maskeren met DDM (Dynamic Data Masking):gebruik DDM om gevoelige gegevens in queryresultaten te verdoezelen wanneer versleuteling niet mogelijk is. Zie Dynamische gegevensmaskering voor meer informatie.
Machtigingen op kolomniveau verlenen: beperk de toegang tot gevoelige kolommen door alleen machtigingen toe te kennen
SELECTREFERENCESUPDATEaan geautoriseerde gebruikers. Zie machtigingen voor meer informatieGRANT.Gebruik Row-Level Security (RLS) om de toegang tot gegevens te beperken: Implementeer RLS om ervoor te zorgen dat gebruikers alleen gegevens zien die relevant zijn voor hen. Gebruiken
SESSION_CONTEXTvoor toepassingen in de middelste laag waarbij gebruikers SQL-accounts delen. Zie Row-Level Security voor meer informatie.Combineer beveiligingsfuncties voor maximale beveiliging: gebruik Row-Level Beveiliging samen met Always Encrypted of Dynamische gegevensmaskering om het beveiligingspostuur van uw organisatie te maximaliseren. Zie Row-Level Best practices voor beveiliging voor meer informatie.
Logboekregistratie en bewaking
Uitgebreide logboekregistratie en bewaking helpen bij het detecteren van bedreigingen, het onderzoeken van incidenten en het voldoen aan nalevingsvereisten.
SQL Server-controle inschakelen en configureren: toegang en wijzigingen in gevoelige gegevens en configuraties controleren op server- en databaseniveau. Overweeg het controleren van tabellen en kolommen met gevoelige gegevens waarop beveiligingsmaatregelen zijn toegepast. Controleer regelmatig auditlogboeken, met name voor tabellen met gevoelige informatie, waarbij volledige beveiligingsmaatregelen niet mogelijk zijn. Zie SQL Server Audit (Database Engine)voor meer informatie.
Grootboek gebruiken in SQL Server: grootboek inschakelen om een onveranderbare record te maken van wijzigingen in gevoelige gegevens, waardoor manipulatie-duidelijke logboekregistratie wordt geboden. Zie Een grootboekdatabase configurerenvoor meer informatie.
Naleving en bestuur
Het ontdekken, classificeren en beoordelen van uw gegevensbestand helpt u te voldoen aan wettelijke vereisten en bescherming te prioriteren waar het het meest van belang is.
Gevoelige gegevens classificeren en labelen: GEBRUIK SQL Data Discovery en Classificatie om gevoelige gegevens te identificeren en labelen voor betere beveiliging en naleving. Zie SQL Data Discovery en Classification voor meer informatie.
Evaluaties van beveiligingsproblemen uitvoeren: gebruik sql-evaluatie van beveiligingsproblemen, geleverd via Microsoft Defender voor SQL, om potentiële beveiligingsproblemen in de database in cloud- en on-premises resources te detecteren en op te lossen. Zie Evaluatie van beveiligingsproblemen voor SQL Server voor meer informatie.
Back-up en herstel
Betrouwbare back-up- en herstelprocessen beschermen uw gegevens tegen verlies als gevolg van storingen, rampen of aanvallen.
Regelmatige back-ups automatiseren: geautomatiseerde back-ups plannen voor databases, systeemconfiguraties en transactielogboeken. Gebruik systeemeigen hulpprogramma's van Azure Backup of SQL Server. Zie Back-up maken en herstellen van een SQL Server-database met SSMS en Back-up en herstel voor SQL Server op Virtuele Azure-machines voor meer informatie.
Back-upgegevens versleutelen: back-upbestanden beveiligen met TDE (Transparent Data Encryption).
Test regelmatig herstelprocedures: herstel periodiek back-ups om uw herstelproces te valideren en ervoor te zorgen dat u kunt voldoen aan de beoogde hersteltijddoelen en herstelpunten. Zie Bestanden terugzetten vanuit een back-up van een VIRTUELE machine voor meer informatie.