Zertifikat mit der Google Cloud CLI ausstellen

Auf dieser Seite wird erläutert, wie Sie mit der Google Cloud CLI einen Pool einer Zertifizierungsstelle (Certificate Authority, CA) erstellen und ein Zertifikat ausstellen können.

Mit CA Service können Sie private Zertifizierungsstellen bereitstellen und verwalten, ohne die Infrastruktur verwalten zu müssen.

Hinweise

  • Installieren Sie die Google Cloud CLI und initialisieren Sie sie mit folgendem Befehl:

    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.

  • Aktivieren Sie die Certificate Authority Service API:

    gcloud services enable privateca.googleapis.com

  • Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  • Konfigurieren Sie einen Standardspeicherort für die Verwendung in den gcloud-Befehlen in dieser Kurzanleitung.

    gcloud config set privateca/location LOCATION
    

    CA-Dienstressourcen wie CA-Pools und Zertifizierungsstellen befinden sich an einem einzigen Google Cloud-Standort, den Sie nach dem Erstellen dieser Ressourcen nicht mehr ändern können.

CA-Pool erstellen

Ein CA-Pool ist eine Sammlung mehrerer Zertifizierungsstellen. Ein CA-Pool bietet die Möglichkeit, Vertrauensketten ohne Ausfälle oder Ausfallzeiten für Arbeitslasten zu rotieren.

Führen Sie den folgenden Befehl aus, um einen Zertifizierungsstellenpool in der Enterprise-Stufe zu erstellen:

gcloud privateca pools create POOL_ID --tier "enterprise"

Ersetzen Sie POOL_ID durch den Namen des Zertifizierungsstellenpools.

Die Namen aller CA Service-Ressourcen dürfen nur die zulässigen Zeichen enthalten, also Buchstaben, Ziffern, Bindestriche und Unterstriche. Die maximal zulässige Länge eines Namens beträgt 63 Zeichen.

Stamm-CA erstellen

Ein Zertifizierungsstellenpool ist bei der Erstellung leer. Wenn Sie Zertifikate aus einem Zertifizierungsstellenpool anfordern möchten, müssen Sie eine Zertifizierungsstelle hinzufügen.

Führen Sie den folgenden Befehl aus, um eine Root-Zertifizierungsstelle zu erstellen und dem von Ihnen erstellten CA-Pool hinzuzufügen:

gcloud privateca roots create CA_ID --pool POOL_ID --subject "CN=Example Prod Root CA, O=Google"

Ersetzen Sie Folgendes:

  • CA_ID: Der Name der Stammzertifizierungsstelle.
  • POOL_ID: Der Name des Zertifizierungsstellenpools.

CA Service gibt beim Erstellen der Stammzertifizierungsstelle den folgenden Befehl zurück:

Created Certificate Authority [projects/PROJECT_ID/locations/LOCATION/caPools/POOL_ID/certificateAuthorities/CA_ID]

Aktivieren Sie die Stammzertifizierungsstelle, indem Sie y eingeben, wenn Sie von der gcloud CLI dazu aufgefordert werden.

Da Sie jetzt einen Zertifizierungsstellenpool mit einer Stammzertifizierungsstelle haben, können Sie mit dem Erstellen von Zertifikaten fortfahren.

Zertifikat erstellen

So erstellen Sie ein Zertifikat mit der neu erstellten Zertifizierungsstelle:

  1. Installieren Sie die Pyca Cryptography-Bibliothek mit dem Befehl pip.

      pip install --user "cryptography>=2.2.0"
    

    CA Service verwendet die Pyca Cryptography-Bibliothek, um ein neues asymmetrisches Schlüsselpaar auf Ihrem lokalen Computer zu generieren und zu speichern. Dieser Schlüssel wird nie an CA Service gesendet.

  2. Damit das Google Cloud SDK die Pyca Cryptography-Bibliothek verwenden kann, müssen Sie Websitepakete aktivieren.

    macOS oder Linux

    export CLOUDSDK_PYTHON_SITEPACKAGES=1
    

    Windows

    set CLOUDSDK_PYTHON_SITEPACKAGES=1
    
  3. Erstellen Sie ein Zertifikat.

      gcloud privateca certificates create \
          --issuer-pool POOL_ID \
          --subject "CN=Example Prod,O=Google" \
          --generate-key \
          --key-output-file=./key \
          --cert-output-file=./cert.pem
    

    Ersetzen Sie POOL_ID durch die Ressourcen-ID des von Ihnen erstellten Zertifizierungsstellenpools.

    CA Service gibt die folgende Antwort zurück:

      Created Certificate [projects/PROJECT_ID/locations/LOCATION/caPools/POOL_ID/certificates/CERTIFICATE_ID]
    

Bereinigen

Führen Sie eine Bereinigung durch, indem Sie den Zertifizierungsstellenpool, die Zertifizierungsstelle und das Projekt löschen, das Sie für diese Kurzanleitung erstellt haben.

  1. Widerrufen Sie das Zertifikat.

      Führen Sie den folgenden Befehl aus, um ein Zertifikat zu widerrufen:

        gcloud privateca certificates revoke --certificate CERT_NAME --issuer-pool POOL_ID
        

      Ersetzen Sie Folgendes:

      • CERT_NAME: Der Name des Zertifikats, das Sie widerrufen möchten.
      • POOL_ID: Der Name des CA-Pools, der das Zertifikat ausgestellt hat.
  2. Löschen Sie die Zertifizierungsstelle.

    Sie können eine Zertifizierungsstelle erst löschen, nachdem Sie alle von ihr ausgestellten Zertifikate widerrufen haben.

    1. Deaktivieren Sie die Zertifizierungsstelle.

      gcloud privateca roots disable CA_ID --pool=POOL_ID
      

      Ersetzen Sie Folgendes:

      • CA_ID: Die Ressourcen-ID der Zertifizierungsstelle.
      • POOL_ID: Die Ressourcen-ID des Zertifizierungsstellenpools.
    2. Löschen Sie die Zertifizierungsstelle.

      gcloud privateca roots delete CA_ID --pool=POOL_ID
      

    Der Zertifizierungsstellenstatus ändert sich in Deleted. CA Service löscht die Zertifizierungsstelle 30 Tage nach dem Löschen endgültig.

  3. Löschen Sie den Zertifizierungsstellenpool.

    Sie können einen Zertifizierungsstellenpool erst löschen, nachdem die darin enthaltene Zertifizierungsstelle endgültig gelöscht wurde.

    gcloud privateca pools delete POOL_ID
    
  4. Löschen Sie das Projekt.

      Google Cloud-Projekt löschen:

      gcloud projects delete PROJECT_ID

Nächste Schritte