In diesem Dokument wird beschrieben, wie Sie auf Ihre Software-Stücklisten (Software Bill of Materials, SBOM) und zugehörigen Abhängigkeitsmetadaten zugreifen können, um die Komponenten Ihrer in Artifact Registry gespeicherten Container-Images zu verstehen.
Hinweis
-
Melden Sie sich in Ihrem Google-Konto an.
Wenn Sie noch kein Konto haben, melden Sie sich hier für ein neues Konto an.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Container Analysis, Artifact Registry APIs, if any are not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Container Analysis, Artifact Registry APIs, if any are not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init - SBOMs in Cloud Storage gespeichert haben. Weitere Informationen zum Generieren von SBOMs
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für das Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Aufrufen von SBOM-Daten und zum Filtern von Ergebnissen benötigen:
- Betrachter von Container Analysis-Vorkommen (
roles/containeranalysis.occurrences.viewer) - Service Usage Consumer (
roles/serviceusage.serviceUsageConsumer) - Artifact Registry-Leser (
roles/artifactregistry.reader) -
Zum Prüfen von SBOMS: Storage Object Viewer (
roles/storage.objectViewer) – ein bestimmter Cloud Storage-Bucket
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
SBOMs in der Google Cloud Console ansehen
So rufen Sie SBOMs und zugehörige Abhängigkeitsmetadaten für Container-Images auf, die in Artifact Registry gespeichert sind:
Öffnen Sie die Seite Repositories in Artifact Registry.
Auf der Seite wird eine Liste Ihrer Repositories angezeigt.
Klicken Sie in der Repository-Liste auf einen Repository-Namen.
Die Seite Repository-Details wird geöffnet und zeigt eine Liste Ihrer Images an.
Klicken Sie in der Liste der Bilder auf einen Bildnamen.
Auf der Seite wird eine Liste Ihrer Bild-Digests angezeigt.
Klicken Sie in der Liste der Bild-Digests auf einen Digest-Namen.
Auf der Seite wird eine Reihe von Tabs angezeigt. Der Tab Übersicht ist geöffnet und enthält Details wie Format, Speicherort, Repository, virtuelle Größe und Tags.
Klicken Sie in der Tab-Zeile auf den Tab Dependencies (Abhängigkeiten).
Der Tab „Abhängigkeiten“ wird geöffnet und die folgenden Informationen werden angezeigt:
- SBOM-Abschnitt
- Abschnitt „Lizenzen“
- Eine filterbare Liste von Abhängigkeiten
SBOM
Im Abschnitt SBOM-Zusammenfassung werden die folgenden Informationen angezeigt:
- Datei: Ein klickbarer SBOM-Dateiname, der den Speicherort öffnet, an dem Ihre SBOM in Cloud Storage gespeichert ist.
- Typ: Der verwendete SBOM-Standardtyp, z. B. Software Package Data Exchange (SPDX) oder Cyclone.
- Version: Die Version des verwendeten SBOM-Standards.
- Erstellt von: Der Ursprung der SBOM-Daten, entweder von der Artefaktanalyse generiert oder manuell hochgeladen.
Lizenzen
Im Abschnitt Lizenzen wird ein Balkendiagramm mit dem Namen Häufigste Lizenzen angezeigt. Dies stellt die Lizenztypen dar, die am häufigsten in Ihren Abhängigkeitsinformationen vorkommen. Wenn Sie den Mauszeiger auf einen Balken im Diagramm bewegen, wird in der Konsole die genaue Anzahl der Instanzen dieses Lizenztyps angezeigt.
Abhängigkeiten
Die Liste der Abhängigkeiten enthält den Inhalt Ihres Bild-Digests, einschließlich:
- Paketname
- Paketversion
- Pakettyp
- Lizenztyp
Sie können die Liste der Abhängigkeiten nach einer dieser Kategorien filtern.
SBOMs in Cloud Build ansehen
Wenn Sie Cloud Build verwenden, können Sie die Metadaten von Images in der Seitenleiste Sicherheitsinformationen in der Google Cloud Console aufrufen.
Die Seitenleiste Sicherheitsinformationen bietet einen allgemeinen Überblick über die Buildsicherheitsinformationen für Artefakte, die in Artifact Registry gespeichert sind. Weitere Informationen zur Seitenleiste und dazu, wie Sie Cloud Build zum Schutz Ihrer Softwarelieferkette verwenden können, finden Sie unter Sicherheitserkenntnisse für Builds ansehen.
SBOMs mit der gcloud CLI ansehen
Verwenden Sie den gcloud-Befehl artifacts sbom list, um nach SBOMs zu suchen, die in Cloud Storage gespeichert sind. Diese Suche gilt für alle Ihre SBOMs in Cloud Storage, einschließlich der von der Artefaktanalyse generierten und aller, die Sie aus einer anderen Quelle in einem unterstützten Format hochladen.
Sie können Filter mit dem gcloud-Befehl verwenden, um die Ergebnisse einzugrenzen und sich auf SBOMs zu konzentrieren, die für ein bestimmtes Sicherheitsproblem oder eine bestimmte Compliance-Anfrage am relevantesten sind.
Der folgende Befehl zeigt beispielsweise, wie Sie Informationen zur SBOM für ein Docker-Image my-image abrufen, das in Artifact Registry gespeichert ist:
gcloud artifacts sbom list \
--resource="us-east1-docker.pkg.dev/my-project/my-repo/my-image:1.0"
Wobei:
--resourcegibt den URI der Bildressource an, für die SBOM-Dateireferenzen aufgelistet werden sollen.
Die Ausgabe enthält Folgendes:
- Der Cloud Storage-Speicherort für die SBOM. Mit dem Cloud Storage-Speicherort können Sie die SBOM in der gcloud CLI ansehen, indem Sie den Befehl gcloud storage cat ausführen.
- Ob die SBOM noch im Cloud Storage-Bucket ist oder entfernt wurde.
- Ein Hash der SBOM, mit dem Sie überprüfen können, ob sie geändert wurde.
Filter
Sie können nach bestimmten SBOMs filtern, indem Sie eines der folgenden optionalen Flags verwenden:
| Flag | Zweck | Eingabewert |
|---|---|---|
--dependency |
Listet alle SBOM-Dateireferenzen auf, in denen auf einer Ressource das angegebene Paket installiert ist. Unterstützte Pakettypen | Der Name eines installierten Pakets |
--resource |
SBOM-Dateiverweise auflisten, die sich auf ein bestimmtes Image beziehen. | Der Ressourcen-URI |
--resource-prefix |
Listet SBOM-Dateireferenzen auf, die sich auf das Präfix des Ressourcenpfads beziehen. | Ein Ressourcenpfad, der als Präfix für die Suche verwendet wird |
Filterbeispiele
Ergebnisse nach Ressourcen-URI filtern:
gcloud artifacts sbom list \
--resource="us-east1-docker.pkg.dev/project/repo/my-image@sha256:88b205d7995332e10e836514fbfd59ecaf8976fc15060cd66e85cdcebe7fb356"
Nach Ressourcenpräfix filtern:
gcloud artifacts sbom list \
--resource-prefix="us-east1-docker.pkg.dev/project/repo"
Beschränkungen
- Lizenzinformationen werden nur für Betriebssystempakete und unterstützte Sprachpakete bereitgestellt.
Nächste Schritte
- SBOMs generieren
- VEX-Anweisungen verwenden, um zusätzliche Sicherheitsinformationen bereitzustellen Informationen zu den von der Artefaktanalyse unterstützten Formaten finden Sie unter SBOMs generieren und speichern.