Beveiligingsoverzicht
De maatregelen die in het product zijn ingebouwd, in gewone taal. Voor vragen, een penetratietestrapport of om een kwetsbaarheid te melden, schrijf naar [email protected].
Tenant-isolatie
De rijen van elke werkruimte zijn gescheiden door row-level security die wordt afgedwongen in Postgres, niet alleen in applicatiecode; de zoekindexen zijn zo gebouwd dat ze onder dat beleid werken in plaats van eromheen. Geüploade bestanden worden opgeslagen onder sleutels per werkruimte en aangeboden als download, tenzij het afbeeldingen zijn; bestanden in een chat bereiken bezoekers via links die na tien minuten verlopen. Een geschorste of gesloten werkruimte stopt in één keer elke API-sleutel, elk app- en bottoken, elke sessie, elke chat en elke live verbinding. Foto's worden opgeslagen zonder de locatie, het apparaat en andere metadata die telefoons erin schrijven.
Identiteit
Wachtwoorden worden gehasht met Argon2id. Iedereen kan tweefactorauthenticatie aanzetten op de beveiligingspagina van zijn account: scan een QR-code die in de browser wordt getekend, bevestig met een code en bewaar eenmalige herstelcodes; uitzetten vereist het wachtwoord en een code. Dezelfde pagina toont elke ingelogde browser, om er één of alle andere af te melden. Werkruimtes kunnen hun eigen single sign-on-providers toevoegen via OpenID Connect, beperkt tot hun e-maildomeinen; wie tweefactorauthenticatie heeft aangezet, wordt nog steeds om zijn code gevraagd. Beheerders kunnen tweefactorauthenticatie voor elk lid verplicht stellen, meteen of na een overgangsperiode van zeven of veertien dagen, en de eigen platformbeheerders van Kommio moeten het gebruiken. Sessies draaien serverside, met een absolute levensduur en een levensduur bij inactiviteit. API-sleutels, bot-tokens en app-tokens worden opgeslagen als hashes, beperkt tot één werkruimte en een rechtenset.
Autorisatie
Rollen bepalen rechten, welke gesprekken iemand kan zien, en of gevoelige velden zoals e-mailadressen, telefoonnummers, betaalgegevens en IP-adressen zichtbaar, gemaskeerd of verborgen zijn. Niemand kan een rol aanmaken, een lid wijzigen, iemand uitnodigen of een app goedkeuren met meer dan hij zelf heeft. Automatiseringen draaien met de rechten van wie ze heeft aangemaakt; apps draaien met de scopes die een beheerder bij installatie heeft goedgekeurd. Een lid uitschakelen of verwijderen, zijn rol beperken, een API-sleutel intrekken of een werkruimte schorsen toont eerst wat het raakt en vereist dat je het e-mailadres, de sleutelnaam of de werkruimtenaam typt; de regels, bots, webhooks en apps van een vertrekkend lid kunnen worden overgedragen aan een collega met de benodigde rechten, en regels waarvan de maker is vertrokken worden gepauzeerd tot iemand ze overneemt. Aangepaste kenmerken met identiteitsbewijzen, betaalgegevens of andere persoonsgegevens kunnen worden gemarkeerd zodat ze dezelfde regels volgen, en de pagina Toegang laat voor elke persoon zien welke gesprekken die ziet en hoe die elk soort gegevens ziet. Bestanden met een identiteitsbewijs of andere persoonsgegevens kunnen vanuit de draad of door een regel worden gemarkeerd, en volgen daarna dezelfde toekenning: getoond, gemaskeerd of verborgen per rol, nooit naar een AI-provider gestuurd, in exports alleen vermeld voor mensen die ze mogen zien, en verwijderd na de bewaartermijn die de werkruimte voor identiteitsbewijzen instelt.
Audit
Elke wijziging legt vast wie, wat, voor en na. Een gemaskeerde waarde tonen is een apart recht en schrijft een eigen auditregel met een optionele reden, en de pagina Beveiligingsbeleid toont wie in de afgelopen 30 dagen welke gemaskeerde waarden heeft getoond, gekoppeld aan het auditlog. Als de eigen website van een klant bij het inloggen de naam of het e-mailadres van een contact bijwerkt, of een eerdere anonieme chat samenvoegt, wordt de wijziging vastgelegd en bij het contact getoond. Elke inkomende e-mail wordt bovendien bewaard precies zoals hij binnenkwam, standaard 90 dagen (een instelling van de werkruimte), en direct verwijderd wanneer het contact wordt gewist; alleen iemand die inboxen beheert en het hele bericht onversleuteld mag lezen kan een kopie downloaden, en elke download komt in de auditlog.
Versleuteling
Kanaalgegevens, SSO-geheimen, sleutels van AI-providers en tokens worden versleuteld opgeslagen met envelope-encryptie en worden na het opslaan nooit meer getoond. TLS wordt overal tijdens transport gebruikt.
Websitechat
Welke sites de chat van een werkruimte mogen tonen, wordt door de browser zelf afgedwongen. Een bezoeker wordt pas een contact als er een gesprek is: een anonieme bezoeker is alleen bekend via een willekeurig token in zijn browser, zonder browserfingerprinting, en een ingelogde bezoeker voor wiens identiteit zijn site instaat wordt bijgehouden als chatsessie, niet als contact, totdat die schrijft, een medewerker een chat met hem start of hij een e-mailadres achterlaat; een sessie die 30 dagen niet is gezien (de termijn is een werkruimte-instelling) wordt verwijderd. De browsecontext wordt alleen met het eerste bericht meegestuurd. De site van een klant identificeert ingelogde bezoekers met een handtekening van de eigen server, en een e-mailadres dat in de chat wordt getypt koppelt nooit uit zichzelf twee mensen aan elkaar. Elke werkruimte bepaalt of IP-adressen van bezoekers volledig, ingekort of helemaal niet worden opgeslagen.
AI-assistentie
Uit totdat een beheerder het aanzet, op het gratis AI-tegoed van Kommio Cloud of met de eigen providersleutel van de werkruimte. Alleen wat een taak nodig heeft wordt verstuurd: recente berichten, de naam van de klant, en e-mailadressen of telefoonnummers alleen als degene die het vraagt ze mag zien. Betaal- en identiteitsbewijsvelden, in berichten getypte kaartnummers, privénotities bij antwoordsuggesties en aangepaste kenmerken worden nooit verstuurd. Kommio slaat geen prompts of antwoorden op, alleen gebruiksaantallen voor het budget. De optionele AI-agent antwoordt alleen vanuit je kennisbank, toont klanten nooit interne inhoud, krijgt geen e-mailadressen of telefoonnummers van contactpersonen en draagt over aan een mens als hij twijfelt.
Inkomend en uitgaand vertrouwen
Webhooks van providers worden geverifieerd op handtekening voordat ze worden verwerkt. Uitgaande verzoeken naar door klanten opgegeven URL's (webhooks, bots, apps, AI-providers) gaan via één SSRF-veilige client die privéreeksen weigert en grootte en tijd beperkt. Uitgaande webhooks, afleveringen aan bots en app-hooks zijn ondertekend. HTML-e-mailinhoud wordt gesaneerd bij het schrijven en opnieuw bij het weergeven. Zelf gehoste installaties kunnen elk geüpload of ontvangen bestand door ClamAV laten scannen voordat het wordt opgeslagen: een gemarkeerd bestand wordt geweigerd of vervangen door een plaatsaanduiding en nooit geserveerd. Het staat standaard uit, en Kommio Cloud scant nog geen bestanden.
Browser
De agent-app wordt geserveerd met een strikt Content Security Policy: alleen scripts, lettertypen en verbindingen van dezelfde origin, geen frames of objecten, en kan niet worden ingesloten. App-panelen draaien in gesandboxte iframes met een ondertekende, kortlevende context.
Beheer
Databaserollen met minimale rechten, scannen van dependencies en containers bij elke wijziging, releases die pas uitgaan als de volledige testsuite slaagt en een upgrade vanaf de vorige releases is gerepeteerd, en een gedocumenteerd meldproces. Kommio Cloud wordt zonder downtime uitgerold: de nieuwe versie start naast de oude en neemt het over zodra die klaar is. Zelf gehoste installaties hebben ingebouwde back-ups, standaard uit, die volgens een schema een versleutelde databasedump en de opgeslagen bestanden naar een schijf of een bucket schrijven; de versleutelingssleutel maakt nooit deel uit van een back-up. Op Kommio Cloud is aanmelden beperkt per adres en per e-maildomein, en wegwerp-e-mailadressen worden geweigerd. Zelf gehoste back-ups worden elke week in een testdatabase teruggezet en gecontroleerd, met een melding als dat niet lukt, en kunnen ook worden versleuteld voor een escrow-sleutel die offline wordt bewaard.
Een kwetsbaarheid melden
Mail naar [email protected]. We bevestigen ontvangst binnen twee werkdagen en houden je op de hoogte tot het probleem is opgelost.