Azure Identity: Intelligente Authenticatie En Adaptieve Toegangscontrole

💼 Management Samenvatting

Intelligente authenticatie vertegenwoordigt de volgende generatie van identity security door gebruik te maken van machine learning, gedragsanalyses en risicogebaseerde besluitvorming om dynamische en contextuele toegangsbeslissingen te nemen die zich automatisch aanpassen aan veranderende bedreigingslandschappen en gebruikerspatronen. Voor Nederlandse overheidsorganisaties biedt intelligente authenticatie een krachtige manier om de balans te vinden tussen gebruikerservaring en beveiliging, waarbij legitieme gebruikers naadloos toegang krijgen terwijl kwaadwillende actoren worden geblokkeerd zonder onnodige frictie. Deze geavanceerde beveiligingsmaatregel draagt direct bij aan compliance met de Baseline Informatiebeveiliging Overheid (BIO), de NIS2-richtlijn en internationale standaarden zoals ISO 27001 door het implementeren van adaptieve beveiligingscontroles die zich continu aanpassen aan nieuwe bedreigingen en gebruikersgedrag.

Aanbeveling
IMPLEMENT
Risico zonder
High
Risk Score
8/10
Implementatie
18u (tech: 12u)
Van toepassing op:
Azure AD
Entra ID
Microsoft 365

Traditionele authenticatiemethoden die uitsluitend afhankelijk zijn van statische factoren zoals wachtwoorden en meervoudige authenticatie bieden onvoldoende bescherming tegen geavanceerde bedreigingen zoals credential stuffing, phishing-aanvallen, en accountovernames. Deze methoden kunnen niet adequaat reageren op veranderende risicoprofielen, ongebruikelijke gebruikersgedragingen, of nieuwe aanvalstechnieken die continu evolueren. Zonder intelligente authenticatie lopen organisaties het risico dat kwaadwillende actoren toegang krijgen tot gevoelige resources door gestolen credentials te gebruiken, terwijl legitieme gebruikers worden gehinderd door onnodige authenticatie-uitdagingen die de productiviteit verminderen. Intelligente authenticatie lost deze fundamentele problemen op door gebruik te maken van machine learning-algoritmen die continu leren van gebruikersgedrag, aanmeldpatronen, en bedreigingssignalen om dynamische risicoscores te berekenen voor elke aanmeldpoging. Door deze risicoscores te combineren met contextuele informatie zoals apparaatstatus, locatie, tijdstip, en applicatie, kunnen organisaties intelligente beslissingen nemen over wanneer extra verificatie vereist is, wanneer toegang moet worden geblokkeerd, of wanneer toegang naadloos kan worden verleend zonder gebruikersfrictie.

PowerShell Modules Vereist
Primary API: Microsoft Graph API
Connection: Connect-MgGraph
Required Modules: Microsoft.Graph.Identity.SignIns, Microsoft.Graph.Identity.Protection

Implementatie

Deze control implementeert een volledig geconfigureerd intelligent authenticatiesysteem dat gebruik maakt van Azure AD Identity Protection, risicogebaseerde Conditional Access Policies, en gedragsanalyses om adaptieve toegangsbeslissingen te nemen. De configuratie omvat het inschakelen van Azure AD Identity Protection met automatische risicodetectie voor gebruikersrisico's en aanmeldrisico's, het configureren van risicogebaseerde Conditional Access Policies die automatisch reageren op gedetecteerde risico's, het implementeren van gedragsanalyses die ongebruikelijke gebruikerspatronen identificeren, en het configureren van adaptieve authenticatie die zich aanpast aan de context van elke aanmeldpoging. Het systeem maakt gebruik van machine learning-modellen die continu worden getraind op basis van miljoenen aanmeldpogingen en bedreigingssignalen om nauwkeurige risicobeoordelingen te maken. Voor gebruikers met lage risicoscores wordt naadloze toegang verleend zonder extra verificatie, terwijl gebruikers met hoge risicoscores worden geblokkeerd of extra verificatie moeten uitvoeren. Het systeem leert continu van nieuwe bedreigingen en gebruikersgedragingen, waardoor de nauwkeurigheid van risicodetectie voortdurend verbetert zonder handmatige interventie.

Vereisten

Voor het succesvol implementeren van intelligente authenticatie zijn verschillende technische en organisatorische vereisten noodzakelijk die zorgvuldig moeten worden overwogen voordat het proces wordt gestart. De belangrijkste technische vereiste is het beschikken over Azure AD Premium P2-licenties voor alle gebruikers die onder intelligente authenticatie vallen. Deze licenties zijn essentieel voor het gebruik van Azure AD Identity Protection, dat de kern vormt van intelligente authenticatie door geavanceerde risicodetectie en machine learning-algoritmen te bieden. Zonder Premium P2-licenties zijn organisaties beperkt tot basisauthenticatie en kunnen zij geen gebruik maken van risicogebaseerde toegangscontrole, gedragsanalyses, of adaptieve authenticatie. Voor organisaties die nog geen Premium P2-licenties hebben, kan een gefaseerde aanpak worden overwogen waarbij eerst Premium P1-licenties worden gebruikt voor basis Conditional Access Policies, gevolgd door een upgrade naar Premium P2 wanneer budget beschikbaar is voor volledige intelligente authenticatie.

