Diagnostische Instelling Voor Activiteitenlogboeken

💼 Management Samenvatting

Azure Diagnostische instellingen voor activiteitenlogboeken exporteren abonnementsniveau activiteitenlogboeken naar een Log Analytics-werkruimte voor langetermijnbewaring en geavanceerde query's. De standaardbewaring van activiteitenlogboeken is 90 dagen, wat onvoldoende is voor nalevingsvereisten die vaak 365 dagen of meerjarige bewaartermijnen vereisen. Deze maatregel vormt de basis voor uitgebreide audittrails die essentieel zijn voor compliance, forensisch onderzoek en beveiligingsmonitoring binnen Nederlandse overheidsorganisaties die gebruikmaken van Microsoft Azure-clouddiensten.

Aanbeveling
IMPLEMENTEER ACTIVITEITENLOGBOEK EXPORT
Risico zonder
High
Risk Score
8/10
Implementatie
1u (tech: 1u)
Van toepassing op:
Azure

Het Azure Activiteitenlogboek registreert alle beheerlaagbewerkingen zoals het aanmaken, wijzigen en verwijderen van resources, roltoewijzingen en beleidswijzigingen. Deze logboeken hebben standaard een bewaartermijn van 90 dagen in de Azure Portal, waarna ze automatisch worden verwijderd. Dit is problematisch voor nalevingsaudits die 365 dagen of meer bewaartermijn vereisen. ISO 27001 en BIO vereisen vaak 7 jaar bewaartermijn voor auditgegevens, wat ver uitgaat boven de standaard Azure-retentie. Forensische onderzoeken vereisen vaak analyse van historische activiteit over lange periodes, waarbij het verlies van loggegevens na 90 dagen kritieke informatie kan vernietigen die nodig is voor het reconstrueren van beveiligingsincidenten. Regelgevingsaudits vereisen uitgebreide audittrails die aantonen wie wat heeft gedaan en wanneer, wat onmogelijk is zonder langetermijnbewaring van activiteitenlogboeken. Export naar Log Analytics biedt configureerbare bewaartermijn tot 730 dagen (2 jaar) of archivering naar een opslagaccount voor 7-jaar nalevingsbewaring. Daarnaast biedt het geavanceerde KQL-query's over historische gegevens, waarmee beveiligingsteams complexe analyses kunnen uitvoeren over trends, patronen en anomalieën in Azure-activiteit. Het systeem ondersteunt ook waarschuwingen op kritieke activiteitenloggebeurtenissen zoals roltoewijzingen of beleidsverwijderingen, waardoor organisaties proactief kunnen reageren op potentiële beveiligingsrisico's. SIEM-integratie maakt het mogelijk om activiteitenlogboekgegevens te combineren met andere beveiligingsgegevens voor gecentraliseerde monitoring en incident response. Kritieke logcategorieën zijn Beheer voor resourceoperaties, Beveiliging voor beveiligingsgerelateerde gebeurtenissen, Waarschuwing voor Azure Monitor-waarschuwingen en Beleid voor beleidsevaluaties. Elke categorie bevat unieke informatie die essentieel is voor verschillende aspecten van beveiligingsmonitoring en compliance.

PowerShell Modules Vereist
Primary API: Azure API
Connection: Connect-AzAccount
Required Modules: Az.Monitor

Implementatie

Deze maatregel configureert diagnostische instellingen op abonnementsniveau om activiteitenlogboeken naar een Log Analytics-werkruimte te exporteren. De configuratie gebeurt per abonnement via de Azure Portal onder Monitor → Activiteitenlogboek → Diagnostische instellingen → Diagnostische instelling toevoegen waarbij alle relevante categorieën worden geselecteerd. De belangrijkste categorieën zijn Beheer voor resourceoperaties, Beveiliging voor beveiligingsgebeurtenissen, Servicegezondheid voor Azure-servicegezondheid, Waarschuwing voor Azure Monitor-waarschuwingen, Aanbeveling voor Azure Advisor-aanbevelingen, Beleid voor beleidsevaluaties, Automatisch schalen voor automatische schaaloperaties en Resourcegezondheid voor resourcegezondheid. Log Analytics-werkruimte wordt geselecteerd als primaire bestemming voor real-time analyse en query's. De bewaartermijn moet minimaal 365 dagen zijn om te voldoen aan de meeste compliance-vereisten, met optionele archivering naar een opslagaccount voor 7-jaar bewaartermijn voor organisaties die moeten voldoen aan BIO-normen of andere langetermijnbewaarvereisten. De implementatie kost ongeveer 1 uur per abonnement, inclusief configuratie en verificatie. De operationele kosten bedragen €10-30 per maand per abonnement, afhankelijk van het activiteitenvolume en de geselecteerde bewaartermijn. Deze maatregel is verplicht voor naleving van verschillende compliance-frameworks en vormt een fundamentele beveiligingscontrole. Dit voldoet aan CIS Azure Benchmark controle 5.1.1 Level 1, wat een fundamentele beveiligingsmaatregel is die moet worden geïmplementeerd in alle Azure-omgevingen. Daarnaast voldoet het aan BIO 12.04, wat vereist dat organisaties loggegevens bewaren voor periodes die voldoen aan wettelijke en regelgevingsvereisten.

