arrow_back

Google Cloud mit CFT Scorecard schützen

Anmelden Teilnehmen
Zugriff auf über 700 Labs und Kurse nutzen

Google Cloud mit CFT Scorecard schützen

Lab 40 Minuten universal_currency_alt 1 Guthabenpunkt show_chart Einsteiger
info Dieses Lab kann KI-Tools enthalten, die den Lernprozess unterstützen.
Zugriff auf über 700 Labs und Kurse nutzen

GSP698

Logo: Google Cloud-Labs zum selbstbestimmten Lernen

Übersicht

CFT Scorecard ist ein Open-Source-Befehlszeilenclient von Forseti Config Validator und Teil des umfassenderen Cloud Foundation Toolkits. Darüber erhalten Sie Informationen zu Fehlkonfigurationen und Verstößen gegen festgelegte Standards für Google Cloud-Ressourcen, -Projekte, -Ordner oder sogar -Organisationen.

Es gibt über 86 verschiedene Google Cloud-Ressourcentypen und es werden immer mehr. Durch den Wechsel zur öffentlichen Cloud ist es einfacher denn je, Cloud-Vorgänge und die Bereitstellung von Ressourcen auf viele Personen zu verteilen. Neben der Föderation und Agilität bei der Bereitstellung von Infrastruktur, Ressourcen und Richtlinien wird es immer schwerer, Richtlinien und Standards einzuhalten.

In diesem Lab konfigurieren Sie CFT Scorecard, um die Sichtbarkeit von Google Cloud-Projekten zu verbessern und Fehlkonfigurationen zu erkennen.

Was sind die Aufgaben in diesem Lab?

In diesem Lab werden die Herausforderungen erläutert, die sich aus der Nutzung der Cloud mit mehreren gleichzeitig aktiven Nutzern ergeben. Sie aktivieren CFT Scorecard und erweitern die Funktionen zur Überwachung der Ressourcenkonfiguration und zur Erkennung von Verstößen durch die Anbindung an Cloud Asset Inventory und die Open-Source-Richtlinienbibliothek. Sie richten die Tools zum Erkennen von Fehlkonfigurationen und übermäßig gefährdeten Ressourcen ein und bieten anderen Personen in Ihrem Team und letztendlich dem Google Cloud-Projekt gleichzeitig die Möglichkeit, innerhalb der festgelegten Richtlinien agil zu bleiben.

Behandelte Themen

  • CFT Scorecard einrichten
  • CFT Scorecard-Bewertung vornehmen
  • Neue CFT Scorecard-Richtlinie hinzufügen

Infografik zum Thema

Szenario

Stellen Sie sich vor, Sie sind der technische Leiter eines dreiköpfigen Teams. Ihre Remote-Teammitglieder Alice und Bob arbeiten sehr eng mit Ihnen zusammen und stellen viele Ressourcen im selben freigegebenen Google Cloud-Projekt wie Sie bereit. Nach einigen Wochen der Zusammenarbeit fallen Ihnen ein paar Probleme auf. Sie stellen bald fest, dass sowohl Alice als auch Bob Abkürzungen genommen und Projektkonfigurationen eingeführt haben, die für Sie Fehlkonfigurationen sind. Durch eine Fehlkonfiguration wurde ein Cloud Storage-Bucket öffentlich zugänglich gemacht. Dies ist nur eine Fehlkonfiguration, die Sie gefunden haben, Sie befürchten jedoch, dass es noch viel mehr sind.

Nach einer kurzen Google-Suche stoßen Sie auf das CFT Scorecard-Tool im Cloud Foundation Toolkit (CFT). Nachdem Sie sich kurz dazu belesen haben, stellen Sie fest, dass Sie damit Richtlinien in Ihrer Google Cloud-Umgebung verwalten und Fehlkonfigurationen finden können. Sie beschließen, es auszuprobieren.

Einrichtung und Anforderungen

Vor dem Klick auf „Start Lab“ (Lab starten)

Lesen Sie diese Anleitung. Labs sind zeitlich begrenzt und können nicht pausiert werden. Der Timer beginnt zu laufen, wenn Sie auf Lab starten klicken, und zeigt Ihnen, wie lange Google Cloud-Ressourcen für das Lab verfügbar sind.

In diesem praxisorientierten Lab können Sie die Lab-Aktivitäten in einer echten Cloud-Umgebung durchführen – nicht in einer Simulations- oder Demo-Umgebung. Dazu erhalten Sie neue, temporäre Anmeldedaten, mit denen Sie für die Dauer des Labs auf Google Cloud zugreifen können.

