Ga naar inhoud

SOUP-register (IEC 62304)

Versie 1.0.0 - juni 2026

Dit register documenteert de Software of Unknown Provenance (SOUP) van de Medicatiebeoordeling-module conform IEC 62304 (sectie 5.3.3-5.3.4 en 8.1.2). SOUP zijn softwarecomponenten van derden die niet door Remedice zijn ontwikkeld en als onderdeel van het medisch hulpmiddel worden gebruikt.

1. Versiebeheer en herkomst

  • De volledige, autoritatieve lijst van vastgepinde versies staat in backend/requirements.txt (Python) en frontend/package.json plus de lockfile (JavaScript). Dit register vat de functioneel belangrijke componenten samen; de manifests zijn leidend.
  • Python-afhankelijkheden worden uitsluitend toegevoegd via pip install gevolgd door pip freeze > requirements.txt, zodat de exact installeerbare versie wordt vastgelegd. Versies worden nooit handmatig geschreven.
  • Een wijziging van een SOUP-versie is een codewijziging die de normale verificatie (tests, lint) doorloopt voordat deze wordt vrijgegeven.

2. Anomaly-monitoring

Mechanisme Dekking Status
bandit (SAST) in de lint-pipeline Onveilige patronen in eigen + aanroepende code Actief (backend/scripts/lint.sh)
pip-audit op requirements.txt Bekende CVE's in Python-SOUP Methode vastgesteld; CI-automatisering open punt
npm audit op de frontend-lockfile Bekende CVE's in JavaScript-SOUP Methode vastgesteld; CI-automatisering open punt
GitHub Security Advisories Geadviseerde upgrades per repo Per repo te activeren

Bij een gemelde kwetsbaarheid in een SOUP-component wordt de impact beoordeeld (raakt het de medische functie of de beveiliging?), zo nodig geupgraded via de pip install + pip freeze-workflow, en de wijziging hergevalideerd. Ernstige bevindingen lopen via de CAPA-procedure in het post-market surveillance plan.

3. Backend-SOUP (analyse-engine en platform)

Component Versie Functie Monitoring
Django 5.2.10 Webframework, ORM, schema-isolatie bandit, pip-audit
djangorestframework 3.16.1 REST API-laag bandit, pip-audit
django-tenants 3.9.0 Multi-tenant schema-isolatie pip-audit
celery 5.6.2 Asynchrone taken (run_review, archivering) pip-audit
redis 7.1.0 Broker en cache pip-audit
channels / daphne 4.3.2 / 4.2.1 WebSocket/ASGI pip-audit
psycopg2-binary 2.9.11 PostgreSQL-driver pip-audit
cryptography 46.0.4 Veldversleuteling (Fernet) bandit, pip-audit
PyJWT / djangorestframework-simplejwt 2.10.1 Authenticatie-tokens bandit, pip-audit
pydantic 2.12.5 Validatie van gestructureerde data pip-audit
boto3 1.42.47 AWS-integratie (S3-archief, KMS) pip-audit
anthropic 0.102.0 LLM-client (Atlas, buiten MDR-scope) pip-audit
beautifulsoup4 4.14.3 Parsing van scraper- en AIS-invoer pip-audit
pillow 12.1.1 Beeldverwerking (uploads) pip-audit
drf-spectacular 0.28.0 OpenAPI-schema pip-audit
sentry-sdk 2.58.0 Foutmonitoring pip-audit
stripe 14.4.1 Billing (buiten MDR-scope) pip-audit

De ATC-verrijking en de analyses gebruiken daarnaast de G-Standaard-database (lookup.db), die als databron en niet als SOUP wordt beheerd; versiebeheer daarvan staat in het validatieprotocol sectie 7.4 en wordt per review vastgelegd (zie Backend-documentatie medicatiebeoordeling).

4. Frontend-SOUP (presentatielaag)

Component Versie Functie Monitoring
react 19.1.0 UI-runtime npm audit
react-native 0.81.5 Cross-platform UI npm audit
expo 54.0.33 Build- en runtime-platform npm audit
expo-router 6.0.23 Navigatie/routing npm audit
react-native-reanimated 4.1.1 Animaties npm audit

5. Openstaande punten

  • Automatiseren van pip-audit en npm audit als CI-gate en GitHub Dependabot per repo activeren.
  • Koppeling van het SOUP-register aan de release-notes zodat versiewijzigingen traceerbaar zijn per release.

Dit register wordt bijgewerkt bij iedere wijziging van een functioneel belangrijke SOUP-component.