This page describes how to enable a disabled secret version so that you can access the version and the secret data that it contains.
Required roles
To get the permissions that
you need to enable a disabled secret version,
ask your administrator to grant you the Secret Manager Secret Version Manager
( roles/secretmanager.secretVersionManager
)
IAM role on a secret.
For more information about granting roles, see Manage access to projects, folders, and organizations
.
You might also be able to get the required permissions through custom roles or other predefined roles .
Enable a disabled secret version
To enable a disabled secret version, use one of the following methods:
Console
-
In the Google Cloud console, go to the Secret Manager page.
-
On the Secret Manager page, click a secret to access its versions.
-
On the secret details page, in the Versions tab, select the disabled secret version that you want to enable.
-
Click Actions , and then click Enable .
-
In the confirmation dialog that appears, click Enable selected versions .
gcloud
Before using any of the command data below, make the following replacements:
- VERSION_ID : the ID of the secret version
- SECRET_ID : the ID of the secret
Execute the following command:
Linux, macOS, or Cloud Shell
gcloud secrets versions enable VERSION_ID --secret = SECRET_ID
Windows (PowerShell)
gcloud secrets versions enable VERSION_ID --secret = SECRET_ID
Windows (cmd.exe)
gcloud secrets versions enable VERSION_ID --secret = SECRET_ID
REST
Before using any of the request data, make the following replacements:
- PROJECT_ID : the Google Cloud project ID
- SECRET_ID : the ID of the secret
- VERSION_ID : the ID of the secret version
HTTP method and URL:
POST https://secretmanager.googleapis.com/v1/projects/ PROJECT_ID /secrets/ SECRET_ID /versions/ VERSION_ID :enable
Request JSON body:
{}
To send your request, choose one of these options:
curl
Save the request body in a file named request.json
,
and execute the following command:
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 /versions/ VERSION_ID :enable"
PowerShell
Save the request body in a file named request.json
,
and execute the following command:
$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 /versions/ VERSION_ID :enable" | Select-Object -Expand Content
You should receive a JSON response similar to the following:
{ "name": "projects/ PROJECT_ID /locations/ LOCATION /secrets/ SECRET_ID /versions/ VERSION_ID ", "createTime": "2024-09-02T07:16:34.566706Z", "state": "ENABLED", "etag": "\"16214547e7583e\"" }
C#
To run this code, first set up a C# development environment and install the Secret Manager C# SDK . On Compute Engine or GKE, you must authenticate with the cloud-platform scope .
Go
To run this code, first set up a Go development environment and install the Secret Manager Go SDK . On Compute Engine or GKE, you must authenticate with the cloud-platform scope .
Java
To run this code, first set up a Java development environment and install the Secret Manager Java SDK . On Compute Engine or GKE, you must authenticate with the cloud-platform scope .
Node.js
To run this code, first set up a Node.js development environment and install the Secret Manager Node.js SDK . On Compute Engine or GKE, you must authenticate with the cloud-platform scope .
PHP
To run this code, first learn about using PHP on Google Cloud and install the Secret Manager PHP SDK . On Compute Engine or GKE, you must authenticate with the cloud-platform scope .
Python
To run this code, first set up a Python development environment and install the Secret Manager Python SDK . On Compute Engine or GKE, you must authenticate with the cloud-platform scope .
Ruby
To run this code, first set up a Ruby development environment and install the Secret Manager Ruby SDK . On Compute Engine or GKE, you must authenticate with the cloud-platform scope .
What's next
- Learn how to destroy a secret version .
- Learn how to list secret versions and view the version details .