Prompt Safety Voor Microsoft Copilot Beveiliging

💼 Management Samenvatting

Deze gids over prompt safety voor Microsoft Copilot beveiliging biedt organisaties een uitgebreide aanpak voor het implementeren van veilige prompt practices en het voorkomen van prompt-injection aanvallen binnen Microsoft Copilot. Prompt safety omvat alle maatregelen die worden genomen om ervoor te zorgen dat prompts die worden ingevoerd in AI-systemen zoals Microsoft Copilot geen beveiligingsrisico's vormen, geen gevoelige informatie lekken, en geen onbedoelde of schadelijke outputs genereren. Bij Microsoft Copilot is prompt safety essentieel omdat gebruikers direct interactie hebben met het AI-systeem via prompts, en kwaadwillende of onzorgvuldig geformuleerde prompts kunnen leiden tot beveiligingsincidenten, datalekken en compliance-schendingen. Deze gids behandelt alle essentiële aspecten van prompt safety die nodig zijn om ervoor te zorgen dat Copilot-gebruik voldoet aan de strenge beveiligings- en compliance-eisen die gelden voor Nederlandse overheidsorganisaties, inclusief vereisten vanuit de Baseline Informatiebeveiliging Overheid (BIO), de Algemene Verordening Gegevensbescherming (AVG) en de Network and Information Systems Directive 2 (NIS2).

Aanbeveling
IMPLEMENT
Risico zonder
High
Risk Score
9/10
Implementatie
180u (tech: 100u)
Van toepassing op:
M365
Microsoft Copilot
Microsoft 365 E3
Microsoft 365 E5
Microsoft Copilot for Microsoft 365

Prompt safety vormt een fundamentele beveiligingslaag in AI-systemen zoals Microsoft Copilot. Zonder adequate prompt safety maatregelen loopt een organisatie het risico op prompt-injection aanvallen waarbij kwaadwillenden prompts gebruiken om het AI-systeem te manipuleren, gevoelige informatie te extraheren, of schadelijke acties uit te voeren. Daarnaast kunnen onzorgvuldig geformuleerde prompts leiden tot onbedoelde informatielekken, privacy-schendingen, beveiligingsrisico's en niet-naleving van compliance-vereisten. Voor Nederlandse overheidsorganisaties is het essentieel dat prompt safety volledig compliant is met BIO-vereisten voor informatiebeveiliging, AVG-vereisten voor privacybescherming en NIS2-vereisten voor cybersecurity. Een gestructureerde prompt safety gids helpt organisaties om alle benodigde beveiligingsmaatregelen systematisch te implementeren, te documenteren en te verifiëren, waardoor het risico op beveiligingsincidenten en compliance-schendingen wordt geminimaliseerd.

PowerShell Modules Vereist
Primary API: Microsoft Graph API / Microsoft 365 Admin Center
Connection: Connect-MgGraph / Connect-ExchangeOnline
Required Modules: Microsoft.Graph, Microsoft.Graph.Identity.DirectoryManagement, ExchangeOnlineManagement

Implementatie

Deze prompt safety gids beschrijft een complete, stapsgewijze aanpak voor het implementeren van veilige prompt practices voor Microsoft Copilot in Microsoft 365. De gids behandelt alle belangrijke aspecten van prompt safety, inclusief prompt-injection preventie, input validatie en sanitization, output filtering en verificatie, audit logging van prompts, compliance-configuratie voor prompt gebruik, en beveiligingsbeleid voor prompt safety. Voor elk aspect worden concrete implementatiestappen beschreven, inclusief best practices voor veilige prompt formulering, configuratie-instructies voor Microsoft 365 Admin Center, PowerShell-scripts voor geautomatiseerde monitoring en verificatie, en verificatiemethoden om te controleren dat prompt safety practices correct worden toegepast. Daarnaast worden best practices beschreven voor het beheren van prompt safety beveiliging op de lange termijn, inclusief regelmatige reviews, updates en verbeteringen.

Vereisten voor Prompt Safety Implementatie

Voor het implementeren van prompt safety maatregelen voor Microsoft Copilot in Microsoft 365 zijn verschillende technische, organisatorische en licentievereisten noodzakelijk. Op technisch niveau is een Microsoft 365 E3 of E5 licentie vereist, omdat Microsoft Copilot for Microsoft 365 alleen beschikbaar is voor organisaties met deze licentiecombinaties. Daarnaast is toegang tot Microsoft 365 Admin Center vereist voor het configureren van Copilot-instellingen, evenals de juiste beheerdersrollen zoals Global Administrator, Security Administrator of Copilot Administrator voor het configureren van beveiligingsinstellingen. Voor geavanceerde prompt safety configuraties kan het nodig zijn om toegang te hebben tot Microsoft Purview Compliance Portal, Microsoft 365 Defender en Microsoft Sentinel, waarvoor aanvullende licenties en configuraties vereist kunnen zijn.