Een tweede kritieke vereiste betreft het beschikken over een volledig geconfigureerd Conditional Access-raamwerk dat als basis dient voor intelligente authenticatie. Intelligente authenticatie bouwt voort op Conditional Access Policies door risicogebaseerde beslissingen toe te voegen aan contextuele toegangscontroles. Zonder een solide Conditional Access-basis kunnen risicogebaseerde beleidsregels niet effectief functioneren, omdat zij afhankelijk zijn van de Conditional Access-infrastructuur voor het afdwingen van toegangsbeslissingen. Het Conditional Access-raamwerk moet minimaal bestaan uit baseline-beleidsregels voor meervoudige authenticatie, apparaatcompliance, en legacy authenticatie blokkeren. Deze basisbeleidsregels vormen de fundament waarop intelligente authenticatie wordt gebouwd, waarbij risicogebaseerde beslissingen worden toegevoegd als een extra beveiligingslaag die zich dynamisch aanpast aan veranderende bedreigingen en gebruikersgedragingen.

Het configureren van uitgebreide logging en monitoring vormt een derde essentiële vereiste die cruciaal is voor de effectiviteit en verantwoording van intelligente authenticatie. Intelligente authenticatie genereert grote hoeveelheden data over gebruikersgedrag, aanmeldpatronen, risicodetecties, en toegangsbeslissingen die moeten worden gelogd en geanalyseerd om de effectiviteit van het systeem te waarborgen. Dit omvat het inschakelen van Azure AD audit logging voor alle Identity Protection-gebeurtenissen, het configureren van Log Analytics-workspaces voor het opslaan en analyseren van risicodata, en het opzetten van dashboards en alerting voor het monitoren van risicodetecties en toegangsbeslissingen. Zonder uitgebreide logging en monitoring kunnen organisaties niet verifiëren dat intelligente authenticatie correct functioneert, kunnen zij niet reageren op valse positieven die legitieme gebruikers onterecht blokkeren, en kunnen zij niet aantonen aan auditors en toezichthouders dat passende beveiligingsmaatregelen zijn geïmplementeerd.

Een vastgesteld en duidelijk gedocumenteerd beleidsraamwerk voor risicobeheer is eveneens cruciaal voor het succes van intelligente authenticatie en moet zorgvuldig worden afgestemd op de specifieke behoeften en risicotolerantie van de organisatie. Het beleidsraamwerk moet expliciet maken welke risiconiveaus worden gebruikt voor toegangsbeslissingen, welke acties worden ondernomen bij verschillende risicoscores, hoe valse positieven worden afgehandeld, en hoe gebruikers kunnen worden uitgesloten van risicogebaseerde controles wanneer dit nodig is. Het raamwerk moet ook voorzien in een duidelijk proces voor het evalueren en aanpassen van risicodrempels op basis van organisatorische feedback en bedreigingstrends. Het schema moet duidelijk worden gecommuniceerd naar alle betrokken partijen, inclusief beveiligingsteams, helpdeskmedewerkers, en gebruikers, en moet worden vastgelegd in het formele beveiligingsbeleid van de organisatie om consistentie en naleving te waarborgen.

Ten slotte moet een duidelijk gedefinieerd en gedocumenteerd proces worden opgesteld voor het testen en valideren van intelligente authenticatie voordat deze volledig wordt geactiveerd. Dit proces moet in detail specificeren hoe risicogebaseerde beleidsregels worden getest in report-only modus, hoe de impact wordt geëvalueerd op gebruikers en applicaties, hoe valse positieven worden geïdentificeerd en aangepakt, en hoe het systeem geleidelijk wordt gerold naar productie. Het proces moet ook voorzien in monitoring en alerting voor wanneer intelligente authenticatie gebruikers blokkeert of extra verificatie vereist, zodat beheerders snel kunnen reageren op problemen en gebruikers kunnen ondersteunen wanneer zij toegangsproblemen ervaren. Daarnaast moet het proces voorzien in regelmatige evaluaties van de effectiviteit van intelligente authenticatie, waarbij wordt geanalyseerd of het systeem correct kwaadwillende actoren blokkeert zonder legitieme gebruikers onnodig te hinderen.

Implementatie

Gebruik PowerShell-script intelligent-authentication.ps1 (functie Invoke-Remediation) – Configureert intelligente authenticatie met Azure AD Identity Protection en risicogebaseerde Conditional Access Policies.

De implementatie van intelligente authenticatie begint met het inschakelen en configureren van Azure AD Identity Protection, dat de kern vormt van intelligente authenticatie door geavanceerde risicodetectie en machine learning-algoritmen te bieden. Identity Protection maakt gebruik van miljoenen aanmeldpogingen en bedreigingssignalen om continu te leren en risicodetecties te verbeteren, waardoor organisaties kunnen profiteren van de collectieve intelligentie van de Microsoft-cloud. De configuratie begint met het navigeren naar de Microsoft Entra ID-portal en het selecteren van de Security-sectie, gevolgd door de Identity Protection-functionaliteit. Vanuit dit menu worden risicobeleidsregels geconfigureerd voor gebruikersrisico's en aanmeldrisico's, waarbij organisaties kunnen kiezen tussen automatische remediatie, handmatige review, of blokkering van toegang bij verschillende risiconiveaus.