Für dieses Lab benötigen Sie Folgendes:

  • Einen Standardbrowser (empfohlen wird Chrome)
Hinweis: Nutzen Sie den privaten oder Inkognitomodus (empfohlen), um dieses Lab durchzuführen. So wird verhindert, dass es zu Konflikten zwischen Ihrem persönlichen Konto und dem Teilnehmerkonto kommt und zusätzliche Gebühren für Ihr persönliches Konto erhoben werden.
  • Zeit für die Durchführung des Labs – denken Sie daran, dass Sie ein begonnenes Lab nicht unterbrechen können.
Hinweis: Verwenden Sie für dieses Lab nur das Teilnehmerkonto. Wenn Sie ein anderes Google Cloud-Konto verwenden, fallen dafür möglicherweise Kosten an.

Lab starten und bei der Google Cloud Console anmelden

  1. Klicken Sie auf Lab starten. Wenn Sie für das Lab bezahlen müssen, wird ein Dialogfeld geöffnet, in dem Sie Ihre Zahlungsmethode auswählen können. Auf der linken Seite befindet sich der Bereich „Details zum Lab“ mit diesen Informationen:

    • Schaltfläche „Google Cloud Console öffnen“
    • Restzeit
    • Temporäre Anmeldedaten für das Lab
    • Ggf. weitere Informationen für dieses Lab
  2. Klicken Sie auf Google Cloud Console öffnen (oder klicken Sie mit der rechten Maustaste und wählen Sie Link in Inkognitofenster öffnen aus, wenn Sie Chrome verwenden).

    Im Lab werden Ressourcen aktiviert. Anschließend wird ein weiterer Tab mit der Seite „Anmelden“ geöffnet.

    Tipp: Ordnen Sie die Tabs nebeneinander in separaten Fenstern an.

    Hinweis: Wird das Dialogfeld Konto auswählen angezeigt, klicken Sie auf Anderes Konto verwenden.
  3. Kopieren Sie bei Bedarf den folgenden Nutzernamen und fügen Sie ihn in das Dialogfeld Anmelden ein.

    {{{user_0.username | "Username"}}}

    Sie finden den Nutzernamen auch im Bereich „Details zum Lab“.

  4. Klicken Sie auf Weiter.

  5. Kopieren Sie das folgende Passwort und fügen Sie es in das Dialogfeld Willkommen ein.

    {{{user_0.password | "Password"}}}

    Sie finden das Passwort auch im Bereich „Details zum Lab“.

  6. Klicken Sie auf Weiter.

    Wichtig: Sie müssen die für das Lab bereitgestellten Anmeldedaten verwenden. Nutzen Sie nicht die Anmeldedaten Ihres Google Cloud-Kontos. Hinweis: Wenn Sie Ihr eigenes Google Cloud-Konto für dieses Lab nutzen, können zusätzliche Kosten anfallen.
  7. Klicken Sie sich durch die nachfolgenden Seiten:

    • Akzeptieren Sie die Nutzungsbedingungen.
    • Fügen Sie keine Wiederherstellungsoptionen oder Zwei-Faktor-Authentifizierung hinzu (da dies nur ein temporäres Konto ist).
    • Melden Sie sich nicht für kostenlose Testversionen an.

Nach wenigen Augenblicken wird die Google Cloud Console in diesem Tab geöffnet.

Hinweis: Wenn Sie auf Google Cloud-Produkte und ‑Dienste zugreifen möchten, klicken Sie auf das Navigationsmenü oder geben Sie den Namen des Produkts oder Dienstes in das Feld Suchen ein. Symbol für das Navigationsmenü und Suchfeld

Cloud Shell aktivieren

Cloud Shell ist eine virtuelle Maschine, auf der Entwicklertools installiert sind. Sie bietet ein Basisverzeichnis mit 5 GB nichtflüchtigem Speicher und läuft auf Google Cloud. Mit Cloud Shell erhalten Sie Befehlszeilenzugriff auf Ihre Google Cloud-Ressourcen.

  1. Klicken Sie oben in der Google Cloud Console auf Cloud Shell aktivieren Symbol für Cloud Shell-Aktivierung.

  2. Klicken Sie sich durch die folgenden Fenster:

    • Fahren Sie mit dem Informationsfenster zu Cloud Shell fort.
    • Autorisieren Sie Cloud Shell, Ihre Anmeldedaten für Google Cloud API-Aufrufe zu verwenden.