Op organisatorisch niveau vereist prompt safety implementatie duidelijke governance-structuren en besluitvormingsprocessen. Dit begint met het vaststellen van een Prompt Safety Policy die beschrijft welke beveiligingsmaatregelen moeten worden geïmplementeerd, wie verantwoordelijk is voor het beheren van prompt safety, en welke procedures moeten worden gevolgd wanneer prompt-injection aanvallen of andere beveiligingsincidenten worden gedetecteerd. Dit beleid moet worden ontwikkeld in samenwerking met de CISO, privacy officers, compliance officers en andere relevante stakeholders, en moet worden goedgekeurd door het management voordat implementatie begint. Daarnaast is het essentieel om een implementatieplan op te stellen dat beschrijft welke prompt safety maatregelen in welke volgorde moeten worden geïmplementeerd, wie verantwoordelijk is voor elke stap, en welke deadlines er zijn voor het voltooien van de implementatie.

Op operationeel niveau vereist prompt safety implementatie voldoende technische expertise en resources. Organisaties moeten ervoor zorgen dat IT-beheerders beschikken over de juiste kennis en vaardigheden om prompt safety configuraties te implementeren en te beheren, bijvoorbeeld door training te volgen over prompt-injection aanvallen, input validatie technieken, en output filtering methoden, of door externe expertise in te schakelen. Daarnaast moeten organisaties ervoor zorgen dat er voldoende tijd en resources beschikbaar zijn voor het implementeren van prompt safety maatregelen, het testen van configuraties, en het documenteren van implementaties. Dit kan betekenen dat organisaties een projectteam samenstellen dat specifiek is toegewezen aan prompt safety implementatie, of dat zij externe consultants inschakelen om ondersteuning te bieden bij de implementatie. Door deze vereisten proactief aan te pakken, kunnen organisaties ervoor zorgen dat prompt safety implementatie soepel verloopt en dat alle benodigde beveiligingsmaatregelen correct worden geïmplementeerd.

Stapsgewijze Implementatie van Prompt Safety

De implementatie van prompt safety maatregelen voor Microsoft Copilot in Microsoft 365 begint met het configureren van input validatie en sanitization. Dit omvat het implementeren van mechanismen die controleren of prompts die worden ingevoerd in Copilot voldoen aan beveiligingsvereisten, geen kwaadwillende code bevatten, en geen pogingen tot prompt-injection aanvallen bevatten. Organisaties moeten beginnen met het configureren van input validatie regels via Microsoft 365 Admin Center of Microsoft Purview Compliance Portal, waarbij zij definiëren welke soorten prompts zijn toegestaan, welke karakters of patronen zijn verboden, en welke acties moeten worden ondernomen wanneer verdachte prompts worden gedetecteerd. Daarnaast moeten organisaties input sanitization implementeren die automatisch gevaarlijke elementen uit prompts verwijdert voordat deze worden verwerkt door het AI-systeem, bijvoorbeeld door speciale karakters te escapen, JavaScript-code te verwijderen, of SQL-injection patronen te blokkeren.

Een tweede belangrijke stap in implementatie is het configureren van output filtering en verificatie voor Copilot-responses. Dit omvat het implementeren van mechanismen die controleren of outputs die worden gegenereerd door Copilot voldoen aan beveiligingsvereisten, geen gevoelige informatie bevatten, en geen schadelijke content genereren. Organisaties moeten beginnen met het configureren van output filtering regels die automatisch gevoelige gegevens detecteren en maskeren in Copilot-responses, bijvoorbeeld door persoonsgegevens, financiële informatie of andere vertrouwelijke data te identificeren en te vervangen door placeholders. Daarnaast moeten organisaties output verificatie implementeren die controleert of gegenereerde content voldoet aan compliance-vereisten, bijvoorbeeld door te verifiëren dat outputs geen AVG-schendingen bevatten, dat zij voldoen aan BIO-vereisten voor informatiebeveiliging, en dat zij geen schadelijke of misleidende informatie bevatten.

Een derde belangrijke component van implementatie is het configureren van audit logging en monitoring voor prompt-activiteiten. Organisaties moeten ervoor zorgen dat alle prompts die worden ingevoerd in Copilot worden gelogd, inclusief de volledige prompt tekst, de gebruiker die de prompt heeft ingevoerd, de tijdstempel van de prompt, en de gegenereerde response. Dit kan worden gedaan door Unified Audit Logging in te schakelen via Exchange Online Management, waarbij organisaties ervoor zorgen dat audit logging is geconfigureerd voor alle relevante Copilot-activiteiten. Daarnaast kunnen organisaties gebruik maken van Microsoft Purview Audit (Premium) voor geavanceerde logging-functionaliteit, zoals langere bewaartermijnen, geavanceerde zoekfuncties en real-time waarschuwingen voor verdachte prompt-activiteiten. Deze logs vormen de basis voor security monitoring en incident response, en moeten daarom betrouwbaar, compleet en toegankelijk zijn voor security-analyses.

