De data van uw klanten, op elke laag bewaakt.
Waar de data staat, wie erbij kan, en hoe elk rapport van elke agent wordt bewezen voordat het wordt geaccepteerd. Geschreven voor de technisch verantwoordelijke die de beveiligingsvragenlijst van de klant moet invullen.
Laatst gecontroleerd op 5 oktober 2026
Gehost in Nederland
Klantdata wordt opgeslagen en verwerkt op de eigen servers van Secuno in Nederland, en verlaat de EU niet.
Nooit externe AI
De AI-engine draait op dezelfde servers. Inventarissen, CVE-data en risicogegevens gaan nooit naar OpenAI, Anthropic, Google of een andere AI-aanbieder.
Elke klant afgeschermd
De scheiding tussen tenants wordt afgedwongen door de database zelf, onder de controles van de applicatie.
Elke handeling vastgelegd
70 soorten gelogde acties, met wie, wanneer, vanaf waar, en de oude en nieuwe waarde. Logs zijn niet te verwijderen via de interface.
Wat het platform niet doet
Sommige beveiliging is geen instelling. Het zijn paden die niet bestaan.
- NOOIT
Een ongetekende regelset laden
Detectieregels zijn ondertekend met Ed25519 en worden gecontroleerd voordat ze laden. Een build zonder publieke sleutel accepteert helemaal geen regelset. Een ongetekend pad zou een kanaal zijn om code uit te voeren op elke agent, dus dat is er niet.
- NOOIT
Een opdracht buiten de toegestane lijst uitvoeren
De server toetst elke responsopdracht aan tien toegestane typen voordat die in de wachtrij komt. Een kill draagt het image en de starttijd die de detectie zag, dus raakt nooit een hergebruikt proces-ID. Beschermde services zijn niet te stoppen.
- NOOIT
Een geïsoleerd apparaat laten stranden
Netwerkisolatie wordt in één transactie geplaatst, samen met de uitzondering voor de agent zelf, en vervalt lokaal tenzij een heartbeat haar vernieuwt. Een onbereikbaar apparaat komt terug op het netwerk in plaats van afgesneden te blijven.
- NOOIT
Ondersteuning ongezien laten handelen
Support kan maximaal dertig minuten meekijken in de sessie van een gebruiker, onder een banner die niet weg te klikken is. Elke handeling wordt gelogd als de beheerder die namens de gebruiker handelt.
- NOOIT
Een IP-adres vertrouwen
Het publieke adres van een apparaat wordt alleen gebruikt voor weergave, locatie en auditcontext, nooit voor een autorisatiebesluit, omdat de client de headers aanlevert waar het uit komt.
- NOOIT
Een token in een URL zetten
Er staat nooit een sessie- of aanmeldtoken in een URL, er is geen zelfregistratie, en inschrijftokens worden één keer getoond en alleen als hash opgeslagen.
Eén rapport, op vijf manieren bewezen
Elk verzoek van een endpoint-agent is ondertekend door dat apparaat en wordt gecontroleerd voordat er één veld wordt gelezen. Dit gebeurt er met één inventarisrapport.
Bij de inschrijving maakt de agent een eigen Ed25519-sleutelpaar. De privésleutel verlaat het apparaat nooit en is beschermd met Windows DPAPI onder het serviceaccount van de agent, zodat een ander lokaal account hem niet kan ontsleutelen. Na 30 dagen wordt de sleutel vervangen, waarbij de oude sleutel de nieuwe ondertekent.
De agent berekent een SHA3-256-hash over de volledige inhoud van het verzoek. Verandert er één byte, dan klopt de hash niet meer.
Methode, pad, klant, apparaat, tijdstempel, een willekeurige nonce en de hash worden samen ondertekend met de privésleutel van het apparaat. Geen veld is te verplaatsen of te verwisselen zonder dat de handtekening breekt.
De agent verbindt via TLS 1.3, tenzij een beheerder 1.2 uitdrukkelijk toestaat. Omdat het rapport zelf is ondertekend, kan een netwerk ertussen het niet ongemerkt wijzigen, ook niet waar TLS vóór onze servers wordt afgesloten.
Het platform controleert de handtekening met de publieke sleutel van dat apparaat, berekent de hash opnieuw, weigert een tijdstempel dat meer dan vijf minuten afwijkt en weigert een nonce die al eerder is gezien. Pas dan wordt het rapport verwerkt, afgebakend tot de eigen klant van het apparaat.
Drie sloten, niet één
Een MSP-platform houdt veel klanten naast elkaar. Eén vergeten filter mag nooit genoeg zijn om de data van de ene klant aan de andere te tonen, dus de scheiding wordt drie keer afgedwongen.
- 01 · Applicatie
Gecontroleerd op elke route
Bij elk verzoek wordt gecontroleerd bij welke tenant het hoort, voordat er data wordt aangeraakt.
- 02 · Database
Row-level security eronder
De applicatie verbindt met een rol zonder bijzondere rechten. Een query die zijn tenantfilter vergeet, levert niets op, en er kan geen rij worden geschreven voor een tenant waar het verzoek niets mee te maken heeft.
- 03 · Build
Geen nieuwe tabel zonder policy
Een controle in de build faalt als er een tabel met klantdata bijkomt zonder isolatiepolicy, zodat de garantie niet slijt naarmate het product groeit.
Bewezen voordat het aanging
Vóór de afdwinging draaide het platform twee keer op dezelfde data, een keer zoals voorheen en een keer afgedwongen, als vijf soorten gebruiker: een klantgebruiker, een tweede klant, een partner met een subklant, een beheerder die aan één klant is toegewezen en een platformbeheerder. Elk verschil was bedoeld. In productie afgedwongen sinds september 2026, na een schaduwperiode zonder meetbare vertraging.
Niet gevonden, in plaats van verboden
Een verzoek om een record van een andere tenant krijgt 'niet gevonden', zodat het platform niet eens bevestigt dat het record bestaat.
Een agent blijft binnen de eigen klant
Een verzoek van een agent is afgebakend tot de eigen klant en de partner die daar eigenaar van is, en niets breder.
Wie erin komt, en hoe
Toegang tot de console volgt dezelfde regels voor een technicus van de MSP als voor de eigen medewerkers van de klant.
- Aanmelden
- Single sign-on met Microsoft Entra ID of Google, per klant ingesteld: welke providers, welke tenant of welk Workspace-domein, en of er een wachtwoord blijft. SSO verplicht stellen is een besluit dat de eigen super user van een klant niet voor de eigen organisatie kan nemen.
- Tweede factor
- Authenticator-app (TOTP), FIDO2-sleutels en passkeys zoals Windows Hello en Touch ID, tot tien benoemde sleutels per gebruiker. Verplicht te stellen per rol, per klant en per gebruiker.
- Sessies
- Toegangstokens verlopen na 15 minuten, verversingstokens na 8 uur. Overal afmelden beëindigt bij het volgende verzoek elke sessie van een gebruiker.
- Brute force
- Limieten die over alle backend-instanties worden gedeeld, en standaard een vergrendeling na 5 mislukte pogingen voor 15 minuten. Een vergrendeld onbekend adres ziet er hetzelfde uit als een bestaand adres, dus de vergrendeling verraadt niet welke accounts bestaan.
- Rollen
- Zeven rollen van Global Admin tot Client User, gecontroleerd door de applicatie en door de database eronder.
- Nieuwe gebruikers
- Alleen op uitnodiging. Uitnodigingen verlopen na 7 dagen en zijn in te trekken.