Voor gebruikersrisicobeleid wordt een beleid geconfigureerd dat automatisch reageert op gedetecteerde gebruikersrisico's, zoals gecompromitteerde credentials, ongebruikelijke activiteiten, of verdachte gebruikersgedragingen. Het beleid wordt geconfigureerd met verschillende risiconiveaus: laag, gemiddeld, hoog, en zeer hoog. Voor lage risicoscores kan het beleid worden ingesteld op automatische remediatie, waarbij gebruikers worden gevraagd om hun wachtwoord te wijzigen of meervoudige authenticatie te registreren. Voor gemiddelde risicoscores kan het beleid worden ingesteld op handmatige review, waarbij beveiligingsanalisten de situatie kunnen evalueren voordat actie wordt ondernomen. Voor hoge en zeer hoge risicoscores kan het beleid worden ingesteld op automatische blokkering van toegang, waarbij gebruikers worden geblokkeerd totdat een beheerder de situatie heeft onderzocht en opgelost. Het beleid wordt geconfigureerd met uitzonderingen voor break-glass accounts en noodtoegang om te voorkomen dat beheerders worden uitgesloten van kritieke systemen tijdens noodsituaties.

Voor aanmeldrisicobeleid wordt een beleid geconfigureerd dat automatisch reageert op gedetecteerde aanmeldrisico's, zoals aanmeldingen vanaf anonieme IP-adressen, onbekende locaties, geïnfecteerde apparaten, of verdachte aanmeldpatronen. Het beleid wordt geconfigureerd met verschillende risiconiveaus: laag, gemiddeld, hoog, en zeer hoog. Voor lage risicoscores kan het beleid worden ingesteld op naadloze toegang zonder extra verificatie, waardoor gebruikerservaring wordt geoptimaliseerd. Voor gemiddelde risicoscores kan het beleid worden ingesteld op meervoudige authenticatie vereisen, waarbij gebruikers een extra verificatiefactor moeten gebruiken voordat toegang wordt verleend. Voor hoge en zeer hoge risicoscores kan het beleid worden ingesteld op automatische blokkering van toegang, waarbij aanmeldpogingen worden geweigerd totdat aanvullende verificatie is voltooid of een beheerder de situatie heeft onderzocht. Het beleid wordt geconfigureerd met uitzonderingen voor vertrouwde locaties en apparaten om te voorkomen dat legitieme gebruikers onnodig worden gehinderd.

Naast Identity Protection-beleidsregels worden risicogebaseerde Conditional Access Policies geconfigureerd die gebruikersrisico's en aanmeldrisico's integreren in het Conditional Access-raamwerk. Deze beleidsregels maken het mogelijk om risicogebaseerde beslissingen te combineren met andere contextuele factoren zoals apparaatstatus, locatie, en applicatie, waardoor nog nauwkeurigere toegangsbeslissingen kunnen worden genomen. Een beleid wordt geconfigureerd dat aanmeldpogingen met hoge gebruikersrisicoscores blokkeert, waarbij gebruikers die zijn geïdentificeerd als hoog risico worden geblokkeerd van toegang tot alle cloud-applicaties totdat hun risicostatus is opgelost. Een tweede beleid wordt geconfigureerd dat aanmeldpogingen met hoge aanmeldrisicoscores extra verificatie vereist, waarbij gebruikers die inloggen vanaf verdachte locaties of apparaten meervoudige authenticatie moeten uitvoeren. Een derde beleid wordt geconfigureerd dat aanmeldpogingen vanaf anonieme IP-adressen blokkeert, waarbij toegang wordt geweigerd voor aanmeldingen die afkomstig zijn van Tor-netwerken of andere anonieme proxy-services.

Voor gedragsanalyses wordt Azure AD Identity Protection geconfigureerd om ongebruikelijke gebruikerspatronen te identificeren en te analyseren. Het systeem maakt gebruik van machine learning-algoritmen die continu leren van gebruikersgedrag, aanmeldpatronen, en bedreigingssignalen om afwijkingen te detecteren die kunnen wijzen op accountovernames, credential stuffing, of andere kwaadwillende activiteiten. Het systeem analyseert factoren zoals aanmeldtijden, locaties, apparaten, applicaties, en gebruikersgedrag om een baseline te creëren voor elke gebruiker. Wanneer afwijkingen worden gedetecteerd ten opzichte van deze baseline, worden risicoscores verhoogd en worden passende maatregelen genomen, zoals extra verificatie vereisen of toegang blokkeren. Het systeem leert continu van nieuwe bedreigingen en gebruikersgedragingen, waardoor de nauwkeurigheid van risicodetectie voortdurend verbetert zonder handmatige interventie.

Na het configureren van alle beleidsregels is het essentieel om de voortgang actief te monitoren en ervoor te zorgen dat intelligente authenticatie correct functioneert zonder onbedoelde toegangsblokkades. Het systeem biedt uitgebreide dashboards en rapporten die real-time inzicht geven in risicodetecties, toegangsbeslissingen, en gebruikersimpact. Identity Protection-dashboards tonen overzichten van gebruikersrisico's, aanmeldrisico's, gedetecteerde bedreigingen, en genomen acties. Conditional Access Insights-dashboards tonen hoeveel aanmeldpogingen worden geblokkeerd of extra verificatie vereisen op basis van risicogebaseerde beleidsregels. Deze dashboards kunnen worden gebruikt om trends te identificeren, zoals of bepaalde locaties of apparaten consistent hoge risicoscores genereren, of of bepaalde gebruikersgroepen meer ondersteuning nodig hebben bij het omgaan met risicogebaseerde controles. Actieve monitoring helpt om problemen vroegtijdig te detecteren, valse positieven te identificeren en aan te pakken, en zorgt ervoor dat intelligente authenticatie effectief blijft functioneren zonder onnodige gebruikersimpact.

