1. Sammenfatning
Zero data retention. Personaleagent gemmer hverken spørgsmål, svar eller uploadede dokumenter. Al behandling sker i hukommelsen og kasseres øjeblikkeligt efter svaret er genereret. Ingen samtaledata skrives til nogen lager.
Personaleagent er en AI-drevet juridisk rådgiver specialiseret i dansk HR og ansættelsesret. Løsningen leverer kildebaseret vejledning om funktionærloven, ferieloven, barselsloven, ligebehandling, opsigelse og meget mere — med præcise kildehenvisninger til lovparagraffer, domme og afgørelser.
Løsningen er bygget udelukkende på Azure-infrastruktur i Sweden Central (EU) og overholder kravene i GDPR, NIS2 og dansk databeskyttelseslovgivning. Al autentificering håndteres af Microsoft Entra ID — Personaleagent håndterer eller gemmer aldrig adgangskoder eller identitetsoplysninger.
| Egenskab | Personaleagent |
|---|---|
| Datalagring (samtaler) | Ingen — zero retention |
| Infrastruktur | Azure, Sweden Central (EU) |
| Autentificering | Microsoft Entra ID SSO |
| AI-model | Azure OpenAI — zero retention |
| Søgning | Hybrid (semantisk + vektor) — Azure AI Search |
| Vidensbase | 6.200+ validerede juridiske dokumenter |
| Adgangsstyring | Entra ID — brugerassignment required |
| Rate limiting | 100 forespørgsler/bruger/dag via Entra ID OID |
2. Arkitektur
| Komponent | Teknologi | Formål |
|---|---|---|
| Compute | Azure Functions (Consumption, Node.js 22 LTS) | Serverless behandling af forespørgsler — ingen persistent state |
| AI-model | Azure OpenAI, Sweden Central | Generering af kildebaserede svar |
| Indeksering | Azure OpenAI + ContentUnderstandingSkill | Semantisk chunking af vidensbasens dokumenter |
| Søgning | Azure AI Search, Basic tier | Hybrid søgning (semantisk + vektorsøgning) i vidensbasen |
| Embeddings | text-embedding-3-large, 3.072 dim | Vektorgenerering til søgning |
| Lager | Azure Blob Storage, Sweden Central | Opbevaring af vidensbasens juridiske dokumenter |
| Autentificering | Microsoft Entra ID (single tenant — PatchIT) | SSO-login via Microsoft-arbejdskonto |
| Overvågning | Azure Application Insights | Teknisk overvågning — request-indhold ekskluderet |
Vidensbase
Personaleagent bruger Retrieval Augmented Generation (RAG) med hybrid søgning. Brugerens spørgsmål oversættes til dansk og engelsk og søges parallelt via både semantisk søgning og vektorsøgning. De to metoder kombineres med Reciprocal Rank Fusion og rerankes semantisk — hvilket sikrer at de mest relevante chunks hentes frem uanset præcis ordvalg.
Vidensbasen er indekseret med Azure AI ContentUnderstandingSkill, der foretager semantisk chunking (maksimalt 500 tokens pr. chunk) og genererer embeddings med text-embedding-3-large (3.072 dimensioner).
Vidensbasen indeholder udelukkende offentligt tilgængelige juridiske dokumenter — lovgivning, vejledninger og offentliggjorte afgørelser. Ingen personoplysninger er lagret i vidensbasen.
3. Dataflow og behandling
Forespørgselsflow
Når en bruger stiller et spørgsmål sker følgende sekvens udelukkende i hukommelsen:
- Brugeren autentificerer via Microsoft Entra ID SSO.
- Forespørgslen transmitteres over HTTPS til Azure Function App.
- Azure AI Search udfører hybrid søgning (dansk + engelsk) over vidensbasen — semantisk søgning kombineret med vektorsøgning via Reciprocal Rank Fusion — og returnerer op til 8+8 unikke dokumentuddrag.
- Forespørgslen og de hentede uddrag sendes til Azure OpenAI til svargenering.
- Svaret returneres til brugerens browser over HTTPS.
- Al data i hukommelsen kasseres. Intet skrives til lager.
Dokumentupload
Brugere kan valgfrit uploade et dokument (PDF, Word .docx eller TXT — maksimalt 10 MB) til gennemgang. Dokumenter behandles som følger:
- Kun browser-side udtrækning. Dokumentet læses og tekst udtrækkes udelukkende i brugerens browser via JavaScript (PDF.js til PDF, Mammoth.js til Word). Filen uploades aldrig til nogen server.
- Den udtrukne tekst injiceres i brugerens forespørgsel og transmitteres til Azure Functions over HTTPS.
- Dokumentindhold kasseres øjeblikkeligt efter behandling. Intet skrives til lager.
Zero retention gælder ligeledes for uploadede dokumenter. Et dokument uploadet af en bruger behandles identisk med indtastet tekst — behandles i hukommelsen og kasseres. Personaleagent gemmer, indekserer eller beholder aldrig brugeruploadet indhold.
Rate limiting
Adgangsstyring og fair use-håndhævelse implementeres via Microsoft Entra ID. En anonymiseret identifikator afledt af brugerens Entra ID-konto (object ID / OID) holdes midlertidigt i server-hukommelsen (RAM) for at håndhæve den daglige forespørgselsgrænse (100 forespørgsler pr. bruger pr. dag). Denne identifikator skrives aldrig til disk eller nogen database, er ikke knyttet til samtalens indhold og kasseres automatisk ved midnat (UTC).
4. Sikkerhedskontroller
| Kontrol | Implementation |
|---|---|
| Transport-kryptering | TLS 1.2+ på alle forbindelser (HTTPS/HSTS) |
| Autentificering | Microsoft Entra ID SSO — ingen adgangskoder håndteres af Personaleagent |
| Adgangsstyring | Assignment Required aktiveret — kun tildelte brugere kan logge ind |
| Ingen datapersistens | Zero retention — al behandlingsdata kasseres efter svar |
| AI-model retention | Azure OpenAI konfigureret med zero data retention — ingen logning af prompts |
| Rate limiting | 100 forespørgsler/bruger/dag via Entra ID OID |
| Netværk | Azure-private endpoints til AI Search og OpenAI |
| Overvågning | Application Insights — request-indhold ekskluderet via excludedTypes: Request |
| Region | Sweden Central (EU) — ingen dataoverførsler ud af EU |
5. Privacy by design
Formålsbegrænsning (GDPR art. 5(1)(b))
Hver forespørgsel behandles udelukkende med henblik på at generere et juridisk vejledningssvar. Systemet har ingen mekanisme til sekundær behandling.
Dataminimering (GDPR art. 5(1)(c))
Kun de oplysninger der er nødvendige for at besvare forespørgslen behandles. Personaleagent opfordrer brugere til at anonymisere personoplysninger inden de stiller spørgsmål om konkrete sager.
Lagringsminimering (GDPR art. 5(1)(e))
Ingen samtaledata gemmes. Den eneste data der lagres er tekniske metadata til drift og sikkerhed — uden kobling til samtalernes indhold.
Fortrolighed og integritet (GDPR art. 5(1)(f))
Al kommunikation er krypteret med TLS 1.2+. Adgang kræver autentificering via Microsoft Entra ID med Assignment Required aktiveret.
Personaleagent er bygget til at overholde GDPR som databehandler. Vi behandler minimale personoplysninger — udelukkende hvad der er nødvendigt til autentificering og fair use-håndhævelse. Se vores privatlivspolitik og databehandleraftale.
6. AI-model sikkerhed
Personaleagent bruger Azure OpenAI Service deployed i Sweden Central. Modellen tilgås via et privat Azure-ressource-endpoint. Ingen offentlige OpenAI API-endpoints bruges.
Microsofts Azure OpenAI tjenestevilkår forbyder eksplicit brug af kunders prompts og completions til modeltræning. Dette håndhæves kontraktuelt og teknisk — Stored Completions er deaktiveret på deployment-niveau.
Vidensbase-arkitektur (RAG)
Personaleagent bruger Retrieval Augmented Generation (RAG) med hybrid søgning. Vidensbasen er indekseret med Azure AI ContentUnderstandingSkill, der foretager semantisk chunking af dokumenter (maksimalt 500 tokens pr. chunk) og genererer embeddings med text-embedding-3-large (3.072 dimensioner). Modellen instrueres i at besvare udelukkende fra den hentede kontekst — ikke fra generel træningsviden.
Vidensbasen indeholder over 6.200 indekserede sektioner fra offentligt tilgængelige juridiske dokumenter. Ingen personoplysninger er lagret i vidensbasen.
Outputkontroller
Hvert svar inkluderer en obligatorisk disclaimer om at vejledningen ikke er juridisk rådgivning. System-prompten instruerer modellen i aldrig at bruge generel træningsviden og eksplicit at angive når information ikke kan findes i vidensbasen.
7. Lovgivningsmæssig compliance
GDPR (EU 2016/679)
Personaleagent handler som databehandler i forhold til de personoplysninger der behandles under brug af tjenesten. Personaleagent ApS er dataansvarlig for operationelle data (kontaktoplysninger fra bestillinger). Databehandleraftalen er tilgængelig på personaleagent.dk/databehandleraftale/.
NIS2-direktivet
Personaleagent er bygget på Microsofts Azure-infrastruktur der overholder NIS2-kravene til cloud-udbydere. Personaleagent ApS implementerer passende tekniske og organisatoriske foranstaltninger som krævet af NIS2.
AI Act (EU 2024/1689)
Personaleagent er klassificeret som et begrænset-risiko AI-system. Brugere informeres om at de interagerer med et AI-system ved login og i hvert svar via en obligatorisk disclaimer. Transparensforpligtelserne i AI Act artikel 50 er opfyldt.
Dansk databeskyttelseslov
Personaleagent overholder databeskyttelseslovens krav som supplement til GDPR, herunder særlige regler om behandling af oplysninger i ansættelsesforhold.
8. Underdatabehandlere og tredjeparter
| Underdatabehandler | Formål | Lokation |
|---|---|---|
| Microsoft Azure | Cloud-infrastruktur, AI-model, autentificering, lager, søgning | Sweden Central (EU) |
Microsoft Azure er den eneste underdatabehandler. Microsoft behandler data i henhold til Microsofts standard Data Processing Addendum, der er inkorporeret pr. reference i tjenestevilkårene.
Personaleagent overfører ingen data ud af EU. Al infrastruktur kører i Sweden Central.
9. Hændelseshåndtering
Da Personaleagent ikke gemmer samtaledata er konsekvenserne af en potentiel sikkerhedshændelse væsentligt begrænsede. De primære data der er i risiko vil være autentificeringsdata håndteret af Microsoft Entra ID og kontaktformularindsendelser.
Rapporteringsprocedure
Sikkerhedshændelser rapporteres til contact@personaleagent.dk. Personaleagent ApS forpligter sig til at underrette berørte dataansvarlige inden for 72 timer efter konstatering af en hændelse der kan udgøre et brud på persondatasikkerheden, som krævet af GDPR artikel 33.
Hændelseskategorier
- Autentificering: Håndteres af Microsoft Entra ID — rapporteres via Microsoft Security Response Center
- Infrastruktur: Azure-hændelser — håndteres via Azure Service Health og Microsofts hændelsesrespons
- Applikation: Rapporteres til contact@personaleagent.dk inden for 24 timer
10. Delt ansvar
| Område | Personaleagent | Kunden |
|---|---|---|
| Infrastruktursikkerhed | Ansvarlig | — |
| AI-model sikkerhed | Ansvarlig | — |
| Vidensbase-indhold | Ansvarlig | — |
| Brugeradministration | Delt | Ansvarlig for brugeroprettelse |
| Brug af systemet | — | Ansvarlig for korrekt brug |
| Anonymisering af data | — | Ansvarlig for at anonymisere personoplysninger |
| Juridisk rådgivning | Vejledning (ikke rådgivning) | Ansvarlig for at søge juridisk rådgivning |
| Cloud-infrastruktur | Microsoft Azure (underdatabehandler) | — |