Key Vault Automatische Sleutelrotatie

💼 Management Samenvatting

Automatische sleutelrotatie is een essentiële beveiligingsmaatregel voor het waarborgen van een veilige cloudomgeving en beschermt tegen ongeautoriseerde toegang en datalekes.

Aanbeveling
OVERWEEG AUTOMATISCHE SLEUTELROTATIE
Risico zonder
Medium
Risk Score
6/10
Implementatie
3u (tech: 2u)
Van toepassing op:
Azure Key Vault

Zonder automatische sleutelrotatie kunnen er significante beveiligingsrisico's ontstaan die leiden tot datalekken, compliance-overtredingen en reputatieschade voor de organisatie. Handmatige sleutelrotatie is foutgevoelig, arbeidsintensief en vaak inconsistent, wat de beveiligingspostuur van organisaties verzwakt.

PowerShell Modules Vereist
Primary API: Azure API
Connection: Connect-AzAccount
Required Modules: Az.Accounts, Az.KeyVault

Implementatie

Deze maatregel implementeert beveiligingsbest practices via Azure Key Vault-rotatiebeleid om cryptografische sleutels automatisch te roteren volgens vooraf gedefinieerde schema's, waardoor cloud resources en endpoints worden beschermd volgens actuele compliance-frameworks zoals ISO 27001 en de BIO.

Vereisten

Voor het implementeren van automatische sleutelrotatie in Azure Key Vault moeten organisaties voldoen aan een aantal technische en functionele vereisten. Deze vereisten zijn cruciaal voor een succesvolle implementatie en een naadloze werking van het rotatieproces. Het begrijpen van deze vereisten helpt bij het plannen van de implementatie en het voorkomen van operationele problemen na ingebruikname.

De primaire vereiste is de beschikbaarheid van Azure Key Vault Premium. Dit is een belangrijk onderscheid, aangezien automatische sleutelrotatie een functie is die uitsluitend beschikbaar is in de Premium-SKU van Azure Key Vault. De Standard-SKU biedt deze functionaliteit niet. Organisaties die momenteel Key Vault Standard gebruiken, moeten eerst upgraden naar Premium voordat automatische sleutelrotatie kan worden geconfigureerd. Deze upgrade heeft gevolgen voor de kostenstructuur en moet worden meegenomen in de budgetplanning. Het is raadzaam om vooraf de kostenimpact te analyseren door het aantal sleutels en het verwachte gebruik te inventariseren.

Naast de Premium-SKU vereist automatische sleutelrotatie ook de juiste machtigingen. De gebruiker of service principal die het rotatiebeleid configureert, moet beschikken over de rol 'Key Vault Secrets Officer' of een gelijkwaardige machtiging die het bewerken van rotatiebeleid toestaat. Voor productieomgevingen is het aan te raden om gebruik te maken van service principals met beperkte, role-based toegang in plaats van gebruikersaccounts, omdat dit het beveiligingsniveau verhoogt en audittrails verbetert. Organisaties moeten ervoor zorgen dat de toegewezen service principals beschikken over de minimale benodigde machtigingen volgens het principe van least privilege.

Een aanvullende vereiste betreft de beschikbaarheid van een Event Grid-integratie of alternatieve monitoringoplossing. Hoewel automatische rotatie op zichzelf werkt, is het raadzaam om een mechanisme te hebben dat meldingen genereert wanneer sleutels succesvol worden geroteerd of wanneer er fouten optreden tijdens het rotatieproces. Dit stelt security teams in staat om proactief te monitoren en snel te reageren op eventuele problemen. Voor geavanceerde scenario's kan ook een integratie met Azure Monitor en Log Analytics worden overwogen voor uitgebreide logging en analyse.

Tot slot is er een functionele vereiste met betrekking tot de applicaties die gebruikmaken van de te roteren sleutels. Deze applicaties moeten zodanig zijn geconfigureerd dat ze automatisch de nieuwe versie van een geroteerde sleutel kunnen gebruiken zonder handmatige interventie. Dit vereist vaak code-aanpassingen of het gebruik van Key Vault-referenties die automatisch de nieuwste versie van een sleutel ophalen. Organisaties moeten daarom een inventarisatie maken van alle systemen die afhankelijk zijn van Key Vault-sleutels en deze systemen testen voordat automatische rotatie wordt ingeschakeld.

Monitoring

Monitoring van automatische sleutelrotatie is essentieel om te garanderen dat het rotatieproces naar verwachting functioneert en om eventuele problemen tijdig te identificeren. Effectieve monitoring stelt organisaties in staat om proactief te reageren op rotatiefouten, inconsistente rotatieschema's of configuratiefouten. Dit hoofdstuk beschrijft de verschillende aspecten van monitoring voor automatische sleutelrotatie in Azure Key Vault en biedt praktische richtlijnen voor het opzetten van een robuuste monitoringstrategie.

