Aan de slag met controleren van Azure SQL Managed Instance

VAN TOEPASSING OP: Azure SQL Managed Instance

Azure SQL Managed Instance Auditing 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 de Vertrouwenscentrum van Azure voor meer informatie over Azure-programma's die ondersteuning bieden voor naleving van standaarden. Hier vindt u de meest recente lijst met nalevingscertificeringen.

Belangrijk

Controle voor Azure SQL Database, Azure Synapse en Azure SQL Managed Instance is geoptimaliseerd voor beschikbaarheid en prestaties. Tijdens een zeer hoge activiteit, of een hoge netwerkbelasting, kunnen Azure SQL Database, Azure Synapse en Azure SQL Managed Instance bewerkingen uitvoeren en worden sommige gecontroleerde gebeurtenissen mogelijk niet vastgerecordd.

Controle instellen voor uw server Azure Storage

In de volgende sectie wordt de configuratie van de controle voor uw beheerde exemplaar beschreven.

  1. Ga naar de Azure Portal.

  2. Maak een Azure Storage container waarin auditlogboeken worden opgeslagen.

    1. Navigeer naar het Azure-opslagaccount waar u uw auditlogboeken wilt opslaan.

      Belangrijk

      • Gebruik een opslagaccount in dezelfde regio als het beheerde exemplaar om lees-/schrijfgegevens in andere regio's te voorkomen.
      • Als uw opslagaccount zich achter een Virtual Network of een firewall, raadpleegt u Toegang verlenen vanuit een virtueel netwerk.
      • Als u de retentieperiode van 0 (onbeperkte retentie) wijzigt in een andere waarde, moet u er rekening mee houden dat retentie alleen van toepassing is op logboeken die zijn geschreven nadat de waarde is gewijzigd, (logboeken die zijn geschreven tijdens de periode waarin de retentie was ingesteld op onbeperkt, blijven behouden, zelfs nadat retentie is ingeschakeld).
    2. Ga in het opslagaccount naar Overzicht en klik op Blobs.

      Widget Azure Blobs

    3. Klik in het bovenste menu op + Container om een nieuwe container te maken.

      Pictogram Blobcontainer maken

    4. Geef een containernaam op, stel Openbaar toegangsniveau in op Privé en klik vervolgens op OK.

      Configuratie van blobcontainer maken

    Belangrijk

    Klanten die een onveranderbaar logboekopslag willen configureren voor hun controlegebeurtenissen op server- of databaseniveau,moeten de instructies van Azure Storage. (Zorg ervoor dat u Aanvullende appends toestaan hebt geselecteerd wanneer u de onveranderbare blobopslag configureert.)

  3. Nadat u de container voor de auditlogboeken hebt gemaakt, kunt u deze op twee manieren configureren als doel voor de auditlogboeken: met T-SQL of met behulp van de gebruikersinterface van SQL Server Management Studio (SSMS):

    • Blob Storage configureren voor auditlogboeken met T-SQL:

      1. Klik in de lijst met containers op de zojuist gemaakte container en klik vervolgens op Containereigenschappen.

        De knop Eigenschappen van blobcontainer

      2. Kopieer de container-URL door op het kopieerpictogram te klikken en de URL (bijvoorbeeld in Kladblok) op te slaan voor toekomstig gebruik. De url-indeling van de container moet zijn https://<StorageName>.blob.core.windows.net/<ContainerName>

        URL voor kopiëren van blobcontainer

      3. Genereer een Azure Storage SAS-token om controlerechten voor beheerde exemplaren toe te staan aan het opslagaccount:

        • Navigeer naar het Azure-opslagaccount waar u de container in de vorige stap hebt gemaakt.

        • Klik op Shared Access Signature in het Storage Instellingen menu.

          Shared Access Signature-pictogram in het menu Opslaginstellingen

        • Configureer de SAS als volgt:

          • Toegestane services: Blob

          • Begindatum: als u problemen met de tijdzone wilt voorkomen, gebruikt u de datum van gisteren

          • Einddatum: kies de datum waarop dit SAS-token verloopt

            Notitie

            Vernieuw het token na het verlopen om controlefouten te voorkomen.

          • Klik op SAS genereren.

            SAS-configuratie

        • Het SAS-token wordt onderaan weergegeven. Kopieer het token door te klikken op het kopieerpictogram en sla het op (bijvoorbeeld in Kladblok) voor toekomstig gebruik.

          SAS-token kopiëren

          Belangrijk

          Verwijder het vraagteken ('?') aan het begin van het token.

      4. Verbinding maken naar uw beheerde exemplaar via SQL Server Management Studio of een ander ondersteund hulpprogramma.

      5. Voer de volgende T-SQL 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
        
      6. 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 wordt opgegeven, RETENTION_DAYS is de standaardwaarde 0 (onbeperkte retentie):

        CREATE SERVER AUDIT [<your_audit_name>]
        TO URL ( PATH ='<container_url>' , RETENTION_DAYS =  integer )
        GO
        
      7. Ga door met het maken van een servercontrolespecificatie of databasecontrolespecificatie.

    • Configureer blobopslag voor auditlogboeken met behulp SQL Server Management Studio 18:

      1. Verbinding maken naar het beheerde exemplaar met behulp van de SQL Server Management Studio UI.

      2. Vouw de hoofdmap van de Objectverkenner.

      3. Vouw het knooppunt Beveiliging uit, klik met de rechtermuisknop op het knooppunt Controles en klik op Nieuwe controle:

        Knooppunt beveiliging en controle uitbreiden

      4. Zorg ervoor dat de URL is geselecteerd in auditbestemming en klik op Bladeren:

        Bladeren Azure Storage

      5. (Optioneel) Meld u aan bij uw Azure-account:

        Aanmelden bij Azure

      6. Selecteer een abonnement, opslagaccount en blobcontainer in de vervolgkeuzepagina's of maak uw eigen container door op Maken te klikken. Wanneer u klaar bent, klikt u op OK:

        Azure-abonnement, opslagaccount en blobcontainer selecteren

      7. Klik op OK in het dialoogvenster Controle maken.

        Notitie

        Wanneer u SQL Server Management Studio om een controle te maken, wordt er automatisch een referentie voor de container met sas-sleutel gemaakt.

      8. Nadat u de blobcontainer hebt geconfigureerd als doel voor de auditlogboeken, maakt en inschakelen een servercontrolespecificatie of databasecontrolespecificatie zoals u zou doen voor SQL Server:

    • T-SQL servercontrolespecificatie maken

    • T-SQL databasecontrolespecificatie maken

  4. Schakel de servercontrole in die u in stap 3 hebt gemaakt:

    ALTER SERVER AUDIT [<your_audit_name>]
    WITH (STATE=ON);
    GO
    

