In diesem Dokument wird beschrieben, wie Sie auf Ihre Software-Stückliste (Software Bill of Materials, SBOM) und die zugehörigen Abhängigkeitsmetadaten zugreifen können, um die Komponenten Ihrer in Artifact Registry gespeicherten Container-Images zu verstehen.
Hinweise
-
Sign in to your Google Account.
If you don't already have one, sign up for a new account.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Container Analysis, Artifact Registry APIs.
-
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.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Container Analysis, Artifact Registry APIs.
-
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. Anleitung zum Generieren von SBOMs
-
Betrachter von Container Analysis-Vorkommen (
roles/containeranalysis.occurrences.viewer
) -
Service Usage Consumer (
roles/serviceusage.serviceUsageConsumer
) -
Artifact Registry-Leser (
roles/artifactregistry.reader
) -
So prüfen Sie SBOMs:
Storage-Objekt-Betrachter (
roles/storage.objectViewer
) – ein bestimmter Cloud Storage-Bucket Öffnen Sie die Seite Repositories in Artifact Registry.
Auf der Seite wird eine Liste Ihrer Repositories angezeigt.
Klicken Sie in der Liste der Repositories auf einen Repository-Namen.
Die Seite Repository-Details wird geöffnet und zeigt eine Liste Ihrer Bilder 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 Image-Digests auf einen Digest-Namen.
Auf der Seite wird eine Zeile mit 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-Leiste auf den Tab Abhängigkeiten.
Der Tab „Abhängigkeiten“ wird geöffnet und enthält die folgenden Informationen:
- SBOM-Abschnitt
- Bereich „Lizenzen“
- Eine filterbare Liste der Abhängigkeiten
- 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, unabhängig davon, ob sie von der Artefaktanalyse generiert oder manuell hochgeladen wurden.
- Paketname
- Paketversion
- Pakettyp
- Lizenztyp
--resource
gibt den URI der Bildressource an, für die SBOM-Dateireferenzen aufgeführt werden sollen.- 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.
- Lizenzinformationen werden nur für Betriebssystempakete und unterstützte Sprachpakete bereitgestellt.
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:
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 -Konsole ansehen
So rufen Sie SBOMs und zugehörige Abhängigkeitsmetadaten für Container-Images auf, die in Artifact Registry gespeichert sind:
SBOM
Im Bereich SBOM-Zusammenfassung werden die folgenden Informationen angezeigt:
Lizenzen
Im Zusammenfassungsbereich Lizenzen wird ein Balkendiagramm mit dem Titel Häufigste Lizenzen angezeigt. Dies sind die Lizenztypen, die in Ihren Abhängigkeitsinformationen am häufigsten vorkommen. Wenn Sie den Mauszeiger über 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 Image-Digest, einschließlich:
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 -Konsole ansehen.
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 verwenden können, um Ihre Softwarelieferkette zu schützen, finden Sie unter Sicherheitserkenntnisse für Builds ansehen.
SBOMs mit der gcloud CLI ansehen
Verwenden Sie den gcloud-Befehl artifacts sbom list
, um nach in Cloud Storage gespeicherten SBOMs zu suchen. Diese Suche gilt für alle Ihre SBOMs in Cloud Storage, einschließlich der von Artefaktanalyse generierten und derjenigen, 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.
Mit dem folgenden Befehl wird beispielsweise gezeigt, 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:
Die Ausgabe enthält Folgendes:
Filter
Sie können mit einem der folgenden optionalen Flags nach bestimmten SBOMs filtern:
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 |
Listet SBOM-Dateireferenzen auf, 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"