Vereisten

Voor het implementeren van diagnostische instellingen voor activiteitenlogboeken zijn specifieke Azure-resources en rechten vereist. Deze vereisten vormen de basis voor een succesvolle configuratie en zorgen ervoor dat alle benodigde componenten aanwezig zijn voordat de implementatie begint.

De primaire vereiste is de aanwezigheid van een Log Analytics-werkruimte (LAW). Deze werkruimte dient als centrale bestemming voor alle geëxporteerde activiteitenlogboekgegevens. De werkruimte moet zich in dezelfde Azure-regio bevinden als de abonnementen die worden gemonitord, of in ieder geval in een regio die voldoet aan de gegevensresidencievereisten van de organisatie. Voor Nederlandse overheidsorganisaties betekent dit vaak dat de werkruimte zich binnen de Europese Unie moet bevinden om te voldoen aan AVG-vereisten. De werkruimte moet zijn geconfigureerd met een passende prijscategorie die voldoende opslagcapaciteit biedt voor het verwachte logvolume. Voor organisaties met hoge activiteitsvolumes wordt een commitment tier aanbevolen om kosten te optimaliseren.

Daarnaast zijn Azure-abonnementen vereist waarop de diagnostische instellingen worden geconfigureerd. Elk abonnement dat moet worden gemonitord, vereist een afzonderlijke configuratie van diagnostische instellingen. Dit betekent dat organisaties met meerdere abonnementen een gestructureerde aanpak moeten volgen om ervoor te zorgen dat alle abonnementen correct zijn geconfigureerd. Het is belangrijk om te begrijpen dat diagnostische instellingen op abonnementsniveau worden geconfigureerd, niet op resourcegroep- of resourceniveau. Dit betekent dat alle activiteiten binnen een abonnement worden vastgelegd, ongeacht in welke resourcegroep de resources zich bevinden.

Voor wat betreft toegangsrechten moet de gebruiker of service principal die de configuratie uitvoert beschikken over de rol van Monitoring Contributor of een aangepaste rol met de machtiging Microsoft.Insights/diagnosticSettings/write. Daarnaast is Contributor-rechten op abonnementsniveau vereist om diagnostische instellingen te kunnen configureren. Voor organisaties die Azure Policy gebruiken om naleving af te dwingen, is het raadzaam om een beheerde identiteit te gebruiken in plaats van gebruikersaccounts om de beveiliging te verbeteren en het beheer te vereenvoudigen.

Optioneel maar sterk aanbevolen is de configuratie van een Azure Storage Account voor langetermijnarchivering. Dit opslagaccount kan worden gebruikt om activiteitenlogboeken te archiveren voor periodes die langer zijn dan de maximale bewaartermijn van 730 dagen in Log Analytics. Voor organisaties die moeten voldoen aan BIO-normen of andere regelgeving die 7-jaar bewaartermijnen vereist, is dit een essentiële component. Het opslagaccount moet zijn geconfigureerd met versleuteling en toegangsbeperkingen die voldoen aan de beveiligingsvereisten van de organisatie. De versleuteling moet zijn ingeschakeld voor data-at-rest, en toegang moet worden beperkt tot geautoriseerde gebruikers en services via Azure RBAC en netwerkbeperkingen waar van toepassing.

Naast de technische vereisten zijn er ook organisatorische overwegingen die moeten worden aangepakt voordat de implementatie begint. Organisaties moeten een duidelijk beleid hebben voor het beheer van activiteitenlogboeken, inclusief wie toegang heeft tot de loggegevens, hoe lang gegevens worden bewaard, en welke procedures worden gevolgd voor het analyseren en reageren op beveiligingsgebeurtenissen. Er moet ook worden nagedacht over de kosten van logopslag, vooral voor organisaties met hoge activiteitsvolumes. Log Analytics-werkruimten gebruiken een pay-as-you-go model waarbij kosten worden berekend op basis van de hoeveelheid opgeslagen gegevens en het aantal query's dat wordt uitgevoerd. Organisaties moeten hun verwachte logvolume schatten en een passende prijscategorie selecteren om kosten te optimaliseren.

Voor wat betreft netwerkvereisten moet de Log Analytics-werkruimte toegankelijk zijn vanuit de Azure-abonnementen die worden gemonitord. Dit betekent dat er geen netwerkbeperkingen mogen zijn die de export van activiteitenlogboeken blokkeren. Als de organisatie gebruikmaakt van privé-eindpunten of netwerkbeperkingen, moeten deze worden geconfigureerd om de export van activiteitenlogboeken toe te staan. Het is ook belangrijk om te overwegen dat de export van activiteitenlogboeken plaatsvindt via Azure's interne netwerk, wat betekent dat er geen extra netwerkconfiguratie nodig is zolang de standaard Azure-connectiviteit beschikbaar is.

Ten slotte moeten organisaties overwegen hoe ze de Diagnostic Settings gaan beheren en monitoren na de implementatie. Dit omvat het instellen van waarschuwingen voor wanneer Diagnostic Settings ontbreken of onjuist zijn geconfigureerd, het regelmatig controleren van de exportfunctionaliteit, en het documenteren van de configuratie voor auditdoeleinden. Voor organisaties met meerdere abonnementen is het raadzaam om Azure Policy te gebruiken om automatisch Diagnostic Settings te implementeren op nieuwe abonnementen en om te waarschuwen wanneer een Diagnostic Setting ontbreekt of onjuist is geconfigureerd.