Compliance en Auditing

Intelligente authenticatie vormt een geavanceerde en krachtige beveiligingsmaatregel die bijdraagt aan compliance met meerdere belangrijke beveiligings- en compliance-frameworks die wereldwijd worden erkend en toegepast. De CIS Microsoft 365 Benchmark versie 1.4.0 specificeert in meerdere controles expliciet dat organisaties risicogebaseerde toegangscontrole moeten implementeren om geavanceerde bedreigingen te detecteren en te blokkeren. Deze controles vallen onder niveau L2, wat betekent dat geavanceerde beveiligingsmaatregelen worden aanbevolen voor organisaties met hogere beveiligingsvereisten. De CIS Benchmark benadrukt het belang van adaptieve beveiligingscontroles die zich automatisch aanpassen aan veranderende bedreigingslandschappen en gebruikersgedragingen, waarbij intelligente authenticatie een essentiële rol speelt in het waarborgen van effectieve beveiliging zonder onnodige gebruikersfrictie.

Voor Nederlandse overheidsorganisaties is de Baseline Informatiebeveiliging Overheid (BIO) van bijzonder en kritiek belang, aangezien deze baseline specifiek is ontwikkeld voor de Nederlandse publieke sector en verplicht is voor alle overheidsorganisaties. BIO-controle 08.03 vereist expliciet en zonder uitzondering dat organisaties passende authenticatiemethoden implementeren, inclusief adaptieve authenticatie die zich aanpast aan veranderende risicoprofielen. BIO-controle 09.01 vereist dat organisaties toegangscontroles implementeren die zijn gebaseerd op de principes van minimale bevoegdheden en need-to-know, waarbij intelligente authenticatie bijdraagt door dynamische toegangsbeslissingen te nemen die zijn gebaseerd op contextuele risico's. De BIO benadrukt sterk het belang van volledig gedocumenteerde beveiligingsprocessen waarbij alle risicodetecties, toegangsbeslissingen, en configuraties worden vastgelegd voor audit- en compliance-doeleinden. Intelligente authenticatie maakt een integraal onderdeel uit van deze controles door organisaties in staat te stellen geavanceerde risicodetectie en adaptieve toegangscontrole te implementeren die voldoen aan de hoge beveiligingsstandaarden die worden vereist voor de Nederlandse publieke sector.

De internationale standaard ISO 27001:2022 bevat in meerdere controles specifieke en gedetailleerde vereisten voor toegangscontrole en authenticatie die worden ondersteund door intelligente authenticatie. Controle A.5.17 vereist dat organisaties toegangsrechten beheren en controleren, inclusief het regelmatig beoordelen en intrekken van toegangsrechten op basis van veranderende risicoprofielen. Controle A.5.18 vereist dat organisaties authenticatiemechanismen implementeren die geschikt zijn voor het beoogde gebruik, waarbij adaptieve authenticatie bijdraagt door zich automatisch aan te passen aan verschillende risiconiveaus. Controle A.8.3 vereist dat organisaties toegangscontroles implementeren die zijn gebaseerd op de principes van minimale bevoegdheden en need-to-know, waarbij intelligente authenticatie bijdraagt door dynamische toegangsbeslissingen te nemen die zijn gebaseerd op contextuele risico's. Implementatie van intelligente authenticatie helpt organisaties niet alleen te voldoen aan deze ISO-vereisten, maar draagt ook aanzienlijk bij aan het behalen en behouden van ISO 27001-certificering door het demonstreren van geavanceerde beveiligingscontroles die continu evolueren en zich aanpassen aan nieuwe bedreigingen.

De Europese NIS2-richtlijn bevat in Artikel 21 specifieke en bindende vereisten voor toegangsbeheer en authenticatie die worden ondersteund door intelligente authenticatie. De richtlijn vereist expliciet dat organisaties passende en effectieve maatregelen treffen voor toegangsbeheer, inclusief adaptieve authenticatie die zich aanpast aan veranderende bedreigingslandschappen en gebruikersgedragingen. Voor Nederlandse organisaties die onder de reikwijdte van NIS2 vallen, is het implementeren van intelligente authenticatie niet alleen een best practice of aanbeveling, maar een essentiële component van de wettelijke verplichting om passende beveiligingsmaatregelen te treffen. Niet-naleving van NIS2-vereisten kan leiden tot aanzienlijke financiële boetes, die kunnen oplopen tot miljoenen euro's, evenals ernstige reputatieschade en mogelijke gevolgen voor de continuïteit van bedrijfsvoering. Intelligente authenticatie helpt organisaties te voldoen aan deze vereisten door geavanceerde risicodetectie en adaptieve toegangscontrole te bieden die continu evolueert en zich aanpast aan nieuwe bedreigingen.

Monitoring

Gebruik PowerShell-script intelligent-authentication.ps1 (functie Invoke-Monitoring) – Controleert de configuratie en status van intelligente authenticatie en Identity Protection.

Effectieve monitoring van intelligente authenticatie is essentieel om te waarborgen dat het beveiligingssysteem correct blijft functioneren en dat organisaties altijd beschikken over actuele en effectieve risicodetectie en adaptieve toegangscontrole. Monitoring omvat het continu volgen van risicodetecties, het verifiëren dat risicogebaseerde beleidsregels correct functioneren, het analyseren van gebruikersimpact en valse positieven, en het waarborgen dat het systeem zich correct aanpast aan nieuwe bedreigingen en gebruikersgedragingen.

