Sikkerhet & GDPR

Bygget sikkert fra dag én

Belliq håndterer gjesteinformasjon, betalingsdata og driftslogger. Sikkerhet er ikke et tillegg — det er fundamentet.

99%+
Sikkerhetsrevisjon bestått
Uavhengig revidert — kontinuerlig compliance-overvåking
🔒 AES-256 kryptering
🇪🇺 GDPR-kompatibel
🛡 Row Level Security
HMAC-SHA256
🔐 Argon2 hashing
🤖 Agentisk AI-pipeline
🔨 Adaptiv rate limiting
🔄 LLM-redundans
🛠 pip-audit CI
🌐 Egress-filtrering

Flerlags sikkerhet

Hver komponent i Belliq er bygget med defence-in-depth-prinsippet.

🔒 HMAC-SHA256 + replay-beskyttelse

Alle webhooks verifiseres med HMAC-SHA256-signaturer. Trelags replay-beskyttelse: timestamp-validering (5 min), event-ID deduplisering (24t Redis TTL), og per-eiendom idempotency-sjekk. Manipulerte eller gjentatte meldinger avvises.

🔐 Fernet AES-kryptering

All personlig gjesteinformasjon (PII) og API-tokens krypteres med Fernet (AES-128-CBC med HMAC). Nøkler roteres regelmessig. Data er uleselig selv ved databaselekkasje.

🛡 PostgreSQL Row Level Security

Multi-tenant isolasjon på databasenivå. Hver eiendom ser kun sine egne data. RLS policies håndheves av PostgreSQL selv — ikke bare applikasjonslaget.

🔐 Argon2 passord-hashing

Operatør-passord hashes med Argon2id — vinneren av Password Hashing Competition. Minnekrevende hashing gjør brute-force-angrep upraktiske.

🔨 Rate limiting & CSRF

Adaptiv hastighetsbegrensning på alle endepunkter med Redis-basert sliding window. Dynamisk brute-force-beskyttelse på innlogging og API-kall. CSRF-tokens på alle tilstandsendrende operasjoner. IP-allowlisting for webhooks.

🔑 JWT med refresh-tokens

Korttids access-tokens med automatisk fornyelse via sikker refresh-rotasjon. Nøkkelrotasjon støttes — både ny og gammel nøkkel valideres under overgangsperioden. Type-validering hindrer misbruk av refresh-tokens som access-tokens.

🤖 Prompt-herding & DCCD (LLM-sikkerhet)

AI-modellen er beskyttet mot prompt injection og jailbreaking. System-prompts er låst. Bruker-input sanitiseres før det når modellen. DCCD-guardrails fanger regelbrudd og omskriver svar automatisk før eskalering. Alle AI-beslutninger logges i revisjonssporing.

🤖 Agentisk beslutningspipeline

Tre uavhengige AI-agenter (compliance, sentiment, policy) vurderer hver kritisk handling. En moderator aggregerer med vektet konfidensscoring. AI Stability Score overvåker systemhelsen i sanntid (0–100) og varsler ved degradering.

⚡ Circuit breakers

Eksterne tjenester (Mews API, SMS-leverandør, AI-modell) er innkapslet i circuit breakers. Ved feil degraderer Belliq gracefullt i stedet for å krasje — og sender eskaleringsvarsel.

💻 pip-audit i CI/CD

Alle Python-avhengigheter skannes automatisk for kjente sårbarheter ved hver deploy. pip-audit kjører i GitHub Actions og blokkerer deploy ved funn.

🌐 Egress-filtrering & Cloudflare

UFW-brannmur med deny-by-default utgående trafikk — kun godkjente destinasjoner (Mews, Claude, SMS). Cloudflare-klar: DDoS-beskyttelse, WAF, Zero Trust Access med e-post-OTP for admin-dashboard.

🔍 Observabilitet & diagnostikk

Strukturert logging med korrelasjons-ID gjennom hele kjørekjeden. Feilrate-sporing per tjeneste med automatisk varsling via Sentry. Helsedashboard med sanntidsstatus for alle subsystemer.

🎯 Konfidensbasert beslutningskontroll

Trelagsmodell: Høy konfidens → automatisk handling. Middels konfidens → venter på operatør-godkjenning. Lav konfidens → umiddelbar eskalering. AI-en handler aldri på egne vegne når den er usikker.

👁 Overvåkningsmodus (skyggedrift)

