Erstellen eines privaten Schlüssels mithilfe der Google CLI

In der UDP-Konsole ist ein privater Schlüssel erforderlich, um einen VSB-Plan für GCP zu erstellen.

Bevor Sie einen neuen Schlüssel erstellen können, müssen Sie die gcloud CLI installieren und initialisieren. Folgen Sie den Schritten unter den folgenden Links, um das CLI-Tool mit Administratorrechten zu installieren und zu initialisieren.

Nachdem Sie gcloud in derselben Umgebung installiert und initialisiert haben, befolgen Sie diese Schritte, um den Schlüssel manuell zu erstellen oder das Windows-Powershell-Skript gcp_auth_key_create.ps1 auszuführen:

  1. Gehen Sie wie folgt vor, nachdem Sie das gcloud-Tool installiert und initialisiert haben:
    1. Führen Sie einen Test aus, und vergewissern Sie sich, dass das gcloud-Tool erfolgreich installiert wurde, indem Sie die Version mithilfe des Befehls "gcloud --version" überprüfen.
    2. Authentifizieren Sie sich während der Initialisierung in gcloud mit einem Administratorkonto, das vollständige Kontrolle über die Organisation zum Hinzufügen zu einem bestimmten Projekt hat.
    3. Legen Sie mithilfe des Befehls "gcloud config set project PROJECT_ID" ein Projekt fest, in dem VSB-Instanzen erstellt werden sollen, wobei "PROJECT_ID" für ein gültiges Projekt in der Organisation steht.
  2. Verwenden Sie gcloud, um den Zugriff auf das Projekt für den Benutzer zu konfigurieren, indem Sie eine benutzerdefinierte Rolle für das Projekt erstellen, die VSB-bezogene Tasks ermöglicht.
  3. Um ein Dienstkonto zu erstellen, ersetzen Sie die folgenden Werte, und führen Sie den folgenden Befehl aus:
  4. gcloud iam service-accounts create SA_NAME --display-name="DISPLAY_NAME"

  5. Rufen Sie die E-Mail-Adresse des Dienstkontos ab, und führen Sie den folgenden Befehl aus:
  6. gcloud iam service-accounts list --filter "displayName=DISPLAY_NAME"

  7. Ersetzen Sie Folgendes:
  8. DISPLAY_NAME: der in Schritt 3 angegebene Anzeigename.
  9. Notieren Sie sich die E-Mail-Adresse des Dienstkontos aus der Ausgabe des obigen Befehls, die im folgenden Format vorliegt und in den restlichen Schritten als SA_EMAIL dargestellt wird:
  10. SA_NAME@PROJECT_ID.iam.gserviceaccount.com
  11. Um die JSON-Schlüsseldatei zu erstellen und herunterzuladen, ersetzen Sie die folgenden Werte, und führen Sie den folgenden Befehl aus:
  12. gcloud iam service-accounts keys create KEY_FILE --iam-account=SA_EMAIL

  13. Die JSON-Schlüsseldatei enthält den privaten Schlüssel, den Sie später in der UDP-Konsole benötigen.
  14. Um eine benutzerdefinierte Rolle zu erstellen, die die unten angegebenen 69 Berechtigungen für den VSB-Task enthält, ersetzen Sie die folgenden Werte, und führen Sie den Befehl aus:
  15. gcloud iam roles create ROLE_NAME --project PROJECT_ID –permissions=
    compute.addresses.list,compute.addresses.use,compute.disks.create,compute.disks.createSnapshot,
    compute.disks.delete,compute.disks.get,compute.disks.use,compute.firewallPolicies.create,compute.firewallPolicies.delete,
    compute.firewallPolicies.get,compute.firewallPolicies.list,compute.firewallPolicies.update,compute.firewallPolicies.use,
    compute.firewalls.create,compute.firewalls.delete,compute.firewalls.get,compute.firewalls.list,compute.firewalls.update,
    compute.globalOperations.get,compute.images.useReadOnly,compute.instances.addAccessConfig,
    compute.instances.attachDisk,compute.instances.create,compute.instances.delete,compute.instances.deleteAccessConfig,
    compute.instances.detachDisk,compute.instances.list,compute.instances.setMetadata,compute.instances.setServiceAccount,
    compute.instances.start,compute.instances.stop,compute.instances.update,compute.instances.updateDisplayDevice,compute.machineTypes.list,compute.networks.access,
    compute.networks.create,compute.networks.delete,compute.networks.get,compute.networks.getEffectiveFirewalls,compute.networks.list,compute.networks.update,
    compute.networks.use,compute.networks.useExternalIp,compute.regionOperations.get,compute.snapshots.create,compute.snapshots.delete,compute.snapshots.get,
    compute.snapshots.useReadOnly,compute.subnetworks.create,compute.subnetworks.delete,compute.subnetworks.get,compute.subnetworks.list,compute.subnetworks.update,
    compute.subnetworks.use,compute.subnetworks.useExternalIp,compute.zoneOperations.get,compute.zones.list,iam.serviceAccounts.actAs,iam.serviceAccounts.get,iam.serviceAccounts.list,
    resourcemanager.projects.get,serviceusage.services.use,storage.buckets.create,storage.buckets.enableObjectRetention,storage.buckets.list,storage.objects.create,storage.objects.delete,
    storage.objects.get,storage.objects.list

  16. Mit diesem Befehl wird eine benutzerdefinierte Rolle im Projekt mit dem Namen " ROLE_NAME " mit den Berechtigungen zum Erstellen und Verwalten von Instanzen erstellt. Der vollständige Name der Rolle wird als Ausgabe des obigen Befehls aufgeführt. Der Rollenname weist das Format projects/PROJECT_ID/roles/ROLE_NAME auf.
  17. Hinweis: Eine Rolle ist eine Sammlung von Berechtigungen. Sie können Benutzern keine Berechtigungen direkt zuweisen. Stattdessen weisen Sie ihnen eine Rolle zu. Wenn Sie einem Benutzer eine Rolle zuweisen, erteilen Sie ihm alle Berechtigungen, die die Rolle enthält.

  18. Um die benutzerdefinierte Rolle ROLE_NAME mit dem Dienstkonto SA_NAME zu verknüpfen, ersetzen Sie die folgenden Werte, und führen Sie den folgenden Befehl aus:
  19. gcloud projects add-iam-policy-binding PROJECT_ID --member serviceAccount:SA_EMAIL --role=ROLE_FULL_NAME

  20. Verwenden Sie in der UDP-Konsole die in Schritt 5 heruntergeladene JSON-Schlüsseldatei für Dienstkonten, um einen VSB-Plan für GCP zu erstellen.