Wenn eine Verbindung besteht, sind Sie bereits authentifiziert und das Projekt ist auf Project_ID, eingestellt. Die Ausgabe enthält eine Zeile, in der die Project_ID für diese Sitzung angegeben ist:

Ihr Cloud-Projekt in dieser Sitzung ist festgelegt als {{{project_0.project_id | "PROJECT_ID"}}}

gcloud ist das Befehlszeilentool für Google Cloud. Das Tool ist in Cloud Shell vorinstalliert und unterstützt die Tab-Vervollständigung.

  1. (Optional) Sie können den aktiven Kontonamen mit diesem Befehl auflisten:
gcloud auth list
  1. Klicken Sie auf Autorisieren.

Ausgabe:

ACTIVE: * ACCOUNT: {{{user_0.username | "ACCOUNT"}}} Um das aktive Konto festzulegen, führen Sie diesen Befehl aus: $ gcloud config set account `ACCOUNT`
  1. (Optional) Sie können die Projekt-ID mit diesem Befehl auflisten:
gcloud config list project

Ausgabe:

[core] project = {{{project_0.project_id | "PROJECT_ID"}}} Hinweis: Die vollständige Dokumentation für gcloud finden Sie in Google Cloud in der Übersicht zur gcloud CLI.

Aufgabe 1: Umgebung einrichten

  1. Öffnen Sie Cloud Shell und legen Sie einige Umgebungsvariablen fest:
export GOOGLE_PROJECT=$DEVSHELL_PROJECT_ID export CAI_BUCKET_NAME=cai-$GOOGLE_PROJECT
  1. Nachdem Sie die Dokumentation gelesen haben, sollten Sie wissen, dass CFT Scorecard zwei Abhängigkeiten hat:
  • Cloud Asset Inventory
  • Richtlinienbibliothek
  1. So aktivieren Sie die Cloud Asset API in Ihrem Projekt:
gcloud services enable cloudasset.googleapis.com \ --project $GOOGLE_PROJECT
  1. Führen Sie diesen Befehl aus, um das Cloud Asset-Standarddienstkonto zu erstellen:
gcloud beta services identity create --service=cloudasset.googleapis.com --project=$GOOGLE_PROJECT
  1. Weisen Sie dem Cloud Asset-Dienstkonto die Rolle Storage-Administrator zu:
gcloud projects add-iam-policy-binding ${GOOGLE_PROJECT} \ --member=serviceAccount:service-$(gcloud projects list --filter="$GOOGLE_PROJECT" --format="value(PROJECT_NUMBER)")@gcp-sa-cloudasset.iam.gserviceaccount.com \ --role=roles/storage.admin
  1. Klonen Sie die Richtlinienbibliothek:
git clone https://github.com/forseti-security/policy-library.git
  1. Dabei stellen Sie fest, dass die Richtlinienbibliothek Richtlinien erzwingt, die sich im Ordner „policy-library/policies/constraints“ befinden. In diesem Fall können Sie eine Beispielrichtlinie aus dem Verzeichnis mit den Beispielen in das Verzeichnis mit den Einschränkungen kopieren.
cp policy-library/samples/storage_denylist_public.yaml policy-library/policies/constraints/
  1. Erstellen Sie den Bucket, in dem die Daten gespeichert werden, die von Cloud Asset Inventory (CAI) exportiert werden:
gsutil mb -l {{{project_0.default_region | REGION}}} -p $GOOGLE_PROJECT gs://$CAI_BUCKET_NAME

Klicken Sie auf Fortschritt prüfen. CAI-Bucket erstellen

Aufgabe 2: Daten mit Cloud Asset Inventory (CAI) erfassen

Nachdem Sie die Umgebung eingerichtet haben, können Sie mit der Erfassung der Daten für CFT Scorecard beginnen.

Wie bereits erwähnt, sind die Eingaben für CFT Scorecard Ressourcen- und IAM-Daten sowie der Ordner „policy-library“.

Sie müssen CAI verwenden, um die Ressourcen- und IAM-Richtlinieninformationen für das Projekt zu generieren.

  1. Erstellen Sie die Daten mit dem folgenden Befehl:
