Secret mit Secret Manager erstellen und darauf zugreifen

Informationen zum Erstellen und Aufrufen von Secrets mit Secret Manager auf Google Cloud.


Eine detaillierte Anleitung dazu finden Sie direkt in der Google Cloud Console. Klicken Sie dazu einfach auf Anleitung:

Anleitung


Hinweis

  1. Aktivieren Sie die Secret Manager API einmal pro Projekt.
  2. Weisen Sie die Rolle „Secret Manager-Administrator“ (roles/secretmanager.admin) für das Projekt, den Ordner oder die Organisation zu.
  3. Authentifizieren Sie sich auf eine der folgenden Arten bei der Secret Manager API:

    • Wenn Sie Clientbibliotheken verwenden, um auf die Secret Manager API zuzugreifen, richten Sie Standardanmeldedaten für Anwendungen ein.
    • Wenn Sie die Google Cloud CLI verwenden, um auf die Secret Manager API zuzugreifen, authentifizieren Sie sich mit Ihren Google Cloud CLI-Anmeldedaten.
    • Verwenden Sie zum Authentifizieren eines REST-Aufrufs entweder Google Cloud CLI-Anmeldedaten oder Standardanmeldedaten für Anwendungen.

Secret erstellen und auf eine Secret-Version zugreifen

Die folgenden Beispiele veranschaulichen das Erstellen eines Secrets und das Aufrufen des Inhalts einer Secret-Version.

Console

So erstellen Sie das Secret und die Secret-Version:

  1. Rufen Sie in der Google Cloud Console die Seite Secret Manager auf.

    Zur Seite „Secret Manager“

  2. Klicken Sie auf der Seite Secret Manager auf Secret erstellen.

  3. Geben Sie auf der Seite Secret erstellen unter Name den Wert my-secret ein.

  4. Geben Sie im Feld Secret value my super secret data ein.

  5. Klicken Sie auf Secret erstellen.

So greifen Sie auf den Inhalt der Secret-Version zu:

  1. Rufen Sie in der Google Cloud Console die Seite Secret Manager auf.

    Zur Seite „Secret Manager“

  2. Klicken Sie auf der Seite Secret Manager auf my-secret.

  3. Suchen Sie auf der Seite Secret-Details in der Tabelle Versionen die Version 1.

  4. Klicken Sie in der Spalte Aktionen auf Mehr anzeigen.

  5. Klicken Sie im Menü auf Secret-Wert anzeigen.

  6. Ein Dialogfeld mit dem Secret-Wert wird angezeigt. Klicken Sie auf Fertig , um das Dialogfeld zu schließen.

gcloud

Um Secret Manager in der Befehlszeile zu verwenden, installieren Sie zuerst das Google Cloud CLI Version 378.0.0 oder höher oder aktualisieren Sie darauf. In Compute Engine oder GKE müssen Sie sich mit dem Bereich cloud-platform authentifizieren.

So erstellen Sie ein Secret und speichern einen String als Inhalt der ersten Secret-Version:

$ echo -n "my super secret data" | gcloud secrets create my-secret \
    --replication-policy="replication-policy" \
    --data-file=-

Dabei steht replication-policy für automatic oder user-managed.

So greifen Sie auf den Inhalt einer bestimmten Secret-Version zu:

$ gcloud secrets versions access 1 --secret="my-secret"

So greifen Sie auf den Inhalt der neuesten Secret-Version zu:

$ gcloud secrets versions access latest --secret="my-secret"

C#

Um diesen Code auszuführen, müssen Sie zuerst eine C#-Entwicklungsumgebung einrichten und das Secret Manager C# SDK installieren. In Compute Engine oder GKE müssen Sie sich mit dem Bereich cloud-platform authentifizieren.


using System;
using System.Text;
using Google.Api.Gax.ResourceNames;
using Google.Cloud.SecretManager.V1;
using Google.Protobuf;

public class QuickstartSample
{
    public void Quickstart(string projectId = "my-project", string secretId = "my-secret")
    {
        // Create the client.
        SecretManagerServiceClient client = SecretManagerServiceClient.Create();

        // Build the parent project name.
        ProjectName projectName = new ProjectName(projectId);

        // Build the secret to create.
        Secret secret = new Secret
        {
            Replication = new Replication
            {
                Automatic = new Replication.Types.Automatic(),
            },
        };

        Secret createdSecret = client.CreateSecret(projectName, secretId, secret);

        // Build a payload.
        SecretPayload payload = new SecretPayload
        {
            Data = ByteString.CopyFrom("my super secret data", Encoding.UTF8),
        };

        // Add a secret version.
        SecretVersion createdVersion = client.AddSecretVersion(createdSecret.SecretName, payload);

        // Access the secret version.