Zum Hauptinhalt springen

Detailstandard 41: Vorgaben für die Lieferung oder Bereitstellung von containerisierten Softwareprodukten

Zusammenfassung

Dieses Dokument beschreibt im Kapitel „Anforderungen" die zu erfüllenden Anforderungen in diesem Standardisierungsbereich. Im Kapitel Standardisierung werden vorgegebene Architekturen und Realisierungen beschrieben. Diese stellen eine Konkretisierung der beschriebenen Anforderungen dar. Sind im Kapitel Standardisierung keine Vorgaben enthalten, werden keine Einschränkungen zur Erfüllung der Anforderungen definiert.

Anforderung

Das Liefern bzw. Bereitstellen von containerisierter Software sollte eine Reihe an Standardisierungen und Vorgaben erfüllen, um den nachfolgenden Betrieb zu gewährleisten.

Die Anforderungen lassen sich unterteilen in die folgenden Aspekte:

  • Art und Weise der Lieferung/Bereitstellung
  • Prüfung der gelieferten Artefakte auf
    • Vollständigkeit
    • Sicherheitsanforderungen
  • Freigabe

Standardisierung

Aus den Vorgaben ergeben sich folgende Detailanforderungen:

Aus dem Whitepaper für die Erstellung von Containern Kapitel 6 (siehe Referenzdokumente) müssen folgende Anforderungen erfüllt werden:

IDRolleModal­verbDetailanforderung
WP_EC_6_1Software­lieferantMUSSeine vollständige Software Bill of Materials (SBOM) in einem abgestimmten Format abgeben. (SYS.1.6.A13 S)
Umsetzungshinweise:
Dokumentation der genutzten Komponenten, Ermöglichung der Prüfung von Lizenzen.
WP_EC_6_2Software­lieferantMUSSeinen definierten Prozess für den Bezug und die Weitergabe von Images etablieren und nachvollziehbar dokumentieren. (SYS.1.6.A4 B)
Umsetzungshinweise:
Der Softwarebetreiber muss seinen Prozess entsprechend anpassen können. Die Nachvollziehbarkeit ist Grundlage für die Prüfung der gelieferten Software.
WP_EC_6_3Software­lieferantMUSSeinen standardkonformen Übergabepunkt zum Softwarebetreiber verwenden. (SYS.1.6.A4 B)
Umsetzungshinweise:
Bereitstellung in einer Registry nach OCI-Registry-Format.
WP_EC_6_4Software­lieferantMUSSdie unterschiedlichen Schutzbedarfe bei der Bereitstellung der Lösung unterstützen (APP.4.4.A2 B).
Umsetzungshinweise:
Gerade beim Test muss die strikte Trennung (Schutzbedarf und Mandant) umgesetzt werden, da hier Code ausgeführt wird.
WP_EC_6_5Software­lieferantSOLLDeployment Manifeste zur Installation bereitstellen (SYS.1.6.A9 S).
WP_EC_6_6Software­lieferantSOLLsicherstellen, dass zusammenhängende Dienste durch das Deployment bzw. die Orchestrierung als Verwaltungseinheiten bereitgestellt werden können und z.B. geeignete Deployment-Artefakte (Manifeste) liefern. (SYS.1.6.A11 S)
WP_EC_6_7Software­lieferantSOLLfür die durch ihn bereitgestellten Software-Artefakte automatisiert zu verarbeitende Deployment-Anweisungen bereitstellen (z.B. YAML-basierte Deployments). (SYS.1.6.A11 S)
WP_EC_6_8Software­lieferantSOLLBuild-Spezifikationen (bspw. Dockerfile) für Images liefern. (SYS.1.6.A13 S)
Umsetzungshinweise:
Dient der Ermöglichung der statischen Analyse auf Schwachstellen und Schadsoftware.
WP_EC_6_9Software­lieferantSOLLneben einem Freigabeprozess für die erstellte Software (siehe dazu auch Baustein OPS.1.1.6 Software-Test und Freigaben) auch einen Freigabeprozess für Images und Deployment Deskriptoren umsetzen. (SYS.1.6.A13 S)
WP_EC_6_10Software­lieferantSOLLdie Freigabebedingungen in einem definierten Freigabeprozess im Lieferantenkontext prüfen und alle Informationen für den weiteren Freigabeprozess an den Softwarebetreiber übergeben. Zu den übergebenen Informationen gehören auch die Ergebnisse des eigenen Freigabeprozesses. (SYS.1.6.A13 S)
WP_EC_6_11Software­lieferantKANNdie zu liefernden Images bereits vor der finalen Lieferung mit dem Prüfstandard des Softwarebetreibers überprüfen. (SYS.1.6.A13 S)
Umsetzungshinweise:
Das ermöglicht dem Lieferanten, seine eigene Software qualitätszusichern und nicht vom Prüfergebnis des Betreibers “überrascht” zu werden. Das kann z.B. durch eine standardisierte Entwicklungsumgebung realisiert werden, die dem Lieferanten bereitgestellt wird.
WP_EC_6_12Software­betreiberMUSSdie Informationen zum Prozess der Bereitstellung und Verteilung von Images an den Softwarelieferanten übergeben und sich mit diesen abstimmen. (SYS.1.6.A4 B)
WP_EC_6_13Software­betreiberMUSSprüfen, dass die durch den Softwarelieferanten gelieferten Software-Artefakte nur einen Dienst je Container oder Verwaltungseinheit bereitstellen und geeignete Deployment-Anweisungen verfügbar sind. (SYS.1.6.A11 S)
WP_EC_6_14Software­betreiberMUSSden sicheren Transport der Deployment-Artefakte, insb. Images, unter Berücksichtigung des Bausteins CON.9 Informationsaustausch sicherstellen. (SYS.1.6.A12 S)
WP_EC_6_15Software­betreiberMUSSdie Freigabebedingungen in einem Freigabeprozess gemäß des Bausteines OPS.1.1.6 Software-Test und -Freigaben definieren. (SYS.1.6.A13 S)
WP_EC_6_16Software­betreiberMUSSeinen definierten Freigabeprozess für die Produktivsetzung der Anwendung / neuer Versionen etablieren. (SYS.1.6.A13 S)
WP_EC_6_17Software­betreiberSOLLbei der Definition des Prozess zur Bereitstellung und Verteilung von Images folgendes berücksichtigen: (SYS.1.6.A4 B)
– Auflistung erforderlicher Lizenzen
– Bereitstellung von Deployment-Artefakten und Build-Spezifikationen
– Prüfung auf Schwachstellen (statische und dynamische Tests), Schadsoftware, veraltete Komponenten, Build-Dependencies
– Prüfsummen, Signaturen und Herkunft
– Lifecycle und Patchmanagement von Images
– Nutzung von vertrauenswürdigen Registries
WP_EC_6_18Software­betreiberSOLLdie Prüfung der durch den Softwarelieferanten bereitgestellten Artefakte und Deployment-Anweisungen automatisiert vornehmen und in seine CI/CD-Prozesse integrieren. (SYS.1.6.A11 S)
WP_EC_6_19Software­betreiberSOLLallen Anforderungen entsprechenden Freigabebedingungen für die Inbetriebnahme von Images und Konfigurationen definieren und für den Softwarelieferanten bereitstellen. Hierbei sind die Freigabebedingungen des Plattformbetreibers zu berücksichtigen. (SYS.1.6.A13 S)