# Export resource data gcloud asset export \ --output-path=gs://$CAI_BUCKET_NAME/resource_inventory.json \ --content-type=resource \ --project=$GOOGLE_PROJECT # Export IAM data gcloud asset export \ --output-path=gs://$CAI_BUCKET_NAME/iam_inventory.json \ --content-type=iam-policy \ --project=$GOOGLE_PROJECT # Export org policy data gcloud asset export \ --output-path=gs://$CAI_BUCKET_NAME/org_policy_inventory.json \ --content-type=org-policy \ --project=$GOOGLE_PROJECT # Export access policy data gcloud asset export \ --output-path=gs://$CAI_BUCKET_NAME/access_policy_inventory.json \ --content-type=access-policy \ --project=$GOOGLE_PROJECT

Beispielausgabe:

Stammasset wird exportiert [projects/qwiklabs-gcp-01-68169ed6dd00]. Prüfen Sie den Status des Vorgangs mit [gcloud asset operations describe projects/97186664469/operations/ExportAssets/RESOURCE/2295255602305764396]. Stammasset wird exportiert [projects/qwiklabs-gcp-01-68169ed6dd00]. Prüfen Sie den Status des Vorgangs mit [gcloud asset operations describe projects/97186664469/operations/ExportAssets/IAM_POLICY/11771734913762837428].
  1. Prüfen Sie, ob die Datenerfassung durch CAI abgeschlossen ist. Sehen Sie sich die Ausgabe des vorherigen Befehls an und verwenden Sie den bereitgestellten Befehl gcloud asset operations describe aus der Ausgabe der oben genannten Befehle, um zu prüfen, ob diese Vorgänge abgeschlossen sind. Es kann einige Zeit dauern, bis der Fortschritt angezeigt wird.

Klicken Sie auf Fortschritt prüfen. Überprüfen, ob die CAI-Dateien erstellt wurden

Aufgabe 3: CAI-Daten mit CFT Scorecard analysieren

  1. Sie müssen die CFT Scorecard-Anwendung herunterladen und ausführbar machen:
curl -o cft https://storage.googleapis.com/cft-cli/latest/cft-linux-amd64 # make executable chmod +x cft
  1. Nachdem Sie alles konfiguriert haben, können Sie die CFT Scorecard-Anwendung ausführen:
./cft scorecard --policy-path=policy-library/ --bucket=$CAI_BUCKET_NAME

Beispielausgabe:

Generating CFT scorecard 1 total issues found Operational Efficiency: 0 issues found ---------- Security: 1 issues found ---------- denylist_public_users: 1 issues - //storage.googleapis.com/fun-bucket-qwiklabs-gcp-00-2d8ed2a5cc0e is publicly accessable Reliability: 0 issues found ---------- Other: 0 issues found ----------

Dies ist der öffentliche Bucket, den Sie zuvor gefunden haben.

Aufgabe 4: Weitere Einschränkungen für CFT Scorecard hinzufügen

  1. Sie haben IAM vergessen. Fügen Sie die folgende Einschränkung hinzu, damit Sie genau wissen, wer neben dem zugelassenen Nutzer die Rolle roles/owner hat:
# Add a new policy to blacklist the IAM Owner Role cat > policy-library/policies/constraints/iam_allowlist_owner.yaml << EOF apiVersion: constraints.gatekeeper.sh/v1alpha1 kind: GCPIAMAllowedBindingsConstraintV3 metadata: name: allowlist_owner annotations: description: List any users granted Owner spec: severity: high match: target: ["organizations/**"] exclude: [] parameters: mode: allowlist assetType: cloudresourcemanager.googleapis.com/Project role: roles/owner members: - "serviceAccount:admiral@qwiklabs-services-prod.iam.gserviceaccount.com" EOF
  1. Führen Sie CFT Scorecard noch einmal aus:
./cft scorecard --policy-path=policy-library/ --bucket=$CAI_BUCKET_NAME

Alles in Ordnung. Sehen wir uns roles/editor trotzdem noch an.

  1. Legen Sie zwei zusätzliche Variablen fest, damit sich neue Einschränkungen leichter erstellen lassen:
export USER_ACCOUNT="$(gcloud config get-value core/account)" export PROJECT_NUMBER=$(gcloud projects describe $GOOGLE_PROJECT --format="get(projectNumber)")
  1. Erstellen Sie die folgende Einschränkung, um alle gültigen Konten auf die Zulassungsliste zu setzen:
