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.
Dokumentet er tiltænkt udviklere og IT-arkitekter med interesse i GM-CMS og dens opbygning.
| CMS | Content Management System |
| GM | Graviditetsmappen |
| BFF | Backend for frontend |
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.
GM-CMS benytter sig af tredjepartsbiblioteker, som understøtter funktionaliteten i systemet.
GM-CMS anvender følgende biblioteker:
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.

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.
| 3/4 2025 | Martin Henriksen/SDS | Etablering af dokumentation |
| 9/4 2025 | Dikte Straadt/Trifork | Initiel udfyldning af dokumentation |
| 18/9 2025 | Anders Ringsmose/Trifork | Afsnit om sikkerhed tilføjet |