Aan de slag met controleren van Azure SQL Managed Instance
Van toepassing op: Azure SQL Managed Instance
Controle van Azure SQL Managed Instance houdt databasegebeurtenissen bij en schrijft deze naar een auditlogboek in uw Azure-opslagaccount. De controlefunctie biedt ook deze mogelijkheden:
- Naleving van wet- en regelgeving, inzicht in activiteiten in de database en in de afwijkingen en discrepanties die kunnen wijzen op problemen voor het bedrijf of vermoedelijke schendingen van de beveiliging.
- Mogelijk maken en faciliteren van nalevingsstandaarden, hoewel dit geen garantie biedt voor naleving. Zie het Vertrouwenscentrum van Microsoft Azure voor meer informatie, waar u de meest recente lijst met nalevingscertificeringen voor SQL Managed Instance kunt vinden.
Belangrijk
Controle voor Azure SQL Database, Azure Synapse en Azure SQL Managed Instance is geoptimaliseerd voor beschikbaarheid en prestaties. Tijdens zeer hoge activiteit, of een hoge netwerkbelasting, staan Azure SQL Database, Azure Synapse en Azure SQL Managed Instance bewerkingen toe om door te gaan en kunnen sommige gecontroleerde gebeurtenissen mogelijk niet worden vastgelegd.
Controle voor uw server instellen op Azure Storage
In de volgende sectie wordt de configuratie van controle op uw beheerde exemplaar beschreven.
Ga naar de Azure-portal.
Maak een Azure Storage-container waarin auditlogboeken worden opgeslagen.
Navigeer naar het Azure-opslagaccount waar u uw auditlogboeken wilt opslaan.
- Gebruik een opslagaccount in dezelfde regio als het beheerde exemplaar om lees-/schrijfbewerkingen tussen regio's te voorkomen.
- Als uw opslagaccount zich achter een virtueel netwerk of een firewall bevindt, raadpleegt u Toegang verlenen vanuit een virtueel netwerk.
- Als u de bewaarperiode wijzigt van 0 (onbeperkte retentie) in een andere waarde, is retentie alleen van toepassing op logboeken die zijn geschreven nadat de retentiewaarde is gewijzigd (logboeken die zijn geschreven tijdens de periode waarin retentie is ingesteld op onbeperkt , blijven behouden, zelfs nadat retentie is ingeschakeld).
Ga in het opslagaccount naar Overzicht en selecteer Blobs.
Selecteer + Container in het bovenste menu om een nieuwe container te maken.
Geef een containernaam op, stel openbaar toegangsniveau in op Privé en selecteer VERVOLGENS OK.
Belangrijk
Klanten die een onveranderbaar logboekarchief willen configureren voor hun controlegebeurtenissen op server- of databaseniveau, moeten de instructies van Azure Storage volgen. (Zorg ervoor dat u de optie hebt geselecteerd Aanvullende toevoeggegevens toestaan wanneer u de onveranderbare blobopslag configureert.)
Nadat u de container voor de auditlogboeken hebt gemaakt, zijn er twee manieren om deze te configureren als het doel voor de auditlogboeken: T-SQL of de gebruikersinterface van SQL Server Management Studio (SSMS):
Blob Storage configureren voor auditlogboeken met behulp van T-SQL:
Selecteer in de lijst met containers de zojuist gemaakte container en selecteer vervolgens Containereigenschappen.
Kopieer de container-URL door het kopieerpictogram te selecteren en de URL (bijvoorbeeld in Kladblok) op te slaan voor toekomstig gebruik. De indeling van de container-URL moet zijn
https://<StorageName>.blob.core.windows.net/<ContainerName>
Genereer een SAS-token voor Azure Storage om beheerde exemplaren toegangsrechten te verlenen voor het opslagaccount:
Navigeer naar het Azure-opslagaccount waar u de container in de vorige stap hebt gemaakt.
Selecteer Shared Access Signature in het menu Storage Instellingen.
Configureer de SAS als volgt:
Toegestane services: Blob
Begindatum: gebruik de datum van gisteren om problemen met betrekking tot tijdzones te voorkomen
Einddatum: kies de datum waarop dit SAS-token verloopt
Notitie
Vernieuw het token na verloop van de vervaldatum om controlefouten te voorkomen.
Selecteer SAS genereren.
Het SAS-token wordt onderaan weergegeven. Kopieer het token door het kopieerpictogram te selecteren en op te slaan (bijvoorbeeld in Kladblok) voor toekomstig gebruik.
Belangrijk
Verwijder het vraagteken (
?
) aan het begin van het token.
Verbinding maken naar uw beheerde exemplaar via SQL Server Management Studio of een ander ondersteund hulpprogramma.
Voer de volgende T-SQL-instructie uit om een nieuwe referentie te maken met behulp van de container-URL en het SAS-token dat u in de vorige stappen hebt gemaakt:
CREATE CREDENTIAL [<container_url>] WITH IDENTITY='SHARED ACCESS SIGNATURE', SECRET = '<SAS KEY>' GO
Voer de volgende T-SQL-instructie uit om een nieuwe servercontrole te maken (kies uw eigen auditnaam en gebruik de container-URL die u in de vorige stappen hebt gemaakt). Als dit niet is opgegeven, is de
RETENTION_DAYS
standaardwaarde 0 (onbeperkte retentie):CREATE SERVER AUDIT [<your_audit_name>] TO URL (PATH ='<container_url>', RETENTION_DAYS = <integer>); GO
Ga door met het maken van een servercontrolespecificatie of databasecontrolespecificatie.
Blob Storage configureren voor auditlogboeken met behulp van SQL Server Management Studio 18 en latere versies:
Verbinding maken naar het beheerde exemplaar met behulp van de gebruikersinterface van SQL Server Management Studio.
Vouw de hoofdnotitie van Objectverkenner uit.
Vouw het beveiligingsknooppunt uit, klik met de rechtermuisknop op het knooppunt Audits en selecteer Nieuwe controle:
Zorg ervoor dat de URL is geselecteerd in de controlebestemming en selecteer Bladeren:
(Optioneel) Meld u aan bij uw Azure-account:
Selecteer een abonnement, opslagaccount en blobcontainer in de vervolgkeuzelijsten of maak uw eigen container door te selecteren in Maken. Zodra u klaar bent, selecteert u OK:
Selecteer OK in het dialoogvenster Audit maken .
Notitie
Wanneer u de GEBRUIKERSinterface van SQL Server Management Studio gebruikt om controle te maken, wordt automatisch een referentie voor de container met een SAS-sleutel gemaakt.
Nadat u de blobcontainer hebt geconfigureerd als doel voor de auditlogboeken, maakt en schakelt u een servercontrolespecificatie of databasecontrolespecificatie in zoals u zou doen voor SQL Server:
Schakel de servercontrole in die u in stap 3 hebt gemaakt:
ALTER SERVER AUDIT [<your_audit_name>] WITH (STATE = ON); GO
Meer informatie:
- Verschillen controleren tussen Azure SQL Managed Instance en een database in SQL Server
- SERVERCONTROLE MAKEN
- ALTER SERVER AUDIT
Controle van Microsoft Ondersteuning bewerkingen
Door controle van Microsoft Ondersteuning bewerkingen voor SQL Managed Instance kunt u de bewerkingen van Microsoft-ondersteuningstechnici controleren wanneer ze tijdens een ondersteuningsaanvraag toegang nodig hebben tot uw server. Het gebruik van deze mogelijkheid biedt, in combinatie met uw controles, meer transparantie in uw personeel. Ook kunt u hiermee afwijkingen detecteren, trends visualiseren en gegevensverlies voorkomen.
Als u controle van Microsoft Ondersteuning bewerkingen wilt inschakelen, gaat u naar Controle maken onder Beveiligingscontrole> in uw SQL Manage Instance en selecteert u Microsoft-ondersteuningsbewerkingen.
Notitie
U moet een afzonderlijke servercontrole maken voor het controleren van Microsoft-bewerkingen. Als u dit selectievakje inschakelt voor een bestaande controle, wordt de controle overschreven en worden alleen ondersteuningsbewerkingen voor logboeken overschreven.
Controle voor uw server instellen op Event Hubs- of Azure Monitor-logboeken
Auditlogboeken van een beheerd exemplaar kunnen worden verzonden naar Azure Event Hubs- of Azure Monitor-logboeken. In deze sectie wordt beschreven hoe u dit configureert:
Navigeer in Azure Portal naar het beheerde exemplaar.
Selecteer Diagnostische instellingen.
Selecteer Diagnostische gegevens inschakelen. Als diagnostische gegevens al zijn ingeschakeld, wordt in plaats daarvan de diagnostische instelling +Toevoegen weergegeven.
Selecteer SQLSecurityAuditEvents in de lijst met logboeken.
Als u Microsoft-ondersteuningsbewerkingen configureert, selecteert u Auditlogboeken voor DevOps-bewerkingen in de lijst met logboeken.
Selecteer een bestemming voor de controlegebeurtenissen: Event Hubs, Azure Monitor-logboeken of beide. Configureer voor elk doel de vereiste parameters (bijvoorbeeld Log Analytics-werkruimte).
Selecteer Opslaan.
Verbinding maken naar het beheerde exemplaar met behulp van SQL Server Management Studio (SSMS) of een andere ondersteunde client.
Voer de volgende T-SQL-instructie uit om een servercontrole te maken:
CREATE SERVER AUDIT [<your_audit_name>] TO EXTERNAL_MONITOR; GO
Maak en schakel een servercontrolespecificatie of databasecontrolespecificatie in zoals u zou doen voor SQL Server:
Schakel de servercontrole in die in stap 8 is gemaakt:
ALTER SERVER AUDIT [<your_audit_name>] WITH (STATE = ON); GO
Controle instellen met T-SQL
-- Create audit without OPERATOR_AUDIT - Will audit standard SQL Audit events
USE [master];
GO
CREATE SERVER AUDIT testingauditnodevops TO EXTERNAL_MONITOR;
GO
CREATE SERVER AUDIT SPECIFICATION testingaudit_Specification_nodevops
FOR SERVER AUDIT testingauditnodevops ADD (SUCCESSFUL_LOGIN_GROUP),
ADD (BATCH_COMPLETED_GROUP),
ADD (FAILED_LOGIN_GROUP)
WITH (STATE = ON);
GO
ALTER SERVER AUDIT testingauditnodevops
WITH (STATE = ON);
GO
-- Create separate audit without OPERATOR_AUDIT ON - Will audit Microsoft Support Operations
USE [master]
CREATE SERVER AUDIT testingauditdevops TO EXTERNAL_MONITOR
WITH (OPERATOR_AUDIT = ON);
GO
CREATE SERVER AUDIT SPECIFICATION testingaudit_Specification_devops
FOR SERVER AUDIT testingauditdevops ADD (SUCCESSFUL_LOGIN_GROUP),
ADD (BATCH_COMPLETED_GROUP),
ADD (FAILED_LOGIN_GROUP)
WITH (STATE = ON);
GO
ALTER SERVER AUDIT testingauditdevops
WITH (STATE = ON);
GO
Auditlogboeken gebruiken
Logboeken gebruiken die zijn opgeslagen in Azure Storage
Er zijn verschillende methoden die u kunt gebruiken om logboeken voor blobcontrole weer te geven.
Gebruik de systeemfunctie
sys.fn_get_audit_file
(T-SQL) om de auditlogboekgegevens in tabelvorm te retourneren. Zie de sys.fn_get_audit_file documentatie voor meer informatie over het gebruik van deze functie.U kunt auditlogboeken verkennen met behulp van een hulpprogramma zoals Azure Storage Explorer. In Azure Storage worden controlelogboeken opgeslagen als een verzameling blobbestanden in een container die is gedefinieerd voor het opslaan van de auditlogboeken. Zie de referentie voor blob auditlogboekindeling voor meer informatie over de hiërarchie van de opslagmap, naamconventies en logboekindeling.
Raadpleeg Aan de slag met Azure SQL Database-controle voor een volledige lijst met methoden voor het gebruik van auditlogboeken.
Logboeken gebruiken die zijn opgeslagen in Event Hubs
Als u auditlogboekgegevens van Event Hubs wilt gebruiken, moet u een stream instellen om gebeurtenissen te gebruiken en naar een doel te schrijven. Zie de documentatie van Azure Event Hubs voor meer informatie.
Logboeken gebruiken en analyseren die zijn opgeslagen in Azure Monitor-logboeken
Als auditlogboeken naar Azure Monitor-logboeken worden geschreven, zijn ze beschikbaar in de Log Analytics-werkruimte, waar u geavanceerde zoekopdrachten kunt uitvoeren op de controlegegevens. Navigeer als uitgangspunt naar de Log Analytics-werkruimte. Selecteer in de sectie Algemeen logboeken en voer een basisquery in, zoals: search "SQLSecurityAuditEvents"
om de auditlogboeken weer te geven.
Azure Monitor-logboeken bieden u realtime operationele inzichten met behulp van geïntegreerde zoek- en aangepaste dashboards om miljoenen records gemakkelijk te analyseren in al uw workloads en servers. Zie de zoekreferentie voor Azure Monitor-logboeken voor meer informatie over zoektaal en opdrachten in Azure Monitor-logboeken.
Notitie
Dit artikel is onlangs bijgewerkt waarbij Log Analytics is vervangen door de term Azure Monitor-logboeken. Logboekgegevens worden nog steeds opgeslagen in een Log Analytics-werkruimte, en worden nog steeds verzameld en geanalyseerd met dezelfde Log Analytics-service. De terminologie wordt bijgewerkt om de rol van logboeken in Azure Monitor beter te weerspiegelen. Zie Wijzigingen in Azure Monitor-terminologie voor meer informatie.
Verschillen tussen databases in Azure SQL Managed Instance en databases in SQL Server controleren
De belangrijkste verschillen tussen controle in databases in Azure SQL Managed Instance en databases in SQL Server zijn:
- Met Azure SQL Managed Instance werkt controle op serverniveau en slaat
.xel
logboekbestanden op in Azure Blob Storage. - In SQL Server werkt controle op serverniveau, maar slaat gebeurtenissen op in het bestandssysteem en Windows-gebeurtenislogboeken.
XEvent-controle in beheerde exemplaren ondersteunt Azure Blob Storage-doelen. Bestands- en Windows-logboeken worden niet ondersteund.
De belangrijkste verschillen in de CREATE AUDIT
syntaxis voor controle naar Azure Blob Storage zijn:
- Er wordt een nieuwe syntaxis
TO URL
opgegeven en kunt u de URL opgeven van de Azure Blob Storage-container waarin de.xel
bestanden worden geplaatst. - Er wordt een nieuwe syntaxis
TO EXTERNAL MONITOR
opgegeven om Event Hubs en Azure Monitor-logboekdoelen in te schakelen. - De syntaxis
TO FILE
wordt niet ondersteund omdat Azure SQL Managed Instance geen toegang heeft tot Windows-bestandsshares. - De optie Afsluiten wordt niet ondersteund.
queue_delay
van 0 wordt niet ondersteund.
Volgende stappen
- Raadpleeg Aan de slag met Azure SQL Database-controle voor een volledige lijst met methoden voor het gebruik van auditlogboeken.
- Zie het Vertrouwenscentrum van Azure voor meer informatie over Azure-programma's die naleving van standaarden ondersteunen. Hier vindt u de meest recente lijst met nalevingscertificeringen.