Art und Weise der Lieferung/Bereitstellung

IDRolleModal­verbDetailanforderung
DS_41_A001Software­lieferantMUSS- mit dem Softwarebetreiber einen Prozess für die Lieferung von Container Images etablieren.
- sich hierbei an der Schnittstelle authentifizieren
- Die Übertragung MUSS verschlüsselt sein.
- hierbei die Möglichkeit haben, die Container sowie die geforderten Dokumente über diese Schnittstelle zu liefern.
DS_41_A002Software­betreiberSOLLfür den in Anforderung DS_41_A001 beschriebenen Prozess
- eine sichere technische Schnittstelle für den Softwarelieferant bereitstellen
- die Schnittstelle so auslegen, dass diese in eine Automatisierung eingebunden werden kann.
DS_41_A003Software­lieferantMUSSbei jeder Bereitstellung zusätzlich zu den Containern folgende Dokumente liefern:
- Software Bill of Material ( SBOM )
- Dokumentation der Container und deren mögliche unterstützte Konfigurationsoptionen
- Dokumentation der im Container enthaltenen Software- Dokumentation eines "Geeigneten Testmanagements" bzw. "QA-Prozesses" für die bereitgestellte Software, um sicherzustellen, dass keine Komponenten ungetestet in die DVC eingeführt werden über die gesamte Lieferkette hinweg. Dies KANN über einen Nachweis entsprechender Zertifikate wie ISO:27001 durch den Softwarelieferanten erfolgen oder wird sonst im Einzelfall zwischen Softwarelieferant und Softwarebetreiber vereinbart.
- Changelog
- Optional: Deployment Manifeste, Dockerfile
DS_41_A004Software­betreiberMUSShierbei Vorgaben bereitstellen in welcher Form er diese zusätzlichen Artefakte erwartet. Bei der Wahl der Formate muss auf einen hohen Grad der Automatisierung geachtet werden.

Prüfung der gelieferten Artefakte

IDRolleModal­verbDetailanforderung
DS_41_A005Software­betreiberMUSSdie gelieferten Artefakte auf ihre Gültigkeit, Konformität und Vollständigkeit prüfen.
DS_41_A006Software­betreiberSOLL- bezüglich DS_41_A005 auch sicherheitsrelevante Dokumente prüfen.
- Die Prüfung SOLLTE wenn möglich automatisiert sein.
DS_41_A007Software­lieferantMUSSaussagefähig sein, wie die Software kontinuierlich im Entwicklungsprozess und bezogen auf übergebene Artefakte einer Quellcode-Kontrolle unterworfen ist
DS_41_A008Software­betreiberMUSSsicherstellen, dass im Rahmen der eigenen Deployment-Prozesse kontinuierliche Checks auf Sicherheit und Integrität des betriebenen Service erfolgen.

Sofern es keinen klassischen "Softwarelieferanten" gibt sondern Softwareelemente aus z.B. veröffentlichten OpenSource Projekten übernommen werden, so gehen diesbezüglich die grundsätzlichen Obligationen des Softwarelieferanten an den Softwarebetreiber über.

Freigabe

IDRolleModal­verbDetailanforderung
DS_41_A009Software­betreiberMUSSnach Prüfung der Artefakte die erhaltene Lieferung freigeben. Erst nach der Freigabe darf die gelieferte Software genutzt werden.
DS_41_A010Software­betreiberSOLLnach Freigabe (inklusive notwendiger Tests) einen Transfer der Artefakte in eine dedizierte Ablage durchgeführen.
DS_41_A011Software­betreiberMUSSnach Freigabe ein Ausbringen der neu übergebenen Softwareversion einplanen.
DS_41_A012Software­betreiberSOLLnach Freigabe ältere Softwareversionen aus dem Freigabekatalog entfernen.

Referenzdokumente

KapitelSeiteDokumentLinkPDF
6*Whitepaper für die Erstellung von Containernnur PDFWhitepaper PDF