Security Overview — IT-Compliant MSP Dashboard
Versie 2026-05-03
Dit document beschrijft de technische en organisatorische maatregelen (TOMs) waarmee IT-Compliant B.V. de veiligheid en betrouwbaarheid van het MSP Dashboard waarborgt. Het document fungeert tevens als bijlage bij de Verwerkersovereenkomst.
1. Architectuur en hosting
Het MSP Dashboard draait volledig op Microsoft Azure en Supabase, beide binnen de Europese Economische Ruimte:
| Component | Service | Regio |
|---|---|---|
| Backend API | Azure App Service (Linux) | West Europe (Amsterdam) |
| Achtergrondprocessen | Azure Functions (Node.js + PowerShell) | West Europe |
| Frontend statische bestanden | Azure Static Web Apps | West Europe (CDN-edge wereldwijd) |
| Database (PostgreSQL) | Supabase | EU Central (Frankfurt) |
| Object-opslag | Supabase Storage | EU Central (Frankfurt) |
| Secrets management | Azure Key Vault | West Europe |
| Monitoring + logs | Azure Application Insights + Log Analytics | West Europe |
| E-mail-verzending | Azure Communication Services | EU Data Boundary |
Onderliggende certificeringen waarop wij steunen:
- Microsoft Azure: ISO/IEC 27001, ISO/IEC 27017, ISO/IEC 27018, SOC 1/2/3, BIO, ENS High
- Supabase: SOC 2 Type II, HIPAA-readiness, GDPR-compliant
- Mollie: PCI-DSS Level 1, ISO/IEC 27001
IT-Compliant zelf werkt aan eigen ISO 27001-certificering. Tot die tijd geldt het samenstel van Subverwerker-certificeringen plus de hieronder beschreven eigen maatregelen.
2. Encryptie
Encryptie at-rest:
- Database (Supabase PostgreSQL): AES-256-encryptie van alle data-at-rest.
- Object-opslag (Supabase Storage): AES-256-encryptie.
- Backups: encrypted-at-rest, opgeslagen binnen dezelfde EU-regio.
- Gevoelige credentials in eigen systemen: aanvullend versleuteld met AES-256-GCM met sleutels in Azure Key Vault, niet leesbaar voor de applicatie zonder runtime-decryptie.
Encryptie in-transit:
- Alle externe verbindingen: TLS 1.2 minimaal, TLS 1.3 waar door client ondersteund.
- HTTP Strict Transport Security (HSTS) actief op alle publieke domeinen met
max-age=31536000; includeSubDomains; preload. - Database-verbindingen: TLS 1.2+ verplicht, certificate pinning in productie.
3. Authenticatie en toegangscontrole
Klant-authenticatie (MSP-medewerkers):
- Authenticatie via Microsoft Entra ID (multi-tenant) met OAuth 2.0 / OpenID Connect via MSAL.js.
- MFA afdwingbaar door de Klant binnen zijn eigen Entra ID-tenant. IT-Compliant adviseert MFA als verplichting voor alle MSP-medewerkers en in het bijzonder voor de Owner.
- Conditional Access policies van de Klant blijven volledig van kracht.
- Tokens worden niet permanent opgeslagen op IT-Compliant-servers; sessie-state in browser sessionStorage met automatische verloop bij sluiten van de tab.
Drie rollen binnen het MSP Dashboard:
- Owner: volledig beheer van het MSP-account inclusief abonnement, team-leden, klant-koppelingen.
- Engineer: scan-uitvoering en rapport-beheer voor toegekende klant-tenants.
- Viewer: alleen-lezen toegang tot rapporten.
Cross-tenant isolatie wordt afgedwongen op database-niveau via Row Level Security (RLS) en op API-niveau via tenant-context-middleware.
IT-Compliant medewerker-toegang:
- Toegang tot productie-omgeving uitsluitend voor expliciet geautoriseerde medewerkers.
- Verplichte MFA met FIDO2-keys voor productie-toegang.
- Just-in-time toegang voor incidenteel onderhoud, geregistreerd in audit-log.
- Periodieke review van toegangsrechten (kwartaal-cyclus).
- Ad-hoc toegang tot klant-data uitsluitend via gecontroleerde "ITC-admin context"-modus, geregistreerd in audit-log met als-IT-Compliant-admin-vlag (zichtbaar voor de betreffende Klant).
4. Netwerkbeveiliging
- HTTPS-only verkeer; HTTP-requests worden 301-geredirect.
- Strict Content-Security-Policy (CSP) op alle gebruikersgerichte pagina's.
- HTTP Strict Transport Security (HSTS) met submission op de HSTS-preload-list.
- X-Frame-Options: DENY (anti-clickjacking).
- X-Content-Type-Options: nosniff.
- Referrer-Policy: no-referrer voor pagina's die activatie-tokens kunnen bevatten.
- CORS strikt beperkt tot eigen domeinen.
- Azure Web Application Firewall (WAF) op de Azure App Service met OWASP Core Rule Set 3.x.
5. Applicatiebeveiliging
Secure Software Development Lifecycle (SSDLC):
- Alle wijzigingen via pull-request met verplichte code-review.
- Pre-commit hooks voor secret-scanning.
- Geautomatiseerde dependency-scanning met automatische pull-requests voor security-patches.
- Periodieke handmatige security-reviews bij major-features.
- Test-suite met unit-, integratie- en API-route-tests; geen deploy zonder groene tests.
Runtime-bescherming:
- Input-validatie op alle API-endpoints met expliciete schema-controle.
- Output-encoding ter voorkoming van XSS in alle gerenderde HTML.
- Parameterized queries via Supabase-client; geen string-concatenatie in SQL.
- Rate-limiting op gevoelige endpoints (signup, login-callbacks, betalingsflows) op IP- en account-niveau.
- Anti-CSRF: SameSite cookies + Origin-/Referer-header-checks op state-changing endpoints.
Secrets management:
- Alle secrets (API-keys, database-credentials, Mollie-keys, encryptie-sleutels) in Azure Key Vault.
- Toegang tot Key Vault via Managed Identity van de App Service / Function App.
- Secrets-rotation conform schema (klant-tenant SP-secrets jaarlijks; Mollie API-keys bij verdenking; database-credentials bij Supabase-policy-wijzigingen).
6. Data-management
Pseudonimisering en minimalisatie:
- Scan-output bevat eindgebruiker-identificeerbare gegevens uitsluitend voor zover noodzakelijk.
- Bij onvermijdelijke gegevens wordt zo veel mogelijk gepseudonimiseerd in de gepresenteerde output.
- Diagnostische logs bevatten geen klartekst-credentials of bijzondere persoonsgegevens.
Data-retention:
| Dataset | Bewaartermijn | Reden |
|---|---|---|
| Scan-resultaten en audit-bundles | Looptijd Overeenkomst + 90 dagen uitloop | Operationele behoefte + uitloop |
| Account-informatie (MSP-medewerkers) | Looptijd + 90 dagen | Idem |
| Audit-log security-events | Minimaal 2 jaar | Incident-onderzoek + AVG |
| Facturatie-gegevens | 7 jaar | Fiscale bewaarplicht (art. 52 AWR) |
| Akkoord op T&C inclusief IP/User-Agent | 7 jaar | Juridisch bewijs van overeenkomst |
Data-export en verwijdering:
- Klant kan op elk moment via het MSP Dashboard een export aanvragen van scanrapporten en audit-bundles in PDF en JSON.
- Bij beëindiging volgt automatische verwijdering 90 dagen na einde Overeenkomst, behoudens wettelijke bewaarplichten.
- Verzoeken tot vroegtijdige verwijdering worden binnen 30 dagen verwerkt, behoudens overlappende bewaarplichten.
7. Backup en disaster recovery
- Database-backups door Supabase: dagelijks point-in-time recovery met retentie van minimaal 7 dagen.
- Object-opslag (Supabase Storage): replicatie binnen EU-regio.
- Backups encrypted-at-rest.
- Periodieke restore-tests minimaal twee keer per jaar.
- Recovery Time Objective (RTO): 4 uur voor volledige beschikbaarheid van het MSP Dashboard.
- Recovery Point Objective (RPO): maximaal 1 uur dataverlies bij volledige database-uitval.
8. Monitoring en logging
Operationele monitoring:
- Application Insights traceert alle requests, exceptions, performance-metrics en aangepaste events.
- Real-time alerting op kritieke metrics: HTTP 5xx error-rate, authenticatie-faal-rate spike, memory-/CPU-druk, database connection failures, PowerShell-runner faal-rate.
- Alerts gaan naar info@it-compliant.nl met escalatie-pad voor productie-incidenten.
Audit-logging:
- Alle security-relevante acties worden vastgelegd: login-pogingen, wijzigingen in MSP-team, klant-tenant-koppelingen, scan-uitvoering, ITC-admin "Bekijk als ITC-admin"-sessies, subscription-events.
- Audit-log is alleen-toevoegen, kan niet worden gewijzigd door applicatie-gebruikers.
- Klant ziet zijn eigen audit-log in het MSP Dashboard onder "Audit-log" tab.
9. Incident response
Datalek-respons-procedure:
- Triage (0-4 uur): vaststellen of het een Datalek betreft conform AVG-definitie.
- Containment (4-24 uur): inperken van de impact, stoppen van het lek.
- Klant-melding (binnen 48 uur na bekend worden): conform DPA artikel 5.7.
- Forensische analyse: vastleggen van oorzaak en omvang.
- Remediation: implementeren van structurele oplossing.
- Lessons-learned: post-mortem en doorvoeren van preventieve maatregelen.
- Documentatie: vastleggen in incident-register, minimaal 2 jaar bewaard.
10. Vulnerability management
- Maandelijkse review van security-advisories voor gebruikte libraries en infrastructuur.
- Patch-window: critical < 7 dagen, high < 30 dagen, medium < 90 dagen.
- Externe penetration-test minimaal jaarlijks, gericht op de publieke API en MSP-portal.
- Verantwoorde-disclosure-policy: meldingen via security@it-compliant.nl.
11. Personnel security
- Geheimhoudingsverklaring (NDA) bij arbeidsovereenkomst voor alle medewerkers met toegang tot productie-systemen of klant-data.
- Verplichte security-awareness-training bij indiensttreding en jaarlijkse refresher.
- Achtergrondonderzoek (Verklaring Omtrent het Gedrag) voor medewerkers met productie-toegang.
- Direct intrekken van toegang bij beëindiging arbeidsovereenkomst.
- Periodieke phishing-simulaties.
12. Physical security
Fysieke beveiliging van datacenters wordt gedelegeerd aan de cloud-providers (Microsoft Azure, Supabase). Deze hanteren best-practice fysieke maatregelen waaronder 24/7 bemande perimeter en biometrische toegangscontrole, camera-bewaking, redundante stroom- en koelvoorzieningen, en industriële brandpreventie.
IT-Compliant zelf onderhoudt geen eigen datacenter of on-premise productie-infrastructuur.
13. Sub-processor management
- Volledige actuele lijst van Subverwerkers in Bijlage A van de Algemene Voorwaarden.
- Onboarding-criteria: vergelijkbare of betere security-certificeringen, DPA met passende waarborgen, EU-vestiging waar mogelijk, risico-assessment door IT-Compliant.
- Periodieke heroverweging van Subverwerker-relaties (jaarlijks).
14. Klant-verantwoordelijkheden (Shared Responsibility)
Hoewel IT-Compliant uitgebreide beveiligingsmaatregelen treft, blijven de volgende verantwoordelijkheden bij de Klant:
- Account-beveiliging: MFA inschakelen voor alle MSP-medewerkers, regelmatige review van team-leden, snel revoken bij personeelswisseling.
- Klant-tenant-machtiging: zorgen voor rechtmatige grondslag om scans uit te voeren op iedere Eindklant-Tenant.
- Authenticatie-configuratie: passende Conditional Access policies in eigen Entra ID-tenant.
- Datagebruik: zorgvuldige omgang met scan-resultaten en bewijslast; niet onnodig delen of bewaren.
- Incident-coordinatie: bij door IT-Compliant gemelde incidenten zelf beoordelen of melding aan Eindklanten of Autoriteit Persoonsgegevens noodzakelijk is.
- Updates: tijdig kennisnemen van wijzigingen in Subverwerkers en T&C.
15. Compliance en audit-recht
- Klant heeft het recht IT-Compliant jaarlijks te (laten) auditen conform DPA artikel 5.9.
- IT-Compliant kan in de plaats stellen: actuele Subverwerker-certificeringen, eigen pen-test-rapporten (samenvatting), SOC-2 of ISO 27001 zodra die behaald zijn.
- Samenvattingen van pen-test-resultaten en audit-rapporten zijn beschikbaar onder NDA aan Klanten op verzoek.
16. Wijzigingen aan dit document
Dit document wordt periodiek herzien (minimaal jaarlijks of bij significante wijzigingen in de productarchitectuur). Wijzigingen worden gecommuniceerd via een nieuwe versie-datum, een aankondiging via banner in het MSP Dashboard, en bij wezenlijke wijzigingen die de DPA raken: aankondiging conform DPA artikel 9.
17. Contact
- IT-Compliant B.V. — t.a.v. Security Officer
- Henegouwenlaan 21, 9501 RX Stadskanaal
- Algemeen: info@it-compliant.nl · 085-0606980
- Security-meldingen / verantwoorde disclosure: security@it-compliant.nl
- Privacy-vragen: privacy@it-compliant.nl
Zie ook: Algemene Voorwaarden · Privacyverklaring · Verwerkersovereenkomst