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:
| ID | Rolle | Modalverb | Detailanforderung |
|---|---|---|---|
| WP_EC_6_1 | Softwarelieferant | MUSS | eine 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_2 | Softwarelieferant | MUSS | einen 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_3 | Softwarelieferant | MUSS | einen standardkonformen Übergabepunkt zum Softwarebetreiber verwenden. (SYS.1.6.A4 B) Umsetzungshinweise: Bereitstellung in einer Registry nach OCI-Registry-Format. |
| WP_EC_6_4 | Softwarelieferant | MUSS | die 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_5 | Softwarelieferant | SOLL | Deployment Manifeste zur Installation bereitstellen (SYS.1.6.A9 S). |
| WP_EC_6_6 | Softwarelieferant | SOLL | sicherstellen, 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_7 | Softwarelieferant | SOLL | fü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_8 | Softwarelieferant | SOLL | Build-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_9 | Softwarelieferant | SOLL | neben 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_10 | Softwarelieferant | SOLL | die 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_11 | Softwarelieferant | KANN | die 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_12 | Softwarebetreiber | MUSS | die 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_13 | Softwarebetreiber | MUSS | prü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_14 | Softwarebetreiber | MUSS | den sicheren Transport der Deployment-Artefakte, insb. Images, unter Berücksichtigung des Bausteins CON.9 Informationsaustausch sicherstellen. (SYS.1.6.A12 S) |
| WP_EC_6_15 | Softwarebetreiber | MUSS | die Freigabebedingungen in einem Freigabeprozess gemäß des Bausteines OPS.1.1.6 Software-Test und -Freigaben definieren. (SYS.1.6.A13 S) |
| WP_EC_6_16 | Softwarebetreiber | MUSS | einen definierten Freigabeprozess für die Produktivsetzung der Anwendung / neuer Versionen etablieren. (SYS.1.6.A13 S) |
| WP_EC_6_17 | Softwarebetreiber | SOLL | bei 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_18 | Softwarebetreiber | SOLL | die 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_19 | Softwarebetreiber | SOLL | allen 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
| ID | Rolle | Modalverb | Detailanforderung |
|---|---|---|---|
| DS_41_A001 | Softwarelieferant | MUSS | - 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_A002 | Softwarebetreiber | SOLL | fü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_A003 | Softwarelieferant | MUSS | bei 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_A004 | Softwarebetreiber | MUSS | hierbei 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
| ID | Rolle | Modalverb | Detailanforderung |
|---|---|---|---|
| DS_41_A005 | Softwarebetreiber | MUSS | die gelieferten Artefakte auf ihre Gültigkeit, Konformität und Vollständigkeit prüfen. |
| DS_41_A006 | Softwarebetreiber | SOLL | - bezüglich DS_41_A005 auch sicherheitsrelevante Dokumente prüfen. - Die Prüfung SOLLTE wenn möglich automatisiert sein. |
| DS_41_A007 | Softwarelieferant | MUSS | aussagefähig sein, wie die Software kontinuierlich im Entwicklungsprozess und bezogen auf übergebene Artefakte einer Quellcode-Kontrolle unterworfen ist |
| DS_41_A008 | Softwarebetreiber | MUSS | sicherstellen, 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
| ID | Rolle | Modalverb | Detailanforderung |
|---|---|---|---|
| DS_41_A009 | Softwarebetreiber | MUSS | nach Prüfung der Artefakte die erhaltene Lieferung freigeben. Erst nach der Freigabe darf die gelieferte Software genutzt werden. |
| DS_41_A010 | Softwarebetreiber | SOLL | nach Freigabe (inklusive notwendiger Tests) einen Transfer der Artefakte in eine dedizierte Ablage durchgeführen. |
| DS_41_A011 | Softwarebetreiber | MUSS | nach Freigabe ein Ausbringen der neu übergebenen Softwareversion einplanen. |
| DS_41_A012 | Softwarebetreiber | SOLL | nach Freigabe ältere Softwareversionen aus dem Freigabekatalog entfernen. |
Referenzdokumente
| Kapitel | Seite | Dokument | Link | |
|---|---|---|---|---|
| 6 | * | Whitepaper für die Erstellung von Containern | nur PDF | Whitepaper PDF |