This document is under active development and has not been finalised.
Skip to content

7.2 Security Architecture

Security-by-Design Process

The Security Architecture documents how cybersecurity is integrated into the design, development, and maintenance process.

LEGAL BASIS

Art. 10(1) CRA: "The manufacturer shall ensure that the product is designed, developed and produced in such a way as to ensure an appropriate level of cybersecurity."

Annex I, Part I: Essential cybersecurity requirements for products.

Secure Development Lifecycle (SDLC)

Planning → Design → Development → Testing → Release → Maintenance
   │         │          │           │         │         │
   │         │          │           │         │         └── CVE-Monitor
   │         │          │           │         │             Patch Mgmt
   │         │          │           │         │             ENISA-Meldung
   │         │          │           │         │
   │         │          │           │         └── SBOM generieren
   │         │          │           │             Cosign signieren
   │         │          │           │             Release-Notes
   │         │          │           │
   │         │          │           └── Security Scan (Trivy/Grype)
   │         │          │               License Compliance
   │         │          │               Secret Scanning
   │         │          │
   │         │          └── Code Review (4-Augen)
   │         │              Dependency Prüfung
   │         │              Branch Protection
   │         │
   │         └── Threat Modeling
   │             Sicherheitsanforderungen
   │             Architektur-Review

   └── Risikobewertung
       Produktklassifizierung
       Compliance-Anforderungen

Annex I, Part I — Essential Requirements

The following requirements from Annex I, Part I, CRA are addressed in the Security Architecture:

(1) Security by Default

RequirementImplementation
Secure default configurationRestrictive settings by default, no unnecessary network access
Minimal attack surfaceAlpine/Distroless base images, only required ports/services
Principle of least privilegeContainers run as non-root, minimal permissions

(2) Protection Against Unauthorised Access

RequirementImplementation
AuthenticationProduct-specific (OAuth2, API Keys, mTLS)
AuthorisationRole-based access control (RBAC)
Brute-force protectionRate Limiting, Account Lockout

(3) Protection of Confidentiality

RequirementImplementation
Transport encryptionTLS 1.3 (minimum TLS 1.2)
Data encryptionAES-256 for stored sensitive data
Secret ManagementGitHub Secrets, no plaintext secrets in code

(4) Protection of Integrity

RequirementImplementation
Artefact signingCosign for containers, binaries, SBOMs
Update integritySigned updates, SHA256 verification
Code integrityBranch Protection, Code Reviews, Signed Commits

(5) Protection of Availability

RequirementImplementation
ResilienceProduct-specific (redundancy, failover)
DoS protectionRate Limiting, Resource Limits
Graceful DegradationDefined behaviour in case of partial failures

(6) Minimisation of Adverse Impact

RequirementImplementation
LoggingSecurity-relevant events are logged
MonitoringAnomaly detection (product-specific)
IsolationContainer isolation, Network Policies

CI/CD Security Measures

MeasureImplementationWorkflow
Branch ProtectionMain branch protected, PRs requiredGitHub Settings
Code ReviewAt least 1 reviewerGitHub Settings
Security ScanningTrivy, Grype, Snyk on every buildmodules-security-scan.yml
Secret ScanningGitleaks, GitGuardianmodules-security-scan.yml
License ComplianceAutomated checkmodules-license-compliance.yml
Dockerfile LintingHadolintmodules-validate-dockerfile.yml
SBOM GenerationAutomatic on releasemodules-license-compliance.yml
Artifact SigningCosign on releasedocker-build.yml
Dependency UpdatesDependabotdocker-maintenance-dependabot.yml

Evidence of Security Architecture

The Security Architecture is evidenced by:

  1. Automated scans — Results in CI/CD pipeline (archived build artefacts)
  2. Code Reviews — Documented in Pull Requests (Git history)
  3. SBOM — Machine-readable component inventory
  4. Signed Releases — Cosign signatures verifiable
  5. This documentation — Version-controlled in the Git repository

Documentation licensed under CC BY-NC 4.0 · Code licensed under MIT