Tot slot moet implementatie worden ondersteund door het configureren van beveiligingsbeleid en compliance-instellingen die specifiek zijn gericht op prompt safety. Dit omvat het definiëren van acceptabele prompt-patronen voor Copilot, het configureren van privacy-instellingen die voldoen aan AVG-vereisten, en het implementeren van governance-processen voor het beheren van prompt-gebruik. Organisaties moeten beginnen met het opstellen van een Prompt Safety Acceptable Use Policy die beschrijft hoe prompts mogen worden gebruikt, welke soorten prompts zijn toegestaan, en welke beperkingen er zijn voor specifieke use cases. Daarnaast moeten privacy-instellingen worden geconfigureerd die ervoor zorgen dat persoonsgegevens in prompts worden beschermd volgens AVG-vereisten, bijvoorbeeld door gebruik te maken van data minimization, purpose limitation en storage limitation principes. Deze instellingen kunnen worden geconfigureerd via Microsoft Purview Compliance Portal, waarbij organisaties gebruik kunnen maken van bestaande privacy-configuraties of nieuwe configuraties kunnen creëren die specifiek zijn gericht op prompt safety.

Compliance en Naleving voor Prompt Safety

Beveiligingsimplementatie voor prompt safety in Microsoft Copilot moet aantoonbaar voldoen aan verschillende compliance-frameworks en wet- en regelgeving die van toepassing zijn op Nederlandse overheidsorganisaties. De Baseline Informatiebeveiliging Overheid (BIO) vormt de primaire basis voor informatiebeveiligingseisen, met specifieke vereisten die relevant zijn voor prompt safety. BIO-norm 5.1 vereist toegangscontrole, wat betekent dat alleen geautoriseerde gebruikers prompts mogen invoeren in Copilot en dat prompt-activiteiten moeten worden gecontroleerd en gemonitord. BIO-norm 8.1 vereist encryptie van gevoelige gegevens, wat betekent dat alle prompts die gevoelige informatie bevatten moeten worden beschermd met passende encryptie. BIO-norm 12.1 vereist logging en monitoring, wat betekent dat alle prompt-activiteiten moeten worden gelogd en gemonitord voor security-doeleinden. Voor prompt safety implementatie betekent dit dat organisaties moeten kunnen aantonen dat input validatie correct is geconfigureerd, dat output filtering is geïmplementeerd voor alle relevante content, en dat logging en monitoring continu plaatsvinden.

De Algemene Verordening Gegevensbescherming (AVG) stelt aanvullende eisen voor privacybescherming die relevant zijn voor prompt safety. Artikel 25 AVG vereist privacy by design en privacy by default, wat betekent dat privacy-aspecten moeten worden meegenomen in het ontwerp van prompt safety configuraties, bijvoorbeeld door gebruik te maken van data minimization, purpose limitation en storage limitation principes bij het verwerken van prompts. Artikel 32 AVG vereist dat organisaties passende technische en organisatorische maatregelen implementeren om persoonsgegevens te beveiligen, wat betekent dat prompt safety configuraties moeten worden geconfigureerd met de hoogste standaard voor data protection, inclusief input validatie, output filtering en audit logging. Artikel 33 en 34 AVG vereisen dat organisaties datalekken rapporteren aan toezichthouders en betrokkenen, wat betekent dat organisaties processen moeten hebben voor het detecteren, rapporteren en mitigeren van datalekken die betrekking hebben op prompt-activiteiten. Voor prompt safety implementatie betekent dit dat organisaties moeten kunnen aantonen dat privacy by design principes zijn toegepast, dat passende beveiligingsmaatregelen zijn geïmplementeerd, en dat incident response procedures aanwezig zijn voor het omgaan met datalekken.

De Network and Information Systems Directive 2 (NIS2) stelt aanvullende eisen voor cybersecurity die relevant zijn voor prompt safety, met name voor organisaties die worden aangemerkt als essentiële of belangrijke entiteiten. NIS2 vereist dat organisaties passende maatregelen implementeren voor het beveiligen van netwerk- en informatiesystemen, het detecteren van security-incidenten, en het snel reageren op security-incidenten. Voor prompt safety betekent dit dat organisaties moeten kunnen aantonen dat zij geavanceerde beveiligingsmaatregelen hebben geïmplementeerd voor het voorkomen van prompt-injection aanvallen, dat monitoring en detectie continu plaatsvinden, en dat zij snel kunnen reageren op gedetecteerde bedreigingen. NIS2 vereist ook dat organisaties security-incidenten rapporteren aan relevante toezichthouders, wat betekent dat organisaties processen moeten hebben voor het documenteren en rapporteren van security-incidenten die betrekking hebben op prompt-activiteiten. Organisaties moeten daarom ervoor zorgen dat prompt safety implementatie niet alleen beveiligingsmaatregelen omvat, maar ook de benodigde processen en procedures voor incident response en rapportage.

Naast deze primaire compliance-frameworks moeten organisaties rekening houden met sectorspecifieke wet- en regelgeving die aanvullende eisen stelt aan prompt safety. Voor organisaties die werken met staatsgeheimen gelden aanvullende vereisten vanuit de Wet veiligheidsonderzoeken en de Aanwijzing informatiebeveiliging rijksdienst, die strikte eisen stellen aan toegangscontrole, encryptie en logging van toegang tot gevoelige gegevens via prompts. Voor financiële instellingen gelden aanvullende vereisten vanuit de Wft en toezichthoudende richtlijnen van de AFM en DNB, die eisen stellen aan beveiligingsconfiguraties en incident response voor prompt-activiteiten. Deze sectorspecifieke vereisten moeten worden meegenomen in de prompt safety implementatie, bijvoorbeeld door aanvullende beveiligingsmaatregelen te implementeren voor sectorspecifieke bedreigingen, of door extra logging en rapportage te configureren voor compliance-doeleinden. Door prompt safety implementatie te baseren op een grondige analyse van alle relevante compliance-frameworks, kunnen organisaties ervoor zorgen dat prompt safety volledig compliant is met alle toepasselijke wet- en regelgeving en dat zij aantoonbaar voldoen aan alle security- en compliance-eisen.