Monitoring

Gebruik PowerShell-script diagnostic-setting-activity-logs.ps1 (functie Invoke-Monitoring) – Controleren.

Het monitoren van diagnostische instellingen voor activiteitenlogboeken is een kritieke taak die ervoor zorgt dat alle Azure-abonnementen correct zijn geconfigureerd en dat loggegevens daadwerkelijk worden geëxporteerd naar de Log Analytics-werkruimte. Regelmatige monitoring voorkomt dat loggegevens verloren gaan en zorgt voor continue naleving van compliance-vereisten.

De monitoring moet verifiëren dat voor elk abonnement een diagnostische instelling bestaat die activiteitenlogboeken exporteert naar de Log Analytics-werkruimte. Dit betekent dat de monitoring moet controleren op de aanwezigheid van de diagnostische instelling, de correcte configuratie van alle relevante logcategorieën, en de verificatie dat gegevens daadwerkelijk worden ontvangen in de Log Analytics-werkruimte. Het is niet voldoende om alleen te controleren of de diagnostische instelling bestaat; het is essentieel om te verifiëren dat de export daadwerkelijk functioneert.

Een effectieve monitoringstrategie omvat zowel proactieve als reactieve controles. Proactieve monitoring gebruikt geautomatiseerde scripts die regelmatig de configuratie van alle abonnementen controleren en waarschuwingen genereren wanneer een diagnostische instelling ontbreekt of onjuist is geconfigureerd. Deze scripts kunnen worden uitgevoerd als geplande taken in Azure Automation of als onderdeel van een CI/CD-pipeline. Reactieve monitoring omvat het regelmatig controleren van de Log Analytics-werkruimte om te verifiëren dat activiteitenlogboekgegevens daadwerkelijk worden ontvangen en dat er geen onderbrekingen zijn in de datastroom.

De monitoring moet specifiek controleren op de aanwezigheid van alle kritieke logcategorieën: Administrative, Security, Alert en Policy. Deze categorieën zijn essentieel voor beveiligingsaudits en compliance-rapportage. Administrative logs bevatten informatie over resourceoperaties zoals het aanmaken, wijzigen en verwijderen van resources. Security logs bevatten beveiligingsgerelateerde gebeurtenissen zoals authenticatiepogingen en toegangscontroles. Alert logs bevatten informatie over Azure Monitor-waarschuwingen, en Policy logs bevatten informatie over beleidsevaluaties en -wijzigingen.

Naast het controleren van de configuratie moet de monitoring ook de gezondheid van de export zelf verifiëren. Dit kan worden gedaan door KQL-query's uit te voeren op de Log Analytics-werkruimte om te controleren of recente activiteitenlogboekgebeurtenissen zijn ontvangen. Een goede praktijk is om dagelijks een query uit te voeren die controleert op de aanwezigheid van activiteitenlogboekgebeurtenissen van de afgelopen 24 uur. Als er geen gegevens worden ontvangen, kan dit wijzen op een probleem met de configuratie van de diagnostische instelling of met de export zelf.

Voor organisaties met meerdere abonnementen is het raadzaam om een gecentraliseerde monitoringoplossing te implementeren die alle abonnementen tegelijk controleert. Dit kan worden bereikt door gebruik te maken van Azure Policy om automatisch diagnostische instellingen te implementeren op nieuwe abonnementen, of door gebruik te maken van Azure Management Groups om monitoring op schaal te implementeren. De monitoring moet ook waarschuwingen genereren wanneer nieuwe abonnementen worden toegevoegd die nog geen diagnostische instelling hebben geconfigureerd. Gecentraliseerde monitoring maakt het mogelijk om de nalevingsstatus van alle abonnementen in één oogopslag te zien en om snel te reageren op problemen die worden gedetecteerd.

De monitoring moet ook de kwaliteit en volledigheid van de geëxporteerde gegevens controleren. Dit betekent dat de monitoring moet verifiëren dat alle verwachte logcategorieën daadwerkelijk worden geëxporteerd en dat er geen gegevens verloren gaan tijdens het exportproces. Het is ook belangrijk om te controleren op vertragingen in de export, omdat vertragingen kunnen wijzen op problemen met de Log Analytics-werkruimte of met de exportconfiguratie. Monitoring moet ook controleren op ongebruikelijke patronen in de loggegevens, zoals plotselinge dalingen in het aantal loggebeurtenissen, wat kan wijzen op problemen met de export of met de Azure-infrastructuur zelf.

Voor effectieve monitoring is het essentieel om gebruik te maken van geautomatiseerde tools en scripts die regelmatig de configuratie en functionaliteit van diagnostische instellingen controleren. Deze tools moeten kunnen detecteren wanneer een diagnostische instelling ontbreekt, wanneer een diagnostische instelling onjuist is geconfigureerd, en wanneer gegevens niet worden ontvangen in de Log Analytics-werkruimte. De tools moeten ook waarschuwingen genereren die worden verzonden naar de juiste personen of systemen, zodat problemen snel kunnen worden opgelost. Azure Monitor kan worden gebruikt om waarschuwingen te configureren op basis van KQL-query's die controleren op de aanwezigheid en kwaliteit van activiteitenlogboekgegevens.

