Indholdsfortegnelse

Introduktion

Formål

Formålet med dette dokument er at beskrive systemarkitekturen for GM-CMS, som er designet til at understøtte og servicere appen "Min Graviditet" gennem CMS BFF’en.

Læsevejledning

Dokumentet er tiltænkt udviklere og IT-arkitekter med interesse i GM-CMS og dens opbygning.

Definitioner og referencer

CMS

Content Management System

GMGraviditetsmappen
BFF

Backend for frontend

Overblik over GM-CMS

GM-CMS er en CMS-løsning, som servicerer MinGraviditet-appen med indhold gennem CMS BFF’en.

GM-CMS gør det muligt for sundhedsfaglige at administrere og distribuere relevant indhold som artikler, billeder og videoer uden behov for udviklerinvolvering.

Løsningens afhængigheder

GM-CMS benytter sig af tredjepartsbiblioteker, som understøtter funktionaliteten i systemet.

GM-CMS anvender følgende biblioteker:

Løsningens arkitektur

Nedenstående diagram viser opbygningen af GM-CMS, hvor forskellige komponenter og deres interaktioner er illustreret. Diagrammet indeholder elementer som Strapi backend, Meilisearch-service samt relation til CMS BFF og “Min Graviditet”-appen, som trækker på de API'er, der stilles til rådighed af GM-CMS gennem BFF.

Sikkerhed

Strapi Admin Portalen er sikret bag 2-faktor login, via en keycloak oauth proxy. Alle Strapi brugere skal derfor oprettes både i Keycloak og i Strapi.

Adgangen til Strapi Admin Portalen og til Keycloak brugeradministration er yderligere sikret ved IP-whitlisting.

Strapi's indre API'er, som anvendes af CMS BFF, er yderligere sikret via en JWT systemnøgle. Det konfigureres i Strapi, hvilken nøgle den accepterer, og denne nøgle sendes med i rest kald som bearer token fra BFF'en.

Dokument Historik

3/4 2025Martin Henriksen/SDSEtablering af dokumentation
9/4 2025

Dikte Straadt/Trifork

Initiel udfyldning af dokumentation

18/9 2025

Anders Ringsmose/Trifork

Afsnit om sikkerhed tilføjet