Gebruik PowerShell-script automatic-key-rotation-enabled.ps1 (functie Invoke-Monitoring) – Controleren.

Het primaire monitoringobject is het rotatiebeleid zelf. Organisaties moeten regelmatig controleren of er voor alle relevante sleutels een rotatiebeleid is geconfigureerd en of deze beleidsregels correct zijn ingesteld volgens de beveiligingsvereisten. De controle omvat het verifiëren van de rotatie-intervallen, die doorgaans variëren tussen negentig en honderdtachtig dagen, afhankelijk van het type sleutel en de compliancevereisten. Te korte intervallen leiden tot onnodige operationele overhead, terwijl te lange intervallen de beveiligingspostuur kunnen verzwakken. Het is raadzaam om minimaal maandelijks een audit uit te voeren van alle rotatiebeleidsregels om te zorgen dat deze nog steeds voldoen aan de actuele beveiligings- en compliancestandaarden.

Naast het controleren van het rotatiebeleid is het monitoren van de daadwerkelijke rotatie-events cruciaal. Azure Key Vault genereert automatisch events wanneer een sleutel wordt geroteerd, zowel bij succesvolle als gefaalde rotaties. Deze events kunnen worden doorgestuurd naar Azure Event Grid of worden opgehaald via Azure Monitor-logs. Organisaties moeten een proces opzetten waarbij deze events worden geanalyseerd en waarbij er alerts worden geconfigureerd voor gevallen waarin rotaties mislukken of wanneer er afwijkingen worden gedetecteerd in het verwachte rotatiepatroon. Dit stelt IT-teams in staat om snel te reageren op problemen voordat deze escaleren naar beveiligingsincidenten.

Een belangrijk aspect van monitoring betreft het verifiëren dat applicaties na rotatie nog steeds correct functioneren. Hoewel automatische rotatie is ontworpen om transparant te zijn voor applicaties die Key Vault gebruiken, kunnen er zich edge cases voordoen waarin applicaties expliciet verwijzen naar een specifieke sleutelversie in plaats van de nieuwste versie. Organisaties moeten daarom na elke rotatieperiode controleren of alle afhankelijke applicaties nog steeds normaal functioneren. Dit kan worden geautomatiseerd door middel van health checks of door het monitoren van applicatielogs op cryptografische fouten die kunnen wijzen op problemen met sleuteltoegang.

Voor geavanceerde monitoring kan Azure Monitor worden gebruikt om custom metrics te configureren en dashboards te creëren die de rotatiestatus van alle sleutels in een Key Vault weergeven. Deze dashboards kunnen metrics bevatten zoals het aantal geslaagde rotaties in een bepaalde periode, het aantal mislukte rotaties, de gemiddelde tijd tussen rotaties en trends in rotatiegedrag. Door deze metrics regelmatig te analyseren, kunnen organisaties patronen identificeren en proactief problemen oplossen voordat deze kritiek worden. Het is aan te raden om deze dashboards toegankelijk te maken voor zowel security teams als IT-operations teams om gedeelde verantwoordelijkheid en snelle respons te faciliteren.

Compliance en Auditing

Automatische sleutelrotatie in Azure Key Vault speelt een cruciale rol in het voldoen aan verschillende compliance-frameworks die van toepassing zijn op Nederlandse overheidsorganisaties. Het implementeren van automatische rotatie helpt organisaties niet alleen om te voldoen aan technische beveiligingsvereisten, maar ook om auditbaar bewijs te leveren van proactief sleutelbeheer. Dit hoofdstuk beschrijft de compliance-aspecten van automatische sleutelrotatie en biedt richtlijnen voor het voorbereiden van audits.

Voor Nederlandse overheidsorganisaties is de Baseline Informatiebeveiliging Overheid (BIO) het primaire compliance-framework. BIO-controle 10.01 richt zich op sleutelbeheer en vereist dat organisaties cryptografische sleutels op een veilige en gestructureerde wijze beheren. Automatische sleutelrotatie draagt hieraan bij door te zorgen voor consistente en tijdige rotatie van sleutels volgens vooraf gedefinieerde schema's. Organisaties moeten kunnen aantonen dat rotaties regelmatig plaatsvinden en dat er processen zijn om te controleren of rotaties succesvol zijn uitgevoerd. Voor audit-doeleinden is het belangrijk om rotatiebeleidsregels, rotatie-events en eventuele fouten te documenteren en te bewaren voor de vereiste bewaartermijn van zeven jaar.