Naast technische monitoring is het ook belangrijk om regelmatig de configuratie van diagnostische instellingen te controleren om ervoor te zorgen dat deze nog steeds voldoen aan de vereisten van de organisatie. Dit omvat het controleren van de bewaartermijn, het verifiëren dat alle relevante logcategorieën zijn geselecteerd, en het controleren dat de juiste Log Analytics-werkruimte is geselecteerd. Deze controles moeten worden uitgevoerd als onderdeel van regelmatige compliance-audits en moeten worden gedocumenteerd voor auditdoeleinden. Organisaties moeten ook procedures hebben voor het bijwerken van diagnostische instellingen wanneer de vereisten van de organisatie veranderen, zoals wanneer nieuwe logcategorieën beschikbaar komen of wanneer de bewaartermijn moet worden aangepast.

Implementatie

Gebruik PowerShell-script diagnostic-setting-activity-logs.ps1 (functie Invoke-Implementation) – Implementeren.

De implementatie van diagnostische instellingen voor activiteitenlogboeken vereist een gestructureerde aanpak die ervoor zorgt dat alle Azure-abonnementen correct zijn geconfigureerd. De implementatie moet worden uitgevoerd per abonnement, waarbij voor elk abonnement een afzonderlijke diagnostische instelling wordt geconfigureerd die activiteitenlogboeken exporteert naar de Log Analytics-werkruimte.

De eerste stap in de implementatie is het identificeren van alle abonnementen die moeten worden gemonitord. Dit omvat niet alleen productieabonnementen, maar ook ontwikkel-, test- en acceptatieomgevingen. Hoewel de beveiligingsvereisten voor niet-productieomgevingen mogelijk minder streng zijn, is het raadzaam om ook deze omgevingen te monitoren voor consistente beveiligingspostuur en voor het detecteren van beveiligingsincidenten die kunnen optreden tijdens ontwikkeling of tests.

Voor elk abonnement moet een diagnostische instelling worden geconfigureerd via de Azure Portal onder Monitor → Activiteitenlogboek → Diagnostische instellingen → Diagnostische instelling toevoegen. Tijdens de configuratie moeten alle relevante logcategorieën worden geselecteerd. De kritieke categorieën zijn Beheer, Beveiliging, Waarschuwing en Beleid. Beheerlogboeken bevatten informatie over alle resourceoperaties binnen het abonnement, inclusief het aanmaken, wijzigen en verwijderen van resources. Beveiligingslogboeken bevatten beveiligingsgerelateerde gebeurtenissen zoals authenticatiepogingen, toegangscontroles en beveiligingswaarschuwingen. Waarschuwingslogboeken bevatten informatie over Azure Monitor-waarschuwingen die zijn gegenereerd binnen het abonnement. Beleidslogboeken bevatten informatie over Azure Policy-evaluaties en -wijzigingen, wat essentieel is voor compliance-audits.

Naast deze kritieke categorieën kunnen aanvullende categorieën worden geselecteerd afhankelijk van de specifieke behoeften van de organisatie. ServiceHealth logs bevatten informatie over Azure-servicegezondheid en -onderbrekingen, wat nuttig kan zijn voor het begrijpen van de impact van serviceproblemen op de organisatie. Recommendation logs bevatten informatie over Azure Advisor-aanbevelingen, wat kan helpen bij het optimaliseren van de Azure-omgeving. Autoscale logs bevatten informatie over automatische schaaloperaties, wat nuttig kan zijn voor capaciteitsplanning. ResourceHealth logs bevatten informatie over de gezondheid van individuele resources, wat kan helpen bij het identificeren van problemen met specifieke resources.

Tijdens de configuratie moet de Log Analytics-werkruimte worden geselecteerd als bestemming voor de geëxporteerde logs. De werkruimte moet zich in dezelfde regio bevinden als de abonnementen, of in ieder geval in een regio die voldoet aan de gegevensresidencievereisten van de organisatie. Voor Nederlandse overheidsorganisaties betekent dit vaak dat de werkruimte zich binnen de Europese Unie moet bevinden. De bewaartermijn moet worden ingesteld op minimaal 365 dagen om te voldoen aan de meeste compliance-vereisten, hoewel sommige organisaties mogelijk langere bewaartermijnen vereisen.

Optioneel kan een Azure Storage Account worden geconfigureerd als aanvullende bestemming voor langetermijnarchivering. Dit is vooral belangrijk voor organisaties die moeten voldoen aan BIO-normen of andere regelgeving die 7-jaar bewaartermijnen vereisen. Het opslagaccount moet zijn geconfigureerd met versleuteling en toegangsbeperkingen die voldoen aan de beveiligingsvereisten van de organisatie. De archivering naar het opslagaccount gebeurt automatisch zodra de diagnostische instelling is geconfigureerd.