AI die het gebouw nooit verlaat
SECAI, de AI-engine van het platform, draait op de eigen servers van Secuno in Nederland. Het legt risico's uit en stelt oplossingen voor, maar beslist niet zelfstandig: de gemeten, deterministische score komt eerst, en de AI-laag kan die alleen binnen een vaste grens bijstellen.
- 01Geen inventaris-, CVE- of risicodata gaat naar een externe AI-aanbieder
- 02Elke invoer achter een score is zichtbaar in de console
- 03Een maatregel telt alleen tegen het aanvalspad dat hij echt blokkeert
- 04De AI-bijstelling is begrensd, dus kan een score kleuren en nooit omdraaien
U hoeft ons niet op ons woord te geloven
Dit zijn de beveiligingsheaders die de platform-API bij elke response meestuurt. Voer het commando uit en vergelijk.
$ curl -sI https://app.secuno.nl/api/health
HTTP/2 200
strict-transport-security: max-age=15552000; includeSubDomains; preload
content-security-policy: default-src 'none'; script-src 'self'; … frame-ancestors 'none'
cross-origin-opener-policy: same-origin
cross-origin-resource-policy: same-origin
cross-origin-embedder-policy: require-corp
permissions-policy: camera=(), microphone=(), geolocation=(), payment=(), usb=(), …
referrer-policy: same-origin
x-frame-options: SAMEORIGIN
x-content-type-options: nosniff
De antwoorden waar klanten om vragen
NIS2 laat uw klanten hun leveranciers controleren, en daar hoort het platform bij waarop u hun beveiliging draait. Dit zijn de korte antwoorden; vraag ons gerust naar de details achter elk ervan.
Waar wordt data opgeslagen en verwerkt?
Op de eigen servers van Secuno in Nederland. Klantdata verlaat de EU niet.
Wordt data gedeeld met AI-aanbieders?
Nee. De AI-engine draait op dezelfde servers in Nederland.
Hoe is data beschermd tijdens transport?
HTTPS met HSTS preload voor de console; agents gebruiken standaard TLS 1.3 en ondertekenen elk verzoek met een sleutel per apparaat.
Hoe zijn tenants gescheiden?
Door controles in de applicatie en door row-level security in de database, in productie afgedwongen sinds september 2026.
Welke aanmeldopties zijn er?
SSO met Entra ID of Google, TOTP, FIDO2-sleutels en passkeys, verplicht te stellen per rol, klant en gebruiker.
Wordt activiteit gelogd?
Ja, 70 soorten acties met gebruiker, tijd, bron en de oude en nieuwe waarde. Logs zijn niet te verwijderen via de interface.
Welke subverwerkers zijn er betrokken?
Vraag ons om de actuele lijst, met wat elke partij doet en waar. Vraag de lijst op
Hoe lang wordt data bewaard, en hoe wordt die verwijderd?
Per datasoort beschreven in de referentie voor dataretentie. Dataretentie
Hoe meld ik een kwetsbaarheid?
Mail naar [email protected], in het Nederlands of Engels. Het contact staat ook in security.txt. [email protected]
Waar zie ik de status van het platform?
Op de live statuspagina. Systeemstatus
Elke maatregel, voor de beoordelaar
De volledige lijst achter de secties hierboven, voor wie beveiligingspagina's regel voor regel leest.
Endpoint-agent8
- Ed25519-identiteit per apparaat
- Aangemaakt bij de inschrijving, beschermd met Windows DPAPI onder het serviceaccount van de agent zodat een ander lokaal account hem niet kan ontsleutelen, en na 30 dagen vervangen waarbij de oude sleutel de nieuwe ondertekent.
- Ondertekende verzoeken
- Elk verzoek is met Ed25519 ondertekend over methode, pad, klant, apparaat, tijdstempel, nonce en een SHA3-256-hash van de inhoud. Invoer die een extra regel probeert binnen te smokkelen, wordt geweigerd.
- Bescherming tegen replay
- Tijdstempels moeten binnen vijf minuten vallen, en elke nonce is eenmalig.
- Standaard TLS 1.3
- De agent vereist TLS 1.3 tenzij een beheerder 1.2 uitdrukkelijk toestaat, en slaat certificaatcontroles niet over.
- Offline buffer
- Als het platform onbereikbaar is, worden rapporten weggeschreven naar een buffer op schijf van maximaal 64 MiB en opnieuw verstuurd zodra de verbinding terug is, zodat een netwerkstoring geen gaten achterlaat.
- Eenmalige inschrijftokens
- Eén keer getoond in de console, alleen als hash opgeslagen, met een instelbare vervaldatum en een maximaal aantal keer gebruik.
- Ondertekende regelsets, faalt naar weigeren
- Lokale detectieregels worden gecontroleerd voordat ze laden; zonder geldige handtekening laadt er niets.
- Toegestane opdrachten
- Tien responstypen: een proces of procesboom beëindigen, netwerk isoleren en vrijgeven, een bestand in quarantaine plaatsen, een service stoppen of uitschakelen, herstarten of een herstart annuleren, en direct synchroniseren.
Console en accounts6
- Sessieduur
- Toegangstokens van 15 minuten en verversingstokens van 8 uur. Het ondertekengeheim wordt bij het opstarten gecontroleerd; met een zwak geheim start het platform niet.
- Single sign-on
- Entra ID en Google per klant. Elke geweigerde aanmelding wordt met reden gelogd.
- Tweefactor
- TOTP, FIDO2-sleutels en passkeys. Elke challenge is eenmalig, dus een onderschept antwoord is niet opnieuw te gebruiken.
- Rate limiting
- Gedeelde tellers over alle backend-instanties. Tweefactorpogingen zijn beperkt per tijdelijk token, waarna de gebruiker opnieuw moet aanmelden. Terugvallen op lokale limieten wordt gelogd.
- Vergrendeling
- Standaard 5 mislukte pogingen en 15 minuten, beide instelbaar, en niet te onderscheiden bij onbekende adressen.
- Ondersteuning
- Maximaal dertig minuten, onder een vaste banner, gelogd als de beheerder die namens de gebruiker handelt.
Webapplicatie5
- Content Security Policy
- Een strikt beleid op elke response dat inline scripts, onbekende bronnen en inbedding blokkeert.
- HSTS met preload
- Browsers gebruiken uitsluitend HTTPS, ook voor alle subdomeinen.
- Cross-origin-isolatie
- COOP, CORP en COEP op API-responses, zodat een kwaadwillende pagina geen referentie naar een Secuno-venster kan krijgen of de resources in een andere context kan trekken.
- Inbedding, referrer en rechten
- X-Frame-Options, een same-origin referrerbeleid en een Permissions-Policy die camera, microfoon, locatie, betalingen en USB uitschakelt.
- Geparametriseerde queries
- Alle databasetoegang loopt via geparametriseerde SQL. Er bereikt geen samengestelde tekst de database.
Data en infrastructuur5
- Hosting
- De eigen servers van Secuno in Nederland. Klantdata verlaat de EU niet.
- Private AI
- SECAI draait op dezelfde servers. Er gaat geen data naar een externe AI-aanbieder.
- Tenantisolatie
- Controles in de applicatie plus Postgres row-level security, afgedwongen sinds september 2026 en bewaakt door een controle in de build.
- Audittrail
- 70 soorten acties met gebruiker, IP, user agent, locatie, entiteit, en de oude en nieuwe waarde. Niet te verwijderen via de interface.
- IP-adressen alleen als context
- Op één plek bepaald, gebruikt voor weergave en audit, nooit voor autorisatie. Privéadressen worden geweigerd in plaats van opgeslagen.
Iets gevonden? Meld het ons eerst.
Meld een kwetsbaarheid in secuno.nl of het Secuno-platform vertrouwelijk aan [email protected], in het Nederlands of Engels. Beschrijf wat u vond en hoe het te reproduceren is. We bevestigen de ontvangst, houden u op de hoogte terwijl we het oplossen, en vragen u details pas te publiceren als er een oplossing is.
Antwoorden nodig voor de vragenlijst van een klant?
Stuur hem naar ons. We beantwoorden beveiligingsreviews en due-diligencevragen, en lopen elke laag met u door.