Auf dieser Seite wird beschrieben, wie Sie eine Software-Bestellliste (SBOM) in Cloud Storage hochladen, um die Komponenten der Container-Images zu verfolgen und zu attestieren, die Sie in Artifact Registry speichern.
Informationen zu den Preisen für Cloud Storage finden Sie unter Preise.
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 Artifact Registry, Container Analysis APIs.
- Install the Google Cloud CLI.
-
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 Artifact Registry, Container Analysis APIs.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- Sie haben ein Docker-Repository in Artifact Registry mit dem Container-Image, das in Ihrer SBOM beschrieben wird. Wenn Sie mit Artifact Registry nicht vertraut sind, lesen Sie die Docker-Kurzanleitung.
- Sie müssen eine SBOM-Datei in einem der unterstützten Formate zum Hochladen bereit haben.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für das Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Erstellen und Verwalten von Cloud Storage-Buckets und SBOM-Dateien benötigen:
-
Wenn Sie den standardmäßigen Cloud Storage-Bucket verwenden, können Sie Speicher-Buckets so verwalten:
Storage Admin(
roles/storage.admin
) -
Wenn Sie einen Cloud Storage-Bucket angeben, können Sie Storage-Buckets so verwalten:
Storage Object Admin(
roles/storage.objectAdmin
) -
Wenn bereits ein Hinweis für die SBOM-Referenz vorhanden ist:
Hinzufüger von Container Analysis-Hinweisen (
roles/containeranalysis.notes.attacher
) -
So erstellen Sie eine neue Notiz für SBOM-Referenzvorkommen im aktuellen Projekt:
Bearbeiter von Container Analysis-Hinweisen(
(roles/containeranalysis.notes.editor
) -
So erstellen Sie ein SBOM-Referenzvorkommen:
Bearbeiter von Container Analysis-Vorkommen(
roles/containeranalysis.occurrences.editor
)
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.
Unterstützte Formate
Ihre SBOM-Datei muss eine JSON-Datei in einem der folgenden Formate sein:
- Software Package Data Exchange (SPDX) Version 2.2 oder 2.3
- CycloneDX Version 1.4 oder 1.5
SBOM hochladen
Verwenden Sie den folgenden Befehl, um Ihre SBOM hochzuladen:
gcloud artifacts sbom load /
--source SOURCE /
--uri URI
Wobei:
- SOURCE: der Pfad zur hochzuladenden SBOM-Datei.
- URI: der URI für das Docker-Image, das in der SBOM-Datei beschrieben wird. Bilder können entweder im Tag- oder im Digest-Format vorliegen. Bilder im Tag-Format werden in das Digest-Format umgewandelt.
Optionale Flags
--destination
: Hiermit wird ein Cloud Storage-Bucket anstelle des Standard-Buckets angegeben.--kms-key-version
: Gibt eine Schlüsselversion an, mit der die SBOM-Referenzereignisnutzlast signiert wird. Mit diesem Schlüssel können Sie den Ursprung der SBOM überprüfen.
Mit dem folgenden Befehl wird beispielsweise eine JSON-Datei my-sbom.bom.json
hochgeladen, die aus dem getaggten Bild us-east1-docker.pkg.dev/my-image-repo/my-image
generiert wurde, und die SBOM-Referenz wird mit der KMS-Schlüsselversion signiert, die auf my-key/cryptoKeyVersions/1
endet.
gcloud artifacts sbom load /
--source=my-sbom.bom.json
--uri=us-east1-docker.pkg.dev/my-image-repo/my-image
--kms-key-version=projects/my-project/locations/us/keyRings/my-key-ring/cryptoKeys/my-key/cryptoKeyVersions/1
Mit dem folgenden Befehl wird eine JSON-Datei my-sbom.spdx.json
hochgeladen, die mit dem Bild-Digest my-local-image@sha256:abcxyz
verknüpft ist, und im Cloud Storage-Bucket gs://my-sbom-bucket
gespeichert.
gcloud artifacts sbom load /
--source=my-sbom.spdx.json /
--uri=my-local-image@sha256:abcxyz /
--destination=gs://my-sbom-bucket
Die Artefaktanalyse lädt Ihre SBOM in Cloud Storage hoch und erstellt ein Referenzelement für die SBOM.
Sie können SBOMs mit der Google Cloud Console oder der gcloud CLI aufrufen. Wenn Sie den Cloud Storage-Bucket mit Ihren SBOMs finden möchten, müssen Sie mit der gcloud CLI nach SBOMs suchen.