
# AI‑driven automatiserad ISO 27001‑kontrollkartläggning för säkerhetsfrågeformulär

Säkerhetsfrågeformulär är en flaskhals i leverantörsriskbedömningar. Revisorer begär ofta bevis på att en SaaS‑leverantör följer [ISO 27001](https://www.iso.org/isoiec-27001-information-security.html), men det manuella arbetet som krävs för att hitta rätt kontroll, extrahera den stödjande policyn och formulera ett kortfattat svar kan sträcka sig över dagar. En ny generation av AI‑drivna plattformar förändrar detta paradigm från **reaktiva, mänskligt tunga** processer till **prediktiva, automatiserade** arbetsflöden.

I den här artikeln presenterar vi en **först‑i‑klassen‑motor** som:

1. **Inhämtar hela ISO 27001‑kontrollet** och kartlägger varje kontroll till organisationens interna policy‑arkiv.  
2. **Skapar en kunskapsgraf** som länkar kontroller, policys, evidens‑artefakter och ansvariga intressenter.  
3. **Använder en Retrieval‑Augmented Generation (RAG)‑pipeline** för att producera svar på frågeformulär som är *efterlevande, kontextuella och aktuella*.  
4. **Detekterar policy‑drift i realtid**, vilket triggar automatisk återgenerering när en kontrolls källa‑policy förändras.  
5. **Levererar ett low‑code‑gränssnitt** för revisorer att finjustera eller godkänna genererade svar innan de skickas.  

Nedan får du lära dig om de arkitektoniska komponenterna, datavärdet, de underliggande AI‑teknikerna och de mätbara fördelarna som observerats i tidiga pilotprojekt.

---

## 1. Varför ISO 27001‑kontrollkartläggning är viktigt

[ISO 27001](https://www.iso.org/isoiec-27001-information-security.html) erbjuder ett universellt accepterat ramverk för informationssäkerhetshantering. Dess **Annex A** listar 114 kontroller, varav varje har underkontroller och implementeringsvägledning. När ett tredje‑parts säkerhetsfrågeformulär exempelvis frågar:

> “Beskriv hur ni hanterar livscykeln för kryptografiska nycklar (Control A.10.1).”

måste säkerhetsteamet hitta relevant policy, extrahera den specifika processbeskrivningen och anpassa den till formulärets formulering. Att upprepa detta för dussintals kontroller i flera frågeformulär ger upphov till:

* **Redundant arbete** – identiska svar skrivs om för varje förfrågan.  
* **Inkonsekvent språk** – subtila formuleringar kan tolkas som luckor.  
* **Föråldrad evidens** – policys utvecklas, men frågeformulärutkast förblir ofta oförändrade.  

Att automatisera kartläggningen av ISO 27001‑kontroller till återanvändbara svarsfragment eliminerar dessa problem i skala.

---

## 2. Grundläggande arkitekturplan

Motorn är byggd kring tre pelare:

| Pelare | Syfte | Nyckelteknologier |
|--------|-------|-------------------|
| **Kontroll‑policy kunskapsgraf** | Normaliserar ISO 27001‑kontroller, interna policys, artefakter och ägare till en frågebar graf. | Neo4j, RDF, Graph Neural Networks (GNN) |
| **RAG‑svarsgenerering** | Hämtar det mest relevanta policy‑utdraget, kompletterar med kontext och genererar ett polerat svar. | Retrieval (BM25 + Vector Search), LLM (Claude‑3, Gemini‑Pro), Prompt‑mallar |
| **Policy‑drift‑detektion & auto‑refresh** | Övervakar källpolicyer för ändringar, återtriggar generering och meddelar intressenter. | Change Data Capture (CDC), Diff‑Auditing, Event‑Driven Pub/Sub (Kafka) |

Nedan är ett Mermaid‑diagram som visualiserar datavärdet från inhämtning till svarleverans.

```mermaid
graph LR
    A[ISO 27001 Control Catalog] -->|Import| KG[Control‑Policy Knowledge Graph]
    B[Internal Policy Store] -->|Sync| KG
    C[Evidence Repository] -->|Link| KG
    KG -->|Query| RAG[Retrieval‑Augmented Generation Engine]
    RAG -->|Generate| Answer[Questionnaire Answer Draft]
    D[Policy Change Feed] -->|Event| Drift[Policy Drift Detector]
    Drift -->|Trigger| RAG
    Answer -->|Review UI| UI[Security Analyst Dashboard]
    UI -->|Approve/Reject| Answer
```

*Alla nodetiketter är omslutna av dubbla citationstecken enligt Mermaid‑syntaxen.*

---

## 3. Bygga kontroll‑policy kunskapsgrafen

### 3.1 Datamodellering

* **Kontroll‑noder** – Varje ISO 27001‑kontroll (t.ex. “A.10.1”) blir en nod med attributen: `title`, `description`, `reference`, `family`.  
* **Policy‑noder** – Interna säkerhetspolicys importeras från Markdown, Confluence eller Git‑baserade lagringar. Attribut inkluderar `version`, `owner`, `last_modified`.  
* **Evidens‑noder** – Länkar till audit‑loggar, konfigurations‑snapshots eller tredjeparts‑certifieringar.  
* **Ägandekanter** – `MANAGES`, `EVIDENCE_FOR`, `DERIVES_FROM`.  

Grafschemat möjliggör SPARQL‑liknande frågor som:

```cypher
MATCH (c:Control {id:"A.10.1"})-[:DERIVES_FROM]->(p:Policy)
RETURN p.title, p.content LIMIT 1
```

### 3.2 Förstärkning med GNN

Ett Graph Neural Network tränas på historiska frågeformulärs‑svarspar för att lära en **semantisk likhetspoäng** mellan kontroller och policy‑fragment. Denna poäng lagras som kantattributet `relevance_score`, vilket avsevärt förbättrar retrieval‑precision jämfört med enbart nyckelords­matchning.

---

## 4. Retrieval‑Augmented Generation‑pipeline

### 4.1 Retrieval‑steg

1. **Nyckelordssökning** – BM25 över policy‑text.  
2. **Vektorsökning** – Embeddings (Sentence‑Transformers) för semantisk matchning.  
3. **Hybrid‑rankning** – Kombinerar BM25 och GNN `relevance_score` med en linjär blandning (α = 0.6 för semantiskt, 0.4 för lexikalt).  

De topp‑k (vanligtvis 3) policy‑utdragen skickas till LLM tillsammans med frågeformulärets prompt.

### 4.2 Prompt‑design

En **dynamisk prompt‑mall** anpassas till kontrollfamiljen:

```
You are a compliance assistant. Using the following policy excerpts, craft a concise answer (max 200 words) for ISO 27001 control "{{control_id}} – {{control_title}}". Maintain the tone of the source policy but tailor it to a third‑party security questionnaire. Cite each excerpt with a markdown footnote.
```

LLM fyller i platshållarna med de hämtade utdragen och producerar ett **citation‑rikt utkast**.

### 4.3 Efterbehandling

* **Faktakontroll‑lager** – Ett lättvikts‑verifierings‑LLM‑pass säkerställer att alla påståenden är förankrade i de hämtade texterna.  
* **Redaktionsfilter** – Upptäcker och maskerar konfidentiell data som inte får delas.  
* **Formateringsmodul** – Konverterar resultatet till frågeformulärets föredragna markup (HTML, PDF eller ren text).

---

## 5. Realtidsdetektering av policy‑drift

Policys är sällan statiska. En **Change Data Capture (CDC)‑koppling** bevakar källlagringen för commits, mergar eller borttagningar. När en förändring berör en nod som är länkad till en ISO‑kontroll, gör drift‑detektorn:

1. Beräknar en **diff‑hash** mellan den gamla och nya policy‑texten.  
2. Höjer ett **drift‑event** på Kafka‑ämnet `policy.drift`.  
3. Triggar RAG‑pipen för att återgenerera berörda svar.  
4. Skickar en **notifikation** till policy‑ägaren och analyst‑dashboarden för granskning.  

Denna slutna slinga säkerställer att varje publicerat frågeformulärsvar förblir i linje med den senaste interna kontrollen.

---

## 6. Användarupplevelse: Analyst‑dashboard

Gränssnittet visar ett **rutnät av väntande frågeformulärspunkter** med färgkodad status:

* **Grönt** – Svar genererat, ingen drift, redo för export.  
* **Gult** – Nyligen policy‑ändring, återgenerering väntar.  
* **Rött** – Mänsklig granskning krävs (t.ex. tvetydig policy eller redaktionsflagga).  

Funktioner inkluderar:

* **En‑klicks‑export** till PDF eller CSV.  
* **In‑line‑redigering** för edge‑case‑anpassningar.  
* **Versionshistorik** som visar exakt policy‑version som användes för varje svar.  

En kort video‑demo (inbäddad i plattformen) visar ett typiskt arbetsflöde: välja en kontroll, granska det automatiskt genererade svaret, godkänna och exportera.

---

## 7. Kvantifierad affärspåverkan

| Mått | Före automation | Efter automation (pilot) |
|------|-----------------|--------------------------|
| Genomsnittlig tid per svar | 45 min per kontroll | 3 min per kontroll |
| Total leveranstid för frågeformulär | 12 dagar | 1,5 dagar |
| Konsistens‑score (intern revision) | 78 % | 96 % |
| Drift‑latens (tid till uppdatering) | 7 dagar (manuell) | < 2 timmar (automatisk) |

Piloten, som kördes hos ett medelstort SaaS‑företag (≈ 250 anställda), minskade säkerhetsteamets veckovisa arbetsbörda med **≈ 30 timmar** och eliminerade 4 stora efterlevnadsincidenter som orsakats av föråldrade svar.

---

## 8. Säkerhet och styrning

* **Dataplats** – All kunskapsgraf‑data stannar inom organisationens privata VPC; LLM‑inferenz sker på egen hårdvara eller en dedikerad privat‑moln‑endpoint.  
* **Åtkomstkontroller** – Roll‑baserade behörigheter begränsar vem som kan redigera policys, trigga återgenerering eller visa genererade svar.  
* **Audit‑spår** – Varje svarsutkast lagrar en kryptografisk hash som länkar till exakt policy‑version, vilket möjliggör oföränderlig verifiering under revisioner.  
* **Förklarbarhet** – Dashboarden visar en **spårbarhets‑vy** som listar de hämtade policy‑utdragen och relevanspoängen som bidrog till slutsvaret, vilket tillfredsställer regulatorer att AI använts på ett ansvarsfullt sätt.

---

## 9. Utvidga motorn bortom ISO 27001

Även om prototypen fokuserar på ISO 27001 är arkitekturen **regulator‑agnostisk**:

* **[SOC 2](https://secureframe.com/hub/soc-2/what-is-soc-2) Trust Services Criteria** – Kartlägg till samma graf med andra kontrollfamiljer.  
* **[HIPAA](https://www.hhs.gov/hipaa/index.html) Security Rule** – Inhämtar de 18 standarderna och länkar till hälso‑specifika policys.  
* **[PCI‑DSS](https://www.pcisecuritystandards.org/pci_security/)** – Kopplar till rutiner för hantering av kortdata.  

Att lägga till ett nytt ramverk kräver endast att ladda dess kontrollkatalog och etablera initiala kanter till befintliga policy‑noder. GNN‑modellen anpassar sig automatiskt när fler träningspar samlas in.

---

## 10. Kom igång: En steg‑för‑steg‑checklista

1. **Samla ISO 27001‑kontroller** (ladda ner den officiella Annex A‑CSV:n).  
2. **Exportera interna policys** till ett strukturerat format (Markdown med front‑matter för versionering).  
3. **Distribuera kunskapsgrafen** (Neo4j Docker‑image, förkonfigurerat schema).  
4. **Installera RAG‑tjänsten** (Python FastAPI‑container med LLM‑endpoint).  
5. **Konfigurera CDC** (Git‑hook eller filsystem‑watcher) för att mata drift‑detektorn.  
6. **Starta analyst‑dashboarden** (React‑frontend, OAuth2‑autentisering).  
7. **Kör ett pilot‑frågeformulär** och iterera på prompt‑mallarna.  

Genom att följa denna färdplan kan de flesta organisationer uppnå en **fullt automatiserad ISO 27001‑kartläggningspipeline inom 4‑6 veckor**.

---

## 11. Framtida vägar

* **Federated Learning** – Dela anonymiserade kontroll‑policy‑embeddingar mellan partnerföretag för att förbättra relevanspoäng utan att avslöja proprietära policys.  
* **Multimodal evidens** – Inkludera diagram, konfigurationsfiler och loggsnuttar med Vision‑LLM‑modeller för att berika svaren.  
* **Generativa efterlevnads‑handböcker** – Utöka från enskilda svar till helhets‑narrativ, komplett med evidenstabeller och riskbedömningar.  

Sammanflätningen av **kunskapsgrafer, RAG och real‑tids‑drift‑övervakning** är på väg att bli den nya standarden för all automatisering av säkerhetsfrågeformulär. Tidiga adoptörer får inte bara snabbhet, utan också förtroendet att varje svar är **spårbart, aktuellt och reviderbart**.

---

## Se även
- [ISO 27001 – Officiell Annex A‑kontroller](https://www.iso.org/standard/54534.html)  
- [NIST SP 800‑53 Mapping till ISO 27001](https://csrc.nist.gov/publications/detail/sp/800-53/rev-5/final)  
- [Retrieval‑Augmented Generation: A Survey of Techniques and Applications](https://arxiv.org/abs/2302.01279)