Compliance
Built for Dutch and European regulated environments from the ground up.
Overview
InnConnect is designed for organizations operating in regulated Dutch and European environments. Compliance is not an add-on — it is built into the architecture from the ground up.
Every tenant operates in a fully isolated environment with its own PostgreSQL database, its own Kubernetes-managed credentials, and its own file storage. Field-level encryption protects sensitive data at rest. Role-based access control enforces least-privilege across seven roles and seventeen permissions. Tamper-evident audit logging records every significant action with cryptographic hash chains. All data resides in the EU, on Dutch infrastructure, with no exceptions.
These technical controls form the foundation for meeting the requirements of multiple compliance frameworks simultaneously. The sections below map each framework to the specific InnConnect features that address it.
Screenshot: Compliance dashboard showing framework coverage scores and recent security events
Frameworks
InnConnect addresses requirements from seven compliance frameworks relevant to Dutch and European organizations. Each card below summarizes the framework and the specific capabilities InnConnect provides to support it.
General Data Protection Regulation
EU Regulation 2016/679
- Per-tenant database isolation — no data co-mingling
- Data subject rights: export, deletion, right to be forgotten
- Data classification on all content (4 levels)
- Consent management
- Configurable data retention policies
- Breach notification register
- PII scanning before Knowledge Base publication
Information Security Management
International ISMS standard
- RBAC with 7 roles and 17 granular permissions
- Tamper-evident audit logging with hash chains
- Two-factor authentication (TOTP)
- Session management and forced password change
- Security event monitoring
- Supplier management and risk register
Information Security in Healthcare
Dutch healthcare standard (extends ISO 27001)
- All ISO 27001 controls, plus healthcare-specific measures
- Data classification: public, internal, confidential, restricted
- Access logging for patient-related data
- Field-level encryption (AES-256) for sensitive fields
- Granular, per-action audit trails
Baseline Informatiebeveiliging Overheid
Basisnorm informatiebeveiliging overheid
- Government-grade access controls
- Complete audit trail with 5-year retention
- Data sovereignty — EU hosting on TransIP Netherlands
- Encryption at rest (AES-256) and in transit (TLS 1.2+)
- Strict authentication with 2FA and password policies
Network and Information Security Directive
EU Directive 2022/2555
- Incident response procedures
- Supply chain security and supplier management
- Risk management with risk register
- Mandatory breach reporting workflow
- Security event monitoring and alerting
Artificial Intelligence Act
EU Regulation 2024/1689
- AI transparency — disclosure of AI use in chat conversations
- Human oversight via escalation system
- AI monitoring dashboard for usage and behavior
- Content provenance tracking
- Prompt injection defense and content sanitization
Digital Operational Resilience Act
EU Regulation 2022/2554
- ICT risk management framework
- Operational resilience testing
- Third-party risk management
- Incident reporting and classification
- Encryption and access control for financial data
Technical Controls
The table below maps each security measure to its technical implementation and the compliance frameworks it supports. These controls are enforced at the infrastructure and application level across all tenants — they cannot be disabled or bypassed by tenant administrators.
| Measure | Implementation | Frameworks |
|---|---|---|
| Tenant Isolation | Separate PostgreSQL database per tenant. Per-tenant Kubernetes Secrets for database credentials. Per-tenant S3 bucket for file storage. No shared tables between tenants. | GDPR ISO 27001 NEN 7510 BIO |
| Encryption at Rest | AES-256 field-level encryption via TenantEncrypted Eloquent cast. Blind indexes for searching encrypted fields without decryption. Per-tenant encryption keys stored in Kubernetes Secrets. | GDPR ISO 27001 NEN 7510 DORA |
| Encryption in Transit | TLS 1.2+ enforced on all connections. HSTS headers prevent protocol downgrade. Internal cluster traffic encrypted between services. | GDPR ISO 27001 NEN 7510 BIO NIS2 DORA EU AI Act |
| Access Control | Role-based access control: 7 roles, 17 permissions across 6 functional groups. Permission middleware and Laravel Gates enforce access on every request. Menu items and actions hidden for unauthorized users. | ISO 27001 NEN 7510 BIO NIS2 |
| Authentication | Two-factor authentication (TOTP) with recovery codes. Forced password change on first login. Configurable password strength policies. Breached password detection. | ISO 27001 NEN 7510 BIO |
| Audit Logging | Tamper-evident hash chain: each log entry includes a cryptographic hash of the previous entry. Per-tenant storage in dedicated database. 5-year retention. Viewer UI with filters and export. | ISO 27001 NEN 7510 BIO NIS2 DORA |
| Data Classification | Four-level classification system: Public, Internal, Confidential, Restricted. Applied to Knowledge Base articles and customer data. Classification drives retention, encryption, and access rules. | ISO 27001 NEN 7510 GDPR |
| Data Residency | All infrastructure hosted on TransIP in the Netherlands. Databases, file storage, backups, and logs — all EU. No data processing outside the European Union. | GDPR BIO NIS2 |
| Input Sanitization | Server-side HTML sanitization via HTMLPurifier. Client-side defense-in-depth via DOMPurify. UrlValidator blocks SSRF attacks on external URL fetching. PromptSanitizer wraps external content with structural delimiters. | ISO 27001 NIS2 |
| Rate Limiting | Per-endpoint throttling on all sensitive operations: login, chat, AI research, checkout, password reset, API key regeneration. HTTP 429 response with Retry-After header. Violations logged to security audit. | NIS2 ISO 27001 |
| AI Governance | Prompt injection defense via structural delimiters and instruction reinforcement. Content provenance tracking for AI-generated responses. AI monitoring dashboard for usage, cost, and behavior patterns. Mandatory AI disclosure in chat widget. | EU AI Act |
Data Residency
All InnConnect data is stored in the Netherlands on TransIP Kubernetes infrastructure. This applies without exception to every component of the system.
Databases
PostgreSQL instances — both the system database and all per-tenant databases — run on TransIP compute in the Netherlands.
File Storage
Tenant file uploads and Knowledge Base attachments are stored in TransIP Object Storage (S3-compatible) in the Netherlands. Each tenant has a dedicated bucket.
Backups
Automated daily backups and WAL archives are stored on TransIP infrastructure. Backup data never leaves the EU.
Application Layer
The Kubernetes cluster, load balancers, and all application pods run on TransIP infrastructure in the Netherlands.
Screenshot: Data residency overview showing infrastructure location and data flow diagram
Tenant Isolation Architecture
Multi-tenancy is the single most important architectural decision for compliance. InnConnect uses full database-level isolation — not row-level filtering within shared tables. Every tenant operates as if they are the only customer on the platform.
Database
Separate PostgreSQL database per tenant. No shared tables. Schema-identical but physically isolated.
Credentials
Per-tenant database credentials stored in Kubernetes Secrets API. Never in the application database or configuration files.
File Storage
Dedicated S3 bucket per tenant on TransIP Object Storage. Bucket policies prevent cross-tenant access.
Cache
Separate cache prefix per tenant in Redis. Cache isolation prevents data leakage between tenants.
Connections
PgBouncer pools database connections per tenant transparently. Connection pooling does not compromise isolation.
Encryption Keys
Per-tenant encryption keys for field-level encryption. Stored in Kubernetes Secrets, rotatable per tenant.
This architecture means that a data breach affecting one tenant cannot compromise another tenant's data. It also simplifies GDPR data deletion requests — an entire tenant's data can be removed by dropping a single database and deleting a single S3 bucket, without affecting any other customer.
Screenshot: Tenant isolation architecture diagram showing separate DB, storage, cache, and credentials per tenant
Compliance Roadmap
Related Documentation
For detailed information on specific security controls referenced above, see the following pages.
Security
2FA, session management, rate limiting, XSS and SSRF protection, prompt injection defense, and content security policy.
User Management & RBAC
All seven roles, the full 17-permission matrix, per-site scoping, user lifecycle, and the principle of least privilege.
Knowledge Base
Data classification, PII scanning, content sign-off workflow, and AI-assisted article generation.