Na de configuratie moet de implementatie worden geverifieerd door te controleren of gegevens daadwerkelijk worden ontvangen in de Log Analytics-werkruimte. Dit kan worden gedaan door een KQL-query uit te voeren die controleert op de aanwezigheid van recente activiteitenlogboekgebeurtenissen. De implementatie moet ook worden gedocumenteerd, inclusief welke abonnementen zijn geconfigureerd, welke logcategorieën zijn geselecteerd, en welke bewaartermijnen zijn ingesteld. Deze documentatie is essentieel voor compliance-audits en voor het onderhoud van de configuratie. De verificatie moet worden uitgevoerd binnen 24 uur na de configuratie om ervoor te zorgen dat de export correct functioneert en dat er geen problemen zijn met de configuratie.

Voor organisaties met meerdere abonnementen is het raadzaam om de implementatie te automatiseren met behulp van Azure Policy of PowerShell-scripts. Azure Policy kan worden gebruikt om automatisch diagnostische instellingen te implementeren op nieuwe abonnementen en om te waarschuwen wanneer een diagnostische instelling ontbreekt of onjuist is geconfigureerd. PowerShell-scripts kunnen worden gebruikt om diagnostische instellingen te implementeren op bestaande abonnementen in bulk, wat tijd bespaart en ervoor zorgt dat alle abonnementen consistent zijn geconfigureerd. Bij het gebruik van geautomatiseerde implementatie moet er echter nog steeds worden geverifieerd dat de configuratie correct is en dat gegevens daadwerkelijk worden geëxporteerd.

Tijdens de implementatie moet er ook aandacht worden besteed aan de kosten van logopslag. Log Analytics-werkruimten gebruiken een pay-as-you-go model waarbij kosten worden berekend op basis van de hoeveelheid opgeslagen gegevens. Organisaties moeten hun verwachte logvolume schatten en een passende prijscategorie selecteren om kosten te optimaliseren. Voor organisaties met hoge activiteitsvolumes kan een commitment tier worden overwogen om kosten te verlagen. Het is ook belangrijk om regelmatig de opslagkosten te controleren en indien nodig de bewaartermijn of de geselecteerde logcategorieën aan te passen om kosten te beheersen.

Na de implementatie moeten organisaties procedures hebben voor het beheren en onderhouden van diagnostische instellingen. Dit omvat het regelmatig controleren van de configuratie, het bijwerken van de configuratie wanneer nieuwe logcategorieën beschikbaar komen, en het reageren op waarschuwingen wanneer problemen worden gedetecteerd. Organisaties moeten ook procedures hebben voor het archiveren van oude loggegevens naar een opslagaccount wanneer de bewaartermijn in Log Analytics is verstreken, vooral voor organisaties die moeten voldoen aan langetermijnbewaarvereisten zoals BIO-normen. Deze procedures moeten worden gedocumenteerd en regelmatig worden gecontroleerd om ervoor te zorgen dat ze nog steeds effectief zijn.

Compliance en Auditing

De implementatie van diagnostische instellingen voor activiteitenlogboeken is essentieel voor het voldoen aan verschillende compliance- en auditvereisten die van toepassing zijn op Nederlandse overheidsorganisaties. Deze maatregel vormt de basis voor uitgebreide audittrails die nodig zijn voor regelgevingsnaleving en beveiligingsaudits.

De CIS Azure Benchmark controle 5.1.1 Level 1 vereist expliciet dat activiteitenlogboeken worden geëxporteerd naar een Log Analytics-werkruimte voor langetermijnbewaring en analyse. Deze controle is geclassificeerd als Level 1, wat betekent dat het een fundamentele beveiligingsmaatregel is die moet worden geïmplementeerd in alle Azure-omgevingen. De controle vereist dat alle relevante logcategorieën worden geëxporteerd, inclusief Beheer-, Beveiligings-, Waarschuwings- en Beleidslogboeken. Het niet implementeren van deze controle resulteert in een niet-nalevingsstatus die kan worden geïdentificeerd tijdens externe audits en beveiligingsbeoordelingen.

De BIO-norm 12.04 vereist dat organisaties loggegevens bewaren voor een periode die voldoet aan de wettelijke en regelgevingsvereisten. Voor Nederlandse overheidsorganisaties betekent dit vaak dat loggegevens moeten worden bewaard voor minimaal 7 jaar, wat verder gaat dan de standaard 90-dagen bewaartermijn van Azure-activiteitenlogboeken. Door activiteitenlogboeken te exporteren naar een Log Analytics-werkruimte met een bewaartermijn van 730 dagen en aanvullende archivering naar een Azure Storage Account, kunnen organisaties voldoen aan deze langetermijnbewaarvereisten. De BIO-norm vereist ook dat loggegevens beschermd zijn tegen ongeautoriseerde toegang, wijziging of verwijdering, wat wordt bereikt door de versleuteling en toegangsbeperkingen die worden geboden door Azure Log Analytics en Azure Storage.