Monitoring en Verificatie van Prompt Safety

Gebruik PowerShell-script prompt-safety.ps1 (functie Invoke-Monitoring) – Monitort en verifieert de prompt safety configuraties voor Microsoft Copilot, inclusief input validatie, output filtering, audit logging en compliance-instellingen.

Effectieve monitoring en verificatie van prompt safety configuraties is essentieel om te waarborgen dat beveiligingsmaatregelen correct blijven functioneren en dat compliance-vereisten continu worden nageleefd. Monitoring begint met het regelmatig controleren van de status van alle prompt safety configuraties, inclusief input validatie-instellingen, output filtering policies, audit logging-configuraties en compliance-instellingen, om te verifiëren dat deze correct zijn geconfigureerd en actief zijn. Dit kan worden gedaan via Microsoft 365 Admin Center, Microsoft Purview Compliance Portal of andere beheerportals, waar beheerders een overzicht kunnen krijgen van alle geconfigureerde prompt safety instellingen en hun status. Daarnaast kunnen PowerShell-scripts worden gebruikt om programmatisch de status van prompt safety configuraties te controleren en waarschuwingen te genereren wanneer configuraties onverwacht worden gewijzigd of uitgeschakeld. Het in dit artikel genoemde PowerShell-script kan worden gebruikt om regelmatig de status van prompt safety configuraties te controleren en rapporten te genereren over de naleving van beveiligingsvereisten.

Naast het monitoren van de status van prompt safety configuraties is het essentieel om de effectiviteit van beveiligingsmaatregelen te monitoren door te analyseren of prompt-injection aanvallen worden gedetecteerd en gemitigeerd, of compliance-vereisten worden nageleefd, en of gebruikers correct omgaan met prompt safety beleid. Organisaties moeten processen implementeren voor het regelmatig reviewen van security logs en audit logs, waarbij wordt gelet op patronen die kunnen wijzen op beveiligingsproblemen, zoals verdachte prompt-patronen, prompt-injection pogingen, of compliance-schendingen. Microsoft Purview Audit (Premium) en Microsoft 365 Defender bieden functionaliteit voor het analyseren van security events en het genereren van rapporten over beveiligingsincidenten. Organisaties moeten deze tools regelmatig gebruiken om inzicht te krijgen in de effectiviteit van prompt safety maatregelen en om gebieden te identificeren waar verbeteringen nodig zijn.

Een derde belangrijke component van monitoring is het meten van de naleving van compliance-vereisten door te analyseren of prompt safety configuraties voldoen aan BIO-, AVG- en NIS2-vereisten, of audit logs worden bewaard voor de vereiste bewaartermijnen, en of incident response procedures correct worden uitgevoerd. Organisaties moeten processen implementeren voor het verzamelen en analyseren van compliance-metrics, bijvoorbeeld door maandelijkse of driemaandelijkse rapportages te genereren die inzicht geven in de naleving van compliance-vereisten en in de effectiviteit van prompt safety maatregelen. Deze rapportages moeten worden besproken in relevante governance-structuren, zoals CISO-overleg of compliance-commissies, zodat beslissingen kunnen worden genomen over het aanpassen van prompt safety configuraties of het implementeren van aanvullende maatregelen. Daarnaast moeten organisaties processen hebben voor het uitvoeren van compliance-audits, waarbij externe auditors de prompt safety configuraties en -processen controleren om te verifiëren dat zij voldoen aan alle relevante compliance-vereisten.

Tot slot moet monitoring worden ondersteund door continue verbetering van prompt safety op basis van nieuwe bedreigingen, veranderende compliance-vereisten en lessen geleerd uit beveiligingsincidenten. Dit betekent dat organisaties processen moeten implementeren voor het regelmatig updaten van prompt safety configuraties wanneer nieuwe bedreigingen worden geïdentificeerd, voor het bijwerken van compliance-instellingen wanneer nieuwe wet- en regelgeving van kracht wordt, en voor het verbeteren van beveiligingsprocessen op basis van praktijkervaringen. Organisaties moeten ook kennis delen met andere organisaties, bijvoorbeeld via Information Sharing and Analysis Centers (ISACs) of andere samenwerkingsverbanden, om te leren van elkaars ervaringen en om gezamenlijk te werken aan het verbeteren van prompt safety. Door monitoring te combineren met continue verbetering, kunnen organisaties ervoor zorgen dat prompt safety effectief blijft in het beschermen van gevoelige gegevens en het naleven van compliance-vereisten, zelfs wanneer bedreigingslandschappen en compliance-vereisten evolueren.

Remediatie en Correctie van Prompt Safety Problemen