Meer informatie:

Controle instellen voor uw server om logboeken Event Hubs of Azure Monitor controleren

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:

  1. Navigeer in Azure Portal naar het beheerde exemplaar.

  2. Klik op Diagnostische instellingen.

  3. Klik op Diagnostische gegevens in-/ in-/uit. Als diagnostische gegevens al zijn ingeschakeld, wordt in plaats daarvan +Diagnostische instelling toevoegen weer.

  4. Selecteer SQLSecurityAuditEvents in de lijst met logboeken.

  5. Selecteer een doel voor de controlegebeurtenissen: Event Hubs, Azure Monitor logboeken of beide. Configureer voor elk doel de vereiste parameters (bijvoorbeeld Log Analytics-werkruimte).

  6. Klik op Opslaan.

    Diagnostische instellingen configureren

  7. Verbinding maken naar het beheerde exemplaar met SQL Server Management Studio (SSMS) of een andere ondersteunde client.

  8. Voer de volgende T-SQL uit om een servercontrole te maken:

    CREATE SERVER AUDIT [<your_audit_name>] TO EXTERNAL_MONITOR;
    GO
    
  9. Maak en schakel een servercontrolespecificatie of databasecontrolespecificatie in zoals u zou doen voor SQL Server:

  10. Schakel de servercontrole in die u in stap 8 hebt gemaakt:

    ALTER SERVER AUDIT [<your_audit_name>]
    WITH (STATE=ON);
    GO
    

