Security en compliance briefing: RaconWorks
26 juli 2026 | Doelgroep: ICT-afdeling van de klant | Onderwerp: de RaconWorks-applicatie
Dit document is de technische onderbouwing die uw ICT-afdeling nodig heeft om RaconWorks te beoordelen: waar de gegevens staan, wie erbij kan, en hoe dat is afgedwongen. Onderaan staat een paragraaf met wat wij niet kunnen aantonen. Die hoort erbij.
1. Hosting en infrastructuur
De applicatie draait volledig op Google Cloud Platform via Firebase. Er zijn geen eigen servers om te patchen of te beheren: het beheer van de onderliggende infrastructuur ligt bij Google, volgens het gedeelde verantwoordelijkheidsmodel.
- Provider: Google Cloud. Google publiceert ISO 27001- en SOC 2-certificering voor deze diensten. Die certificering is van Google en niet van RaconSoft.
- Gegevensopslag: Firestore.
- Regio: de Firestore-locatie is ingesteld op een Europese regio. Vraag ons om een schermafdruk uit de Firebase-console als u dit hard nodig heeft voor uw dossier. Zie ook de laatste paragraaf.
2. Authenticatie
Toegang loopt via Firebase Authentication.
- Wachtwoorden worden nooit in platte tekst opgeslagen. Ze worden beheerd door Google Identity Platform.
- Sessies werken met tokens die automatisch verlopen.
- App Check staat aan, met reCAPTCHA v3. Dat controleert of een verzoek van de echte applicatie komt en niet van een script. Let op: dit is de standaard v3-variant, niet reCAPTCHA Enterprise. Een eerdere versie van dit document zei Enterprise, en dat klopte niet.
3. Wie mag wat
De autorisatie is afgedwongen op databaseniveau, via Firestore Security Rules. Dat betekent dat een gebruiker met een geldig token nog steeds geen gegevens kan opvragen waarvoor hij geen rechten heeft. De regel staat aan de serverkant, niet in de app.
Er zijn zes rollen:
- Werkvoorbereider en Uitvoerder: lezen stamdata en de eigen werkplannen, schrijven alleen in eigen documenten.
- Werkverantwoordelijke: ziet aanvragen binnen de toegewezen locaties en keurt goed of af.
- Tech Doc Owner: beheert de technische documentatie.
- Administrator: volledig beheer, maar begrensd tot de toegewezen fysieke locaties.
- Superuser: beheer over locaties heen.
Die laatste twee zijn belangrijk voor uw beoordeling: de begrenzing per locatie is wat meerdere vestigingen van elkaar gescheiden houdt, en de Superuser staat daarbuiten. Een eerdere versie van dit document beschreef drie rollen en noemde de Superuser niet.
4. Versleuteling
- Onderweg: al het verkeer tussen browser en server gaat over HTTPS met TLS 1.2 of hoger.
- In rust: gegevens in Firestore en Cloud Storage worden door Google versleuteld opgeslagen met AES-256.
5. Wat er op het apparaat gebeurt
RaconWorks is een installeerbare webapplicatie en werkt offline. Dat betekent dat er gegevens op het toestel van de monteur staan.
- Wat lokaal wordt bewaard, is bedoeld om door te kunnen werken als het netwerk wegvalt, wat op een fabrieksvloer regelmatig gebeurt.
- Aanmeldtokens worden afgehandeld door de Firebase SDK en niet zelf opgeslagen.
- De applicatie draait in de browsersandbox.
Wilt u weten wat er precies gecachet wordt op een specifiek toestel, vraag ons dan om de cachedefinitie. Dat is een lijst en die kunnen wij leveren.
6. Wat wij niet aantonen
Deze paragraaf staat er bewust, want een securitydocument zonder grenzen is een verkoopdocument.
- Wij zijn niet ISO 27001-gecertificeerd. Google is dat voor de infrastructuur. Dat is niet hetzelfde en u mag het niet als zodanig in uw dossier opnemen.
- Er is geen externe audit of pentest uitgevoerd op de applicatie. Vraagt uw inkoop daarom, zeg dat dan tegen ons voordat u tekent.
- De regio-instelling is een consoleconfiguratie en niet uit de broncode af te leiden. Wij tonen hem op verzoek.
- RaconSoft is een eenmanszaak. Voor een meerjarige afhankelijkheid hoort u te vragen naar een exitregeling en naar wat er gebeurt als wij er niet meer zijn. Stel die vraag.
Iets missen? Krijgt u van uw eigen opdrachtgever een vragenlijst waar dit document geen antwoord op geeft, stuur hem dan door naar info@raconsoft.nl. Dan vullen wij dit document aan in plaats van u een los antwoord te sturen.