# Add a new policy to allowlist the IAM Editor Role cat > policy-library/policies/constraints/iam_identify_outside_editors.yaml << EOF apiVersion: constraints.gatekeeper.sh/v1alpha1 kind: GCPIAMAllowedBindingsConstraintV3 metadata: name: identify_outside_editors annotations: description: list any users outside the organization granted Editor spec: severity: high match: target: ["organizations/**"] exclude: [] parameters: mode: allowlist assetType: cloudresourcemanager.googleapis.com/Project role: roles/editor members: - "user:$USER_ACCOUNT" - "serviceAccount:**$PROJECT_NUMBER**gserviceaccount.com" - "serviceAccount:$GOOGLE_PROJECT**gserviceaccount.com" EOF
  1. Führen Sie CFT Scorecard noch einmal aus:
./cft scorecard --policy-path=policy-library/ --bucket=$CAI_BUCKET_NAME

Beispielausgabe:

Generating CFT scorecard 3 total issues found Reliability: 0 issues found ---------- Other: 2 issues found ---------- identify_outside_editors: 1 issues - IAM policy for //cloudresourcemanager.googleapis.com/projects/1044418630080 grants roles/editor to user:qwiklabs.lab.user@gmail.com Operational Efficiency: 0 issues found ---------- Security: 1 issues found ---------- denylist_public_users: 1 issues - //storage.googleapis.com/fun-bucket-qwiklabs-gcp-00-2d8ed2a5cc0e is publicly accessable

Sie sollten jetzt einen Editor sehen, der nicht zu Ihrer Organisation gehört. Es ist Zeit, mit Alice und Bob zu sprechen.

Das wars! Sie haben das Lab erfolgreich abgeschlossen.

Jetzt wissen Sie, wie Sie CFT Scorecard herunterladen, einrichten und verwenden, um ein Google Cloud-Projekt zu analysieren.

Google Cloud-Schulungen und -Zertifizierungen

In unseren Schulungen erfahren Sie alles zum optimalen Einsatz unserer Google Cloud-Technologien und können sich entsprechend zertifizieren lassen. Unsere Kurse vermitteln technische Fähigkeiten und Best Practices, damit Sie möglichst schnell mit Google Cloud loslegen und Ihr Wissen fortlaufend erweitern können. Wir bieten On-Demand-, Präsenz- und virtuelle Schulungen für Anfänger wie Fortgeschrittene an, die Sie individuell in Ihrem eigenen Zeitplan absolvieren können. Mit unseren Zertifizierungen weisen Sie nach, dass Sie Experte im Bereich Google Cloud-Technologien sind.

Anleitung zuletzt am 12. April 2024 aktualisiert

Lab zuletzt am 12. April 2024 getestet

© 2025 Google LLC. Alle Rechte vorbehalten. Google und das Google-Logo sind Marken von Google LLC. Alle anderen Unternehmens- und Produktnamen können Marken der jeweils mit ihnen verbundenen Unternehmen sein.

Vorbereitung

  1. Labs erstellen ein Google Cloud-Projekt und Ressourcen für einen bestimmten Zeitraum
  2. Labs haben ein Zeitlimit und keine Pausenfunktion. Wenn Sie das Lab beenden, müssen Sie von vorne beginnen.
  3. Klicken Sie links oben auf dem Bildschirm auf Lab starten, um zu beginnen

Privates Surfen verwenden

  1. Kopieren Sie den bereitgestellten Nutzernamen und das Passwort für das Lab
  2. Klicken Sie im privaten Modus auf Konsole öffnen

In der Konsole anmelden

  1. Melden Sie sich mit Ihren Lab-Anmeldedaten an. Wenn Sie andere Anmeldedaten verwenden, kann dies zu Fehlern führen oder es fallen Kosten an.
  2. Akzeptieren Sie die Nutzungsbedingungen und überspringen Sie die Seite zur Wiederherstellung der Ressourcen
  3. Klicken Sie erst auf Lab beenden, wenn Sie das Lab abgeschlossen haben oder es neu starten möchten. Andernfalls werden Ihre bisherige Arbeit und das Projekt gelöscht.

Diese Inhalte sind derzeit nicht verfügbar

Bei Verfügbarkeit des Labs benachrichtigen wir Sie per E-Mail

Sehr gut!

Bei Verfügbarkeit kontaktieren wir Sie per E-Mail

Es ist immer nur ein Lab möglich

Bestätigen Sie, dass Sie alle vorhandenen Labs beenden und dieses Lab starten möchten

Privates Surfen für das Lab verwenden

Nutzen Sie den privaten oder Inkognitomodus, um dieses Lab durchzuführen. So wird verhindert, dass es zu Konflikten zwischen Ihrem persönlichen Konto und dem Teilnehmerkonto kommt und zusätzliche Gebühren für Ihr persönliches Konto erhoben werden.