Auf dieser Seite werden wichtige Konzepte für die Metadatenverwaltung und ihre Bedeutung für eine sichere Softwarebereitstellungskette vorgestellt.
Ein Aspekt einer sicheren Lieferkette ist die Nachverfolgung der Lebensdauer eines Softwareartefakts. Aus Compliance-Gründen müssen diese Tracking-Informationen möglicherweise auch lange nach der Einstellung des Artefakts verfügbar sein. Dies kann erreicht werden, indem Metadaten generiert und gespeichert werden, die wichtige Ereignisse zu einem Artefakt oder einer Software-Ressource beschreiben: einem Container-Image, einer virtuellen Maschine oder einem Softwarepaket.
Mit der Artefaktanalyse können Sie Metadateninformationen speichern, die einer Ressource zugeordnet sind. Diese Metadaten können später abgerufen werden, um Ihre Software-Lieferkette zu prüfen.
So werden Metadaten in der Artefaktanalyse gespeichert
Artefaktanalyse basiert auf Grafeas, einer Open-Source-API für Komponentenmetadaten, die als zentrale Quelle der Wahrheit für die Nachverfolgung und Durchsetzung von Richtlinien dienen kann. Build-, Audit- und Compliance-Tools können Grafeas verwenden, um umfassende Metadaten zu Softwarekomponenten zu speichern, abzufragen und abzurufen.
Da Grafeas Open Source ist, sind Sie nicht an einen bestimmten Anbieter gebunden. Grafeas ordnet Metadaten mithilfe einer eindeutigen Software-ID zu. Dadurch wird die Artefaktspeicherung entkoppelt, sodass Sie Metadaten zu Komponenten aus vielen verschiedenen Repositorys speichern können. Dieselben Prinzipien gelten für die Artefaktanalyse. Sie können sie als zentralen universellen Metadatenspeicher für Softwarekomponenten in Artifact Registry oder an einem anderen Ort verwenden.
Das Grafeas-Modell umfasst zwei Entitäten:
- Ein Anbieter, der in Notizen gespeicherte Metadaten erstellt.
- Ein Kunde, der feststellt, ob die in einem Hinweis gespeicherten Metadaten auf seine Artefakte zutreffen. In diesem Fall werden die Metadaten als Vorkommen eines Hinweises dargestellt.
Hinweis
Ein Hinweis beschreibt ein übergeordnetes Metadatenelement. Sie können beispielsweise einen Hinweis zu einer bestimmten Sicherheitslücke für ein Linux-Paket erstellen. Sie können auch einen Hinweis verwenden, um Informationen über den Builder eines Build-Prozesses zu speichern. Hinweise gehören in der Regel den Anbietern, die die Analyse durchführen. Kunden, die die Metadaten verwenden möchten, können dann das Vorkommen von Hinweisen in ihren Projekten identifizieren.
Wir empfehlen, Hinweise und Vorkommen in separaten Projekten zu speichern, um eine detailliertere Zugriffssteuerung zu ermöglichen.
Hinweise dürfen nur vom Inhaber des Hinweises bearbeitet werden und nur für Kunden lesbar sein, die Zugriff auf Ereignisse haben, auf die sie verweisen.
Vorkommen
Ein Vorkommen stellt dar, wann ein Hinweis in einem Softwareartefakt gefunden wurde. Man kann es sich als Instanziierung eines Hinweises vorstellen. Ein Hinweis auf eine Sicherheitslücke benennt beispielsweise das Paket, in dem diese gefunden wurde, sowie bestimmte Schritte zur Fehlerbehebung. Alternativ benennt das Vorkommen eines Hinweises zu Build-Details die Container-Images, die aus einem Build resultieren.
In der Regel werden Vorkommen in anderen Projekten als denen gespeichert, in denen Hinweise erstellt werden. Schreibzugriff auf Vorkommen sollte nur Nutzern gewährt werden, die die nötigen Zugangsrechte haben, um einen Hinweis mit einem Vorkommen verknüpfen zu können. Jeder Nutzer kann Lesezugriff auf Vorkommen haben.
Unterstützte Metadatentypen
In der folgenden Tabelle sind die Metadatentypen aufgeführt, die von Artefaktanalyse unterstützt werden. Metadatendrittanbieter können die folgenden Metadatentypen für die Images ihrer Kunden speichern und abrufen.
| Metadatentyp | Verwendung in Google Cloud Diensten |
|---|---|
| Vulnerability bietet Informationen zu Sicherheitslücken für geprüfte Dateien. | Bei der Artefaktanalyse werden Sicherheitslückenvorkommen auf Grundlage externer Datenbanken mit öffentlich bekannt gegebenen Sicherheitsproblemen generiert. |
| Build bietet Informationen zur Build-Herkunft. | Cloud Build generiert diese Metadaten und Artefaktanalyse speichert die Informationen, wenn Sie das Image mit Cloud Build erstellen. |
| Package enthält Informationen zu den in Ihrem Image installierten Paketen. | |
| Discovery enthält Informationen zum ersten Scan von Images. | Die Artefaktanalyse stellt diese Informationen nur für Scans auf Sicherheitslücken bereit. |
| Attestation enthält Zertifizierungsinformationen für Bilder. | Ja. Die Binärautorisierung liest diese Informationen und kann sie verwenden, um Bereitstellungen zu steuern. |
| Bei der Sicherheitslückenbewertung wird eine hochgeladene VEX-Erklärung im Grafeas-Format VulnerabilityAssessment note gespeichert. | |
| Die SBOM-Referenz enthält zusätzliche Metadaten, mit denen Sie SBOMs finden und überprüfen können. |
Nächste Schritte
- Metadaten für Ihre Bilder bereitstellen.
- Sie können die Kontrolle über Ihre Metadaten durch Konfigurieren der Zugriffssteuerung detailliert steuern.