Gebruik PowerShell-script prompt-safety.ps1 (functie Invoke-Remediation) – Herstelt ontbrekende of incorrect geconfigureerde prompt safety instellingen voor Microsoft Copilot wanneer deze niet voldoen aan beveiligings- en compliance-vereisten.

Remediatie van prompt safety problemen omvat het herstellen van ontbrekende of incorrect geconfigureerde beveiligingsinstellingen, het corrigeren van compliance-schendingen, en het waarborgen dat alle relevante beveiligingsmaatregelen correct zijn geïmplementeerd. Wanneer monitoring aangeeft dat prompt safety configuraties ontbreken of incorrect zijn geconfigureerd, moeten beheerders snel actie ondernemen om deze te herstellen, omdat het ontbreken van adequate prompt safety kan leiden tot beveiligingsincidenten, datalekken en niet-naleving van compliance-vereisten. Het in dit artikel genoemde PowerShell-script kan worden gebruikt om automatisch ontbrekende prompt safety configuraties te detecteren en te herstellen, bijvoorbeeld door input validatie-instellingen opnieuw te configureren wanneer deze zijn gewijzigd, of door output filtering policies te herstellen wanneer deze zijn uitgeschakeld.

De eerste stap in remediatie is het identificeren van de exacte oorzaak van het probleem, bijvoorbeeld door audit logs te analyseren om te zien wanneer prompt safety configuraties zijn gewijzigd, of door de huidige configuratie te vergelijken met de gewenste configuratie. Wanneer de oorzaak is geïdentificeerd, kunnen beheerders de benodigde corrigerende maatregelen nemen, zoals het opnieuw configureren van input validatie-instellingen, het herstellen van output filtering policies, of het opnieuw inschakelen van audit logging. Het is belangrijk om na remediatie te verifiëren dat prompt safety configuraties correct functioneren, bijvoorbeeld door testscenario's uit te voeren of door monitoring opnieuw uit te voeren om te bevestigen dat het probleem is opgelost. Daarnaast moeten organisaties processen implementeren voor het voorkomen van toekomstige problemen, bijvoorbeeld door wijzigingen aan prompt safety configuraties te vereisen dat deze worden gereviewed en goedgekeurd voordat zij worden doorgevoerd, of door automatische waarschuwingen te configureren die worden gegenereerd wanneer prompt safety configuraties worden gewijzigd.