Internationaal is ISO 27001:2022 het meest erkende informatiebeveiligingsmanagementframework. Binnen ISO 27001 richt controle A.8.24 zich specifiek op cryptografie en vereist dat organisaties cryptografische controles correct implementeren en beheren. Automatische sleutelrotatie voldoet aan deze eis door te zorgen voor regelmatige vervanging van sleutels, wat het risico op compromittering van verouderde sleutels vermindert. ISO 27001-audits vereisen typisch dat organisaties kunnen aantonen dat cryptografische controles proactief worden beheerd en dat er een beproefd proces is voor sleutelrotatie. Automatische rotatie biedt hierbij het voordeel van consistentie en verifieerbaarheid boven handmatige processen.

Naast BIO en ISO 27001 zijn er ook sectorale compliance-vereisten die relevant kunnen zijn, zoals de NEN 7510 voor de zorgsector of de NEN 7512 voor informatiebeveiliging in de zorg. Hoewel deze frameworks specifieke sectoren betreffen, gelden vergelijkbare principes voor cryptografisch sleutelbeheer. Organisaties moeten hun specifieke compliance-vereisten identificeren en ervoor zorgen dat het automatische rotatiebeleid hieraan voldoet. Het is raadzaam om regelmatig een gap-analyse uit te voeren om te controleren of nieuwe of gewijzigde compliance-vereisten worden gedekt door het huidige rotatiebeleid.

Voor audit-doeleinden moeten organisaties een aantal documenten en bewijzen kunnen overleggen. Ten eerste moeten rotatiebeleidsregels gedocumenteerd zijn en toegankelijk zijn voor auditors. Ten tweede moeten rotatie-events en de status daarvan kunnen worden getoond, inclusief zowel succesvolle als gefaalde rotaties. Ten derde moeten organisaties kunnen aantonen dat er monitoring en alerting is geconfigureerd om proactief te reageren op rotatieproblemen. Tot slot moeten organisaties kunnen laten zien dat applicaties correct zijn geconfigureerd om automatisch geroteerde sleutels te gebruiken. Het is aan te raden om deze informatie regelmatig te verzamelen en op te slaan in een centrale locatie die gemakkelijk toegankelijk is voor auditors.

Remediatie

Wanneer automatische sleutelrotatie niet is geconfigureerd of niet correct functioneert, is het van cruciaal belang om dit snel te remediëren. Het ontbreken van automatische rotatie verhoogt het beveiligingsrisico aanzienlijk, omdat verouderde sleutels een groter risico vormen op compromittering en omdat handmatige rotatie foutgevoelig en arbeidsintensief is. Dit hoofdstuk beschrijft de stappen die moeten worden genomen om automatische sleutelrotatie te implementeren of te herstellen wanneer deze niet correct functioneert.

Gebruik PowerShell-script automatic-key-rotation-enabled.ps1 (functie Invoke-Remediation) – Herstellen.

De eerste stap in het remediatieproces is het identificeren van alle sleutels die automatische rotatie nodig hebben maar deze nog niet hebben geconfigureerd. Dit kan worden gedaan door alle sleutels in een Key Vault te inventariseren en voor elke sleutel te controleren of er een rotatiebeleid is ingesteld. Het is belangrijk om te onthouden dat alleen sleutels in Key Vault Premium automatische rotatie ondersteunen. Sleutels in Standard-SKU Key Vaults moeten eerst worden gemigreerd naar een Premium-SKU Key Vault voordat automatische rotatie kan worden geconfigureerd. Deze migratie moet zorgvuldig worden gepland om serviceonderbrekingen te voorkomen.

Zodra alle sleutels zijn geïdentificeerd, moet voor elke sleutel een rotatiebeleid worden geconfigureerd. Het rotatiebeleid definieert het interval waarmee sleutels moeten worden geroteerd, typisch tussen negentig en honderdtachtig dagen, afhankelijk van de beveiligingsvereisten en compliance-eisen. Bij het configureren van het rotatiebeleid moeten organisaties ook overwegen om een Event Grid-integratie te configureren om meldingen te ontvangen wanneer sleutels worden geroteerd of wanneer er fouten optreden tijdens het rotatieproces. Dit stelt security teams in staat om proactief te monitoren en snel te reageren op eventuele problemen.

