Sikkerhet og personvern

Prinsipper

Løsningen følger et enkelt prinsipp: chatboten skal være nyttig for brukeren, men ikke eksponere private persondata.

Hva chatboten bruker som datagrunnlag

  • Kun klubbens egne data som er hentet inn via kontrollerte tabeller.
  • Offisiell klubbkontakt i setup_basic brukes ved kontaktspørsmål.
  • Banestatus hentes fra adminfelt (setup_basic.course_condition) og prioriteres i svar.

Hva som filtreres bort

I backend filtreres personopplysninger eksplisitt bort fra de fleste datasett før de blir en del av AI-konteksten:

  • E-postfelt
  • Telefonfelt
  • Mobilfelt
  • Andre kontaktfelt som kan være private

Dette gjelder alle tabeller bortsett fra setup_basic, fordi setup_basic brukes som offisiell klubbkilde.

Regler i svarmotoren

  • Chatboten er instruert til å bruke offisielle kontaktkanaler.
  • Chatboten skal ikke oppgi private telefonnumre eller private e-postadresser.
  • Ved manglende klubbspesifikk informasjon skal chatboten svare tydelig at data ikke finnes, og ikke finne på detaljer.

Dataseparasjon mellom klubber

  • Hver forespørsel sender tenant_id.
  • Hver klubb har egen cachefil: cache/<KLUBB>_context.json.
  • Svar bygges kun fra cache for valgt klubb.

Dette hindrer blanding av informasjon mellom klubber.

Nettverkssikkerhet i frontend

Frontend har beskyttelse mot feilruting til lokal testserver på live-side:

  • På lokale miljøer kan localhost brukes
  • På ekstern side tvinges endepunkt til /api/chat
  • Loopback-adresser blokkeres på ekstern side

Dette hindrer lekkasje mot utviklers lokale maskin.