Naast CIS en BIO zijn er andere compliance-frameworks die vereisen dat Activity Logs worden bewaard en geanalyseerd. ISO 27001 vereist bijvoorbeeld dat organisaties beveiligingsgebeurtenissen monitoren en loggen, en dat deze logs worden bewaard voor een periode die voldoet aan de wettelijke en regelgevingsvereisten. De Algemene Verordening Gegevensbescherming (AVG) vereist dat organisaties kunnen aantonen dat zij passende technische en organisatorische maatregelen hebben genomen om persoonsgegevens te beschermen, wat onder andere wordt aangetoond door uitgebreide logging en monitoring van toegang tot en gebruik van systemen die persoonsgegevens verwerken.

Voor compliance-audits is het essentieel dat organisaties kunnen aantonen dat Activity Logs daadwerkelijk worden geëxporteerd en bewaard. Dit betekent dat de Diagnostic Setting-configuratie moet worden gedocumenteerd en dat er regelmatig moet worden geverifieerd dat gegevens daadwerkelijk worden ontvangen in de Log Analytics-werkruimte. Tijdens audits kunnen auditors vragen om bewijs dat Activity Logs worden bewaard, wat kan worden geleverd door het tonen van de Diagnostic Setting-configuratie en door het uitvoeren van KQL-query's die aantonen dat recente Activity Log-gebeurtenissen zijn ontvangen.

Het is ook belangrijk om te begrijpen dat compliance niet alleen gaat om het configureren van de diagnostische instellingen, maar ook om het regelmatig monitoren en analyseren van de activiteitenlogboekgegevens. Organisaties moeten procedures hebben voor het analyseren van activiteitenlogboekgebeurtenissen om beveiligingsincidenten te detecteren en te reageren. Dit omvat het instellen van waarschuwingen op kritieke gebeurtenissen zoals roltoewijzingen, beleidsverwijderingen en ongebruikelijke resourceoperaties. Deze waarschuwingen kunnen worden geconfigureerd in Azure Monitor en kunnen worden geïntegreerd met SIEM-systemen voor gecentraliseerde beveiligingsmonitoring. De analyse van activiteitenlogboekgegevens moet regelmatig worden uitgevoerd, idealiter dagelijks of wekelijks, afhankelijk van de grootte en complexiteit van de organisatie.

Voor Nederlandse overheidsorganisaties zijn er specifieke compliance-vereisten die moeten worden overwogen bij de implementatie van Diagnostic Settings. De Baseline Informatiebeveiliging Overheid (BIO) vereist bijvoorbeeld dat organisaties kunnen aantonen dat zij passende maatregelen hebben genomen om beveiligingsincidenten te detecteren en te reageren, wat onder andere wordt aangetoond door uitgebreide logging en monitoring. De BIO vereist ook dat loggegevens worden bewaard voor periodes die voldoen aan wettelijke en regelgevingsvereisten, wat vaak betekent dat loggegevens moeten worden bewaard voor minimaal 7 jaar. Dit vereist archivering naar een opslagaccount naast de bewaartermijn in Log Analytics.

Tijdens compliance-audits moeten organisaties kunnen aantonen dat diagnostische instellingen correct zijn geconfigureerd en dat gegevens daadwerkelijk worden geëxporteerd en bewaard. Dit betekent dat de configuratie moet worden gedocumenteerd en dat er regelmatig moet worden geverifieerd dat gegevens worden ontvangen in de Log Analytics-werkruimte. Organisaties moeten ook procedures hebben voor het reageren op auditvragen en voor het leveren van bewijs van compliance. Dit omvat het kunnen tonen van de configuratie van de diagnostische instelling, het uitvoeren van KQL-query's die aantonen dat recente activiteitenlogboekgebeurtenissen zijn ontvangen, en het kunnen aantonen dat loggegevens worden bewaard voor de vereiste periode.

Naast de technische aspecten van compliance moeten organisaties ook aandacht besteden aan de organisatorische aspecten. Dit omvat het hebben van duidelijk beleid voor het beheer van activiteitenlogboeken, het trainen van personeel in het gebruik en de analyse van loggegevens, en het hebben van procedures voor het reageren op beveiligingsincidenten die worden gedetecteerd via Activity Log-analyse. Organisaties moeten ook regelmatig hun compliance-status controleren en indien nodig hun configuratie bijwerken om te voldoen aan veranderende vereisten. Dit omvat het regelmatig controleren van nieuwe compliance-frameworks en het bijwerken van de configuratie wanneer nieuwe vereisten worden geïntroduceerd.

Remediatie

Gebruik PowerShell-script diagnostic-setting-activity-logs.ps1 (functie Invoke-Remediation) – Herstellen.

Wanneer monitoring aangeeft dat een diagnostische instelling ontbreekt of onjuist is geconfigureerd, moet onmiddellijk worden overgegaan tot remediatie om te voorkomen dat loggegevens verloren gaan en om de nalevingsstatus te herstellen. De remediatie moet worden uitgevoerd zodra een probleem wordt gedetecteerd, omdat elke dag dat activiteitenlogboeken niet worden geëxporteerd resulteert in permanent verlies van auditgegevens die niet kunnen worden hersteld.

De eerste stap in de remediatie is het identificeren van de exacte oorzaak van het probleem. Als een diagnostische instelling volledig ontbreekt, moet deze worden geconfigureerd volgens de implementatie-instructies. Als een diagnostische instelling bestaat maar onjuist is geconfigureerd, moet de configuratie worden gecorrigeerd. Veelvoorkomende problemen zijn het ontbreken van kritieke logcategorieën, het selecteren van de verkeerde Log Analytics-werkruimte, of het instellen van een onvoldoende bewaartermijn.

