Auf dieser Seite wird beschrieben, wie Sie den Zugriff auf ein Secret verwalten, einschließlich des geheimen Materials. Weitere Informationen zu Zugriffssteuerungen und Berechtigungen finden Sie unter Zugriffssteuerung mit IAM.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Secret Manager Admin (roles/secretmanager.admin
) für das Secret, Projekt, den Ordner oder die Organisation zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Verwalten des Zugriffs auf Secrets benötigen.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
Zugriff gewähren
Sie haben folgende Möglichkeiten, Zugriff auf ein Secret zu gewähren:
Console
-
Wechseln Sie in der Google Cloud Console zur Seite Secret Manager.
-
Klicken Sie auf der Seite Secret Manager auf das Kästchen neben dem Namen des Secrets, um es auszuwählen.
-
Falls das Fenster noch nicht geöffnet ist, klicken Sie auf Infofeld ansehen, um es zu öffnen.
-
Klicken Sie im Infofeld auf Hauptkonto hinzufügen.
-
Geben Sie im Feld Neue Hauptkonten die E-Mail-Adressen der Mitglieder ein, die Sie hinzufügen möchten.
-
Wählen Sie in der Liste Rolle auswählen die Option Secret Manager und dann Zugriffsperson für Secret Manager-Secret aus.
gcloud
Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:
- SECRET_ID: die ID des Secrets oder die voll qualifizierte Kennzeichnung für das Secret
- MEMBER: das IAM-Mitglied, z. B. ein Nutzer, eine Gruppe oder ein Dienstkonto
Führen Sie folgenden Befehl aus:
Linux, macOS oder Cloud Shell
gcloud secrets add-iam-policy-binding SECRET_ID \ --member="MEMBER" \ --role="roles/secretmanager.secretAccessor"
Windows (PowerShell)
gcloud secrets add-iam-policy-binding SECRET_ID ` --member="MEMBER" ` --role="roles/secretmanager.secretAccessor"
Windows (cmd.exe)
gcloud secrets add-iam-policy-binding SECRET_ID ^ --member="MEMBER" ^ --role="roles/secretmanager.secretAccessor"
REST
Hinweis: Im Gegensatz zu den anderen Beispielen wird dadurch die gesamte IAM-Richtlinie ersetzt.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- PROJECT_ID: das Google Cloud Projekt, das das Geheimnis enthält
- SECRET_ID: die ID des Secrets oder die voll qualifizierte Kennzeichnung für das Secret
- MEMBER: das IAM-Mitglied, z. B. ein Nutzer, eine Gruppe oder ein Dienstkonto
HTTP-Methode und URL:
POST https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID:setIamPolicy
JSON-Text der Anfrage:
{"policy": {"bindings": [{"members": ["MEMBER"], "role": "roles/secretmanager.secretAccessor"}]}}
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID:setIamPolicy"
PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID:setIamPolicy" | Select-Object -Expand Content
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "version": 1, "etag": "BwYhOrAmWFQ=", "bindings": [ { "role": "roles/secretmanager.secretAccessor", "members": [ "user:username@google.com" ] } ] }
C#
Um diesen Code auszuführen, müssen Sie 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.
Go
Um diesen Code auszuführen, müssen Sie zuerst eine Go-Entwicklungsumgebung einrichten und das Secret Manager Go SDK installieren. In Compute Engine oder GKE müssen Sie sich mit dem Bereich cloud-platform authentifizieren.
Java
Um diesen Code auszuführen, müssen Sie zuerst eine Java-Entwicklungsumgebung einrichten und das Secret Manager Java SDK installieren. In Compute Engine oder GKE müssen Sie sich mit dem Bereich cloud-platform authentifizieren.
Node.js
Um diesen Code auszuführen, müssen Sie zuerst eine Node.js-Entwicklungsumgebung einrichten und das Cloud KMS Node.js SDK installieren. In Compute Engine oder GKE müssen Sie sich mit dem Bereich cloud-platform authentifizieren.
PHP
Um diesen Code auszuführen, müssen Sie zuerst die Informationen zur Verwendung von PHP in Google Cloud und zum Installieren des Secret Manager PHP SDK lesen. In Compute Engine oder GKE müssen Sie sich mit dem Bereich cloud-platform authentifizieren.
Python
Um diesen Code auszuführen, müssen Sie zuerst eine Python-Entwicklungsumgebung einrichten und das Secret Manager Python SDK installieren. In Compute Engine oder GKE müssen Sie sich mit dem Bereich cloud-platform authentifizieren.
Ruby
Um diesen Code auszuführen, müssen Sie zuerst eine Ruby-Entwicklungsumgebung einrichten und das Secret Manager Ruby SDK installieren. In Compute Engine oder GKE müssen Sie sich mit dem Bereich cloud-platform authentifizieren.
Python
Um diesen Code auszuführen, müssen Sie zuerst eine Python-Entwicklungsumgebung einrichten und das Secret Manager Python SDK installieren. In Compute Engine oder GKE müssen Sie sich mit dem Bereich cloud-platform authentifizieren.
Zugriff entziehen
Verwenden Sie eine der folgenden Methoden, um den Zugriff auf ein Secret zu widerrufen:
Console
-
Wechseln Sie in der Google Cloud Console zur Seite Secret Manager.
-
Klicken Sie auf der Seite Secret Manager auf das Kästchen neben dem Namen des Secrets, um es auszuwählen.
-
Falls das Fenster noch nicht geöffnet ist, klicken Sie auf Infofeld ansehen, um es zu öffnen.
-
Klicken Sie im Infofeld neben der Nutzerrolle auf den Maximierungspfeil, um eine Liste der Nutzer oder Dienstkonten mit Zugriff auf diese Rolle aufzurufen.
-
Wenn Sie das Nutzer- oder Dienstkonto entfernen möchten, klicken Sie neben dem Dienstkonto oder der Nutzer-ID auf
Löschen. -
Klicken Sie im Bestätigungsdialogfeld auf Entfernen.
gcloud
Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:
- SECRET_ID: die ID des Secrets oder die voll qualifizierte Kennzeichnung für das Secret
- MEMBER: das IAM-Mitglied, z. B. ein Nutzer, eine Gruppe oder ein Dienstkonto
Führen Sie folgenden Befehl aus:
Linux, macOS oder Cloud Shell
gcloud secrets remove-iam-policy-binding SECRET_ID \ --member="MEMBER" \ --role="roles/secretmanager.secretAccessor"
Windows (PowerShell)
gcloud secrets remove-iam-policy-binding SECRET_ID ` --member="MEMBER" ` --role="roles/secretmanager.secretAccessor"
Windows (cmd.exe)
gcloud secrets remove-iam-policy-binding SECRET_ID ^ --member="MEMBER" ^ --role="roles/secretmanager.secretAccessor"
REST
Hinweis: Im Gegensatz zu den anderen Beispielen wird dadurch die gesamte IAM-Richtlinie ersetzt.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- PROJECT_ID: die Google Cloud Projekt-ID
- SECRET_ID: die ID des Secrets oder die voll qualifizierte Kennzeichnung für das Secret
HTTP-Methode und URL:
POST https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID:setIamPolicy
JSON-Text der Anfrage:
{"policy": {"bindings": []}}
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID:setIamPolicy"
PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID:setIamPolicy" | Select-Object -Expand Content
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "version": 1, "etag": "BwYhOtzsOBk=" }
C#
Um diesen Code auszuführen, müssen Sie 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.
Go
Um diesen Code auszuführen, müssen Sie zuerst eine Go-Entwicklungsumgebung einrichten und das Secret Manager Go SDK installieren. In Compute Engine oder GKE müssen Sie sich mit dem Bereich cloud-platform authentifizieren.
Java
Um diesen Code auszuführen, müssen Sie zuerst eine Java-Entwicklungsumgebung einrichten und das Secret Manager Java SDK installieren. In Compute Engine oder GKE müssen Sie sich mit dem Bereich cloud-platform authentifizieren.
Node.js
Um diesen Code auszuführen, müssen Sie zuerst eine Node.js-Entwicklungsumgebung einrichten und das Cloud KMS Node.js SDK installieren. In Compute Engine oder GKE müssen Sie sich mit dem Bereich cloud-platform authentifizieren.
PHP
Um diesen Code auszuführen, müssen Sie zuerst die Informationen zur Verwendung von PHP in Google Cloud und zum Installieren des Secret Manager PHP SDK lesen. In Compute Engine oder GKE müssen Sie sich mit dem Bereich cloud-platform authentifizieren.
Python
Um diesen Code auszuführen, müssen Sie zuerst eine Python-Entwicklungsumgebung einrichten und das Secret Manager Python SDK installieren. In Compute Engine oder GKE müssen Sie sich mit dem Bereich cloud-platform authentifizieren.
Ruby
Um diesen Code auszuführen, müssen Sie zuerst eine Ruby-Entwicklungsumgebung einrichten und das Secret Manager Ruby SDK installieren. In Compute Engine oder GKE müssen Sie sich mit dem Bereich cloud-platform authentifizieren.
Nächste Schritte
- Weitere Informationen zum Festlegen eines Ablaufdatums für ein Secret
- Weitere Informationen zum Einrichten von Rotationsplänen für Secrets
- Weitere Informationen zum Einrichten von Benachrichtigungen für ein Secret