De basis van monitoring wordt gevormd door regelmatige verificatie van de status van Azure AD Identity Protection en risicogebaseerde Conditional Access Policies via de Microsoft Entra ID-portal of via PowerShell met behulp van de Microsoft Graph API. Beheerders moeten dagelijks controleren of Identity Protection actief is, of risicodetecties correct worden gegenereerd, of risicogebaseerde beleidsregels gebruikers en applicaties correct afdekken, en of er geen waarschuwingen of foutmeldingen zijn die kunnen wijzen op problemen met het systeem. Deze verificatie kan worden geautomatiseerd via PowerShell-scripts die de status van Identity Protection en risicogebaseerde beleidsregels controleren en waarschuwingen genereren wanneer problemen worden gedetecteerd.

Naast het controleren van de status van Identity Protection en risicogebaseerde beleidsregels moeten organisaties regelmatig analyseren of risicodetecties accuraat zijn en of het systeem effectief kwaadwillende actoren blokkeert zonder legitieme gebruikers onnodig te hinderen. Dit kan worden gedaan door Identity Protection-dashboards te monitoren die real-time inzicht geven in gebruikersrisico's, aanmeldrisico's, gedetecteerde bedreigingen, en genomen acties. Organisaties moeten processen implementeren voor het regelmatig analyseren van risicodetecties, waarbij wordt gecontroleerd of gedetecteerde risico's legitiem zijn, of valse positieven worden geïdentificeerd en aangepakt, en of risicodrempels moeten worden aangepast op basis van organisatorische feedback. Het is belangrijk om een balans te vinden tussen beveiliging en gebruikerservaring, waarbij het systeem effectief bedreigingen blokkeert zonder legitieme gebruikers onnodig te hinderen.

Voor organisaties die intelligente authenticatie hebben geconfigureerd, is het essentieel om te monitoren of het systeem zich correct aanpast aan nieuwe bedreigingen en gebruikersgedragingen. Dit omvat het controleren of machine learning-modellen correct worden getraind op basis van nieuwe data, of risicodetecties verbeteren over tijd, en of het systeem nieuwe bedreigingstrends correct identificeert en reageert. Problemen met adaptieve learning kunnen leiden tot situaties waarin nieuwe bedreigingen niet worden gedetecteerd of waarin het systeem niet correct reageert op veranderende gebruikersgedragingen. Organisaties moeten processen implementeren voor het monitoren van adaptieve learning, waarbij regelmatig wordt gecontroleerd of het systeem zich correct aanpast aan nieuwe bedreigingen en gebruikersgedragingen, en waarbij waarschuwingen worden gegenereerd wanneer problemen worden gedetecteerd.

Remediatie

Gebruik PowerShell-script intelligent-authentication.ps1 (functie Invoke-Remediation) – Configureert intelligente authenticatie wanneer deze ontbreekt of onjuist is geconfigureerd.

Remediatie van intelligente authenticatie omvat het inschakelen en configureren van Azure AD Identity Protection wanneer deze niet is geactiveerd, het corrigeren van configuratiefouten in risicogebaseerde beleidsregels, en het waarborgen dat alle beveiligingsscenario's worden afgedekt door passende risicogebaseerde controles. Het is belangrijk om te realiseren dat zonder intelligente authenticatie organisaties niet beschikken over geavanceerde risicodetectie en adaptieve toegangscontrole, wat kan resulteren in onbeveiligde toegang tot gevoelige resources en niet-naleving van compliance-vereisten.

Wanneer Azure AD Identity Protection niet is ingeschakeld, kan deze worden geactiveerd via de Microsoft Entra ID-portal door te navigeren naar Security, Identity Protection, en vervolgens de functionaliteit te activeren. Na activering worden automatisch risicodetecties gestart voor gebruikersrisico's en aanmeldrisico's, waarbij machine learning-algoritmen continu leren van gebruikersgedrag, aanmeldpatronen, en bedreigingssignalen. Het is belangrijk om te realiseren dat Identity Protection tijd nodig heeft om een baseline te creëren voor gebruikersgedrag, waardoor risicodetecties in de eerste weken mogelijk minder accuraat zijn. Naarmate het systeem meer data verzamelt, worden risicodetecties steeds nauwkeuriger en effectiever.

