In diesem Dokument erfahren Sie, wie Sie die Container Scanning API aktivieren, ein Image in Artifact Registry hochladen und die Liste der im Image gefundenen Sicherheitslücken aufrufen.
Die Artefaktanalyse liefert Informationen zu Sicherheitslücken für die Container-Images in Artifact Registry. Die Metadaten werden als Notizen gespeichert. Für jede Instanz einer Notiz, die mit einem Bild verknüpft ist, wird ein Vorkommen erstellt. Weitere Informationen finden Sie in der Übersicht und in den Preisdokumenten.
Hinweis
- Melden Sie sich in Ihrem Google Cloud -Konto an. Wenn Sie mit Google Cloudnoch nicht vertraut sind, erstellen Sie einfach ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
-
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 Artifact Registry and Container Scanning 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 Artifact Registry and Container Scanning 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 - Erstellen Sie ein Docker-Repository in Artifact Registry und übertragen Sie ein Container-Image per Push in das Repository. Wenn Sie mit Artifact Registry nicht vertraut sind, lesen Sie die Docker-Kurzanleitung.
Wenn Sie diese API aktivieren, wird auch das Scannen von Sprachpaketen in Artifact Registry aktiviert. Unterstützte Pakettypen
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für das Projekt zuzuweisen, damit Sie die nötigen Berechtigungen zum Aufrufen der Ergebnisse von Paketscans haben:
- Container Scanner-Dienst-Agent (
roles/containerscanning.ServiceAgent) - Container Analysis Occurrences Viewer (
roles/containeranalysis.occurrences.viewer) - Betrachter von Container Analysis-Hinweisen (
roles/containeranalysis.notes.viewer) - Artifact Registry-Leser (
roles/artifactregistry.reader)
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.
Image-Sicherheitslücken ansehen
Artefaktanalyse scannt neue Images, sobald sie in Artifact Registry hochgeladen werden. Bei diesem Scan werden Informationen zu den Systempaketen im Container extrahiert.
Sie können Sicherheitslücken für Ihre Images in der Registry mit der Google Cloud Console, der Google Cloud CLI oder der Container Analysis API aufrufen. Wenn ein Bild Sicherheitslücken aufweist, können Sie die Details abrufen.
Artefaktanalyse scannt Images und Pakete weiterhin, solange sie in den letzten 30 Tagen abgerufen wurden. Nach 30 Tagen werden die Metadaten für gescannte Bilder und Pakete nicht mehr aktualisiert und die Ergebnisse sind veraltet.
Die Artefaktanalyse archiviert Metadaten, die seit mehr als 90 Tagen inaktiv sind. Diese archivierten Metadaten können nur über die API ausgewertet werden. Sie können ein Image mit veralteten oder archivierten Metadaten noch einmal scannen, indem Sie es per Pull abrufen. Das Aktualisieren der Metadaten kann bis zu 24 Stunden dauern. Pakete mit veralteten oder archivierten Metadaten können nicht neu gescannt werden.
Vorkommen in der Google Cloud Console ansehen
So rufen Sie die Sicherheitslücken in einem Image auf:
Rufen Sie die Liste der Repositories ab.
Klicken Sie in der Repository-Liste auf ein Repository.
Klicken Sie in der Liste der Images auf einen Image-Namen.
Die Gesamtzahl der Sicherheitslücken für jeden Image-Digest wird in der Spalte Sicherheitslücken angezeigt.
Wenn Sie die Liste der Sicherheitslücken für ein Image aufrufen möchten, klicken Sie auf den Link in der Spalte Vulnerabilities (Sicherheitslücken).
Im Bereich Scanergebnisse wird eine Zusammenfassung der gescannten Pakettypen, der Gesamtzahl der Sicherheitslücken, der Sicherheitslücken mit verfügbaren Korrekturen, der Sicherheitslücken ohne Korrekturen und des effektiven Schweregrads angezeigt.
In der Tabelle der Sicherheitslücken sind für jede gefundene Sicherheitslücke der Name der Common Vulnerabilities and Exposures (CVE), der effektive Schweregrad, der CVSS-Wert (Common Vulnerability Scoring System), Korrekturen (falls verfügbar), der Name des Pakets, das die Sicherheitslücke enthält, und der Pakettyp aufgeführt.
In derGoogle Cloud Console werden in dieser Tabelle bis zu 1.200 Sicherheitslücken pro Seite angezeigt. Sie können diese Dateien filtern und sortieren, um eine bestimmte Datei, ein bestimmtes Verzeichnis, eine bestimmte Ebene oder einen bestimmten Dateityp nach Dateiendung zu prüfen.
Klicken Sie auf den Namen der CVE, um Details zu einer bestimmten CVE aufzurufen.
Wenn Sie Details zum Auftreten von Sicherheitslücken wie Versionsnummer und betroffene Stelle aufrufen möchten, klicken Sie in der Zeile mit dem Namen der Sicherheitslücke auf Ansehen oder Behobene ansehen. Der Linktext lautet Ansehen für Sicherheitslücken ohne Korrektur und Behobene ansehen für Sicherheitslücken, bei denen eine Korrektur angewendet wurde.
Sicherheitslücken in einer bestimmten Ebene ansehen
Die Artefaktanalyse bietet schichtspezifische Metadaten, mit denen Sie ermitteln können, welches Paket Sicherheitslücken enthält und mit welchem Docker-Build-Befehl diese Schicht eingeführt wurde.So rufen Sie ebenenbasierte Metadaten zu Sicherheitslücken in der Google Cloud Console auf:
Öffnen Sie in Artifact Registry die Liste Ihrer Repositories.
Klicken Sie auf der Seite Repositories auf ein Repository.
Klicken Sie auf der Seite Repository-Details auf ein Image.
Klicken Sie in der Liste der Bildversionen auf einen Bild-Digest.
Klicken Sie auf der Seite mit den Details zum Image-Digest auf den Tab Sicherheitslücken.
Wenn ebenenbasierte Metadaten verfügbar sind, zeigt die Artefaktanalyse in der Leiste Ebene eine auswählbare Liste von Ebenen an:
Klicken Sie auf das Drop-down-Menü für Ebenen, um die Liste der Ebenen aufzurufen.
Eine Drop-down-Liste mit einer nummerierten Liste von Ebenen wird geöffnet. Ebene 0 stellt die unterste Ebene dar, wobei jede folgende Ebene auf der vorherigen aufbaut. Es werden nur Ebenen angezeigt, in denen Sicherheitslücken gefunden wurden.
Für jede Ebene zeigt die Artefaktanalyse den Docker-Befehl, der zum Erstellen der Ebene verwendet wurde, und die Anzahl der in dieser Ebene gefundenen Sicherheitslücken an.
Wenn Sie mehr über die Sicherheitslücken in einer bestimmten Ebene erfahren möchten, wählen Sie eine Ebene aus der Ebenenliste aus.
Die Tabelle mit den Sicherheitslücken wird aktualisiert und enthält nur die Sicherheitslücken, die in der ausgewählten Ebene gefunden wurden. Sie können weitere Filter anwenden oder bestimmte Sicherheitslücken untersuchen.
Klicken Sie neben einer Sicherheitslücke auf ANSEHEN oder KORREKTUR ANSEHEN, um weitere Informationen zur Sicherheitslücke aufzurufen.
In der Seitenleiste Details zur Sicherheitslücke werden Dateispeicherorte angezeigt, an denen Pakete Sicherheitslücken aufweisen.
Bewegen Sie den Mauszeiger in der Tabelle Dateispeicherort(e) auf das Fragezeichen, um zusätzliche Layer-Metadaten zu öffnen.
In einem Dialogfeld werden der Schichtindex, der Schicht-Build-Befehl, der Schicht-Digest und das Basis-Image angezeigt, in dem Sie die Sicherheitslücke beheben können.
Vorkommen mit gcloud ansehen
Führen Sie den Befehl gcloud artifacts docker images list aus, um Vorkommen für Images in Artifact Registry aufzurufen:
gcloud artifacts docker images list --show-occurrences \
LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY/IMAGE_ID
Wobei:
- LOCATION ist der regionale oder multiregionale Speicherort des Repositorys.
- PROJECT_ID ist die Projekt-ID Ihrer Google Cloud Console.
- REPOSITORY ist der Name des Repositorys, in dem das Image gespeichert ist.
- IMAGE_ID ist der Name des Images im Repository. Mit diesem Befehl können Sie kein Image-Tag angeben.
Standardmäßig werden mit dem Befehl die zehn letzten Ergebnisse zurückgegeben. Verwenden Sie das Flag --show-occurrences-from, um eine andere Anzahl von Ergebnissen anzuzeigen.
Mit dem folgenden Befehl werden beispielsweise die 25 neuesten Ergebnisse zurückgegeben:
gcloud artifacts docker images list --show-occurrences-from=25 \
us-central1-docker.pkg.dev/my-project/my-repo/my-image
Die Ausgabe sieht dann ungefähr so aus:
Beispiel für eine Bildausgabe
{
"name": "projects/my-project/locations/us-central1/occurrences/22d3edfb-34f2-4d3f-be08-fd90c549f010",
"resource": {
"uri": "https://us-central1-docker.pkg.dev/my-project/my-repo/golang-nginx@sha256:5b54ef20748417ccdb0b87afedf98c44e699e2f59bd6cv48cbdc1ca2e72c80e3"
},
"noteName": "projects/my-project/locations/us-central1/notes/CVE-2005-2541",
"kind": "VULNERABILITY",
"createTime": "2025-01-21T15:57:01.238832Z",
"updateTime": "2025-01-21T15:57:01.238832Z",
"vulnerability": {
"severity": "CRITICAL",
"cvssScore": 10,
"packageIssue": [
{
"affectedLocation": {
"cpeUri": "cpe:/o:debian:debian_linux:12",
"package": "tar",
"version": {
"name": "1.34+dfsg",
"revision": "1.2+deb12u1",
"kind": "NORMAL"
}
},
"fixedLocation": {
"cpeUri": "cpe:/o:debian:debian_linux:12",
"package": "tar",
"version": {
"kind": "MAXIMUM"
}
},
"packageType": "OS",
"effectiveSeverity": "LOW",
"file_location": [
{
"file_path": "/var/lib/dpkg/status",
"layerDetails": {
"index": 0,
"diffID": "sha256:123",
"buildCommand": "FROM golang:example_sha256",
"BaseImages": [
{
"name": "library/golang",
},
],
},
},
],
}
],
"shortDescription": "CVE-2005-2541",
"longDescription": "NIST vectors: AV:N/AC:L/Au:N/C:C/I:C/A:C",
"relatedUrls": [
{
"url": "https://security-tracker.debian.org/tracker/CVE-2005-2541",
"label": "More Info"
}
],
"effectiveSeverity": "LOW",
"cvssVersion": "CVSS_VERSION_2",
"cvssV2": {
"baseScore": 10,
"attackVector": "ATTACK_VECTOR_NETWORK",
"attackComplexity": "ATTACK_COMPLEXITY_LOW",
"authentication": "AUTHENTICATION_NONE",
"confidentialityImpact": "IMPACT_COMPLETE",
"integrityImpact": "IMPACT_COMPLETE",
"availabilityImpact": "IMPACT_COMPLETE"
}
}
}
Sicherheitslückenvorkommen filtern
Verwenden Sie den Parameter --occurrence-filter, um das Auftreten von Sicherheitslücken zu filtern:
gcloud artifacts docker images list --show-occurrences \
LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY/IMAGE_ID \
--occurrence-filter=FILTER_EXPRESSION
Wobei:
- LOCATION ist der regionale oder multiregionale Speicherort für das Repository.
- PROJECT_ID ist Ihre Projekt-ID in der Console von Google Cloud .
- REPOSITORY ist der Name des Repositorys, in dem das Image gespeichert ist.
- IMAGE_ID ist der Name des Images im Repository.
- FILTER_EXPRESSION ist ein Beispiel für einen Filterausdruck im Format, das unter Vulnerability-Vorkommen filtern beschrieben wird.
Sicherheitslücken für eine bestimmte Ebene ansehen
Mit dem FeldlayerDetails können Sie ermitteln, in welcher Ebene ein anfälliges Paket eingeführt wurde, und zusätzliche Informationen zu dieser Ebene aufrufen. Betrachten Sie beispielsweise die folgende layerDetails-Ausgabe für ein Image:
"layerDetails": {
"index": 0,
"diffID": "sha256:123",
"buildCommand": "FROM golang:example_sha256",
"BaseImages": [
{
"name": "library/golang",
},
],
}
Die Ausgabe zeigt, dass der Layer-Index im Bild 0 ist und der Layer-Hash sha256:123 lautet.
Der Docker-Build-Befehl zum Erstellen dieser Ebene ist FROM golang:example_sha256. Die Ebene ist auch im Basis-Image library/golang enthalten.
Vorkommen mit der API oder mit Code ansehen
Wenn Sie Vorkommen für ein Bild aufrufen möchten, geben Sie Bilder mit einer URL im folgenden Format an:
LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY/IMAGE_ID
API
cURL verwenden
So rufen Sie eine Liste der Vorkommen in Ihrem Projekt ab:
curl -X GET -H "Content-Type: application/json" -H \
"Authorization: Bearer $(gcloud auth print-access-token)" \
https://containeranalysis.googleapis.com/v1/projects/PROJECT_ID/occurrences
So erhalten Sie eine Zusammenfassung der Sicherheitslücken in Ihrem Projekt:
curl -X GET -H "Content-Type: application/json" -H \
"Authorization: Bearer $(gcloud auth print-access-token)" \
https://containeranalysis.googleapis.com/v1/projects/PROJECT_ID/occurrences:vulnerabilitySummary
So rufen Sie Details zu einem bestimmten Vorkommen ab:
curl -X GET -H "Content-Type: application/json" -H \
"Authorization: Bearer $(gcloud auth print-access-token)" \
https://containeranalysis.googleapis.com/v1/projects/PROJECT_ID/occurrences/OCCURRENCE_ID
Java
Informationen zum Installieren und Verwenden der Clientbibliothek für Artefaktanalyse finden Sie unter Artefaktanalyse-Clientbibliotheken. Weitere Informationen finden Sie in der Artefaktanalyse-Referenzdokumentation zur Java API.
Richten Sie zur Authentifizierung bei Artefaktanalyse Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Go
Informationen zum Installieren und Verwenden der Clientbibliothek für Artefaktanalyse finden Sie unter Artefaktanalyse-Clientbibliotheken. Weitere Informationen finden Sie in der Artefaktanalyse-Referenzdokumentation zur Go API.
Richten Sie zur Authentifizierung bei Artefaktanalyse Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Node.js
Informationen zum Installieren und Verwenden der Clientbibliothek für Artefaktanalyse finden Sie unter Artifact Analysis-Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Artefaktanalyse Node.js API.
Richten Sie zur Authentifizierung bei Artefaktanalyse Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Ruby
Informationen zum Installieren und Verwenden der Clientbibliothek für Artefaktanalyse finden Sie unter Artefaktanalyse-Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Artefaktanalyse Ruby API.
Richten Sie zur Authentifizierung bei Artefaktanalyse Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Python
Informationen zum Installieren und Verwenden der Clientbibliothek für Artefaktanalyse finden Sie unter Artefaktanalyse-Clientbibliotheken. Weitere Informationen finden Sie in der Artefaktanalyse-Referenzdokumentation zur Python API.
Richten Sie zur Authentifizierung bei Artefaktanalyse Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Vorkommen in Cloud Build ansehen
Wenn Sie Cloud Build verwenden, können Sie sich auch im Seitenbereich Sicherheitsinformationen in der Google Cloud Console Bildschwachstellen ansehen.
Die Seitenleiste Sicherheitsinformationen bietet einen allgemeinen Überblick über die Build-Sicherheitsinformationen 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 Build-Sicherheitserkenntnisse ansehen.
Vorkommen filtern
Sie können Filterstrings in den gcloud-Befehlen und der Artifact Analysis API verwenden, um Vorkommen zu filtern, bevor Sie sie ansehen. In den folgenden Abschnitten werden die unterstützten Suchfilter beschrieben.
Erkennungsvorkommen ansehen
Wenn ein Image zum ersten Mal per Push an Artifact Registry übertragen wird, erstellt Artifact Registry ein Discovery-Vorkommen, das Informationen zum ersten Scan des Container-Images enthält.
Mit diesem Filterausdruck rufen Sie das Erkennungsvorkommen für ein Image ab:
kind="DISCOVERY" AND resourceUrl="RESOURCE_URL"
Dabei hat RESOURCE_URL das folgende Format:
LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY/IMAGE_ID
gcloud
Erkennungsvorkommen für ein Image ansehen:
In diesem Fall wird der Ausdruck nicht direkt im Befehl verwendet, aber dieselben Informationen werden als Argumente übergeben:
Artifact Registry:
gcloud artifacts docker images list --show-occurrences \
--occurrence-filter='kind="DISCOVERY"' --format=json \
LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY/IMAGE_ID
API
Zum Abrufen des Discovery-Vorkommens muss Ihr Filterausdruck URL-codiert und so in eine GET-Anfrage eingebettet sein:
GET https://containeranalysis.googleapis.com/v1/projects/PROJECT_ID/occurrences?filter=kind%3D%22DISCOVERY%22%20AND%20resourceUrl%3D%22ENCODED_RESOURCE_URL%22
Weitere Informationen finden Sie unter dem API-Endpunkt projects.occurrences.get.
Java
Informationen zum Installieren und Verwenden der Clientbibliothek für Artefaktanalyse finden Sie unter Artefaktanalyse-Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Artefaktanalyse Java API.
Richten Sie zur Authentifizierung bei Artefaktanalyse Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Go
Informationen zum Installieren und Verwenden der Clientbibliothek für Artefaktanalyse finden Sie unter Artifact Analysis-Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Artefaktanalyse Go API.
Richten Sie zur Authentifizierung bei Artefaktanalyse Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Node.js
Informationen zum Installieren und Verwenden der Clientbibliothek für die Artefaktanalyse finden Sie unter Artefaktanalyse-Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Artefaktanalyse Node.js API.
Richten Sie zur Authentifizierung bei Artefaktanalyse Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Ruby
Informationen zum Installieren und Verwenden der Clientbibliothek für Artefaktanalyse finden Sie unter Artefaktanalyse-Clientbibliotheken. Weitere Informationen finden Sie in der Artefaktanalyse-Referenzdokumentation zur Ruby API.
Richten Sie zur Authentifizierung bei Artefaktanalyse Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Python
Informationen zum Installieren und Verwenden der Clientbibliothek für Artefaktanalyse finden Sie unter Artefaktanalyse-Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Artefaktanalyse Python API.
Richten Sie zur Authentifizierung bei Artefaktanalyse Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Vorkommen von Sicherheitslücken ansehen
Erstellen Sie eine Abfrage mit einem Filterausdruck, um Sicherheitslücken für ein bestimmtes Image aufzurufen:
kind="VULNERABILITY" AND resourceUrl="RESOURCE_URL"
Dabei hat RESOURCE_URL das folgende Format:
LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY/IMAGE_ID
gcloud
In diesem Fall wird der Ausdruck nicht direkt im Befehl verwendet, aber dieselben Informationen werden als Argumente übergeben:
Artifact Registry
gcloud artifacts docker images list --show-occurrences \
--occurrence-filter='kind="VULNERABILITY"' --format=json \
LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY/IMAGE_ID
API
Die Ressourcen-URL muss URL-codiert und so in eine GET-Anfrage eingebettet sein:
GET https://containeranalysis.googleapis.com/v1/projects/PROJECT_ID/occurrences?filter=kind%3D%22VULNERABILITY%22%20AND%20resourceUrl%3D%22ENCODED_RESOURCE_URL%22
Weitere Informationen finden Sie unter dem API-Endpunkt projects.occurrences.get.
Java
Informationen zum Installieren und Verwenden der Clientbibliothek für Artefaktanalyse finden Sie unter Artifact Analysis-Clientbibliotheken. Weitere Informationen finden Sie in der Artefaktanalyse-Referenzdokumentation zur Java API.
Richten Sie zur Authentifizierung bei Artefaktanalyse Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Go
Informationen zum Installieren und Verwenden der Clientbibliothek für die Artefaktanalyse finden Sie unter Artefaktanalyse-Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Artefaktanalyse Go API.
Richten Sie zur Authentifizierung bei Artefaktanalyse Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Node.js
Informationen zum Installieren und Verwenden der Clientbibliothek für Artefaktanalyse finden Sie unter Artifact Analysis-Clientbibliotheken. Weitere Informationen finden Sie in der Artefaktanalyse-Referenzdokumentation zur Node.js API.
Richten Sie zur Authentifizierung bei Artefaktanalyse Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Ruby
Informationen zum Installieren und Verwenden der Clientbibliothek für Artefaktanalyse finden Sie unter Artefaktanalyse-Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Artefaktanalyse Ruby API.
Richten Sie zur Authentifizierung bei Artefaktanalyse Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Python
Informationen zum Installieren und Verwenden der Clientbibliothek für Artefaktanalyse finden Sie unter Artifact Analysis-Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Artefaktanalyse Python API.
Richten Sie zur Authentifizierung bei Artefaktanalyse die Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Vorkommen eines bestimmten Typs ansehen
In den beiden vorherigen Beispielen besteht der einzige Unterschied zwischen den Filterausdrücken im Wert von kind, der den Typ des Ereignisses angibt. Mit diesem Feld können Sie die Liste der Vorkommen auf eine bestimmte Art beschränken, z. B. eine Sicherheitslücke oder Bereitstellung.
Verwenden Sie folgenden Filterausdruck, um Vorkommen für ein bestimmtes Image abzurufen:
kind="NOTE_KIND" AND resourceUrl="RESOURCE_URL"
Wobei:
- NOTE_KIND ist die Art des Hinweises.
- Verwenden Sie beispielsweise
DISCOVERYzum Auflisten der Erkennungsvorkommen. Discovery-Vorkommen werden für Images erstellt, wenn sie zum ersten Mal per Push in Artifact Registry übertragen werden. - Verwenden Sie zum Auflisten der Vorkommen von Sicherheitslücken die Art
VULNERABILITY.
- Verwenden Sie beispielsweise
-
RESOURCE_URL ist die vollständige URL des Images
https://HOSTNAME/PROJECT_ID/IMAGE_ID@sha256:HASH.
Der Filterausdruck zum Abrufen von Vorkommen einer bestimmten Art für mehrere Images lautet:
kind="NOTE_KIND" AND has_prefix(resourceUrl, "RESOURCE_URL_PREFIX")
Wobei:
- RESOURCE_URL_PREFIX ist das URL-Präfix für einige Images.
- Zum Auflisten aller Versionen eines Images:
https://HOSTNAME/PROJECT_ID/IMAGE_ID@ - Zum Auflisten aller Images in einem Projekt:
https://HOSTNAME/PROJECT_ID/
- Zum Auflisten aller Versionen eines Images:
Bilder ansehen, die mit einer bestimmten Notiz verknüpft sind
Sie können eine Liste von Ressourcen abrufen, die einer bestimmten Hinweis-ID zugeordnet sind. So können Sie beispielsweise Images mit einer bestimmten CVE-Sicherheitslücke auflisten.
Verwenden Sie den folgenden Filterausdruck, um alle Images in einem Projekt aufzulisten, die einem bestimmten Hinweis zugeordnet sind:
noteProjectId="PROVIDER_PROJECT_ID" AND noteId="NOTE_ID"
Mit dem folgenden Filterausdruck können Sie ein bestimmtes Image auf einen konkreten Hinweis prüfen:
resourceUrl="RESOURCE_URL" AND noteProjectId="PROVIDER_PROJECT_ID" \ AND noteId="NOTE_ID"
Wobei:
- PROVIDER_PROJECT_ID ist die ID eines Provider-Projekts. Beispielsweise stellt
goog-vulnzdie Standardanalyse für Sicherheitslücken bereit. - NOTE_ID ist die ID des Hinweises. Sicherheitsbezogene Hinweise sind oft als
CVE-2019-12345formatiert. -
RESOURCE_URL ist die vollständige URL des Images
https://HOSTNAME/PROJECT_ID/IMAGE_ID@sha256:HASH.
Mit dem folgenden Filterausdruck können Sie beispielsweise prüfen, ob alle Images gemäß der Google-Analyse CVE-2017-16231 enthalten:
noteProjectId="goog-vulnz" AND noteId="CVE-2017-16231"
Nächste Schritte
Pub/Sub-Benachrichtigungen verwenden, um Benachrichtigungen zu Sicherheitslücken und anderen Metadaten zu erhalten.
Mit Kritis Signer können Sie Attestierungen für die Binärautorisierung als Teil Ihrer Build-Pipeline erstellen. Mit diesem Tool können Binärautorisierungs-Attestierungen auf Grundlage von Ergebnissen von Scans auf Sicherheitslücken erstellt werden. Weitere Informationen finden Sie unter Atteste mit Kritis Signer erstellen.