Voor beveiligingsincidenten die al hebben plaatsgevonden en die niet zijn voorkomen door prompt safety maatregelen, moet remediatie ook omvatten het onderzoeken van de oorzaak van het incident en het aanpassen van beveiligingsconfiguraties om vergelijkbare incidenten in de toekomst te voorkomen. Dit kan betekenen dat prompt safety policies worden bijgewerkt met nieuwe bedreigingsindicatoren, dat input validatie-instellingen worden aangescherpt om gevoeliger te zijn voor verdachte prompt-patronen, of dat nieuwe beveiligingsmaatregelen worden toegevoegd wanneer nieuwe bedreigingspatronen worden geïdentificeerd. Organisaties moeten processen hebben voor het analyseren van beveiligingsincidenten, bijvoorbeeld door post-incident reviews uit te voeren waarin wordt geanalyseerd waarom een incident heeft plaatsgevonden en welke maatregelen kunnen worden genomen om prompt safety te verbeteren. Door remediatie te combineren met leerprocessen en preventieve maatregelen, kunnen organisaties ervoor zorgen dat prompt safety robuust blijft en dat beveiligingseffectiviteit continu verbetert.

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
<# .SYNOPSIS Prompt Safety voor Microsoft Copilot Beveiliging in Microsoft 365 .DESCRIPTION Zorgt ervoor dat alle essentiële prompt safety configuraties correct zijn geïmplementeerd voor Microsoft Copilot, inclusief input validatie, output filtering, audit logging en compliance-instellingen. Essentieel voor compliance met BIO, AVG en NIS2 en het voorkomen van prompt-injection aanvallen. .NOTES Filename: prompt-safety.ps1 Author: Nederlandse Baseline voor Veilige Cloud Category: copilot-security .EXAMPLE .\prompt-safety.ps1 -Monitoring Controleer of alle prompt safety configuraties correct zijn geïmplementeerd .EXAMPLE .\prompt-safety.ps1 -Remediation Herstel ontbrekende of incorrecte prompt safety configuraties #> #Requires -Version 5.1 #Requires -Modules Microsoft.Graph, Microsoft.Graph.Identity.DirectoryManagement [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 "Copilot Prompt Safety Configuration" -ForegroundColor Cyan Write-Host "Nederlandse Baseline voor Veilige Cloud" -ForegroundColor Cyan Write-Host "========================================`n" -ForegroundColor Cyan function Invoke-Monitoring { <# .SYNOPSIS Controleert of alle prompt safety configuraties correct zijn geïmplementeerd #> try { Write-Host "Verbinding maken met Microsoft Graph..." -ForegroundColor Gray Connect-MgGraph -Scopes "User.Read.All", "Policy.Read.All", "AuditLog.Read.All", "Directory.Read.All" -ErrorAction Stop | Out-Null $issues = @() $compliant = $true # Controleren of Copilot-licenties zijn geconfigureerd Write-Host "`nControleren Copilot-licentie configuratie..." -ForegroundColor Gray try { $copilotUsers = Get-MgUser -Filter "assignedLicenses/any(x:x/skuId eq 'c42b9cae-ea4f-4ab7-9717-81576235ccac')" -Top 10 -ErrorAction SilentlyContinue if ($null -eq $copilotUsers -or $copilotUsers.Count -eq 0) { Write-Host " [INFO] Geen gebruikers met Copilot-licenties gevonden (mogelijk nog niet geconfigureerd)" -ForegroundColor Gray } else { Write-Host " [OK] $($copilotUsers.Count) gebruiker(s) met Copilot-licenties gevonden" -ForegroundColor Green } } catch { Write-Host " [WARN] Kan Copilot-licentie configuratie niet controleren: $($_.Exception.Message)" -ForegroundColor Yellow $issues += "Kan Copilot-licentie configuratie niet verifiëren" } # Controleren Conditional Access policies voor Copilot-toegang Write-Host "`nControleren Conditional Access policies voor Copilot..." -ForegroundColor Gray try { $caPolicies = Get-MgIdentityConditionalAccessPolicy -ErrorAction Stop if ($caPolicies.Count -eq 0) { Write-Host " [WARN] Geen Conditional Access policies gevonden" -ForegroundColor Yellow $issues += "Geen Conditional Access policies geconfigureerd (aanbevolen voor prompt safety)" $compliant = $false } else { $enabledPolicies = $caPolicies | Where-Object { $_.State -eq 'enabled' } Write-Host " [OK] $($enabledPolicies.Count) actieve Conditional Access policy(ies) gevonden" -ForegroundColor Green # Controleren of MFA is vereist $mfaPolicies = $enabledPolicies | Where-Object { $_.GrantControls -and $_.GrantControls.BuiltInControls -contains 'mfa' } if ($mfaPolicies.Count -eq 0) { Write-Host " [WARN] Geen Conditional Access policies met MFA-vereiste gevonden" -ForegroundColor Yellow $issues += "Geen MFA-vereiste geconfigureerd in Conditional Access policies (aanbevolen voor prompt safety)" } else { Write-Host " [OK] MFA-vereiste geconfigureerd in $($mfaPolicies.Count) policy(ies)" -ForegroundColor Green } } } catch { Write-Host " [WARN] Kan Conditional Access policies niet controleren: $($_.Exception.Message)" -ForegroundColor Yellow $issues += "Kan Conditional Access policies niet verifiëren" } # Controleren Unified Audit Log status voor prompt logging Write-Host "`nControleren Unified Audit Log status voor prompt logging..." -ForegroundColor Gray try { $auditConfig = Get-MgDirectoryAudit -ErrorAction Stop if ($null -eq $auditConfig -or $auditConfig.Count -eq 0) { Write-Host " [WARN] Unified Audit Log: Kan status niet verifiëren" -ForegroundColor Yellow $issues += "Unified Audit Log status kan niet worden geverifieerd (essentieel voor prompt safety monitoring)" $compliant = $false } else { Write-Host " [OK] Unified Audit Log: Actief" -ForegroundColor Green } } catch { Write-Host " [WARN] Kan Unified Audit Log status niet controleren: $($_.Exception.Message)" -ForegroundColor Yellow $issues += "Kan Unified Audit Log status niet verifiëren" } # Controleren op Copilot-activiteiten in audit logs Write-Host "`nControleren Copilot prompt-activiteiten in audit logs..." -ForegroundColor Gray try { $recentLogs = Search-MgAuditLog -RecordType "MicrosoftGraphActivity" -ErrorAction SilentlyContinue | Where-Object { $_.ActivityDisplayName -like "*Copilot*" -or $_.ActivityDisplayName -like "*Prompt*" } | Select-Object -First 10 if ($recentLogs.Count -eq 0) { Write-Host " [INFO] Geen recente Copilot prompt-activiteiten gevonden in audit logs" -ForegroundColor Gray Write-Host " (Dit kan normaal zijn als Copilot nog niet actief wordt gebruikt)" -ForegroundColor Gray } else { Write-Host " [OK] Copilot prompt-activiteiten worden gelogd ($($recentLogs.Count) recente activiteiten gevonden)" -ForegroundColor Green } } catch { Write-Host " [WARN] Kan Copilot prompt audit logs niet controleren: $($_.Exception.Message)" -ForegroundColor Yellow $issues += "Kan Copilot prompt audit logging niet verifiëren" } # Controleren Data Loss Prevention (DLP) policies voor prompt safety Write-Host "`nControleren Data Loss Prevention (DLP) policies voor prompt safety..." -ForegroundColor Gray try { # Nota: DLP policies vereisen Exchange Online Management module voor volledige verificatie Write-Host " [INFO] DLP policies vereisen Exchange Online Management module voor volledige verificatie" -ForegroundColor Gray Write-Host " (Volledige DLP-check kan worden uitgevoerd met ExchangeOnlineManagement module)" -ForegroundColor Gray Write-Host " Aanbeveling: Configureer DLP policies specifiek voor Copilot prompt-activiteiten" -ForegroundColor Cyan Write-Host " Aanbeveling: Implementeer input validatie en output filtering voor prompts" -ForegroundColor Cyan } catch { Write-Host " [INFO] DLP policies kunnen niet worden gecontroleerd zonder Exchange Online Management module" -ForegroundColor Gray } # Controleren Microsoft Purview Compliance Portal configuratie voor prompt safety Write-Host "`nControleren Microsoft Purview Compliance Portal voor prompt safety..." -ForegroundColor Gray try { # Nota: Purview vereist specifieke modules en configuratie Write-Host " [INFO] Microsoft Purview Compliance Portal vereist aanvullende configuratie" -ForegroundColor Gray Write-Host " Aanbeveling: Configureer input validatie regels voor prompts via Purview" -ForegroundColor Cyan Write-Host " Aanbeveling: Configureer output filtering policies voor Copilot-responses" -ForegroundColor Cyan Write-Host " Aanbeveling: Implementeer prompt-injection detectie en preventie" -ForegroundColor Cyan } catch { Write-Host " [INFO] Microsoft Purview Compliance Portal configuratie kan niet worden gecontroleerd" -ForegroundColor Gray } # Samenvatting Write-Host "`n========================================" -ForegroundColor Cyan if ($compliant -and $issues.Count -eq 0) { Write-Host "[OK] COMPLIANT" -ForegroundColor Green Write-Host "Prompt safety configuraties lijken correct geïmplementeerd te zijn." -ForegroundColor Cyan Write-Host "`nAanbeveling: Verifieer ook DLP policies, Purview configuraties en prompt-injection preventie voor volledige beveiliging." -ForegroundColor Cyan exit 0 } else { Write-Host "[WARN] REVIEW REQUIRED" -ForegroundColor Yellow if ($issues.Count -gt 0) { Write-Host "`nGevonden aandachtspunten:" -ForegroundColor Yellow foreach ($issue in $issues) { Write-Host " - $issue" -ForegroundColor Gray } } Write-Host "`nAanbeveling: Review prompt safety configuraties en zorg dat alle vereiste instellingen aanwezig zijn." -ForegroundColor Cyan Write-Host "Voor volledige verificatie is het aan te raden ook DLP policies, Purview configuraties en prompt-injection preventie te controleren." -ForegroundColor Cyan exit 1 } } catch { Write-Host "`n[FAIL] FOUT: $_" -ForegroundColor Red Write-Host "Foutdetails: $($_.Exception.Message)" -ForegroundColor Red exit 2 } finally { try { Disconnect-MgGraph -ErrorAction SilentlyContinue } catch { # Negeer disconnect fouten } } } function Invoke-Remediation { <# .SYNOPSIS Herstelt ontbrekende of incorrecte prompt safety configuraties #> try { Write-Host "Verbinding maken met Microsoft Graph..." -ForegroundColor Gray Connect-MgGraph -Scopes "User.ReadWrite.All", "Policy.ReadWrite.All", "AuditLog.ReadWrite.All", "Directory.ReadWrite.All" -ErrorAction Stop | Out-Null $remediationsApplied = @() Write-Host "`n========================================" -ForegroundColor Cyan Write-Host "COPILOT PROMPT SAFETY IMPLEMENTATIE" -ForegroundColor Cyan Write-Host "========================================`n" -ForegroundColor Cyan Write-Host "De volgende stappen zijn vereist voor volledige prompt safety implementatie:" -ForegroundColor Cyan Write-Host "" Write-Host "1. INPUT VALIDATIE EN SANITIZATION" -ForegroundColor Yellow Write-Host " - Configureer input validatie regels via Microsoft Purview Compliance Portal" -ForegroundColor Gray Write-Host " - Implementeer prompt sanitization om gevaarlijke elementen te verwijderen" -ForegroundColor Gray Write-Host " - Configureer blacklist/whitelist voor toegestane prompt-patronen" -ForegroundColor Gray Write-Host " - Implementeer prompt-injection detectie en preventie" -ForegroundColor Gray Write-Host "" Write-Host "2. OUTPUT FILTERING EN VERIFICATIE" -ForegroundColor Yellow Write-Host " - Configureer output filtering policies voor Copilot-responses" -ForegroundColor Gray Write-Host " - Implementeer gevoelige gegevens detectie en maskering in outputs" -ForegroundColor Gray Write-Host " - Configureer output verificatie om compliance-vereisten te waarborgen" -ForegroundColor Gray Write-Host " - Implementeer content filtering voor schadelijke of misleidende informatie" -ForegroundColor Gray Write-Host "" Write-Host "3. AUDIT LOGGING EN MONITORING" -ForegroundColor Yellow Write-Host " - Schakel Unified Audit Logging in via Exchange Online Management" -ForegroundColor Gray Write-Host " - Configureer Microsoft Purview Audit (Premium) voor geavanceerde logging" -ForegroundColor Gray Write-Host " - Implementeer security monitoring via Microsoft 365 Defender" -ForegroundColor Gray Write-Host " - Configureer waarschuwingen voor verdachte prompt-activiteiten" -ForegroundColor Gray Write-Host "" Write-Host "4. COMPLIANCE EN GOVERNANCE" -ForegroundColor Yellow Write-Host " - Stel Prompt Safety Acceptable Use Policy op" -ForegroundColor Gray Write-Host " - Configureer privacy-instellingen volgens AVG-vereisten voor prompts" -ForegroundColor Gray Write-Host " - Implementeer governance-processen voor prompt-gebruik" -ForegroundColor Gray Write-Host " - Documenteer alle prompt safety configuraties voor audit-doeleinden" -ForegroundColor Gray Write-Host "" Write-Host "5. VERIFICATIE EN TESTING" -ForegroundColor Yellow Write-Host " - Test alle prompt safety configuraties in een testomgeving" -ForegroundColor Gray Write-Host " - Verifieer dat input validatie correct werkt" -ForegroundColor Gray Write-Host " - Test output filtering en verificatie" -ForegroundColor Gray Write-Host " - Voer prompt-injection testen uit om beveiliging te verifiëren" -ForegroundColor Gray Write-Host " - Test incident response procedures voor prompt-injection aanvallen" -ForegroundColor Gray Write-Host "" Write-Host "========================================" -ForegroundColor Cyan Write-Host "[INFO] REMEDIATIE VEREIST HANDMATIGE CONFIGURATIE" -ForegroundColor Yellow Write-Host "`nVoor volledige implementatie van prompt safety:" -ForegroundColor Cyan Write-Host "1. Gebruik Microsoft Purview Compliance Portal voor input validatie configuratie" -ForegroundColor Gray Write-Host "2. Configureer output filtering policies via Microsoft Purview Compliance Portal" -ForegroundColor Gray Write-Host "3. Implementeer prompt-injection preventie via Microsoft 365 Defender" -ForegroundColor Gray Write-Host "4. Schakel Unified Audit Logging in via Exchange Online Management" -ForegroundColor Gray Write-Host "5. Documenteer alle configuraties en processen voor compliance-doeleinden" -ForegroundColor Gray Write-Host "`nZie het artikel voor gedetailleerde implementatie-instructies." -ForegroundColor Cyan exit 0 } catch { Write-Host "`n[FAIL] FOUT: $_" -ForegroundColor Red Write-Host "Foutdetails: $($_.Exception.Message)" -ForegroundColor Red exit 2 } finally { try { Disconnect-MgGraph -ErrorAction SilentlyContinue } catch { # Negeer disconnect fouten } } } function Invoke-Revert { <# .SYNOPSIS Draait prompt safety configuraties terug (NIET AANBEVOLEN!) #> try { Write-Host "⚠️ WAARSCHUWING: Terugdraaien van prompt safety is een BEVEILIGINGSRISICO!" -ForegroundColor Red Write-Host "Dit kan leiden tot prompt-injection aanvallen, beveiligingsincidenten, datalekken en niet-naleving van compliance-vereisten.`n" -ForegroundColor Red Write-Host "[INFO] Terugdraaien van prompt safety configuraties wordt NIET aanbevolen." -ForegroundColor Yellow Write-Host "Indien nodig, schakel individuele beveiligingsinstellingen uit" -ForegroundColor Yellow Write-Host "via Microsoft Purview Compliance Portal, Microsoft 365 Admin Center of Microsoft Entra Admin Center." -ForegroundColor Yellow exit 0 } catch { Write-Host "FOUT: $_" -ForegroundColor Red exit 2 } } try { if ($Revert) { Invoke-Revert } elseif ($Monitoring) { Invoke-Monitoring } elseif ($Remediation) { Invoke-Remediation } else { Write-Host "Gebruik:" -ForegroundColor Yellow Write-Host " -Monitoring Controleer of prompt safety configuraties correct zijn geïmplementeerd" -ForegroundColor Gray Write-Host " -Remediation Herstel ontbrekende of incorrecte configuraties (vereist handmatige configuratie)" -ForegroundColor Gray Write-Host " -Revert Draai configuraties terug (NIET AANBEVOLEN!)" -ForegroundColor Red Write-Host " -WhatIf Toon wat gewijzigd zou worden zonder wijzigingen door te voeren" -ForegroundColor Gray } } catch { throw } finally { Write-Host "`n========================================`n" -ForegroundColor Cyan }

Risico zonder implementatie

Risico zonder implementatie
High: Kritiek - Zonder adequate prompt safety implementatie voor Microsoft Copilot loopt een organisatie het risico op prompt-injection aanvallen, beveiligingsincidenten, datalekken, niet-naleving van compliance-vereisten en reputatieschade. Voor Nederlandse overheidsorganisaties kan dit leiden tot niet-naleving van BIO-vereisten, AVG-boetes van toezichthouders, NIS2-sancties en verlies van vertrouwen bij burgers.

Management Samenvatting

Implementeer een complete prompt safety configuratie voor Microsoft Copilot in Microsoft 365, inclusief input validatie, output filtering, audit logging en compliance-instellingen. Dit waarborgt dat Copilot-gebruik voldoet aan BIO-, AVG- en NIS2-vereisten en dat gevoelige gegevens adequaat worden beschermd tegen prompt-injection aanvallen en andere beveiligingsbedreigingen.