Tre driftsmoduser per eiendom: aktiv, overvåkning og pauset. I overvåkningsmodus logger Belliq hva den ville ha gjort — uten å utføre noen handling. Perfekt for validering før produksjon.

🔄 LLM-redundans & automatisk fallback

Primær AI-modell (Claude) med lokal fallback (Ollama). Ved feil degraderer systemet intelligent — enklere oppgaver rutes lokalt, kritiske eskaleres til mennesker. Ingen enkeltpunktsfeil i AI-laget.

📦 Dead letter queue & selvhelbredelse

Feilede jobber fanges opp og lagres med full feilkontekst etter automatiske gjenforsøk. Admin-API for manuell gjennomgang og re-kjøring. Lastbalansering hindrer kø-overbelastning under trafikk-topper.

💨 Syntetiske helseprober

Periodiske end-to-end-sjekker simulerer hele behandlingskjeden. Varsler automatisk ved degradert ytelse — før det påvirker gjester. SLO-mål definert for tilgjengelighet, latens og pålitelighet.

🔗 Idempotent meldingshåndtering

Webhook-deduplisering sikrer at samme hendelse aldri behandles to ganger. SMS og nøkkelforsøk dedupliseres med unik identifikator. Ingen dupliserte meldinger til gjester, uansett nettverksforsinkelser.

⏳ Begrenset iterasjonsguard

AI-omskrivingsløkker begrenset til maks 3 iterasjoner med 30-sekunders timeout. Forhindrer uendelige LLM-kall. Ved grensebrudd eskaleres hendelsen automatisk til menneskelig operatør.

💰 LLM-budsjett per eiendom

Daglig AI-kostnadstak per hotell med myk varsling (80%) og hard grense (100%). Ved budsjettbrudd pauses AI-behandling automatisk — alle hendelser går til operatør. Administratorer kan nullstille budsjett med én handling.

🔒 Atomisk avvikslås

Redis-basert eksklusiv lås per gjesteavvik forhindrer at to arbeidere behandler samme problem samtidig. Automatisk frigjøring (60s TTL) ved systemfeil. Grasiøs degradering uten Redis.

GDPR-kompatibilitet

Belliq er designet for europeisk hotellbransje — GDPR er innbakt i arkitekturen.

📦

Dataminimering & automatisk PII-rensing

Vi lagrer kun det som er nødvendig. Gjeste-PII (navn, e-post, telefon) anonymiseres automatisk etter konfigurerbar periode etter utsjekk. Vektordatabaser ryddes på samme plan.

Konfigurerbar oppbevaringstid

Hvert hotell kan sette egen oppbevaringstid for gjestadata. Standard er 90 dager. Automatisk sletting når perioden utløper.

🗑

Rett til sletting

Fullstendig støtte for «right to be forgotten». En API-kall sletter all gjesterelatert data — inkludert logger og AI-historikk.

📋

Uforanderlig revisjonssporing

Alle handlinger — både manuelle og AI-drevne — logges med tidsstempel, aktør, korrelasjons-ID og kontekst. Revisjonsloggen er append-only på databasenivå og kan ikke endres i ettertid.

🎯

Formålsbegrensning

Gjestadata brukes kun til drift av hotellet. Aldri til markedsføring, aldri delt med tredjeparter, aldri brukt til AI-trening.

🗃

Dataeksport

Hotellet kan når som helst eksportere all data i strukturert format (JSON/CSV). Full dataportabilitet iht. GDPR art. 20.

Teknisk oversikt

Backend

  • ● Python / FastAPI
  • ● PostgreSQL med RLS
  • ● Alembic migrasjoner
  • ● RQ / Redis task queue

AI / LLM

  • ● Claude API (Anthropic) — primær LLM
  • ● Ollama fallback (lokal AI, Premium)
  • ● Langfuse observabilitet
  • ● Agentisk pipeline + AI Stability Score

Infrastruktur

  • ● Docker Compose
  • ● GitHub Actions CI/CD
  • ● HTTPS / TLS 1.3
  • ● EU-hostet VPS-infrastruktur

Belliq kjører på europeisk infrastruktur — ingen gjestedata forlater EU/EØS. Premium-kunder kan velge lokal AI som holder all data på egne servere.

Spørsmål om sikkerhet?

Vi deler gjerne den fullstendige sikkerhetsrevisjonen og teknisk dokumentasjon.

Kontakt oss →