Wanneer een diagnostische instelling ontbreekt, moet deze worden geconfigureerd via de Azure Portal of via PowerShell-scripts. De configuratie moet alle relevante logcategorieën bevatten, met name Beheer, Beveiliging, Waarschuwing en Beleid. De Log Analytics-werkruimte moet correct worden geselecteerd, en de bewaartermijn moet worden ingesteld op minimaal 365 dagen. Na de configuratie moet worden geverifieerd dat gegevens daadwerkelijk worden ontvangen in de Log Analytics-werkruimte door een KQL-query uit te voeren die controleert op de aanwezigheid van recente activiteitenlogboekgebeurtenissen.

Als een diagnostische instelling onjuist is geconfigureerd, moet de bestaande configuratie worden bijgewerkt in plaats van verwijderd en opnieuw aangemaakt. Dit voorkomt onderbrekingen in de export en zorgt ervoor dat er geen gegevens verloren gaan tijdens de remediatie. De bijgewerkte configuratie moet alle relevante logcategorieën bevatten en moet worden geverifieerd om ervoor te zorgen dat de export correct functioneert.

In sommige gevallen kan het probleem zijn dat gegevens niet worden ontvangen in de Log Analytics-werkruimte, zelfs wanneer de diagnostische instelling correct is geconfigureerd. Dit kan worden veroorzaakt door problemen met de Log Analytics-werkruimte zelf, zoals onvoldoende opslagcapaciteit of problemen met de werkruimteconfiguratie. In dergelijke gevallen moet de Log Analytics-werkruimte worden gecontroleerd en indien nodig worden bijgewerkt of gerepareerd.

Na de remediatie moet worden geverifieerd dat het probleem daadwerkelijk is opgelost. Dit omvat het controleren van de configuratie van de diagnostische instelling, het verifiëren dat gegevens worden ontvangen in de Log Analytics-werkruimte, en het controleren dat alle relevante logcategorieën correct zijn geconfigureerd. De remediatie moet ook worden gedocumenteerd, inclusief wat het probleem was, hoe het is opgelost, en wanneer de remediatie is uitgevoerd. Deze documentatie is essentieel voor compliance-audits en voor het voorkomen van vergelijkbare problemen in de toekomst.

Om toekomstige problemen te voorkomen, is het raadzaam om Azure Policy te gebruiken om automatisch diagnostische instellingen te implementeren op nieuwe abonnementen en om te waarschuwen wanneer een diagnostische instelling ontbreekt of onjuist is geconfigureerd. Dit zorgt ervoor dat nieuwe abonnementen automatisch worden geconfigureerd en dat problemen snel worden gedetecteerd en opgelost. Regelmatige monitoring en verificatie zijn ook essentieel om ervoor te zorgen dat diagnostische instellingen correct blijven functioneren en dat er geen onderbrekingen zijn in de export van activiteitenlogboekgegevens. Organisaties moeten ook procedures hebben voor het regelmatig controleren van de configuratie en voor het bijwerken van de configuratie wanneer nieuwe logcategorieën beschikbaar komen of wanneer de vereisten van de organisatie veranderen.

Bij het oplossen van problemen met diagnostische instellingen is het belangrijk om systematisch te werk te gaan. De eerste stap is altijd het identificeren van de exacte oorzaak van het probleem door de configuratie te controleren en door te verifiëren of gegevens worden ontvangen in de Log Analytics-werkruimte. Als gegevens niet worden ontvangen, moet worden gecontroleerd of de diagnostische instelling correct is geconfigureerd, of de Log Analytics-werkruimte toegankelijk is, en of er geen netwerkbeperkingen zijn die de export blokkeren. Als de configuratie correct lijkt maar gegevens nog steeds niet worden ontvangen, moet worden gecontroleerd of er problemen zijn met de Log Analytics-werkruimte zelf, zoals onvoldoende opslagcapaciteit of problemen met de werkruimteconfiguratie.

Voor complexe problemen kan het nodig zijn om contact op te nemen met Microsoft Support of om gebruik te maken van Azure-diagnostische tools om de oorzaak van het probleem te identificeren. Het is ook belangrijk om te begrijpen dat sommige problemen tijdelijk kunnen zijn, zoals vertragingen in de export of tijdelijke problemen met de Azure-infrastructuur. In dergelijke gevallen moet worden gewacht en opnieuw worden gecontroleerd voordat overgegaan wordt tot meer ingrijpende remediatiemaatregelen. Het is echter belangrijk om niet te lang te wachten, omdat elke dag dat activiteitenlogboeken niet worden geëxporteerd resulteert in permanent verlies van auditgegevens.

Na de remediatie moet de configuratie worden geverifieerd om ervoor te zorgen dat het probleem daadwerkelijk is opgelost. Dit omvat het controleren van de configuratie van de diagnostische instelling, het verifiëren dat gegevens worden ontvangen in de Log Analytics-werkruimte, en het controleren dat alle relevante logcategorieën correct zijn geconfigureerd. De verificatie moet worden uitgevoerd binnen 24 uur na de remediatie en moet regelmatig worden herhaald om ervoor te zorgen dat de export blijft functioneren. De remediatie moet ook worden gedocumenteerd, inclusief wat het probleem was, hoe het is opgelost, en wanneer de remediatie is uitgevoerd. Deze documentatie is essentieel voor compliance-audits en voor het voorkomen van vergelijkbare problemen in de toekomst.