Voor risicogebaseerde Conditional Access Policies die ontbreken of onjuist zijn geconfigureerd, kunnen nieuwe beleidsregels worden aangemaakt of bestaande beleidsregels worden bijgewerkt via de Microsoft Entra ID-portal door te navigeren naar Security, Conditional Access, en vervolgens Nieuw beleid te selecteren of een bestaand beleid te bewerken. De configuratiewizard leidt gebruikers door het volledige opzetten van het beleid, waarbij alle benodigde instellingen worden geconfigureerd, inclusief naam, gebruikers en groepen, cloud-apps of acties, risicocondities, toegangscontroles, en sessiecontroles. Na het voltooien van de configuratie wordt het beleid eerst getest in report-only modus om de impact te evalueren voordat het wordt geactiveerd. Het is belangrijk om te verifiëren dat alle wijzigingen correct zijn toegepast en dat het beleid correct blijft functioneren na de wijzigingen, waarbij het beleid opnieuw wordt getest in report-only modus voordat het wordt geactiveerd.

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 Intelligent Authentication Configuration .DESCRIPTION Configureert Azure AD Identity Protection en risicogebaseerde Conditional Access Policies voor intelligente authenticatie met adaptieve toegangscontrole. Gebruikt machine learning en gedragsanalyses voor risicodetectie. .NOTES Filename: intelligent-authentication.ps1 Author: Nederlandse Baseline voor Veilige Cloud Version: 1.0 CIS Controls: 1.2.2, 1.2.3 Requires: Azure AD Premium P2, Microsoft.Graph.Identity.SignIns, Microsoft.Graph.Identity.Protection #> #Requires -Version 5.1 #Requires -Modules Microsoft.Graph.Identity.SignIns, Microsoft.Graph.Identity.Protection [CmdletBinding()] param( [Parameter(Mandatory = $false)] [switch]$Monitoring, [Parameter(Mandatory = $false)] [switch]$Remediation, [Parameter(Mandatory = $false)] [switch]$Revert, [Parameter(Mandatory = $false)] [switch]$WhatIf ) $ErrorActionPreference = 'Stop' Write-Host "`n========================================" -ForegroundColor Cyan Write-Host "Intelligent Authentication Configuration" -ForegroundColor Cyan Write-Host "Nederlandse Baseline voor Veilige Cloud" -ForegroundColor Cyan Write-Host "========================================`n" -ForegroundColor Cyan function Connect-RequiredServices { <# .SYNOPSIS Maakt verbinding met Microsoft Graph met benodigde scopes #> try { $context = Get-MgContext -ErrorAction SilentlyContinue $requiredScopes = @( "Policy.ReadWrite.ConditionalAccess", "Policy.ReadWrite.IdentityRisk", "Directory.Read.All", "User.Read.All", "IdentityRiskEvent.Read.All" ) $needsReconnect = $false if (-not $context) { $needsReconnect = $true } else { foreach ($scope in $requiredScopes) { if ($context.Scopes -notcontains $scope) { $needsReconnect = $true break } } } if ($needsReconnect) { Write-Host "Connecting to Microsoft Graph..." -ForegroundColor Gray Connect-MgGraph -Scopes $requiredScopes -ErrorAction Stop -NoWelcome Write-Host " [OK] Connected to Microsoft Graph" -ForegroundColor Green } else { Write-Host " [OK] Already connected to Microsoft Graph" -ForegroundColor Green } } catch { Write-Host " [FAIL] Failed to connect to Microsoft Graph: $_" -ForegroundColor Red throw } } function Invoke-Monitoring { <# .SYNOPSIS Controleert de configuratie en status van intelligente authenticatie #> try { Connect-RequiredServices Write-Host "Checking Intelligent Authentication configuration..." -ForegroundColor Gray $result = @{ identityProtectionEnabled = $false userRiskPolicyConfigured = $false signInRiskPolicyConfigured = $false riskBasedCaPolicies = 0 compliant = $false } # Controleer Identity Protection status Write-Host "`n Checking Azure AD Identity Protection..." -ForegroundColor Cyan try { $riskDetections = Get-MgIdentityProtectionRiskDetection -Top 1 -ErrorAction SilentlyContinue if ($riskDetections) { $result.identityProtectionEnabled = $true Write-Host " [OK] Identity Protection: ENABLED" -ForegroundColor Green Write-Host " Risk detection is active" -ForegroundColor Gray } else { Write-Host " [WARNING] Identity Protection: Status unknown" -ForegroundColor Yellow Write-Host " Risk detection may not be active" -ForegroundColor Gray } } catch { Write-Host " [WARNING] Could not verify Identity Protection status" -ForegroundColor Yellow Write-Host " Error: $($_.Exception.Message)" -ForegroundColor Gray } # Controleer risicobeleidsregels Write-Host "`n Checking Risk Policies..." -ForegroundColor Cyan try { $riskPolicies = Get-MgIdentityConditionalAccessPolicy -ErrorAction Stop | Where-Object { ($_.Conditions.UserRiskLevels -and $_.Conditions.UserRiskLevels.Count -gt 0) -or ($_.Conditions.SignInRiskLevels -and $_.Conditions.SignInRiskLevels.Count -gt 0) } if ($riskPolicies) { $result.riskBasedCaPolicies = $riskPolicies.Count Write-Host " [OK] Risk-based Conditional Access Policies: $($result.riskBasedCaPolicies)" -ForegroundColor Green foreach ($policy in $riskPolicies) { $riskTypes = @() if ($policy.Conditions.UserRiskLevels) { $riskTypes += "User Risk" } if ($policy.Conditions.SignInRiskLevels) { $riskTypes += "Sign-In Risk" } Write-Host " - $($policy.DisplayName) ($($riskTypes -join ', '))" -ForegroundColor Cyan Write-Host " State: $($policy.State)" -ForegroundColor Gray } } else { Write-Host " [FAIL] No risk-based Conditional Access Policies found" -ForegroundColor Red } } catch { Write-Host " [WARNING] Could not retrieve risk-based policies" -ForegroundColor Yellow Write-Host " Error: $($_.Exception.Message)" -ForegroundColor Gray } # Controleer Identity Protection risicobeleidsregels (via Graph API) Write-Host "`n Checking Identity Protection Risk Policies..." -ForegroundColor Cyan try { # Note: Identity Protection policies are managed differently # We check for risk-based CA policies as the primary indicator if ($result.riskBasedCaPolicies -gt 0) { Write-Host " [OK] Risk-based policies configured" -ForegroundColor Green Write-Host " Policies use Identity Protection risk signals" -ForegroundColor Gray } else { Write-Host " [WARNING] Identity Protection risk policies not configured" -ForegroundColor Yellow } } catch { Write-Host " [WARNING] Could not verify Identity Protection policies" -ForegroundColor Yellow } # Bepaal compliance status $hasRiskPolicies = $result.riskBasedCaPolicies -gt 0 Write-Host "`n Summary:" -ForegroundColor Cyan Write-Host " Identity Protection Enabled: $($result.identityProtectionEnabled)" -ForegroundColor White Write-Host " Risk-based CA Policies: $($result.riskBasedCaPolicies)" -ForegroundColor White if ($hasRiskPolicies -and $result.identityProtectionEnabled) { $result.compliant = $true Write-Host "`n [OK] COMPLIANT" -ForegroundColor Green Write-Host " Intelligent authentication is configured with risk-based policies" -ForegroundColor Cyan exit 0 } else { Write-Host "`n [WARNING] PARTIALLY COMPLIANT OR NON-COMPLIANT" -ForegroundColor Yellow Write-Host " Aanbevolen: Configureer intelligente authenticatie volledig" -ForegroundColor Yellow if (-not $result.identityProtectionEnabled) { Write-Host " - Schakel Azure AD Identity Protection in" -ForegroundColor Gray } if (-not $hasRiskPolicies) { Write-Host " - Configureer risicogebaseerde Conditional Access Policies" -ForegroundColor Gray } Write-Host "`n [INFO] Vereist: Azure AD Premium P2 licentie voor Identity Protection" -ForegroundColor Cyan exit 1 } } catch { Write-Host "`n [FAIL] ERROR: $_" -ForegroundColor Red Write-Host " Error Details: $($_.Exception.Message)" -ForegroundColor Red Write-Host "`n Note: Intelligent Authentication vereist Azure AD Premium P2 licenties" -ForegroundColor Yellow exit 2 } } function Invoke-Remediation { <# .SYNOPSIS Configureert intelligente authenticatie wanneer deze ontbreekt .DESCRIPTION Deze functie biedt richtlijnen voor het handmatig configureren van intelligente authenticatie via de Microsoft Entra ID-portal, inclusief Identity Protection en risicogebaseerde Conditional Access Policies. #> try { Connect-RequiredServices Write-Host "Intelligent Authentication Configuration" -ForegroundColor Gray Write-Host "`n [INFO] Intelligente authenticatie configuratie vereist handmatige stappen" -ForegroundColor Yellow Write-Host " via de Microsoft Entra ID-portal vanwege complexiteit en" -ForegroundColor Gray Write-Host " specifieke zakelijke vereisten." -ForegroundColor Gray Write-Host "`n Configuratiestappen:" -ForegroundColor Cyan Write-Host "`n 1. Azure AD Identity Protection inschakelen:" -ForegroundColor Yellow Write-Host " a. Navigeer naar: https://entra.microsoft.com" -ForegroundColor White Write-Host " b. Ga naar: Security > Identity Protection" -ForegroundColor White Write-Host " c. Identity Protection is automatisch ingeschakeld met Premium P2" -ForegroundColor Gray Write-Host " d. Controleer dat risicodetectie actief is" -ForegroundColor Gray Write-Host "`n 2. Gebruikersrisicobeleid configureren:" -ForegroundColor Yellow Write-Host " a. Ga naar: Security > Identity Protection > User risk policy" -ForegroundColor White Write-Host " b. Configureer automatische remediatie:" -ForegroundColor Gray Write-Host " - Laag risico: Automatische wachtwoordwijziging" -ForegroundColor Gray Write-Host " - Gemiddeld risico: Handmatige review of MFA vereisen" -ForegroundColor Gray Write-Host " - Hoog risico: Toegang blokkeren tot onderzoek" -ForegroundColor Gray Write-Host " c. Uitzonderingen: Break-glass accounts en noodtoegang" -ForegroundColor Gray Write-Host " d. Status: Report-only (testen), daarna Enabled" -ForegroundColor Gray Write-Host "`n 3. Aanmeldrisicobeleid configureren:" -ForegroundColor Yellow Write-Host " a. Ga naar: Security > Identity Protection > Sign-in risk policy" -ForegroundColor White Write-Host " b. Configureer risicogebaseerde toegangscontrole:" -ForegroundColor Gray Write-Host " - Laag risico: Naadloze toegang (geen extra verificatie)" -ForegroundColor Gray Write-Host " - Gemiddeld risico: MFA vereisen" -ForegroundColor Gray Write-Host " - Hoog risico: Toegang blokkeren of MFA vereisen" -ForegroundColor Gray Write-Host " c. Uitzonderingen: Vertrouwde locaties en apparaten" -ForegroundColor Gray Write-Host " d. Status: Report-only (testen), daarna Enabled" -ForegroundColor Gray Write-Host "`n 4. Risicogebaseerde Conditional Access Policies:" -ForegroundColor Yellow Write-Host " a. Navigeer naar: Security > Conditional Access" -ForegroundColor White Write-Host " b. Klik op: Nieuw beleid" -ForegroundColor White Write-Host "`n Beleid 1: Blokkeer hoge gebruikersrisico:" -ForegroundColor Cyan Write-Host " - Naam: CA-INT-001 - Blokkeer hoge gebruikersrisico" -ForegroundColor Gray Write-Host " - Gebruikers: Alle gebruikers (uitzondering: break-glass)" -ForegroundColor Gray Write-Host " - Cloud-apps: Alle cloud-apps" -ForegroundColor Gray Write-Host " - Gebruikersrisico: Hoog - Toegang blokkeren" -ForegroundColor Gray Write-Host " - Status: Report-only (testen), daarna Enabled" -ForegroundColor Gray Write-Host "`n Beleid 2: MFA voor gemiddeld aanmeldrisico:" -ForegroundColor Cyan Write-Host " - Naam: CA-INT-002 - MFA bij gemiddeld aanmeldrisico" -ForegroundColor Gray Write-Host " - Gebruikers: Alle gebruikers" -ForegroundColor Gray Write-Host " - Cloud-apps: Alle cloud-apps" -ForegroundColor Gray Write-Host " - Aanmeldrisico: Gemiddeld - MFA vereisen" -ForegroundColor Gray Write-Host " - Status: Report-only (testen), daarna Enabled" -ForegroundColor Gray Write-Host "`n Beleid 3: Blokkeer anonieme IP-adressen:" -ForegroundColor Cyan Write-Host " - Naam: CA-INT-003 - Blokkeer anonieme IP" -ForegroundColor Gray Write-Host " - Gebruikers: Alle gebruikers" -ForegroundColor Gray Write-Host " - Cloud-apps: Alle cloud-apps" -ForegroundColor Gray Write-Host " - Locatie: Anonieme IP-adressen - Toegang blokkeren" -ForegroundColor Gray Write-Host " - Status: Enabled" -ForegroundColor Gray Write-Host "`n 5. Monitoring en optimalisatie:" -ForegroundColor Yellow Write-Host " a. Monitor Identity Protection-dashboards voor risicodetecties" -ForegroundColor Gray Write-Host " b. Review Conditional Access Insights voor impact" -ForegroundColor Gray Write-Host " c. Analyseer valse positieven en pas risicodrempels aan" -ForegroundColor Gray Write-Host " d. Test regelmatig in report-only modus voordat wijzigingen" -ForegroundColor Gray Write-Host " worden geactiveerd" -ForegroundColor Gray Write-Host "`n [INFO] Na configuratie, voer -Monitoring uit om te verifiëren" -ForegroundColor Cyan Write-Host " [INFO] Test alle beleidsregels eerst in report-only modus" -ForegroundColor Yellow Write-Host " [INFO] Monitor Identity Protection-dashboards voor risicodetecties" -ForegroundColor Yellow Write-Host " [INFO] Vereist: Azure AD Premium P2 licentie voor alle gebruikers" -ForegroundColor Yellow exit 0 } catch { Write-Host "`n [FAIL] ERROR: $_" -ForegroundColor Red Write-Host " Error Details: $($_.Exception.Message)" -ForegroundColor Red exit 2 } } function Invoke-Revert { <# .SYNOPSIS Verwijdert intelligente authenticatie configuratie (NIET AANBEVOLEN!) #> try { Write-Host "⚠️ WARNING: Verwijderen van intelligente authenticatie is een BEVEILIGINGSRISICO!" -ForegroundColor Red Write-Host "Dit verwijdert geavanceerde risicodetectie en adaptieve toegangscontrole," -ForegroundColor Red Write-Host "waardoor organisaties kwetsbaar worden voor geavanceerde bedreigingen en" -ForegroundColor Red Write-Host "niet-naleving van compliance-vereisten.`n" -ForegroundColor Red if (-not $WhatIf) { Write-Host "Gebruik -WhatIf om te zien wat zou worden verwijderd" -ForegroundColor Yellow Write-Host "Verwijdering van intelligente authenticatie configuratie moet handmatig" -ForegroundColor Yellow Write-Host "via de portal worden uitgevoerd na zorgvuldige overweging en goedkeuring." -ForegroundColor Yellow } exit 0 } catch { Write-Host "ERROR: $_" -ForegroundColor Red exit 2 } } try { if ($Revert) { Invoke-Revert } elseif ($Monitoring) { Invoke-Monitoring } elseif ($Remediation) { Invoke-Remediation } else { Write-Host "Usage:" -ForegroundColor Yellow Write-Host " -Monitoring Controleer intelligente authenticatie configuratie" -ForegroundColor Gray Write-Host " -Remediation Toon configuratie-instructies" -ForegroundColor Gray Write-Host " -Revert Waarschuwing voor verwijdering (NIET AANBEVOLEN!)" -ForegroundColor Red Write-Host "`n Voorbeeld:" -ForegroundColor Cyan Write-Host " .\intelligent-authentication.ps1 -Monitoring" -ForegroundColor White } } catch { throw } finally { Write-Host "`n========================================`n" -ForegroundColor Cyan }

Risico zonder implementatie

Risico zonder implementatie
High: Hoog - Zonder intelligente authenticatie lopen organisaties het risico dat kwaadwillende actoren toegang krijgen tot gevoelige resources door gestolen credentials te gebruiken, terwijl legitieme gebruikers worden gehinderd door onnodige authenticatie-uitdagingen. Dit creëert beveiligingsrisico's en vermindert de gebruikerservaring.

Management Samenvatting

Configureer intelligente authenticatie met Azure AD Identity Protection en risicogebaseerde Conditional Access Policies voor adaptieve toegangscontrole. Vereist Azure AD Premium P2. Implementatietijd: 18 uur.