Een belangrijk aspect van remediatie betreft het testen van de geconfigureerde rotatie voordat deze volledig in productie wordt ingeschakeld. Organisaties moeten ervoor zorgen dat alle applicaties die afhankelijk zijn van Key Vault-sleutels correct zijn geconfigureerd om automatisch geroteerde sleutels te gebruiken. Dit vereist vaak het testen van applicaties in een testomgeving voordat rotatie wordt ingeschakeld in productie. Het is ook raadzaam om eerst rotatie in te schakelen voor minder kritieke sleutels om vertrouwd te raken met het proces voordat kritieke productiesleutels worden geconfigureerd.

Na het configureren en testen van automatische rotatie moeten organisaties monitoring en alerting opzetten om te zorgen dat rotatie succesvol blijft functioneren. Dit omvat het configureren van Azure Monitor-alerts voor gefaalde rotaties, het opzetten van dashboards om de rotatiestatus te monitoren en het instellen van regelmatige audits om te verifiëren dat alle sleutels nog steeds een correct rotatiebeleid hebben. Het is aan te raden om minimaal maandelijks een audit uit te voeren van alle rotatiebeleidsregels om te zorgen dat deze nog steeds voldoen aan de actuele beveiligings- en compliancevereisten.

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 Automatic Key Rotation Enabled .DESCRIPTION CIS Azure Foundations Benchmark - Control 8.1 Controleert of automatische key rotation is ingeschakeld. .NOTES Filename: automatic-key-rotation-enabled.ps1 Author: Nederlandse Baseline voor Veilige Cloud Version: 1.0 CIS Control: 8.1 #> #Requires -Version 5.1 #Requires -Modules Az.Accounts, Az.KeyVault [CmdletBinding()] param([Parameter()][switch]$Monitoring) $ErrorActionPreference = 'Stop' $PolicyName = "Automatic Key Rotation Enabled" function Connect-RequiredServices { if (-not (Get-AzContext)) { Connect-AzAccount | Out-Null } } function Test-Compliance { $vaults = Get-AzKeyVault -ErrorAction SilentlyContinue $result = @{ TotalKeys = 0; WithAutoRotation = 0 } foreach ($vault in $vaults) { $keys = Get-AzKeyVaultKey -VaultName $vault.VaultName -ErrorAction SilentlyContinue foreach ($key in $keys) { $result.TotalKeys++ $keyDetail = Get-AzKeyVaultKey -VaultName $vault.VaultName -Name $key.Name -ErrorAction SilentlyContinue if ($keyDetail.RotationPolicy) { $result.WithAutoRotation++ } } } 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 "Total Keys: $($r.TotalKeys)" -ForegroundColor White Write-Host "With Auto-Rotation: $($r.WithAutoRotation)" -ForegroundColor $(if ($r.WithAutoRotation -gt 0) { 'Green' } else { 'Yellow' }) } else { $r = Test-Compliance Write-Host "`nAuto-Rotation: $($r.WithAutoRotation)/$($r.TotalKeys) keys" } } 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 "Total Keys: $($r.TotalKeys)" -ForegroundColor White Write-Host "With Auto-Rotation: $($r.WithAutoRotation)" -ForegroundColor $(if ($r.WithAutoRotation -gt 0) { 'Green' } else { 'Yellow' }) } else { $r = Test-Compliance Write-Host "`nAuto-Rotation: $($r.WithAutoRotation)/$($r.TotalKeys) keys" } } 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
Medium: Handmatige sleutelrotatie resulteert in operationele overhead, vergeten rotaties en inconsistente schema's. Voor compliance is automatische rotatie best practice. Het risico bij handmatige rotatie is medium en betreft voornamelijk operationele efficiëntie en het risico op menselijke fouten. Zonder automatische rotatie moeten organisaties handmatig een overzicht bijhouden van alle sleutels, rotatiedatums monitoren en manueel rotaties uitvoeren, wat foutgevoelig is en arbeidsintensief. Dit kan leiden tot verlopen sleutels, inconsistente rotatiecycli en mogelijke compliance-overtredingen.

Management Samenvatting

Automatische sleutelrotatie: Azure Key Vault roteert sleutels automatisch volgens een vooraf gedefinieerd beleid met intervallen tussen de negentig en honderdtachtig dagen. Deze aanpak vermindert handmatige overhead en zorgt voor consistente rotatieschema's. Vereisten: rotatiebeleidsconfiguratie per sleutel in Azure Key Vault Premium. Activatie: via Key Vault → Sleutels → Rotatiebeleid in de Azure-portal of via PowerShell. De functionaliteit zelf is gratis, maar vereist Key Vault Premium-SKU. Implementatie: ongeveer twee tot drie uur voor de volledige setup inclusief configuratie en testen. De belangrijkste voordelen zijn verbeterde operationele efficiëntie, gereduceerd risico op menselijke fouten en verhoogde compliance met beveiligingsstandaarden.