Compliance & Frameworks

Automation

Gebruik het onderstaande PowerShell script om deze security control te monitoren en te implementeren. Het script bevat functies voor zowel monitoring (-Monitoring) als remediation (-Remediation).

PowerShell
<# ================================================================================ AZURE POWERSHELL SCRIPT - Nederlandse Baseline voor Veilige Cloud ================================================================================ .SYNOPSIS Diagnostic Setting Activity Logs .DESCRIPTION CIS Azure Foundations Benchmark - Control 5.17 Controleert diagnostic settings voor Activity Logs. .NOTES Filename: diagnostic-setting-activity-logs.ps1 Author: Nederlandse Baseline voor Veilige Cloud Version: 1.0 CIS Control: 5.17 #> #Requires -Version 5.1 #Requires -Modules Az.Accounts, Az.Monitor [CmdletBinding()] param([Parameter()][switch]$Monitoring) $ErrorActionPreference = 'Stop' $PolicyName = "Diagnostic Setting Activity Logs" function Connect-RequiredServices { if (-not (Get-AzContext)) { Connect-AzAccount | Out-Null } } function Test-Compliance { $subscriptionId = (Get-AzContext).Subscription.Id $diagnosticSettings = Get-AzDiagnosticSetting -ResourceId "/subscriptions/$subscriptionId" -ErrorAction SilentlyContinue $result = @{ TotalSettings = $diagnosticSettings.Count } return $result } try { Connect-RequiredServices if ($Monitoring) { $r = Test-Compliance Write-Host "`n========================================" -ForegroundColor Cyan Write-Host "$PolicyName" -ForegroundColor Cyan Write-Host "========================================" -ForegroundColor Cyan Write-Host "Diagnostic Settings for Activity Log: $($r.TotalSettings)" -ForegroundColor $(if ($r.TotalSettings -gt 0) { 'Green' } else { 'Yellow' }) if ($r.TotalSettings -eq 0) { Write-Host "`n⚠️ Configureer diagnostic setting voor Activity Log" -ForegroundColor Yellow Write-Host "Stuur logs naar Log Analytics, Storage of Event Hub" -ForegroundColor Gray } } else { $r = Test-Compliance Write-Host "`nActivity Log Diagnostic Settings: $($r.TotalSettings)" } } catch { Write-Error $_; exit 1 } # ================================================================================ # Standaard Invoke-* Functions (Auto-generated) # ================================================================================ function Invoke-Implementation { <# .SYNOPSIS Implementeert de configuratie #> [CmdletBinding()] param() Invoke-Remediation } function Invoke-Monitoring { <# .SYNOPSIS Controleert de huidige configuratie status #> [CmdletBinding()] param() $Monitoring = $true try { Connect-RequiredServices if ($Monitoring) { $r = Test-Compliance Write-Host "`n========================================" -ForegroundColor Cyan Write-Host "$PolicyName" -ForegroundColor Cyan Write-Host "========================================" -ForegroundColor Cyan Write-Host "Diagnostic Settings for Activity Log: $($r.TotalSettings)" -ForegroundColor $(if ($r.TotalSettings -gt 0) { 'Green' } else { 'Yellow' }) if ($r.TotalSettings -eq 0) { Write-Host "`n⚠️ Configureer diagnostic setting voor Activity Log" -ForegroundColor Yellow Write-Host "Stuur logs naar Log Analytics, Storage of Event Hub" -ForegroundColor Gray } } else { $r = Test-Compliance Write-Host "`nActivity Log Diagnostic Settings: $($r.TotalSettings)" } } catch { Write-Error $_; exit 1 } } function Invoke-Remediation { <# .SYNOPSIS Herstelt de configuratie naar de gewenste staat .DESCRIPTION Dit is een monitoring-only control, remediation delegeert naar monitoring #> [CmdletBinding()] param() Write-Host "[INFO] Dit is een monitoring-only control" -ForegroundColor Yellow Write-Host "[INFO] Running monitoring check..." -ForegroundColor Cyan Invoke-Monitoring }

Risico zonder implementatie

Risico zonder implementatie
High: Activiteitenlogboeken gaan verloren na 90 dagen standaard bewaartermijn - onvoldoende voor APT-onderzoeken en compliance. Compliance: CIS 5.1.1, BIO 12.04. Het risico is hoog - auditkloof.

Management Samenvatting

Diagnostische instelling activiteitenlogboeken: Exporteer activiteitenlogboeken naar Log Analytics-werkruimte (365+ dagen bewaartermijn). Compliance en forensisch onderzoek. Activatie: Diagnostische instellingen → Activiteitenlogboek → Stream naar Log Analytics-werkruimte. Kosten: €50-200/maand. Verplicht CIS 5.1.1, BIO 12.04. Implementatie: 1-2 uur. Essentiële langetermijn audittrail.