Anwendung erstellen und Sicherheitsstatistiken ansehen
In dieser Kurzanleitung wird erläutert, wie Sie eine Anwendung erstellen und Sicherheitsinformationen aufrufen. für den Build im Bereich Security Insights von Software Delivery Shield im Google Cloud Console
Sie werden Folgendes tun:
- Java-Anwendung mit Cloud Build erstellen und containerisieren und per Push übertragen Das Container-Image in das Artifact Registry-Docker-Repository.
Sehen Sie sich die folgenden Sicherheitsinformationen für den Build an:
- Supply Chain Levels for Software Artifacts (SLSA) Ebene, die den Reifegrad Ihres Software-Build-Prozesses entsprechend der SLSA-Spezifikation .
- Sicherheitslücken in Build-Artefakten.
- Software-Materialliste (SBOM) für die Build-Artefakte.
- Build-Herkunft, eine Sammlung überprüfbarer Metadaten zu ein Build. Es enthält Details wie die Digests der erstellten Images, Speicherorte der Eingabequellen, die Build-Toolchain, die Build-Schritte und den Build Dauer
Hinweise
- Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie 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.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.
-
Enable the Cloud Build, Artifact Registry, and Container Scanning APIs:
gcloud services enable cloudbuild.googleapis.com
artifactregistry.googleapis.com containerscanning.googleapis.com - Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.
-
Enable the Cloud Build, Artifact Registry, and Container Scanning APIs:
gcloud services enable cloudbuild.googleapis.com
artifactregistry.googleapis.com containerscanning.googleapis.com
Umgebung vorbereiten
Legen Sie Ihre Projekt-ID als Umgebungsvariable fest:
export PROJECT_ID=$(gcloud config get project)
Klonen Sie das Repository, das das Java-Codebeispiel enthält, um einen Build und containerisieren:
git clone https://github.com/googlecloudplatform/software-delivery-shield-demo-java.git cd software-delivery-shield-demo-java/backend
Artifact Registry-Repository für das Image erstellen
Erstellen Sie ein neues Docker-Repository mit dem Namen
containers
am Standortus-central1
mit der Beschreibung „Docker repository“:gcloud artifacts repositories create containers \ --repository-format=docker \ --location=us-central1 --description="Docker repository"
Prüfen Sie, ob Ihr Repository erstellt wurde:
gcloud artifacts repositories list
In der Liste der angezeigten Repositories sollte
containers
angezeigt werden.
Anwendung erstellen
Java-Anwendung mit Cloud Build erstellen und containerisieren Mit dem folgenden Befehl werden die Java-Anwendung und den erstellten Container im Docker-Repository von Artifact Registry speichert:
gcloud builds submit --config=cloudbuild.yaml --region=us-central1
Nach Abschluss des Builds wird eine Erfolgsstatusmeldung angezeigt, die der Folgendes:
<pre class="none lang-sh">
DONE
-----------------------------------------------------------------------------
ID: 3e08565f-7f57-4449-bc68-51c46cf33d03
CREATE_TIME: 2022-09-19T15:41:07+00:00
DURATION: 54S
SOURCE: gs://sds-docs-project_cloudbuild/source/1663602066.777581-6ebe4b2d6fd741ffa18936d7f78055e9.tgz
IMAGES: us-central1-docker.pkg.dev/sds-docs-project/containers/java-guestbook-backend:quickstart
STATUS: SUCCESS
</pre>
SBOM für das erstellte Image generieren
Eine SBOM ist ein vollständiges Inventar einer Anwendung, das die Pakete identifiziert. auf den sich Ihre Software stützt. Die Inhalte können Drittanbieter-Software von interne Artefakte und Open-Source-Bibliotheken.
Generieren Sie die SBOM für das Image, das Sie im vorherigen Abschnitt erstellt haben:
gcloud artifacts sbom export
--uri=us-central1-docker.pkg.dev/${PROJECT_ID}/containers/java-guestbook-backend:quickstart
Sicherheitserkenntnisse ansehen
Die Cloud Build-UI in der Google Cloud Console enthält die Software Delivery Shield-Bereich Sicherheitsinformationen, in dem die Sicherheit angezeigt wird Informationen zum Build wie das SLSA-Level, eventuelle Sicherheitslücken im Abhängigkeiten zu entwickeln und Herkunft zu erstellen.
So rufen Sie den Bereich Security Insights (Sicherheitsinformationen) von Software Delivery Shield auf:
Öffnen Sie in der Google Cloud Console die Seite Build-Verlauf:
Wählen Sie Ihr Projekt aus und klicken Sie auf Öffnen.
Wählen Sie im Drop-down-Menü Region die Option us-central1 aus.
Suchen Sie in der Tabelle mit den Builds die Zeile mit dem Build, den Sie gerade erstellt haben. ausgeführt haben.
Klicken Sie in der Spalte Sicherheitsinformationen auf Ansehen.
Sie sehen den Bereich Security Insights (Sicherheitsinformationen) für den Build:
In diesem Bereich werden die folgenden Informationen angezeigt:
SLSA-Level:Dieser Build hat das SLSA-Level 3 erreicht. Klicken Sie auf die Schaltfläche Learn , um zu erfahren, was dieses Sicherheitsebenen bedeutet.
Sicherheitslücken: Alle Sicherheitslücken in Ihren Artefakten. Klicken Sie auf das Image-Namen (java-guestbook-backend) verwenden, um die Artefakte anzuzeigen, die auf Schwachstellen gescannt.
Abhängigkeiten für das erstellte Container-Image in Artifact Registry.
Build-Details:Details des Builds wie der Builder und der Link zu Logs ansehen.
Bereinigen
Löschen Sie das Google Cloud-Projekt mit den Ressourcen, damit Ihrem Google Cloud-Konto die auf dieser Seite verwendeten Ressourcen nicht in Rechnung gestellt werden.
Deaktivieren Sie die Container Scanning API:
gcloud services disable containerscanning.googleapis.com --force
Löschen Sie das Artifact Registry-Repository:
gcloud artifacts repositories delete containers \ --location=us-central1 --async
Sie haben nun das Repository gelöscht, das Sie im Rahmen dieses Programms erstellt haben. Kurzanleitung.