Auditlogboeken gebruiken

Logboeken gebruiken die zijn opgeslagen in Azure Storage

Er zijn verschillende methoden die u kunt gebruiken om auditlogboeken voor blobs weer te bieden.

  • Gebruik de systeemfunctie sys.fn_get_audit_file (T-SQL) om de auditlogboekgegevens in tabelvorm te retourneren. Zie voor meer informatie over het gebruik van deze functie de sys.fn_get_audit_file documentatie.

  • U kunt auditlogboeken verkennen met behulp van een hulpprogramma zoals Azure Storage Explorer. In Azure Storage worden auditlogboeken opgeslagen als een verzameling blobbestanden in een container die is gedefinieerd voor het opslaan van de auditlogboeken. Zie de Blob Audit Log Format Reference voor meer informatie over de hiërarchie van de opslagmap, naamconventieën en logboekindeling.

  • Raadpleeg Aan de slag met Azure SQL Database controle voor een volledige lijst met verbruiksmethoden voor auditlogboek.

Logboeken gebruiken die zijn opgeslagen in Event Hubs

Als u auditlogboeken van Event Hubs wilt gebruiken, moet u een stroom instellen om gebeurtenissen te verbruiken en deze naar een doel te schrijven. Zie de documentatie Azure Event Hubs 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. Als uitgangspunt gaat u naar de Log Analytics-werkruimte. Klik onder de sectie Algemeen op Logboeken en voer een eenvoudige query in, zoals: search "SQLSecurityAuditEvents" om de auditlogboeken weer te geven.

Azure Monitor logboeken biedt u realtime operationele inzichten met behulp van geïntegreerd zoeken en aangepaste dashboards om eenvoudig miljoenen records te analyseren in al uw workloads en servers. Zie de zoekverwijzing voor Azure Monitor logboeken voor aanvullende nuttige informatie over de zoektaal en opdrachten 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.

Controleverschillen tussen databases in Azure SQL Managed Instance en databases in SQL Server

De belangrijkste verschillen tussen controle in databases in Azure SQL Managed Instance en databases in SQL Server zijn:

  • Met Azure SQL Managed Instance werkt de controle op serverniveau en worden .xel logboekbestanden opgeslagen in Azure Blob Storage.
  • In SQL Server audit werkt op serverniveau, maar worden gebeurtenissen opgeslagen in het bestandssysteem en Windows gebeurtenislogboeken.

XEvent-controle in beheerde exemplaren ondersteunt Azure Blob Storage-doelen. Bestands- 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 opgegeven waarmee u de URL kunt opgeven van TO URL de Azure Blob Storage-container waarin de bestanden worden .xel geplaatst.
  • Er wordt een nieuwe TO EXTERNAL MONITOR syntaxis opgegeven om de Event Hubs en Azure Monitor logboekdoelen in te stellen.
  • De TO FILE syntaxis wordt niet ondersteund omdat Azure SQL Managed Instance geen toegang heeft Windows bestands shares.
  • De optie Afsluiten wordt niet ondersteund.
  • queue_delayvan 0 wordt niet ondersteund.

Volgende stappen

  • Raadpleeg Aan de slag met Azure SQL Database controle voor een volledige lijst met verbruiksmethoden voor auditlogboek.
  • Zie de Vertrouwenscentrum van Azure voor meer informatie over Azure-programma's die ondersteuning bieden voor naleving van standaarden. Hier vindt u de meest recente lijst met nalevingscertificeringen.